Мазмуну:

Arduinoго киришүү: 15 кадам (сүрөттөр менен)
Arduinoго киришүү: 15 кадам (сүрөттөр менен)

Video: Arduinoго киришүү: 15 кадам (сүрөттөр менен)

Video: Arduinoго киришүү: 15 кадам (сүрөттөр менен)
Video: Sharp IR GP2Y0A51SK0F Arduino менен аралыкты билгичти колдонуу (2см-15см) 2024, Ноябрь
Anonim
Arduino менен таанышуу
Arduino менен таанышуу

An Arduino-булагы ачык булак микроконтроллерди иштеп чыгуу тактасы. Жөнөкөй англис тилинде сен Arduino аркылуу сенсорлорду окуп, мотор жана жарык сыяктуу нерселерди башкара аласың. Бул сизге чыныгы дүйнөдө нерселер менен өз ара аракеттене турган программаларды бул тактага жүктөөгө мүмкүндүк берет. Муну менен сиз жалпы дүйнөгө жооп бере турган жана жооп бере турган түзмөктөрдү жасай аласыз.

Мисалы, идишке отургузулган нымдуулук сенсорун окуп, ал өтө кургап кетсе, автоматтык сугаруу системасын күйгүзө аласыз. Же болбосо, сиз интернет роутериңизге туташкан өзүнчө чат серверин түзө аласыз. Же сиз мышыгыңыз үй жаныбарларынын эшигинен өткөн сайын твит жаза аласыз. Же болбосо, эртең менен ойготкуч өчкөндө, аны бир чыны кофе менен баштасаңыз болот.

Негизинен, кандайдыр бир жол менен электр энергиясы менен көзөмөлдөнө турган нерсе болсо, Arduino кандайдыр бир жол менен аны менен иштей алат. Ал электр энергиясы менен көзөмөлдөнбөсө дагы, сиз аны менен иштөө үчүн болгон нерселерди (мотор жана электромагнит сыяктуу) колдонсоңуз болот.

Arduino мүмкүнчүлүктөрү чексиз. Ошентип, бир эле окуу куралы сиз билишиңиз керек болгон нерселердин бардыгын камтыйт. Айтор, мен Arduino'ну иштетүү үчүн керектүү болгон негизги көндүмдөргө жана билимдерге негизги сереп берүү үчүн колумдан келгендин баарын кылдым. Башка эч нерсе жок болсо, бул андан ары эксперименттерге жана үйрөнүүгө трамплин катары иштеши керек.

1 -кадам: Ардуинолордун ар кандай түрлөрү

Ардуинолордун ар кандай түрлөрү
Ардуинолордун ар кандай түрлөрү
Ардуинолордун ар кандай түрлөрү
Ардуинолордун ар кандай түрлөрү
Ардуинолордун ар кандай түрлөрү
Ардуинолордун ар кандай түрлөрү

Ардуинолордун ар кандай түрлөрү бар. Бул сиз туш болушу мүмкүн болгон Arduino такталарынын кеңири таралган түрлөрүнө кыскача сереп. Учурда колдоого алынган Arduino такталарынын толук тизмеси үчүн Arduino аппараттык барагын караңыз.

Arduino Uno

Ардуинонун эң кеңири таралган версиясы - Arduino Uno. Бул такта көпчүлүк адамдар Arduino жөнүндө сөз болгондо ушуну айтышат. Кийинки кадамда, анын өзгөчөлүктөрү боюнча дагы толук маалымат бар.

Arduino NG, Diecimila жана Duemilanove (Мурунку версиялар)

Arduino Uno продукт линиясынын эски версиялары NG, Diecimila жана Duemilanoveдон турат. Мурдагы такталар жөнүндө белгилей кетчү маанилүү нерсе, аларда Arduino Uno өзгөчөлүгү жок. Кээ бир негизги айырмачылыктар:

  • Diecimila жана NG ATMEGA168 чиптерин колдонушат (күчтүү ATMEGA328ден айырмаланып),
  • Diecimila да, NG да USB портунун жанында секиргичке ээ жана USB же батарея кубатын кол менен тандоону талап кылат.
  • Arduino NG программаны жүктөө алдында тактадагы эс алуу баскычын бир нече секунд кармап турууну талап кылат.

Мэга 2560

Arduino Mega 2560 - Arduino үй -бүлөсүнүн эң көп кездешкен экинчи версиясы. Arduino Mega Arduino Uno бифир улуу агасына окшош. Бул 256 КБ эс тутумуна ээ (Uno караганда 8 эсе көп). Ошондой эле 54 кирүү жана чыгуу казыктары болгон, алардын 16сы аналогдук пиндер, ал эми 14ү PWM кыла алат. Бирок, бардык кошумча функциялар бир аз чоңураак платанын наркына келет. Бул сиздин долбоорду күчтүүрөөк кылышы мүмкүн, бирок ошону менен бирге долбооруңузду чоңойтот. Көбүрөөк маалымат алуу үчүн расмий Arduino Mega 2560 баракчасын караңыз.

Arduino Mega ADK

Ардуинонун бул адистештирилген версиясы негизинен Android смартфондору менен иштөө үчүн атайын иштелип чыккан Arduino Mega. Бул дагы мураска калган версия.

Ардуино Юн

Arduino Yun ATmega328 ордуна ATMega32U4 чипин колдонот. Бирок, аны айырмалап турган нерсе - Atheros AR9331 микропроцессорунун кошулушу. Бул кошумча чип бул тактага кадимки Arduino операциялык тутумунан тышкары Linuxту иштетүүгө мүмкүнчүлүк берет. Эгер мунун баары жетишсиз болсо, анда борттогу Wi -Fi мүмкүнчүлүгү бар. Башкача айтканда, сиз тактага каалаган башка Arduino сыяктуу нерселерди жасай аласыз, бирок сиз Wi -Fi аркылуу интернетке туташуу үчүн тактанын Linux тарабына кире аласыз. Arduino тарабы менен Linux тарабы бири-бири менен оңой эле байланыша алышат. Бул бул тактаны өтө күчтүү жана ар тараптуу кылат. Мен муну кыла турган нерсени эптеп тырмап жатам, бирок көбүрөөк билүү үчүн расмий Arduino Yun баракчасын караңыз.

Arduino Nano

Эгерде сиз стандарттуу Arduino тактасынан кичирээк болгуңуз келсе, Arduino Nano сиз үчүн! ATmega328 чиптин үстүнө орнотулган чипке таянып, Arduino бул версиясы тар жерлерге батууга жөндөмдүү кичинекей изге чейин кыскарды. Аны түз эле нан тактасына киргизсе болот, бул анын прототипин оңой кылат.

Arduino LilyPad

LilyPad кийилүүчү жана электрондук текстилдик колдонмолор үчүн иштелип чыккан. Ал кездемеге тигилип, өткөргүч жипти колдонуп тигилүүчү башка компоненттерге туташтырылган. Бул такта атайын FTDI-USB TTL сериялык программалоо кабелин колдонууну талап кылат. Көбүрөөк маалымат алуу үчүн, Arduino LilyPad баракчасы татыктуу баштапкы чекит.

(Бул беттеги кээ бир шилтемелер өнөктөш шилтемелер экенин эске алыңыз. Бул сиз үчүн буюмдун баасын өзгөртпөйт. Мен жаңы долбоорлорду ишке ашыруу үчүн алган акчаны кайра инвестициялайм. Эгерде сиз альтернативдүү жеткирүүчүлөр үчүн кандайдыр бир сунуштарды кааласаңыз, мага уруксат бериңиз билем.)

2 -кадам: Arduino Uno өзгөчөлүктөрү

Arduino Uno өзгөчөлүктөрү
Arduino Uno өзгөчөлүктөрү

Кээ бир адамдар бүт Arduino тактасын микроконтроллер деп ойлошот, бирок бул так эмес. Arduino тактасы чындыгында Atmel микроконтроллери менен программалоо жана прототиптөө үчүн атайын иштелип чыккан схема.

Arduino тактасынын жакшы жери-бул салыштырмалуу арзан, компьютердин USB портуна туташат жана аны орнотуу жана колдонуу оңой (башка өнүктүрүү такталарына салыштырмалуу).

