Arduino programming. Pagprograma ng Arduino gamit ang ArduBlock gamit ang halimbawa ng isang robot na gumagalaw sa isang strip

Ang seksyong ito ay nakatuon sa mga aklat mula sa mundo ng Arduino. Para sa mga nagsisimula at propesyonal.

Ang lahat ng mga libro at materyales ay ipinakita para sa mga layuning pang-impormasyon lamang pagkatapos basahin, hinihiling namin sa iyo na bumili ng digital o papel na kopya.

Mga programa para sa pagbabasa ng mga libro:

  • Mga aklat sa format na PDF: Adobe Acrobat Reader o PDF Reader.
  • Mga aklat sa format na DJVU: o Djvu Reader.

Praktikal na Arduino Encyclopedia

Ang libro ay nagbubuod ng data sa mga pangunahing bahagi ng mga disenyo batay sa Arduino platform, na kinakatawan ng pinakasikat na bersyon ng ArduinoUNO ngayon o maraming mga clone na katulad nito. Ang aklat ay isang set ng 33 pang-eksperimentong kabanata. Sinusuri ng bawat eksperimento ang pagpapatakbo ng isang Arduino board na may partikular na electronic component o module, simula sa pinakasimple hanggang sa pinaka kumplikado, na mga independiyenteng espesyal na device. Ang bawat kabanata ay nagbibigay ng isang listahan ng mga detalye na kinakailangan upang maisagawa ang eksperimento sa pagsasanay. Para sa bawat eksperimento, ang isang visual na diagram ng koneksyon ng mga bahagi ay ibinigay sa format ng Fritzing integrated development environment. Nagbibigay ito ng malinaw at tumpak na representasyon ng kung ano ang dapat na hitsura ng assembled circuit. Ang sumusunod ay nagbibigay ng teoretikal na impormasyon tungkol sa bahagi o module na ginamit. Ang bawat kabanata ay naglalaman ng sketch code (program) sa built-in na Arduino na wika na may mga komento.

Electronics. Ang iyong unang quadcopter. Teorya at kasanayan

Ang mga praktikal na aspeto ng self-manufacturing at operating quadcopter ay inilarawan nang detalyado. Ang lahat ng mga yugto ay isinasaalang-alang: mula sa pagpili ng mga materyales sa istruktura at pagpili ng mga bahagi na may pagliit ng mga gastos sa pananalapi hanggang sa pagsasaayos ng software at pagkumpuni pagkatapos ng isang aksidente. Ang pansin ay binabayaran sa mga pagkakamali na kadalasang ginagawa ng mga baguhang modelo ng sasakyang panghimpapawid. Ang mga teoretikal na pundasyon ng paglipad ng mga multi-rotor system at ang mga pangunahing konsepto ng pagtatrabaho sa Arduino IDE ay ibinibigay sa isang naa-access na form. Isang maikling paglalarawan ng disenyo at prinsipyo ng pagpapatakbo ng GPS at Glonass system, pati na rin ang mga modernong pulsed on-board power supply at lithium-polymer na mga baterya. Ang prinsipyo ng pagpapatakbo at proseso ng pag-set up ng mga OSD system, telemetry, Bluetooth wireless channel at sikat na Ublox GPS navigation modules ay inilarawan nang detalyado. Ang disenyo at mga prinsipyo ng pagpapatakbo ng pinagsamang mga sensor at ang flight controller ay inilarawan. Ang mga rekomendasyon ay ibinibigay para sa pagpili ng entry-level na kagamitan sa FPV, at isang pangkalahatang-ideya ng mga programa para sa mga computer at smartphone na ginagamit kapag nagse-set up ng kagamitan sa quadcopter.

Mga proyekto gamit ang Arduino controller (2nd ed.)

Sinasaklaw ng aklat ang mga pangunahing Arduino board at expansion board (mga kalasag) na nagdaragdag ng functionality sa main board. Ang Arduino IDE programming language at environment ay inilarawan nang detalyado. Ang mga proyektong gumagamit ng mga controller ng Arduino family ay maingat na sinusuri. Ito ay mga proyekto sa larangan ng robotics, paglikha ng mga istasyon ng panahon, matalinong tahanan, pagbebenta, telebisyon, Internet, mga wireless na komunikasyon (bluetooth, radio control).

Ang ikalawang edisyon ay nagdaragdag ng mga proyekto sa pagkontrol ng boses gamit ang Arduino, gumagana sa mga naa-address na RGB strips, at pagkontrol sa iRobot Create sa Arduino. Ang mga proyektong gumagamit ng Arduino Leonardo board ay isinasaalang-alang. Ang mga sunud-sunod na aralin ay ibinibigay para sa mga nagsisimulang developer.

Pag-aaral ng Arduino: Mga Tool at Teknik para sa Teknikal na Wizardry

Ang libro ay nakatuon sa disenyo ng mga elektronikong aparato batay sa Arduino microcontroller platform. Nagbibigay ng pangunahing impormasyon tungkol sa Arduino hardware at software. Ang mga prinsipyo ng programming sa pinagsamang Arduino IDE ay nakabalangkas. Ipinapakita kung paano pag-aralan ang mga de-koryenteng circuit, basahin ang mga teknikal na paglalarawan, at piliin ang mga tamang bahagi para sa iyong sariling mga proyekto. Ibinibigay ang mga halimbawa ng paggamit at paglalarawan ng iba't ibang sensor, de-koryenteng motor, servos, indicator, wired at wireless na interface ng paglilipat ng data. Ang bawat kabanata ay naglilista ng mga sangkap na ginamit, nagbibigay ng mga wiring diagram, at naglalarawan ng mga listahan ng programa nang detalyado. May mga link sa site ng suporta sa impormasyon ng libro. Ang materyal ay nakatuon sa paggamit ng simple at murang mga bahagi para sa mga eksperimento sa bahay.

Mabilis na pagsisimula. Mga unang hakbang upang makabisado ang Arduino

Book ARDUINO Mabilis na pagsisimula. Ang mga Unang Hakbang sa Pag-master ng ARDUINO ay naglalaman ng lahat ng impormasyon upang maging pamilyar sa Arduino board, pati na rin ang 14 na praktikal na eksperimento gamit ang iba't ibang mga electronic na bahagi at module.

Mabilis na pagsisimula sa Arduino kit. Ang kaalamang natamo ay, sa hinaharap, ay gagawing posible na lumikha ng iyong sariling mga proyekto at madaling ipatupad ang mga ito.

Arduino, mga sensor at network para sa komunikasyon ng device (2nd ed.)

33 mga proyektong batay sa Arduino microcontroller board ay isinasaalang-alang, na nagpapakita kung paano gawin ang mga elektronikong device na makapagpalitan ng data sa isa't isa at tumugon sa mga utos. Ipinapakita kung paano baguhin ang mga setting ng iyong air conditioner sa bahay sa pamamagitan ng "pagtawag dito" mula sa iyong smartphone; kung paano lumikha ng iyong sariling mga controller ng laro na nakikipag-ugnayan sa network; kung paano gamitin ang ZigBee, Bluetooth, infrared at regular na mga radio device para wireless na makatanggap ng impormasyon mula sa iba't ibang sensor, atbp. Ang mga programming language na Arduino, Processing at PHP ay isinasaalang-alang.

Pagkatapos basahin ang aklat - "Arduino, mga sensor at network para sa pagkonekta ng mga device", matututunan mo kung paano gumawa ng mga network ng mga smart device na nagpapalitan ng data at tumutugon sa mga command. Ang libro ay perpekto para sa mga taong gustong isagawa ang kanilang mga malikhaing ideya. Hindi mo kailangang magkaroon ng anumang espesyal na teknikal na kaalaman o kasanayan sa larangan ng electronics Ang kailangan mo lang upang simulan ang pagpapatupad ng mga proyekto ay isang libro, mga ideya at isang murang kit na may Arduino controller at ilang mga module at sensor ng network.

Arduino Essentials

Ang Arduino ay isang open source microcontroller na binuo sa isang circuit board na may kakayahang makatanggap ng sensory input mula sa kapaligiran nito at kontrolin ang mga interactive na pisikal na bagay. Isa rin itong development environment na nagbibigay-daan sa iyong magsulat ng software sa board, at naka-program sa Arduino programming language. Ang Arduino ay naging pinakasikat na microcontroller platform at sa gayon ay daan-daang mga proyekto ang binuo gamit ito, mula sa basic hanggang advanced na mga antas.

Ipapakilala muna sa iyo ng aklat na ito ang pinakamahahalagang modelo ng board ng pamilya Arduino. Matututuhan mong i-set up ang kapaligiran ng software ng Arduino. Susunod, gagana ka sa mga digital at analog na input at output, pamahalaan ang oras nang tumpak, magtatag ng mga serial na komunikasyon sa iba pang mga device sa iyong mga proyekto, at kahit na kontrolin ang mga interrupts upang gawing mas tumutugon ang iyong proyekto. Sa wakas, bibigyan ka ng isang kumpletong halimbawa sa totoong mundo sa pamamagitan ng paggamit ng lahat ng mga konseptong natutunan hanggang ngayon sa aklat. Ito ay magbibigay-daan sa iyo na bumuo ng iyong sariling mga proyekto ng microcontroller.

Arduino Development Cookbook

Kung gusto mong bumuo ng mga proyekto sa programming at electronics na nakikipag-ugnayan sa kapaligiran, ang aklat na ito ay mag-aalok sa iyo ng dose-dosenang mga recipe upang gabayan ka sa lahat ng mga pangunahing aplikasyon ng Arduino platform. Ito ay inilaan para sa mga mahilig sa programming o electronics na gustong pagsamahin ang pinakamahusay sa parehong mundo upang bumuo ng mga interactive na proyekto.

Ang single-chip computer board Arduino ay maliit sa laki ngunit malawak ang saklaw, na may kakayahang magamit para sa mga elektronikong proyekto mula sa robotics hanggang sa home automation. Ang pinakasikat na naka-embed na platform sa mundo, ang mga gumagamit ng Arduino ay mula sa mga bata sa paaralan hanggang sa mga eksperto sa industriya, lahat ay isinasama ito sa kanilang mga disenyo.

Binubuo ng Arduino Development Cookbook ang malinaw at sunud-sunod na mga recipe na nagbibigay sa iyo ng toolbox ng mga diskarte upang bumuo ng anumang proyekto ng Arduino, mula sa simple hanggang sa advanced. Ang bawat kabanata ay nagbibigay sa iyo ng higit pang mahahalagang gusali para sa pagbuo ng Arduino, mula sa pag-aaral tungkol sa mga button ng programming hanggang sa pagpapatakbo ng mga motor, pamamahala ng mga sensor, at pagkontrol sa mga display. Sa kabuuan, makakahanap ka ng mga tip at trick upang matulungan kang i-troubleshoot ang iyong mga problema sa pag-develop at itulak ang iyong proyekto sa Arduino sa susunod na antas!

Arduino Sketch: Mga Tool at Teknik para sa Programming Wizardry

Master programming Arduino gamit ang hands-on na gabay na ito Ang Arduino Sketches ay isang praktikal na gabay sa pagprograma ng lalong sikat na microcontroller na nagbibigay-buhay sa mga gadget. Naa-access sa mga mahilig sa tech sa anumang antas, ang aklat na ito ay nagbibigay ng ekspertong pagtuturo sa Arduino programming at hands-on na pagsasanay upang subukan ang iyong mga kasanayan. Makakakita ka ng saklaw ng iba't ibang Arduino board, mga detalyadong paliwanag ng bawat karaniwang library, at gabay sa paglikha ng mga library mula sa simula at mga praktikal na halimbawa na nagpapakita ng pang-araw-araw na paggamit ng mga kasanayang natututuhan mo.

Magtrabaho sa lalong advanced na mga proyekto sa programming, at magkaroon ng higit na kontrol habang natututo ka tungkol sa mga library na partikular sa hardware at kung paano bumuo ng sarili mong library. Sulitin nang husto ang Arduino API, at alamin ang mga tip at trick na magpapalawak ng iyong skillset. Ang Arduino development board ay may kasamang naka-embed na processor at mga socket na nagbibigay-daan sa iyong mabilis na mag-attach ng mga peripheral nang walang mga tool o solder. Madali itong buuin, madaling i-program, at hindi nangangailangan ng espesyal na hardware. Para sa hobbyist, ito ay isang pangarap na natupad lalo na't ang katanyagan ng open-source na proyektong ito ay nagbibigay-inspirasyon kahit na ang mga pangunahing kumpanya ng tech na bumuo ng mga katugmang produkto.

Arduino at LEGO Projects

Alam nating lahat kung gaano kahanga-hanga ang LEGO, at parami nang parami ang natutuklasan kung gaano karaming mga kamangha-manghang bagay ang magagawa mo sa Arduino. Sa Arduino at LEGO Projects, ipinakita sa iyo ni Jon Lazar kung paano pagsamahin ang dalawa sa mga pinaka-cool na bagay sa planeta para gumawa ng mga nakakatuwang gadget tulad ng Magic Lantern RF reader, isang LEGO music box na may sensor-enabled, at kahit isang LEGO train set na kontrolado ng Arduino.

* Alamin na ang SNOT ay talagang cool (ito ay nangangahulugan na Studs Not on Top)
* Tingnan ang mga detalyadong paliwanag at mga larawan kung paano magkasya ang lahat
* Alamin kung paano umaangkop ang Arduino sa bawat proyekto, kabilang ang code at mga paliwanag

Gusto mo mang pahangain ang iyong mga kaibigan, inisin ang pusa, o tumalikod lang at magpainit sa kahanga-hangang gawa ng iyong mga nilikha, ipinapakita sa iyo ng Arduino at LEGO Projects kung ano ang kailangan mo at kung paano pagsasama-samahin ang lahat ng ito.

Arduino Workshop

Ang Arduino ay isang mura, nababaluktot, open source na microcontroller platform na idinisenyo upang gawing madali para sa mga hobbyist na gumamit ng electronics sa mga gawang bahay na proyekto. Sa halos walang limitasyong hanay ng mga input at output add-on, sensor, indicator, display, motor, at higit pa, ang Arduino ay nag-aalok sa iyo ng hindi mabilang na mga paraan upang lumikha ng mga device na nakikipag-ugnayan sa mundo sa paligid mo.

Sa Arduino Workshop, matututunan mo kung paano gumagana ang mga add-on na ito at kung paano isama ang mga ito sa sarili mong mga proyekto. Magsisimula ka sa isang pangkalahatang-ideya ng Arduino system ngunit mabilis na lumipat sa saklaw ng iba't ibang mga elektronikong bahagi at konsepto. Ang mga hands-on na proyekto sa buong aklat ay nagpapatibay sa iyong natutunan at nagpapakita sa iyo kung paano ilapat ang kaalamang iyon. Habang lumalaki ang iyong pang-unawa, ang mga proyekto ay tumataas sa pagiging kumplikado at pagiging sopistikado.

C Programming para sa Arduino

Ang paggawa ng sarili mong mga electronic device ay nakakatuwang kasiyahan at tinutulungan ka ng aklat na ito na makapasok sa mundo ng mga nagsasarili ngunit nakakonektang device. Pagkatapos ng pagpapakilala sa Arduino board, matututo ka ng ilang mga kasanayan upang sorpresahin ang iyong sarili.

Ang pisikal na computing ay nagbibigay-daan sa amin na bumuo ng mga interactive na pisikal na sistema sa pamamagitan ng paggamit ng software at hardware upang makaramdam at tumugon sa totoong mundo. Ipapakita sa iyo ng C Programming para sa Arduino kung paano gamitin ang malalakas na kakayahan tulad ng sensing, feedbacks, programming at maging ang mga wiring at pagbuo ng sarili mong mga autonomous system.

Ang C Programming para sa Arduino ay naglalaman ng lahat ng kailangan mo para direktang simulan ang pag-wire at pag-coding ng sarili mong elektronikong proyekto. Matututuhan mo ang C at kung paano mag-code ng ilang uri ng firmware para sa iyong Arduino, at pagkatapos ay magpatuloy sa pagdidisenyo ng maliliit na tipikal na sistema upang maunawaan kung paano pinangangasiwaan ang mga button, led, LCD, network module at marami pang iba.

Arduino para sa mga baguhan na wizard

Ang aklat na ito ay tungkol sa Arduino platform, na nagiging mas sikat araw-araw, at isang buong hukbo ng mga home-based na eksperimento, baguhang designer at hacker ang nagsisimulang gamitin ito upang bigyang-buhay ang mga kahanga-hanga at ganap na nakatutuwang mga proyekto. Sa tulong ng Arduino, ang sinumang humanist ay maaaring maging pamilyar sa mga pangunahing kaalaman ng electronics at programming at mabilis na simulan ang pagbuo ng kanilang sariling mga modelo nang hindi gumagasta ng makabuluhang materyal at intelektwal na mapagkukunan dito. Pinagsasama ng Arduino ang paglalaro at pag-aaral, na nagbibigay-daan sa iyong lumikha ng isang bagay na kapaki-pakinabang at kawili-wili sa salpok, imahinasyon at kuryusidad. Ang platform na ito ay nagbibigay kapangyarihan sa taong malikhain sa larangan ng electronics, kahit na wala siyang alam tungkol dito! Eksperimento at magsaya!

Programming Arduino/Freeduino microcontroller boards

Ang pagprograma ng mga microcontroller board ay isinasaalang-alang ang Arduino/Freduino. Ang istraktura at paggana ng mga microcontroller, ang Arduino programming environment, ang mga kinakailangang kasangkapan at bahagi para sa pagsasagawa ng mga eksperimento ay inilarawan. Ang mga pangunahing kaalaman sa pagprograma ng mga Arduino board ay tinalakay nang detalyado: istruktura ng programa, mga utos, mga operator at function, analog at digital na data input/output. Ang pagtatanghal ng materyal ay sinamahan ng higit sa 80 mga halimbawa sa pagbuo ng iba't ibang mga aparato: isang temperatura relay, isang orasan ng paaralan, isang digital voltmeter, isang alarma na may sensor ng paggalaw, isang switch ng ilaw sa kalye, atbp. Para sa bawat proyekto, isang listahan ng mga kinakailangang bahagi, isang wiring diagram at mga listahan ng programa ay ibinigay. Ang FTP server ng publisher ay naglalaman ng mga source code para sa mga halimbawa mula sa aklat, teknikal na paglalarawan, reference na data, development environment, mga utility at driver.

Arduino at Kinect Projects

Kung nakagawa ka na ng ilang Arduino tinkering at nagtaka kung paano mo maisasama ang Kinect—o ang iba pang paraan—kung gayon ang aklat na ito ay para sa iyo. Ipapakita sa iyo ng mga may-akda ng Arduino at Kinect Projects kung paano lumikha ng 10 kamangha-manghang, malikhaing proyekto, mula sa simple hanggang sa kumplikado. Malalaman mo rin kung paano isama ang Pagproseso sa iyong disenyo ng proyekto—isang wika na halos kapareho sa wika ng Arduino.

Ang sampung proyekto ay maingat na idinisenyo upang mabuo ang iyong mga kasanayan sa bawat hakbang. Simula sa Arduino at Kinect na katumbas ng "Hello, World," dadalhin ka ng mga may-akda sa magkakaibang hanay ng mga proyekto na nagpapakita ng malaking hanay ng mga posibilidad na nagbubukas kapag pinagsama ang Kinect at Arduino.

Pagsubaybay sa Atmospera gamit ang Arduino

Gumagawa ang mga gumagawa sa buong mundo ng mga murang device para subaybayan ang kapaligiran, at sa pamamagitan ng hands-on na gabay na ito, kaya mo rin. Sa pamamagitan ng mga maiikling tutorial, ilustrasyon, at malinaw na sunud-sunod na tagubilin, matututunan mo kung paano lumikha ng mga gadget para sa pagsusuri sa kalidad ng aming kapaligiran, gamit ang Arduino at ilang murang sensor.

Tuklasin ang mga nakakapinsalang gas, mga particle ng alikabok tulad ng usok at ulap, at upper atmospheric haze—mga sangkap at kundisyon na kadalasang hindi nakikita ng iyong mga pandama. Matutuklasan mo rin kung paano gamitin ang siyentipikong pamamaraan upang matulungan kang matuto nang higit pa mula sa iyong mga pagsubok sa atmospera.

* Kumuha ng bilis sa Arduino gamit ang isang mabilis na electronics primer
* Bumuo ng isang sensor ng tropospheric gas upang makita ang carbon monoxide, LPG, butane, methane, benzene, at marami pang ibang gas
* Gumawa ng LED Photometer upang sukatin kung gaano karami ng asul, berde, at pulang liwanag na alon ng araw ang tumatagos sa kapaligiran
* Bumuo ng isang LED sensitivity detector—at tuklasin kung aling mga wavelength ng liwanag ang tinatanggap ng bawat LED sa iyong Photometer
* Alamin kung paano ang pagsukat ng mga light wavelength ay nagbibigay-daan sa iyong matukoy ang dami ng singaw ng tubig, ozone, at iba pang mga sangkap sa atmospera

Arduino Mastery Guide

Ang publikasyon ay isang pagsasalin sa Ruso ng isa sa mga dokumento sa pagtatrabaho sa ARDX (Starter Kit para sa Arduino) kit, na nilayon para sa mga eksperimento sa Arduino. Ang dokumentasyon ay naglalarawan ng 12 simpleng proyekto na naglalayong unang makilala ang Arduino module.

Ang pangunahing layunin ng set na ito ay magkaroon ng isang kawili-wili at kapaki-pakinabang na oras. At bukod dito, master ang iba't ibang mga elektronikong bahagi sa pamamagitan ng pag-assemble ng maliliit, simple at kawili-wiling mga aparato. Makakatanggap ka ng isang gumaganang aparato at isang tool na nagbibigay-daan sa iyo upang maunawaan ang prinsipyo ng pagpapatakbo.

Great Encyclopedia of Electricity

Ang pinakakumpletong aklat hanggang ngayon, kung saan makakahanap ka ng maraming kapaki-pakinabang na impormasyon, simula sa mga pangunahing kaalaman. Ang libro ay nagpapakita ng lahat ng mga pangunahing problema na maaari mong makaharap kapag nagtatrabaho sa kuryente at mga de-koryenteng kagamitan. Paglalarawan ng mga uri ng mga cable, wire at cord, pag-install at pagkumpuni ng mga electrical wiring at marami pang iba.

Ang aklat na "The Great Electrical Encyclopedia" ay nagpapakita ng lahat ng mga pangunahing problema na maaari mong maranasan kapag nagtatrabaho sa kuryente at mga de-koryenteng kagamitan. Paglalarawan ng mga uri ng mga cable, wire at cord, pag-install at pagkumpuni ng mga electrical wiring at marami pang iba. Ang aklat na ito ay magiging isang kapaki-pakinabang na sanggunian para sa parehong dalubhasang elektrisyano at ang manggagawa sa bahay.

Ang aklat na ito ay magiging isang kapaki-pakinabang na sanggunian para sa parehong dalubhasang elektrisyano at ang manggagawa sa bahay.

Ang notebook ng Arduino programmer

Ang notebook na ito ay dapat ituring na isang maginhawa, madaling gamitin na gabay sa command structure at syntax ng Arduino controller programming language. Upang mapanatili ang pagiging simple, ilang mga pagbubukod ang ginawa, na nagpapahusay sa gabay kapag ginamit ng mga nagsisimula bilang karagdagang mapagkukunan ng impormasyon - kasama ang iba pang mga website, libro, seminar at mga klase. Idinisenyo ang solusyon na ito upang bigyang-diin ang paggamit ng Arduino para sa mga stand-alone na gawain at, halimbawa, hindi kasama ang mas kumplikadong paggamit ng mga array o ang paggamit ng serial connection.

Simula sa paglalarawan ng istruktura ng isang Arduino C program, inilalarawan ng notebook na ito ang syntax ng mga pinakakaraniwang elemento ng wika at inilalarawan ang paggamit ng mga ito sa mga halimbawa at snippet ng code. Ang notebook ay naglalaman ng mga halimbawa ng Arduino core library function, at ang appendix ay nagbibigay ng mga halimbawang circuit at mga paunang programa.

Mga interface ng analog microcontroller

Ang publikasyong ito ay isang praktikal na gabay sa paggamit ng iba't ibang mga interface para sa pagkonekta ng mga analog na peripheral na aparato sa mga computer, microprocessor at microcontroller.

Ang mga detalye ng paggamit ng mga interface tulad ng I2C, SPI/Microware, SMBus, RS-232/485/422, 4-20 mA current loop, atbp. ay ibinibigay ang pangkalahatang-ideya ng isang malaking bilang ng mga modernong sensor: temperatura, optical , CCD, magnetic, strain gauge, atbp. e. Mga Controller, ADC at DAC, ang kanilang mga elemento - UVH, ION, codec, encoder ay inilarawan nang detalyado.

Ang mga actuator - mga motor, thermostat - at mga isyu ng kanilang kontrol bilang bahagi ng mga awtomatikong control system ng iba't ibang uri (relay, proportional at PID) ay isinasaalang-alang. Ang aklat ay nilagyan ng mga guhit na malinaw na kumakatawan sa mga tampok ng hardware at software ng paggamit ng mga elemento ng analog at digital na teknolohiya. Magiging interesado ito hindi lamang sa mga nagsisimulang radio amateurs, kundi pati na rin sa mga espesyalista na may karanasan sa pagtatrabaho sa analog at digital na kagamitan, pati na rin sa mga mag-aaral ng mga teknikal na kolehiyo at unibersidad.

Gabay sa paggamit ng mga AT command para sa GSM/GPRS modem

Ang manwal na ito ay nagbibigay ng detalyadong paglalarawan ng kumpletong hanay ng mga AT command para sa pagtatrabaho sa mga Wavecom modem. Ang mga espesyal na AT command ay ibinibigay para sa pagtatrabaho sa mga IP stack protocol na ipinatupad sa software sa Wavecom modem.

Ang aklat ay naglalayon sa mga developer na lumikha ng software at hardware-software na mga application batay sa mga produkto ng Wavecom. Inirerekomenda din ang manual para sa mga inhinyero na responsable para sa pagpapatakbo ng mga system para sa iba't ibang layunin na gumagamit ng mga GSM network bilang isang channel ng paghahatid ng data. Isang mahusay na reference na libro para sa mga mag-aaral na gumagamit ng paksa ng paghahatid ng data sa mga GSM network sa kanilang coursework o diploma work.

Sabihin sa amin ang tungkol sa amin

Mensahe

Kung mayroon kang karanasan sa pagtatrabaho sa Arduino at talagang may oras para sa pagkamalikhain, iniimbitahan namin ang lahat na maging mga may-akda ng mga artikulong nai-publish sa aming portal. Ang mga ito ay maaaring alinman sa mga aralin o kwento tungkol sa iyong mga eksperimento sa Arduino. Paglalarawan ng iba't ibang mga sensor at module. Mga tip at tagubilin para sa mga nagsisimula. Sumulat at mag-post ng iyong mga artikulo sa .

Sa buhay ng isang Arduino developer, maaga o huli ay darating ang panahon na ang karaniwang kapaligiran sa pag-unlad ay nagiging masikip. Kung ang mga sketch ay wala nang sapat na memorya, kailangan mo ng hard realtime at gumana nang may mga pagkaantala, o gusto mo lamang na maging mas malapit sa hardware, pagkatapos ay oras na upang lumipat sa C. Ang mga bihasang inhinyero ng electronics ay masisimangot nang mapanlait sa pagbanggit ng Arduino at magpadala ang baguhan sa isang radio shop para sa isang panghinang. Maaaring hindi ito ang pinakamasamang payo, ngunit hindi pa namin ito susundin. Kung itatapon natin ang Arduino IDE at ang wiring/processing language, maiiwan tayo ng isang mahusay na debug board, na nilagyan ng lahat ng kailangan para sa pagpapatakbo ng microcontroller. At, mahalaga, ang isang bootloader ay naka-hardwired na sa memorya ng controller, na nagbibigay-daan sa iyong i-load ang firmware nang hindi gumagamit ng programmer.

Upang magprogram sa C, kailangan namin ng AVR GCC Toolchain.

Kakailanganin din namin ang naka-install na Arduino IDE, dahil... naglalaman ito ng avrdude utility, na kinakailangan upang i-download ang firmware sa controller. Naglalaman din ang CrossPack ng avrdude, ngunit ang bersyon na kasama nito ay hindi gumagana sa Arduino.

Matapos ma-install ang lahat, gawin natin ang aming unang proyekto. Upang magsimula, magsulat tayo Makefile. Ito ay magbibigay-daan sa amin upang maiwasan ang pagpasok ng mahahabang command nang manu-mano sa tuwing kami ay nag-compile at naglo-load ng firmware.

#Controller na naka-install sa board. Maaaring iba, halimbawa atmega328 DEVICE = atmega168 #Clock frequency 16 MHz CLOCK = 16000000 #Avrdude launch command. Kailangan itong kopyahin mula sa Arduino IDE. AVRDUDE = /Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/bin/avrdude -C/Applications/Arduino.app/Contents/Resources/Java/hardware/tools/avr/etc/avrdude.conf -carduino -P/dev/tty.usbserial-A600dAAQ -b19200 -D -p atmega168 OBJECTS = main.o COMPILE = avr-gcc -Wall -Os -DF_CPU=$(CLOCK) -mmcu=$(DEVICE) lahat: main .hex .c.o: $(COMPILE) -c $< -o $@ .S.o: $(COMPILE) -x assembler-with-cpp -c $< -o $@ .c.s: $(COMPILE) -S $< -o $@ flash: all $(AVRDUDE) -U flash:w:main.hex:i clean: rm -f main.hex main.elf $(OBJECTS) main.elf: $(OBJECTS) $(COMPILE) -o main.elf $(OBJECTS) main.hex: main.elf rm -f main.hex avr-objcopy -j .text -j .data -O ihex main.elf main.hex avr-size --format=avr --mcu=$(DEVICE) main.elf

Sa file na ito kailangan naming ipasok ang aming command upang ilunsad ang avrdude. Magiging iba ang hitsura nito sa iba't ibang mga sistema. Upang malaman ang iyong opsyon, ilunsad ang Arduino IDE at lagyan ng tsek ang kahon na "Ipakita ang verbose output habang nag-upload" sa mga setting.

Ngayon naglo-load kami ng anumang sketch sa Arduino at tinitingnan ang mga mensaheng ipinapakita sa ibaba ng window. Nahanap namin ang avrdude na tawag doon, kopyahin ang lahat maliban sa -Uflash parameter at i-paste ito sa Makefile pagkatapos ng "AVRDUDE = ".


Isang mabilis na tala: ang lahat ng indentation sa Makefile ay ginagawa gamit ang mga character ng tab (Tab key). Kung papalitan ng iyong text editor ang mga character na ito ng mga puwang, tatanggihan ng make command na buuin ang proyekto.

Ngayon gumawa tayo ng file pangunahing.c- ang aktwal na teksto ng aming programa, kung saan tradisyonal naming kumukurap ang LED.

#isama #isama #define LED_PIN 5 int main() ( DDRB |= 1<< LED_PIN; while(1) { PORTB |= 1 << LED_PIN; _delay_ms(1000); PORTB &= ~(1 << LED_PIN); _delay_ms(1000); } return 0; }

Ang aming proyekto ay handa na. Buksan natin ang console sa aming direktoryo ng proyekto at ipasok ang command na "make":


Tulad ng nakikita mo, ang laki ng resultang firmware ay 180 bytes lamang. Ang isang katulad na Arduino sketch ay tumatagal ng 1116 bytes sa memorya ng controller.

Ngayon bumalik tayo sa console at ipasok ang "make flash" upang i-load ang pinagsama-samang file sa controller:


Kung nakumpleto ang pag-download nang walang mga error, ang LED na konektado sa pin 13 ng board ay masayang kumikislap. Minsan hindi mahanap ni avrdude ang board o nahuhulog dahil sa timeout - sa kasong ito, makakatulong ang pag-twist sa USB cable. Gayundin, upang maiwasan ang mga salungatan sa pag-access sa board, huwag kalimutang isara ang Arduino IDE bago ang command na "make flash".

Marahil marami sa mga bagay na inilarawan sa artikulong ito ay mukhang halata sa mga batikang developer. Sinubukan kong ilarawan ang proseso sa isang wika na madaling maunawaan hangga't maaari para sa isang baguhan na gumagamit ng Arduino at upang kolektahin sa isang lugar ang impormasyon na nakuha ko mula sa iba't ibang mga mapagkukunan at na-verify nang empirikal. Marahil ang artikulong ito ay magliligtas ng isang tao ng ilang oras.

Good luck sa mastering microcontrollers!

Sa artikulong ito, nagpasya akong magsama-sama ng isang kumpletong hakbang-hakbang na gabay para sa mga nagsisimula sa Arduino. Titingnan natin kung ano ang Arduino, kung ano ang kailangan mong simulan ang pag-aaral, kung saan magda-download at kung paano i-install at i-configure ang programming environment, kung paano ito gumagana at kung paano gamitin ang programming language, at marami pang iba na kinakailangan upang lumikha ng ganap na kumplikadong mga aparato batay sa pamilya ng mga microcontroller na ito.

Dito susubukan kong magbigay ng condensed minimum upang maunawaan mo ang mga prinsipyo ng pagtatrabaho sa Arduino. Para sa isang mas kumpletong paglulubog sa mundo ng mga programmable microcontrollers, bigyang pansin ang iba pang mga seksyon at artikulo ng site na ito. Mag-iiwan ako ng mga link sa iba pang materyal sa site na ito para sa mas detalyadong pag-aaral ng ilang aspeto.

Ano ang Arduino at para saan ito?

Ang Arduino ay isang electronic construction kit na nagpapahintulot sa sinuman na lumikha ng iba't ibang mga electro-mechanical device. Ang Arduino ay binubuo ng software at hardware. Kasama sa bahagi ng software ang isang development environment (isang programa para sa pagsusulat at pag-debug ng firmware), maraming handa at maginhawang library, at isang pinasimpleng programming language. Kasama sa hardware ang isang malaking linya ng mga microcontroller at handa na mga module para sa kanila. Salamat dito, napakadali ng pagtatrabaho sa Arduino!

Sa tulong ng Arduino maaari kang matuto ng programming, electrical engineering at mechanics. Ngunit ito ay hindi lamang isang pang-edukasyon na tagabuo. Batay dito, maaari kang gumawa ng mga talagang kapaki-pakinabang na device.
Simula sa mga simpleng kumikislap na ilaw, weather station, automation system at nagtatapos sa smart home system, CNC machine at unmanned aerial vehicle. Ang mga posibilidad ay hindi kahit na limitado sa pamamagitan ng iyong imahinasyon, dahil mayroong isang malaking bilang ng mga tagubilin at mga ideya para sa pagpapatupad.

Arduino Starter Kit

Upang simulan ang pag-aaral ng Arduino, kailangan mong kunin ang microcontroller board mismo at mga karagdagang bahagi. Pinakamainam na bumili ng Arduino starter kit, ngunit maaari mong piliin ang lahat ng kailangan mo sa iyong sarili. Inirerekomenda ko ang pagpili ng isang set dahil mas madali ito at madalas na mas mura. Narito ang mga link sa pinakamahusay na mga set at indibidwal na bahagi na tiyak na kakailanganin mong pag-aralan:

Basic Arduino kit para sa mga nagsisimula:Bumili
Malaking set para sa pagsasanay at mga unang proyekto:Bumili
Set ng mga karagdagang sensor at module:Bumili
Ang Arduino Uno ay ang pinakapangunahing at maginhawang modelo mula sa linya:Bumili
Walang solder na breadboard para sa madaling pag-aaral at pag-prototyping:Bumili
Set ng mga wire na may maginhawang konektor:Bumili
LED set:Bumili
Resistor kit:Bumili
Mga Pindutan:Bumili
Potentiometers:Bumili

Arduino IDE development environment

Upang magsulat, mag-debug at mag-download ng firmware, kailangan mong i-download at i-install ang Arduino IDE. Ito ay isang napaka-simple at maginhawang programa. Sa aking website ay inilarawan ko na ang proseso ng pag-download, pag-install at pag-configure ng development environment. Samakatuwid, dito ako ay mag-iiwan lamang ng mga link sa pinakabagong bersyon ng programa at sa

Bersyon Windows Mac OS X Linux
1.8.2

Arduino programming language

Kapag mayroon kang microcontroller board sa iyong mga kamay at isang development environment na naka-install sa iyong computer, maaari mong simulan ang pagsusulat ng iyong mga unang sketch (firmware). Upang gawin ito, kailangan mong maging pamilyar sa programming language.

Gumagamit ang Arduino programming ng pinasimpleng bersyon ng C++ na wika na may mga paunang natukoy na function. Tulad ng iba pang C-like programming language, mayroong ilang mga panuntunan para sa pagsusulat ng code. Narito ang mga pinakapangunahing:

  • Ang bawat pagtuturo ay dapat sundan ng semicolon (;)
  • Bago magdeklara ng function, dapat mong tukuyin ang uri ng data na ibinalik ng function, o walang bisa kung hindi nagbabalik ng value ang function.
  • Kinakailangan din na ipahiwatig ang uri ng data bago magdeklara ng variable.
  • Ang mga komento ay itinalaga: // Inline at /* block */

Maaari kang matuto nang higit pa tungkol sa mga uri ng data, function, variable, operator at construct ng wika sa page sa Hindi mo kailangang isaulo at tandaan ang lahat ng impormasyong ito. Maaari kang palaging pumunta sa reference na libro at tingnan ang syntax ng isang partikular na function.

Ang lahat ng Arduino firmware ay dapat maglaman ng hindi bababa sa 2 function. Ito ay setup() at loop().

pag-andar ng pag-setup

Upang gumana ang lahat, kailangan nating magsulat ng sketch. Gawin natin ang LED na lumiwanag pagkatapos pindutin ang pindutan, at lumabas pagkatapos ng susunod na pagpindot. Narito ang aming unang sketch:

// variable na may mga pin ng mga konektadong device int switchPin = 8; int ledPin = 11; // variables upang iimbak ang estado ng button at LED boolean lastButton = LOW; boolean currentButton = LOW; boolean ledOn = false; void setup() ( pinMode(switchPin, INPUT); pinMode(ledPin, OUTPUT); ) // function para sa pag-debouncing ng boolean debounse(boolean last) ( boolean current = digitalRead(switchPin); if(huling != kasalukuyang) ( delay ( 5); kasalukuyang = digitalRead(switchPin); ) return current ) void loop() ( currentButton = debounse(lastButton);if(lastButton == LOW && currentButton == HIGH) ( ledOn = !ledOn; ) lastButton = currentButton ; digitalWrite (ledPin, ledOn);

// mga variable na may mga pin ng mga konektadong device

int switchPin = 8 ;

int ledPin = 11 ;

// variable upang iimbak ang estado ng button at LED

boolean lastButton = LOW ;

boolean currentButton = LOW ;

boolean ledOn = false ;

void setup() (

pinMode(switchPin, INPUT);

pinMode(ledPin, OUTPUT);

// function para sa debouncing

boolean debounse (huling boolean ) (

kasalukuyang boolean = digitalRead(switchPin);

kung (huling != kasalukuyan ) (

pagkaantala(5);

kasalukuyang = digitalRead(switchPin);

ibalik ang kasalukuyang;

void loop() (

currentButton = debounse(lastButton);

kung (lastButton == LOW && currentButton == HIGH ) (

ledOn = ! ledOn ;

lastButton = currentButton ;

digitalWrite(ledPin, ledOn);

Sa sketch na ito, gumawa ako ng karagdagang function ng debounse upang pigilan ang bounce ng contact. Mayroong impormasyon tungkol sa contact bounce sa aking website. Tiyaking suriin ang materyal na ito.

PWM Arduino

Ang pulse width modulation (PWM) ay ang proseso ng pagkontrol ng boltahe gamit ang duty cycle ng isang signal. Iyon ay, gamit ang PWM maaari nating maayos na kontrolin ang pagkarga. Halimbawa, maaari mong maayos na baguhin ang liwanag ng isang LED, ngunit ang pagbabagong ito sa liwanag ay nakuha hindi sa pamamagitan ng pagpapababa ng boltahe, ngunit sa pamamagitan ng pagtaas ng mga pagitan ng mababang signal. Ang prinsipyo ng pagpapatakbo ng PWM ay ipinapakita sa diagram na ito:

Kapag inilapat namin ang PWM sa LED, nagsisimula itong mabilis na lumiwanag at mawawala. Hindi ito nakikita ng mata ng tao dahil masyadong mataas ang frequency. Ngunit kapag kumukuha ng video, malamang na makikita mo ang mga sandali kapag ang LED ay hindi umiilaw. Mangyayari ito sa kondisyon na ang frame rate ng camera ay hindi multiple ng PWM frequency.

Ang Arduino ay may built-in na pulse width modulator. Maaari mo lamang gamitin ang PWM sa mga pin na sinusuportahan ng microcontroller. Halimbawa, ang Arduino Uno at Nano ay may 6 na PWM pin: ito ang mga pin D3, D5, D6, D9, D10 at D11. Maaaring magkaiba ang mga pin sa iba pang mga board. Makakahanap ka ng paglalarawan ng board kung saan ka interesado

Upang magamit ang PWM sa Arduino mayroong isang function na tumatagal bilang mga argumento ang numero ng pin at ang halaga ng PWM mula 0 hanggang 255. Ang 0 ay 0% na puno ng mataas na signal, at ang 255 ay 100%. Sumulat tayo ng isang simpleng sketch bilang isang halimbawa. Gawin natin nang maayos ang LED, maghintay ng isang segundo at mag-fade out nang maayos, at iba pa ang ad infinitum. Narito ang isang halimbawa ng paggamit ng function na ito:

// Ang LED ay konektado sa pin 11 int ledPin = 11; void setup() ( pinMode(ledPin, OUTPUT); ) void loop() ( para sa (int i = 0; i< 255; i++) { analogWrite(ledPin, i); delay(5); } delay(1000); for (int i = 255; i >0; i--) ( analogWrite(ledPin, i); pagkaantala(5); ) )

// LED na konektado sa pin 11

int ledPin = 11 ;

void setup() (

pinMode(ledPin, OUTPUT);

void loop() (

para sa (int i = 0 ; i< 255 ; i ++ ) {

analogWrite(ledPin, i);

pagkaantala(5);

pagkaantala(1000);

para sa (int i = 255; i > 0; i -- ) (

Pinakamahusay na gumagana ang simulator na ito sa Chrome browser
Tingnan natin ang Arduino nang mas malapitan.

Ang Arduino ay hindi isang malaking computer na maaaring konektado sa mga panlabas na circuit. Gumagamit ang Arduino Uno ng Atmega 328P
Ito ang pinakamalaking chip sa board. Ang chip na ito ay nagpapatupad ng mga program na nakaimbak sa memorya nito. Maaari mong i-download ang programa sa pamamagitan ng usb gamit ang Arduino IDE. Nagbibigay din ang USB port ng kapangyarihan sa arduino.

May hiwalay na power connector. Ang board ay may dalawang pin na may label na 5v at 3.3v, na kailangan para mapagana ang iba't ibang device. Makakakita ka rin ng mga pin na may markang GND, ito ang mga ground pin (ang lupa ay 0V). Ang Arduino platform ay mayroon ding 14 na digital na pin, na may label na 0 hanggang 13, na kumokonekta sa mga panlabas na node at may dalawang estado, mataas o mababa (on o off). Ang mga contact na ito ay maaaring gumana bilang mga output o bilang mga input, i.e. maaari silang magpadala ng ilang data at kontrolin ang mga panlabas na device, o tumanggap ng data mula sa mga device. Ang mga susunod na pin sa board ay may label na A0-A5. Ito ay mga analog input na maaaring makatanggap ng data mula sa iba't ibang mga sensor. Ito ay lalong maginhawa kapag kailangan mong sukatin ang isang tiyak na hanay, tulad ng temperatura. Ang mga analog input ay may mga karagdagang function na maaaring paganahin nang hiwalay.

Paano gumamit ng development board.

Ang breadboard ay kinakailangan upang pansamantalang ikonekta ang mga bahagi, suriin kung paano gumagana ang aparato, bago mo ihinang ang lahat nang magkasama.
Ang lahat ng mga sumusunod na halimbawa ay binuo sa isang breadboard upang mabilis kang makagawa ng mga pagbabago sa circuit at muling magamit ang mga bahagi nang hindi naaabala sa paghihinang.

Ang breadboard ay may mga hanay ng mga butas kung saan maaari kang magpasok ng mga bahagi at wire. Ang ilan sa mga butas na ito ay konektado sa kuryente sa isa't isa.

Ang dalawang itaas at ibabang hanay ay konektado sa mga hilera sa buong board. Ang mga hilera na ito ay ginagamit upang magbigay ng kapangyarihan sa circuit. Maaaring ito ay 5V o 3.3V, ngunit sa alinmang paraan, ang unang bagay na kailangan mong gawin ay ikonekta ang 5V at GND sa breadboard tulad ng ipinapakita sa larawan. Minsan ang mga koneksyon sa hilera na ito ay maaaring masira sa gitna ng board, pagkatapos kung kailangan mo, maaari mong ikonekta ang mga ito tulad ng ipinapakita sa larawan.








Ang natitirang mga butas, na matatagpuan sa gitna ng board, ay pinagsama-sama sa mga grupo ng limang butas. Ginagamit ang mga ito upang ikonekta ang mga bahagi ng circuit.


Ang unang bagay na ikokonekta namin sa aming microcontroller ay isang LED. Ang diagram ng koneksyon sa kuryente ay ipinapakita sa larawan.

Bakit kailangan ang isang risistor sa isang circuit? Sa kasong ito, nililimitahan nito ang kasalukuyang dumadaan sa LED. Ang bawat LED ay dinisenyo para sa isang tiyak na kasalukuyang, at kung ang kasalukuyang ito ay mas mataas, ang LED ay mabibigo. Maaari mong malaman kung anong halaga ang dapat gamitin ng risistor gamit ang batas ng Ohm. Para sa mga hindi nakakaalam o nakakalimutan, sinasabi ng batas ng Ohm na mayroong isang linear na relasyon sa pagitan ng kasalukuyang at boltahe. Iyon ay, ang mas maraming boltahe na inilalapat namin sa risistor, mas maraming kasalukuyang dadaloy dito.
V=I*R
saan V- boltahe sa buong risistor
ako- kasalukuyang sa pamamagitan ng risistor
R- paglaban na kailangang hanapin.
Una, dapat nating malaman ang boltahe sa risistor. Karamihan sa mga 3mm o 5mm na LED na gagamitin mo ay mayroong operating voltage na 3V. Nangangahulugan ito na kailangan nating patayin ang 5-3 = 2V sa risistor.

Pagkatapos ay kalkulahin namin ang kasalukuyang dumadaan sa risistor.
Karamihan sa mga 3mm at 5mm na LED ay kumikinang sa buong liwanag sa 20mA. Ang isang kasalukuyang mas malaki kaysa dito ay maaaring hindi paganahin ang mga ito, habang ang isang kasalukuyang mas mababang intensity ay magbabawas ng kanilang liwanag nang hindi nagdudulot ng anumang pinsala.

Kaya, gusto naming ikonekta ang LED sa 5V circuit upang magdala ito ng kasalukuyang 20mA. Dahil ang lahat ng mga bahagi ay kasama sa isang circuit, ang risistor ay magkakaroon din ng kasalukuyang 20mA.
Nakukuha namin
2V = 20 mA * R
2V = 0.02A * R
R = 100 Ohm

Ang 100 Ohms ay ang pinakamababang pagtutol, mas mahusay na gumamit ng kaunti pa, dahil ang mga LED ay may ilang pagkakaiba-iba sa mga katangian.
Sa halimbawang ito, ginagamit ang isang 220 ohm risistor. Dahil lang marami ang may-akda: wink: .

Ipasok ang LED sa mga butas sa gitna ng board upang ang mahabang lead nito ay konektado sa isa sa mga lead ng risistor. Ikonekta ang pangalawang dulo ng risistor sa 5V, at ikonekta ang pangalawang lead ng LED sa GND. Dapat umilaw ang LED.

Pakitandaan na may pagkakaiba sa kung paano mo ikinonekta ang LED. Ang kasalukuyang daloy mula sa mas mahabang terminal patungo sa mas maikli. Sa diagram maaari mong isipin na ang kasalukuyang dumadaloy sa direksyon kung saan nakadirekta ang tatsulok. Subukang baligtarin ang LED at makikita mong hindi ito sisindi.

Ngunit kung paano mo ikinonekta ang risistor ay walang pagkakaiba sa lahat. Maaari mong ibalik ito o subukang ikonekta ito sa ibang pin ng LED, hindi ito makakaapekto sa pagpapatakbo ng circuit. Lilimitahan pa rin nito ang kasalukuyang sa pamamagitan ng LED.

Anatomy ng Arduino Sketch.

Ang mga programa para sa Arduino ay tinatawag na sketch. Binubuo sila ng dalawang pangunahing pag-andar. Function setup at pag-andar loop
Sa loob ng function na ito ay itatakda mo ang lahat ng mga pangunahing setting. Aling mga pin ang gagana bilang input o output, kung aling mga library ang ikokonekta, ang magpapasimula ng mga variable. Function Setup() ay tumatakbo nang isang beses lamang sa panahon ng sketch, kapag nagsimula ang pagpapatupad ng programa.
ito ang pangunahing function na ipapatupad pagkatapos setup(). Sa katunayan, ito mismo ang programa. Ang function na ito ay tatakbo nang walang katapusan hanggang sa patayin mo ang power.

Arduino flashing LED



Sa halimbawang ito, ikokonekta namin ang isang LED circuit sa isa sa mga digital pin ng Arduino at i-on at i-off ito gamit ang isang program, at matututunan mo rin ang ilang kapaki-pakinabang na function.

Ang function na ito ay ginagamit sa setup() bahagi ng programa at nagsisilbing simulan ang mga pin na gagamitin mo bilang input (INPUT) o labasan (OUTPUT). Hindi mo magagawang basahin o isulat ang data mula sa pin hanggang sa itakda mo ito ayon sa pagkakabanggit pinMode. Ang function na ito ay may dalawang argumento: pinNumber ay ang pin number na gagamitin mo.

Mode-nagtatakda kung paano gagana ang pin. Sa pasukan (INPUT) o labasan (OUTPUT). Upang sindihan ang LED dapat tayong magbigay ng signal MULA SA Arduino. Upang gawin ito, i-configure namin ang output pin.
- ang function na ito ay ginagamit upang itakda ang estado (estado) pina (pinNumber). Mayroong dalawang pangunahing estado (talagang 3 sa kanila), ang isa ay MATAAS, magkakaroon ng 5V sa pin, iba iyon Mababa at ang pin ay magiging 0v. Nangangahulugan ito na upang sindihan ang LED kailangan naming itakda ang pin na konektado sa LED sa isang mataas na antas MATAAS.

Pagkaantala. Nagsisilbi upang maantala ang pagpapatakbo ng programa para sa isang panahon na tinukoy sa msec.
Nasa ibaba ang code na nagpapa-blink sa LED.
//LED Blink int ledPin = 7;//Arduino pin kung saan nakakonekta ang LED void setup() ( pinMode(ledPin, OUTPUT);// set the pin as OUTPUT) void loop() ( digitalWrite(ledPin, HIGH) ;// i-on ang LED delay(1000);// delay 1000 ms (1 sec) digitalWrite(ledPin, LOW);//I-off ang LED delay(1000);//wait 1 sec)

Maliit na paliwanag sa code.
Ang mga linyang nagsisimula sa "//" ay mga komento at hindi pinapansin ng Arduino.
Ang lahat ng mga utos ay nagtatapos sa isang semicolon kung nakalimutan mo ang mga ito, makakatanggap ka ng isang mensahe ng error.

ledPin ay isang variable. Ang mga variable ay ginagamit sa mga programa upang mag-imbak ng mga halaga. Sa halimbawang ito, ang variable ledPin ang halaga ay itinalaga sa 7, ito ang Arduino pin number. Kapag ang Arduino program ay nakatagpo ng isang linya na may variable ledPin, gagamitin nito ang halagang tinukoy namin kanina.
Kaya record pinMode(ledPin, OUTPUT) katulad ng pagre-record pinMode(7, OUTPUT).
Ngunit sa unang kaso, kailangan mo lamang baguhin ang variable at magbabago ito sa bawat linya kung saan ito ginagamit, at sa pangalawang kaso, upang baguhin ang variable, kakailanganin mong gumawa ng mga pagbabago nang manu-mano sa bawat command.

Ang unang linya ay nagpapahiwatig ng uri ng variable. Kapag nagprograma ng Arduino, mahalagang palaging ideklara ang uri ng mga variable. Sa ngayon sapat na para malaman mo iyon INT nag-aanunsyo ng negatibo at positibong mga numero.
Nasa ibaba ang isang simulation ng sketch. I-click ang simula upang makita ang circuit sa pagkilos.

Gaya ng inaasahan, lumalabas ang LED at bumubukas muli pagkatapos ng isang segundo. Subukang baguhin ang pagkaantala upang makita kung paano ito gumagana.

Kontrol ng maraming LED.

Sa halimbawang ito, matututunan mo kung paano kontrolin ang maraming LED. Upang gawin ito, mag-install ng 3 pang LED sa board at ikonekta ang mga ito sa mga resistor at Arduino pin tulad ng ipinapakita sa ibaba.

Upang isa-isang i-on at i-off ang mga LED, kailangan mong magsulat ng isang programa na katulad nito:
//Multi LED Blink int led1Pin = 4; int led2Pin = 5; int led3Pin = 6; int led4Pin = 7; void setup() ( // itakda ang mga pin bilang OUTPUT pinMode(led1Pin, OUTPUT); pinMode(led2Pin, OUTPUT); pinMode(led3Pin, OUTPUT); pinMode(led4Pin, OUTPUT); ) void loop() ( digitalWrite(led1Pin, HIGH );//i-on ang LED delay(1000);//delay 1 sec digitalWrite(led1Pin, LOW);//i-off ang LED delay(1000);//delay 1 sec //gawin ang parehong para sa iba pang 3 LEDs digitalWrite(led2Pin , HIGH);//ilaw ang LED delay(1000);//delay 1 sec digitalWrite(led2Pin, LOW);//extinguish the LED delay(1000);//delay 1 sec digitalWrite(led3Pin, HIGH );//ilaw ang LED delay(1000);// delay 1 seg digitalWrite(led3Pin, LOW);//patayin ang LED delay(1000);//delay 1 sec digitalWrite(led4Pin, HIGH);//i-on ang LED delay(1000);// delay 1 sec digitalWrite(led4Pin, LOW);//extinguish the LED delay(1000);//delay 1 sec)

Ang program na ito ay gagana nang mahusay, ngunit hindi ito ang pinakanakapangangatwiran na solusyon. Kailangang baguhin ang code. Upang ang programa ay gumana nang paulit-ulit, gagamit kami ng isang construction na tinatawag na .
Ang mga loop ay kapaki-pakinabang kapag kailangan mong ulitin ang parehong pagkilos nang maraming beses. Sa code sa itaas inuulit namin ang mga linya

DigitalWrite(led4Pin, HIGH); pagkaantala(1000); digitalWrite(led4Pin, LOW); pagkaantala(1000);
buong sketch code sa attachment (mga download: 1187)

Pagsasaayos ng liwanag ng LED

Minsan kakailanganin mong baguhin ang liwanag ng mga LED sa programa. Magagawa ito gamit ang command analogWrite() . I-on at off ng command na ito ang LED nang napakabilis na hindi nakikita ng mata ang pagkutitap. Kung ang LED ay naka-on sa kalahati ng oras at sa kalahati ng oras, ito ay biswal na lalabas na ito ay kumikinang sa kalahati ng liwanag nito. Ito ay tinatawag na pulse width modulation (PWM o PWM sa Ingles). Ang Shim ay madalas na ginagamit, dahil maaari itong magamit upang makontrol ang isang "analog" na bahagi gamit ang isang digital code. Hindi lahat ng Arduino pin ay angkop para sa mga layuning ito. Tanging ang mga konklusyon na malapit sa kung saan ang naturang pagtatalaga ay iginuhit " ~ ". Makikita mo ito sa tabi ng mga pin 3,5,6,9,10,11.
Ikonekta ang isa sa iyong mga LED sa isa sa mga PWM pin (para sa may-akda ito ay pin 9). Ngayon patakbuhin ang LED flashing sketch, ngunit baguhin muna ang command digitalWrite() sa analogWrite(). analogWrite() ay may dalawang argumento: ang una ay ang numero ng pin, at ang pangalawa ay ang halaga ng PWM (0-255), na may kaugnayan sa mga LED ito ang kanilang liwanag, at para sa mga de-koryenteng motor ang bilis ng pag-ikot. Nasa ibaba ang isang halimbawang code para sa iba't ibang LED brightness.
//Baguhin ang liwanag ng LED int ledPin = 9;//isang LED ay konektado sa pin void setup() ( pinMode(ledPin, OUTPUT);// pagsisimula ng pin sa output ) void loop() ( analogWrite( ledPin, 255);// full brightness (255/255 = 1) delay(1000);//pause 1 sec digitalWrite(ledPin, LOW);//turn off LED delay(1000);//pause 1 sec analogWrite( ledPin, 191);//brightness ng 3/4 (191/255 ~= 0.75) delay(1000);//pause 1 sec digitalWrite(ledPin, LOW);//i-off ang LED delay(1000);// i-pause ng 1 sec analogWrite(ledPin, 127); //kalahating ningning (127/255 ~= 0.5) delay(1000);//pause 1 sec digitalWrite(ledPin, LOW);//i-off ang LED delay(1000);/ /pause 1 sec analogWrite(ledPin, 63); //quarter brightness (63/255 ~= 0.25) delay(1000);//pause 1 sec digitalWrite(ledPin, LOW);//i-off ang LED delay(1000) ;//pause ng 1 segundo)

Subukang baguhin ang halaga ng PWM sa utos analogWrite() upang makita kung paano ito nakakaapekto sa liwanag.
Susunod, matututunan mo kung paano maayos na ayusin ang liwanag mula sa buo hanggang sa zero. Maaari mong, siyempre, kopyahin ang isang piraso ng code 255 beses
analogWrite(ledPin, liwanag); delay(5);//short delay brightness = brightness + 1;
Ngunit, naiintindihan mo, hindi ito magiging praktikal. Ang pinakamahusay na paraan upang gawin ito ay ang paggamit ng FOR loop na ginamit namin kanina.
Ang sumusunod na halimbawa ay gumagamit ng dalawang loop, isa upang bawasan ang liwanag mula 255 hanggang 0
para sa (int brightness=0; brightness=0; brightness--)( analogWrite(ledPin, brightness); delay(5); )
pagkaantala(5) ginamit upang pabagalin ang fade-in at fade-out na bilis 5*256=1280ms=1.28sec)
Ang unang linya ay gumagamit ng " ningning-" para mabawasan ng 1 ang halaga ng liwanag sa tuwing inuulit ang loop. Tandaan na magpapatuloy ang loop hanggang liwanag >=0.Pagpapalit ng karatula > sa karatula >= isinama namin ang 0 sa hanay ng liwanag. Ang sketch na ito ay na-modelo sa ibaba. //baguhin ang liwanag int ledPin = 9;//isang LED ay konektado sa pin void setup() na ito ( pinMode(ledPin, OUTPUT);// initialization ng output pin) void loop() ( //smoothly increase the ningning (0 hanggang 255 ) para sa (int brightness=0;brightness=0;brightness--)( analogWrite(ledPin,brightness); delay(5); ) delay(1000);//wait 1 sec //smoothly reduce brightness (255 hanggang 0) para sa (int brightness=255;brightness>=0;brightness--)( analogWrite(ledPin,brightness); delay(5); ) delay(1000);//wait 1 sec ) )
Ito ay hindi masyadong nakikita, ngunit ang ideya ay malinaw.

RGB LED at Arduino

Ang RGB LED ay talagang tatlong magkakaibang kulay na LED sa isang pakete.

Sa pamamagitan ng pagsasama ng iba't ibang LED na may iba't ibang liwanag, maaari mong pagsamahin ang mga ito upang lumikha ng iba't ibang kulay. Para sa Arduino, kung saan ang bilang ng mga antas ng liwanag ay 256, makakakuha ka ng 256^3=16581375 posibleng mga kulay. Sa katotohanan, siyempre, magkakaroon ng mas kaunti sa kanila.
Ang LED na gagamitin natin ay ang common cathode. Yung. ang lahat ng tatlong LED ay structurally konektado sa pamamagitan ng cathodes sa isang terminal. Ikokonekta namin ang pin na ito sa GND pin. Ang natitirang mga pin, sa pamamagitan ng paglilimita sa mga resistor, ay dapat na konektado sa mga PWM pin. Gumamit ang may-akda ng mga pin 9-11 sa ganitong paraan magiging posible na kontrolin ang bawat LED nang hiwalay. Ang unang sketch ay nagpapakita kung paano i-on ang bawat LED nang paisa-isa.



//RGB LED - pagsubok //pin connections int red = 9; int berde = 10; int asul = 11; void setup())( pinMode(red, OUTPUT); pinMode(blue, OUTPUT); pinMode(green, OUTPUT); ) void loop())( //turn on/off the red LED digitalWrite(red, HIGH); pagkaantala(500) ; digitalWrite(pula, LOW); MATAAS); digitalWrite(asul, LOW);

Ang sumusunod na halimbawa ay gumagamit ng mga utos analogWrite() at upang makakuha ng iba't ibang mga random na halaga ng liwanag para sa mga LED. Makakakita ka ng iba't ibang kulay na nagbabago nang random.
//RGB LED - random na kulay //pin connections int red = 9; int berde = 10; int asul = 11; void setup())( pinMode(pula, OUTPUT); pinMode(asul, OUTPUT); pinMode(berde, OUTPUT); ) void loop())( //pumili ng random na kulay analogWrite(pula, random(256)); analogWrite(asul, random(256)); analogWrite(berde, random(256));

Random(256)-nagbabalik ng random na numero sa hanay mula 0 hanggang 255.
Sa nakalakip na file ay isang sketch na magpapakita ng makinis na mga transition ng kulay mula pula hanggang berde, pagkatapos ay sa asul, pula, berde, atbp. (mga download: 326)
Gumagana ang halimbawang sketch, ngunit maraming duplicate na code. Maaari mong pasimplehin ang code sa pamamagitan ng pagsusulat ng iyong sariling helper function na maayos na magbabago mula sa isang kulay patungo sa isa pa.
Narito ang magiging hitsura nito: (mga download: 365)
Tingnan natin ang kahulugan ng function nang paisa-isa. Tinatawag ang function fader at may dalawang argumento. Ang bawat argumento ay pinaghihiwalay ng kuwit at may uri na ipinahayag sa unang linya ng kahulugan ng function: void fader(int color1, int color2). Nakikita mo na ang parehong mga argumento ay idineklara bilang int, at binigyan sila ng mga pangalan kulay1 At kulay2 bilang mga variable ng kondisyon upang tukuyin ang isang function. walang bisa nangangahulugan na ang function ay hindi nagbabalik ng anumang mga halaga, ito ay nagpapatupad lamang ng mga utos. Kung kailangan mong magsulat ng isang function na nagbalik ng resulta ng multiplikasyon, magiging ganito ang hitsura:
int multiplier(int number1, int number2)( int product = number1*number2; ibalik ang produkto; )
Pansinin kung paano namin idineklara ang Uri int bilang isang uri ng pagbabalik sa halip
walang bisa.
Sa loob ng function ay may mga utos na ginamit mo na sa nakaraang sketch, tanging ang mga numero ng pin ang napalitan ng kulay1 At kulay2. Tinatawag ang function fader, ang mga argumento nito ay kinakalkula bilang kulay 1 = pula At kulay2 = berde. Ang archive ay naglalaman ng isang kumpletong sketch gamit ang mga function (mga download: 272)

Pindutan

Ang susunod na sketch ay gagamit ng isang button na may karaniwang bukas na mga contact, nang walang latching.


Nangangahulugan ito na habang ang pindutan ay hindi pinindot, walang kasalukuyang dumadaloy dito, at pagkatapos na mailabas, ang pindutan ay bumalik sa orihinal na posisyon nito.
Bilang karagdagan sa pindutan, ang circuit ay gumagamit ng isang risistor. Sa kasong ito, hindi nito nililimitahan ang kasalukuyang, ngunit "pull" ang pindutan sa 0V (GND). Yung. Hanggang sa pinindot ang button, bababa ang Arduino pin kung saan ito nakakonekta. Ang risistor na ginamit sa circuit ay 10 kOhm.


//determine when the button is pressed int buttonPin = 7; void setup())( pinMode(buttonPin, INPUT);//initialize ang pin sa input Serial.begin(9600);//initialize ang serial port) void loop())( if (digitalRead(buttonPin)==HIGH )(//kung ang pindutan ay pinindot Serial.println("pinindot"); // ipakita ang inskripsiyon na "pinindot" ) iba pa ( Serial.println("hindi pinindot");// kung hindi ay "hindi pinindot" ) )
Mayroong ilang mga bagong command sa sketch na ito.
-Ang utos na ito ay tumatagal ng Mataas at Mababang halaga ng output na aming sinusubok. Ang output na ito ay dapat munang i-configure bilang isang input sa setup().
; //kung saan ang buttonPin ay ang pin number kung saan nakakonekta ang button.
Ang serial port ay nagpapahintulot sa Arduino na magpadala ng mga mensahe sa computer habang ang controller mismo ang nagpapatupad ng programa. Ito ay kapaki-pakinabang para sa pag-debug ng isang program, pagpapadala ng mga mensahe sa iba pang mga device o application. Upang paganahin ang paglipat ng data sa pamamagitan ng isang serial port (tinatawag ding UART o USART), kailangan mong simulan ito sa setup()

Serial.begin() ay may isang argumento lamang - ito ang bilis ng paglipat ng data sa pagitan ng Arduino at ng computer.
Gumagamit ang sketch ng command para magpakita ng mensahe sa screen sa Arduino IDE (Tools >> Serial Monitor).
- Binibigyang-daan ka ng disenyo na kontrolin ang pag-usad ng pagpapatupad ng programa sa pamamagitan ng pagsasama-sama ng ilang mga tseke sa isang lugar.
Kung ang digitalRead ay nagbabalik ng HIGH, ang salitang "pinindot" ay ipapakita sa monitor. Kung hindi (kung hindi man) ang salitang "pinakawalan" ay ipinapakita sa monitor. Ngayon ay maaari mong subukang i-on at i-off ang LED sa pamamagitan ng pagpindot sa isang button.
//button press detection na may LED output int buttonPin = 7; int ledPin = 8; void setup())( pinMode(buttonPin, INPUT);//sa pagkakataong ito ay itatakda namin ang button pin bilang INPUT pinMode(ledPin, OUTPUT); Serial.begin(9600); ) void loop())( if (digitalRead(buttonPin )= =HIGH)( digitalWrite(ledPin, HIGH); Serial.println("pindot"); ) iba pa ( digitalWrite(ledPin, LOW); Serial.println("hindi pinindot"); ) )

Analog input.

analogRead nagbibigay-daan sa iyo na magbasa ng data mula sa isa sa mga analog na pin ng Arduino at nagpapakita ng halaga sa hanay mula 0 (0V) hanggang 1023 (5V). Kung ang boltahe sa analog input ay 2.5V, pagkatapos ay 2.5 / 5 * 1023 = 512 ang ipi-print
analogRead ay may isang argumento lamang - Ito ang bilang ng analog input (A0-A5). Ang sumusunod na sketch ay nagpapakita ng code para sa pagbabasa ng boltahe mula sa potentiometer. Upang gawin ito, ikonekta ang isang variable na risistor, ang mga panlabas na terminal sa 5V at GND pin, at ang gitnang terminal sa A0 input.

Patakbuhin ang sumusunod na code at tingnan sa serial monitor kung paano nagbabago ang mga halaga depende sa pag-ikot ng resistor knob.
//analog input int potPin = A0;//ang gitnang pin ng potentiometer ay konektado sa pin void setup())( //analog pin ay kasama bilang input bilang default, kaya hindi kailangan ang pagsisimula Serial.begin(9600 ); ) void loop())( int potVal = analogRead(potPin);//potVal ay isang numero sa pagitan ng 0 at 1023 Serial.println(potVal)
Pinagsasama ng sumusunod na sketch ang button click sketch at ang LED brightness control sketch. Ang LED ay i-on mula sa pindutan, at ang liwanag ay kinokontrol ng isang potentiometer.
//button press detection na may LED output at variable intensity int buttonPin = 7; int ledPin = 9; int potPin = A0; void setup())( pinMode(buttonPin, INPUT); pinMode(ledPin, OUTPUT); Serial.begin(9600); ) void loop())( if (digitalRead(buttonPin)==HIGH)(//kung pinindot ang button int analogVal = analogRead(potPin); int scaledVal = mapa(analogVal, 0, 0, 255); ( digitalWrite(ledPin, LOW);//turn off kung hindi pinindot ang button Serial.println("unpressed"); ) )

Ang Arduino ay isang ready-made development board at isang napakasimpleng programming language na nagpapadali sa pagsisimula sa mga microcontroller sa halaga ng laki at bilis ng programa. Kamakailan, ang Atmel ay nagdagdag ng suporta para sa Arduino bootloader sa AVR Studio, iyon ay, maaari kang magsulat at mag-load ng mga program na nakasulat sa C, C++, o Assembler nang walang programmer. Bukod dito, maaari kang magsulat ng code sa Processing/Wiring language sa AVR Studio.
Inirerekumenda kong simulan ang pagbabasa ng artikulo na may update sa dulo!
Sa artikulong ito, nagbibigay kami ng sunud-sunod na mga tagubilin para sa pag-install ng Arduino programming software gamit ang AVR Studio. Ginawa namin bilang batayan ang pagsusuri ng mga extension ng AVR Studio mula sa site easyelectronics.ru. Ipapatakbo namin ang lahat ng mga halimbawa sa aming board.

Pag-install ng Arduino IDE

Gumagamit kami ng Arduino na bersyon 1.5.2. Maaari mong i-download ito sa opisyal na website. Ang pinakabagong bersyon (1.6.2-r2 sa oras ng pagsulat) sa ilang kadahilanan ay hindi gumagana sa Atmega8 microcontroller.
Magda-download ka ng zip archive na naka-deploy na ang kapaligiran. Ang natitira na lang ay i-unpack ito sa direktoryo ng programa.

Pag-install ng Atmel Studio

UPD

Nakikita kong sikat ang paksa at nais kong linawin ang ilang mga punto.
May tatlong paraan na sinubukan kong i-program ang isang Arduino-compatible board sa C:

  1. Direktang sumulat sa Arduino IDE sa C. Dapat mong maunawaan na ang Processing/Wiring ay hindi isang wika, ngunit isang set lamang ng mga macro at library. Kapag sumulat ka dito, tinitingnan nito ang mga header nito, kino-convert ang iyong code na nababasa ng tao sa C at pagkatapos ay iko-compile sa karaniwang AVR GCC compiler. Kung magsusulat ka ng code sa C, hindi nito maa-access ang libs nito at agad na isasama ang lahat ayon sa nararapat, PERO!... kasabay nito, idaragdag ng linker sa iyong proyekto ang anumang gusto niya. Ang kalamangan ay hindi mo kailangan ng anuman maliban sa Arduino IDE. Ang kawalan ay ang magic, na nakatago mula sa developer. Ang pamamaraang ito ay kadalasang ginagamit sa mga kaso kung saan kinakailangan na ipatupad ang isang function na hindi ibinigay ng aming mga kaibigang Italyano sa kanilang wika.
  2. Ang pamamaraan na iminungkahi sa artikulong ito (sa katunayan, ang kakaiba, dahil pinagsasama nito ang lahat ng mga pagkukulang). Sa ideolohikal, kailangan ang extension na ito upang makapag-program sa Processing/Wiring at magamit ang Atmel Studio bilang isang interface. Mayroon ding bayad na functionality na nagbibigay-daan sa iyong i-debug ang code, ngunit hindi ko pa ito sinubukan. Kaya, mahalagang, kapag nagprograma, ang parehong bagay ay nangyayari tulad ng sa unang opsyon, ngunit nagtatrabaho ka sa ibang IDE. Kasabay nito, mula sa punto ng view ng resulta, makakakuha ka ng parehong bagay. Kung na-program mo ang Arduino at nagpasyang gawin ito sa C, huwag mag-atubiling sumulat nang direkta sa Arduino IDE. Kung hindi mo gusto ang interface, maaari kang gumamit ng isang normal na editor (inirerekumenda ko ang Sublime Text). Kung nagtatrabaho ka sa Atnel Studio at gusto mong direktang i-flash ang iyong board mula sa interface nito o isulat ang Processing/Wiring dito (bigla!), ang addon na ito ay para sa iyo. Sa pamamagitan ng paraan, ang studio ay gumagana lamang sa ilalim ng Windows, iyon ay, ang pamamaraan ay hindi para sa lahat. Isinulat ko lamang ang artikulong ito dahil nakakita ako ng bagong paraan para sa aking sarili, ngunit hindi ko ito gusto.
  3. Ang ikatlong paraan, sa tingin ko, ay ang pinakamahusay para sa isang advanced na gumagamit. Sa una, lahat ay nangyayari gaya ng dati - sumulat ka ng code, nag-compile at kumuha ng hex file. Pagkatapos, sa pag-alala na mayroon kang regular na debug board na may bootloader sa iyong mga kamay, mag-download ng utility na maaaring ma-access ang bootloader na ito at ilipat ang iyong code sa memorya. Nai-post na namin ang mga sunud-sunod na tagubilin. Sa kasong ito, ang developer ay tumatanggap ng maximum na kontrol sa lahat ng mga function, ngunit ang mga problema ay maaaring lumitaw dahil sa paggamit ng isang third-party na bootloader.

Gusto kong ipakita ang isa pang bagay na nangyayari sa Arduino. Anuman ang iyong gawin, ang Arduino IDE ay tiyak na i-on ang mga peripheral mismo. Halimbawa, magsisimula ito ng mga timer. At kung gusto mong magtrabaho kasama sila sa C, maaari mong makita na hindi sila gumagana tulad ng iyong inaasahan. At ito ay maaaring maging isang tunay na problema. At mayroong maraming tulad na mga halimbawa, iyon ay, mayroong maraming mga potensyal na rake, saklay at mga bug.
Kung nag-upload ka lang ng isang hex na file, maaari lamang lumitaw ang mga problema dahil sa bootloader. Sa ngayon, isa lang ang nahanap ko - pagkatapos makumpleto ang bootloader, nananatiling naka-enable ang UART. Kung sumulat ka sa pamamagitan ng Arduino IDE, pagkatapos ay ipapasok ito sa iyong code upang hindi paganahin ito at kung sino pa ang nakakaalam. Kung gusto mo lang patakbuhin ang iyong hex, hindi ka magkakaroon ng kontrol sa mga binti ng UART. Kakailanganin mong manu-manong magdagdag ng UART disable sa iyong proyekto. Ang mga halimbawa ng artifact at code na ito ay inilarawan nang detalyado sa .
Well, sa konklusyon. Karamihan sa mga board na katugma sa Arduino ay may connector para sa isang ISP programmer. Kung bibilhin mo ang programmer na ito mula sa Chinese para sa 3-4 dolyar, mabilis mong makakalimutan ang lahat ng mga problemang ito.

Lubos kaming matutuwa kung susuportahan mo ang aming mapagkukunan at bisitahin ang aming tindahan ng produkto.