Съдържание:

Дъска за развитие Atmega16/32 с LCD: 8 стъпки
Дъска за развитие Atmega16/32 с LCD: 8 стъпки

Видео: Дъска за развитие Atmega16/32 с LCD: 8 стъпки

Видео: Дъска за развитие Atmega16/32 с LCD: 8 стъпки
Видео: "Советский 8-разрядный бытовой компьютер Апогей БК-01", Алексей Морозов (vinxru) 2024, Юли
Anonim
Дъска за развитие Atmega16/32 С LCD
Дъска за развитие Atmega16/32 С LCD
Дъска за развитие Atmega16/32 С LCD
Дъска за развитие Atmega16/32 С LCD
Дъска за развитие Atmega16/32 С LCD
Дъска за развитие Atmega16/32 С LCD

Тази инструкция показва как да направите своя собствена дъска за разработка за процесори Atmega16 или Atmega32. Интернет е пълен с домашно разработени дъски за разработка, но мисля, че остава място за още една. Тази платка беше много полезна в моите проекти и аз всъщност я проектирах и направих така, че да обслужва един от моите проекти. Какво предлага?- ISP-конектор.- Регулируемо референтно напрежение за AREF с тример.- 8 светодиода, свързани PORTA със сменяеми джъмпери, така че можете да използвате светодиоди и с други портове.- Шипове за PORTA, PORTB, PORTC и PORTD.- Модифицирана шип лента за LCD екран (4 бита)- конектор за сериен порт rs232- Подвижен модул rs232- Регулиран 5V Какво ще ви трябва? (части за основната платка)- 1x процесор Atmega16 или Atmega32- 1x кристал (Вашият избор е колко Mhz ще бъде)- 2x 27 pF кондензатори за кристал- 1x 7805 регулатор на напрежението- 1x 47uF 16V кондензатор- 3x 100nF кондензатор- 1x DC-жак 2, 1 мм или 2, 5 мм (каквото искате) - 2x LED (зелено и червено)- 2x 330 Ohm резистори- Spike bar- D9-конектор

Стъпка 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: Програмиране и проста програма за тестване

Програмиране и проста програма за тестване
Програмиране и проста програма за тестване

След това ще имаме нужда от някои „тестови“програми за тестване на нашата платка. ВАЖНО! Трябва да деактивираме JTAG от PORTC. lfuse: w: 0xe4: m -U hfuse: w: 0xd9: m Тази команда изключва JTAG и настройва и използва 8Mhz вътрешен осцилатор. Нашата дъска има външен кристал, но хората използват различни по размер кристали, така че тази команда е безопасна за всички. Ако искате да използвате външния си кристал тук е сайт за изчисляване на правилни предпазители. Внимавайте с програмирането на предпазители. Ако зададете грешни стойности на предпазителите, вашият процесор ще не работи. Има начин да го възстановите с външен импулс, но нека се надяваме, че не е нужно да правите това =) Проста програма за тестване: #include (avr/io.h) int main (void) {DDRA = 0xff; // задаване на порт като изход DDRB = 0xff; DDRC = 0xff; DDRD = 0xff; PORTA = 0x00; // деактивирайте всички издърпвания PORTB = 0x00; PORTC = 0x00; PORTD = 0x00;} Време е да включите платката и да изпратите тази малка тестова програма до процесора с winavr или каквото и да искате да използвате. Сега можем да тестваме това нашите портове работят правилно. Поставете единия край от проводника към един от главите на щифтовете на светодиодите и докоснете с другия край всеки портов шип стъпка по стъпка. LED трябва да свети всеки път. Ако не блести, значи има нещо нередно в запояването. Не забравяйте също, че всеки светодиод работи.

Стъпка 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 флаш: w: test.hex %.obj: %.o $ (CC) $ (CFLAGS) $ <-o $@%.hex: %.obj $ (OBJ2HEX) -R.eeprom -O ihex $ <$@clean: rm -f *.hex *.obj *.o Изтеглете файла с серия.c и поставете го включете в същата папка, където е Makefile. Светодиодите на модула трябва да светнат сега. Поставете тестовия проводник между щифта PA0 и някои от светодиодите. Използвайте терминала си и отидете в папката, където е test.c и Makefile. Свържете ISP-програмист към платката. Сега е време да изпратим нашия код в процесора и това се случва с командата на терминала: направете изтегляне на софтуер, наречен GTKterm (терминал за сериен порт). 8 бита данни, 1 стоп бит, без паритет, без преливане няма. Ако всичко работи, трябва да напише "работи!" на екрана GTKterm, когато натиснете бутона "z" и когато натиснете бутона "x", светодиодът на борда трябва да се включи и когато натиснете "c", той трябва да се изключи.

Стъпка 7: Тест на LCD модула

Тест за LCD модул
Тест за LCD модул
Тест за LCD модул
Тест за LCD модул

Сега е време да тестваме нашия LCD-модул. Прикачих страхотен софтуер за управление на LCD екрана. Изтеглих кода от Scienceprog.com и го промених малко. Програмирайте процесора с този код и включете вашия LCD модул на борда. ПИН връзки на LCD модула: 1 = VSS (заземяване) 2 = VDD (5V) 3 = VO (заземяване) 4 = RS5 = R/W6 = E11 = PC412 = PC513 = PC614 = PC7 Моят lcd-модул съдържа 2 конектора (вижте снимката), защото текстът се издига нагоре, ако поставите модула както трябва. Огледалих и залепих нов конектор от другата страна. Сега работи и в двете посоки.

Стъпка 8: Някои видеоклипове

Акселерометри с димер

Препоръчано: