Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

Jaki popularny mikrokontroler polecacie na warsztat???

tomek_j
-
-
Posty:264
Rejestracja:14 sty 2004, o 09:06

Postautor: tomek_j » 17 paź 2005, o 09:11

Ja tam krzyżakowy, to w końcu Philips, co by nie było... ;)
Philips nie Philips ale z Malborkiem sie kojarzy, a takie skojarzenia sa ostanio niezbyt...... :no:

Awatar użytkownika
tasza
-
-
Posty:456
Rejestracja:17 sty 2005, o 10:52

Postautor: tasza » 17 paź 2005, o 09:37

to może zamiast tych AVR coś z rodziny kontrolerów Zilog-a...
one (a przynajmniej Z80) mają taką instrukcję...kod maszynowy 76h...btw Malborka...
Ostatnio zmieniony 17 paź 2005, o 09:38 przez tasza, łącznie zmieniany 1 raz.

czarutek

Postautor: czarutek » 17 paź 2005, o 09:38

A bo to nawymyślali jakiś 'krzyżakowy', zamiast np. 'krzyżykowy'... ;)
P.S. Pod Grunwaldem się na szczęście wyjaśniło.

Awatar użytkownika
tasza
-
-
Posty:456
Rejestracja:17 sty 2005, o 10:52

Postautor: tasza » 17 paź 2005, o 10:12

P.S. Pod Grunwaldem się na szczęście wyjaśniło.
no w sumie racja... choć jest wiele wersji pewnych wydarzeń...

zaraz nas Endzik pogoni, coć tak czuję...

a_antoniak
-
-
Posty:651
Rejestracja:13 sty 2005, o 18:38
Lokalizacja:Krasnystaw
Kontaktowanie:

Postautor: a_antoniak » 17 paź 2005, o 12:00

P.S. Pod Grunwaldem się na szczęście wyjaśniło.
W zasadzie to wyjaśniło się że straszne z nas pierdoły :(

tomek_j
-
-
Posty:264
Rejestracja:14 sty 2004, o 09:06

Postautor: tomek_j » 17 paź 2005, o 12:18

W zasadzie to wyjaśniło się że straszne z nas pierdoły :(
pierdoły w kwestii mikrokontrolera na warsztat, czy śrubokręta :| - to dla mnie ważne

Awatar użytkownika
BartP
-
-
Posty:28
Rejestracja:29 sie 2004, o 21:47
Lokalizacja:Tychy
Kontaktowanie:

Postautor: BartP » 17 paź 2005, o 13:30

No tak... Łatwo Wam mówić, bo już pierwsze kroki macie za sobą, po za tym siedzicie w temacie non stop, a ja miałem poważną przerwę kilkuletnią...
Tasza się dziwi, czemu jeszcze nic sobie nie skleciłem :-) Hehe, no fakt, może i mogłem, ale widać mam troszkę inny styl działania, w dodatku nikt mnie nie goni i mam czas, więc zanim coś zacznę robić chcę wiedzieć to i owo, aby niepotrzebnie nie błądzić.
Już wiem, że na pewno kupuję tą wspomnianą książkę, bo słyszałem o niej dobre opinie i to chyba na razie najlepsza droga do poznania tematu.
Decyduję się na ten AT90S2131, mega zostawię sobie na potem.
Spotkałem się nie raz już z takim czymś o nazwie JTAG. Co to jest za pieroństwo???

Bardzo Was proszę jeszcze o radę, jaki i gdzie mogę kupić jakiś moduł prototypowy z owym AT90S2131?? Czy mam się ładować np. w to: http://www.adatronik.com.pl/PRO_2313_oferta.html ?? Kosztuje to 110zł.
I drugie pytanie, czy dobrze zrobię jeśli kupię ten programator: http://www.allegro.pl/show_item.php?item=66968639 ??
Jest taniusi, w porównaniu do tego ISPcable II, a chyba możliwości te same...

Awatar użytkownika
tasza
-
-
Posty:456
Rejestracja:17 sty 2005, o 10:52

Postautor: tasza » 17 paź 2005, o 13:57

czy się dziwię...
w sumie tak, ale masz rację - to różnica w podejściu do całej sprawy...
jakoś tak mi wyszło z tego, że nie byłeś pewien w jaką kostkę zainwestować (nie tylko pieniądze, ale i czas)...
więc w/g mnie najlepszą metodą byłoby 'rozpoznanie przez walkę', sklecić jakiś
prosty układ, namiastkę programatora, zainstalować soft i spróbować coś porobić...
i jeżeli się okaże, że to pomyłka, że nie tego oczekiwałeś - wielkich strat nie ma...
zakładając eksperymenty na np. solderless breadboard - byłbyś 'do tyłu' tylko o koszt
procesora, reszta (max232, kwarc i inna drobnica) zostaja do reużycia...ale jak chcesz
ta programałka co wskazałeś na Allegro, no cóż - niech będzie że OK, zwykły ISP pod port równoległy...
masa softu potrafi to obsłużyć...
co do płytki prototypowej - 110 zł za gotowca...zestaw fajny...
próbuję teraz policzyć ile by to wyszło zrobione na 'uniwersalce'...coś podobnego...
tyle że już pewne rzeczy masz narzucone, chociażby które piny obsługują I2C...
ale co tam, scieżki zawsze można przeciąć i pokrosować inaczej...
ile razem (+ wysyłka circa about) ?
~150 PLN...
no to kup to i coś zmajstruj...zobaczymy jak to pójdzie

michalxb
-
-
Posty:167
Rejestracja:11 gru 2004, o 16:03
Lokalizacja:Łódź
Kontaktowanie:

Postautor: michalxb » 17 paź 2005, o 16:17

Tak sobie czytam i czytam i dochodze do wniosku ze mikrokontrolery to nie taki diabeł straszny jakim go malują.
Z tą tylko różnicą że ten namalowany diabeł powstał u mnie w głowie :-) ze tak powiem.
Jakiś zcas temu chciałem zaczaqc zabawę w mikrokontrolery, ale pomysł umarł śmiercią naturalną.
Może by poszło gdyby nie te uderzające ceny mikrokontrolerów.
Ale przy okazji tego tematu okazało się że mozna zmajstrowac sobie prosty programtor na poczatek i zaczynać.

No więc postanowiłem, zaczynam po raz drugi.

Mam jak narazioe jedno pytanie, bo nei wiem czy proces programowania i uruchamiania procka rozumiem dobrze
wiec w ja to rozumiem tak:

1.Budujemy płytke na któej docelowo bedzie ów mikrokntroler ///I teraz pytanie co tutaj powinno być?? obwód resetu złacze do programtora, coś jeszcze??

2.Podłączamy programtor do pc za pomocą LPT

3.Uruchamiamy jakiś kompilator powiecmy bascom

4.Potem wczyujemy program do pamieci w mikrokontrolerze

5.Uruchamiamy mikrokontroler na płytce z tymi resetami itp. i cos sie tam dzieje, według programu.


Dobrze???? :-)

Pozdrawiam.
Michał M.

czarutek

Postautor: czarutek » 17 paź 2005, o 16:28

Ad.1) Przydałyby się jeszcze goldpiny do wszystkich portów. Obwód resetu z przyciskiem konieczny chyba nie jest.
Ad.2) Niekoniecznie LPT, może być np. RS232 - zależy od programatora.

Dobrze :)

Awatar użytkownika
tasza
-
-
Posty:456
Rejestracja:17 sty 2005, o 10:52

Postautor: tasza » 17 paź 2005, o 16:30

ad.1
jeżeli chcesz zobaczyć że 'to żyje' to może jeszcze jakiś led?
jak Twój program nim zamiga - to żyje znaczy się....

ad3.
a) piszemy wersję źródłową programu....
b) kompilujemy ją komplikatorem do postaci wykonywalnej (bin/hex)

i dopiero pkt. 4

jeżeli płytka ma śrubki pod śrubokręt krzyżakowy - sukces gwarantowany....

czarutek

Postautor: czarutek » 17 paź 2005, o 16:45

Pkt 4 bym nieco uściślił, mianowicie - program nie 'wczyujemy', tylko raczej wpisujemy... ;)
...do pamięci programu w mikrokontrolerze.

Jurek Szczesiul
-
-
Posty:175
Rejestracja:10 paź 2003, o 20:44
Lokalizacja:Białystok
Kontaktowanie:

Postautor: Jurek Szczesiul » 18 paź 2005, o 17:40

To ja znów będę szkodnikiem :-)
Ten modułek składa się głównie z układów i2c. A jest oparty na
mikrokontrolerze bez sprzętowego wsparcia tego interfejsu ( tzn.
podany w specyfikacji nowszy attiny2313 ma USI, ale schemat
pokazuje wykorzystanie innych pinów - to chyba spadek po starszym
90s2313 - poza tym USI dla i2c jest mało wdzięczne ). Nie byłoby w tym
nic złego gdyby nie fakt, że zaraz od atmegi8 wszystkie kostki mają
pełny, bardzo efektywny, oparty na przerwaniach sprzętowy interfejs
i2c - rezygnacja z takiego wsparcia jest IMHO cokolwiek bez sensu.
Trochę podobnie jest z pcf8591 - 4 8-bitowe kanały A/C podczas kiedy
pierwszy lepszy atmega8 czy at8535 ma wbudowane 8 kanałów 10-bit.

Logika konstrukcji tego modułku pochodzi zdaje się z czasu gdy oferta
ograniczała się do 90s2313 i 89c2051. Teraz tanich uK o bogatym
wyposażeniu jest mnóstwo - czemu z nich nie korzystać ?

Więc jeśli decydujesz się na oszczędny programator to IMHO nie
pakuj kasy w drogi gotowy moduł o problematycznej przydatności tylko
kupuj dipową atmegę i pchaj na kawałek uniwersalnej płytki. Sama
atmega może chodzić na wewnętrznym oscylatorze praktycznie bez
niczego - dolutowujesz sobie tylko peryferia według fantazji.
Na moduły przychodzi czas przy bardziej złożonych układach
( np. połączenie z ethernetem itp. ) wymagających pcb trudnego
lub wręcz niemożliwego do zrobienia w domu.

( BTW - kiedyś też przez to przechodziłem - teraz "uniwersalne
moduły" z 80c552 535 itd. kurzą się gdzieś po półkach :-) , aż żal )

Pozdrowienia Jurek S. PDWC

Awatar użytkownika
BartP
-
-
Posty:28
Rejestracja:29 sie 2004, o 21:47
Lokalizacja:Tychy
Kontaktowanie:

Postautor: BartP » 18 paź 2005, o 18:00

To zdecydowałem się jednak na takie coś i chyba dobrze zrobiłem, no nie?
http://www.allegro.pl/show_item.php?item=67676036

Czy ktoś podzielił by się ze mną jakimiś prostymi programikami w C do ATMega16 ???
Chodzi mi o takie proste sprawy do nauki, jak miganie LED, w pętli i po naciśnięciu switcha, odliczanie na wyśw. LED od 0 do 9 itp...

Czyli de facto do pisania programu w C muszę użyć WINAVR, czy tak?
A czy ładowanie programu do samego kontrolera odbywa się też za pomocą WINAVR, czy trzeba użyć co innego??

radzio
Moderator
Moderator
Posty:967
Rejestracja:13 maja 2003, o 10:33
Lokalizacja:Sosnowiec
Kontaktowanie:

Postautor: radzio » 18 paź 2005, o 20:38

Zobacz na mojej stronie : http://mikrokontrolery.net/avr_kursy.htm co prawda te programy pisane są pod płytkę AVT-3500 z 90S2313 ale bez większych problemów powinny zadziałać na ATMedze.

Co do programowania to WinAVR (a raczej wchodzący w jego skład avrdude)obsługuje kilka popularnych programatorów chociaż ja korzystam z zewnętrznego programu do wgrywaniu kodu do procka.

Jurek Szczesiul
-
-
Posty:175
Rejestracja:10 paź 2003, o 20:44
Lokalizacja:Białystok
Kontaktowanie:

Postautor: Jurek Szczesiul » 18 paź 2005, o 20:39

To zdecydowałem się jednak na takie coś i chyba dobrze zrobiłem, no nie?
http://www.allegro.pl/show_item.php?item=67676036
Wygląda za tę cenę całkiem nieźle, nic nie pisze tylko co siedzi w programatorku
( bufor czy same oporniki ). Proponuję wstępnie o to wypytać.

Pozdrowienia Jurek S.

[ Dodano: 18-10-2005, 23:26 ]
A czy ładowanie programu do samego kontrolera odbywa się też za pomocą WINAVR, czy trzeba użyć co innego??
Na początek jak już wszystko podłączysz zobacz czy układ żyje, tzn. czy
uK jest rozpoznawany i dają się ustawiać fuse bity. Do tego proponuję
- niezależnie co jest na CD - ISP programmer ze strony
http://www.amwaw.edu.pl/~adybkows/elka/ispprog.html
BTW zapoznanie się z fuse'ami i tak jest konieczne zanim w ogóle
cokolwiek zaprogramujesz ( w at16 zwróć uwagę zwłaszcza na ustawienia
oscylatora i wyłączenie domyślnie włączonego interfejsu JTAG, który
zajmuje część portu C ).
Tak ogólnie - z fuse'ami trzeba dość mocno uważać, żeby czegoś pochopnie
nie poprzełączać bo potem mogą być kłopoty z ponownym uruchomieniem.
Jak nie będziesz czegoś pewny to od razu tu pytaj

Pozdrowienia Jurek S.

Awatar użytkownika
BartP
-
-
Posty:28
Rejestracja:29 sie 2004, o 21:47
Lokalizacja:Tychy
Kontaktowanie:

Postautor: BartP » 19 paź 2005, o 00:15

Radzio!! SUPER świetna strona !!! Dzięki Ci wielkie za jej podanie! Będę miał się z czym zapoznać i do kogo walić jak nic nie sqmam ;)
Jurek! Tak, programator zawiera bufory, na szczęście.
Tobie też wielkie dzięki za ten text! Trochę mnie wystraszyłeś tymi "fuse bitami" :/
Czy możesz mi tak po krótce, jak laikowi wyjaśnić co to jest i w jakim celu się je ustawia??
Czy można jakoś procesor trwale uszkodzić poprzez jakieś kombinacje z tymi bitami?? Bo napisałeś, że uPC może się potem nie uruchomić...
Skoro już zadałem laickie pytanie, to jeszcze jedno na koniec :)
Otóż w tamtej przygodzie z ST62xx spotkałem się z czymś takim jak "watchdog", ale nie dotarłem do miejsca, w którym było by napisane o nim kilka słów. Przenieśli mnie niestety na inne zadanie... Bardzo proszę, objaśnijcie mi także w kilku słowach, co to jest i do czego służy?? Wiem, że jest to coś pożytecznego i podnoszącego wartość procka, bo jest to zawsze wymieniane w opisie danego procesora. I dziś to już chyba każdy procek to w sobie ma. Ale co, po co...? Jestem zielony :/
Cieszę się, że są tu takie fachury, które nie zostawią bidoka (jak ja) w potrzebie :)

a_antoniak
-
-
Posty:651
Rejestracja:13 sty 2005, o 18:38
Lokalizacja:Krasnystaw
Kontaktowanie:

Postautor: a_antoniak » 19 paź 2005, o 00:22

Watchdog to jest taki pies, i on pilnuje systemu, i trzeba drania głaskać ciągle - taki pieszczoch. A jak się nie głaska to on sie denerwuje bardzo, tak bardzo, że wszystko resetuje.... niedobry ogólnie zwierz z niego.

Awatar użytkownika
BartP
-
-
Posty:28
Rejestracja:29 sie 2004, o 21:47
Lokalizacja:Tychy
Kontaktowanie:

Postautor: BartP » 19 paź 2005, o 00:49

:546:
Ale mi wyjaśniłeś....

Złapałem jeszcze taki soft pt. CodeVisionAVR 1.24.7b. Do pisania w C.
Czy polecacie, czy odradzacie mi wgłębienie się w niego?? Nie wiem jak on się ma do WinAVR i tego AVR-GCC...?

Jurek Szczesiul
-
-
Posty:175
Rejestracja:10 paź 2003, o 20:44
Lokalizacja:Białystok
Kontaktowanie:

Postautor: Jurek Szczesiul » 19 paź 2005, o 07:50

Tobie też wielkie dzięki za ten text! Trochę mnie wystraszyłeś tymi "fuse bitami" :/
Czy możesz mi tak po krótce, jak laikowi wyjaśnić co to jest i w jakim celu się je ustawia??
Czy można jakoś procesor trwale uszkodzić poprzez jakieś kombinacje z tymi bitami?? Bo napisałeś, że uPC może się potem nie uruchomić...
[..]
Bardzo proszę, objaśnijcie mi także w kilku słowach, co to jest i do czego służy?? Wiem, że jest to coś pożytecznego i podnoszącego wartość procka, bo jest to zawsze wymieniane w opisie danego procesora. I dziś to już chyba każdy procek to w sobie ma. Ale co, po co...?
Tzw. fuse bity ( chyba ładnego tłumaczenia nie ma ) to coś w rodzaju biosu
mikrokontrolera. To jest kilka bajtów z szeregiem bitów ( flag ) określających
niektóre ustawienia sprzętowe kostki. Część z nich działa "na stałe" ( jak np.
wybór typu oscylatora ), część decyduje tylko o warunkach startu po resecie
( np. czy jest od razu włączany watchdog, czy jest aktywny interfejs JTAG ).
Dodatkowo uK ma lock bity ( zabezpieczające przed nieuprawnionym odczytem
programu ) - do nauki ( i open source'u ) możesz ich w ogóle nie używać.
Fuse i lock bity nie mogą być przestawiane ( podobnie jak bios w PC ) z poziomu
Twojego programu - musisz je poustawiać przy pomocy programatora przed
wgraniem i uruchomieniem kodu ) np. fabrycznie nowa at16 pracuje z wewnętrznym
oscylatorem 1 MHz - żeby przełączyć na zewnętrzny kwarc ustawiasz odpowiednią
sekwencję bitów CKSEL ( clock select ) itd.
Stąd też zagrożenie unieruchomienia kostki - jeśli np. przez nieuwagę ustawisz np.
taktowanie oddzielnym generatorem to po resecie uK będzie czekać na zewnętrzny
przebieg zegarowy na XTAL1 i ne ruszy dopóki go tam nie podasz ( niestety bez
zegara interfejs ISP też nie działa i już ponownie nic w fuse'ach programatorem
szeregowym nie przestawisz ). W mniejszych kostkach jest też groźba zablokowania
ISP przez zablokowanie zewnętrznego resetu ( pin jest wykorzystany jako zwykła
linia I/O ) ale at16 tego nie ma.
Dla pamięci : fuse bit zaprogramowany oznacza stan 0, stan 1 to flaga
wyłączona - czyli obowiązuje logika odwrócona - na to trzeba zwrócić uwagę
w programie obsługującym programator bo różni autorzy różnie to sobie
oznaczają.

Watchdog to dodatkowy układ licznikowy ( wbudowany albo zupełnie niezależny ),
który generuje po określonym czasie sygnał resetujący mikrokontroler. Twój
program cyklicznie zeruje ten licznik, żeby do tego resetu nie dopuścić. Jeśli
przestanie to robić - wskutek błedu, zawieszenia się itp. - jest szansa, że
wywołany tym reset przywróci poprawną pracę układu.
At16 ma watchdoga wbudowanego.

Jeśli chodzi o CodeVision - użytkownicy go sobie chwalą ( ale na ogół
każdy zachwala swoje wybrane środowisko ). Nic nie stoi na przeszkodzie,
żeby wypróbować. Jednak w naszym amatorskim światku przeważnie
zachęcamy do bezpłatnego avr-gcc ( chociaż ma on swoje niedoróbki ).
Zresztą sam Atmel uznał ten kompilator za wart uwagi integrując go
w końcu ze swoim AvrStudio4.

Pozdrowienia Jurek S.

Wróć do „Elektronika - tematy dowolne”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 4 gości