Mundarija:
- 1 -qadam: Besleme zo'riqishida
- 2 -qadam: ichki harorat
- 3 -qadam: analog taqqoslagich (uzilish)
- 4 -qadam: Hisoblagich
- 5 -qadam: Oldindan belgilangan konstantalar
- 6 -qadam: O'zgaruvchilarni tiklashda RAMda saqlang
- 7 -qadam: Soat signaliga kiring
- 8 -qadam: ATmega328P portining ichki tuzilishi
- 9-qadam: bortli (o'rnatilgan) LED fotodetektor sifatida
Video: Arduino kam ma'lum bo'lgan xususiyatlar: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:26
Bu ko'proq ishlatiladigan Arduino platformalarining tez -tez tilga olinmaydigan xususiyatlarining ro'yxati (masalan, Uno, Nano). Ushbu ro'yxat, agar siz ushbu xususiyatlarni qidirib topsangiz va ma'lumotni tarqatmoqchi bo'lsangiz, mos yozuvlar sifatida xizmat qilishi kerak.
Bu xususiyatlarning misollarini ko'rish uchun kodni ko'rib chiqing, chunki men ularni bu erda bir nechta kon loyihalarida ko'rsatma berishda ishlatganman (masalan, Arduino 1 simli displey (144 belgilar)). Keyingi bosqichlar har bir xususiyatni tushuntiradi.
1 -qadam: Besleme zo'riqishida
Arduino o'z kuchlanishini bilvosita o'lchashi mumkin. Ichki moslamani besleme zo'riqishida yuqori chegara o'lchovi sifatida o'lchash orqali siz ichki mos yozuvlar va besleme zo'riqishining nisbati (analog/ADC o'qish uchun yuqori chegara vazifasini bajaruvchi) olishingiz mumkin. Siz bilganingizdek, ichki kuchlanish ma'lumotnomasining aniq qiymatini hisoblash mumkin.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
- Secret Arduino voltmetr-Batareya kuchlanishini o'lchash:
- Arduino o'z Vinini o'lchay oladimi ?:
2 -qadam: ichki harorat
Ba'zi Arduino ichki harorat sensori bilan jihozlangan va shuning uchun ichki (yarimo'tkazgich) haroratini o'lchashi mumkin.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
Ichki harorat sensori:
Arduino o'z Vinini o'lchay oladimi ?:
3 -qadam: analog taqqoslagich (uzilish)
Arduino A0 va A1 pinlari o'rtasida analog taqqoslagichni o'rnatishi mumkin. Shunday qilib, biri kuchlanish darajasini beradi, ikkinchisi - bu kuchlanishning kesishishi tekshiriladi. Kesish ko'tarilish yoki tushish tomoniga (yoki ikkalasiga) bog'liq holda ko'tariladi. Keyin uzilish dasturiy ta'minot tomonidan ushlanishi va shunga muvofiq harakat qilishi mumkin.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
Analog komparatorning uzilishi:
4 -qadam: Hisoblagich
Albatta, AVR bir nechta hisoblagichni o'z ichiga oladi. Odatda ular har xil chastotalarda taymerni o'rnatish va kerak bo'lganda uzilishlarni kuchaytirish uchun ishlatiladi. Boshqa usul-bu eskirgan usulda, ularni hech qanday sehrsiz hisoblagich sifatida ishlatish, kerak bo'lganda qiymatini o'qish (so'rov). Bunga qiziqish tugmachalarni o'chirish bo'lishi mumkin, masalan. Masalan, ushbu xabarni bering: AVR Misol T1 hisoblagichi
5 -qadam: Oldindan belgilangan konstantalar
Loyihangizga versiya va kompilyatsiya ma'lumotlarini qo'shish uchun ishlatilishi mumkin bo'lgan oldindan belgilangan o'zgaruvchilar mavjud.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
Serial.println (_ DATE_); // kompilyatsiya sanasi
Serial.println (_ TIME_); // kompilyatsiya vaqti
String stringOne = String (ARDUINO, DEC);
Serial.println (stringOne); // arduino ide versiyasi
Serial.println (_ VERSION_); // gcc versiyasi
Serial.println (_ FILE_); // fayl tuzilgan
bu kod parchalari bu ma'lumotlarni ketma -ket konsolda chiqaradi.
6 -qadam: O'zgaruvchilarni tiklashda RAMda saqlang
Ma'lumki, Arduino Uno (ATmega328) ichki EEPROM-ga ega, bu sizga o'chirish vaqtida qiymatlar va sozlamalarni saqlashga va ularni keyingi yoqilishda tiklashga imkon beradi. Ma'lum bo'lmagan haqiqat shundaki, operativ xotirada ham asl holatini tiklash paytida qiymatni saqlab qolish mumkin, lekin shu bilan birga, quvvat aylanishi davomida qiymatlar sintaksis bilan yo'qoladi:
imzosiz uzun o'zgaruvchi_that_is_preserved _attribute_ ((bo'lim (".noinit"))));
Bu sizga, masalan, RESETlar sonini hisoblash va EEPROM yordamida quvvat manbalari sonini hisoblash imkonini beradi.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
- Qayta tiklash orqali Ram o'zgaruvchisini saqlang:
- EEPROM kutubxonasi:
7 -qadam: Soat signaliga kiring
Arduinos va boshqa AVR (ATtiny kabi) ichki soatga ega, ularni tashqi kristalli osilatordan foydalanmasdan ishlashga imkon beradi. Shu bilan birga, ular bu signalni pinga (masalan, PB4) qo'yish orqali tashqariga ulashlari mumkin. Bu erda qiyin tomoni shundaki, siz ushbu funktsiyani yoqish uchun chiplarning sug'urta bitlarini o'zgartirishingiz kerak va sigortalarning har doim o'zgarishi chipni buzish xavfini tug'diradi.
Siz CKOUT sug'urtasini yoqishingiz kerak va buning eng oson yo'li - Arduino yordamida AVR Atmega328p - 8 bitli mikrokontrollerning sug'urta bitlarini o'zgartirish bo'yicha ko'rsatmalarni bajarish.
Buni qanday qilish haqida aniq ma'lumot olish uchun misol kodini ko'ring:
- ATtiny ichki osilatorini sozlash:
- Arduino yordamida AVR Atmega328p-8 bitli mikrokontrollerning sug'urta bitlarini qanday o'zgartirish mumkin:
8 -qadam: ATmega328P portining ichki tuzilishi
ATmega328P portlarining ichki tuzilishini bilish bizga standart foydalanish chegaralaridan chiqib ketish imkonini beradi. Qo'shimcha ma'lumot va ichki zanjir sxemasi uchun 20 pF oralig'idagi sig'im o'lchagich haqidagi bo'limni 1000 nF ga aylantiring.
Oddiy misol-bu kirish tortish ketma-ketligi misolida yoki qarshilik ko'rsatilmagan Arduino tugmachasida ko'rsatilgandek, ichki tortish qarshiligi ishlatilganligi sababli hech qanday qarshilikka muhtoj bo'lmagan raqamli portli tugmachalardan foydalanish.
Bu ma'lumotni 20 pF gacha bo'lgan va hech qanday qo'shimcha simlarsiz o'lchash uchun aytilganidek foydalanish yanada rivojlangan! Ushbu ko'rsatkichga erishish uchun misolda ichki/kirish empedansi, ichki tortish qarshiligi va adashgan kondansatör ishlatiladi. Arduino CapacitanceMeter qo'llanmasi bilan solishtiring, u bir necha nF dan past bo'lolmaydi.
9-qadam: bortli (o'rnatilgan) LED fotodetektor sifatida
Ko'pgina Arduino platalarida bortli yoki o'rnatilgan LEDlar mavjud, ularni kod orqali boshqarish mumkin. 13 -pimdagi Uno yoki Nano platalari. Ushbu pindan bitta simni analog kirish piniga (masalan, A0) qo'shib, biz ham bu LEDni fotodetektor sifatida ishlatishimiz mumkin. Bu turli xil usullarda ishlatilishi mumkin, masalan; atrof -muhit yoritilishini o'lchash uchun foydalaning, LEDni tugma sifatida ishlating, bidrectional aloqa uchun LEDdan foydalaning (PJON AnalogSampling) va boshqalar.
Tavsiya:
Noma'lum munosabat qutisi: 8 qadam (rasmlar bilan)
Munosabatsiz foydasiz quti: Kim haqiqatan ham foydasiz qutini xohlaydi? Hech kim. Avvaliga shunday deb o'ylagandim, lekin YouTube -da minglab keraksiz qutilar bor edi … Demak, ular zamonaviy bo'lishi kerak .. Men sizga ko'rsatuvlarda qanday qilib chirog'li, tovushli, bir oz boshqacha yaroqsiz quti yasashni ko'rsataman
$ 100 dan kam bo'lgan 100 dollarlik Super Yorug'lik chirog'i: 5 qadam
10 dollardan past bo'lgan 100 dollarlik Super Yorug'lik!: Men aytamanki, bu ko'rsatmaga ilhom dchall8 tomonidan yozilgan "Taktik chiroq" ko'rsatmasi uchun berilgan. Menimcha, kichikroq chiroqni jihozlash uchun kamroq vaqt talab qiladigan osonroq usul bo'lishi kerak. Men
10 $ dan kam bo'lgan oddiy uy qurilishi ultrasonik namlagichi: 3 qadam
10 $ dan kam bo'lmagan uy qurilishi ultrasonik namlagichi: Uyda namlagichni qidirayotganda, men juda ajoyib ultratovushli namlagichlarni ko'rdim va o'zimni arzonroq qura olamanmi deb o'yladim. Bu Internetda topilgan ultratovushli tuman ishlab chiqaruvchi / bug'lantirgich yordamida uy qurilishi namlagichi. Bu oson D
1: 5 dollardan kam bo'lgan raqamli mantiq analizatorini yarating
$ 1 dan kam bo'lgan raqamli mantiq analizatorini yarating: Mantiq darajasi sensori - bu komponentning chiqishi 1 yoki 0 (ijobiy yoki salbiy) ekanligini sezadigan qurilma. LCD displeyli, narxi 25 dollar atrofida bo'lgan yaxshi darajadagi sensorlarni bilasizmi? Bu kulgili darajada arzonroq va xuddi shunday qiladi (Men
Arduino uchun 8 dollardan kam bo'lgan o'rni taxtasi: 5 qadam
Arduino uchun 8 dollardan kam bo'lgan o'rni taxtasi. Salom do'stlar, bugun men sizga Arduino uchun 8 dollardan kam bo'lgan o'rni taxtasini qanday yasashni aytaman. Ushbu sxemada biz hech qanday IC yoki tranzistorni ishlatmaymiz, shuning uchun buni qilaylik