Spisu treści:
- Krok 1: Płytki drukowane
- Krok 2: Trawienie lub frezowanie
- Krok 3: Lutowanie
- Krok 4: Testowanie
- Krok 5: Programowanie i prosty program testowy
- Krok 6: Testowanie portu szeregowego
- Krok 7: Test modułu LCD
- Krok 8: Niektóre filmy
Wideo: Płytka rozwojowa Atmega16/32 z wyświetlaczem LCD: 8 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:34
Ta instrukcja pokazuje, jak zrobić własną płytkę rozwojową dla procesorów Atmega16 lub Atmega32. Internet jest pełen płyt rozwojowych domowej roboty, ale myślę, że zostało jeszcze miejsce na kolejną. Ta płytka była bardzo przydatna w moich projektach i właściwie zaprojektowałem i wykonałem ją do jednego z moich projektów. Co oferuje? - złącze ISP. - Regulowane napięcie odniesienia dla AREF z trymerem. - 8 diod połączonych PORTA z wyjmowanymi zworkami, dzięki czemu można używać diod LED również z innymi portami.- Kolczatki dla PORTA, PORTB, PORTC i PORTD.- Zmodyfikowana szpilka do ekranu LCD (4 bity)- Złącze portu szeregowego rs232- Wyjmowany moduł rs232- Regulowany 5VCzego będziesz potrzebować? (części do płyty głównej)- 1x procesor Atmega16 lub Atmega32- 1x kryształ (Twój wybór ile to będzie)- 2x kondensatory 27 pF na kryształ- 1x regulator napięcia 7805- 1x kondensator 47uF 16V- 3x kondensator 100nF- 1x DC-jack 2, 1mm lub 2,5mm (jakiekolwiek chcesz użyć)- 1x potencjometr 1K - 8x led (dowolny kolor)- 8x rezystory 330 Ohm- dużo kolców Części do modułu rs232- Max232 IC- 4x 0,1uF kondensatory - 2x led (zielony i czerwony) - 2x rezystory 330 Ohm - Spike bar - Złącze D9
Krok 1: Płytki drukowane
Istnieją obwody z obu płyt, a plik pdf zawiera pliki wydruku z tych płyt. Możesz wytrawić swoje deski z tych zdjęć. Plik zip zawiera wszystkie pliki Eagle z tych tablic. Możesz je dowolnie modyfikować.
Krok 2: Trawienie lub frezowanie
Istnieją dwa sposoby wykonania tych desek, trawienie lub frezowanie. Nie jestem chemikiem, więc skorzystałem z ostatniej opcji. Zrobiłem mój młynek z tych wspaniałych instrukcji, więc jeśli ktoś ma też nc-młynek i chce go użyć do zrobienia tych płyt, daj mi znać, a wyślę kody G.
Krok 3: Lutowanie
Zdjęcie poniżej pokaże nazwę komponentu i miejsce, w którym powinien się znajdować.
Krok 4: Testowanie
Zanim będziemy mogli przetestować naszą płytkę rozwojową, będziemy potrzebować kabla programatora AVR. Oto dobra instrukcja na temat kabla do programowania. Potrzebujemy tylko 6 przewodów. SCK, MISO, MOSI, RST, Ground i +5V i dlatego moje złącze ma tylko 6 pinów. WAŻNE! Sygnały SCK, MISO, MOSI i RST wymagają rezystorów 390 Ohm, które zwykle są wlutowane na płytce, ale chciałem zaoszczędzić trochę miejsca na płytce i dlatego rezystory są wewnątrz kabla. Bez tych rezystorów programowanie nie będzie działać. Musimy też wykonać kabel pomiędzy modułem rs232 a płytą główną. Na zdjęciu jest też kilka "przewodów testowych", które są naprawdę przydatne, gdy zamierzamy przetestować naszą płytkę.
Krok 5: Programowanie i prosty program testowy
Następnie będziemy potrzebować programów "testowych" do testowania naszej płyty. WAŻNY! Musimy wyłączyć JTAG z PORTC, jeśli tego nie zrobimy, moduł lcd nie będzie działał, więc jest to konieczne. W systemie Linux możemy to zrobić poleceniem avrdude:avrdude -p m16 -c stk200 -U lfuse:w:0xe4:m -U hfuse:w:0xd9:m To polecenie wyłącza JTAG i ustawia wewnętrzny oscylator 8Mhz i używa go. Nasza tablica ma zewnętrzny kryształ, ale ludzie używają różnych rozmiarów kryształów, więc ta komenda jest bezpieczna dla wszystkich. Jeśli chcesz użyć zewnętrznego kryształu, tutaj jest strona do obliczania prawidłowych bezpieczników. WAŻNE! Zachowaj ostrożność przy programowaniu bezpieczników. Jeśli ustawisz nieprawidłowe wartości bezpieczników, twój procesor nie będzie działał. Jest sposób na odzyskanie go za pomocą zewnętrznego impulsu, ale miejmy nadzieję, że nie musisz tego robić =)Prosty program testujący:#include (avr/io.h)int main(void){DDRA = 0xff; // ustaw port jako outputDDRB = 0xff;DDRC = 0xff;DDRD = 0xff;PORTA = 0x00; // wyłącz wszystkie pull-upsPORTB = 0x00;PORTC = 0x00;PORTD = 0x00;}Nadszedł czas, aby włączyć płytę i wysłać ten mały program testowy do procesora z winavr lub innym, którego chcesz użyć. Teraz możemy to przetestować nasze porty działają poprawnie. Umieść jeden koniec przewodu na jednym z główek szpilek ledowych i dotykaj drugim końcem każdego skoku portu krok po kroku. Dioda powinna świecić za każdym razem. Jeśli nie świeci, to coś jest nie tak z lutowaniem. Pamiętaj też o teście, że każdy led działa.
Krok 6: Testowanie portu szeregowego
Jeśli wszystko działało idealnie, czas przetestować nasz moduł rs232. Istnieje mały program, który sprawdza, czy nasze TX i RX działają. Użycie w Linuksie:Utwórz plik o nazwie Makefile i skopiuj poniższy tekst w pliku. Kod Makefile zakłada, że używasz Atmega16, a twój kabel do programowania to stk200. twój port szeregowy /dev/ttyS0CC=/usr/bin/avr-gccCFLAGS=-g -Os -Wall -mcall-prologues -mmcu=atmega16 -std=gnu99OBJ2HEX=/usr/bin/avr-objcopy AVRDUDE=/usr/bin /avrdude: $(TARGET).hex $(AVRDUDE) -p m16 -P /dev/parport0 -c stk200 -u -U flash:w:test.hex%.obj: %.o $(CC) $(CFLAGS) $< -o $@%.hex: %.obj $(OBJ2HEX) -R.eeprom -O ihex $< $@clean: rm -f *.hex *.obj *.oPobierz załączony plik serial.c i wstaw w tym samym folderze, w którym znajduje się Makefile. Włącz płytkę rozwojową i umieść kabel między modułem rs232 a płytą główną. Diody na module powinny się teraz zaświecić. Umieść przewód testowy między pinem PA0 a pinem niektórych diod led. Użyj terminala i przejdź do folderu, w którym znajduje się test.c i Makefile. Podłącz programator ISP do płyty. Teraz nadszedł czas, aby wysłać nasz kod do procesora i dzieje się to za pomocą polecenia terminala: make Pobierz oprogramowanie o nazwie GTKterm(Serial Port Terminal). Fedora: yum install gtktermUbuntu: sudo apt-get install gtkterm Uruchom GTKterm i sformatuj go z prędkością 9600Kbs, 8 bitów danych, 1 bit stopu, brak parzystości, brak przepełnienia. Jeśli wszystko działa, powinno napisać "działa!" na ekranie GTKterm po naciśnięciu przycisku „z” i przycisku „x” dioda na płycie powinna się włączyć, a po naciśnięciu „c” powinna zgasnąć.
Krok 7: Test modułu LCD
Teraz nadszedł czas na przetestowanie naszego modułu LCD. Dołączyłem świetne oprogramowanie do sterowania ekranem LCD. Pobrałem kod ze strony Scienceprog.com i trochę go zmodyfikowałem. Zaprogramuj procesor za pomocą tego kodu i podłącz moduł LCD do płyty. Połączenia pinów modułu LCD:1 = VSS(Uziemienie)2 = VDD(5V)3 = VO(Uziemienie)4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7Mój moduł lcd zawiera 2 złącza (patrz rysunek), ponieważ tekst idzie do góry nogami, jeśli umieścisz moduł tak, jak powinien. Odbiłem i przykleiłem nowe złącze na drugą stronę. Teraz działa w obie strony.
Krok 8: Niektóre filmy
Akcelerometry ściemniające
Zalecana:
Płytka rozwojowa DIY ESP32 - ESPer: 5 kroków (ze zdjęciami)
Płytka rozwojowa DIY ESP32 - ESPer: Ostatnio czytałem o wielu IoT (Internet of Things) i zaufaj mi, po prostu nie mogłem się doczekać, aby przetestować jedno z tych wspaniałych urządzeń, z możliwością połączenia z Internetem, siebie i dostać się do pracy. Na szczęście okazja do
Granie w grę Flappy Bird z płytką rozwojową M5stick C opartą na M5stack Esp32: 5 kroków
Granie w grę Flappy Bird z płytką rozwojową M5stick C opartą na M5stack Esp32: Cześć, dzisiaj nauczymy się, jak przesłać kod gry w ptaki Flappy do płytki rozwojowej m5stick c dostarczonej przez m5stack. Do tego małego projektu potrzebne będą dwie rzeczy: m5stick-c tablica rozwojowa: https://www.utsource.net/itm/p/8663561.h
Płytka rozwojowa AVR: 3 kroki
AVR Development Board: Internet jest pełen projektów z Arduino. Przez chwilę we wszystkich danych Arduino brakuje informacji o mikrokontrolerze ATMEGA328. Ten Instruktor chce odzyskać początek tworzenia projektów z wykorzystaniem mikrokont AVR
Płytka programująca i rozwojowa ESP-12E i ESP-12F: 3 kroki (ze zdjęciami)
Płytka programująca i rozwojowa ESP-12E i ESP-12F: Zadanie tej płyty było proste: być w stanie zaprogramować moduły ESP-12E i ESP-12F tak łatwo, jak płyty NodeMCU (tzn. nie trzeba naciskać przycisków). Posiadaj piny przyjazne dla płytki stykowej z dostępem do użytecznego IO. Użyj oddzielnego portu USB do połączenia szeregowego
UDuino: bardzo tania płytka rozwojowa zgodna z Arduino: 7 kroków (ze zdjęciami)
UDuino: bardzo tania płytka rozwojowa kompatybilna z Arduino: Płyty Arduino świetnie nadają się do prototypowania. Jednak stają się one dość drogie, gdy masz wiele współbieżnych projektów lub potrzebujesz wielu kart kontrolerów do większego projektu. Istnieje kilka świetnych, tańszych alternatyw (Boarduino, Freeduino), ale