Elektroda.pl
Elektroda.pl
X
Elektroda.pl
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem.

18 Lip 2013 20:29 2652 6
  • Poziom 23  
    Witam.
    Zainspirowany tym tematem zbudowałem programator na podstawie dokumentacji z załączników z powyższego tematu z ostatniego (#16) wpisu.
    Niestety po podłączeniu zasilania DC 16V i wpięciu (bez kabla, bezpośrednio) całej płytki do portu RS232 komputera program który również jest załączony w załącznikach kolegi dad nie komunikuje się z układem. Cały czas szuka na portach COM programatora (system to Windows XP).
    Wiem, że są różne wersje tego programatora, może po prostu ta moja wersja nie działa, niestety nie ma wielu wiadomości w internecie na temat tego programatora. Czemu zdecydowałem się na tę wersję? Dlatego, że znalazłem pełną dokumentację (płytka, wsad, software), natomiast ta zbudowana przez kolegę ciapciok (#1) pomimo tego, że mam pewność, że działa to nie znalazłem do niej wsadu procesora i programu do obsługi.
    Czy ktoś ma jakieś informacje odnośnie mojej wersji programatora, które mogłyby naprowadzić mnie co może być przyczyną braku komunikacji?
    A może ktoś posiada kompletny opis, PCB, wsad i software do jakiejś innej wersji, która zadziała na 100%?
    Może istnieje jakiś nieskomplikowany programator na USB dla procków 89CX051 i AT89C52?

    Nie wiem dokładnie co to za pliki w folderze Wsad i jaki program je otwiera, ale podejrzałem zawartość pliku 89xx.Uv2. Poniżej fragment:

    Cytat:
    Device (AT89C52)
    Vendor (Atmel)
    Cpu (IRAM(0 - 0xFF) IROM(0 - 0x1FFF) CLOCK(24000000))
    FlashUt ()


    Procesor jaki użyłem to AT89S52 z kwarcem 11,0592MHz.
    Czy pomimo, że na płytce jest opis dla 11,0592MHz to nie powinien być na 24MHz jak w cytacie powyżej? Czy to, że używam wersji S a nie C ma znaczenie. Czy wsad dla wersji C może być wgrany do wersji S?
    Do programowania wykorzystałem opis z tej strony.

    Zamieszczam zdjęcia oraz pliki, które wykorzystywałem.
    Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem.Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem. Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem. Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem. Programator na RS232 do procesorów 89xx - brak komunikacji z procesorem.

    P.S. Program z folderu Software może być wykrywany jako wirus, ale nim nie jest, także proszę się nie bać. :D
    Załączniki:
  • Użytkownik obserwowany
    Rób zworę na Max232 i w terminalu znaki widzi ?
  • Użytkownik obserwowany
    Na procku TxD i Rxd.
  • Poziom 23  
    Ok. Zrobiłem nieco inaczej.
    Zaprogramowałem Atmegę8, żeby nadawała "OK" co 500ms w ramach testu. Następnie wyciągnąłem AT89S52, odgiąłem piny TXD i RXD tak, aby nie wchodziły w podstawkę po czym włożyłem z powrotem do płytki. Atmegę8 połączyłem z osobnej płytki masą z programatorem oraz liniami TXD i RXD do ścieżek w miejsce pinów UART'u AT89S52. W takim układzie w terminalu widać odbierane dane także układ działa jeżeli chodzi o nadawanie do komputera. Następnie przeprogramowałem Atmegę8 aby odebrała znak (litera "a") z komputera po czym wysłała "OK" jak poprzednio. Niestety testowałem to na przejściówce USB<->RS232 i o ile przesył do komputera działa to w drugą stronę (z komputera) nie działa. Wydaje mi się, że MAX232 nie weryfikuje dobrze sygnału o wartości -5V do +5V jakie daje przejściówka na USB, choć mogę się mylić.

    Spróbowałem inaczej.
    Wykorzystałem przejściówkę na układzie FT232 na USB, która ma diody sygnalizujące nadawanie i odbieranie. Podpiąłem ją do tych odgiętych pinów AT89S52, czyli bezpośrednio, bez żadnych rezystorów podciągających jak to było na płytce (mostek rezystorowy). Po włączeniu programu obsługującego programator widać po diodzie nadawania, że program wysyła jakieś informacje do procesora, ale AT89S52 nic nie odpowiada, bo dioda odbierania nie mruga. Czy to sugeruje, że procesor jednak nie działa tak jak powinien? Czy mam spróbować na nowym? Czy może jednak wsad nie jest przeznaczony do tego procesora, tylko np. do wersji AT89C51, czy może to nie ma znaczenia? A może mam podciągnąć linie TXD i RXD rezystorami do 5V?

    Docelowo chciałbym z powodu posiadania laptopa używać tego programatora na USB np. na tym FT232 jeżeli zadziała. Ale na razie nie działa :(

    Jakieś pomysły koledzy?
  • Użytkownik obserwowany
    Za dużo kombinujesz.
    To jak zrobisz zworę do działa czy nie? Kwarc procku pracuje?
    Nie pisz kombinowałem wymieniałem tylko zmierz i podaj odpowiedź dwóch zdaniach.
    Wersja S i C to dzień i noc dla mikroprocesora i mów że popełniasz podstawowe błędy.
  • Poziom 23  
    Problem rozwiązałem, programator działa.
    Nie wiem na 100% co było przyczyną, ale ważne że wszystko śmiga.
    Do programowania używam zwykłej przejściówki USB<->RS232 podlączonej do laptopa z systemem Windows 7 64-bit i wszystko jest w pełni kompatybilne.

    Co do programu ProLoad to wersję 2.1 zamieniłem na 5.4, gdyż ma większe możliwości, a również obsługuje ten programator. Wystarczy wybrać opcję "1001-3456 v1" i wtedy program współpracuje z programatorem z prędkością 9600.

    Jeżeli ktoś miałby kłopot z detekcją programatora przez program to niech nie wkłada procesora który chce zaprogramować tylko najpierw włączy program ProLoad i dopiero włoży procek i programuje. Wiem, że nie powinno się wkładać układu do płytki pod napięciem, ale inaczej program nie wykrywa programatora.

    Zamieszczam wszystko co potrzebne do zrobienia tego programatora (wersja v1) oraz program do obsługi w wersji 2.1 oraz 5.4 (polecam 5.4).

    Temat uważam za zakończony.