Arduino Unoнун негизги өзгөчөлүктөрүнүн кээ бири төмөнкүлөрдү камтыйт:

  • Ачык булак дизайны. Ачык булактын артыкчылыгы - аны колдонуп жаткан жана көйгөйлөрүн чечкен адамдардын чоң коомчулугу. Бул сиздин долбоорлоруңузду оңдоого жардам бере турган адамды табууну жеңилдетет.
  • Оңой USB интерфейси. Борттогу чип түз эле USB портуна туташтырылып, компьютериңизге виртуалдык сериялык порт катары катталат. Бул сизге сериялык түзмөк болгондой интерфейс түзүүгө мүмкүнчүлүк берет. Бул орнотуунун пайдасы-сериялык байланыш өтө оңой (жана убакыт сынагынан өткөн) протокол жана USB аны заманбап компьютерлерге туташтырууну чындап ыңгайлуу кылат.
  • Өтө ыңгайлуу кубатты башкаруу жана орнотулган чыңалууну жөнгө салуу. Сиз 12вге чейин тышкы энергия булагын туташтырсаңыз болот, ал аны 5v жана 3.3v үчүн жөнгө салат. Ошондой эле тышкы порту жок USB портунан түз өчүрүлүшү мүмкүн.
  • Табууга оңой жана кир арзан, микроконтроллер "мээ". ATmega328 чипи Digikeyде болжол менен 2.88 долларга сатылат. Бул таймерлер, PWM казыктары, тышкы жана ички үзгүлтүктөр жана бир нече уктоо режимдери сыяктуу сансыз сонун жабдуулардын өзгөчөлүктөрүнө ээ. Көбүрөөк маалымат алуу үчүн расмий маалымат барагын караңыз.
  • 16 МГц саат. Бул аны эң ылдам микроконтроллер кылбайт, бирок көпчүлүк колдонмолор үчүн жетиштүү ылдам.
  • Сиздин кодду сактоо үчүн 32 КБ флеш -эс.
  • 13 санарип казык жана 6 аналог казык. Бул казыктар тышкы жабдыктарды Arduinoңузга туташтырууга мүмкүндүк берет. Бул казыктар чыныгы дүйнөгө Arduino эсептөө мүмкүнчүлүгүн кеңейтүү үчүн ачкыч болуп саналат. Жөн гана түзмөктөрүңүздү жана сенсорлоруңузду бул казыктардын ар бирине туура келген розеткаларга туташтырыңыз, ошондо сиз баргыңыз келет.
  • USB портун айланып өтүү жана Arduino менен сериялык түзмөк катары түз байланышуу үчүн ICSP туташтыргычы. Бул порт сиздин чипти кайра жүктөө үчүн керек, эгер ал бузулса жана компьютериңиз менен сүйлөшө албай калса.
  • Кодду оңдоону оңой кылуу үчүн санариптик пинге 13 тиркелген LED.
  • Акырында, бирок чипте программаны баштапкы абалга келтирүү үчүн баскыч.

Arduino Uno сунуштаган нерселердин бардыгын толук карап чыгуу үчүн, Arduino расмий баракчасын текшерүүнү унутпаңыз.

3 -кадам: Arduino IDE

Arduino IDE
Arduino IDE

Arduino менен эч нерсе кыла баштоодон мурун, Arduino IDEди (интеграцияланган өнүктүрүү чөйрөсү) жүктөп алып, орнотушуңуз керек. Ушул учурдан тартып биз Arduino IDEге Arduino программисти катары кайрылабыз.

Arduino программисти Processing IDEге негизделген жана C жана C ++ программалоо тилдеринин вариациясын колдонот.

Бул беттен Arduino программистинин эң акыркы версиясын таба аласыз.

4 -кадам: Аны сайыңыз

Аны сайыңыз
Аны сайыңыз

Ардуинону компьютериңиздин USB портуна туташтырыңыз.

Ардуино компьютериңизге туташтырылганына карабастан, бул чыныгы USB түзмөгү эмес экенин эске алыңыз. Тактада атайын чип бар, ал USB портуна туташтырылганда компьютериңизде виртуалдык сериялык порт катары көрсөтүлүшүнө мүмкүндүк берет. Бул тактанын сайылып турушу үчүн абдан маанилүү. Такта туташтырылбаган учурда, Arduino иштеген виртуалдык сериялык порт жок болот (анткени ал жөнүндө бардык маалыматтар Arduino тактасында жашайт).

Ар бир Ардуинонун уникалдуу виртуалдык сериялык порт дареги бар экенин билүү да жакшы. Бул сиздин компьютериңизге башка Arduino тактасын туташтырган сайын, колдонулуп жаткан сериялык портту кайра конфигурациялашыңыз керек болот.

Arduino Uno эркек USB Адан эркекке USB B кабелин талап кылат.

5 -кадам: Орнотуулар

Орнотуулар
Орнотуулар
Орнотуулар
Орнотуулар

Arduino программистинде бир нерсе кылаардан мурун, такта түрүн жана сериялык портту орнотушуңуз керек.

Такта орнотуу үчүн, төмөнкүгө өтүңүз:

Куралдар такталары

Сиз колдонгон тактанын версиясын тандаңыз. Менде Arduino Uno сайылгандыктан, мен, албетте, "Arduino Uno" тандагам.

Сериялык портту орнотуу үчүн, төмөнкүгө өтүңүз:

Куралдар Сериялык Порт

Сериалдык портту тандаңыз:

/dev/tty.usbmodem [туш келди сандар]

6 -кадам: Эскизди иштетүү

Эскизди иштетүү
Эскизди иштетүү
Эскизди иштетүү
Эскизди иштетүү
Эскизди иштетүү
Эскизди иштетүү

Arduino программалары эскиздер деп аталат. Arduino программисти алдын ала жүктөлгөн көптөгөн тонна эскиздер менен келет. Бул сонун, анткени сиз өмүрүңүздө эч нерсе программалабасаңыз дагы, бул эскиздердин бирин жүктөп, Arduinoго бир нерсе кыла аласыз.

LEDди санариптик пинге 13 байлап, өчүп -күйүп турушу үчүн, мисалдын мисалын жүктөйбүз.

Жаркылдаган мисалды бул жерден тапса болот:

Файлдар мисалдары Негиздери Көз ирмем

Жаркылдаган мисал негизинен D13 пинин чыгаруу катары коет, андан кийин Arduino тактасындагы сыноочу LEDди секундасына күйгүзүп жана өчүрүп турат.

Жаркылдаган мисал ачык болгондон кийин, аны жүктөө баскычын басуу менен ATMEGA328 чипине орнотсо болот, ал оңго багытталган жебеге окшош.

Ардуинодогу 13 -пинге туташкан жер үстүндөгү статустун LEDи жаркырай баштай турганын байкаңыз. Кечигүүнүн узактыгын өзгөртүп жана кайра жүктөө баскычын басуу менен жаркылдаган ылдамдыгын өзгөртө аласыз.

7 -кадам: Сериялык монитор

Сериялык монитор
Сериялык монитор
Сериялык монитор
Сериялык монитор

Сериялык монитор сиздин компьютериңизге Arduino менен сериялык туташууга мүмкүнчүлүк берет. Бул абдан маанилүү, анткени сиздин Arduino сенсорлордон жана башка түзмөктөрдөн алган маалыматтарды алат жана аны реалдуу убакытта компьютериңизде көрсөтөт. Бул жөндөмгө ээ болуу кодуңузду мүчүлүштүктөрдү оңдоо жана чиптин чындыгында кандай мааниге ээ экенин түшүнүү үчүн баа жеткис.

Мисалы, потенциометрдин борбордук шыпыруусун (ортоңку пин) A0го, жана сырткы пиндерди, тиешелүүлүгүнө жараша, 5в менен жерге туташтырыңыз. Кийинкиде төмөндө көрсөтүлгөн эскизди жүктөңүз:

Файл мисалдары 1. AnalogReadSerial негиздери

Лупага окшош сериялык мониторду иштетүү үчүн баскычты басыңыз. Сиз азыр сериялык монитордо аналогдук пин менен окуган сандарды көрө аласыз. Баскычты бурганыңызда сандар көбөйөт жана азаят.

Сандар 0 менен 1023 аралыгында болот. Мунун себеби аналогдук пин 0 менен 5В ортосундагы чыңалууну акылдуу санга айлантып жатат.

8 -кадам: Digital In

Digital In
Digital In

Arduino аналогдук жана санариптик болгон эки түрдүү кирүү казыгына ээ.

Баштоо үчүн, санариптик кирүү казыктарын карап көрөлү.

Санарип киргизүү казыктары күйгүзүлгөн же өчүрүлгөн эки гана абалга ээ. Бул эки күйүк жана өчүрүү штаттары дагы мындай деп аталат:

  • БИЙИК же ТӨМӨН
  • 1 же 0
  • 5V же 0V.

Бул киргизүү көбүнчө которгуч ачылганда же жабылганда чыңалуу бар экенин сезүү үчүн колдонулат.

Санариптик кирүүлөр сансыз санариптик байланыш протоколдорунун негизи катары да колдонулушу мүмкүн. 5V (HIGH) импульсун же 0V (LOW) импульсун түзүү менен сиз экилик сигналды, бардык эсептөөлөрдүн негизин түзө аласыз. Бул PING ультрадыбыштуу сенсор сыяктуу санарип сенсорлор менен сүйлөшүү же башка түзмөктөр менен байланышуу үчүн пайдалуу.

Санариптик киргизүү жөнүндөгү жөнөкөй мисал үчүн, санариптик пин 2ден 5Вка чейин, 10К каршылыгын ** санарык 2ден жерге туташтырып, төмөнкү кодду иштетиңиз:

Файл мисалдары 2. Санарип баскычы

** 10K каршылыгы тартылуучу каршылык деп аталат, анткени ал санарип пинди жерге туташтыргыч басылбаган учурда туташтырат. Коммутатор басылганда, которгучтагы электрдик байланыштар каршылыкка караганда азыраак каршылыкка ээ жана электр энергиясы жерге туташпай калат. Анын ордуна, электр 5V менен санарип пиндин ортосунда агат. Себеби, электр дайыма эң аз каршылык жолун тандайт. Бул тууралуу көбүрөөк билүү үчүн Digital Pins барагына баш багыңыз.

9 -кадам: Analog In

Analog In
Analog In

Санариптик кирүү казыгынан тышкары, Arduino ошондой эле бир катар аналогдук кирүү казыктарына ээ.

Аналогдук кирүү казыктары аналогдук сигналды алат жана 10-битке аналогдук-цифралык (ADC) конверсияны аткарып, аны 0 менен 1023 (4.9мВ кадам) ортосундагы санга айландырат.

Киргизүүнүн бул түрү резистивдүү сенсорлорду окуу үчүн жакшы. Бул негизинен схемага каршылык көрсөтүүчү сенсорлор. Алар ошондой эле 0 жана 5V ортосундагы ар кандай чыңалуу сигналын окуу үчүн жакшы. Бул аналогдук схемалардын ар кандай түрлөрү менен иштөөдө пайдалуу.

Эгерде сиз сериялык мониторду тартуу үчүн 7 -кадамдагы мисалды кармансаңыз, аналогдук кирүү пинин колдонуп көрдүңүз.

10 -кадам: Digital Out

Digital Out
Digital Out

Санарип чыгуучу пин пин HIGH (5v) же LOW (0v) деп койсо болот. Бул нерселерди күйгүзүүгө жана өчүрүүгө мүмкүндүк берет.

Ишти күйгүзүүдөн жана өчүрүүдөн (жана Светодиоддорду жарк эттирүүдөн) тышкары, бул форма бир катар тиркемелер үчүн ыңгайлуу.

Белгилей кетчү нерсе, бул санариптик баарлашууга мүмкүндүк берет. Пинди тез күйгүзүү жана өчүрүү менен, сиз экилик абалды (0 жана 1) түзөсүз, ал сансыз башка электрондук түзүлүштөр тарабынан бинардык сигнал катары таанылат. Бул ыкманы колдонуу менен, сиз бир нече түрдүү протоколдорду колдонуп сүйлөшө аласыз.

Санариптик байланыш өнүккөн тема, бирок эмне кылса болору жөнүндө жалпы түшүнүк алуу үчүн, Hardware With Interfacing барагын караңыз.

Эгер сиз 6 -кадамдагы мисалды ээрчип, LEDдин жарк этип чыгышын кааласаңыз, анда сиз буга чейин санариптик чыгуу пинин колдонуп көрдүңүз.

11 -кадам: Analog Out

Analog Out
Analog Out

Жогоруда айтылгандай, Arduino атайын функцияларда курулган. Бул атайын функциялардын бири-бул импульс туурасынын модуляциясы, бул Arduino аналогдук окшош чыгарууну түзө алат.

