LCD бар Atmega16/32 даму тақтасы: 8 қадам
LCD бар Atmega16/32 даму тақтасы: 8 қадам
Anonim

Бұл нұсқаулық Atmega16 немесе Atmega32 процессорларына арналған өзіңіздің жеке тақтаны қалай жасау керектігін көрсетеді. Интернет үйде дайындалған тақталарға толы, бірақ менің ойымша, басқасына орын қалды. Бұл тақта менің жобаларымда өте пайдалы болды, мен оны өз жобамның біріне қызмет ететіндей етіп жасадым. Ол не ұсынады?- ISP-қосқышы.- AREF үшін қайшымен реттелетін тірек кернеуі. Сонымен қатар, сіз басқа порттармен бірге жарықдиодты қолдана аласыз. (негізгі тақтаға арналған бөлшектер)- 1x Atmega16 немесе Atmega32 процессоры- 1х кристалл (қанша МГц болатынын сіздің таңдауыңыз)- кристалл үшін 2х 27 фФ конденсаторлар- 1х 7805 кернеу реттегіші- 1х 47уФ 16В конденсатор- 3х 100нФ конденсатор- 1х DC ұясы 2, 1мм немесе 2, 5мм (сіз қолданғыңыз келетін нәрсе)- 1x 1K потенциометр- 8x жарықдиодты (кез келген түсті)- 8x 330 Ом резисторлары- штангалардың көп саны rs232 модуліне арналған бөлшектер- Max232 IC- 4x 0, 1uF - 2x жарықдиодты (жасыл және қызыл)- 2x 330 Ом резисторлары

1 -қадам: Электр тізбектері

Екі тақтадан да схемалар бар және pdf-файлда осы тақталардың файлдарын басып шығару бар. Сіз бұл суреттерден тақтайшаларды жабыстыра аласыз. Zip файлында осы тақталардағы барлық Eagle файлдары бар. Оларды қалағаныңызша өзгертуге тырысыңыз.

2 -қадам: тегістеу немесе фрезерлеу

Бұл тақталарды жасаудың екі әдісі бар, оларды тегістеу немесе фрезерлеу. Мен химик емеспін, сондықтан мен соңғы нұсқаны қолдандым. Мен өз диірменімді осы керемет нұсқаулардан жасадым, сондықтан егер біреуде nc-mill бар болса және оны осы тақталарды жасау үшін қолданғысы келсе, маған хабарлаңыз, мен G-кодтарын жіберемін.

3 -қадам: дәнекерлеу

Төмендегі суретте компоненттің атауы және бортта қай жерде болуы керек екені көрсетілген.

4 -қадам: тестілеу

Әзірлеу тақтасын тексермес бұрын бізге AVR-бағдарламалаушы кабелі қажет болады. Мұнда бағдарламалау кабелі туралы жақсы нұсқаулық бар. Бізге тек 6 сым қажет. SCK, MISO, MOSI, RST, Ground және +5V, сондықтан менің қосқышымда тек 6 түйреуіш бар. МАҢЫЗДЫ! SCK, MISO, MOSI және RST сигналдарына әдетте бортта дәнекерленген 390 Ом резисторлары қажет, бірақ мен тақтадан біраз бос орын үнемдегім келді, сондықтан резисторлар кабельдің ішінде. Бұл резисторсыз бағдарламалау жұмыс істемейді, сонымен қатар rs232 модулі мен негізгі тақта арасындағы кабельді жасау керек. Суретте жұп «сынақ сымдары» бар және олар біздің тақтаны сынамақ болған кезде өте пайдалы.

5 -қадам: Бағдарламалау және қарапайым тест бағдарламасы

