Zdecydowalem się na programator AVT518 B Pr89AT - programator mikrokontrolerów `51 z pamięcią Flash oraz książkę "Programowanie mikrokontrolerów 8051 w języku C, pierwsze kroki". Czy mając taki zestaw + mikrikontroler (i reszta elektroniki czyli jakiś zasilacz i uklad którym sprawdzę pracę mikrokontrolera) będę mógl szybko (po kilku dniach) przysąpić do pisania prostych programów typu "naciśnięcie przycisku zpowoduje zapalenie diody LED" ?
Zdecydowalem się na programator AVT518 B Pr89AT - programator mikrokontrolerów `51 z pamięcią Flash oraz książkę "Programowanie mikrokontrolerów 8051 w języku C, pierwsze kroki". Czy mając taki zestaw + mikrikontroler (i reszta elektroniki czyli jakiś zasilacz i uklad którym sprawdzę pracę mikrokontrolera) będę mógl szybko (po kilku dniach) przysąpić do pisania prostych programów typu "naciśnięcie przycisku zpowoduje zapalenie diody LED" ?
Odpuść sobie ten programator. Mam go w domu lecz nie używam. Porównaj ceny C51 i S51. Wtopisz kasę i tyle, nie wspominając o funkcjonalności ISP
Więc zostanę przy tej książce i programatorze (jest stacjonarny, wydaje się że będzie dobry w swojej cenie), a wybiorę mikrokontroler AT89C51. Ponawiam pytanie Czy mając taki zestaw + mikrikontroler (i reszta elektroniki czyli jakiś zasilacz i uklad którym sprawdzę pracę mikrokontrolera) będę mógl szybko (po kilku dniach) przysąpić do pisania prostych programów typu "naciśnięcie przycisku zpowoduje zapalenie diody LED" ?
Programator vhyba wspólpracuje z Bascom'em a ja chcę zacząć naukę C
Wybieram serie '51 ponieważ chcę zacząć zabewe z uC z narazie jedną książką "Programowanie mikrokontrolerów 8051 w języku C w praktyce" nie wymagam od uC wiele a pozatym
AT89C51-20PC MC 4K-FLASH 20MHZ DIP40
AT89C4051-24PC MC 4K FLASH 24MHZ DIP20
AT89S51-24PI ISP-MC 5V 4K-FLASH 24MHZ DIP40
więc nie ma dużej różnicy
widze, ze sie uparles na ten programator:) kupisz, co bedziesz chcial, ale powtarzam, ze do amatorskich zastosowan programator ISP jest zarowno tanszy jak i wygodniejszy. to, co napisalem o '51, ze nie maja mozliwosci programowania przez ISP nie powinno Cie zniechecac, bo pisalem o standardowych, tradycyjnych 8051, ale ISP sie przyjelo i jest coraz bardziej popularne, wiekszosc wspolczesnych mikroprocesorow posiada obsluge ISP i dotyczy to rowniez bardzo wielu mikroprockow rodziny '51, stanowiacych rozszerzenie standardowego 8051 (jak chociazby wspomniany juz przeze mnie AT89S51, czy wiele innych - wejdz na http://www.atmel.com/dyn/products/devices.asp?family_id=604 i porownaj ilosc prockow w kategorii "Flash (Reprogrammable)" i "Flash ISP (In-System Programmable)")
poza tym jak zamierzasz uzywac programatora i procka do nauki, to bedziesz go wielokrotnie progrmowal i przekladal tam i z powrotem. a jak sie zdecydujesz na programator ISP, to raz sobie zmontujesz jakis zestaw startowy(pamietaj o gniezdzie na ISP) i juz procka nie musisz nigdzie ruszac, tylko w razie potrzeby sobie podlaczasz programator do plytki i juz:-)
aha, no i jak zdecydujesz sie na ISP, to pamietaj zeby kupic innego procka, bo AT89C51 sie do ISP nie nada.
----[ edit ]----
aaaa, sorry, teraz dopiero sie doczytalem czemu sie tak wzbraniasz przed ISP:
paw789 wrote:
Programator vhyba wspólpracuje z Bascom'em a ja chcę zacząć naukę C
to ze wspolpracuje, oznacza, ze srodowisko IDE do bascoma posiada obsluge programatora ISP - czyli piszesz program, kompilujesz i wysylasz na mikroprocka - wszystko korzystajac ze srodowiska programistycznego Bascom. nie wyklucza to jednak wcale mozliwosci wgrania do procka poprzez ISP programu skompilowanego kompilatorem innego kompilatora i nie potrzebujesz miec Bascoma nawet zeby wgrywac swoje programy napisane w C - sa inne programy, ktore pozwalaja wgrac program przez ISP (niezaleznie od jezyka w jakim zostaly napisane, tym bardziej,ze wysyla sie skompilowany kod binarny, wiec ani dla procka, ani dla progrmatora, ani dla programu do programowania(wgrywania programu do procka) nie robi to roznicy w jakim jezyku program byl napisany przed kompilacja.
konkretny przyklad: ja sam uzywam programatora ISP wraz z programem ponyprog2000 (za darmo dostepny w necie) i za pomoca tego zestawu bez problemu programuje procka AT89S8252 programami napisanymi w jezyku C
Ja chcę zacząć od ATC51 lub innych z serii 51 ponieważ jest do nich książka "Programowanie mikrokontrolerów 8051 w języku C w praktyce" czyli będę mial to co chcę (czyli opis mojego wybranego uC i kurs jęcyka C) Chyba że polecisz mi inny zestaw, czyli książka z jezykiem C do konkretnych uC i programator. Aha, proszę rozwiać moje wątpliwości, programator wspólpracuje z programem na PC, a program na PC kompiluje (lub robi coś innego) plik z programem w języku C, więc jak to jest? mój wybrany programator AT518 wspólpracuje z programem PR98AT, a czy ten program kompiluje programy w języku C?
A czy ten programator na ISP wspólpracuje z AT89C2051, lub AT89S51 lub AT89C51 ? Koniecznie musi być seria '51 ponieważ jest do nich książka raezm z kursem C. ale czy ten Programator AY518 jest gorszy od ISP, nie chodzi o cene ale o niezawodność, latwość w użyciu, bezproblemowość, a także o uniwersalność choć nie koniecznie?
Ja chcę zacząć od ATC51 lub innych z serii 51 ponieważ jest do nich książka "Programowanie mikrokontrolerów 8051 w języku C w praktyce" czyli będę mial to co chcę (czyli opis mojego wybranego uC i kurs jęcyka C)
chyba caly czas sie nie rozumiemy ja wcale nie probuje Cie zniechecic do '51, tylko wskazac na mikroprocki tej serii, ktore daja mozliwosc programowania przez ISP. wszystkie procki serii '51 sa w kompatybilne w dol z 8051, wiec jak kupisz ksiazke o klasycznym 8051, to bedzie to wiedza w 100% adekwatna do procka, stanowiacego rozwiniecie standardowego '51. to tak jak polonez w wersji standard, ksiazka "ja i moj polonez", oraz polonez w wersji z klimatyzacja, skorzana tapicerka i GPSem wszystko czego sie dowiesz z ksiaki o 8051 nadal obowiazuje w bardziej rozbudowanych prockach tej serii, tyle tylko, ze maja rozne dodatkowe bajery, z ktorych wcale nie musisz korzystac.
paw789 wrote:
Aha, proszę rozwiać moje wątpliwości, programator wspólpracuje z programem na PC, a program na PC kompiluje (lub robi coś innego) plik z programem w języku C, więc jak to jest? mój wybrany programator AT518 wspólpracuje z programem PR98AT, a czy ten program kompiluje programy w języku C?
programator wspolpracue z programem na PC, ale jest to inny program niz ten do kompilacji z jezyka C, czy jakiegokolwiek innego (w przypadku bascoma oba programy sa zintegrowane, ale to nie ma znaczenia)
proces programowania wyglada nastepujaco:
1) piszesz program w jakims jezyku do ktorego masz kompilator na dany mikroprocesor (C, Assembler, Bascom..). program mozesz pisac nawet w Notatniku , do tego trzeba zadnego dodatkowego oprogramowania. w wyniku napisania programu otrzymujesz kod zrodlowy programu w danym jezyku - czyli plik tekstowy, zrozumialy dla czlowieka
2) uzywasz kompilatora dla jezyka w ktorym napisales program i za jego pomoca zamieniasz kod zrodlowy na kod binarny programu. w wyniku kompilacji dostajesz dane niezrozumiale dla czlowieka, w postaci takiej, w jakiej powinny sie znalezc w pamieci mikroprocesora
3) za pomoca programu do programowania, oraz programatora przenosisz kod binarny programu z PC na mikroprocka
zauwaz, ze tylko dwa pierwsze etapy zaleza od jezyka w jakim piszesz program
Więc kupię tę książkę i programator ISP i procek, więc jaki? AT89S51 ? to ma być taki kompletny zestaw na początek, chcialbym aby procek mial obudowę DIP20
Uparlem się przy seri '51 tylko dlatego że dopiero zaczynam się uczyć o uC, a seria '51 jest początkowa, bez dodatkowych bajerów które tylko moglyby mnie wprowadzić w zaklopotanie, myślę że jako początkujący powinienem zacząć od serii 51, może się mylę, ale od tego wszyscy zaczynali. Programator nie musi być uniwersalny, aby programowal serię 51, ten programator ISP wzdaje mi za prosty, i nie jest stacjonarnyi pewnie nie weryfikuje zapisanego programu.
Konkretnie chodzi mi o : AT89C2051,
AT89S51 ma tyle pamięci flasch co AT89C4051, Dlaczego wszyscy zachwalają wersję z "S" a nie z "C" ?
Programator AT518 (programuje 89C51, 89C52, 89C55 bez WD, oraz 89C2051, 89C4051) jest gorszy od ISP:?: Nie chodzi o cene ale o niezawodność, latwość w użyciu, bezproblemowość
Jak seria '51 będzie dla mnie już nie wystarczająca to wybiorę nowsze modele Atmela, programator też zmienię
Czy np At89C2051i AT89C51 są nowszymi wersjami 8051? Czy jeśli książka jest o 8051 to dotyczy w/w uC ?
Więc kupno programatora ISP zależy tylko od tego czy programuje on mikroprocesory AT89C4051, AT89C2051, AT89C51?? Nie moglem znaleźć informacji na ten temat, i jakie oprogramowanie do programowania tego programatora jest najlepsze (programy będę pisal w C) , bezplatne, latwe w obsludze, niezawodne. Czy polecacie kity AVT?
Z oprogramowania, to na poczatek mozna uzyc zwyklego pakietu WinAVR.. Do tego symulator VMLab i mozna ladnie pracowac...
To zdaje sie jest do avr-ow, a rozmowa od kilku postow jest o '51.
Co do programatora to popieram przedmowcow co do ISP - moim zdaniem obecnie nie ma juz sensu zaczynanie od prockow bez tej cechy. Popularna konstrukcja na bazie bufora 74244 mozna programowac m.in. 89s51, 89s52, 89s8252, 89s2051.
Co do kompilatora do jezyka C to np. Keil albo Raisonance - oba sa dostepne jako bezplatne wersje z ograniczeniem wielkosci kodu wynikowego (2/4kB) - ale na poczatek w zupelnosci wystarczy. Oba te programy mozesz zastosowac do praktycznie wszystkich prockow z rdzeniem '51 - czyli rowniez tych wymienionych powyzej.
W wyniku kompilacji (za pomoca np. powyzszych kompilatorow) otrzymasz plik z rozszerzeniem .hex - wgrywa sie go do procka za pomoca programu obslugujacego dany programator - w przypadku konstrukcji ISP opartej na buforze 74244 moze to byc np. wspomniany przez tmg83 bezplatny ponyprog.
Witam!
Chciałem zacząłąć programować procki w języku c, ale niestety jedyną przeszkodą jest cena programatorów i zestawów uruchomieniowych. W związku z tym mam pytanie:
Jaką kombinację programatora i zestawu uruchomieniowego polecacie by wyszło to w miarę tanio. Tak samo, żeby kolejne mikrokontrolery pod ten zestaw nie były zbyt drogie.
Najprostrze programatory mozna zrobic ze zwyklego kabla na LPT, a jak dorzucisz do tego kilka opornikow i jeden scalaczek to bedziesz mial przyzwoity programator na poczatek...
Zeby zobaczyc, czy wogole jest to zajecie dla Ciebie, nie potrzebujesz wcale zestawu uruchomieniowego, jest to przydatne dopiero pozniej, kiedy poznasz juz podstawy i uznasz, ze Ci sie to podoba...
szukam możliwości pomiaru poprzez PC (złącze LPT lub RS232) temperatury oraz oporu dwóch punktów jednocześnie. Podoba mi się rozwiązanie pomiaru temperatury za pomocą czujników DS18B20 zamieszczone na Elektrodzie. Czy można za pomocą mikrokontrolera dołączyć pomiar oporu (dwóch punktów)? Mile widziane oprogramowanie i schemat. Urządzenie potrzebne do badania stanu punktów biologicznie aktywnych na ciele człowieka.
Chcę zrobic programator http://www.amwaw.edu.pl/~adybkows/elka/ispprog.html i użyc programu z tej samej strony. Iteraz pytania:
1.Co sądzą doświadczeni elektronicy o tym programatorze i programie do programowania AT89S52 ?
2. Mikrokontroler posłączamy do "J2" czyli odpowiednie nużki scalaka do odpowiednich wyprowadzeń na schemacie (RESET do RESET, MISO do MISO itd.) ??
3. 20 nużkę podłączamy do zasilana (+5V) a 10 do masy??
4.Czy jak zaprogramuje ten procesor to będe mógł go wyjąc i podłączyc do innej płytki np. testowej i bedzie działac ??
ad1 - osobiście używam stk 200 , większość programów do obsługi programatorów ma go , oczywiście ilu ludzi tyle opinii
ad2 - tak
ad3 - tak
ad4 - ogólnie tak , cała idea isp to programowanie uC już w konkretnym układzie bez jego przekładania ( programator - układ ) są pewne wyjątki jak w każdej regule
To który programator jest lepszy ten stk 200 czy ten który ja zaproponowałem, czytałem o nim troche i ludzie czasami mają z nim problemy......
Wracając do pyt 4. Czyli moge zaprogramowac uC w programatorze jako np. zegar, wyjąc z programatora, włożyc do układu w którym ma pracowac i bedzie działac ??
Wracając do pyt 4. Czyli moge zaprogramowac uC w programatorze jako np. zegar, wyjąc z programatora, włożyc do układu w którym ma pracowac i bedzie działac ??
odp - tak
Quote:
To który programator jest lepszy ten stk 200 czy ten który ja zaproponowałem, czytałem o nim troche i ludzie czasami mają z nim problemy......
ja nie miałem z stk 200 żadnych problemów jest to tak prosty układ że poprawnie zmontowany musi działać
zobacz to http://www.btc.pl/index.php?id=zl2prg każdy ma swoje zdanie , sam dokonaj wyboru
Myślę, że lepiej zrobić programator STK200, gdyż jego obsługa jest od razu zaimplementowana w wielu programach (m.in. CodeVisionAVR, BascomAVR) i jest pewnego rodzaju standartem.
Zaletą jest, że nie będziesz musiał się przełączać pomiędzy różnymi programami. Umożliwi Ci to szybszą pracę - bodajże w CodeVisionAVR można ustawić automatyczne reprogramowanie kości po kompilacji projektu, itp.
Drugą zaletą jest to, że jak Atmel wypuści na rynek nowe procesorki, to "większe" firmy od oprogramowania od razu tworzą aktualne wersje. W przypadku programatorów tworzonych przez hobbystów taki update nie jest pewny i możesz zostać na przysłowiowym lodzie.
Chyba zdecyduję się na stk200 ( http://www.btc.pl/pdf/zl2prg.pdf ) ale mam kilka pytań:
1.Czy ten programator obsługuje uC at89S52 ?
2. U1a i U1b to ten sam układ (czy to jeden układ narysowany w 2 rysunkach)
3. Nóżki 4,6,8,10 uC podłączamy do masy , a nóżkę 2 uC przez diodę i kondensator do zasilania (5V), nóżki od 20 do 25 J1 podłączyć do masy a pozostałe wolne nigdzie nie podłączone niech "wiszą" niepodłączone ?
4.Czy podczas programowania musi by podłączony kwarc do uC
5.Gdzie mogę zobaczyc kartę katalogową tego uC (at89s52)
Zależy, czy program (loader), którym chcesz programować kość obsługuje ten programator. Moim zdaniem tak, aczkolwiek nie pracowałem z AT89S52.
Uzytkowniik wrote:
2. U1a i U1b to ten sam układ (czy to jeden układ narysowany w 2 rysunkach)
Tak, to jeden układ, jednak ze względu na przejrzystość scematu narysowany w dwóch logicznych blokach.
Uzytkowniik wrote:
3. Nużki 4,6,8,10 uC podłączamy do masy , a nużkę 2 uC przea diode i kondensator do zasilania (5V), nużki od 20 do 25 J1 podłączyc do masy a pozostałe wolne nigdzie nie podłączone niech "wiszą" niepodłączone ?
Rozumiem, że chodzi Ci o rysunek 4 w tym pdf-ie. Tam jest pokazane złącze programatora a nie uC. Tzn. nóżkę 1 [MOSI] złącza łączysz z wyprowadzeniem [MOSI] w mikrokontrolerze, itd. Rozłożenie wyprowadzeń portu ISP mikrokontrolera znajdziesz w nocie katalogowej (patrz odp na pyt. 5)
Uzytkowniik wrote:
4.Czy podczas programowania musi by podłączony kwarc do uC
Tak, chyba, że używasz wewnętrznego oscylatora RC - jeśli uC takowy posiada i jest uaktywniony przez FUSE-BIT-y.
Uzytkowniik wrote:
5.Gdzie mogę zobaczyc kartę katalogową tego uC (at89s52)
Witam,
Od paru godzin przeglądam wszystkie dostępne faqs, howtos, archiwalia i co tylko możliwe - nie znalazłem rozwiązania problemu. Mam nadzieję, że pomożecie
Otóż, mam: attiny26, oraz programator-samoróbkę (podpiąłem piny z portu LPT do odpowiednich wyjść uC). Niezależnie od rodzaju programu, oraz programatora (próbowałem też innych), nie mogę odczytać nic z urządzenia - jedyne co zwraca, to FF FF FF FF..
Analogiczna sytuacja pojawia się z programatorem ZL11PRG i AT89S8252 - próbowałem różnych programów i jedyne co otrzymuję przy zczytywaniu pamięci, to FF FF FF.
Port LPT na 100% jest sprawny (ręcznie zapalałem i gasiłem diody, odczytywałem stany wyjść). Testowałem różne programatory... Skończyły mi się już pomysły.
Działam na WinXP + UserPort. Może muszę zmienić jakieś ustawienia portu LPT w systemie? A może jednak jakoś źle podpinam programatory?
Cały dzień non-stop siedzę nad tym problemem. Jakieś sugestie?
Cóż, jeśli chodzi o AT89S8252 to nie jest wina programatora, ani portu. Po prostu Seria 89 Atmela ma wadę, która sprawia, że bardzo ciężko programować je przez SPI. Też nie mogłem się dłuuugo dobić do niego przez SPI. Wiem, że po ustawieniu RESET w stan wysoki należy odczekać 0,5 s, dopiero potem programować. Co do ATTiny, to mam taki sam problem z ATTiny 2313, tylko, że polega on na tym, że soft, który mam po prostu nie obsługuje tego procka, nie ma go w bibliotekach i programy go nie rozpoznają.
Pozdrawiam