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

Jak programować AT89S52? Podłączenie, kwarc, oprogramowanie na Windows XP

Uzytkowniik 06 Sty 2006 22:44 3591 33
Najlepsze odpowiedzi

Jak podłączyć i programować AT89S52 programatorem ISP na LPT pod Windows XP, jaki kwarc użyć i jakie oprogramowanie wybrać?

AT89S52 można programować ISP na LPT, ale trzeba mieć poprawne połączenia, stale podłączony kwarc i możliwie krótkie przewody; w tym wątku problem zniknął dopiero po skróceniu kabli z ok. 40 cm do 20 cm [#2164715] Do połączeń użyto: LPT 6 → Reset, 7 → MOSI/P1.5, 8 → SCK/P1.7, 10 → MISO/P1.6 oraz wspólna masa 18–25 → GND procesora [#2155694][#2157133] Kwarc powinien być podłączony cały czas, nie tylko na czas programowania; 12 MHz jest polecane, choć 5,625 MHz też powinien działać [#2154838][#2155225] Pod Windows XP autorom działały programy dołączone do schematu, USP Programmer Adama Dybkowskiego oraz ISP Prog, przy czym trzeba wybrać właściwy typ układu (AT89S52) i wczytać plik HEX przed programowaniem [#2154838][#2163453][#2161312] Gdy program zgłasza brak połączenia, warto sprawdzić lutowania, zasilanie Vcc i ewentualnie podłączyć EA/Vpp do Vcc [#2162610][#2154838]
Wygenerowane przez model językowy.
  • #1 2154089
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Kiedyś zabrałem się za zabawę z µC, ale niestety musiałem to przerwac z powodu braku czasu. Teraz kiedy chcę do tego powrócic to się trochę zamotałem. Mam ten scalak i mam też prosty "programator" tzn. kabelkami podłączyłem odpowiednie piny z µC z pinami wtyczki drukarki(MOSI-16, MISO-10, SCK-17, RST-14 i GND-25). Kable mają dł.ok 40cm. Podczas programowania musi byc podłączony kwarc (5,625) z kondensatorami i to wszystko do masy. Podłączone też jest zasilanie 5V. Pozostałe wyprowadzenia "wiszą" nieużywane w powietrzu.

    Teraz moje pytania:
    1. Czy wszystko robie dobrze??
    2.Jakiego programu użyć (pod windows xp)??
    3.Czy taki kwarc wystarczy?/

    Przepraszam za zamieszanie, ale siedze nad tym już bardzo długo i nie mogę się połapać.
  • Pomocny post
    #2 2154838
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Witam

    Ja proponowal bym uzyc troche szybszego kwarcu np. 12MHz ale na tym tez powinno pojsc.

    Z opisu wnioskuje ze uzywsz programatora AEC ISP wiec do jego obslugi mozesz uzyc programu dolaczonego do schematu(dosowe okienko) lub programu USP Programmer Adama Dybkowskiego(z tym ze ja musialem uzywajac go podlaczyc jeszcze nozke EA/Vpp do Vcc bo dzialy sie rozne jaja i zeby program ruszyl to trzeba bylo fuse bity ustawiac).
  • #3 2155176
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    To znaczy że dobrze wszysto pamiętam??
  • Pomocny post
    #4 2155225
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    W sumie tak tylko ze kwarc i kondenstatory musza byc podpiete caly czas a nie tylko podczas programowania bo ukladzik nie bedzie chodzil.

    Dodano po 6 [minuty]:

    Cytat : "(MOSI-16, MISO-10, SCK-17, RST-14 i GND-25)"

    a jeszcze w jakiej obudowie masz procka bo mi sie cos numerki pinow niepodobja??
  • Pomocny post
    #5 2155435
    VanThor
    Poziom 19  
    Posty: 224
    Pomógł: 34
    Ocena: 5
    boroova6523 napisał:
    Cytat : "(MOSI-16, MISO-10, SCK-17, RST-14 i GND-25)"

    a jeszcze w jakiej obudowie masz procka bo mi sie cos numerki pinow niepodobja??


    Bo to pewnie są numery pinów we wtyczce do portu LPT, a nie pinów AT89S52.
  • #6 2155449
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Te numerki są numerami pinów wtyczki drukarki. Oznacza to że nużke 6 uC (MOSI) podłączyłem do 16 pinu wtyczki drukarki itd.....
  • Pomocny post
    #7 2155694
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Myslalem ze to piny procka

    ale czy ten programator to wogole chodzi ci bo ja mam calkiem cos innego

    LPT --- PROCEK
    6 (D4) --- 9 Reset
    7 (D5) --- 6 (P1.5 -MOSI)
    8 (D6) --- 8 (P1.7 - SCK)
    10 (ACK) --- 7 (P1.6 - MISO)
    18-25 (GND) --- 20 (GND)
  • #8 2155999
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    boroova6523 napisał:

    LPT --- procesor
    6 (D4) --- 9 Reset
    7 (D5) --- 6 (P1.5 -MOSI)
    8 (D6) --- 8 (P1.7 - SCK)
    10 (ACK) --- 7 (P1.6 - MISO)
    18-25 (GND) --- 20 (GND)


    Możesz mi to trochę wytłumaczyć bo teraz ja Ciebie nie rozumnię.

    Wszystkie dane wziełem z tąd: http://boss.iele.polsl.gliwice.pl/pdf/Atmel/doc1919.pdf obudowa PDIP
  • #9 2156569
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    No napisalem ci tam jak wyglada moj programator. Po lewej masz numey pinow portu LPT a po prawej piny procka.
  • #10 2156804
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Czyli mój programator jest źle zrobiony?? A masę podłączyłes do wszystkich pinów od 18 do 25 ??
  • Pomocny post
    #11 2157133
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Tak, masa jest podlaczona do pinow od 18 do 25 (polaczylem je wszystkie razem we wtyczce LPT i jednym kabelkiem do procka)

    A czy twoj programatoj jest zly to nie wiem. Moze to jakis inny projekt. Ja proponuje ci sprawdzone przezemnie rozwiazanie a jak robiles juz cos tym twoim i chodzilo to pewnie tez jest dobry.

    P.S.
    Szczerze mowiac to ja teraz uzywam troche bardziej skomplikowanego programatorka(ale nie bardzo). Nazywa sie on STK200/300 a glowna roznica polega na tym ze ma on bufor 74HC244 ktory zapobiega spaleniu portu LPT w przypadku jakiegos zwarcia na plytce z prockiem ale uklad ktory opisuje wczesniej jest jak najbardziej sprawny, gdyz uzywalem go wczesniej. Jedynym problemem moze byc dlugosc kable(na zbyt dlugim nie pociagnie). To bylo glownym powodem zmiany przezemnie programatora.
  • #12 2157433
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Dzięki za porady!!

    Też chciałem zrobiś cobie tego STK ale nie mogłem nigdzie dostać tego bufora i zrobiłem taki prosty "programator".

    Jak kiedyś chciałem programować procka to nie mogłem-zmienie połączenia tak jak radzisz, spróbuje i dam znać.

    Dzięki, pozdrawiam !!
  • #13 2157608
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    No ja bufor dostalem w elektronicznym- jedynym na cale miasto i niezbyt bogato zaopatrzonym- ale akuat mieli co tez mnie zdziwilo.
  • #14 2157615
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    No i klops.....!!

    Zrobiłem tak jak pisałeś, polutowałem wszystko, nawet próbowałem z podłączeniem nużki 31 do Vcc i nic.

    podłączam wszystko do kompa, zasilanie do uc, kwarc bez zmian 5.625 MHz wczytuje jakiś banalny program do eepromu i nic. Używam isp prog
  • #15 2157742
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Sproboj tym programikiem
    mi on chodzil nawet jak nie podpiolem EA/Vpp pod Vcc
    Załączniki:
    • aec_isp.zip (49.43 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #16 2157866
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    To samo......
    Załączniki:
    • Jak programować AT89S52? Podłączenie, kwarc, oprogramowanie na Windows XP bez tytułu.JPG (13.21 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #17 2157900
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    A w ktorym momencie wyswietla ci sie ten komunikat??

    A zmieniles w SETUP rodzaj procka?? Domyslnie jest ustawione na AT89S51.
  • #18 2160207
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Komunikat pojawia się przy próbie zaprogramowania uc. Tak zmieniłem rodzaj procka na AT89S52
  • #19 2160539
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    a moze cos nie tak z twoimi plikami HEX

    masz tu taki prosty programik. Na porcie P0 bedzie prosty efekt swietlny.
    Załączniki:
    • BB.rar (178 Bajtów) Musisz być zalogowany, aby pobrać ten załącznik.
  • #20 2160768
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Niestety ton nie to :(( Ludzie pomużcie mi mam fajny pomysł a nie mogę zaprogramować procka :(

    Czy tobie te programy działają i programujesz w win XP??
    Jutro albo pojutrze kupie nowy procesor może go przez przypadek zjarałem albo coś takiego !!
  • #21 2160912
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Tak, mi wszystko co opisywalem chodzi z win XP.

    Mam jeszcze pare mozliwosci do sprawdzenia:
    1. Moze przekroczyles cykl 1000 zaprogramowan(w tym wypadku ratuje cie wymiana procka)
    2. Skroc przewody programatora.
    3. Sprzwdz czy masz dobry kwarc a najlepiej wymien na jakis inny np. 12MHz(ja takiego uzywam)

    P.S.
    nie wspominales nic wczesniej o resecie. Czy masz go dobrze podpietego.
  • #22 2161131
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Dobra kwarc też wymienie. Kable mam dł ok. 40cm to chyba powinny być dobre. Nie mogłem przekroczyć 1000 programowań bo układ był nowy. Ja dopiero chce pierwszy raz w życiu zaprogramować procka. Reset mam podłączony do 6 nużki LPT.

    A może źle obsługuje program, nic innego do głowy mi nie przychodzi??? Może napisz mi co ty robisz krok po kroku dla bardzo początkujących.
  • #23 2161312
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Ok.
    Na poczatek to wrzucam schemacik jak mozna podlaczyc reset diodke i goziczek(bardzo proste dla poczatkujacych)

    A co do obslugi programu to robisz tak:
    1. Ustawiasz typ procka(ty juz to chyba zrobiles)
    2. Wybierasz "(A) Load HEX file to flash buffer"
    3. Wpisujesz sciezke i nazwe pliku np. C:\cos_tam\bb.hex (najlepiej jak masz plik HEX w folderze z programkiem bo wtedy wystarczy wpisac tylko nazwe pliku)
    4. Wybierasz "(E) Program"
    5. Czekasz az proces sie zakonczy.
    6. Resetyjesz procka i powinno chodzic.
    Załączniki:
    • schemat.pdf (24.28 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #24 2162528
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Reset w płytce testowej mam właśnie tak podłączony, ale w "programatorze" mam podłączony do LPT.
    Ja robiłem tak samo ale po którymś razie coś się zmieniło, po punkcie 3 pojawiło się okienko (b.jpg)

    i na końcu pojawiło się okienko (2.jpg)
    Załączniki:
    • Jak programować AT89S52? Podłączenie, kwarc, oprogramowanie na Windows XP b.JPG (17.57 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • Jak programować AT89S52? Podłączenie, kwarc, oprogramowanie na Windows XP 2.JPG (18.37 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #25 2162610
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    No to juz chyba jestesmy blisko rozwiazania problemu. Taki komunikat (2.jpg) pokazuje sie jezeli procek nie jest podpiety do programatora wiec proponuje sprawdzic kable i lutowania na plytce i we wtyczce programatora. Aha, i mam nadzieje ze podczas programowania wlaczone masz zasilanie procka (Vcc)??.
  • #26 2162917
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Zasilanie mam podpięte z compa 5V.
    Sprawdze wszystkie połączenia i napisze czy coś się zmieniło. Może nie ma połączenia bo procek zjarany ??
    Możesz napisać mi jeszcze jak Ty programujesz w isp prog??
  • Pomocny post
    #27 2163453
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    Obsluga ISP Rpoga jest jeszcze prostsza

    1. Wybierasz w setup programator (u ciebie AEC ISP)
    2. Wybierasz plik przy "File for programming Flash"
    3. Naciskasz "Erase & Program All"

    No oczywiscie nie zapomnij o wyborze kwarca i procka :)
    Na tym programatorze w sumie nioe testowalem tego programu ale powinno chodzic. Jakby nie chodzilo to sproboj podlaczyc nozke EA/Vpp pod Vcc.
  • #28 2164181
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    No i klops!
    Muszę chyba kupić nowy procesor, bo ten wydaje mi się że jest spalony albo coś takiego. Myśle tesz nad zrobieniem programatora stk200 co o tym sądzisz??

    Dodano po 45 [minuty]:

    Zobacz na to:(44.jpg)

    Powodem były za długie kable, wszędzie czytałem że 40cm wystarczy, skróciłem je do 20 i efekty widać na zdjęciu.

    Dzięki za pomoc teraz już chyba wszystko oki. Ale nadal się zastanawiam nad stk200. Dzięki!!!!!!
    Załączniki:
    • Jak programować AT89S52? Podłączenie, kwarc, oprogramowanie na Windows XP 44.JPG (20.23 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • Pomocny post
    #29 2164715
    boroova6523
    Poziom 15  
    Posty: 141
    Pomógł: 13
    No to wiec gratuluje sukcesu(w sumie troche wczesniej pisalem juz o skroceniu kabli). Mi ten programator odpalil od kopa ale ja od razu mialem krotkie kabelki. Wlasnie z tego powodu zrobilem stk200. Ciezko by mi bylo latac co chwila pod stol i podpinac programator z 20cm kabelkami(no chyba ze masz laptopa albo inne podobne rozwiazanie). Drugim argumentem przemawiajacym za stk200 to to ze trudniej przypadkowo uwalic sobie plyte jak zrobisz jakies zwarcie. Mozesz ko kupic na allegro za 20-30zl albo zrobic za max 5zl.Ja wykozystalem do jego budowy stary kabel od drukarki, troche el;ektronicznego zlomu, laminat i chlorek do trawienia mialem z poprzednich projektow, jedyne co kupilem to 74HC244- ok 1.50 zl no i jeszcze podastawka do niego.l
  • #30 2164872
    Uzytkowniik
    Poziom 16  
    Posty: 291
    Pomógł: 16
    Ocena: 21
    Masz pare punkcików wnagrode bo się trochę na męczyłeś!!

    To jutro się biore za bódowę stk200.

    Jeszcze raz DZIĘKI!!!!

Podsumowanie tematu

✨ Dyskusja dotyczy programowania mikrokontrolera AT89S52 przy użyciu prostego programatora podłączonego do portu LPT komputera z systemem Windows XP. Użytkownik podłączył piny mikrokontrolera do odpowiednich pinów wtyczki drukarki (MOSI, MISO, SCK, RST, GND) za pomocą kabli o długości około 40 cm oraz zastosował kwarc 5,625 MHz z kondensatorami i zasilanie 5V. Wskazano, że kwarc i kondensatory muszą być podłączone cały czas, nie tylko podczas programowania. Zalecano użycie szybszego kwarcu, np. 12 MHz, dla lepszej stabilności. Podano przykładowe schematy połączeń oraz zwrócono uwagę na poprawne przypisanie pinów LPT do pinów mikrokontrolera, gdyż numeracja pinów LPT różni się od numeracji pinów układu.

Do programowania polecano programy kompatybilne z Windows XP, takie jak USP Programmer Adama Dybkowskiego lub dołączony do schematu program AEC ISP, z uwzględnieniem ustawienia fuse bitów i ewentualnego podłączenia nóżki EA/Vpp do Vcc. Wskazano, że długość kabli programatora powinna być skrócona do około 20 cm, gdyż dłuższe kable mogą powodować problemy z programowaniem.

W przypadku problemów z programowaniem sugerowano sprawdzenie poprawności połączeń, zasilania, resetu oraz plików HEX. Użytkownik ostatecznie potwierdził, że skrócenie kabli rozwiązało problem i rozważa budowę bardziej zaawansowanego programatora STK200/300, który zawiera bufor 74HC244 chroniący port LPT przed uszkodzeniem. Omówiono również sposób obsługi programów do programowania ISP krok po kroku, w tym wybór typu mikrokontrolera, ładowanie pliku HEX i programowanie. Na koniec potwierdzono, że reset mikrokontrolera jest aktywny na poziomie wysokim (log. 1).
Wygenerowane przez model językowy.
REKLAMA