Келесі кезекте бізге тақтаны тексеруге арналған «тест» бағдарламалары қажет болады. МАҢЫЗДЫ! Біз PORTC -ден JTAG өшіруіміз керек, егер олай етпесек, lcd -модулі жұмыс істемейді, сондықтан қажет. Linux операциялық жүйесінде біз оны avrdude командасымен жасай аламыз: avrdude -p m16 -c stk200 -U lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Бұл команда JTAG өшіреді және 8 МГц ішкі осцилляторды орнатады және қолданады. Біздің тақтада сыртқы кристалл бар, бірақ адамдар әр түрлі өлшемдегі кристалдарды қолданады, сондықтан бұл команда барлығына қауіпсіз. Егер сіз сыртқы кристалды қолданғыңыз келсе, мұнда дұрыс сақтандырғыштарды есептеуге болады. Сақтандырғыш бағдарламалауда абай болыңыз. Егер сақтандырғыш мәндерін қате орнатсаңыз, процессор жұмыс істемейді. Сыртқы импульспен қалпына келтірудің жолы бар, бірақ мұны істеудің қажеті жоқ деп үміттенеміз =) Қарапайым тестілеу бағдарламасы: #include (avr/io.h) int main (void) {DDRA = 0xff; // портты outputDDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // барлық тартуларды өшіру Біздің порттар дұрыс жұмыс істейді. Сымның бір ұшын светодиодтың ұшына қойып, екінші ұшымен әр портты бірте -бірте ұстаңыз. Лидер әр уақытта жарқырап тұруы керек. Егер ол жарқырамаса, онда дәнекерлеуде қате бар. Әр жетекші жұмыс істейтінін есте сақтаңыз.

6 -қадам: Сериялық портты тексеру

Егер бәрі жақсы жұмыс істесе, rs232 модулін тексеретін уақыт келді. Біздің TX және RX жұмыс істейтінін тексеретін шағын бағдарлама бар. Linux -те қолдану: Makefile деп аталатын файл жасаңыз және файлдың астындағы мәтінді көшіріп алыңыз. Makefile коды сіз Atmega16 -ды қолданып жатыр деп болжайды және сіздің бағдарламалау кабелі stk200 болып табылады. сіздің сериялық порт/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.eep -O ihex $ <$@clean: rm -f *.hex *.obj *.oҚатыстырылған serial.c файлын жүктеңіз және қойыңыз ол Makefile орналасқан қалтада. Даму тақтасын қосыңыз және rs232 модулі мен негізгі тақта арасында кабель салыңыз. Модульдегі шамдар қазір жануы керек. Сынақ сымын PA0 түйреуіші мен кейбір жарықдиодты түйреуіштердің арасына салыңыз. Терминалды қолданыңыз және test.c және Makefile қалтасына өтіңіз. Провайдер-провайдерді тақтаға қосыңыз. Енді біздің кодты процессорға жіберетін уақыт келді және ол терминалды пәрменмен орындалады: GTKterm (Serial Port Terminal) деп аталатын жүктеу бағдарламалық жасақтамасын жасаңыз. 8 бит биті, 1 нүктелік бит, паритет жоқ, толып кетпейді. Егер бәрі жұмыс істесе, ол «жұмыс істейді!» Деп жазуы керек. GTKterm экранында «z» түймесін басқанда, ал «x» түймесін басқанда борттағы светодиод қосылады, ал «с» түймесін басқанда ол өшеді.

7-қадам: СКД модулін тексеру

Енді біздің LCD-модульді тексеретін кез келді. Мен СКД экранын басқаруға арналған керемет бағдарламалық жасақтаманы қостым. Мен Scienceprog.com сайтынан кодты жүктеп алып, оны аздап өзгерттім. Процессорды осы кодпен бағдарламалаңыз және lcd-модулін бортқа қосыңыз. LCD-модульдің түйреуіш қосылымдары: 1 = VSS (Ground) 2 = VDD (5V) 3 = VO (Ground) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7My lcd-модулінде 2 коннектор бар (суретті қараңыз), себебі егер сіз модульді сол күйіне қойсаңыз, мәтін төмен қарайды. Мен жаңа қосқышты айнаға қаратып, басқа жаққа жапсырдым. Енді ол екі бағытта жұмыс істейді.

8 -қадам: Кейбір бейнелер

Диммер акселерометрлері

Ұсынылған: