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

Jak zaprogramować mikrokontroler Atmel 89s8253 w trybie ISP?

ymko 14 Cze 2005 22:28 5054 20
REKLAMA
  • #1 1578238
    ymko
    Poziom 11  
    Posty: 13
    Witam. Kupiłem sobie nowe cacko atmela, zamieniłem z 89s52 i to na tyle radości. Nie mam czym tego zaprogramować. Czy ktoś już się spotkał z programatorem który to robi w ISP? Nie mówię o firmowym sprzęcie atmela, za 150 zł, choć jeśli ktoś ma schemat kabelka do atmel89ISP to bardzo bym prosił. Sprawdzałem ISP programmer, ic-prog, pony-prog. Nigdzie jeszcze nie ma tego układu, a programatory nie idą na ustępstwa gdy wybieram 89s53 lub 89s8252. ISP Programmer co prawda odczytuje sygnaturę jako AT89sXX, rozpoznaje że ma to 12 kB flash i 2 kB eeprom, ale nie umie nic z tym zrobić. Czekam na sugestie.
  • REKLAMA
  • #4 1579265
    ymko
    Poziom 11  
    Posty: 13
    u24 napisał:
    pony prog nie? jestes pewien? http://www.lancos.com/prog.html

    dzięki za adres, ale właśnie tam piszę że obsługuje 89s8252 i 89s53, natomiast nie ma wzmianki o s8253. No i w programie oczywiście też nie ma możliwości wybrać tego układu
  • REKLAMA
  • #5 1579442
    u24
    Poziom 14  
    Posty: 65
    Pomógł: 2
    Ocena: 3
    my mistake! sorry!
  • #6 1582624
    ymko
    Poziom 11  
    Posty: 13
    A więc twórca isp_progammer'a - Adam Dybkowski , umieścił nowy układ na liście obsługiwanych procesorów. Bardzo, bardzo dziękuję! Jednak na razie nie udalo mi się tym zaprogramować mojego układu. Powstaje pytanie - czy to mój układ dostał palpitacji , czy coś może jednak program szwankuje? Jak włożę spowrotem 89s52 to działa, ładnie czyta sygnaturkę. Ale dla 89s5253 nie ma ochoty odczytać sygnatury :(. Posprawdzajcie , jak wam to pracuje, czy możecie zaprogramować nowy układ, jeśli tak , to znaczy że potrzebuję nowy procek ( 20 zł w plecy ) Pozdrawiam!
  • #7 1582851
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    Adam Dybkowski napisał:
    BTW: Obsługa AT89S8253 jest tak poplątana, że dopiero mogłem ją dopisać gdy dorwałem ten uC w swoje ręce. Kilka komend nie przypomina tych z AVRa ani 89S51/52 - musiałem dodać w rozwijanym okienku możliwość bezpośredniego wybrania AT89S8253. Chyba ktoś w Atmelu miał zły dzień(...)
    Wiadomo - nowa wersja nie jest do końca sprawdzona, autor zresztą prosi o testy sprawdzające, być może nie na wszystkich komputerach zadziała... ;)
    --
    Pozdrawiam, Daniel
  • #8 1607763
    eBonifacy
    Poziom 13  
    Posty: 55
    Pomógł: 2
    Mnie też 89s8253 trafił do ręki. I nawet nie było zbytnio problemów z programowaniem go programatorem ISP atmela. Tyle, że trzeba uważać na FuseBit. Mi się udalo jednego procka zablokować. :)
    Jeszcze jedna uwaga co do tego procka. Zastąpiłem nim 89S8252 i wszystko działało, tylko jakby wolniej. Okazuje się, że przy kwarcu 24MHz oscylator pracował na około 12MHz. Wymiana kwarcow nie pomogła. Dopiero zmniejszenie kondesatorów z 33p na 15p pomogła.
    Gdyby ktoś chciał mogę podesłać schemat jak zrobić uproszczoną wersję atmelowskiego ISP.
    Pozdrowionka.
  • #9 1636291
    sq5mbz
    Poziom 1  
    Posty: 1
    Proszę o przesłanie schematu do takiego kabelka Atmela
  • #10 1636406
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    sq5mbz napisał:
    Proszę o przesłanie schematu do takiego kabelka Atmela
    Przecież jest kilka moich postów wyżej, link do programu, razem ze schematem "programatora"... ;)
  • Pomocny post
    #11 1636491
    eBonifacy
    Poziom 13  
    Posty: 55
    Pomógł: 2
    Do oryginalnego oprogramowania atmela najlepiej wykonać kabelek wg poniższego schematu:
    http://www.atmel.com/dyn/resources/prod_documents/isp_C_v5.PDF
    Pomocne może być też to:
    http://www.atmel.com/dyn/resources/prod_documents/doc3310.pdf

    Tak dokładniej, jest to schemat programtora CPLD Atmela, ale ISPCalbe jest identyczny. Ma tylko inaczej ponazywane połączenia.

    Zmontowałem ten programatorek z pewnymi modyfikacjiami i działa.
    1. Wyprowadzenia 6 i 8 wtyczki programującej (INT i AF) nie są konieczne, AT89Sxx nie potrzebuje ich. (Wyprowadzenie SS w procku nie musi być podłączone do złącza programującego).
    2. Zrezygnowałem z komparatora zasilania, pozostawiając wyprowadzenie ERROR portu LPT niepodłączone. Okazuje się, że brak tego komparatora nie wpływa na pracę.

    Pomocna będzie też rozpiska połączeń:
    TCK --> SCK
    TDO --> MISO
    TMS --> RST
    TDI --> MOSI

    Teraz tylko ściągnąć oprogramowanie i działać. ;) Tylko uważajcie na FuseBity w 89S8253, można sobie kukuk zrobić. :P

    Schematy i opisy znalazłem pod tym adresem:
    http://www.edaboard.com/sutra281754.html

    Pozdrawiam, bawcie się dobrze.
  • #12 1775890
    ymko
    Poziom 11  
    Posty: 13
    A więc zrobiłem sobie ten kabelek atmela. Dzięki!Korzystając z firmowego oprogramowania udało mi się w końcu dobrać do tego procka. Tylko tak jak opisuje kolega kilka postów wyżej wszysto jakoś wolniej pracuje. A przy opcji "clock x2" po prostu idzie w krzaki. Tego to już nie rozumiem. Zobaczę co z tymi kondensatorkami, czy zmiana coś da. Tak czy inaczej dziwne zachowanie, nawet jeśli przy normalnej pracy chodzi wolniej(właśnie jakby dwukrotnie), to przy opcji x2 powinien pracować zgodnie z założeniami.
  • REKLAMA
  • #13 1776234
    eBonifacy
    Poziom 13  
    Posty: 55
    Pomógł: 2
    Nie wiem, z czego wynika ten problem, ale tak jak wcześniej pisałem na kwarcu 24MHz w trybie 1x działał jakby 2x wolniej. Zmniejszenie kondesatorów pomogło. Co do trybu 2x to trzeba uważać, bo sporo się zmienia, poczytaj pdf na ten temat lub prościej nie wtajemniczaj się w ten tryb. Daj poprostu odpowiedniego kwarca;)
  • #14 1778091
    ymko
    Poziom 11  
    Posty: 13
    Zmiana kondensatorów pomogła. Na 10pF pracuje bez zarzutu. Co do trybu clock x2 to również działa jak należy. Po prostu 2x szybszy procesor. Wynika to z tego że maszyna stanów jest 6-cio stanowa a nie 12 jak w normalnym '51 i w pracy x1 czestotliwość kwarcu jest dzielona przez 2, a przy x2 po prostu dziala 2x szybciej.
  • #15 1780702
    Fajfer2
    Poziom 20  
    Posty: 507
    Pomógł: 18
    Ocena: 14
    W 51' przebieg zegarowy dzielony jest przez 12, dla trybu x2 będzie
    dzielony/6 . Być może będzie także wybór trybu osobno dla peryferii
    (timer0,1,2)
    Mam pytanie do testujących AT89S8253 --czy po włączeniu, uP
    ma przez kilka ms stany nieustalone na portach?
    bo ja gdy testowałem AT89S8252 takie nieustalone stany występowały.

    Fajfer2
  • #16 1780843
    eBonifacy
    Poziom 13  
    Posty: 55
    Pomógł: 2
    Stanów takich raczej nie posiada, ale jeśli włączasz zailanie, to nie osiąga ono odrazu 5V. Narasta ono stopniowo przez pewien czas i wtedy stan lini może być nieokreślony.
  • #17 1780888
    Fajfer2
    Poziom 20  
    Posty: 507
    Pomógł: 18
    Ocena: 14
    No tak,ale gdy sprawdzałem 89C4051 to nawet powolne zwiększanie napięcia (z autotransformatora) nie powodowało pojawienia się
    stanów nieustalonych.Obecnie sprawdzam AT89C51AC2 i "on"
    też nie posiada stanów nieustal. ,wg. niektórych opisów odpowiada
    za to reset a s y n c h r o n i c z n y portów,ale nie zawsze jest to
    zgodne np. z dokumentacją.

    Fajfer2
  • #18 1989229
    ymko
    Poziom 11  
    Posty: 13
    A więc podsumowując ten wątek - już spokojnie programuję sobie ten mikrokontroler. Początkowo korzystałem tylko z fimowego softu Atmela, bo jako jedyny obsługiwał ten uklad. Po 'nowelizacji' program pana Dybkowskiego tez działa, jak najbardziej :) , tylko muszę do tego wykorzystywać programator Atmela - AtmelISPCable. Wcześniejszy programator którego używałem nie miał buforów i może dlatego były problemy z wykorzystaniem programu pana Adama. Teraz chętnie go uzywam bo pozwala niezależnie programować wewnętrzną pamieć eeprom w układzie i flash, a po każdym programowaniu z programu Atmela miałem wyczyszczony eeprom. Jeszcze tylko na koniec dodam ze jeszcze nie dopracowano tego układu do konca bo układ watchdoga nie jest sprawny - ustawianie flag ps2,ps1,ps0 nie ma wpływu na czas przepełnienia licznika, dziala ciągle jak dla wszystkich tych bitów = 0 , czyli najkrótszym okresie. Dowiedziałem sie po spędzeniu kilku wieczorów na bezskutecznym wykrywaniu błędów w układzie zerowania watchdoga - i przeczytaniu erraty do noty aplikacyjnej. Widać warto to czytać :) Pozdrawiam wszystkich którzy coś wnieśli do tego tematu.
  • REKLAMA
  • #21 2306644
    LordBlick
    VIP Zasłużony dla elektroda
    Posty: 5438
    Pomógł: 549
    Ocena: 69
    Tytułem uzupełnienia - ISPprog obsługuje praktycznie wszystkie możliwe kombinacje podłączonych ISP (również STK200/300), gdyż oprócz kilku wbudowanych można ustawić własną.

