Koodin kirjoittaminen Arduinolle. setup()- ja loop()-funktiot. Analogiset mikro-ohjaimet

IT-matkan aloittaminen voi olla erittäin vaikeaa, jo pelkästään siksi, että ympärillä olevia teknologioita tarkasteltaessa on mahdotonta erottaa "laitteiston" kiinnostusta ohjelmistoon. Toisaalta on halu luoda laite, jolla on moitteeton ulkonäkö, monia antureita ja rajattomat mahdollisuudet, toisaalta tietojenkäsittelyn mysteeri, halu maksimoida suorituskyky laiminlyömättä toimivuutta. Arduino on ensimmäinen askel kohti mahtavia keksintöjä, jotka eivät vaadi syvällistä tietoa piirisuunnittelusta tai ohjelmointikokemusta.

Mikä on Arduino

Jos sanot asian oikeilla nimillä, niin Arduino on rakennussarja niille, jotka ovat kyllästyneet luomaan hyödyttömiä kuvia ja haluavat antaa niille ainakin vähän elämää. Yksinkertaisimmassa tapauksessa Arduino on piirilevy, jolla on ohjain, kristallioskillaattori, ADC/DAC, useita liittimiä, diodeja ja painikkeita. Loput on omistajan työtä: luo halutessasi robotti, jos haluat, ohjelmisto- ja laitealusta ”älykkään” kotiin tai unohda käytännön edut ja pidä hauskaa.

Tietysti se riippuu. Kuinka pitkälle haluat mennä kokeiluillasi, haluatko suodattaa hauskaa tai muuttaa Arduinon alustaksi omien tulojesi hankkimiseen, sinun on parannettava sekä laitteistosuunnittelua että ohjelmointikielten oppimista. Puhutaanpa vähän enemmän jälkimmäisestä tänään.

Arduino on melko rajallinen alusta ohjelmointiominaisuuksien suhteen, etenkin verrattuna Raspberry Pi:hen. Koska sisäänpääsykynnys on kohtuuttoman alhainen (perusopetusohjelma vie 3 A4-arkkia), et voi luottaa moniin kieliin ilman lisämoduuleja. Se perustuu C/C++:aan, mutta käyttämällä erilaisia ​​IDE:itä ja kirjastoja pääset käyttämään Pythonia, C#:a, Goa ja lasten suosikkeja, kuten Snap! ja ArduBlock. Puhumme lisää siitä, miten, milloin ja kenelle niitä käytetään.

C/C++

Arduino-alustan peruskieli, jota käytetään tietyin muokkauksin ja yksinkertaistuksin vakioohjelmiston kuoressa. Etsi kaikki käytettävissä olevia komentoja"aloittelijalle" se on mahdollista, mutta kukaan ei estä sinua käyttämästä sitä alkuperäiset valmiudet C++-kieli, lisäosia ei tarvita. Jos haluat pelata "puhtaalla" C:llä, palveluksessasi on ohjelma, joka on nimensä mukaisesti suunniteltu vuorovaikutukseen Windows-käyttöjärjestelmän ja Arduinossa käytetyn AVR-sarjan MK:n välillä. Tarkemman oppaan voit lukea täältä.

Ardublock

Siirrytään väliaikaisesti aikuisten kielistä lasten suosikkikieleen Scratch, tai pikemminkin sen mukauttamiseen - Ardublock. Kaikki on sama täällä, mutta mukautumalla alustaasi: värilliset lohkot, rakentaja, venäläiset nimet, yksinkertainen logiikka. Tämä vaihtoehto on loistava myös niille, jotka eivät ole perehtyneet ohjelmointiin ollenkaan. Aivan kuten Logo-kielessä voit siirtää virtuaalikilpikonnaa virtuaalitasolla, täälläkin yksinkertaisten toimintojen avulla voit kiinnostaa lapsen todelliseen tulkintaan hänen ohjelmatoimistaan.

Kyllä, muuten, käyttääksesi sitä sinun on asennettava se tavalliseen Arduino IDE:hen. On parempi olla tarttumatta uusimpiin versioihin, ne ovat melko monimutkaisia, vuoden 2013 lopulla päivätty versio riittää aluksi. Asentaaksesi nimeä ladattu tiedosto uudelleen nimellä "ardublock-all" ja laita se "My Documents/Arduino/tools/ArduBlockTool/tool" -kansioon. Jos sitä ei ole olemassa, luomme sen. Jos et ymmärrä jotain, tässä on lisätietoja.

Snap!

Verrattuna Ardublockiin, Snap! sisältää edistyneitä ominaisuuksia lisälohkojen muodossa, mahdollisuuden käyttää luetteloita ja toimintoja. Eli Snap! yleisesti ottaen se näyttää jo aikuisten ohjelmointikieleltä, ottamatta huomioon, että sinun on vielä pelattava koodisuunnittelijaa.

Jotta voit käyttää tätä kieltä, sinun on mentävä osoitteeseen snap4arduino.org ja ladattava käyttöjärjestelmällesi tarvittavat komponentit. Täältä löydät asennus-, käyttö- ja videoesimerkit.

Python

Muodollisesti voit ohjelmoida Arduinoon jopa Piet-kielellä, koska käännät asianmukaisella sinnikkällä konekoodi mitään. Mutta koska Python on yksi suosituimmista kielistä, jossa on lähes optimaalinen monimutkaisuuden/ominaisuuksien yhdistelmä, olisi naurettavaa jättää huomiotta sen soveltuvuus Arduinoon. Voit aloittaa Python-opiskelun ilmaisellamme

Tämä osio on omistettu Arduinon maailman kirjoille. Aloittelijoille ja ammattilaisille.

Kaikki kirjat ja materiaalit esitetään vain tiedoksi lukemisen jälkeen, pyydämme sinua ostamaan digitaalisen tai paperikopion.

Ohjelmat kirjojen lukemiseen:

  • Kirjat PDF-muodossa: Adobe Acrobat Reader tai PDF Reader.
  • Kirjat DJVU muoto: tai Djvu Reader.

Käytännön Arduino Encyclopedia

Kirjassa on yhteenveto tiedoista Arduino-alustaan ​​perustuvien designien pääkomponenteista, jota edustaa ArduinoUNO:n tämän hetken suosituin versio tai lukuisat sen kaltaiset kloonit. Kirja koostuu 33 kokeellisesta luvusta. Jokaisessa kokeessa tarkastellaan Arduino-levyn toimintaa tietyllä elektronisella komponentilla tai moduulilla, yksinkertaisimmasta monimutkaisimpiin, jotka ovat itsenäisiä erikoislaitteita. Jokaisessa luvussa on luettelo yksityiskohdista, jotka ovat tarpeen kokeen suorittamiseksi käytännössä. Jokaiselle kokeilulle tarjotaan visuaalinen kaavio osien kytkennästä integroidun Fritzing-kehitysympäristön muodossa. Se antaa selkeän ja tarkan kuvan siitä, miltä kootun piirin tulisi näyttää. Seuraavassa on teoreettista tietoa käytetystä komponentista tai moduulista. Jokainen luku sisältää luonnoskoodin (ohjelman) sisäänrakennetulla Arduino-kielellä kommentteineen.

Elektroniikka. Ensimmäinen nelikopterisi. Teoria ja käytäntö

Nelikopterien itsevalmistuksen ja käytön käytännön näkökohdat kuvataan yksityiskohtaisesti. Kaikki vaiheet huomioidaan: rakennemateriaalien valinnasta ja komponenttien valinnasta taloudelliset kustannukset minimoimalla ohjelmiston konfigurointiin ja korjaukseen onnettomuuden jälkeen. Huomiota kiinnitetään virheisiin, joita aloittelevat lentomallinnajat usein tekevät. IN saatavilla olevaan muotoon annetaan moniroottorijärjestelmien lennon teoreettiset perusteet ja ympäristön kanssa työskentelyn peruskäsitteet Arduino IDE. Lyhyesti kuvataan GPS- ja Glonass-järjestelmien rakenne ja toimintaperiaate sekä nykyaikaiset pulssivirtalähteet ja litiumpolymeeriakut. OSD-järjestelmien, telemetrian, langattoman Bluetooth-kanavan ja suosittujen Ublox GPS-navigointimoduulien toimintaperiaate ja asennusprosessi kuvataan yksityiskohtaisesti. Integroitujen antureiden ja lennonohjaimen suunnittelu ja toimintaperiaatteet kuvataan. FPV-laitteiden valintaa koskevat suositukset annetaan lähtötaso, tarjoaa yleiskatsauksen tietokoneiden ja älypuhelimien ohjelmista, joita käytetään nelikopterilaitteiden asennuksessa.

Projektit, joissa käytetään Arduino-ohjainta (2. painos)

Kirja kattaa tärkeimmät Arduino-levyt ja laajennuslevyt (kilvet), jotka lisäävät toiminnallisuutta emolevyyn. Arduino IDE -ohjelmointikieli ja -ympäristö kuvataan yksityiskohtaisesti. Projektit, joissa käytetään Arduino-perheen ohjaimia, analysoidaan huolellisesti. Nämä ovat projekteja robotiikan, sääasemien luomisen, älykkään kodin, myyntiautomaattien, television, Internetin, langattoman viestinnän (bluetooth, radio-ohjaus) alalla.

Toinen painos lisää ääniohjausprojekteja käyttäen Arduinoa, joka toimii osoitteellisilla RGB-nauhoilla ja ohjaa iRobot Create -ohjelmaa Arduinossa. Arduino Leonardo -levyä käyttävät projektit huomioidaan. Aloitteleville kehittäjille tarjotaan vaiheittaisia ​​oppitunteja.

Arduinon oppiminen: työkalut ja tekniikat tekniseen velhoon

Kirja on omistettu Arduino-mikrokontrollerialustaan ​​perustuvien elektronisten laitteiden suunnittelulle. Tarjoaa perustiedot Arduino-laitteistosta ja -ohjelmistosta. Ohjelmoinnin periaatteet integroidussa Arduino IDE:ssä on hahmoteltu. Näyttää kuinka analysoida sähkökaaviot, lue tekniset kuvaukset, valitse oikeat osat omiin projekteihisi. Käyttöesimerkkejä ja kuvauksia eri antureista, sähkömoottoreista, servoista, indikaattoreista, langallisista ja langattomista tiedonsiirtoliitännöistä on annettu. Jokaisessa luvussa luetellaan käytetyt komponentit, on kytkentäkaavioita ja kuvataan ohjelmaluettelot yksityiskohtaisesti. Siellä on linkkejä kirjan tietotukisivustolle. Materiaali keskittyy yksinkertaisten ja edullisien komponenttien käyttöön kotikokeissa.

Pika aloitus. Ensimmäiset askeleet Arduinon hallitsemiseksi

Varaa ARDUINO Pika-aloitus. First Steps to Mastering ARDUINO sisältää kaikki tiedot Arduino-levyyn tutustumiseen sekä 14 käytännön koetta erilaisilla elektronisilla komponenteilla ja moduuleilla.

Nopea aloitus Arduino-sarjalla. Saadulla tiedolla on jatkossa mahdollista luoda omia projekteja ja toteuttaa niitä helposti.

Arduino, anturit ja verkot laiteviestintään (2. painos)

Harkinnassa on 33 Arduino-mikrokontrollerikorttiin perustuvaa projektia, jotka osoittavat, miten elektroniset laitteet pystytään vaihtamaan tietoja keskenään ja reagoimaan komentoihin. Näyttää, kuinka asetuksia muutetaan kodin ilmastointilaite"soittamalla hänelle" älypuhelimesta; kuinka luoda omia peliohjaimia, jotka ovat vuorovaikutuksessa verkon yli; kuinka käyttää ZigBee-, Bluetooth-, infrapuna- ja tavallisia radiolaitteita tiedon vastaanottamiseen langattomasti eri antureilta jne. Ohjelmointikieliä Arduino, Processing ja PHP harkitaan.

Kun olet lukenut kirjan - "Arduino, anturit ja verkot laitteiden yhdistämiseen", opit luomaan älylaitteiden verkkoja, jotka vaihtavat tietoja ja vastaavat komentoihin. Kirja on ihanteellinen ihmisille, jotka haluavat laittaa oman luovia ideoita. Sinulla ei tarvitse olla erityisiä teknisiä tietoja tai taitoja elektroniikka-alalla Projektien toteuttamisen aloittamiseen tarvitset vain kirjan, ideoita ja edullisen paketin, jossa on Arduino-ohjain ja joitain verkkomoduuleja ja antureita.

Arduino Essentials

Arduino on avoimen lähdekoodin yhdelle piirilevylle rakennettu mikro-ohjain, joka pystyy vastaanottamaan aistisyötteitä ympäristöstään ja ohjaamaan interaktiivisia fyysisiä objekteja. Se on myös kehitysympäristö, jonka avulla voit kirjoittaa ohjelmistoja levylle, ja se on ohjelmoitu Arduino-ohjelmointikielellä. Arduinosta on tullut suosituin mikro-ohjainalusta, ja siksi sen avulla kehitetään satoja projekteja perustasoista edistyneisiin.

Tämä kirja esittelee ensin Arduino-perheen tärkeimmät levymallit. Tämän jälkeen opit määrittämään Arduino-ohjelmistoympäristön. Seuraavaksi työskentelet digitaalisten ja analogisten tulojen ja lähtöjen kanssa, hallitset aikaa tarkasti, muodostat sarjaliikennettä projektiesi muiden laitteiden kanssa ja jopa hallitset keskeytyksiä, jotta projektisi reagoi paremmin. Lopuksi sinulle esitetään täydellinen tosielämän esimerkki hyödyntämällä kaikkia kirjassa tähän mennessä opittuja käsitteitä. Näin voit kehittää omia mikrokontrolleriprojektejasi.

Arduino Development Cookbook

Jos haluat rakentaa ohjelmointi- ja elektroniikkaprojekteja, jotka ovat vuorovaikutuksessa ympäristön kanssa, tämä kirja tarjoaa sinulle kymmeniä reseptejä, jotka opastavat sinua kaikkien Arduino-alustan tärkeimpien sovellusten läpi. Se on tarkoitettu ohjelmoinnin tai elektroniikan harrastajille, jotka haluavat yhdistää molempien maailmojen parhaat puolet rakentaakseen interaktiivisia projekteja.

Yksisiruinen Arduino-tietokonelevy on kooltaan pieni, mutta laajuudeltaan laaja, ja sitä voidaan käyttää elektronisissa projekteissa robotiikasta kotiautomaatioon. Maailman suosituin sulautettu alusta, Arduino-käyttäjät vaihtelevat koululaisista alan asiantuntijoihin, jotka kaikki ovat sisällyttäneet sen suunnitteluonsa.

Arduino Development Cookbook sisältää selkeitä ja vaiheittaisia ​​reseptejä, jotka antavat sinulle työkalupakin tekniikoita minkä tahansa Arduino-projektin rakentamiseen yksinkertaisista edistyneisiin. Jokainen luku sisältää tärkeämpiä rakennuspalikoita Arduino-kehitystä varten ohjelmointipainikkeiden oppimisesta moottoreiden käyttöön, antureiden hallintaan ja näyttöjen ohjaukseen. Löydät koko ajan vinkkejä ja temppuja, jotka auttavat sinua ratkaisemaan kehitysongelmiesi ja viemään Arduino-projektisi uudelle tasolle!

Arduino Sketches: Ohjelmointivelhojen työkalut ja tekniikat

Master-ohjelmointi Arduino tällä käytännön oppaalla Arduino Sketches on käytännöllinen opas yhä suositumman mikro-ohjaimen ohjelmointiin, joka herättää gadgeteja henkiin. Tämä kirja on saatavilla tekniikan ystäville kaikilla tasoilla, ja se tarjoaa asiantuntijaohjeita Arduino-ohjelmointiin ja käytännön harjoituksia taitojen testaamiseen. Löydät kattavuuden erilaisista Arduino-levyistä, yksityiskohtaiset selitykset jokaisesta vakiokirjastosta, ohjeita kirjastojen luomiseen alusta alkaen sekä käytännön esimerkkejä, jotka osoittavat oppimiesi taitojen päivittäisen käytön.

Työskentele yhä edistyneemmissä ohjelmointiprojekteissa ja hanki enemmän hallintaa, kun opit laitteistokohtaisista kirjastoista ja kuinka voit luoda omia kirjastojasi. Hyödynnä Arduino-sovellusliittymää täysimääräisesti ja opi vinkkejä ja temppuja, jotka laajentavat taitojasi. Arduino-kehityslevyssä on sulautettu prosessori ja liitännät, joiden avulla voit liittää oheislaitteita nopeasti ilman työkaluja tai juotteita. Se on helppo rakentaa, helppo ohjelmoida, eikä se vaadi erikoislaitteita. Harrastajalle se on unelmien täyttymys, varsinkin kun tämän avoimen lähdekoodin projektin suosio innostaa suuriakin teknologiayrityksiä kehittämään yhteensopivia tuotteita.

Arduino ja LEGO Projects

Tiedämme kaikki kuinka mahtava LEGO on, ja yhä useammat ihmiset huomaavat, kuinka monia uskomattomia asioita voit tehdä Arduinolla. Arduino- ja LEGO-projekteissa Jon Lazar näyttää sinulle, kuinka yhdistää kaksi planeetan siisteintä asiaa ja tehdä hauskoja vempaimia, kuten Magic Lantern RF -lukija, anturikäyttöinen LEGO-musiikkilaatikko ja jopa Arduino-ohjattu LEGO-junasarja.

* Opi, että SNOT on todella siistiä (se tarkoittaa Studs Not on Top)
* Katso yksityiskohtaiset selitykset ja kuvat siitä, kuinka kaikki sopii yhteen
* Opi kuinka Arduino sopii kuhunkin projektiin, mukaan lukien koodi ja selitykset

Halusitpa sitten tehdä vaikutuksen ystäviisi, ärsyttää kissaa tai vain levätä ja nauttia luomuksesi mahtavuudesta, Arduino ja LEGO Projects näyttävät sinulle juuri sen, mitä tarvitset ja kuinka yhdistää kaikki.

Arduino Workshop

Arduino on halpa, joustava, avoimen lähdekoodin mikrokontrollerialusta, joka on suunniteltu helpottamaan harrastajien elektroniikan käyttöä kotitekoisissa projekteissa. Lähes rajattomalla valikoimalla tulo- ja lähtölisäosia, antureita, indikaattoreita, näyttöjä, moottoreita ja paljon muuta, Arduino tarjoaa sinulle lukemattomia tapoja luoda laitteita, jotka ovat vuorovaikutuksessa ympäröivän maailman kanssa.

Arduino Workshopissa opit kuinka nämä lisäosat toimivat ja kuinka integroida ne omiin projekteihisi. Aloitat yleiskatsauksella Arduino-järjestelmästä, mutta siirryt nopeasti erilaisten elektronisten komponenttien ja konseptien kattamiseen. Käytännön projektit läpi kirjan vahvistavat oppimaasi ja näyttävät sinulle, kuinka voit soveltaa tätä tietoa. Kun ymmärryksesi kasvaa, projektit monimutkaistuvat ja kehittyvät.

C-ohjelmointi Arduinolle

Omien elektronisten laitteiden rakentaminen on kiehtovaa hauskaa, ja tämä kirja auttaa sinua pääsemään autonomisten mutta yhdistettyjen laitteiden maailmaan. Arduino-levyn esittelyn jälkeen opit joitain taitoja yllättääksesi itsesi.

Fyysisen tietojenkäsittelyn avulla voimme rakentaa interaktiivisia fyysisiä järjestelmiä käyttämällä ohjelmistoja ja laitteistoja todellisen maailman havaitsemiseksi ja siihen reagoimiseksi. C-ohjelmointi Arduinolle näyttää, kuinka voit hyödyntää tehokkaita ominaisuuksia, kuten tunnistusta, palautetta, ohjelmointia ja jopa johdotusta ja omien autonomisten järjestelmien kehittämistä.

C-ohjelmointi Arduinolle sisältää kaiken, mitä tarvitset oman elektronisen projektisi johdotuksen ja koodauksen aloittamiseen. Opit C:n ja kuinka koodata useita erityyppisiä laiteohjelmistoja Arduinollesi, ja siirryt sitten suunnittelemaan pieniä tyypillisiä järjestelmiä ymmärtääksesi, kuinka painikkeita, ledejä, LCD-näyttöä, verkkomoduuleja ja paljon muuta käsitellään.

Arduino aloitteleville velhoille

Tämä kirja kertoo Arduino-alustasta, joka on tulossa yhä suositummaksi päivä päivältä, ja koko joukko kotitekoisia kokeilijoita, amatöörisuunnittelijoita ja hakkereita alkaa käyttää sitä herättämään eloon sekä upeita että täysin hulluja projekteja. Arduinon avulla kuka tahansa humanisti voi tutustua elektroniikan ja ohjelmoinnin perusteisiin ja alkaa nopeasti kehittää omia mallejaan kuluttamatta siihen merkittäviä aineellisia ja henkisiä resursseja. Arduino yhdistää leikin ja oppimisen, jolloin voit luoda jotain arvokasta ja mielenkiintoista impulssin, mielikuvituksen ja uteliaisuuden avulla. Tämä alusta vahvistaa luovan ihmisen elektroniikan alalla, vaikka hän ei tietäisi siitä mitään! Kokeile ja pidä hauskaa!

Arduino/Freeduino mikrokontrollerilevyjen ohjelmointi

Arduino/Freduino mikrokontrollerikorttien ohjelmointia tarkastellaan. Kuvataan mikrokontrollerien rakenne ja toiminta, Arduino-ohjelmointiympäristö, kokeiden suorittamiseen tarvittavat työkalut ja komponentit. Arduino-levyjen ohjelmoinnin perusteet käsitellään yksityiskohtaisesti: ohjelman rakenne, komennot, operaattorit ja toiminnot, analoginen ja digitaalinen tiedonsyöttö/lähtö. Aineiston esittelyyn liittyy yli 80 esimerkkiä erilaisten laitteiden kehittämisestä: lämpötilarele, koulukello, digitaalinen volttimittari, hälytin siirtymäanturilla, kytkin katuvalaistus jne. Jokaisessa projektissa on luettelo tarvittavista komponenteista, kytkentäkaavio ja ohjelmaluettelot. Kustantajan FTP-palvelin sisältää lähdekoodit teoksesta, tekniset kuvaukset, viitetiedot, kehitysympäristö, apuohjelmat ja ajurit.

Arduino- ja Kinect-projektit

Jos olet tehnyt Arduino-työskentelyä ja miettinyt, kuinka voit sisällyttää Kinectin – tai päinvastoin –, tämä kirja on sinua varten. Arduino- ja Kinect Projectsin kirjoittajat näyttävät sinulle, kuinka voit luoda 10 hämmästyttävää, luovaa projektia yksinkertaisista monimutkaisiin. Saat myös selville, kuinka voit sisällyttää Processingin projektisi suunnitteluun – kielen, joka on hyvin samanlainen kuin Arduino-kieli.

Kymmenen projektia on suunniteltu huolellisesti kehittämään taitojasi joka vaiheessa. Alkaen Arduino- ja Kinect-vastineesta "Hello, World", kirjoittajat vievät sinut läpi monenlaisia ​​projekteja, jotka esittelevät valtavan valikoiman mahdollisuuksia, jotka avautuvat, kun Kinect ja Arduino yhdistetään.

Ilmakehän valvonta Arduinolla

Valmistajat ympäri maailmaa rakentavat edullisia laitteita ympäristön valvontaan, ja tämän käytännön oppaan avulla voit tehdä niin. Lyhyiden opetusohjelmien, kuvien ja selkeiden vaiheittaisten ohjeiden avulla opit luomaan gadgeteja ilmakehän laadun tutkimiseen käyttämällä Arduinoa ja useita edullisia antureita.

Tunnista haitalliset kaasut, pölyhiukkaset, kuten savu ja savu, ja yläilmakehän sumu – aineet ja olosuhteet, jotka ovat usein näkymättömiä aisteillesi. Opit myös, kuinka voit käyttää tieteellistä menetelmää saadaksesi oppia entistä enemmän ilmakehän testeistäsi.

* Nopeuta Arduinoa nopealla elektroniikkaprimerillä
* Rakenna troposfäärikaasuanturi havaitsemaan hiilimonoksidia, nestekaasua, butaania, metaania, bentseeniä ja monia muita kaasuja
* Luo LED-fotometri mittaamaan, kuinka paljon auringon sinistä, vihreää ja punaista valoaalloista tunkeutuu ilmakehään
* Rakenna LED-herkkyysilmaisin – ja selvitä, mitä valon aallonpituuksia kukin fotometrisi LED-valo vastaanottaa.
* Opi kuinka valon aallonpituuksien mittaamisen avulla voit määrittää vesihöyryn, otsonin ja muiden aineiden määrän ilmakehässä

Arduino Mastery Guide

Julkaisu on venäjänkielinen käännös yhdestä ARDX-sarjan (Starter Kit for Arduino) -sarjan kanssa työskentelyä käsittelevistä asiakirjoista, joka on tarkoitettu Arduino-kokeiluihin. Dokumentaatiossa kuvataan 12 yksinkertaista projektia, joilla pyritään tutustumaan Arduino-moduuliin.

Tämän setin päätarkoituksena on pitää mielenkiintoista ja hyödyllistä aikaa. Tämän lisäksi hallitse erilaisia ​​elektronisia komponentteja kokoamalla pieniä, yksinkertaisia ​​ja mielenkiintoisia laitteita. Saat toimivan laitteen ja työkalun, jonka avulla voit ymmärtää toimintaperiaatteen.

Suuri sähkön tietosanakirja

Täydellisin kirja tähän mennessä, josta löydät paljon hyödyllistä tietoa perusasioista alkaen. Kirja paljastaa kaikki tärkeimmät ongelmat, joita saatat kohdata työskennellessään sähkön ja sähkölaitteiden kanssa. Kaapeli-, johto- ja johtotyyppien kuvaus, sähköjohtojen asennus ja korjaus sekä paljon muuta.

Kirja "The Great Electrical Encyclopedia" paljastaa kaikki tärkeimmät ongelmat, joita saatat kohdata työskennellessään sähkön ja sähkölaitteiden kanssa. Kaapeli-, johto- ja johtotyyppien kuvaus, sähköjohtojen asennus ja korjaus sekä paljon muuta. Tämä kirja on hyödyllinen lähde sekä sähköasentajalle että kodin käsityöläiselle.

Tämä kirja on hyödyllinen lähde sekä sähköasentajalle että kodin käsityöläiselle.

Arduino ohjelmoijan muistikirja

Tätä muistikirjaa tulisi pitää kätevänä, helppokäyttöisenä oppaana Arduino-ohjaimen ohjelmointikielen komentorakenteeseen ja syntaksiin. Yksinkertaisuuden säilyttämiseksi on tehty joitain poikkeuksia, mikä parantaa opasta, kun aloittelijat käyttävät sitä lisätietolähteenä - muiden verkkosivustojen, kirjojen, seminaarien ja luokkien ohella. Tämä ratkaisu on suunniteltu korostamaan Arduinon käyttöä itsenäisiin tehtäviin ja sulkee pois esimerkiksi monimutkaisemman taulukoiden käytön tai sarjayhteyden käytön.

Alkaen Arduino C -ohjelman rakenteen kuvauksesta, tämä muistikirja kuvaa kielen yleisimpien elementtien syntaksia ja havainnollistaa niiden käyttöä esimerkeissä ja koodikatkelmissa. Muistikirja sisältää esimerkkejä Arduinon ydinkirjaston toiminnoista, ja liite sisältää esimerkkipiirejä ja alkuperäiset ohjelmat.

Analogiset mikro-ohjaimet

Tämä julkaisu on käytännön opas erilaisten liitäntöjen käyttöön analogisten oheislaitteiden liittämiseksi tietokoneisiin, mikroprosessoreihin ja mikro-ohjaimiin.

Käyttöliittymät, kuten I2C, SPI/Microware, SMBus, RS-232/485/422, 4-20 mA virtasilmukka, paljastetaan Yleiskuvaus useista nykyaikaisista antureista: lämpötila, optinen , CCD, magneetti, venymämittarit jne. Ohjaimet, ADC:t ja DAC:t, niiden elementit - UVH, ION, koodekit, kooderit on kuvattu yksityiskohtaisesti.

Tarkastellaan toimilaitteita - moottoreita, termostaatteja - ja niiden ohjaukseen liittyviä kysymyksiä osana automaattisia ohjausjärjestelmiä. erilaisia ​​tyyppejä(rele, suhteellinen ja PID). Kirja on varustettu kuvilla, jotka kuvaavat selkeästi analogisten ja ohjelmien käytön laitteisto- ja ohjelmisto-ominaisuuksia digitaalista tekniikkaa. Se kiinnostaa aloittelevien radioamatöörien lisäksi myös analogisten ja digitaalisten laitteiden parissa työskenteleviä asiantuntijoita sekä teknisten korkeakoulujen ja yliopistojen opiskelijoita.

Opas AT-komentojen käyttöön GSM/GPRS-modeemeille

Tämä käsikirja sisältää yksityiskohtaisen kuvauksen täysi setti AT-komennot Wavecom-modeemien kanssa työskentelemiseen. Erityiset AT-komennot annetaan Wavecom-modeemien ohjelmistoihin toteutettujen IP-pinoprotokollien kanssa työskentelemiseen.

Kirja on suunnattu kehittäjille, jotka luovat Wavecomin tuotteisiin perustuvia ohjelmisto- ja laitteistosovelluksia. Käsikirjaa suositellaan myös käyttöjärjestelmistä vastaaville insinööreille eri tarkoituksiin GSM-verkkoa tiedonsiirtokanavana. Erinomainen referenssi opiskelijoille, jotka käyttävät työssään tai diplomityö tiedonsiirron aiheita GSM-verkoissa.

Kerro meille meistä

Viesti

Jos sinulla on kokemusta Arduinon kanssa työskentelystä ja sinulla on todella aikaa luovuudelle, kutsumme kaikki kirjoittamaan portaalissamme julkaistuja artikkeleita. Nämä voivat olla joko oppitunteja tai tarinoita kokeiluistasi Arduinon kanssa. Kuvaus eri antureista ja moduuleista. Vinkkejä ja ohjeita aloittelijoille. Kirjoita ja julkaise artikkelisi .

28 09.2016

Oletko koskaan ajatellut helpottaa elämääsi kotona? Jotta sinulla olisi asioita, jotka ratkaisevat jokapäiväiset asiat puolestasi, rutiinitehtävät. Älylaite, joka suorittaisi hyödyllistä toimintaa, esimerkiksi kastelee puutarhaa, siivoaa huoneen tai kantaa kuormaa. Nämä ongelmat voidaan ratkaista. Mutta pelkkä ostaminen ei riitä. Mikä tahansa teollinen logiikka ohjain tai siru tarvitsee "aivot" suorittaakseen tietyn toimintosarjan. Toimintojen suorittamiseen tapauksessamme Arduino-ohjelmointikieli sopii.

Tästä artikkelista opit:

Tervehdys ystävät! Niille, jotka eivät tunne minua, nimeni on Gridin Semyon. Voit lukea minusta. Tämän päivän artikkeli on omistettu kahdelle pääohjelmalle, joita ilman meillä ei ole lisäliikettä ja keskinäistä ymmärrystä.

Ohjelmointikielien yleiskuvaus

Kuten edellä kirjoitin, harkitsemme kahta suosittua kehitysympäristöä. Analogisesti kanssa, voidaan jakaa graafiseen editoriin ja "älykkääseen muistilehtiöön". Nämä ovat Arduino IDE- ja FLprog-ohjelmia.

Kehitysympäristön perusta on Processing/Wiring - tämä on tavallinen C++, jota on täydennetty funktioilla ja erilaisilla kirjastoilla. Käyttöjärjestelmille on olemassa useita versioita windows järjestelmät, Mac OS ja Linux.

Mikä niiden perustavanlaatuinen ero on?? Arduino IDE on kehitysympäristö, joka kuvaa ohjelmakoodia. Ja FLprog on samanlainen kuin CFC CoDeSyS, jonka avulla voit piirtää kaavioita. Kumpi ympäristö on parempi? Molemmat ovat hyviä ja käteviä omalla tavallaan, mutta jos haluat ottaa ohjaimia vakavasti, on parasta oppia SI:n kaltaisia ​​kieliä. Niiden tärkein etu on algoritmin joustavuus ja rajoittamaton luonne. Pidän todella Arduino IDE:stä.

Arduino IDE:n kuvaus

Jakelun voi ladata osoitteesta virallinen verkkosivusto. Lataa arkisto, se vie hieman yli 100 Mt. Asennus on vakio, kuten kaikki Windows-sovellukset. Kaikentyyppisten levyjen ajurit on asennettava pakkaukseen. Ja tältä ohjelman työikkuna näyttää.

Arduino-kehitysympäristö koostuu:

  • ohjelmakoodieditori;
  • viestialueet;
  • tekstitulostusikkunat;
  • työkalurivit painikkeilla usein käytettyjä komentoja varten;
  • useita valikoita

Arduino IDE -asetukset

Arduino-kehitysympäristössä kirjoitettu ohjelma on nsluonnos. Luonnos kirjoitetaan tekstieditorilla, jossa on värikorostus luodusta ohjelmakoodista. Esimerkki yksinkertaisesta ohjelmasta alla olevassa kuvassa.

Lisätoimintoja voidaan lisätä käyttämälläkirjastot,edustavat erityisellä tavalla suunniteltua koodia. Pohjimmiltaan se ei ole kehittäjän käytettävissä. Ympäristön mukana tulee yleensä vakiosarja, jota voi täydentää vähitellen. Ne ovat alihakemistossakirjastot Arduino hakemisto.

Monissa kirjastoissa on kansiossa esimerkkejäesimerkki.Kirjaston valitseminen valikosta lisää seuraavan rivin lähdekoodiin:

Arduino

#sisältää

#sisältää

Tämä on ohje - eräänlainen käsky, otsikkotiedosto, joka kuvaa objekteja, toimintoja ja kirjastovakioita. Useimpia toimintoja varten on jo kehitetty monia toimintoja. Usko minua, tämä helpottaa ohjelmoijan elämää.

Kun olemme yhdistäneet elektroniikkakortin tietokoneeseen. Teemme seuraavat asetukset - valitse Arduino-kortti ja Com-portti, jonka kautta muodostamme yhteyden.

Arduino

void setup() ( // alusta digitaalinen nasta 13 lähdöksi. pinMode(13, OUTPUT); ) void loop() ( digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000) );

void setup() (

// alustaa digitaalinen nasta 13 lähdöksi.

pinMode(13, OUTPUT);

void loop() (

digitalWrite(13, KORKEA);

viive (1000);

digitaalinenWrite(13, LOW);

viive (1000);

Joten muuten on kätevää tarkistaa kaupasta tulleen levyn toimivuus. Nopeaa ja helppoa.

On vielä yksi kätevä asia. Sitä kutsutaanSarjaportin näyttö (Sarjainen näyttö). Näyttää alustalle lähetetyt tiedotArduino.Yleensä katson, mitä signaaleja piirilevyyn liitetyt eri anturit antavat minulle.

Kirjastojen yhdistäminen

On olemassa erilaisia ​​​​tapoja lisätä mukautettuja toimintoja. Voit yhdistää kirjastoja kolmella tavalla:

  1. Kirjastonhallinnan käyttäminen
  2. Tuontia käytetään .zip-tiedostona
  3. Manuaalinen asennus.

1. Kirjastonhallinnan käyttäminen.Valitse ohjelman työikkunasta Sketch-välilehti. Napsauta sen jälkeen Yhdistä kirjasto -painiketta. Kirjastonjohtaja avaa edessämme. Ikkuna tulee jo näkyviin asennetut tiedostot allekirjoituksellaasennettuja ne, jotka voidaan asentaa.

2. Tuonnin käyttäminen .zip-tiedostona.Usein Internetistä löytyy kirjastotiedostoja, jotka on pakattu arkistoon zip-tunnisteella. Se sisältää otsikon file.h ja koodin file.cpp. Arkistoa ei tarvitse purkaa asennuksen aikana. Siirry vain Sketch-valikkoon - Yhdistä kirjasto - Lisää .ZIP-kirjasto

3. Manuaalinen asennus.Sulje ensin Arduino IDE -ohjelma. Puramme ensin arkistomme. Ja siirrämme tiedostot, joiden tunniste on .h ja .cpp, kansioon, jolla on sama nimi kuin arkistolla. Aseta kansio juurihakemistoon.

Omat asiakirjat\Arduino\kirjastot

FLPprogin kuvaus

FLprog on ilmainen projekti riippumattomat kehittäjät, joiden avulla voit työskennellä toiminnallisten lohkojen tai relekaavioiden kanssa. Tämä ympäristö on kätevä ihmisille - ei ohjelmoijille. Sen avulla voit nähdä algoritmin visuaalisesti ja selkeästi käyttämällä kaavioita ja toiminnallisia lohkoja. Voit ladata jakelun osoitteesta virallinen verkkosivusto.

Olen seurannut projektia melko pitkään. Kaverit kehittyvät ja lisäävät jatkuvasti uutta toiminnallisuutta ja vaihda vanha. Näen lupauksen tässä ympäristössä. Koska se suorittaa kaksi tärkeää toimintoa:yksinkertaisuus ja helppokäyttöisyys.

Yritetään luoda yksinkertainen projekti. Vaihdamme lähdön 13 LEDiksi.

Luodaan uusi projekti. Lisää yläikkunaan tarvittava määrä tuloja ja lähtöjä, aseta nimi ja määritä kortille fyysinen tulo tai lähtö.

Vedämme tarvitsemamme elementit objektipuusta ja tarvitsemme muokkauskankaalle. Meidän tapauksessamme voimme käyttää yksinkertaista RS-liipaisinta sen kytkemiseksi päälle ja pois.

Kun olet luonut algoritmin, napsauta kääntämispainiketta, ohjelma tarjoaa valmiin luonnoksen IDE:ssä.

Olemme tarkastelleet Arduino-sarjan ohjaimen algoritmien kehittämiseen tarkoitettujen ohjelmien ominaisuuksia ja mukavuutta. On myös ohjelmia, joiden avulla voit luoda rakennekaavioita ja visuaalisia kuvia. Mutta suosittelen käyttämään tekstieditoria, koska se on sinulle helpompaa myöhemmin. Kerro mikä ympäristö on sinulle sopivin ja miksi??

Syyskuun 22. päivänä osallistuin seminaariin Krasnodarissa "Kosketuspaneeliohjaimet OVEN SPK." Konferenssi pidettiin muodikkaassa ja kauniissa Bristol-hotellissa. Se oli erittäin mielenkiintoista ja siistiä.

Seminaarin ensimmäisessä osassa kerrottiin OWEN-tuotteiden ominaisuuksista ja eduista. Sen jälkeen oli kahvitauko munkkien kera. Poimin joukon tavaroita, munkkeja, keksejä ja karkkeja, koska olin hyvin nälkäinen =)

Seminaarin toisessa osassa lounaan jälkeen meidät esiteltiin. He kertoivat meille paljon Web-visualisoinnista. Tämä trendi alkaa vahvistua. No, tietenkin, ohjaa laitteita millä tahansa Internet-selaimella. Tämä on todella siistiä. Muuten, itse varusteet ovat matkalaukussa.

Julkaisen lähitulevaisuudessa artikkelisarjan CoDeSyS 3.5:stä. Joten jos jotakuta kiinnostaa, tilaa tai tule vain käymään. Tulen aina olemaan iloinen!!!

Muuten, melkein unohdin, seuraava artikkeli käsittelee Arduino-elektroniikkalevyä. Siitä tulee mielenkiintoista, älä missaa sitä.

Nähdään seuraavissa artikkeleissa.

Ystävällisin terveisin, Gridin Semyon.

Johdanto

Freeduino/Arduino on ohjelmoitu erityisellä ohjelmointikielellä - se perustuu C/C++-kieleen, ja sen avulla voit käyttää mitä tahansa sen toimintoja. Tarkkaan ottaen erillinen Arduino kieli ei ole olemassa, aivan kuten ei ole olemassa Arduino-kääntäjää - kirjoitetut ohjelmat muunnetaan (minimaalisilla muutoksilla) C/C++-ohjelmaksi ja käännetään sitten AVR-GCC-kääntäjällä. Joten itse asiassa käytetään C/C++:n muunnelmaa, joka on erikoistunut AVR-mikro-ohjaimiin.

Ero on siinä, mitä saat yksinkertainen ympäristö kehitystyöt ja joukko peruskirjastoja, jotka yksinkertaistavat pääsyä mikro-ohjaimen "aluksella" oleviin oheislaitteisiin.

Hyväksy, on erittäin kätevää aloittaa työskentely sarjaportin kanssa nopeudella 9600 bittiä sekunnissa soittamalla puhelu yhdellä rivillä:

Serial.begin(9600);

Ja kun käytät "alastonta" C/C++:aa, sinun pitäisi käsitellä mikro-ohjaimen dokumentaatiota ja kutsua jotain tällaista:

UBRR0H = ((F_CPU / 16 + 9600 / 2) / 9600 - 1) >> 8;
UBRR0L = ((F_CPU / 16 + 9600 / 2) / 9600 - 1);
sbi(UCSR0B, RXEN0);
sbi(UCSR0B, TXEN0);
sbi(UCSR0B, RXCIE0);

Tässä on lyhyt katsaus Arduino-ohjelmoinnin päätoimintoihin ja ominaisuuksiin. Jos et ole perehtynyt C/C++-kielten syntaksiin, suosittelemme tutustumaan asiaan liittyvään kirjallisuuteen tai Internet-lähteisiin.

Toisaalta kaikki esitetyt esimerkit ovat hyvin yksinkertaisia, eikä lähdetekstien ymmärtäminen ja omien ohjelmien kirjoittaminen todennäköisesti aiheuta vaikeuksia edes lukematta lisäkirjallisuutta.

Täydellisempi dokumentaatio (englanniksi) on esitetty projektin virallisella verkkosivustolla - http://www.arduino.cc. Siellä on myös foorumi, linkkejä muihin kirjastoihin ja niiden kuvauksiin.

Analogisesti Arduino-projektin virallisella verkkosivustolla olevan kuvauksen kanssa "portti" viittaa mikro-ohjaimen koskettimeen, joka on kytketty vastaavalla numerolla olevaan liittimeen. Lisäksi on sarjaliikenneportti (COM-portti).

Ohjelman rakenne

Ohjelmassasi tulee ilmoittaa kaksi pääfunktiota: setup() ja loop().

Setup()-funktiota kutsutaan kerran, jokaisen Freeduino-kortin käynnistyksen tai nollauksen jälkeen. Käytä sitä muuttujien alustamiseen, digitaalisten porttien toimintatilojen asettamiseen jne.

Loop()-funktio suorittaa peräkkäin sen rungossa kuvatut komennot yhä uudelleen ja uudelleen. Ne. Kun toiminto on valmis, sitä kutsutaan uudelleen.

Katsotaanpa yksinkertaista esimerkkiä:

void setup() // alkuasetukset
{
beginSerial(9600); // asettamalla sarjaportin nopeudeksi 9600 bps
pinMode(3, INPUT); // 3. portin asettaminen tiedonsyöttöä varten
}

// Ohjelma tarkistaa, onko 3. portissa signaalia, ja lähettää vastauksen
// näkymä tekstiviesti tietokoneen sarjaporttiin
void loop() // ohjelman runko
{
if (digitalRead(3) == HIGH) // ehto 3. portin pollaukselle
serialWrite("H"); // lähettää H-kirjaimen muodossa olevan viestin COM-porttiin
muu
serialWrite("L"); // lähettää viestin "L"-kirjaimen muodossa COM-porttiin
viive (1000); // viive 1 sek.
}

pinMode(portti, tila);

Kuvaus:

Konfiguroi määritetyn portin syöttämään tai lähettämään signaalin.

Parametrit:

portti – sen portin numero, jonka tilan haluat asettaa (kokonaisluku 0-13).

tila - joko INPUT (tulo) tai OUTPUT (lähtö).

pinMode(13, OUTPUT); //13. pin on lähtö
pinMode(12, INPUT); //ja 12. on syöte

Huomautus:

Analogisia tuloja voidaan käyttää digitaalisina tuloina/lähtöinä käyttämällä numeroita 14 (analoginen tulo 0) - 19 (analoginen tulo 5)

digitalWrite(portti, arvo);

Kuvaus:

Asettaa määritetyn portin jännitetason korkeaksi (HIGH) tai matalaksi (LOW).

Parametrit:

portti: portin numero

arvo: HIGH tai LOW

digitalWrite(13, KORKEA); // aseta nasta 13 "korkeaan" tilaan

arvo = digitalRead(portti);

Kuvaus:

Lukee määritetyn portin arvon

Parametrit:

portti: kyselyn portin numero

Palautusarvo: Palauttaa portin nykyisen arvon (HIGH tai LOW) kirjoita int

int val;
val = digitalRead(12); // kysely 12. pin

Huomautus:

Jos luettavaan porttiin ei ole kytketty mitään, digitalRead()-funktio saattaa palauttaa HIGH- tai LOW-arvot virheellisesti.

Analogisen signaalin tulo/lähtö

arvo = analogiRead(portti);

Kuvaus:

Lukee arvon määritetystä analogisesta portista. Freeduino sisältää 6 kanavaa, analogia-digitaali muunnin 10 bittiä kukin. Tämä tarkoittaa, että tulojännite 0 - 5 V muunnetaan kokonaislukuarvoksi 0 - 1023. Lukeman resoluutio on: 5 V/1024 arvot = 0,004883 V/arvo (4,883 mV). Analogisen tuloarvon lukeminen kestää noin 100 nS (0,0001 C), joten suurin lukunopeus on noin 10 000 kertaa sekunnissa.

Parametrit:

Palautusarvo: Palauttaa määritetystä portista luetun int-luvun välillä 0–1023.

int val;
val = analogiLue(0); // lukee arvon 0. analogisesta tulosta

Huomautus:

Analogiset portit määritellään oletusarvoisesti signaalituloiksi, ja toisin kuin digitaaliset portit, niitä ei tarvitse määrittää kutsumalla pinMode-toimintoa.

analogWrite(portti, arvo);

Kuvaus:

Lähettää analogisen arvon porttiin. Tämä toiminto toimii: 3, 5, 6, 9, 10 ja 11 Freeduino-digitaaliportissa.

Voidaan käyttää LED-valon kirkkauden vaihtamiseen, moottorin ohjaamiseen jne. AnalogWrite-toiminnon kutsumisen jälkeen vastaava portti alkaa toimia jännitepulssinleveysmodulaatiotilassa, kunnes analogWrite-toiminnolle (tai digitalRead / digitalWrite-toiminnoille samassa portissa) tulee toinen kutsu.

Parametrit:

portti: pollattavan analogisen tulon numero

arvo: kokonaisluku välillä 0 - 255. Arvo 0 tuottaa 0 V määritettyyn porttiin; arvo 255 tuottaa +5V määritettyyn porttiin. Arvoilla 0 ja 255 välillä portti alkaa vaihdella nopeasti 0 ja +5 V jännitetasojen välillä - mitä korkeampi arvo, sitä useammin portti tuottaa HIGH (5 V) tason.

analogWrite(9, 128); // aseta pin 9 arvoon, joka vastaa 2,5 V:tä

Huomautus:

Ei tarvitse kutsua pinModea asettaaksesi portin lähettämään signaalit ennen analogWrite-kutsua.

Signaalin generointitaajuus on noin 490 Hz.

aika = millis();

Kuvaus:

Palauttaa millisekuntien määrän Freeduinon suorittamisesta nykyinen ohjelma. Laskuri vuotaa yli ja nollautuu noin 9 tunnin kuluttua.

Palautusarvo: palauttaa arvon allekirjoittamaton tyyppi pitkä

allekirjoittamaton pitkään; // aikamuuttujan tyyppi unsigned long ilmoitus
aika = millis(); // siirtää millisekuntien lukumäärän

viive(aika_ms);

Kuvaus:

Keskeyttää ohjelman määritetyksi määräksi millisekunteja.

Parametrit:

time_ms – ohjelman viiveaika millisekunteina

viive (1000); //tauko 1 sekunti

viive mikrosekuntia

viiveMikrosekuntia(aika_μs);

Kuvaus:

Keskeyttää ohjelman määritetyksi mikrosekuntimääräksi.

Parametrit:

time_μs – ohjelman viiveaika mikrosekunteina

viiveMikrosekuntia (500); //tauko 500 mikrosekuntia

pulseIn(portti, arvo);

Kuvaus:

Lukee pulssin (korkean tai matalan) digitaalisesta portista ja palauttaa pulssin keston mikrosekunteina.

Jos esimerkiksi "arvo"-parametriksi on asetettu HIGH funktiota kutsuttaessa, pulseIn() odottaa korkean signaalitason saapumista porttiin. Siitä hetkestä lähtien, kun se saapuu, lähtölaskenta alkaa, kunnes alhainen signaalitaso vastaanotetaan portissa. Funktio palauttaa pulssin pituuden (korkea taso) mikrosekunteina. Toimii pulsseilla 10 mikrosekunnista 3 minuuttiin. Huomaa, että tämä toiminto ei palauta tulosta ennen kuin pulssi havaitaan.

Parametrit:

portti: portin numero, josta luemme pulssin

arvo: pulssityyppi HIGH tai LOW

Palautusarvo: palauttaa pulssin keston mikrosekunteina (tyyppi int)

int kesto; // int-tyypin kestomuuttujan ilmoitus
kesto = pulssiIn(pin, HIGH); // mittaa pulssin kesto

Sarjatiedonsiirto

Freeduinossa on sisäänrakennettu ohjain sarjatiedonsiirtoon, jota voidaan käyttää sekä Freeduino/Arduino-laitteiden väliseen tiedonsiirtoon että tiedonsiirtoon tietokoneen kanssa. Tietokoneessa vastaavaa yhteyttä edustaa USB COM-portti.

Tiedonsiirto tapahtuu digitaalisten porttien 0 ja 1 kautta, joten et voi käyttää niitä digitaaliseen I/O-liitäntään, jos käytät sarjatoimintoja.

Serial.begin(baud_rate);

Kuvaus:

Asettaa lähetysnopeuden COM-portti bittiä sekunnissa sarjatiedonsiirrossa. Kommunikoidaksesi tietokoneen kanssa, käytä jotakin näistä standardoiduista nopeuksista: 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 tai 115200. Voit myös määrittää muita nopeuksia kommunikoitaessa muiden kanssa. portit 0 ja 1.

Parametrit:

baud_rate: Tiedon virtausnopeus bitteinä sekunnissa.

Serial.begin(9600); //asettaa nopeudeksi 9600 bps

Sarja.saatavilla

count = Serial.available();

Kuvaus:

Sarjaportin kautta vastaanotetut tavut päätyvät mikro-ohjaimen puskuriin, josta ohjelmasi voi lukea ne. Funktio palauttaa puskuriin kertyneiden tavujen määrän. Sarjapuskuriin mahtuu jopa 128 tavua.

Palautusarvo:

Palauttaa int-arvon - sarjapuskurissa luettavissa olevien tavujen määrän tai 0:n, jos mitään ei ole saatavilla.

if (Serial.available() > 0) ( // Jos puskurissa on dataa
// täällä pitäisi olla tietojen vastaanotto ja käsittely
}

char = Serial.read();

Kuvaus:

Lukee seuraavan tavun sarjaportin puskurista.

Palautusarvo:

Ensimmäinen käytettävissä oleva tavu sarjaportista saapuvaa dataa tai -1, jos saapuvaa dataa ei ole.

incomingByte = Serial.read(); // lue tavu

Kuvaus:

Tyhjentää sarjaportin tulopuskurin. Puskurissa olevat tiedot menetetään, ja Serial.read()- tai Serial.available()-kutsut ovat järkeviä Serial.flush()-kutsun jälkeen vastaanotetuille tiedoille.

Serial.flush(); // Tyhjennä puskuri - aloita tietojen vastaanottaminen "tyhjästä"

Kuvaus:

Tulostaa tiedot sarjaporttiin.

Parametrit:

Toiminnossa on useita kutsumuotoja lähtötietojen tyypistä ja muodosta riippuen.

Serial.print(b, DEC) tulostaa ASCII-merkkijonon - luvun b desimaalimuodon.

int b = 79;

Serial.print(b, HEX) tulostaa ASCII-merkkijonon - luvun b heksadesimaalimuodon.

int b = 79;

Serial.print(b, OCT) tulostaa ASCII-merkkijonon - luvun b oktaaliesityksen.

int b = 79;
Serial.print(b, OCT); //tulostaa merkkijonon "117" porttiin

Serial.print(b, BIN) tulostaa ASCII-merkkijonon - luvun b binääriesityksen.

int b = 79;
Serial.print(b, BIN); //tulostaa merkkijonon "1001111" porttiin

Serial.print(b, BYTE) tulostaa b:n alemman tavun.

int b = 79;
Serial.print(b, BYTE); //näyttää numeron 79 (yksi tavu). Monitorissa
//sarjaportista saamme symbolin "O" - sen
//koodi on 79

Serial.print(str), jos str on merkkijono tai merkkijono, siirtää str:n COM-portin tavuun.

merkkitavut = (79, 80, 81); //3 tavun taulukko arvoilla 79,80,81
Serial.print("Tässä tavumme:"); //tulostaa rivin "Tässä meidän tavumme:"
Serial.print(tavut); //tulostaa 3 merkkiä koodeilla 79,80,81 –
//nämä ovat merkit "OPQ"

Serial.print(b), jos b on tyyppiä byte tai char, tulostaa itse numeron b porttiin.

char b = 79;
Serial.print(b); //tulostaa merkin "O" porttiin

Serial.print(b), jos b on tyyppiä kokonaisluku, tulostaa b:n desimaalimuodon porttiin.

int b = 79;
Serial.print(b); //tulostaa merkkijonon "79" porttiin

Kuvaus:

Serial.println-toiminto on samanlainen kuin Serial.print-toiminto, ja siinä on samat kutsuvalinnat. Ainoa ero on, että tietojen jälkeen tulostetaan kaksi lisämerkkiä - rivinvaihtomerkki (ASCII 13 tai "\r") ja rivinvaihtomerkki (ASCII 10 tai "\n").

Esimerkki 1 ja esimerkki 2 tulostavat saman asian porttiin:

int b = 79;
Serial.print(b, DEC); //tulostaa merkkijonon "79" porttiin
Serial.print("\r\n"); //näyttää merkit "\r\n" – rivinvaihto
Serial.print(b, HEX); //tulostaa merkkijonon "4F" porttiin
Serial.print("\r\n");//tulostaa merkit "\r\n" – rivinvaihto

int b = 79;
Serial.println(b, DEC); //tulostaa merkkijonon "79\r\n" porttiin
Serial.println(b, HEX); //tulostaa merkkijonon "4F\r\n" porttiin

Sarjaportin monitorissa saamme.