Talaan ng mga Nilalaman:
- Hakbang 1: Ano ang Kailangan Mo?
- Hakbang 2: Paggawa ng Mega-isp Programmer sa isang Breadboard
- Hakbang 3: Pag-upload ng Sketch
- Hakbang 4: Paggamit Sa Avrdude
- Hakbang 5: Nasusunog na USBtinyISP Firmware sa isang Attiny2313
- Hakbang 6: Nasusunog ang Arduino Bootloader
- Hakbang 7: Pag-troubleshoot
Video: Paano Mag-Program ng isang AVR (arduino) Sa Isa pang Arduino: 7 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:16
Ang mga itinuturo na ito ay kapaki-pakinabang kung:
* Nakuha mo ang iyong arduino sa atmega168 at bumili ka ng isang atmega328 sa iyong lokal na tindahan ng electronics. Wala itong isang arduino bootloader * nais mong gumawa ng isang proyekto na hindi gumagamit ng arduino - isang regular na AVR chip (tulad ng USBTinyISP) - mayroon kang isang malinis na attiny2313 / attiny48 atbp na nais mong sunugin ang firmware. Karaniwan ay magkakaroon ka ng isang ISP (Sa System Programmer) tulad ng USBTinyISP upang mai-program ang iyong bagong chip. Ang pagkakaroon ng arduino maaari mo itong turuan upang maging isang programmer salamat sa isang mahusay na gawa na ginawa ni Randall Bohn. Nilikha niya ang Mega-ISP - isang arduino sketch na gumagana tulad ng isang programmer.
Hakbang 1: Ano ang Kailangan Mo?
* isang gumaganang Arduino (o isang clone - gumagamit ako ng BBB - BareBonesBoard at isang RBBB - RealBareBonesBoard ng ModernDevices) * isang maliit na tilad na nais mong i-program (nasubukan sa atmega8, atmega168, atmega368, attiny2313, attiny13) * isang breadboard o isang board na may ISP header * 3 leds + 3 resistors * breadboard wires
Hakbang 2: Paggawa ng Mega-isp Programmer sa isang Breadboard
Mayroong dalawang paraan upang ikonekta ang iyong Arduino upang mag-program ng isang maliit na tilad.
Maaari mong mai-plug ang iyong avr chip sa isang breadboard at ikonekta ang 5v at GND sa kani-kanilang mga pin (suriin ang datasheet!) + Isang pullup risistor upang i-reset at mga wire pin mula sa iyo arduino sa chip. Ito ang mga linya sa Arduino at ang kanilang pagpapaandar 13 - SCK 12 - MISO 11 - MOSI 10 - RST (I-reset) O maaari kang gumawa ng isang 2x3pin ISP header na maaari mong mai-plug sa isang board na nagbibigay ng isa (isa pang arduino board). Ang pinout para sa header ng ISP ay nasa pangatlong imahe Mayroong 3 leds upang ipahiwatig ang katayuan ng programmer. pin 9 - asul na humantong - ito ay ang pandinig ng programmer. pin 8 - red led - nagsasaad ng isang error pin 7 - berde na humantong - ay nagpapahiwatig na ang programa ay nagaganap (tamad ako kaya hindi ako tumugma sa mga kulay sa aking pag-set up) Narito ang mga guhit na ginawa sa Fritzing Maaari kang gumawa ng isang MEGA-isp kalasag. Dinisenyo ni Yaroslav Osadchyy ang kalasag sa agila. Maaari mong makuha ang mga file ng agila sa kanyang site:
Hakbang 3: Pag-upload ng Sketch
I-download ang sketch mula sa mega-isp google code. (Avrisp.03.zip sa oras ng pagsulat). I-unpack ito at patakbuhin ang arduino ide at buksan ang avrisp.pde. I-upload ito sa iyong arduino board. Ang pinangungunahan ng heartbeat ay dapat magsimulang matalo.
Hakbang 4: Paggamit Sa Avrdude
Upang magamit sa avrdude (at lahat ng mga GUI na gumagamit nito) kailangan mong piliin ang programmer na 'avrisp'. ang pinakaligtas na bitrate ay 19200.
Upang subukan ang iyong bagong atmega168 mula sa commandline subukan: $ avrdude -p m168 -P / dev / ttyUSB0 -c avrisp -b 19200 / dev / USB0 ay ang port na ang arduino ay konektado sa aking linux box (maaaring ang com5 mo). Maaari itong suriin sa arduino IDE sa Tools -> Serial Port. Dapat mong makuha ang: [kabturek @ hal-9000 ~] # avrdude -p m168 -P / dev / ttyUSB0 -c avrisp -b 19200 avrdude: Pinasimulan ang AVR aparato at handa nang tanggapin ang mga tagubilin sa Pagbasa | ###Oooooooooooooooo | 100% 0.13s avrdude: Pirma ng aparato = 0x1e9406 avrdude: safemode: Fuse OK avrdude tapos na. Salamat. Ibig sabihin ok ang lahat. Kung nakakuha ka ng mga error - suriin ang huling hakbang.
Hakbang 5: Nasusunog na USBtinyISP Firmware sa isang Attiny2313
Ang USBTinyISP ay isang mahusay na programmer mula sa LadyAda na talagang mura - 22 $. Mayroon akong ekstrang attiny2313 at ilang mga bahagi kaya nagpasya akong gawin ang isa sa aking sarili. Kung wala kang anumang karanasan sa paggawa ng PCB i payo na bilhin mo ang kit sanhi ng mas mataas na kalidad kaysa sa magagawa mo ang iyong sarili:). Hindi bababa sa bumili ng PCB kung nais mong bumuo ng isa. Maaari mo itong makuha mula sa Adafruit. Ikonekta ang ATtiny2313 Sa huling larawan makikita mo ang attiny2313 sa mga pin na ginamit para sa ISP na pula. Ang larawan ay mula sa LadyAda avr tutorial. Nasusunog ang firmware: I-unpack ang USBTinyISP firmware. Pumunta sa spi dir at patakbuhin ang $ avrdude -p pt2313 -P / dev / ttyUSB0 -c avrisp -b 19200 upang suriin kung ang lahat ay ok sa chip. Itakda ngayon ang mga piyus: $ avrdude -P / dev / ttyUSB0 -c avrisp -b 19200 -pt2313 -U hfuse: w: 0xdf: m -U lfuse: w: 0xef: m Ngayon ay dapat mong ikabit ang 12mhz external oscillator sa chip. At sunugin ang firmware: $ avrdude -B 1 -pt2313 -U flash: w: main.hex -P / dev / ttyUSB0 -c avrisp -b 19200 Voila. Ang iyong attiny2313 ay mayroong USBTinyISP firmware.
Hakbang 6: Nasusunog ang Arduino Bootloader
Kumokonekta ako nang kaunti sanhi na gumamit ako ng isang RBBB upang gawing simple ang mga koneksyon. Ang iskema ay nasa larawan # 2. Kung gumagamit ka ng 2 arduinos gamitin ang larawan # 3 at ikonekta ang ISP pin sa ICSP 2x3header sa pangalawang (alipin) arduino. Ikonekta lamang ang kapangyarihan ng usb sa unang board. Ang paraan ng GUI Ito ay isang maliit na nakakalito sanhi hindi mo lamang magagamit ang Mga Tool-> Burn Bootloader -> w / AVR ISP sanhi ng default na bilis ay masyadong malaki para sa mega-isp. Hanapin ang avrdude.conf na kasama ng arduino IDE (sa arduino / hardware / tools / avrdude.conf) at palitan ang border para sa avrisp programmer mula 115200 hanggang 19200 (sa paligid ng linya 312) Hanapin at baguhin ang avrdude.conf programmer id = "avrisp"; desc = "Atmel AVR ISP"; baudrate = 115200; Ang # default ay 115200 uri = stk500;; sa: programmer id = "avrisp"; desc = "Atmel AVR ISP"; baudrate = 19200; Ang # default ay 115200 uri = stk500;; Maaari mo nang gamitin ang Mga Tool -> Burn Bootloader -> w / AVR ISP (pagkatapos mong piliin ang tamang board mula sa menu ng Mga Tool) Commanline Maaari mo ring gamitin ang commandline: I-edit ang arduino / hardware / bootloaders / atmega / Makefile at baguhin ang ISPTOOL / PORT / SPEED to: # ipasok ang mga parameter para sa avrdude isp tool ISPTOOL = avrisp ISPPORT = / dev / ttyUSB0 ISPSPEED = -b 19200 no maaari kang magsulat ng $ make diecimila_isp upang magsunog ng mga piyus at ang bootloader. Subukan Ngayon ikonekta ka ng bagong arduino sa usb at sunugin ang kumurap!
Hakbang 7: Pag-troubleshoot
Mga error sa Avrdude: avrdude: ser_open (): hindi mabubuksan ang aparato "/ dev / ttyUSB0": Walang ganoong file o direktoryo Mayroon kang maling port (-P) na tinukoy o ang iyong arduino ay hindi nakakonekta. suriin ang koneksyon avrdude: Pirma ng aparato = 0x000000 avrdude: Yikes! Di-wastong lagda ng aparato. I-double check ang mga koneksyon at subukang muli, o gamitin ang -F upang ma-override ang tseke na ito. Ito ay uri ng pangkalahatang error. Ang iyong chip ay hindi kinikilala. Suriin ang koneksyon sa board (nakakonekta ang GND / 5V sa mga pin?) Makukuha mo ang error na ito kapag ang iyong maliit na tilad ay na-configure upang magamit ang isang panlabas na oscillator at hindi ito gumagana (walang isa o hindi ito oscillating maayos - 22pf cap nawawala?)
Inirerekumendang:
Pagprogram ng isang Arduino Paggamit ng Isa pang Arduino upang Maipakita ang isang Scrolling Text Nang Walang Library: 5 Mga Hakbang
Ang Programming ng isang Arduino Paggamit ng Isa pang Arduino upang Maipakita ang isang Scrolling Text Nang Walang Library: Ang Sony Spresense o Arduino Uno ay hindi ganoon kamahal at hindi nangangailangan ng maraming lakas. Gayunpaman, kung ang iyong proyekto ay may limitasyon sa kapangyarihan, espasyo, o kahit na badyet, baka gusto mong isaalang-alang ang paggamit ng Arduino Pro Mini. Hindi tulad ng Arduino Pro Micro, Arduino Pro Mi
Paano Mag-disassemble ng isang Dell Inspiron 15 5570 Laptop upang Mag-install ng isang M.2 SSD: 20 Hakbang
Paano Mag-disassemble ng isang Dell Inspiron 15 5570 Laptop upang Mag-install ng isang M.2 SSD: Kung nakita mong kapaki-pakinabang ang pagtuturo na ito, mangyaring isaalang-alang ang pag-subscribe sa aking Youtube channel para sa paparating na mga tutorial sa DIY tungkol sa teknolohiya. Salamat
Ngunit Isa pang Maituturo sa Paggamit ng DIYMall RFID-RC522 at Nokia LCD5110 Sa Isang Arduino: 8 Mga Hakbang (na may Mga Larawan)
Gayunpaman Isa pang Maituturo sa Paggamit ng DIYMall RFID-RC522 at Nokia LCD5110 Gamit ang isang Arduino: Bakit ko naramdaman ang pangangailangan na lumikha ng isa pang Maituturo para sa DIYMall RFID-RC522 at Nokia LCD5110? Kaya, upang sabihin sa iyo ang katotohanan na nagtatrabaho ako sa isang Patunay ng Konsepto noong nakaraang taon gamit ang pareho ng mga aparatong ito at kahit papaano " nalagay sa lugar "
Paano Mag-upgrade ng isang LAPTOP CPU (& Iba Pang Cool Stuff!) Upang I-Slow / DEAD Laptop sa isang FAST Laptop!: 4 Hakbang
Paano Mag-upgrade ng isang LAPTOP CPU (& Iba Pang Cool Stuff!) Upang I-Slow / DEAD Laptop sa isang FAST Laptop!: Howdy All! Kamakailan-lamang na Nakuha ko ang isang Packard Bell Easynote TM89 Laptop, na kung saan ay masyadong mababa ang nais para sa aking gusto, talaga napapanahon na … Ang LCD Ay basag at ang pangunahing hard drive ay kinuha hanggang sa gayon ang laptop ay mahalagang patay ….. Tingnan ang isang larawan
Ngunit Isa pang Flash Diffuser (dinisenyo para sa isang Canon 580EX II): 5 Hakbang
Ngunit Isa pang Flash Diffuser (dinisenyo para sa isang Canon 580EX II): Alam kong mayroong isang milyon sa mga ito doon ngunit dinisenyo ko pa rin ang aking sarili. Nais ko ang isa na mura at portable ngunit medyo propesyonal na hinahanap upang hindi maisip ng aking mga kliyente na ako ay isang kabuuang amature. Ang diffuser na ito ay idinisenyo para sa Canon 580