logo elektroda
logo elektroda
X
logo elektroda
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Bootstrap loader w mikrokontrolerach ROMLES - co oznacza RM w nazwie procesora?

qwo2 14 Lut 2017 22:23 3201 24
  • #1 16279610
    qwo2
    Poziom 10  
    1.Witam o co chodzi z tym bootstrap loaderem w mikrokontrolerach
    2. Co oznacza w nazwie procesora na końcu RM.. to jakaś wersja Rom tak?? co to oznacza ??
  • #2 16279759
    tzok
    Moderator Samochody
    ad.1. Bootstrap loader lub bootloader to program ładujący, czyli program umożliwiający wgranie wsadu mikrokontrolera poprzez np. magistralę UART lub sprzętowy port USB. Bootloader nie zostaje w tym procesie nadpisany i każdorazowo (zazwyczaj po resecie) oczekuje na inicjalizację trybu programowania (zazwyczaj jakiś bajt lub sekwencję bajtów), jeśli go nie otrzyma, przechodzi to wykonywania programu użytkownika.
    ad.2. Jakiego procesora?
  • #3 16281810
    qwo2
    Poziom 10  
    Procesor to SAK-C164CL-8RM.
  • #4 16281890
    Konto nie istnieje
    Konto nie istnieje  
  • #5 16282041
    qwo2
    Poziom 10  
    Czyli nie ma mozliwości programowania tego procka ??? chodzi mi o to że mam go w urządzeniu które łączy sie przez CAN normalnie komunikacja jest z testerem ale procesor nie wykonuje programu tylko same wartości mogę sprawdzić jak napięcia i inne rzeczy, myslałem że przez to że spaliło tranzystor uwaliło część programu albo że procesor jakoś nie pracuje w standardowej konfiguracji, mam drugi procesor i jak wlutuje go w układ zamiast tego wszystko działa więc coś się musiało wydarzyć że ten nie wykonuje programu który w nim siedzi
  • #6 16282044
    Konto nie istnieje
    Konto nie istnieje  
  • #7 16282099
    tzok
    Moderator Samochody
    Istnieje kilka wariantów tego mikrokontrolera - posiada albo Mask ROM (RM) albo OTP EPROM (EM) - żaden z nich nie jest re-programowalny. Jedynie w późniejszym okresie produkcji dodano wersję z Flash EEPROM (FM)... istniała też wersja ROMless, nie posiadająca wewnętrznej pamięci (EP)ROM.

    http://www.keil.com/dd/docs/datashts/infineon/c164_ds.pdf
  • #8 16282160
    Konto nie istnieje
    Konto nie istnieje  
  • #9 16282215
    qwo2
    Poziom 10  
    ale w pdf tego procka http://www.keil.com/dd/docs/datashts/infineon/c164_ds.pdf

    Table 1 C164 Derivative Synopsis
    Derivative Program Memory EEPROM CAPCOM6 CAN Interf.
    SAK-C164CI-8RM 64 KByte ROM --- Full function CAN1
    SAK-C164SI-8RM 64 KByte ROM --- Full function ---
    SAK-C164CL-8RM 64 KByte ROM --- Reduced fct. CAN1
    SAK-C164SL-8RM 64 KByte ROM --- Reduced fct. ---
    SAK-C164CH-8FM 64 KByte Flash 4 KByte Full function CAN1
    SAK-C164SH-8FM 64 KByte Flash 4 KByte Full function ---

    posiadam ten pierwszy z listy czyli pamiec ROM


    pisze dalej
    64 KBytes of on-chip ROM or Flash memory
    2 KBytes of on-chip Internal RAM (IRAM)
    2 KBytes of on-chip Extension RAM (XRAM)


    w układzie występuje też pamięć eeprom 24c02 w której pewnie zapisane są ustawienia które mogę edytować, jak nazwa, czas pracy, kod odmian, kod warsztatu , numer wersji. gdy wylutuje kostke z płyty to program także nie startuje komunikacja z prockiem jest dane są wyświetlane ale nic więcej.
  • #10 16282565
    qwo2
    Poziom 10  
    • On-Chip Memory Modules
    – 2 KBytes On-Chip Internal RAM (IRAM)
    – 2 KBytes On-Chip Extension RAM (XRAM)
    – 64 KBytes On-Chip ROM or Program Flash1) (Endur: 100 Prog./Er. Cycles min.)
    – 4 KBytes On-Chip DataFlash/EEPROM1) (Endur.: 100,000 Prog./Er. Cycles min.)
  • #11 16282766
    tzok
    Moderator Samochody
    Piotrus_999 napisał:
    No ale kolega pytał o RM konkretnie - tu wariantów nie ma.

    Zgadza się, ale w przyszłości na temat może trafić ktoś inny, więc wolałem udzielić kompleksowej odpowiedzi. Poza tym w temacie jest coś o ROMless.

    qwo2 napisał:
    ale w pdf tego procka
    Table 1 C164 Derivative Synopsis
    (...)
    posiadam ten pierwszy z listy czyli pamiec ROM

    PDF odnosi się do całej rodziny C164, Tabela 1 to wykaz wariantów (i to nie wszystkich, w różnych wersjach tego dokumentu wymieniane są różne warianty, np. EM, którego w tej wersji PDFa nie ma).
    qwo2 napisał:
    On-Chip Memory Modules
    – 2 KBytes On-Chip Internal RAM (IRAM)
    – 2 KBytes On-Chip Extension RAM (XRAM)
    – 64 KBytes On-Chip ROM or Program Flash1) (Endur: 100 Prog./Er. Cycles min.)
    – 4 KBytes On-Chip DataFlash/EEPROM1) (Endur.: 100,000 Prog./Er. Cycles min.)
    To również wykaz ogólny, możliwych pamięci (są dostępne w należności od wariantu, np. starsze modele nie mają XRAMu). Przy dwóch ostatnich pozycjach masz przypis...
  • #12 16283111
    qwo2
    Poziom 10  
    Rozumiem super mi rozjaśniasz temat. A czy można odczytać program z Rom. Kupić procesor z pamięciĄ Flash i wgrać ten program. Tylko czy ten Rom da się odczytać
  • #13 16283120
    Konto nie istnieje
    Konto nie istnieje  
  • #14 16283261
    qwo2
    Poziom 10  
    Ale w końcu Rom to pamięć tylko do odczytu
  • #15 16283276
    tzok
    Moderator Samochody
    Skoro zakładasz, że jest uszkodzona to co Ci po jej odczytaniu? Nie po to robi się procesory z pamięcią OTP lub Mask ROM żeby dało się je odczytać... pamięć wewnętrzną może odczytywać tylko procesor.
  • #16 16283293
    Konto nie istnieje
    Konto nie istnieje  
  • #17 16283328
    qwo2
    Poziom 10  
    Rozumiem. To wracając do wcześniejszego pytania, w takich procesorach z Rom istnieje możliwość jakiegoś hard resetuj ? Aby procesor ruszył z tym co ma w sobie wiem że procesory z Rom muszą mieć zwarty pin EA czytały z wewnętrznej pamięci jest też lin RD WR ALE.
  • #18 16283391
    tzok
    Moderator Samochody
    Pamięci (Mask) ROM ani OTP EPROM (PROM) nie da się kasować. Procesory z Mask ROM są "programowane" na etapie produkcji wafla krzemowego, z pamięcią OTP EPROM (PROM) mogą być jednorazowo zaprogramowane przez producenta urządzenia, proces ich programowania jest jednorazowy i nieodwracalny.
  • #19 16283459
    qwo2
    Poziom 10  
    A co sądzicie o poprzednim pytaniu?
  • #20 16283655
    tzok
    Moderator Samochody
    Sądzę, że w trzecim zdaniu brakuje jakiegoś słowa i nie wiem o co Ci chodziło, poza tym to zdanie nie jest pytaniem :/
    Odpowiedzi na pierwsze i jedyne pytanie z poprzedniego Twojego posta udzieliłem w poprzednim moim poście - brzmi ona "nie".
  • #21 16283763
    qwo2
    Poziom 10  
    Ok więc pin EA służy do wyboru, czy program ma wykonać się z wewnętrznej czy zewnętrznej pamieci.

    A piny RD, ALE, WR ?
  • #22 16283958
    Konto nie istnieje
    Konto nie istnieje  
  • #23 16283959
    tzok
    Moderator Samochody
    Przecież znaczenie tych pinów jest opisane w załączonym PDFie. W skrócie - służą do obsługi pamięci zewnętrznej. Uprzedzając kolejne pytanie, po tym jak procesor zostanie uruchomiony z ~EA=0, zmiana stanu tego pinu w trakcie działania procesora nie spowoduje jego przełączenia na pamięć wewnętrzną.
  • #24 16284429
    qwo2
    Poziom 10  
    Czytałem pdf chciałem potwierdzić bo widzę że się znacie nie rozumiem skąd takie napięcie. Proszę pamiętać że coś co dla niektórych jest śmieszne dla innych może być trudne. Nie ukrywam że znam się na tym trochę za mało, ale po to właśnie się tu zgłosiłem. Jeśli moje pytania Was śmieszą to proszę nie odpowiadać ale proszę mi wierzyć czytałem tego pdf kilkanaście razy lecz nie rozumiem większości.

    Dodano po 21 [godziny] 42 [minuty]:

    Czy pamięć OTP raz zaprogramowana można odczytać? ROM WIEM ZE NIE A CZY Z OTP JEST TAK SAMO?
  • #25 16474704
    tzok
    Moderator Samochody
    Śmiało możesz przyjąć, ze niezależnie od typu pamięci w mikrokontrolerze, nie da się odczytać jej zawartości, bo taka możliwość została zablokowana przez producenta. Z technicznego punktu widzenia odczytać można zarówno ROM, EPROM jak i EEPROM/Flash. OTP to taki sam EPROM jak każdy inny, tylko bez okienka do jego kasowania promieniami UV. Tu jednak ta pamięć jest we wnętrzu mikrokontrolera i nie ma do niej bezpośredniego dostępu.

    qwo2 napisał:
    chodzi mi o to że mam go w urządzeniu które łączy sie przez CAN normalnie komunikacja jest z testerem ale procesor nie wykonuje programu tylko same wartości mogę sprawdzić jak napięcia i inne rzeczy
    Skoro komunikakcja z testerem jest po CAN i jest to CAN obsługiwany przez ten mikrokontroler to znaczy, że program się wykonuje.

    qwo2 napisał:
    mam drugi procesor i jak wlutuje go w układ zamiast tego wszystko działa więc coś się musiało wydarzyć
    ...tak, zapewne "upaliło" mu część pinów GPIO. Program się wykonuje, ale nie widać efektów jego działania, bo jest "odcięty od świata".
REKLAMA