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

Atmel 89c51rc2-cm i programowanie przez rs232 (Atmel FLIP)

jackfinch 17 Cze 2018 18:25 1665 15
REKLAMA
  • #1 17281270
    jackfinch
    Poziom 17  
    Witam.

    Czy ktoś może mi powiedzieć jak programować ten MCU przez RS232? Próbuję to robić w Atmel Flip.
    - Podpinam EA do 5V
    - Naciskam i przytrzymuje przycisk RESET
    - Naciskam i przytrzymuje / PSEN który zwiera do GND
    - Zwalniam przycisk RESET (wciąż trzymam przycisk / PSEN)
    - Zwalniam przycisk / PSEN. Procesor powinien być w trybie bootloadera.
    Wyskakuje time out error

    Czy ktoś może powiedzieć czy ta procedura jest poprawna?

    Pozdrawiam
  • REKLAMA
  • #3 17282571
    RomanFilipecki
    Poziom 18  
    Używam FLIP ale z użyciem linii modemowych do sterowania psen i reset. Wszystko działa poprawnie.
  • REKLAMA
  • #4 17282739
    jackfinch
    Poziom 17  
    Witam

    Dzięki za odzew.
    Jeżeli chodzi o kwarc to nie ma żadnego. XTAL2 nie podłączone, a XTAL1 idzie na jedną z nóżek następnego procesora, który ma podpięty kwarc 12Mhz.
    Załączam zdjęcie, co do FLIP-a, to zainstalowałem wersję 3.4.7 i próbowałem na wszystkich zaczynając od 9600 a skończywszy na 115200.
    We wtyczce db9f mam tylko podpięte gnd, Rx i Tx. Czy muszę złączyć resztę sygnałów tzn.
    1+6+4 (DCD IN + DSR IN + DTR OUT)
    7+8 (RTS OUT+ CTS IN)
  • REKLAMA
  • #5 17282755
    JarekC
    Poziom 32  
    1. Zegar dla C51 musi być obecny
    2. Jak wygląda układ resetu dla C51, czy przypadkiem nie jest wspólny z drugim procesorem który taktuje C51?
    3. Czy port RS232 z PC(FLIP) to port na płycie/karcie czy przejściówka USB/RS232 lub RS232/UART?
    4. Czy linie RX,TX z procesora są buforowane przez układ konwersji napięć TTL/RS232?

    JarekC
  • #6 17283073
    jackfinch
    Poziom 17  
    1. Jeżeli musi być obecny to wylutuje C51 i wstawie na przjściówkę plcc44/DIP40 i podepnę kwarc (11.059 może być?)
    2. Jest wspólny - idzie bezpośrednio z at89c51 do jednej z nóżek procesora.
    3. To port na płycie głównej.
    4. Interfejs jest zbudowany na max 232 (ten na pewno działa bo po zwarciu rx i tx w hiperterminalu wciskane klawisze pokazują litery na monitorze)
  • #7 17283723
    JarekC
    Poziom 32  
    Chyba łatwiej będzie rozłączyć linię RESETu, tak aby główny procesor pracował i podawał zegar do C51 i dało się osobno zresetować C51.

    Spróbowałbym jeszcze z baudrate 4800, zdarzało mi się że przy zegarze 6/12MHz był problem z nawiązaniem połączenia z baudrate 9600 i wyższymi.

    Nawiązanie połączenia z bootloaderem polega na wysłaniu znaku 'U' 0x55 (naprzemiennie 0 i 1), na podstawie tego znaku bootloader próbuje rozpoznać baudrate i na rozpoznanej prędkości odpowiada również znakiem 'U'.

    Możesz sprawdzić przy pomocy dowolnego terminala czy masz jakąkolwiek odpowiedź od uP.

    JarekC
  • #8 17287320
    jackfinch
    Poziom 17  
    Witam

    W związku z ograniczonym czasem na testy, nic się nie zmieniło. Pospieszyłem się i wylutowałem hote-em C51, i tak jak pisałem wcześniej wstawiłem to w przejściówkę. Dołączyłem kwarc 12mhz +33pfx2, podpiołem /EA do 5V, /PSEN przez rezystor 1k i switch do GND i układ resetu (kondensator 10u+ Rezystor 10K + switch).

    Czytałem opis z tej strony i tym się sugerowałem odnośnie procedury odczytu c51:
    Link

    Sciągnołem starszą wersję Flipa 2.4.6 bo w najnowszej nie ma baudrate 4800. jeżeli chodzi o terminal niestety nic się nie dzieje.

    Pozdrawiam
  • REKLAMA
  • #10 17287905
    jackfinch
    Poziom 17  
    Ja podłączałem rx do rx i tx do tx. Wydawało mi się że rx do tx idzie tylko przez nullmodem. Po południu siądę i sprawdzę. Mam jeszcze dwa atmele at89c51 i at87f52, ale te dwa odczytuje bez problemu przez programator tl866a. Zainstaluje jeszcze tego flip_a 2.4.6 bo na razie go tylko ściągnąłem na dysk.

    Dzięki i pozdrawiam

    Jest mały progress. Po zainstalowaniu Flip_a v 2.4.6 jest komunikacja na 4800. Załączam log i screen.
  • #11 21274715
    slawekelserw
    Poziom 5  
    jackfinch napisał:
    Ściągnąłem starszą wersję Flipa 2.4.6, bo w najnowszej nie ma baudrate 4800. Jeżeli chodzi o terminal, niestety nic się nie dzieje.

    Czy w związku z tym mógłbyś, kolego, umieścić instalkę tej wersji?
    Przeszukałem "pół neta" i nie znalazłem tej wersji FLIPA do ściągnięcia :(
  • #13 21274920
    slawekelserw
    Poziom 5  
    Bardzo dziękuję za Flipa. Będzie dla potomnych.

    Dzięki tej wersji udało mi się skutecznie podłączyć do procka AT89C51RB2 i oczom moim ukazał się obrazek, jak niżej.
    Zrzut ekranu oprogramowania Atmel Flip 2.4.6 z informacjami o mikrokontrolerze AT89C51RB2.

    Nadal jednak przy próbie czytania pojawia się "time out", czy nie jest to przypadkiem wynikiem zabezpieczenia procesora przed odczytem?
    Może spróbować sczytać te dane "po bożemu", tj. jakimś programatorem, jeśli tak to jakim najlepiej?
  • #14 21275300
    jackfinch
    Poziom 17  
    Witam
    Mój procesor był zabezpieczony przed odczytem. Ja go potem z tego co pamiętam, bo było to dawno, próbowałem odczytać programatorem TL866. Programator pokazał że ma ustawione Lock Bits. Jako że to był procesor w jakim stary dekoderze do odbioru TV, to skasowałem jego zawartość i kilka razy coś tam wgrałem i odczytałem, żeby sprawdzić czy programator go odczytuje i na tym zabawa się skończyła. Być może jest jakaś metoda by go odczytać na dzień dzisiejszy, trudno mi powiedzieć. Napisz gdzie ten procesor jest zamontowany.

    Pozdrawiam
  • #15 21275842
    slawekelserw
    Poziom 5  
    Mam dwa identyczne moduły sterowników, z których z jednego ktoś wylutował procesor. Szkoda wyrzucić, bo sterownik nie jest tani, więc mój pomysł polegał na sklonowaniu działającego procesora. Nie muszę dodawać, że fajnie byłoby, gdyby z dobrego AT89C51RB2 nie wyparował istniejący program.

    Mam 2 programatory (XELTEK i UPROG), obydwa w spisie programowanych układów mają te procesory, więc może szeregowe programowanie by dało radę. Do tego jednak potrzebna mi przejściówka VQFP44 na DIL40 do programatora i trochę bez sensu w nią inwestować, jeśli by się okazało, że układ jest zabezpieczony przed odczytem.
  • #16 21276565
    jackfinch
    Poziom 17  
    Z tego co widzę to jest zabezpieczony. SSB jest ustawiony na Level 2, czyli z poziomu 2 nie można odczytywać ani zapisywać niczego.
REKLAMA