Skocz do zawartości

[Asm] Problem podczas programowania


Pomocna odpowiedź

Napisano

Cześć! Próbuję programować mikrokontrolery AT89S4051 i mam problem podczas programowania go. Nie ukrywam, że jestem zielony w tym temacie.

Programuję go przez ISP za pomocą programatora Adama Dybkowskiego.

Problem jest tego rodzaju, że gdy programuje procka to na dolnym pasku programatora wyświetla się następujący komunikat:

"Write at addres 00000000 byte written: 75 byte read: FF"

Niemam pojęcia o co chodzi.

Proszę o pomoc!

Możliwości jest kilka:

- zwarcia lub poprzerywane ścieżki/zimne luty na płytce programatora

- nieprawidłowe napięcie zasilania

- fuse bity ustawione na zewnętrzny kwarc

- przegrzany podczas lutowania procesor

Polecam sprawdzić wszystko w takiej kolejności jak podałem, znając życie chodzi o fusebity. Zakup drugiego procka i spróbuj zaprogramować - upewnij się jednak, że nie zmieniasz nic w fusebitach. Polecam program Avrdude z nakładką gui. Okno przed kliknięciem "execute" powinno wyglądać mniej więcej tak:

Proponowany program nie posiada na liście AT89S4051 lecz zaczyna się od AT90S1200 w związku z tym nie mogę w dalszym ciągu go za programować. Jeśli chodzi o pozostałe uwagi to luty wporządku, napięcie 5V na Lm7805, a procesor na podstawce nigdy nielutowany. Takią samą informację otrzymuję gdy programuję At89C2051 jak i AT89S4051 przez com programatorem Pr89AT. W czym więc tkwi błąd?

1. AT89S4051 nie ma fusebitów.

2. Procesory AT89Cxxxx nie dają się programować szeregowo (ISP).

3. Spróbuj programator podłączyć tak, jak na obrazku.

  • Pomogłeś! 1

Programator którym programuję jest taki jak na następującym obrazku:

https://www.forbot.pl/forum/upload_img/obrazki/IMG_49ddf55e6f7823418.jpg

Tym programatorem programuję AT89S4051 przez LPT, natomiast przez COM programowałem programatorem Pr89AT procka AT89C2051 oraz AT89S4051. Podałem to jako może pomocną wskazówkę lecz zasadniczo chodzi o zaprogramowanie AT89S4051 przez LPT programatorem ISP. Co do powyższej odpowiedzi to ten układ zastosować jako rozszerzenie do mojego programatora, czy zastosować to rozwiązanie zamiast 74ls244

1. AT89S4051 nie ma fusebitów.

2. Procesory AT89Cxxxx nie dają się programować szeregowo (ISP).

3. Spróbuj programator podłączyć tak, jak na obrazku.

Obrazek

Z tym "C" w środku można programować tylko równolegle. Ale bez "C" spokojnie powinno działać przez dybkowskiego - testowałem. Może wpiołeś odwrotnie procka? Najciemniej pod latarnią.

  • Pomogłeś! 1

Procek zaprogramowałem! Dzięki!!

Czy ktoś poleci jakąś książkę o pisaniu programów np. w asemblerze dla początkujących na prockach AT89S4051. Najlepiej z jakimiś konkretnymi przykładami do praktycznych zastosowań bo zabardzo jescze nie kumam pisania jakichkolwiek programów.

Samego pisania w asm uczyłem się z książki "Jak pisać wirusy" opisany jest tu asembler na PC. No a do MCS-51 to nieśmiertelna książka p. Rydzewskiego "Mikrokomputery jednoukładowe rodziny MCS-51"

  • Lubię! 1
Procek zaprogramowałem! Dzięki!!

Czy ktoś poleci jakąś książkę o pisaniu programów np. w asemblerze dla początkujących na prockach AT89S4051. Najlepiej z jakimiś konkretnymi przykładami do praktycznych zastosowań bo zabardzo jescze nie kumam pisania jakichkolwiek programów.

Polecam zaczynać naukę assemblera od zapoznania się ze strukturą programu - np. tutaj oraz zapoznanie się z lista rozkazów 89S4051 (zdaje sie że jest zgodna z procesorami 8051), która jest dostępna tutaj

  • Pomogłeś! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...