Импульстун туурасы модуляциясы - же кыскача PWM - аналогдук сигналды тууроо үчүн PWM пинин бийик (5V) жана төмөн (0V) тез буруп иштейт. Мисалы, эгер сиз LEDди тез эле күйгүзүп жана өчүрө турган болсоңуз (ар бири болжол менен беш миллисекунд), бул жарыктын орточо деңгээлине окшойт жана күчүнүн жарымын гана алып жаткандай көрүнөт. Же болбосо, эгер ал 1 миллисекундка күйүп, андан кийин 9 миллисекундка өчүп -күйө турган болсо, анда LED 1/10 жарык болуп көрүнөт жана чыңалуунун 1/10 бөлүгүн гана алат.

PWM үн чыгарууну, жарыктын жарыгын көзөмөлдөөнү жана моторлордун ылдамдыгын башкарууну камтыган бир катар тиркемелердин ачкычы.

Көбүрөөк түшүндүрүү үчүн, PWM баракчасынын сырларын текшериңиз.

PWMди өзүңүз сынап көрүү үчүн, LEDди жана 220 Ом резисторун санарип пинге 9, жерге катар туташтырыңыз. Төмөнкү мисал кодун иштетиңиз:

Файл мисалдары 3. Analog Fading

12 -кадам: Өз кодуңузду жазыңыз

Өз кодуңузду жазыңыз
Өз кодуңузду жазыңыз

Өз кодуңузду жазуу үчүн, программалоо тилинин синтаксисин үйрөнүшүңүз керек болот. Башкача айтканда, сиз программистке түшүнүү үчүн кодду туура түзүүнү үйрөнүшүңүз керек. Сиз грамматиканы жана пунктуацияны түшүнүү сыяктуу ойлоно аласыз. Туура грамматика жана пунктуациясыз бүтүндөй бир китепти жаза аласыз, бирок англис тилинде болсо да, аны эч ким түшүнө албайт.

Өз кодуңузду жазууда кээ бир маанилүү нерселерди эске алуу керек:

Arduino программасы эскиз деп аталат

Arduino эскизиндеги бардык коддор жогорудан төмөн карай иштелип чыгат

Arduino эскиздери адатта беш бөлүккө бөлүнөт

  1. Эскиз, адатта, эскиздин эмне кылып жатканын жана аны ким жазганын түшүндүргөн баш менен башталат.
  2. Андан кийин, адатта, глобалдык өзгөрмөлөрдү аныктайт. Көбүнчө, бул жерде ар кандай Arduino казыктарына туруктуу аттар берилет.
  3. Баштапкы өзгөрмөлөр орнотулгандан кийин, Arduino орнотуу тартибин баштайт. Орнотуу функциясында биз зарыл болгондо өзгөрмөлөрдүн баштапкы шарттарын коёбуз жана бир гана жолу иштетүүнү каалаган каалаган алдын ала кодду иштетебиз. Бул жерде сериялык байланыш башталат, бул сериялык мониторду иштетүү үчүн керек.
  4. Орнотуу функциясынан биз цикл тартибине өтөбүз. Бул эскиздин негизги тартиби. Бул сиздин башкы кодуңуз кайда гана кетпейт, бирок эскиз иштей берсе, ал кайра -кайра аткарылат.
  5. Циклдин тартибинин астында көбүнчө башка функциялар көрсөтүлгөн. Бул функциялар колдонуучу тарабынан аныкталат жана жөндөө жана цикл тартибине чакырылганда гана иштетилет. Бул функциялар чакырылганда, Arduino функциядагы бардык кодду өйдөдөн ылдый иштетет, андан кийин эскиздин кийинки сапына кайтып келип, функция чакырылганда токтогон. Функциялар жакшы, анткени алар бир эле коддун саптарын кайра -кайра жазбай эле, стандарттык процедураларды кайра -кайра иштетүүгө мүмкүндүк берет. Сиз жөн гана функцияны бир нече жолу чакырсаңыз болот, жана бул микросхеманын эс тутумун бошотот, анткени функциянын тартиби бир гана жолу жазылган. Бул ошондой эле кодду окууну жеңилдетет. Өзүңүздүн функцияларыңызды кантип түзүүнү билүү үчүн, бул баракты караңыз.

Мунун баары, эскиздин милдеттүү болгон эки гана бөлүгү - Орнотуу жана Цикл тартиби

Код болжол менен C негизделген Arduino тилинде жазылышы керек

Ардуино тилинде жазылган дээрлик бардык билдирүүлөр a менен аякташы керек;

Шарттуу (мисалы, эгерде билдирүүлөр жана циклдар үчүн) a кереги жок;

Шарттардын өз эрежелери бар жана аларды Arduino Language барагындагы "Control Structures" бөлүмүнөн тапса болот

Өзгөрмөлөр - бул сандарды сактоочу бөлүмдөр. Сиз баалуулуктарды өзгөрмөлөргө киргизе аласыз. Өзгөрмөлөр аларды колдонуудан мурун аныкталышы керек (коддо көрсөтүлгөн) жана аны менен байланышкан маалымат түрүнө ээ болушу керек. Негизги маалыматтардын кээ бир түрлөрүн билүү үчүн, Тил барагын карап чыгыңыз

Болуптур! Ошентип, биз A0 пинге туташкан фотоцеллди окуган кодду жазгыбыз келет жана D9 пинге туташкан LEDдин жарыгын контролдоо үчүн фотоэлементтен алган окуубузду колдонууну каалайбыз.

Биринчиден, биз BareMinimum эскизин ачууну каалайбыз, аны тапса болот:

Файл мисалдары 1. Basic BareMinimum

BareMinimum Sketch мындай болушу керек:

жараксыз орнотуу () {

// орнотуу кодуңузду бул жерге коюңуз, бир жолу иштетүү үчүн:} void loop () {// негизги кодуңузду бул жерге коюңуз, кайра -кайра иштетүү үчүн:} Андан кийин, кодго башын коёлу, ошондо башка адамдар биздин эмне кылып жатканыбызды, эмне үчүн жана кандай шарттарда жасаарыбызды билишет

/*

LED Dimmer by Genius Arduino Programmer 2012 A9 пиндеги фотоэлементтин окулушунун негизинде D9 пиндеги LEDдин жарыгын көзөмөлдөйт Бул код коомдук доменде */ void setup () {// иштетүү үчүн орнотуу кодуңузду бул жерге коюңуз бир жолу:} void loop () {// кайра иштетүү үчүн негизги кодуңузду бул жерге коюңуз:} Мунун баары чарчы болгондон кийин, пин аттарын аныктап, өзгөрмөлөрдү түзөлү

/*

LED Dimmer by Genius Arduino Programmer 2012 А0 пининдеги фотоэлементтин окулушунун негизинде D9 пиндеги LEDдин жарыгын көзөмөлдөйт Бул код коомдук доменде */ // аналогдук пин 0 туруктуу ат const const analogInPin = A0; // аталыш санарип пин 9 туруктуу ат const const LEDPin = 9; // photocell int photocell окуу үчүн өзгөрмө; void setup () {// орнотуу кодуңузду бул жерге коюңуз, бир жолу иштетүү үчүн:} void loop () {// негизги кодуңузду бул жерге коюңуз, кайра -кайра иштетүү үчүн:} Эми өзгөрмөлөр жана пин аттары коюлгандыктан, чыныгы кодду жазалы

/*

LED Dimmer by Genius Arduino Programmer 2012 А0 пининдеги фотоэлементтин окулушунун негизинде D9 пиндеги LEDдин жарыгын көзөмөлдөйт Бул код коомдук доменде */ // аналогдук пин 0 туруктуу ат const const analogInPin = A0; // аталыш санарип пин 9 туруктуу ат const const LEDPin = 9; // photocell int photocell окуу үчүн өзгөрмө; void setup () {// азыр бул жерде эч нерсе жок} void loop () {// аналогду төөнөгүчтө окуп, окууну photocell = analogRead (analogInPin) фотоэлементтин өзгөрмөсүнө коюңуз; // фотоэлектр analogWrite (LEDPin, photocell) тарабынан окулган маанини колдонуп LED пинди көзөмөлдөө; // кодду 1/10 секундга тыным // 1 секунд = 1000 кечигүү (100); } Эгерде биз аналогдук пин чындыгында фотоцеллден кандай сандарды окуп жатканын көргүбүз келсе, анда сериялык мониторду колдонушубуз керек болот. Сериялык портту иштетип, ошол сандарды чыгаралы

/*

LED Dimmer by Genius Arduino Programmer 2012 A9 пиндеги фотоэлементтин окулушунун негизинде D9 пиндеги LEDдин жарыгын көзөмөлдөйт Бул код коомдук доменде */ // аналогдук пин 0 туруктуу ат const const analogInPin = A0; // аталыш санарип пин 9 туруктуу ат const const LEDPin = 9; // photocell int photocell окуу үчүн өзгөрмө; void setup () {Serial.begin (9600); } void loop () {// аналогду төөнөгүчтө окуңуз жана окууну photocell = analogRead (analogInPin) фотоцеллинин өзгөрмөсүнө коюңуз; // фотоэлементтин баасын сериялык мониторго басып чыгаруу Serial.print ("Photocell ="); Serial.println (фотоэлемент); // фотоэлектр analogWrite (LEDPin, photocell) тарабынан окулган маанини колдонуп LED пинди көзөмөлдөө; // кодду 1/10 секундга тыным // 1 секунд = 1000 кечигүү (100); }Кодду түзүү жөнүндө көбүрөөк маалымат алуу үчүн, Foundation баракчасына баш багыңыз. Эгерде сизге Arduino тили боюнча жардам керек болсо, анда Тил бети сиз үчүн орун.

Ошондой эле, мисал эскиз баракчасы код менен аралашып баштоо үчүн эң сонун жер. Бир нерсени өзгөртүүдөн жана эксперимент жасоодон коркпоңуз.

13 -кадам: Калканчтар

Shields
Shields

Shields - Arduino Unoнун үстүнө туташтырылган жана ага өзгөчө функцияларды берген кеңейтүүчү апдаптер такталары.

Arduino ачык аппараттык жабдык болгондуктан, каалагандар каалагандай тапшырманы аткаруу үчүн Arduino калканчын жасашат. Ушуга байланыштуу, жапайы жаратылышта сансыз сандаган Arduino калкандары бар. Сиз Arduino оюн аянтчасынан ар дайым өсүп келе жаткан Arduino калкандарынын тизмесин таба аласыз. Эсиңизде болсун, бул бетте көрсөтүлгөндөн дагы көп калкан болот (ар дайым, Google сиздин досуңуз).

Ардуино калканынын мүмкүнчүлүктөрү жөнүндө кичине түшүнүк берүү үчүн, үч расмий Arduino калканды кантип колдонуу керектиги боюнча бул окуу куралдарын карап көрүңүз:

  • Wireless SD Shield
  • Ethernet Shield
  • Motor Shield

14 -кадам: Тышкы схеманы куруу

Тышкы микросхема куруу
Тышкы микросхема куруу

Долбоорлоруңуз татаалдашкан сайын, сиз Arduino менен интерфейс үчүн өз схемаңызды түзгүңүз келет. Электрониканы бир түндө үйрөнбөсөңүз да, интернет электрондук билимдер жана схемалар үчүн укмуштуудай булак.

Электрониканы баштоо үчүн, Basic Electronics Instructable баракчасына баш багыңыз.

15 -кадам: Чегинен чыгуу

Going Beyond
Going Beyond

Бул жерден, кээ бир долбоорлорду жасоо гана калды. Интернетте сансыз сонун Arduino ресурстары жана окуу куралдары бар.

Расмий Arduino барагын жана форумун текшерүүнү унутпаңыз. Бул жерде келтирилген маалымат баа жеткис жана абдан толук. Бул долбоорлорду оңдоо үчүн эң сонун булак.

Эгер сизге кызыктуу башталгыч долбоорлор үчүн илхам керек болсо, Arduino 20 укмуштуу долбоорун карап көрүңүз.

Кеңири тизме же Arduino долбоору үчүн, Arduino каналы баштоо үчүн эң сонун жер.

Дал ушул. Сен өзүңсүң.

Ийгилик жана бактылуу хакерлик!

Сүрөт
Сүрөт

Сиз муну пайдалуу, кызыктуу же көңүл ачуучу деп таптыңызбы? Менин акыркы долбоорлорумду көрүү үчүн @madeineuphoria ээрчиңиз.

Сунушталууда: