Obsah:
- Krok 1: Desky plošných spojů
- Krok 2: Leptání nebo frézování
- Krok 3: Pájení
- Krok 4: Testování
- Krok 5: Programování a jednoduchý testovací program
- Krok 6: Testování sériového portu
- Krok 7: Test modulu LCD
- Krok 8: Některá videa
Video: Vývojová deska Atmega16/32 s LCD: 8 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:25
Tento návod ukazuje, jak vytvořit vlastní vývojovou desku pro procesory Atmega16 nebo Atmega32. Internet je plný domácích vývojových desek, ale domnívám se, že zbývá prostor pro další. Tato deska byla na mých projektech velmi užitečná a ve skutečnosti jsem ji navrhl a vyrobil tak, aby sloužila jednomu z mých projektů. Co nabízí?- Konektor ISP.- Nastavitelné referenční napětí pro AREF s trimrem.- 8 LED připojených PORTA s odnímatelnými propojkami, LED diody tedy můžete použít i s jinými porty.- Tyče s hroty pro PORTA, PORTB, PORTC a PORTD.- Upravená lišta pro LCD obrazovku (4 bit)- Konektor sériového portu RS232- Vyjímatelný modul RS232- Regulovaný 5 V Co budete potřebovat? (díly pro základní desku)- 1x procesor Atmega16 nebo Atmega32- 1x krystal (kolik MHz bude na vás)- 2x 27 pF kondenzátory pro krystal- 1x regulátor napětí 7805- 1x 47uF 16V kondenzátor- 3x 100nF kondenzátor- 1x DC-jack 2, 1 mm nebo 2, 5 mm (cokoli chcete použít)- 1 x 1K potenciometr- 8x LED (libovolná barva)- 8x 330 Ohm odpory- spousta hrotů - 2x LED (zelená a červená)- 2x 330 Ohm odpory- Spike bar- D9-konektor
Krok 1: Desky plošných spojů
Z obou desek jsou obvody a soubor pdf obsahuje vytištěné soubory z těchto desek. Z těchto obrázků můžete leptat své desky. Zip soubor obsahuje všechny soubory Eagle z těchto desek. Nebojte se je upravit, jak chcete.
Krok 2: Leptání nebo frézování
Existují dva způsoby, jak tyto desky vyrobit, a to leptáním nebo frézováním. Nejsem chemik, tak jsem využil poslední možnost. Vytvořil jsem svůj mlýn z těchto skvělých instruktabilit, takže pokud někdo má také nc-mill a chce jej použít k výrobě těchto desek, dejte mi vědět a já pošlu G-kódy.
Krok 3: Pájení
Na obrázku níže je uveden název součásti a místo, kde by měla být na palubě.
Krok 4: Testování
Než budeme moci testovat naši vývojovou desku, budeme potřebovat kabel AVR-programátoru. Zde je dobrý návod k programovacímu kabelu. Potřebujeme pouze 6 vodičů. SCK, MISO, MOSI, RST, Ground a +5V, a proto má můj konektor pouze 6 pinů. DŮLEŽITÉ! Signály SCK, MISO, MOSI a RST potřebují odpory 390 Ohm, které jsou obvykle připájeny na desku, ale chtěl jsem ušetřit místo na desce, a proto jsou odpory uvnitř kabelu. Bez těchto rezistorů nebude programování fungovat. Musíme také udělat kabel mezi modulem rs232 a hlavní deskou. Na obrázku je také pár „testovacích vodičů“, které jsou velmi užitečné, když budeme testovat naši desku.
Krok 5: Programování a jednoduchý testovací program
Dále budeme potřebovat nějaké „testovací“programy pro testování naší desky. DŮLEŽITÉ! Musíme zakázat JTAG z PORTC, pokud to neuděláme, lcd modul nebude fungovat, takže je to nutné. V Linuxu to můžeme udělat příkazem avrdude: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Tento příkaz deaktivuje JTAG a nastaví a použije interní oscilátor 8Mhz. Naše deska má externí krystal, ale lidé používají krystaly různé velikosti, takže tento příkaz je bezpečný pro všechny. Pokud chcete použít svůj externí krystal, zde je web pro výpočet správných pojistek. DŮLEŽITÉ! Buďte opatrní při programování pojistek. Pokud nastavíte nesprávné hodnoty pojistek, váš procesor bude nefunkční. Existuje způsob, jak jej obnovit pomocí externího pulsu, ale doufejme, že to nemusíte dělat =) Jednoduchý testovací program: #include (avr/io.h) int main (void) {DDRA = 0xff; // nastavit port jako výstupDDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // deaktivujte všechna vytahování PORTB = 0x00; PORTC = 0x00; PORTD = 0x00;} Je na čase zapnout desku a odeslat tento malý testovací program do procesoru pomocí winavr nebo čehokoli, co chcete použít. Nyní to můžeme otestovat naše porty fungují správně. Umístěte jeden konec od drátu k jednomu z pinových kolíků LED a druhým koncem se dotkněte každého portu krok za krokem. LED by měla svítit pokaždé. Pokud nesvítí, je s pájením něco v nepořádku. Pamatujte také na test, že každá LED funguje.
Krok 6: Testování sériového portu
Pokud vše fungovalo perfektně, je na čase vyzkoušet náš modul rs232. Existuje malý program, který testuje, že naše TX a RX fungují. Použití v Linuxu: Vytvořte soubor s názvem Makefile a zkopírujte text pod soubor. Kód Makefile předpokládá, že používáte Atmega16 a váš programovací kabel je stk200. Pamatujte nastavit správná oprávnění na váš sériový 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 flash: w: test.hex %.obj: %.o $ (CC) $ (CFLAGS) $ <-o $@%.hex: %.obj $ (OBJ2HEX) -R.eeprom -O ihex $ <$@clean: rm -f *.hex *.obj *.o Stáhněte si připojený soubor serial.c a vložte ve stejné složce, kde je Makefile. Zapněte vývojovou desku a vložte kabel mezi modul rs232 a hlavní desku. LED diody na modulu by se nyní měly rozsvítit. Vložte testovací vodič mezi pin PA0 a některý z pinů LED. Použijte svůj terminál a přejděte do složky, kde je test.c a Makefile. Připojte ISP programátor k desce. Nyní je čas odeslat náš kód do procesoru a to se stane příkazem terminálu: proveďte stažení softwaru s názvem GTKterm (Serial Port Terminal). Fedora: yum install gtktermUbuntu: sudo apt-get install gtkterm Spusťte GTKterm a naformátujte jej pomocí rychlosti 9600 kB, 8 datových bitů, 1 stop bit, žádná parita, žádný přetečení. Pokud vše funguje, mělo by napsat „funguje!“na obrazovce GTKterm, když stisknete tlačítko „z“a když stisknete tlačítko „x“, LED na desce by se měla rozsvítit a když stisknete „c“, měla by zhasnout.
Krok 7: Test modulu LCD
Nyní je čas vyzkoušet náš modul LCD. Připojil jsem skvělý software pro ovládání LCD obrazovky. Stáhl jsem kód ze stránky Scienceprog.com a trochu ho upravil. Naprogramujte procesor pomocí tohoto kódu a zapojte modul lcd na desku. Pinové připojení modulu LCD: 1 = VSS (uzemnění) 2 = VDD (5V) 3 = VO (uzemnění) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7 Můj lcd modul obsahuje 2 konektory (viz obrázek), protože text jde nahoru stranou dolů, pokud modul umístíte tak, jak má. Zrcadlil jsem a lepil nový konektor na druhou stranu. Nyní to funguje obousměrně.
Krok 8: Některá videa
Stmívače akcelerometrů
Doporučuje:
Deska MXY - nízkorozpočtová deska robota pro kreslení plotru XY: 8 kroků (s obrázky)
Deska MXY - nízkorozpočtová deska robota pro kreslení plotrů XY: Mým cílem bylo navrhnout desku mXY tak, aby byl nízkorozpočtový kreslící stroj plotru XY. Navrhl jsem tedy desku, která to usnadní těm, kteří chtějí tento projekt udělat. V předchozím projektu při použití 2 ks krokových motorů Nema17 tato deska
Vývojová rada AVR: 3 kroky
Vývojová rada AVR: Internet je plný projektů s Arduinem. Ve všech datech Arduina chvíli chybí informace o mikrokontroléru ATMEGA328. Tento Insctructable chce obnovit začátek vývoje projektů pomocí mikrokontroléru AVR
Vývojová sada Python RF: 5 kroků
Python RF Development Kit: Nejprve bych chtěl trochu představit, jak jsem se dostal k RF věci a proč pracuji na tomto projektu. Jako student informatiky s afinitou k hardwaru jsem začal navštěvovat některé kurzy, které vypořádat se s bezdrátovými signály a
Pan E.Z. Vývojová deska tuby: 4 kroky (s obrázky)
Pan E.Z. Rada pro vývoj trubek: Cíl/účel: pan E.Z. Tube je levná zvuková platforma bez elektronky: žádný napájecí transformátor, žádný výstupní transformátor (y). Trubkový zesilovač bude mít obvykle několik těžkých, drahých transformátorů: výstupní transformátory, které chrání řeč
UDuino: Velmi levná vývojová deska kompatibilní s Arduino: 7 kroků (s obrázky)
UDuino: Velmi levná vývojová deska kompatibilní s Arduino: Desky Arduino jsou skvělé pro prototypování. Jsou však poměrně drahé, pokud máte více souběžných projektů nebo potřebujete spoustu řídicích desek pro větší projekt. Existuje několik skvělých, levnějších alternativ (Boarduino, Freeduino), ale