Satura rādītājs:
- 1. darbība. Kurpju stiprinājuma izveide
- 2. darbība: Avrdude instalēšana un lietošana
- 3. darbība. Arduino programmu pievienošana AVR
Video: AVR/Arduino mirgo ar Raspberry Pi: 3 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:55
Sistēmas programmētājs (ISP) ir ierīce, kuru varat izmantot daudzu mikrokontrolleru programmēšanai, piemēram, ATMega328p, kas ir Arduino Uno smadzenes. Jūs varat iegādāties kaut ko līdzīgu USBtinyISP vai pat izmantot Arduino. Šī pamācība parādīs, kā lietot Raspberry Pi kā ISP.
Programmu avrdude, ko Arduino IDE zem pārsega izmanto mikroshēmu zibspuldzei, var izmantot kopā ar daudziem programmētājiem. Viena no tās iespējām ir izmantot SPI tapas Pi paplašināšanas portā. Es paskaidrošu, kā izveidot atbilstošus savienojumus, salikt vienkāršu shēmu uz perfboard, lai jums nebūtu jāpārslēdz elektroinstalācija katru reizi, kad vēlaties mirgot mikroshēmā, un kā instalēt un lietot avrdude. Es arī parādīšu, kā ar šo metodi iegūt programmas, kas apkopotas, izmantojot Arduino IDE, uz AVR mikroshēmas, piemēram, ATmega vai ATtiny.
Nepieciešamās lietas:
- Raspberry Pi ar instalēto jaunāko Raspbian
- 40 kontaktu ligzda vīriešiem (vai 26 tapas, ja jums ir vecāks Pi)
- IDE kabelis, lai izveidotu savienojumu ar jūsu Pi
- 16 MHz kristāla rezonators
- 22 pF kondensatori (2)
- LED (1), kas norāda programmētāja statusu
- 8, 14 un/vai 28 kontaktu IC ligzdas, atkarībā no tā, kādas formas mikroshēmas vēlaties mirgot
- Daži perforators, vadi, lodēt
1. darbība. Kurpju stiprinājuma izveide
Seriālā perifēriskā saskarne (SPI), saukta arī par četru vadu seriālu, ir saziņas veids starp vienu galveno ierīci un vienu vai vairākām palīgiekārtām. Mēs to izmantosim mikroshēmu zibspuldzei, Pi kā galveno un mikroshēmu kā vergu. Jūs izveidosit šādus savienojumus starp Pi un mikroshēmu (lai uzzinātu, kuras tapas ir), skatiet iepriekš minētos kontaktus dažādiem AVR un Pi paplašināšanas portiem:
- Savienojiet kopā MOSI (master-out-slave-in) tapas
- Savienojiet SCLK (koplietošanas pulksteņa) tapas kopā
- Pievienojiet MISO (master-in-slave-out) tapas kopā ar 220 omu rezistoru, lai pasargātu Pi no negaidīti augsta mikroshēmas sprieguma
- Pievienojiet GPIO 25 uz Pi tieši mikroshēmas RESET tapai. Programmēšanas laikā Pi izvelk šo tapu zemu, tāpēc mēs izmantojam 10K rezistoru, lai tas būtu augsts, kad neprogrammējam, un LED ar 1K aizsardzības rezistoru, kas darbojas līdz pozitīvam spriegumam, lai programmēšanas laikā sniegtu mums jauku vizuālu atgriezenisko saiti.
Mēs savienojam zemējuma un strāvas (3.3 V) tapas starp Pi un mikroshēmām, kuras mēs vēlamies programmēt. Ja jūs vēl nezināt, Raspberry Pi tapas nav izturīgas pret 5 V - tie tiks sabojāti, ja uz tiem parādīsies vairāk nekā 3,3 V. Ja programmētajām mikroshēmām kāda iemesla dēļ ir nepieciešama 5 V jauda, mēs varētu izmantot līmeņa pārslēdzēja mikroshēmu, lai aizsargātu Pi tapas, taču es neesmu saskāries ar problēmām, izmantojot 3.3 V - tāpēc es iesaku to spēlēt droši un ietaupīt uz komponentiem.
Visbeidzot, mēs savienojam 16MHz kristāla oscilatoru pāri mikroshēmas XTAL tapām, ko arī savienojam ar zemi, izmantojot pāris 22pF kondensatorus. AVR mikroshēmas var iestatīt darbam dažādās frekvencēs, kā arī var iestatīt, lai šīs frekvences noteikšanai izmantotu iekšēju vai ārēju avotu. Ja jūsu mikroshēma ir iestatīta kā ārējs kristāls kā frekvences avots, jūs bez tā nevarēsit pārprogrammēt. Pretējā gadījumā nav svarīgi, vai tas ir tur.
Jūs varat izmantot ķēdes shēmu pēdējā attēlā kā ceļvedi kurpju stiprinājuma montāžai uz perforatoru. Jums var būt tik daudz vai maz dažādu formu IC ligzdu, cik vēlaties, vienkārši pievienojiet atbilstošās tapas paralēli Pi un kristālam. N. B. ja jūs izmantojat mana prototipa attēlu kā ceļvedi, ņemiet vērā, ka es pievienoju dažas papildu galvenes tapas un kontaktligzdas, lai es varētu piekļūt Pi tapām nesaistītu iemeslu dēļ.
2. darbība: Avrdude instalēšana un lietošana
Lai instalētu avrdude savā Pi, vienkārši ierakstiet
sudo apt-get install avrdude
Pēc tam jums būs jāiespējo SPI saskarne, ja tā vēl nav ieslēgta. Lai to izdarītu, ir komandrindas veids, taču ir daudz vieglāk izmantot Raspberry Pi konfigurācijas rīku. Tips
sudo raspi-config
un dodieties uz saskarnes opcijām, lai ieslēgtu SPI.
Lai uzliesmotu mikroshēma, pievienojiet lentes kabeli no jūsu Pi savienotājam uz perfboard shēmas un ievietojiet mikroshēmu atbilstošajā IC ligzdā (pārliecinieties, vai tā ir vērsta pareizajā virzienā).
Mirgojot ar programmu, jums arī jāpārliecinās, ka mikroshēmā ir pareizi iestatīti drošinātāji. Tie tiešām ir tikai biti mikroshēmā, kuru iestatījāt, lai norādītu, ar kādu pulksteņa ātrumu darboties, vai dzēst EEPROM, rakstot mikroshēmu, utt. Jūs varētu izlasīt pilnu AVR specifikāciju, lai noskaidrotu, kā iestatīt katru bitu, bet ir daudz vieglāk izmantot drošinātāju kalkulatoru, kas pieejams vietnē engbedded.com/fusecalc. Atlasiet izmantoto AVR daļas nosaukumu un apgabalā "Funkciju izvēle" izvēlieties vajadzīgās opcijas. Es parasti tikai pārliecinos, ka pulksteņa iestatījumi ir pareizi, un pārējās lietas atstāju pēc noklusējuma. Gandrīz vienmēr vēlaties atstāt “Sērijveida programmēšana iespējota” PĀRBAUDĪTU un “Atiestatīt atspējotu” NEPĀRBAUDĪTU - pretējā gadījumā jūs nevarēsit pārprogrammēt mikroshēmu. Ja jums ir pareizi iestatījumi, varat ritināt uz leju apgabalu "Pašreizējie iestatījumi" un nokopēt AVRDUDE argumentus, kā parādīts attēlā.
Lai iestatītu drošinātājus, ievadiet komandu
sudo avrdude -c linuxspi -P /dev/spidev0.0 -p
kur daļas nosaukums atbilst jūsu izmantotajai mikroshēmai. Daļu nosaukumu sarakstu var atrast, ievadot sudo ardude -c linuxspi -p? Tipu. Lai aktivizētu programmu, pārliecinieties, vai tā ir jūsu pašreizējā direktorijā, un ievadiet
sudo avrdude -c linuxspi -P /dev/spidev0.0 -p -U flash: w:: i
Pēc abām komandām gaismas diode iedegsies mikroshēmas modificēšanas laikā.
3. darbība. Arduino programmu pievienošana AVR
Šīs pamācības galvenais uzsvars tiek likts uz jau apkopotu programmu pārvilkšanu mikroshēmās, nevis uz to rakstīšanu vai apkopošanu. Tomēr es gribēju paskaidrot, kā jūs varat apkopot bināros failus, izmantojot Arduino IDE, un iegūt tos uz tukšām AVR mikroshēmām, izmantojot šo metodi, jo Arduino ir samērā viegli iemācīties, un ir tik daudz pamācību un piemēru.
Pirmkārt, jums būs jāpievieno informācija par jūsu mirgojošajām AVR mikroshēmām, lai IDE zinātu, kā tām apkopot. Džeimss Sleemans ir ļoti noderīgi salicis dažus iestatīšanas failus, kas ir pieejami vietnē github. Lai tos izmantotu, Arduino IDE atveriet izvēlni "Preferences" un noklikšķiniet uz lodziņa blakus laukam "Papildu dēļu pārvaldnieka vietrāži URL". Parādītajā dialoglodziņā nokopējiet un ielīmējiet šādus URL:
Pēc tam dodieties uz izvēlni "Rīki" un apakšizvēlnē "Dēlis" atrodiet opciju "Dēļu pārvaldnieks …". Dialoglodziņā Boards Manager ritiniet uz leju līdz saraksta beigām un instalējiet DIY ATmega un DIY ATtiny dēļus.
Lai apkopotu savas programmas, vispirms pārliecinieties, vai izvēlnē "Procesors" esat izvēlējies pareizo mikroshēmu, kā arī pareizu procesora ātrumu. Atlasiet opciju "Izmantot sāknēšanas ielādētāju: nē", jo mēs augšupielādēsim tieši ar Pi un tādējādi varēsim izmantot papildu vietu, ko parasti aizņem Arduino sāknēšanas ielādētājs. Tagad noklikšķiniet uz pogas “Verificēt” (atzīme). Tas apkopos jūsu programmu, nemēģinot to augšupielādēt (jo jūs pats veicat šo darbību).
Pieņemot, ka viss notiek labi, tagad jums jāiegūst apkopotā programma savā Pi. IDE tos slēpj pagaidu vietā, jo tā ir paredzēta programmu augšupielādei. Operētājsistēmā Windows tas atrodas lietotāja direktorijā AppData/Local/Temp mapē, kas sākas ar “arduino_build”. Meklējiet.hex failu - tā ir jūsu programma! Nosūtiet to uz savu Pi, izmantojot FTP vai ar USB zibatmiņu, un jūs sākat biznesu.
Lai to izdarītu, jums ir nepieciešams Windows PC vai Mac, lai apkopotu savas programmas, kuras pēc tam nosūtāt uz Pi. Būtu patiešām slidens, ja to varētu izdarīt pašā Pi, bet diemžēl Raspbian krātuvē pieejamā oficiālā Arduino IDE versija ir diezgan veca un tai nav padomes pārvaldnieka. Bez tā atbilstošu iestatījumu pievienošana tukšiem AVR ir nedaudz sarežģītāka. Tur ir apmācības, lai savā Pi apkopotu jaunāku Arduino versiju - ja vēlaties to darīt, atrodiet tās! Es arī uzskatu, ka vajadzētu būt iespējai panākt, lai IDE izmantotu linuxspi programmētāju, lai mirgot mikroshēmu no paša IDE (ti, izmantojot pogu "lejupielādēt"), taču tas pārsniedz manu pacietību un prasmju līmeni - ja jūs zināt veids, ievietojiet to komentāros! Visbeidzot, jūs varētu vienkārši rakstīt programmas tieši AVR-C un apkopot tās uz Pi, izmantojot avr-gcc, sniedzot jums pilnīgu AVR izstrādes platformu Raspberry Pi. Es to esmu izdarījis pavisam nedaudz, un, ja jūs vēlaties iet šo ceļu, es jūs apsveicu. Mirgo!
Ieteicams:
Arduino programmēšana, izmantojot mobilo tālruni -- Arduinodroid -- Arduino Ide Android ierīcēm -- Mirgo: 4 soļi
Arduino programmēšana, izmantojot mobilo tālruni || Arduinodroid || Arduino Ide Android ierīcēm || Mirgo: lūdzu, abonējiet manu youtube kanālu, lai iegūtu vairāk videoklipu …… Arduino ir tāfele, kuru var programmēt tieši, izmantojot USB. Tas ir ļoti vienkārši un lēti koledžas un skolas projektiem vai pat produktu prototipam. Daudzi produkti vispirms balstās uz to, lai
LED mirgo ar Raspberry Pi - Kā lietot GPIO tapas Raspberry Pi: 4 soļi
LED mirgo ar Raspberry Pi | Kā lietot GPIO tapas Raspberry Pi: Sveiki, puiši, šajā instrukcijā mēs iemācīsimies izmantot Raspberry pi GPIO. Ja jūs kādreiz esat izmantojis Arduino, iespējams, jūs zināt, ka mēs varam pieslēgt LED slēdzi utt. Un piespiest to darboties. lai mirgo gaismas diode vai saņemtu ievadi no slēdža, lai
AVR mikrokontrolleris. Gaismas diodes mirgo, izmantojot taimeri. Taimeri pārtrauc. Taimera CTC režīms: 6 soļi
AVR mikrokontrolleris. Gaismas diodes mirgo, izmantojot taimeri. Taimeri pārtrauc. Taimera CTC režīms: Sveiki visiem! Taimeri ir svarīgs jēdziens elektronikas jomā. Katra elektroniskā sastāvdaļa darbojas uz laika bāzes. Šī laika bāze palīdz visu darbu sinhronizēt. Visi mikrokontrolleri darbojas ar noteiktu pulksteņa frekvenci
Raspberry Pi LED mirgo: 5 soļi (ar attēliem)
Raspberry Pi LED mirgo: Tagad jūs uzzināsit vienkāršāko projektu, ko varat izveidot, izmantojot aveņu pi. Ja jūs to vēl nezināt, es runāju par mirgošanas programmu, kā redzams arduino. Es izmantoju dažas ļoti izplatītas lietas, par kurām varat uzzināt nākamajā
Arduino apmācība: mirgo LED: 3 soļi
Arduino apmācība: mirgo LED: vai esat noguris no visiem citiem norādījumiem par LED mirgošanu? nu kā būtu ar mirgojošu LED? eh? ir dīvains viss par gaismas diodes mirgošanu