Podsumowanie tematu

✨ Dyskusja dotyczy programowania mikrokontrolera Atmel AT89S8253 w trybie ISP. Użytkownicy zgłaszali problemy z obsługą tego układu przez popularne programatory i oprogramowanie, takie jak ISP Programmer, IC-Prog czy PonyProg, które początkowo nie rozpoznawały modelu 89S8253. Autor oprogramowania ISP Programmer, Adam Dybkowski, dodał wsparcie dla tego mikrokontrolera, jednak programowanie wymagało użycia programatora Atmel ISP Cable z buforami, gdyż wcześniejsze programatory bez buforów nie działały poprawnie. Wskazano na konieczność ostrożności przy ustawianiu FuseBitów, które mogą zablokować układ. Zauważono również, że przy kwarcu 24 MHz mikrokontroler działał wolniej niż oczekiwano, co poprawiono zmniejszając pojemność kondensatorów z 33 pF do 10-15 pF. Tryb zegara x2 działa poprawnie po tej korekcie, co wynika z architektury maszyny stanów mikrokontrolera. Podano schematy i linki do dokumentacji Atmela dotyczące programatora ISP, a także omówiono, że program ISPprog obsługuje różne konfiguracje sprzętowe, w tym STK200/300. Na koniec zwrócono uwagę, że układ watchdog w AT89S8253 nie działa zgodnie z oczekiwaniami, co może wymagać dalszych testów i uwag projektowych.
Wygenerowane przez model językowy.
REKLAMA