Turinys:

„Atmega16/32“kūrimo lenta su LCD: 8 žingsniai
„Atmega16/32“kūrimo lenta su LCD: 8 žingsniai

Video: „Atmega16/32“kūrimo lenta su LCD: 8 žingsniai

Video: „Atmega16/32“kūrimo lenta su LCD: 8 žingsniai
Video: M#2: Назначение контактов макетной платы Atmega128 | Outseal Dev. ПЛК Мега 2024, Lapkritis
Anonim
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu
„Atmega16/32“vystymo lenta su skystųjų kristalų ekranu

Ši pamokoma paroda parodo, kaip sukurti savo „Atmega16“ar „Atmega32“procesorių kūrimo lentą. Internete pilna naminių kūrimo plokščių, bet manau, kad dar yra vietos kitai. Ši plokštė buvo labai naudinga mano projektams, ir aš iš tikrųjų suprojektavau ir padariau, kad ji tarnautų vienam iš mano projekto. Ką ji siūlo?- ISP jungtis.- Reguliuojama atskaitos įtampa AREF su žoliapjovė.- 8 šviesos diodai prijungti prie PORTA su nuimamais trumpikliais, todėl galite naudoti šviesos diodus ir su kitais prievadais.- Spyglių juostos, skirtos PORTA, PORTB, PORTC ir PORTD.- Modifikuota smaigalio juosta LCD ekranui (4 bitai)- RS232 nuoseklaus prievado jungtis- Nuimamas RS232 modulis- Reguliuojamas 5V Ko jums reikės? (pagrindinės plokštės dalys)- 1x „Atmega16“arba „Atmega32“procesorius- 1x kristalas (kiek jūsų Mhz bus jūsų pasirinkimas)- 2x 27 pF kondensatoriai kristalams- 1x 7805 įtampos reguliatorius- 1x 47uF 16V kondensatorius- 3x 100nF kondensatorius- 1x DC lizdas 2, 1 mm arba 2, 5 mm (ką tik norite naudoti)- 1x 1K potenciometras- 8x LED (bet kokia spalva)- 8x 330 omų rezistoriai- daug smaigalių Strypų dalys RS232 moduliui- Max232 IC- 4x 0, 1uF kondensatoriai - 2x LED (žalia ir raudona)- 2x 330 omų rezistoriai- Spike bar- D9 jungtis

1 žingsnis: grandinės plokštės

Grandinių plokštės
Grandinių plokštės
Grandinių plokštės
Grandinių plokštės

Yra grandinės iš abiejų plokščių, o pdf faile yra šių plokščių atspausdinti failai. Lentas galite išgraviruoti iš šių paveikslėlių. ZIP faile yra visi Eagle failai iš šių lentų. Nedvejodami pakeiskite juos taip, kaip norite.

2 žingsnis: ėsdinimas arba frezavimas

Ėsdinimas arba frezavimas
Ėsdinimas arba frezavimas
Ėsdinimas arba frezavimas
Ėsdinimas arba frezavimas

Yra du būdai, kaip pagaminti šias lentas: ėsdinimas arba frezavimas. Nesu chemikas, todėl pasinaudojau paskutine galimybe. Aš sukūriau savo malūną iš šių puikių instrukcijų, todėl jei kas nors taip pat turi „nc-mill“ir norite jį naudoti šioms lentoms gaminti, praneškite man ir aš atsiųsiu G kodus.

3 žingsnis: litavimas

Litavimas
Litavimas
Litavimas
Litavimas

Žemiau esančiame paveikslėlyje bus parodytas komponento pavadinimas ir vieta, kurioje jis turėtų būti.

4 žingsnis: bandymas

Testavimas
Testavimas

Prieš išbandydami savo kūrimo plokštę, mums reikės AVR programuotojo kabelio. Čia yra gera pamoka apie programavimo kabelį. Mums reikia tik 6 laidų. SCK, MISO, MOSI, RST, Ground ir +5V, todėl mano jungtis turi tik 6 kontaktus. SVARBU! SCK, MISO, MOSI ir RST signalams reikia 390 omų rezistorių, kurie paprastai yra lituojami, tačiau norėjau sutaupyti šiek tiek vietos iš plokštės, todėl rezistoriai yra kabelio viduje. Be šių rezistorių programavimas neveiks. Mes taip pat turime padaryti kabelį tarp rs232 modulio ir pagrindinės plokštės. Paveikslėlyje taip pat yra pora „bandymo laidų“ir tai tikrai naudinga, kai ketiname išbandyti savo plokštę.

5 žingsnis: programavimas ir paprasta bandymo programa

Programavimo ir paprasta testavimo programa
Programavimo ir paprasta testavimo programa

Toliau mums reikės kai kurių „testų“programų, skirtų mūsų plokštės testavimui. SVARBU! Turime išjungti JTAG iš PORTC, jei to nepadarysime, lcd modulis neveiks, todėl tai būtina. „Linux“operacinėje sistemoje tai galime padaryti naudodami komandą avrdude: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Ši komanda išjungia JTAG ir nustato ir naudoja 8Mhz vidinį osciliatorių. Mūsų plokštėje yra išorinis kristalas, tačiau žmonės naudoja skirtingo dydžio kristalus, todėl ši komanda yra saugi visiems. Jei norite naudoti savo išorinį kristalą, čia yra tinkamų saugiklių apskaičiavimo svetainė. IMPORTATNT! Būkite atsargūs su saugiklių programavimu. Jei nustatysite neteisingas saugiklių vertes, jūsų procesorius neveiks. Yra būdas jį atkurti naudojant išorinį impulsą, tačiau tikėkimės, kad jums to nereikia daryti =) Paprasta testavimo programa: #include (avr/io.h) int main (void) {DDRA = 0xff; // nustatyti prievadą kaip išvestįDDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // išjungti visus prisitraukimus mūsų uostai veikia tinkamai. Vieną galą nuo laido prijunkite prie vieno iš lempų kaiščio galvutės ir palaipsniui palieskite kiekvieną galą. LED turi šviesti kiekvieną kartą. Jei jis nešviečia, tada su litavimu kažkas negerai. Taip pat atminkite testą, kad kiekvienas ledas veikia.

6 veiksmas: nuoseklaus prievado testavimas

Bandomas nuoseklusis prievadas
Bandomas nuoseklusis prievadas
Bandomas nuoseklusis prievadas
Bandomas nuoseklusis prievadas

Jei viskas puikiai veikė, laikas išbandyti mūsų RS232 modulį. Yra nedidelė programa, kuri tikrina, ar veikia mūsų TX ir RX. Naudojimas „Linux“: sukurkite failą, pavadintą „Makefile“, ir nukopijuokite žemiau esantį failo tekstą. „Makefile“kodas reiškia, kad naudojate „Atmega16“ir jūsų programavimo kabelis yra stk200 Nepamirškite nustatyti teisingų leidimų jūsų nuoseklusis prievadas/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 *.oAtsisiųskite atteched failą serial.c ir įdėkite į tą patį aplanką, kuriame yra „Makefile“. Įjunkite kūrimo plokštę ir prijunkite kabelį tarp RS232 modulio ir pagrindinės plokštės. Modulio šviesos diodai turėtų užsidegti dabar. Įdėkite bandymo laidą tarp PA0 kaiščio ir kai kurių šviesos diodų kaiščio. Naudokite savo terminalą ir eikite į aplanką, kuriame yra test.c ir „Makefile“. Prijunkite ISP programuotoją prie plokštės. Dabar atėjo laikas siųsti kodą į procesorių ir tai atsitinka su terminalo komanda: atsisiųskite programinę įrangą, pavadintą GTKterm (nuoseklaus prievado terminalas). Fedora: yum install gtkterm 8 duomenų bitai, 1 sustojimo bitas, nėra pariteto, nėra perpildymo. Jei viskas veikia, turėtų būti parašyta "veikia!" „GTKterm“ekrane, kai paspaudžiate mygtuką „z“, o paspaudus „x“- indikatorius turi įsijungti, o paspaudus „c“- jis turi išsijungti.

7 žingsnis: LCD modulio bandymas

LCD modulio bandymas
LCD modulio bandymas
LCD modulio bandymas
LCD modulio bandymas

Dabar atėjo laikas išbandyti mūsų LCD modulį. Pridėjau puikią programinę įrangą LCD ekranui valdyti. Aš atsisiunčiau kodą iš Scienceprog.com ir šiek tiek pakeičiau. Užprogramuokite procesorių šiuo kodu ir prijunkite savo LCD modulį prie plokštės. LCD modulio kaiščių jungtys: 1 = VSS (įžeminimas) 2 = VDD (5V) 3 = VO (įžeminimas) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7Mano lcd modulyje yra 2 jungtys (žr. Paveikslėlį), nes jei įdėsite modulį taip, kaip turėtų, tekstas pakyla aukštyn žemyn. Aš atspindėjau ir priklijavau naują jungtį į kitą pusę. Dabar tai veikia abiem būdais.

8 žingsnis: kai kurie vaizdo įrašai

Tamsesni akselerometrai

Rekomenduojamas: