Mundarija:
- 1 -qadam: Dasturiy ta'minotni o'rnating
- 2 -qadam: Demo eskiz
- 3 -qadam: API
- 4 -qadam: 2 dollarlik osiloskop
Video: Planshet/telefon Arduino ekrani sifatida va 2 dollarlik osiloskop: 4 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Arduino-ga asoslangan loyiha uchun 320x240 o'lchamli LCD sensorli ekranni arzon narxda sotib olish mumkin bo'lsa-da, planshet yoki telefonni sensorli ekran va quvvat manbai sifatida ishlatish ayniqsa qulayroq bo'ladi. loyiha Siz Android qurilmangizda ancha yuqori aniqlikdagi va yaxshi ko'rinadigan displeyga ega bo'lishingiz mumkin (masalan, barcha satrlaringiz taxallusga qarshi bo'ladi).
Android-ga asoslangan ekran USB Serial, Bluetooth yoki WiFi orqali ulanishi mumkin (masalan, ESP8266).
Shu maqsadda men "Adafruit GFX" interfeysining katta qismini bajaradigan Arduino kutubxonasi bilan bog'laydigan "AndroidDisplay" (bu yerdagi manba) Android ilovasini yozdim. Siz kod yozishingiz mumkin, shundan so'ng uni mustaqil ekran yordamida osongina ko'chirish mumkin, yoki Android-ga asoslangan displey bilan eskizdan foydalanishni davom ettirishingiz mumkin. Va siz Android ilovasidan Arduino eskizini boshqarish uchun buyruqlar yuborishingiz mumkin. Arduino kutubxonasi asosan bortga bog'liq emas: u USB seriyali portli Serial nomli har qanday karta bilan yoki ESP8266 Wi-Fi orqali yoki Bluetooth bilan ishlashi kerak (birinchi navbatda kartani juftlang).
Kontseptsiya qo'llanilishining isboti sifatida men STM32-O-Scope loyihasini ILI9341 displeyi o'rniga VectorDisplay-dan foydalanish uchun o'tkazdim. Natijada-portativ, batareyali 1,7MS/s osiloskop, 2 dollarlik STM32F103C kartasidan (libmaple asosidagi Arduino yadrosidan foydalangan holda), ikkita sim, USB OTG kabeli va Android qurilmasidan boshqa hech narsa talab qilinmaydi.. Albatta, bu bilan siz 0 dan 3.3V gacha bo'lgan diapazonni olasiz.
1 -qadam: Dasturiy ta'minotni o'rnating
O'ylaymanki, sizda Arduino IDE -ni sevimli taxtangiz uchun o'rnatilgan va sizning sevimli kartangiz USB ketma -ket interfeysiga ega.
Sketch | ga o'ting Kutubxonani o'z ichiga | Kutubxonalarni boshqarish. Qidiruv maydoniga "VectorDisplay" ni qo'ying va topgandan so'ng "O'rnatish" ni bosing.
Bu yerdan kutubxona zipini yuklab oling.
Arduino/libraries papkasidagi papkani oching.
Google Play -dan VectorDisplay -ni yuklab oling va uni Android qurilmangizga o'rnating. Android qurilmangizga noma'lum manbalardan o'rnatishni yoqishingiz kerak bo'lishi mumkin. Android ilovasi UsbSerial kutubxonasidan foydalanadi va boshlang'ich nuqtasi kutubxona uchun namunali ilovalardan biri edi.
2 -qadam: Demo eskiz
Kengashni (agar kerak bo'lsa yuklash rejimida) kompyuterga ulang va Fayl | ga o'ting Misollar | VectorDisplay | Arduino IDE doiralaringiz. Yuklash tugmasini bosing (o'ng o'q).
Android qurilmangizda VectorDisplay ilovasini ishga tushiring. Kengashni USB OTG kabeli orqali Android qurilmasiga ulang. (Agar sizning kartangizda USB mikro porti bo'lsa, USB OTG xosti tomoni Android qurilmasiga o'tishiga ishonch hosil qiling). Endi siz VectorDisplay uchun ruxsat so'rovini olishingiz kerak. OK ni bosing.
Agar hammasi yaxshi bo'lsa, VectorDisplay endi ekranning chap tomonida ikkita tugmani ko'rsatadi: aylana va rang. Davrani bosish ekranda tasodifiy doira chizadi va Rang keyingi doiradan oldin rangni tasodifiy rangga o'zgartiradi.
Agar siz IDE doirasidagi chizmalarga qarasangiz, ketma -ket vektorli displey e'lon qilinganini ko'rasiz:
SerialDisplayClass displeyi;
va keyin setup () da ishga tushiriladi:
Display.begin ();
Keyin Display.addButton () yordamida buyruq tugmalari talab qilinadi. Keyin loop () buyruqlar tugmalari orqali yuborilgan buyruqlarni qidirish uchun Display.readMessage () ni chaqiradi.
Odatiy bo'lib, displeyning koordinata tizimi 240x320. Biroq, chiziqlar va matnlarning barchasi Android qurilmangiz ekranining to'liq aniqligi yordamida chizilgan, yaxshi ko'rinish uchun antialiasing. Shuning uchun dastur vektorli displey deb nomlangan.
3 -qadam: API
Kutubxonadagi API VectorDisplay.h faylida. Avval Display ob'ektini ishga tushirishingiz kerak. USB -dan foydalanish uchun quyidagilarni bajaring:
SerialDisplayClass displeyi;
Display.begin () bilan ulanishni boshlang.
SerialDisplayClass ob'ektida ikkita usul mavjud: bitta to'plamda 32-bitli rang (alfa bilan birga) va mening VectorDisplay ilovam ishlatadigan USB seriyali protokoliga juda yaqin buyruqlar ishlatiladi, ikkinchisi esa standartning kichik to'plamidir. Adafruit GFX kutubxona usullari, 16-bitli ranglardan foydalangan holda. Ko'pincha siz ikkita buyruqlar to'plamini bemalol aralashtira olasiz, bundan tashqari, agar siz Adafruit-ga mos keladigan usullardan foydalansangiz, 32-bit o'rniga 565 bilan tugaydigan 16-bitli rangli buyruqlardan foydalanishingiz kerak.
Koordinatalar tizimini Display.coordinates (kenglik, balandlik) yordamida o'rnatishingiz mumkin. Standart - kenglik = 240 va balandlik = 320. Agar siz kvadrat piksel bo'lmagan displeyga taqlid qilmoqchi bo'lsangiz, Display.pixelAspectRatio (nisbat) dan foydalanishingiz mumkin.
Ba'zi usullar, shu jumladan pixelAspectRatio (), FixedPoint32 argumentini oladi. Bu suzuvchi nuqta raqamini ifodalovchi 32-bitli butun son, bu erda 65536 1.0 ni bildiradi. O'zgaruvchan nuqta x raqamini FixedPoint32 ga aylantirish uchun quyidagilarni bajaring: (FixedPoint32) (65536. * X) (yoki faqat TO_FP32 (x)).
Android tugmalaridan buyruq yuborish imkoniyatidan tashqari, ekran sensorli hodisalar ham MCUga yuboriladi.
Wi -Fi -dan foydalanish uchun, circ_esp8266 misolini ko'ring. Wi -Fi rejimiga o'tish uchun ilovadagi USB tugmasini bosish kerak.
Bluetooth uchun siz quyidagilarni qilishingiz kerak:
SerialDisplayClass displeyi (MyBluetoothSerial);
… MyBluetoothSerial.begin (115200); Display.begin ();
va USB -ketma -ket korpusidagi kabi davom eting, bu erda Bluetooth adapteriga MyBluetoothSerial - bu Stream ob'ekti (masalan, Serial2) ulangan.
4 -qadam: 2 dollarlik osiloskop
Tez va iflos osiloskop uchun sizga ko'k yoki qora (ishlov berish osonroq) tabletka STM32F103C8 kerak bo'ladi, uni Aliexpress -da 2 dollardan past narxda sotib olishingiz mumkin. Men taxtani Arduino muhiti bilan ishlashga qanday tayyorlashni va bu erda eskizlarni o'rnatishni tasvirlayman.
Pingumacpenguinning STM32-O-Scope eskizining o'zgartirilgan versiyasi bo'lgan ushbu eskizni taxtadan yuklab oling. Kengashingizga mos keladigan #define BOARD_LED qatorini tahrirlang. Men qora tabletkadan foydalanaman, uning LEDi PB12. Moviy tabletkalarda (va ko'k tabletkada bir xil bo'lgan qora tabletkalarda) PC13 diodli LED mavjud.
Bir simni-topraklama probini taxtaning eriga va boshqa simni taxtaning B0 piniga ulang. Kengashni VectorDisplay ishlaydigan Android qurilmasiga ulang va sizda portativ, batareyali osiloskop mavjud.
Suratda menda fototransistorga ulangan osiloskop bor. Ekrandagi iz televizorning infraqizil masofadan boshqarish pultidan.
Tavsiya:
Arduino provayder sifatida -- AVRda olti burchakli faylni yozish -- AVRdagi sug'urta -- Arduino dasturchi sifatida: 10 qadam
Arduino provayder sifatida || AVRda olti burchakli faylni yozish || AVRdagi sug'urta || Arduino dasturchi sifatida: ……………………… Iltimos, boshqa videolarni ko'rish uchun YouTube kanalimga obuna bo'ling …….. Bu maqola bu isp kabi arduino haqida. Agar siz olti burchakli faylni yuklamoqchi bo'lsangiz yoki AVR -da sug'urta o'rnatishni xohlasangiz, dasturchi sotib olishingiz shart emas, buni qilishingiz mumkin
Quloq kurtaklari ushlagichi (planshet, kompyuter, telefon): 4 qadam
Quloq kurtaklari ushlagichi (planshet, kompyuter, telefon): quloqchinlarim chalg'ib ketganda yoki yo'qolganda doim asabim buziladi. Men kompyuterning planshetining orqa qismiga qo'yadigan narsalarni yasashga qaror qildim va hokazo. Sizga quloqchin ushlagichini taqdim etaman
Android telefon/planshet tomonidan boshqariladigan Arduino 4WD Rover Bluetooth: 5 qadam
Android telefon/planshet tomonidan boshqariladigan Arduino 4WD Rover Bluetooth: Arduino 4WD bluetooth bilan boshqariladigan roverBu Arduino bilan ishlab chiqarilgan oddiy 4WD roverdir, u Android telefon yoki planshet yordamida Bluetooth orqali boshqariladi. Ushbu dastur yordamida siz tezlikni boshqarishingiz mumkin (Arduino pwm yordamida), uni ishga tushiring
RTA dasturini osiloskop yoki elektron analizatori sifatida ishlatish: 4 qadam
RTA dasturini osiloskop yoki elektron analizatori sifatida ishlatish: Bu hiylaning maqsadi tomoshabinlarga o'z davralari va qurilmalarining elektr signallarini real vaqt analizatori (RTA) yordamida ko'rish imkoniyatini berishdir. Ushbu yondashuvning osiloskopdan asosiy afzalligi shundaki, RTA dasturlari
Wiimote -ni kompyuter sichqonchasi sifatida ishlatish, shamlardan sensor sifatida foydalanish!: 3 qadam
Wiimote -ni kompyuter sichqonchasi sifatida shamlardan sensor sifatida qanday ishlatish kerak !!: Ushbu qo'llanma sizga Wii masofadan boshqarish pultini (Wiimote) kompyuteringizga qanday ulash va uni sichqoncha sifatida ishlatishni ko'rsatib beradi