Мазмуну:
Video: Планшет/Телефон Arduino экраны жана 2 долларлык осциллограф: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Ардуиного негизделген проект үчүн 320x240 LCD сенсордук экранды арзан сатып алса да, өзгөчө ыңгайлуу болушу мүмкүн-айрыкча эскизди прототиптөө жана тестирлөө үчүн-планшетти же телефонду сенсордук экран жана кубат булагы катары колдонуу долбоор. Сиз Android түзмөгүңүздө алда канча жогорку чечилишке жана жакшыраак дисплейге ээ боло аласыз (мис., Бардык линияларыңыз лакап атка ээ болот).
Android'ге негизделген экран USB Serial, Bluetooth же WiFi аркылуу туташтырылышы мүмкүн (мисалы, ESP8266).
Бул үчүн мен Adafruit GFX интерфейсинин чоң бөлүгүн ишке ашырган Arduino китепканасы менен жупташкан AndroidDisplay (булак булагы) деген Android тиркемесин жаздым. Сиз кодду жаза аласыз, андан кийин өзүнчө экранды колдонууга же Android негизиндеги дисплейи менен эскизди колдонууну уланта аласыз. Жана Android колдонмосунан Arduino эскизин башкаруу үчүн буйруктарды жөнөтсөңүз болот. Arduino китепканасы негизинен тактан көз каранды эмес: ал USB сериялык порт объектисин камсыз кылган ар кандай такта менен иштеши керек же WiFi аркылуу ESP8266 же Bluetooth менен (биринчи тактаңызды жупташтырыңыз).
Концепциянын колдонулушунун далили катары, мен ILI9341 дисплейинин ордуна VectorDisplayди колдонуу үчүн STM32-O-Scope долбоорун жылдырдым. Натыйжада портативдүү, батарейка менен иштеген 1.7MS/s осциллографы, ал 2 $ STM32F103C тактасынан башка нерсени талап кылбайт (libmaple негизделген Arduino ядросун колдонуу менен), эки зым, USB OTG кабели жана Android түзмөгү. Албетте, сиз муну менен 0ден 3.3Vга чейинки диапазонду аласыз.
1 -кадам: Программаны орнотуу
Сизде Arduino IDE сүйүктүү тактаңыз үчүн орнотулган жана сиздин сүйүктүү тактаңызда USB сериялык интерфейси бар деп ойлойм.
Баруу Sketch | Китепкананы кошуу | Китепканаларды башкаруу. Издөө аймагына "VectorDisplay" коюп, тапкандан кийин "Орнотууну" чыкылдатыңыз.
Бул жерден китепкана zipин жүктөп алыңыз.
Arduino/libraries папкаңыздын ичиндеги папканы ачыңыз.
Google Playден VectorDisplay жүктөп алып, аны Android түзмөгүңүзгө орнотуңуз. Сиз Android түзмөгүңүздөгү белгисиз булактардан орнотууну иштетишиңиз керек болот. Android колдонмосу UsbSerial китепканасын колдонот жана баштапкы чекит китепкана үчүн мисал колдонмолордун бири болгон.
2 -кадам: Demo Sketch
Тактаңызды (керек болсо жүктөө режиминде) компьютериңизге туташтырып, File | ге өтүңүз Мисалдар | VectorDisplay | Сиздин Arduino IDEдеги чөйрөлөр. Жүктөө баскычын чыкылдатыңыз (оң жебе).
Android түзмөгүңүздө VectorDisplay колдонмосун баштаңыз. Тактаңызды USB OTG кабели аркылуу Android түзмөгүнө туташтырыңыз. (Эгерде тактаңыздын USB микро порту бар болсо, анда USB OTG түйүнүнүн Android түзмөгүнө өтөөрүн текшериңиз). Эми VectorDisplay үчүн уруксат сурамын алышыңыз керек. OK басыңыз.
Эгерде баары ойдогудай болсо, VectorDisplay азыр экрандын сол жагында эки баскычты көрсөтөт: Circle жана Color. Чөйрөнү басуу экранда туш келди тегеректи тартат жана Түс кийинки тегерекке чейин түстү туш келди түскө өзгөртөт.
Эгерде сиз IDEдеги тегеректердин эскизин карасаңыз, анда вектордук сериялык дисплей жарыяланганын көрөсүз:
SerialDisplayClass дисплейи;
жана андан кийин setup () менен башталат:
Display.begin ();
Андан кийин Display.addButton () менен буйрук баскычтары суралат. Андан кийин цикл () Display.readMessage () буйрук баскычтары аркылуу жөнөтүлгөн буйруктарды издөө үчүн чакырат.
Демейки боюнча, дисплейдин координаттар системасы 240х320. Бирок, саптар жана тексттер сиздин Android түзмөгүңүздүн экраны толук чечилиши менен тартылган, жакшы көрүнүшү үчүн аниалиазинг менен. Ошондуктан тиркеме Вектордук дисплей деп аталат.
3 -кадам: API
Китепканадагы API VectorDisplay.h файлында. Сиз адегенде Display объектисин инициализациялашыңыз керек. USB колдонуу үчүн, муну менен аткарыңыз:
SerialDisplayClass дисплейи;
Display.begin () менен туташууну баштаңыз.
SerialDisplayClass объектисинде жеткиликтүү эки ыкма бар: бир комплект 32-разряддуу түстү (анын ичинде альфаны) жана менин VectorDisplay колдонмосу колдонгон USB сериялык протоколуна абдан жакын болгон буйруктарды колдонот, ал эми экинчиси-бул стандарттын топтому Adafruit GFX китепканасынын методдору, 16-бит түсүн колдонуу. Көпчүлүк учурда, сиз эки буйруктун топтомун эркин аралаштыра аласыз, эгер сиз Adafruit шайкеш ыкмаларын колдонсоңуз, 32-биттердин ордуна 565 менен аяктаган 16-бит түстүү командаларды колдонушуңуз керек.
Сиз Display.coordinates (туурасы, бийиктиги) менен координаттар системасын орното аласыз. Демейки туурасы = 240 жана бийиктиги = 320. Эгерде сиз квадрат эмес пикселдери бар дисплейди туурагыңыз келсе, Display.pixelAspectRatio (катыш) колдоно аласыз.
Бир нече ыкмалар, анын ичинде pixelAspectRatio (), FixedPoint32 аргументин алат. Бул өзгөрмөлүү чекиттин санын көрсөтүүчү 32 биттик бүтүн сан, мында 65536 1.0ди билдирет. Өзгөрмөлүү чекиттин санын FixedPoint32ге айландыруу үчүн: (FixedPoint32) (65536. * X) (же жөн гана TO_FP32 (x)).
Android баскычтарынан буйруктарды жөнөтүүдөн тышкары, экрандын тийүү окуялары да MCUга жөнөтүлөт.
WiFi колдонуу үчүн, тойрок_эсп8266 мисалын караңыз. WiFi режимине өтүү үчүн колдонмодогу USB баскычын басууңуз керек.
Bluetooth үчүн, сиз төмөнкүлөрдү кыла алышыңыз керек:
SerialDisplayClass Display (MyBluetoothSerial);
… MyBluetoothSerial.begin (115200); Display.begin ();
анан USB сериялык корпусундагыдай эле улантыңыз, бул жерде MyBluetoothSerial кандай болсо да Stream объектиси (мисалы, Serial2) сиздин Bluetooth адаптериңизге туташкан.
4 -кадам: 2 долларлык осциллограф
Тез жана кир осциллограф үчүн сизге көк же кара (аны менен иштөө оңой) таблетка STM32F103C8 керек болот, аны Aliexpressтен 2 долларга чейин ала аласыз. Мен тактаны Arduino чөйрөсү менен колдонууга кантип даярдоону жана бул жерде эскиздерди орнотууну сүрөттөп берем.
Бул эскизди Pingumacpenguin STM32-O-Scope эскизинин өзгөртүлгөн версиясы болгон тактага түшүрүп алыңыз. Тактаңызга дал келүү үчүн #define BOARD_LED линиясын түзөтүңүз. Мен LED PB12 болгон кара таблетканы колдонуп жатам. Көк таблеткалар (жана көк таблетка менен бирдей болгон кээ бир кара таблеткалар) PC13те LED бар.
Бир зымды-жерге илгичти-тактанын жерге жана башка зымды тактанын B0 пинине туташтырыңыз. Тактайды VectorDisplay иштеп жаткан Android түзмөгүнө туташтырыңыз, жана сизде портативдүү, батарея менен иштеген осциллограф бар.
Сүрөттө менде фототранзисторго туташкан осциллограф бар. Экрандагы из ТВнын инфракызыл алыстан башкаруу пультунан.
Сунушталууда:
Ear Bud Holder (планшет, компьютер, телефон): 4 кадам
Ear Bud Holder (планшет, компьютер, телефон): Кулакчындарым чырмалып же жоголуп кеткенде дайыма көңүлүм чөгөт. Ошентип, мен сиздин компьютериңиздин планшетинин артына коюуга боло турган нерселерди жасоону чечтим ж
Телефон/Планшет Башкарылган Пеллет Грилл (Трейгер): 4 кадам
Телефон/Планшет Башкарылган Пеллет Грилл (Трейгер): Ошентип, бир туугандарым укмуштуудай $ 1000 Traeger гилин зыяратта көргөндөн кийин, мен өзүмдү курууну чечтим. Мен үчүн мунун баары электроникага байланыштуу болчу, жана мен дагы эле арыла элек эски гриль. Бул курууда мен ширетүүнү үйрөндүм, бул ушунчалык
Arduino автоматташтырылган көлөкө экраны долбоору үчүн кадам моторун жана драйверди тандоо: 12 кадам (сүрөттөр менен)
Arduino автоматташтырылган көлөкө экраны долбоору үчүн тепкич моторун жана драйверди тандоо: Бул Нускамада мен Automated Shade Screen долбоорунун прототипине Step Motor жана Driver тандоо үчүн жасаган кадамдарымдан өтөм. Көлөкөлүү экрандар - бул популярдуу жана арзан Coolaroo кол менен жасалган моделдер, мен аны алмаштыргым келди
Aerobic Arduino - 15 долларлык фитнес трекеринин күчү: Arduino: 9 кадам (сүрөттөр менен)
Aerobic Arduino - $ 15 Fitness Tracker Power by Arduino: Бул үчүн Fitbit же акылдуу сааттардын ордуна фитнес чакырыктарына добуш бериңиз, сиз Arduino менен иштеген фитнес трекерди 15 долларга гана кура аласыз! Бул чуркоо учурунда колуңуздун насостук кыймылын көзөмөлдөйт жана муну аныктоо үчүн акселерометрди колдонот. Бул
Видео жана сүрөттөр үчүн 2 долларлык LED Камера Жарыгы: 11 кадам
Видео жана сүрөттөр үчүн 2 долларлык LED Камера Жарыгы: UPDATE: Менде 180 люмендүү жаңы жана жакшыртылган версия бар Санарип камералар татыктуу видео тарткандан бери, мен DV видеокамерамды көтөрүп жүрүүнү токтотуп, анын ордуна чекитимди колдонуп, санарип камераны бир нече мүнөткө тартам MOV же MPG видео бул жерде жана