Nadeszły wakacje
Jak zacząć swoją p rzygodę z mikroprocesorami
- lutownik
- Użytkownik
- Posty: 517
- Rejestracja: 01 paź 2006, 12:37
- Lokalizacja: z planety Zi Emia
- Kontakt:
Jak zacząć swoją p rzygodę z mikroprocesorami
Witam wszystkich forumowiczów.
Nadeszły wakacje
. Czas upragniony dla wielu elektroników w wieku szkolnym. Z nadmiaru wolnego czasu właśnie chciałbym zacząć swoja przygodę z mikroprocesorami. Problem jest taki od czego zacząć. Moglibyście podsunąć co należy kupić na początek aby zacząć swoją przygodę z mikroklockami??? Przyznam się iż złożyłem cały zestaw AVT2500. Sęk w tym że nie wiem czy jest sens to w ogóle zaczynać. Same kości 8051 jakoś ciężko dostać a i ich moce przerobowe nie są zbyt wielkie. myślałem też nad atmegami 8 , ale one same wyszły z produkcji i są ciężko dostępne. Bardzo proszę was o Pomoc.
Nadeszły wakacje
ja zacząłem od książki z kursem Bascoma AVR i AT90S2313 (tego też już nie produkują ale jest ATtiny2313) i muszę przyznać że kurs przynajmniej dla mnie jest bardzo fajny i "łagodny". na pewno wielu powie Ci żebyś od razu wziął się za kurs C i też będzie dobrze. po bascomie mam pewien niedosyt bo to tego nie zrobisz a to tamtego... nie ma jednej odpowiedzi co lepsze. na pewno C ma szersze perspektywy bo uczysz się języka dla praktycznie każdego kontrolera. ale z drugiej strony bascom nie jest zły do "poczucia" o co w tym chodzi. w samym bascomie też można napisać bardzo dobre programy ale ograniczasz się do AVR ew. do 51. generalnie cokolwiek wybierzesz będzie dobrze 
Kłopoty z mikrokontrolerami AVR są, jak się wydaje, przejściowe. Radzę nie rezygnować z układów z rodziny ATmega, bo do nauki programowania mikrokontrolerów są - moim zdaniem, oczywiście - najlepsze. Z naciskiem na programowanie w asemblerze. Natomiast jeśli kolega lutownik zamierza programować w językach wyższego poziomu (świadomości, ma się rozumieć), to wszystko jedno, czy będzie to rodzina AVR, ARM7, czy PIC. Zwracam uwagę, że firma Microchip wznowiła politykę samplową, więc ich układy można mieć dla zastosowań niekomercyjnych za darmo. A do programowania większości z rodziny PIC16 wystarczy prosty jdm.
tu bym polemizował, bo o ile zwykła atmega8 może i wyszła z produkcji, to jeśli dobrze pamiętam zastąpiła ją wersja z literą A, co oznacza że jeden i ten sam procek można zasilać szeroką gamą napięć. bo zdaje się że wcześniej były dwie wersje napięciowe ?lutownik pisze:myślałem też nad atmegami 8 , ale one same wyszły z produkcji i są ciężko dostępne.
-
keruseykaryu
Ciekawe czy byka z AVCC poprawili? Poza tym dziwię się, że ATMEL odświeża tego staruszka. Do niedawna było pisane, że zastępuje ją ATmega88 (ma większe możliwości), a teraz ATmega88 jest "be" i zastępuje go ATmega88A, a równocześnie pojawia się ATmega8A. Brak tu konsekwencji.
- 8051 - AVT2500 i specjalny programator, chyba że włożysz wersję AT89S z ISP. Ceny pewnie znasz.
- AVRtiny - AVT3500 - niestety jest tam sporo niedogoności zatem jeśli chcesz je mieć "z głowy" to lepiej zainteresuj się jego bratem bliźniakiem ZL11AVR. Można też samą pustą płytkę kupić - będzie o wiele taniej, bo nie ukrywajmy tego faktu: KAMAMI to jednak zawyżają ceny. Cena zależna od wersji.
- AVRmega - jakiś zestaw z ATmega16 lub ATmega32, jest sporo alternatyw: zestaw KAMAMI (płytka jak wyżej), zestaw z AND-TECH (ok. 190zł), zestaw z PROPOXu (Cena zależy od zestawu).
- MSP430 - zestaw Launch Pad bez żadnych peryferii, ale za 5 dolarów(!) z wbudowanym programatorem USB, albo MSP-EXP430FG4618/F2013 za około 200zł.
- ST7 - ST7LiteComp dostarczany za darmo z książką kolegi radzia.
I tak można by przejść jeszcze przez rodziny Z8, M8, PIC, PSoC, AVR32, ARM, CortexFPGA. Etc.
Możliwości masz dużo:Z nadmiaru wolnego czasu właśnie chciałbym zacząć swoja przygodę z mikroprocesorami. Problem jest taki od czego zacząć.
- 8051 - AVT2500 i specjalny programator, chyba że włożysz wersję AT89S z ISP. Ceny pewnie znasz.
- AVRtiny - AVT3500 - niestety jest tam sporo niedogoności zatem jeśli chcesz je mieć "z głowy" to lepiej zainteresuj się jego bratem bliźniakiem ZL11AVR. Można też samą pustą płytkę kupić - będzie o wiele taniej, bo nie ukrywajmy tego faktu: KAMAMI to jednak zawyżają ceny. Cena zależna od wersji.
- AVRmega - jakiś zestaw z ATmega16 lub ATmega32, jest sporo alternatyw: zestaw KAMAMI (płytka jak wyżej), zestaw z AND-TECH (ok. 190zł), zestaw z PROPOXu (Cena zależy od zestawu).
- MSP430 - zestaw Launch Pad bez żadnych peryferii, ale za 5 dolarów(!) z wbudowanym programatorem USB, albo MSP-EXP430FG4618/F2013 za około 200zł.
- ST7 - ST7LiteComp dostarczany za darmo z książką kolegi radzia.
I tak można by przejść jeszcze przez rodziny Z8, M8, PIC, PSoC, AVR32, ARM, CortexFPGA. Etc.
No ja się ci wcale nie dziwię, koledzy zarzucili cie tu masą różnych propozycji.
Natomiast musisz sobie odpowiedzieć na kilka pytań.
1. Co na tym chcesz robić i za jaka cenę
To ważne pytanie, i nie chodzi tu bynajmniej o cenę zestawu startowego, bo co z tego że zaczniesz się uczyć ARMów jak są to drogie procesory i wszystkie w SMD, dodatkowo ich mnogość potrafi doprowadzić do zawrotu głowy.
2. Jakie jest wsparcie na forach dla danych proców
To samo co u góry, np. MPSy sa fajne, ale ilu ludzi ich używa w naszym kraju, i aktywnie udziela się na forach internetowych.
3. Czy zamierzasz iść na studia
Jeżeli tak to na pewno otrzesz się o 8051, wiec dobrze by było ją poznać, wbrew opiniom 51 nie jest jeszcze taka stara i można na niej zrobić całkiem wiele. Programowane przez SPI tak jak AVRy to praktycznie 3-4 układy Atmela, ale na tyle ciekawe że nawet warto się nimi zainteresować. 89S2015, 89S4051, 89S52
4. Język programowania ? Trudna sprawa, bo jak nie programowałeś to tak ASM jak i C będą dosyć trudne na początku. BASCOM natomiast to takie trochę wszystko i nic w jednym.
Ja bym ci proponował jednak na początek 8051 albo AVR. To 2 najpopularniejsze u nas rodziny i znajdziesz łatwo wsparcie.
Jest jeszcze PIC i ARMy z pod szyldu PHILIPS (NXP), ale to już raczej mniej, choć co prawda była propozycja kursu programowania PICów w EDW, lecz wybrano analogówkę i mamy serią artów o wzmacniaczach operacyjnych.
Natomiast musisz sobie odpowiedzieć na kilka pytań.
1. Co na tym chcesz robić i za jaka cenę
2. Jakie jest wsparcie na forach dla danych proców
3. Czy zamierzasz iść na studia
4. Język programowania ? Trudna sprawa, bo jak nie programowałeś to tak ASM jak i C będą dosyć trudne na początku. BASCOM natomiast to takie trochę wszystko i nic w jednym.
Ja bym ci proponował jednak na początek 8051 albo AVR. To 2 najpopularniejsze u nas rodziny i znajdziesz łatwo wsparcie.
Jest jeszcze PIC i ARMy z pod szyldu PHILIPS (NXP), ale to już raczej mniej, choć co prawda była propozycja kursu programowania PICów w EDW, lecz wybrano analogówkę i mamy serią artów o wzmacniaczach operacyjnych.
-
keruseykaryu
Wcale nie. Wyolbrzymiasz to znacznie.lutownik pisze:Sam asembler jest najbardziej wszechstronny ale napisanie programy, który zapala i gasi diodę, wymaga dużo wysiłku i jeszcze więcej nauki.
Kod: Zaznacz cały
.include "tn13def.inc"
.cseg
.org 0x00
ldi r16, RAMEND
out SPL, r16
ldi r16, 0x01
out DDRB, r16
out PORTB, r16
main:
in r17, PORTB
eor r17, r16
out PORTB, r17
ldi r24, 0x80
ldi r25, 0xFF
rcall wait
rjmp main
;----------------------
wait:
push r25
wait_1l:
dec r25
brne wait_1l
pop r25
dec r24
brne wait
ret
Z asemblerem jest jednak pewien szczegół: każda rodzina procesorów ma go inny. Dlatego nie warto od niego zaczynać, lecz warto sobie czasem otworzyć kod wynikowy i zobaczyć jak co zostało przetłumaczone.
Mając być uniwersalnym to jest tylko jedna droga, a nazywa się C. Być może zaczniesz od AVRów, ale możesz skończyć na Cortex M3 w strukturach FPGA. I znajomość tylko tego języka pozwoli bez problemów przejść z jednego na drugie. Pamiętaj też, że nie ma BASCOM PIC ani BASCOM ARM.lutownik pisze:Chyba wezmę się za programowanie ATmeg. Ale w jakim języku??
Ale nie będą drogą bez przejazdu.kayron pisze:4. Język programowania ? Trudna sprawa, bo jak nie programowałeś to tak ASM jak i C będą dosyć trudne na początku.
[ Dodano: 2010-07-18, 18:20 ]
Tylko jak tu się udzielać, skoro i tak nikt tematów o nich nie zakłada.kayron pisze:To samo co u góry, np. MPSy sa fajne, ale ilu ludzi ich używa w naszym kraju, i aktywnie udziela się na forach internetowych.
-
keruseykaryu
Prosty i przyjazny. Owszem. Widzisz, znam kogoś, kogo nauczyłem pisać w BASCOM. Teraz jak ma coś napisać to tylko BASCOM i robi to szybko. Ale trafił Mu się projekt, gdzie program trzeba było upchnąć do ATtiny13 i co? Program w BASCOM się nie zmieścił. 106% zajętości procesora. Projekt stop. Pokazałem mu wersję w C gdzie jeszcze 10% pamięci zostało. Niestety strach przed nowym był murem nie do przebicia.Pikczu pisze:Zacznij od bascoma jest prosty i przyjazny.
Swoja drogą w bascomie na tym forum to chyba tylko ja i matrix pisze.
Reszta bascoma się brzydzi.
Niestety na dłuższą metę BASCOM nie jest zbyt przyszłościowy. Po dwóch latach zobaczysz wszystkie ograniczenia. Staniesz w miejscu i nie będziesz mógł z BASCOM zrezygnować, a nowego będziesz się bał. Dokładnie jak wyżej.
Źle to rozumiesz Pikczu i za dużo chyba elektrody czytujesz. Ale popatrzeć trzeba trzeźwo: BASCOM - prosty, łatwy i przyjemny, ale niestety mało przyszłościowy, bo odpowiedników w innych rodzinach procesorów jest jak na lekarstwo. I żmudną naukę trzeba będzie powtarzać.