Мазмұны:

AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалау керек: 7 қадам
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалау керек: 7 қадам

Бейне: AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалау керек: 7 қадам

Бейне: AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалау керек: 7 қадам
Бейне: Урок №1. Знакомство с Arduino. BeyondRobotics 2024, Шілде
Anonim
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады
AVR (arduino) бағдарламасын басқа Arduino көмегімен қалай бағдарламалауға болады

Бұл нұсқаулық пайдалы, егер:

* сізде arduino atmega168 бар, сіз жергілікті электроника дүкенінен atmega328 сатып алдыңыз. Оның arduino жүктеушісі жоқ * сіз arduino қолданбайтын жоба жасағыңыз келеді - қарапайым AVR чипі (USBTinyISP сияқты) - сізде микробағдарламаны қосқыңыз келетін таза attiny2313/attiny48 және т.б. Әдетте сізде жаңа чипті бағдарламалау үшін USBTinyISP сияқты ISP (жүйелік бағдарламалаушы) болуы керек еді. Ардуиноға ие бола отырып, сіз оны бағдарламашы болуға үйрете аласыз, Рэндалл Бон жасаған керемет жұмыстың арқасында. Ол Mega -ISP - бағдарламашы сияқты жұмыс істейтін ардуино эскизін құрды.

1 -қадам: Сізге не қажет?

Саған не қажет ?
Саған не қажет ?

* жұмыс істейтін Arduino (немесе клон - мен BBB - BareBonesBoard және RBBB - RealBareBonesBoard by ModernDevices қолданамын) * сіз бағдарламалайтын чип (atmega8, atmega168, atmega368, attiny2313, attiny13) * нан тақтасы немесе провайдер тақырыбы бар тақта * 3 светодиод + 3 резистор * нан тақтасының сымдары

2-қадам: Mega-isp бағдарламашысын тақтаға шығару

Мега-isp бағдарламашысын тақтаға шығару
Мега-isp бағдарламашысын тақтаға шығару
Мега-исп бағдарламашысын тақтаға шығару
Мега-исп бағдарламашысын тақтаға шығару
Мега-isp бағдарламашысын тақтаға шығару
Мега-isp бағдарламашысын тақтаға шығару

Ардуиноны чипті бағдарламалауға қосудың екі әдісі бар.

Сіз avr чипін тақтаға қосып, тиісті түйреуіштерге 5v және GND байланыстыра аласыз (деректер кестесін тексеріңіз!) + Түйреуіштерді қалпына келтіру және түйінге микросхемаға қосу үшін тартқыш резистор. Бұл Arduino -дағы сызықтар және олардың функциясы 13 - SCK 12 - MISO 11 - MOSI 10 - RST (Қалпына келтіру) Немесе 2x3pin ISP тақырыбын жасауға болады, оны бір тақтаны (басқа arduino тақтасын) қосуға болады. Интернет -провайдер тақырыбының түйіні үшінші суретте орналасқан. Бағдарламалаушының күйін көрсететін 3 жарық диодтары бар. түйреуіш 9 - көк светодиод - бұл бағдарламашының есту ырғағы. түйреуіш 8 - қызыл светодиод - қатені көрсетеді 7 - жасыл светодиод - бағдарламалау жүріп жатқанын көрсетеді (мен жалқау едім, сондықтан мен қондырмадағы түстерге сәйкес келмедім) Фритзингте жасалған сызбалар. MEGA-isp қалқаны. Ярослав Осадчий қалқанды бүркітте ойлап тапты. Сіз бүркіт файлдарын оның сайтынан ала аласыз:

3 -қадам: Эскизді жүктеу

Эскизді жүктеу
Эскизді жүктеу

Эскизді mega-isp google кодынан жүктеп алыңыз. (Жазу кезінде avrisp.03.zip). Оны орап алыңыз және arduino ide іске қосыңыз және avrisp.pde ашыңыз. Оны arduino тақтасына жүктеңіз. Жүрек соғу диодтары соғуды бастау керек.

4 -қадам: Avrdude көмегімен пайдалану

Avrdude көмегімен қолдану
Avrdude көмегімен қолдану

Avrdude (және оны қолданатын барлық GUI) көмегімен пайдалану үшін сізге 'avrisp' бағдарламашысын таңдау қажет. ең қауіпсіз бит жылдамдығы - 19200 ж.

Жаңа atmega168 -ді пәрмен жолынан тексеру үшін келесі әрекеттерді орындап көріңіз: $ avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 /dev /USB0 -бұл arduino менің linux қорабыма қосылған порт (сіздікі com5 болуы мүмкін). Мұны arduino IDE -де Құралдар -> Сериялық портта тексеруге болады. Сіз алуыңыз керек: [kabturek@hal -9000 ~]# avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 avrdude: AVR құрылғысы инициализацияланған және нұсқауларды қабылдауға дайын Оқу | ################################################################################################################################# | 100% 0.13s avrdude: Құрылғы қолтаңбасы = 0x1e9406 avrdude: safemode: Сақтандырғыштар OK avrdude жасалды. Рақмет сізге. Бұл бәрі жақсы дегенді білдіреді. Егер сіз қате алсаңыз - соңғы қадамды тексеріңіз.

5 -қадам: USBtinyISP микробағдарламасын Attiny2313 -ке қосу

USBtinyISP микробағдарламасын Attiny2313 -ке жазу
USBtinyISP микробағдарламасын Attiny2313 -ке жазу
USBtinyISP микробағдарламасын Attiny2313 -ке жазу
USBtinyISP микробағдарламасын Attiny2313 -ке жазу
USBtinyISP микробағдарламасын Attiny2313 -ке жазу
USBtinyISP микробағдарламасын Attiny2313 -ке жазу

USBTinyISP - LadyAda -дан шыққан керемет бағдарламашы, бұл өте арзан - 22 доллар. Менде қосалқы attiny2313 және кейбір бөлшектер болды, сондықтан мен оны өзім жасауға шешім қабылдадым. Егер сізде ПХД жасау тәжірибесі болмаса, мен сізге жинақты сатып алуға кеңес беремін, себебі бұл сіз жасай алатын сападан жоғары:). Егер сіз оны жасағыңыз келсе, кем дегенде ПХД сатып алыңыз. Сіз оны Adafruit -тен ала аласыз. ATtiny2313 жалғаңыз Соңғы суретте сіз провайдер үшін қызыл түйреуіштері бар attiny2313 -ті көре аласыз. Сурет LadyAda avr оқулығынан алынған. Микробағдарламаны күйдіру: USBTinyISP микробағдарламасын бумадан шығарыңыз. Чиппен бәрі дұрыс екенін тексеру үшін spi dir -ге өтіп, $ avrdude -p pt2313 -P /dev /ttyUSB0 -c avrisp -b 19200 іске қосыңыз. Енді сақтандырғыштарды орнатыңыз: $ avrdude -P /dev /ttyUSB0 -c avrisp -b 19200 -pt2313 -U hfuse: w: 0xdf: m -U lfuse: w: 0xef: m Енді микросхемаға 12 МГц сыртқы осцилляторды бекіту керек.. Және микробағдарламаны жазыңыз: $ avrdude -B 1 -pt2313 -U flash: w: main.hex -P /dev /ttyUSB0 -c avrisp -b 19200 Voila. Сіздің attiny2313 -те USBTinyISP микробағдарламасы бар.

6 -қадам: Arduino жүктеушісін күйдіру

Arduino жүктеуші жүктелуде
Arduino жүктеуші жүктелуде
Arduino жүктеуші жүктелуде
Arduino жүктеуші жүктелуде
Arduino жүктеуші жүктелуде
Arduino жүктеуші жүктелуде

Мен қосылуды жеңілдету үшін RBBB қолданғаным үшін біраз алдандым. Схема №2 суретте көрсетілген. Егер сіз 2 arduino қолдансаңыз, №3 суретті қолданыңыз және Интернет провайдерінің PIN кодын ICSP 2x3header -ге екінші (қосалқы) arduino -ға қосыңыз. Тек USB тақтасын бірінші тақтаға қосыңыз. GUI әдісі-бұл өте қиын, себебі сіз тек Tools-> Burn Bootloader-> AVR ISP қолдана алмайсыз, себебі mega-isp үшін әдепкі жылдамдық тым үлкен. Arduino IDE (arduino/hardware/tools/avrdude.conf ішінде) жеткізілетін avrdude.conf файлын табыңыз және avrisp бағдарламашысының шекарасын 115200 -ден 19200 -ге дейін өзгертіңіз (312 жолдың айналасында) avrdude.conf бағдарламашысының id = «avrisp» табыңыз және өзгертіңіз.; desc = «Atmel AVR ISP»; жылдамдық = 115200; # әдепкі - 115200 түрі = stk500;; кімге: бағдарламашы id = «avrisp»; desc = «Atmel AVR ISP»; жылдамдық = 19200; # әдепкі - 115200 түрі = stk500;; Енді сіз Tools -> Burn Bootloader -> AVR ISP қолдана аласыз (Құралдар мәзірінен тиісті тақтаны таңдағаннан кейін) Commanline Сіз сондай -ақ пәрмен жолын қолдана аласыз: arduino/hardware/bootloaders/atmega/Makefile өңдеу және ISPTOOL/PORT өзгерту. /SPEED to: # avrdude isp құралының параметрлерін енгізіңіз ISPTOOL = avrisp ISPPORT = /dev /ttyUSB0 ISPSPEED = -b 19200 жоқ, сіз сақтандырғыштарды және жүктеушіні күйдіру үшін $ make diecimila_isp деп жаза алмайсыз. жыпылықтайды!

7 -қадам: ақауларды жою

Ақаулық себебін іздеу және түзету
Ақаулық себебін іздеу және түзету

Avrdude қателері: avrdude: ser_open (): «/dev/ttyUSB0» құрылғысын аша алмайды: мұндай файл немесе каталог жоқ Сізде қате порт (-P) көрсетілген немесе сіздің arduino қосылмаған. avrdude қосылымын тексеріңіз: Құрылғы қолтаңбасы = 0x000000 avrdude: Жарайды! Құрылғының қолтаңбасы жарамсыз. Қосылымдарды екі рет тексеріп, қайталап көріңіз немесе осы тексеруді болдырмау үшін -F пайдаланыңыз. Бұл жалпы қате түрі. Сіздің чипіңіз танылмады. Тақтадағы қосылымды тексеріңіз (GND/5V түйреуіштерге қосылған ба?) Сіздің чипіңіз сыртқы осцилляторды пайдалану үшін конфигурацияланған кезде және ол жұмыс істемей тұрған кезде сізде бұл қате пайда болады (біреуі жоқ немесе ол дұрыс тербелмейді - 22pf қақпақтары) жоқ?)

Ұсынылған: