Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Ovo uputstvo pokazuje kako napraviti vlastitu razvojnu ploču za procesore Atmega16 ili Atmega32. Internet je pun domaćih razvojnih ploča, ali mislim da je ostalo prostora za još jednu. Ova ploča je bila jako korisna u mojim projektima, a ja sam je zapravo dizajnirao i napravio tako da posluži jednom od mojih projekata. Što nudi?- ISP-konektor.- Podesivi referentni napon za AREF s trimerom.- 8 LED spojenih PORTA sa uklonjivim kratkospojnicima, tako da možete koristiti LED diode i s drugim priključcima.- Šiljaste šipke za PORTA, PORTB, PORTC i PORTD.- Izmijenjene šipke za LCD zaslon (4 bita)- Konektor za serijski port rs232- Uklonjivi modul rs232- Regulirano 5V Što vam je potrebno? (dijelovi za glavnu ploču)- 1x procesor Atmega16 ili Atmega32- 1x kristal (vaš je izbor koliko će Mhz biti)- 2x 27 pF kondenzatora za kristal- 1x regulator napona 7805- 1x 47uF 16V kondenzator- 3x 100nF kondenzator- 1x DC utičnica 2, 1 mm ili 2, 5 mm (što god želite)- 1x 1K potenciometar- 8x LED (bilo koje boje)- 8x 330 Ohm otpornici- puno šiljatih šipki Dijelovi za rs232 modul- Max232 IC- 4x 0, 1uF kondenzatori - 2x LED (zelena i crvena)- 2x 330 Ohm otpornici- Šiljasta šipka- D9-konektor
Korak 1: Ploče
S obje ploče postoje sklopovi, a pdf-datoteka sadrži datoteke za ispis s ovih ploča. Na ovim slikama možete iscrtati ploče. Zip datoteka sadrži sve datoteke Eagle s ovih ploča. Slobodno ih izmijenite kako želite.
Korak 2: Nagrizanje ili glodanje
Postoje dva načina izrade ovih ploča, jetkanje ili glodanje. Nisam kemičar pa sam upotrijebio posljednju opciju. Svoj sam mlin napravio od ovih izvrsnih instrukcija, pa ako netko ima i nc-mlin i želi ga koristiti za izradu ovih ploča, samo mi javite i poslat ću G-kodove.
Korak 3: Lemljenje
Slika ispod prikazuje naziv komponente i mjesto na kojem bi se trebala nalaziti.
Korak 4: Testiranje
Prije nego što možemo testirati našu razvojnu ploču, trebat će nam kabel za AVR programer. Evo dobrih uputstava o kablu za programiranje. Trebamo samo 6 žica. SCK, MISO, MOSI, RST, uzemljenje i +5V i zato moj konektor ima samo 6 pinova. VAŽNO! SCK, MISO, MOSI i RST signali trebaju otpornike od 390 Ohma koji su obično lemljeni na ploči, ali htio sam uštedjeti malo prostora na ploči i zato su otpornici unutar kabela. Bez ovih otpornika programiranje neće funkcionirati. Također moramo napraviti kabel između rs232 modula i glavne ploče. Na slici je i nekoliko "testnih žica" koje su jako korisne kada ćemo testirati našu ploču.
Korak 5: Programiranje i jednostavan testni program
Zatim ćemo trebati neke "testne" programe za testiranje naše ploče. VAŽNO! Moramo onemogućiti JTAG s PORTC -a, ako to ne učinimo, lcd -modul neće raditi, pa je potrebno. U operativnom sustavu Linux to možemo učiniti pomoću naredbe avrdude: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Ova naredba onemogućuje JTAG i postavlja i koristi unutarnji oscilator od 8 MHz. Naša ploča ima vanjski kristal, ali ljudi koriste kristale različite veličine, pa je ova naredba sigurna za sve. Ako želite koristiti svoj vanjski kristal, ovdje je mjesto za izračun ispravnih osigurača. VAŽNJA! Budite oprezni s programiranjem osigurača. Ako postavite pogrešne vrijednosti osigurača, vaš procesor neće raditi. Postoji način da ga vratite vanjskim impulsom, ali nadajmo se da to ne morate učiniti =) Jednostavan program testiranja: #include (avr/io.h) int main (void) {DDRA = 0xff; // postavlja port kao izlazDDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // onemogućimo sve povlačenjaPORTB = 0x00; PORTC = 0x00; PORTD = 0x00;} Vrijeme je da uključite ploču i pošaljete ovaj mali testni program u procesor s winavr-om ili bilo čime što želite koristiti. Sada možemo to testirati naši portovi ispravno rade. Stavite jedan kraj od žice na jedan od vrhova zaglavlja LED dioda i dotaknite drugim krajem svaki utor, korak po korak. Led bi trebao zasjati svaki put. Ako ne sjaji, onda nešto nije u redu s lemljenjem. Upamtite i test da svaka LED dioda radi.
Korak 6: Testiranje serijskog porta
Ako je sve radilo savršeno, vrijeme je za testiranje našeg rs232 modula. Postoji mali program koji testira da li naši TX i RX rade. Upotreba u Linuxu: Stvorite datoteku pod nazivom Makefile i kopirajte dolje navedeni tekst u datoteci. Kod Makefile pretpostavlja da koristite Atmega16 i da je vaš programski kabel stk200 Zapamtite, postavite ispravna dopuštenja na vaš serijski port/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 bljeskalica: w: test.hex %.obj: %.o $ (CC) $ (CFLAGS) $ <-o $@%.hex: %.obj $ (OBJ2HEX) -R.eeprom -O ihex $ <$@clean: rm -f *.hex *.obj *.oPreuzmite popraćenu datoteku serial.c i stavite u istoj mapi gdje se nalazi i Makefile. Uključite razvojnu ploču i spojite kabel između rs232 modula i glavne ploče. LED diode na modulu bi sada trebale svijetliti. Postavite ispitnu žicu između PA0 pina i neke LED diode. Upotrijebite svoj terminal i idite u mapu u kojoj se nalazi test.c i Makefile. Spojite ISP-programera na ploču. Sada je vrijeme za slanje našeg koda u procesor, a to se događa pomoću naredbe terminala: make Preuzimanje softvera pod nazivom GTKterm (terminal serijskog porta). Fedora: yum install gtktermUbuntu: sudo apt-get install gtkterm Pokrenite GTKterm i formatirajte ga brzinom od 9600Kbs, 8 bitova podataka, 1 stop bit, bez pariteta, overflow none. Ako sve radi, trebalo bi napisati "radi!" na ekranu GTKterm kada pritisnete gumb "z" i kada pritisnete gumb "x", LED dioda na ploči bi se trebala uključiti, a kada pritisnete "c", ona bi se trebala isključiti.
Korak 7: Test LCD modula
Vrijeme je za testiranje našeg LCD-modula. Priložio sam izvrstan softver za upravljanje LCD zaslonom. Kod sam preuzeo sa Scienceprog.com i malo ga izmijenio. Programirajte procesor s ovim kodom i priključite svoj lcd-modul na ploču. Priključci pinova LCD-modula: 1 = VSS (uzemljenje) 2 = VDD (5V) 3 = VO (uzemljenje) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7Moj lcd-modul sadrži 2 konektora (vidi sliku), jer tekst ide gore prema dolje ako modul postavite kako treba. Zrcalio sam i zalijepio novi konektor na drugu stranu. Sada radi u oba smjera.
Korak 8: Neki videozapisi
Akcelerometri za prigušivanje svjetlosti