Mündəricat:

LCD ilə Atmega16/32 İnkişaf Lövhəsi: 8 addım
LCD ilə Atmega16/32 İnkişaf Lövhəsi: 8 addım

Video: LCD ilə Atmega16/32 İnkişaf Lövhəsi: 8 addım

Video: LCD ilə Atmega16/32 İnkişaf Lövhəsi: 8 addım
Video: LCD дисплей на микроконтроллере ( перезапуск урок 3) 2024, Noyabr
Anonim
LCD ilə Atmega16/32 İnkişaf Lövhəsi
LCD ilə Atmega16/32 İnkişaf Lövhəsi
LCD ilə Atmega16/32 İnkişaf Lövhəsi
LCD ilə Atmega16/32 İnkişaf Lövhəsi
LCD ilə Atmega16/32 İnkişaf Lövhəsi
LCD ilə Atmega16/32 İnkişaf Lövhəsi

Bu təlimatlar Atmega16 və ya Atmega32 prosessorları üçün öz inkişaf lövhənizi necə edəcəyinizi göstərir. İnternet evdə hazırlanan inkişaf lövhələri ilə doludur, amma düşünürəm ki, başqa bir yer qaldı. Bu lövhə mənim layihələrimdə çox faydalı oldu və əslində layihəmdən birinə xidmət etmək üçün dizayn etdim və təqdim etdim. Nə təklif edir?- ISP-konnektoru.- Trimmerli AREF üçün tənzimlənən istinad gərginliyi. LED-ləri başqa portlarla da istifadə edə bilərsiniz. (ana lövhə üçün hissələr)- 1x Atmega16 və ya Atmega32 prosessoru- 1x kristal (Neçə Mhz olacağı sizin seçiminizdir)- Kristal üçün 2x 27 pF kondansatörler- 1x 7805 gərginlik tənzimləyicisi- 1x 47uF 16V kondansatör- 3x 100nF kondansatör- 1x DC-jack 2, 1mm və ya 2, 5mm (nə vaxt istifadə etmək istəsəniz)- 1x 1K potansiyometr- 8x led (istənilən rəng)- 8x 330 Ohm rezistorlar- çoxlu sünbül çubuqları RS232 modulu üçün hissələr- Max232 IC- 4x 0, 1uF kondansatörlər - 2x led (yaşıl və qırmızı)- 2x 330 Ohm rezistorlar- Sünbül çubuğu- D9 konnektoru

Addım 1: Dövrə lövhələri

Dövrə lövhələri
Dövrə lövhələri
Dövrə lövhələri
Dövrə lövhələri

Hər iki lövhədən də sxemlər var və pdf faylında bu lövhələrdən çap edilmiş fayllar var. Lövhələrinizi bu şəkillərdən yapışdıra bilərsiniz. Zip faylı bu lövhələrdən bütün Eagle fayllarını ehtiva edir. İstədiyiniz kimi bunları dəyişdirməkdən çekinmeyin.

Addım 2: Aşındırma və ya Freze

Aşındırma və ya Freze
Aşındırma və ya Freze
Aşındırma və ya Freze
Aşındırma və ya Freze

Bu lövhələri hazırlamağın iki yolu var: aşındırma və ya freze. Kimyaçı deyiləm, ona görə də son variantdan istifadə etdim. Mən dəyirmanımı bu möhtəşəm təlimatlardan hazırladım, buna görə də kiminsə nc-dəyirmanı varsa və bu lövhələri düzəltmək üçün istifadə etmək istəyirsinizsə, mənə bildirin və mən G kodlarını göndərim.

Addım 3: Lehimləmə

Lehimləmə
Lehimləmə
Lehimləmə
Lehimləmə

Aşağıdakı şəkil komponentin adını və lövhədə harada olması lazım olduğunu göstərəcəkdir.

Addım 4: Test

Test
Test

İnkişaf lövhəmizi sınamadan əvvəl, AVR-proqramçı kabelinə ehtiyacımız olacaq. Proqramlaşdırma kabeli haqqında yaxşı bir təlimat var. Yalnız 6 telə ehtiyacımız var. SCK, MISO, MOSI, RST, Ground və +5V və buna görə də bağlayıcımda yalnız 6 pin var. Vacib! SCK, MISO, MOSI və RST siqnallarının ümumiyyətlə lövhədə lehimli olan 390 Ohm rezistorlara ehtiyacı var, amma lövhədən bir az yer saxlamaq istədim və buna görə də rezistorlar kabelin içərisindədir. Bu rezistorlar olmadan proqramlaşdırma işləməyəcək. Biz də rs232 modulu ilə ana lövhə arasında bir kabel çəkməliyik. Şəkildə cüt "test telləri" də var və lövhəmizi sınayacağımız zaman bunlar həqiqətən faydalıdır.

