Skice ir programma, kas rakstīta Arduino platformai, un tai ir īpaša struktūra.

Vispirms vienkāršā, abstraktā veidā apskatīsim, kā jūsu dēlis darbojas no programmatūras perspektīvas. Arduino faktiski ir Atmega mikrokontrollera spraudnis (mikrokontrollera tapas novirza viegli lietojamās ieejās/izejās - tapās). Kā jūs pamanījāt, dažādās plates satur dažādus kontrolierus, un attiecīgi tiem ir dažādas tapu konfigurācijas. Ražotājs arduino platē instalē hex programmaparatūru (sāknēšanas ielādētāju), kas sākas pēc ieslēgšanas un nodod kontroli uz skici, kuru uzrakstījis un augšupielādējis lietotājs.

Skices struktūra:

Skicē jāiekļauj 2 funkcijas: funkcija uzstādīt un funkcija cilpa.

Kad tas ir ieslēgts, Arduino programmaparatūra izsauc iestatīšanas funkciju. Iestatīšanas funkcija tiek izsaukta tikai vienu reizi, katru reizi, kad tiek palaists dēlis. Šī vieta ir ideāli piemērota mainīgo inicializēšanai (sākotnējo vērtību iestatīšanai), tapu režīmu iestatīšanai (ieeja/izvade), pievienoto sensoru/servo/citu atbilstības iestatīšanai ar tapām. Pēc iestatīšanas funkcijas izpildes cilpas funkcija tiek izsaukta cikliski (t.i., uzreiz pēc iziešanas no iestatīšanas funkcijas tiek izpildīta cilpas funkcija, pēc iziešanas no tās tiek izsaukta vēlreiz. Process turpinās, līdz tiek izslēgta barošana.)

Lai to pastiprinātu, apskatīsim vienkāršu LED gaismas diodes mirgošanas skici (sava ​​veida klasiskā Hello World for Arduino). Vārds void pirms funkcijas nosaukuma norāda, ka funkcija neatgriež nekādas vērtības (tas atgriež "tukšums" - "tukšums"). Funkciju struktūru, jēdzienu un mērķi mēs apsvērsim turpmākajos rakstos.

nederīgs uzstādīt () { // Iestatīt 13-pin kā izvadi pinMode(13, OUTPUT); ) spēkā neesošs cilpa() (digitalWrite(13, HIGH); // iedegas LED kavēšanās (1000); // pagaidiet sekundi digitalWrite (13, LOW ); // izslēdziet LED kavēšanās (1000); // uzgaidi mazliet)

Kā jau vajadzētu būt skaidram, ieslēdzot dēli, tiks izsaukta iestatīšanas funkcija, kurā kā izvade tiks iestatīta tapa 13. Tālāk cilpas funkcija tiks izsaukta cikliski.

Apskatīsim skices augšupielādes procesu Arduino. Mēs apsvērsim visu Arduino IDE procesu. Darbības ir līdzīgas citās vidēs, un mēs uzskatām, ka tās nav jāapsver atsevišķi. Vispirms atveriet vidi un nokopējiet mūsu skici.

Noklikšķiniet uz pogas "Aizpildīt".

Kā redzam, mūsu programma tiek apkopota. Kompilācija ir process, kurā programmas kods tiek pārveidots no augstākā līmeņa valodas binārajā kodā, ko izpildīs mikrokontrolleris. Ja skice ir uzrakstīta bez sintakses kļūdām, tā tiks veiksmīgi apkopota un augšupielādēta arduino.

Mums bieži tiek uzdots jautājums, vai ir nepieciešams kaut kā notīrīt un izdzēst vecās skices pirms jaunu augšupielādes. Nav vajadzības. Augšupielādējot jaunu skici, no vecās nepaliek ne pēdas;)

Ielādējot pirmo skici, šāds sajūsmas stāvoklis nepamet uz ilgu laiku. Ir ļoti grūti aprakstīt veiksmes brīdī piedzīvoto, it īpaši, ja iepriekš nekad neesat nodarbojies ar programmējamu radioelektroniku. Manā galvā griežas domas un idejas, un es gribu ātri uzzināt, uz ko vēl šis PCB gabals un radio komponentu komplekts ir spējīgs! Ja esat pabeidzis Arduino uno R3 CH340G savienojuma un konfigurācijas darbību. pie datora, mēs varam turpināt tālāk norādītās darbības.

Pirmā skice nav jāmeklē internetā vai jāraksta pašam. Arduino IDE ir iepriekš instalētu bibliotēku un piemēru komplekts, ko varat izmantot savos projektos, turpmāk strādājot ar kontrolieri. Vispirms atveriet Arduino IDE un atveriet cilni Fails loga augšējā izvēlnē, pēc tam pārvietojiet peles rādītāju uz vienumu Piemēri. Skiču piemēru ir daudz, taču es iesaku kategorijā Pamata piemēri izvēlēties skici Mirkšķināt. Skice ir ļoti vienkārša, un tās demonstrēšanai nav nepieciešami nekādi papildu elementi.

Atlasot šo piemēru, tiek atvērts jauns Arduino izstrādes vides logs ar kontroliera programmaparatūras kodu, kas ir gatavs lejupielādei. Tas izskatās šādi.

Nedaudz apskatīsim, ko satur šī skice. No 1. līdz 23. rindiņai redzams pelēks teksts. Šis teksts ir informatīvs un apraksta lietotājam dažus šīs skices darbības parametrus, šīs skices autors var arī atstāt kontaktinformāciju par sevi. Šīs rindas tiek komentētas, un, mirgojot kontrollera programmaparatūru, tās tajā netiek ielādētas. Ir divi veidi, kā komentēt tekstu. Pirmā metode būs ērta, ja vajadzēs paslēpt vairākas rindiņas no ielādētāja; šajā gadījumā izmantojiet zīmi /* komentāru sākumā, */ komentāru beigās, tāpat kā pirmajā un divdesmit trešajā rindā. Otrā metode ir vairāk piemērota koda daļas vai jebkuras funkcijas aprakstīšanai; šim nolūkam // teksts vai kods, kas aizķerts aiz dubultās slīpsvītras // vienā rindiņā tiks paslēpts no ielādes kontrolierī, ko varam novērot pārējais kods. Starp citu, ja plānojat pats rakstīt skices nākotnē, tiek uzskatīts par labu formu atstāt skices darbības parametru aprakstu un komentārus par funkcijām. No apraksta, ko autors mums atstāja, ir skaidrs, ka šī skice liek kontrollera panelī iebūvētajai gaismas diodei, kas ir saistīta ar digitālo tapu 13, mirgot ar frekvenci 1000 milisekundes.

Man šķiet, ka jūs nevarat gaidīt, lai ātri kaut ko ielādētu savā Arduino. Lai to izdarītu, loga augšdaļā atrodiet 5 pogas un noklikšķiniet uz lejupielādes pogas.

Pēc pogas noklikšķināšanas sākas koda apkopošanas un kļūdu pārbaudes process. Ja koda lejupielāde ir veiksmīga, lejupielādes statusa josla mūs par to informēs.

Un uz kontrollera mēs varam novērot, kā LED, kas apzīmēts ar latīņu burtu L, sāk mirgot noteiktā frekvencē.

Lai labāk saprastu, kā šī skice darbojas, nedaudz rediģēsim kodu un redzēsim, kas ir mainījies. Dodieties uz koda 34. rindiņu un mainiet pauzes laiku, kavēšanās (1000); mainīsim uz kavēšanās (10000);.

Šo manipulāciju rezultātā ir mainījusies mūsu kontroliera darbības programma. Un tagad kontrollera LED iedegas nevis uz 1 sekundi, kā tas notika, ielādējot avota kodu, bet gan uz 10 sekundēm. Tagad 33. rindā programmatiski norādījām ieslēgt LED, un šī gaismas diode degs, līdz tiks saņemta cita komanda par to. Tāpēc 34. rindā mēs iestatām 10 sekunžu pauzi un 35. rindā izslēdzam LED. Tam vajadzētu izskatīties līdzīgi kā attēlā zemāk.

Man šķiet, ka sniegtā informācija ir pietiekama, lai sāktu strādāt ar kontrolieri, un es varu novēlēt jums panākumus un lieliskus rezultātus jūsu centienos.

Kad sāku strādāt pie Arduino, man šķita, ka visa pasaule dara to pašu. Patiesībā izrādījās, ka, tāpat kā man, daudziem vienkārši ir grūti iesākt, “iekļūt” pašā tēmā. Tāpēc es nolēmu uzrakstīt īsu rokasgrāmatu, lai jūs nekavējoties varētu paķert dažas sastāvdaļas un izmēģināt šo rotaļlietu. Iespējams, pēc izlasīšanas jūs pat uzreiz daudzējādā ziņā sapratīsit, kas ir kas pat bez maniem turpmākajiem ierakstiem. Tātad.

Ja neesat izmēģinājis Arduino tikai tāpēc, ka nevarat sākt, nezinot, kas ir kas, es jūs tagad izglābšu.

Arduino ir tikpat vienkāršs kā Lego. Bet, kad viņi sāk to izskaidrot, parādās virkne modējošo vārdu: izstrādes vide, aparatūra, akmens, programmaparatūra, bibliotēka, draiveris, skice, izpildāmais fails, komponenti, programmēšanas prasmes, programmatūra un aparatūra, ar Arduino saderīga platforma... Kas gribas te trakot?Tā derēs, tik ļoti jāsarežģī vienkāršs rotaļlietu komplekts bērniem! =)
Patiesībā viss ir vienkārši: mums ir pats Arduino — tās ir mūsu nākotnes rotaļlietu smadzenes, kuras mēs ar to saliksim.

Mums ir divi gatavi vairogi, no kuriem izvēlēties. Kāpēc? Tagad mēs “pievienosim” Arduino vienā vairogā, redzēsim, kā tas darbojas, un pēc tam pārprogrammēsim to un pievienosim citam - un vēlreiz pārliecināsimies, ka tas darbojas. Tādā veidā mums tas uzreiz kļūs skaidrs, un varēsim doties tālāk - par laimi, kopā ar Arduino ir daudz virzienu attīstībai.

2. Instalējiet IDE kā parastu programmu.
Uzziniet vairāk: operētājsistēmai Windows

3. Pievienojiet Arduino, izmantojot USB

4. Palaidiet IDE (ar superlietotāja tiesībām, ja tas jums kaut ko nozīmē. Ja nē, tad aizmirstiet par šīm tiesībām. Ja jā, lejupielādējiet versiju 1.0.1 - viss, kas ir vecāks, Linux darbojas greizi).

5. Izvēlieties Arduino veidu. (Visticamāk, tas tiks atlasīts automātiski. Bet mūsu rokās ir Arduino Nano 3.0 komplekts, un uz kvadrātveida procesora augšpusē ir rakstīts Amtel Mega 328p - tas nozīmē, ka mēs izvēlnē izvēlamies Nano ATmega328).

6. Pārbaudiet, vai dators redz Arduino: tā ports, caur kuru mēs to savienojām, ir redzams.

Vai viss ir gatavs? Tagad izdomāsim, ko un kā ielādēt, un pēc 5 minūtēm mūsu jaunā vairoga spuldzes (diodes!) jautri izgaismos mūsu māju.

Problēmu novēršana:

Ja ports nav atrasts, atvienojiet visu un aizveriet programmu. Atkārtoti pievienojiet Arduino, varbūt uz jaunu portu, atveriet programmu. Tā ir kā mobilā lietotne jūsu tālrunī: ja tā sasalst, jūs to restartējat un tā atkal darbojas. Tas pats problēmu novēršanas princips ir šeit. =)

3. darbība: izmantojiet skici un bibliotēku, kā paredzēts

Šeit sākas burvība! =) Bet nez kāpēc tieši šajā aizraujošajā brīdī skaidrojumi bija visgarlaicīgākie:

Lai programmētu mikrokontrolleru, mums ir trīs veidu faili: .h, .cc, .ino Faili tiek apkopoti, zvani tiek nosūtīti uz bibliotēkām. Tas viss ir uzrakstīts C valodā, kas darbojas ar funkcijām, mainīgajiem, pēc kā C valodā rakstītā programma kļūst saprotama mikrokontrolleram, tiek tulkota mašīnkodā - apkopota un pēc tam ielādēta kontrollerī. Jūs nevarat iedomāties, cik ļoti mums tas tagad nerūp =) Viss ir daudz vienkāršāk.

Atveriet visas nepieciešamās bibliotēkas (skatiet attēlu) + nokopējiet skici šeit. Sastādīt. Lejupielādēt. Gatavs! Varat ievietot Arduino atpakaļ radio vairogā un atkal ieslēgt to (radio).

Lūk, cik ātri mēs tikām galā ar:

1. Kā pārprogrammēt Arduino dažādiem vairogiem, izmantojot gatavas skices un bibliotēkas.
2. Kāpēc mums ir vajadzīga skice, kāpēc mums ir vajadzīga bibliotēka. Ko kur likt.
3. Kā strādāt ar Arduino IDE programmu, lai kopā ar bibliotēku augšupielādētu skici.

Kā redzat, viss ir vienkārši. Man bija vajadzīgas vairākas dienas, lai “ievācos iekšā” pati. Ceru, ka šajās pāris dienās kādu izglābšu. Veiksmi ar Arduino DIY un tiekamies atkal: es plānoju izdomāt daudz vairāk, pamatojoties uz maniem moduļiem un komponentiem, un noteikti dalīšos ar jums savās idejās un prasmēs.

Tradicionāli raksta beigās - paldies!

Liels paldies lietotājam

Šajā projektā es vēlos parādīt, kā augšupielādēt skici Arduino, izmantojot parasto ierīci, kuras pamatā ir Android operētājsistēma. Šī ierīce var būt noderīga pastāvīgi uzstādītām Arduino plāksnēm, piemēram, apgaismojuma kontrolieriem...

1. darbība: materiāli un rīki

Materiāli:

USB-A uz USB-B kabelis
USB uz resursdatora kabelis (OTG kabelis)
Arduino
1 LED (testēšanai)
Android ierīce, Android OS versija 4.0.0 vai jaunāka (vai ar resursdatora režīma atbalstu)

Programmatūra:

ArduinoDroid vai ArduinoCommander, ko var lejupielādēt no Google Play veikala

2. darbība: USB uz resursdatora kabelis

USB uz resursdatora kabelis būtībā ir tāds pats kā USB kabelis, taču mikro USB savienotājam ir dažādi rezistori. Iekšējie rezistori ļauj Android ierīcei aktivizēt USB resursdatora režīmu. Šajā režīmā varat izmantot arī USB zibatmiņas diskus vai citas ierīces, kas atbalsta USB interfeisu. Šī ir ļoti noderīga funkcija, un tagad jūs pat varat pievienot USB printeri.

Problēma ir tāda, ka, tiklīdz USB ierīce ir pievienota, tā saņems strāvu no resursdatora ierīces, tādējādi izlādējot akumulatoru.

3. darbība. Savienojumi

Šis ir ļoti vienkāršs solis un neprasa īpašu uzmanību. Vienkārši pievienojiet USB-A–USB-B kabeli resursdatora kabeļa USB spraudnim. Pēc tam pievienojiet USB-B savienotāju Arduino un Micro USB savienotāju Android ierīcē.

4. darbība: ieslēdziet Arduino

Visi savienojumi jāveic, kā parādīts fotoattēlā. Pēc tam varat ieslēgt savu Arduino un ielādēt tajā jaunāko lejupielādēto kodu. Es savā Arduino izmantoju Blink skici. Ja Arduino nesākas, pārbaudiet, vai savienojumi ir pareizi.

5. darbība. Pieteikumi

Tagad Arduino ir gatavs koda lejupielādei, taču jūsu Android ierīce vēl nav...

Mainīsim šo situāciju!

Pašlaik ir divas lietojumprogrammas, kas ļauj strādāt ar mūsu Arduino, izmantojot resursdatora režīmu.

Lai tos lejupielādētu, dodieties uz Play veikala vietni un pēc tam meklēšanas joslā ievadiet "Arduino". Pēc tam noklikšķiniet uz "Programmas", pēc tam tiks parādītas tikai programmas. Mums ir vajadzīgas divas lietojumprogrammas: "ArduinoDroid" un "ArduinoCommander". Instalējiet tos, pēc tam palaidiet "ArduinoDroid". Šai lietojumprogrammai ir jāatjaunina IDE, kas prasīs kādu laiku. Tālāk būs nepieciešama lietojumprogramma "ArduinoCommander".

Piezīme: nav nepieciešams izmantot abas lietojumprogrammas vienlaikus, es tikai vēlos parādīt, kā abas darbojas!

6. darbība: ArduinoCommander, programmas autors Antons Smirnovs

Nu, sāksim ar ArduinoCommander lietojumprogrammu. To izstrādāja Antons Smirnovs Andorid versijai 2.2 vai jaunākai versijai.

Šī lietojumprogramma ir paredzēta darbam ar Arduino, izmantojot Android ierīci. Ar to jūs varat viegli mainīt tapu stāvokļus (tieši iestatīt augstu vai zemu), augšupielādēt skices vai lasīt analogās tapas osciloskopa režīmā.

Šī lietojumprogramma ir viegli saprotama, pat ja vadības ierīces ir nestandarta. Tas automātiski nosaka Arduino un darbojas ļoti stabili.

Tomēr dažas funkcijas nedarbojas. Es ceru, ka šīs kļūdas tiks novērstas nākamajās lietojumprogrammas versijās. Skices augšupielāde bija veiksmīga!

Es piešķiru šai lietojumprogrammai 4.0 no 5 zvaigznēm.

Tagad īsi apskatīsim savienojumu ar Arduino.

7. darbība: 1. daļa

Citas iespējas ietver:
Ethernet
Bluetooth
USB-ekstras

8. darbība: 2. daļa

Tagad noklikšķiniet uz "Automātiski noteikt". Android ierīce automātiski meklēs Arduino un pēc tam parādīs to ekrānā. Tagad atlasīsim mūsu Arduino (vienkārši noklikšķiniet uz tā).

9. darbība: 3. daļa

Pēc iepriekšējās darbības pabeigšanas mūsu Arduino tiks parādīts ekrānā. Tas parasti tiek parādīts krāsā, un jūs varat noklikšķināt uz tapām, lai mainītu to režīmu. Tomēr režīma izvēle man nedarbojās, un es nevarēju novērst šo problēmu; Varbūt viss darbosies jūsu labā bez neveiksmēm. Noklikšķinot uz apakšējā labajā stūrī, tiks atvērta izvēlne, kas ļaus lejupielādēt skices no SD kartes. Šī funkcija darbojas ļoti labi.

10. darbība: ArduinoDroid

Tagad pāriesim uz citu lietojumprogrammu, kas ļauj augšupielādēt skices savā Arduino. Šo lietojumprogrammu sauc par "ArduinoDroid", un tā darbojas Android versijā 4.2.2 vai jaunākā versijā. Arī šī pieteikuma autors ir Antons Smirnovs!