Addım 5: Proqramlaşdırma və Sadə Test Proqramı

Proqramlaşdırma və Sadə Test Proqramı
Proqramlaşdırma və Sadə Test Proqramı

Sonra lövhəmizi sınamaq üçün bir neçə "test" proqramına ehtiyacımız olacaq. Vacib! JTAG -ı PORTC -dən deaktiv etməliyik, əgər bunu etməsək lcd -modulu işləməyəcək, buna görə də lazımdır Linux əməliyyat sistemində bunu avrdude əmri ilə edə bilərik: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Bu əmr JTAG -ı deaktiv edir və 8Mhz daxili osilatoru işə salır. Lövhəmizdə xarici kristal var, lakin insanlar fərqli ölçülü kristallardan istifadə edirlər, buna görə də bu əmr hamı üçün təhlükəsizdir. Xarici kristalınızı istifadə etmək istəyirsinizsə, burada düzgün qoruyucuları hesablamaq üçün bir sayt var. Sigorta proqramlaşdırma ilə diqqətli olun. Yanlış qoruyucu dəyərlər təyin etsəniz, prosessor işləməyəcək. Xarici nəbzlə onu bərpa etməyin bir yolu var, amma ümid edək ki, bunu etmək lazım deyil =) Sadə test proqramı: #include (avr/io.h) int main (void) {DDRA = 0xff; // portu çıxışDDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // bütün çəkmələri deaktiv edin limanlarımız düzgün işləyir. Teldən bir ucunu ledlərin ucuna qoyun və digər ucu ilə hər limana addım -addım toxunun. Led hər dəfə parlamalıdır. Parlamırsa, lehimdə bir problem var. Testi də unutmayın ki, hər bir led işləyir.

Addım 6: Serial Portu yoxlayın

Serial Portu Test Edilir
Serial Portu Test Edilir
Serial Portu Test Edilir
Serial Portu Test Edilir

Hər şey mükəmməl işləyirsə, rs232 modulunu sınamağın vaxtı gəldi. TX və RX -in işlədiyini sınayan kiçik bir proqram var. Linux -da istifadə edin: Makefile adlı bir fayl yaradın və faylın altından mətni kopyalayın. Makefile kodu Atmega16 istifadə etdiyinizi və proqramlaşdırma kabelinizin stk200 olduğunu unutmayın. seriya portunuz/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. Reeep -O ihex $ <$@clean: rm -f *.hex *.obj *.oDüzenlenmiş faylı serial.c yükləyin və qoyun inkişaf etdirmə lövhənizi gücləndirin və rs232 modulu ilə ana kart arasında kabel qoyun. Modulun LEDləri indi yanmalıdır. Test telini PA0 pin və bəzi LED pinləri arasına qoyun. Terminalınızı istifadə edin və test.c və Makefile qovluğuna gedin. İnternet provayderini lövhəyə qoşun. İndi kodumuzu prosessora göndərməyin vaxtıdır və bu terminal əmri ilə baş verir: GTKterm adlı proqramı yükləyin (Serial Port Terminal). 8 data bit, 1 stop bit, parite yoxdur, daşqın yoxdur. Hər şey işləyirsə, "işləyir!" Yazmalıdır. GTKterm ekranında "z" düyməsini basdığınızda və "x" düyməsini basdığınız zaman lövhədəki LED açılmalı və "c" düyməsinə basdığınız zaman sönməlidir.

Addım 7: LCD modul testi

LCD modul testi
LCD modul testi
LCD modul testi
LCD modul testi

İndi LCD modulunu sınamağın vaxtıdır. LCD ekranı idarə etmək üçün əla bir proqram əlavə etdim. Kodu Scienceprog.com -dan yüklədim və bir az dəyişdim. Prosessoru bu kodla proqramlaşdırın və lcd modulunuzu taxtaya qoşun. LCD modulu pin əlaqələri: 1 = VSS (Ground) 2 = VDD (5V) 3 = VO (Ground) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7My lcd-modulumda 2 bağlayıcı var (şəkilə bax), çünki modulu olduğu kimi qoysanız mətn yuxarıya doğru yuxarıya doğru gedir. Yeni konnektoru yansıtdım və digər tərəfə yapışdırdım. İndi hər iki istiqamətdə işləyir.

Addım 8: Bəzi Videolar

Dimmer akselerometrləri

Tövsiyə: