Агуулгын хүснэгт:
- Алхам 1: Processing.serial -ийг ашиглах
- Алхам 2: Цувралын ангиллыг ойлгох
- Алхам 3: Arduino цуваа анги
- Алхам 4: GUI 7 сегментийн хянагч бүтээх
Видео: Боловсруулалт ба Arduino -г холбож, 7 сегмент ба Servo GUI хянагч хий: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Зарим төслүүдийн хувьд та Arduino -ийг ашиглах хэрэгтэй, учир нь энэ нь загварчлах хялбар платформыг өгдөг боловч Arduino -ийн цуваа дэлгэц дээр график дүрслэх нь нэлээд удаан хугацаа шаардагдах бөгөөд үүнийг хийхэд хэцүү байдаг. Та графикийг Arduino Serial Monitor дээр харуулах боломжтой боловч графикийг харуулах цорын ганц зүйл биш юм. Слайдер, товчлуур, 2D, 3D, PDF, эсвэл SVG гаралт бүхий програмууд гэх мэт бүх интерактив объектууд ба та хүүхэлдэйн киног хялбархан үүсгэх боломжтой. Боловсруулах үндсэн програмчлалын горим бол Java боловч та үүнийг Android, p5.js, REPL, CoffeeScript, JavaScript -ээр сольж болно. Энэхүү зааварт бид Java програмчлалын горимыг ашиглах болно.
Бүх агуулга, кодыг энд байгаа миний github дээрээс авах боломжтой.
Алхам 1: Processing.serial -ийг ашиглах
Код боловсруулж байна
Эхний хоёр мөр код байх болно
импорт боловсруулах.сериал.*; Цуваа myPort;
Энд эхний мөрөнд бид номын санг импортлож байна - боловсруулж, хоёр дахь мөрөнд myPort нэртэй Цуваа ангийн объектыг үүсгэж байна, та таниулагчийг нэрлэх дүрмийг дагаж хүссэн зүйлээ нэрлэж болно.
Боловсруулах явцад бидэнд void setup () ба void draw () байдаг бөгөөд энд void нь функцын буцах төрөл бөгөөд та үүнийг int setup () болон int draw () эсвэл өөр дуртай өгөгдлийн төрөл болгон өөрчилж болно, гэхдээ та үүнийг буцааж өгөх шаардлагатай болно. функцүүдийн өмнө ашигладаг өгөгдлийн төрөлтэй ижил өгөгдлийн төрөлтэй утга.
setup () дээр бид нэг удаа гүйцэтгэх ёстой мэдэгдлүүдийг бичдэг бол draw () дээр бид хэд хэдэн удаа гүйцэтгэх шаардлагатай мэдэгдлүүдийг бичдэг. Дээр дурдсан хоёр кодын мөрийг void setup () дээр бичих ёстой, учир нь тэдгээр нь дэлхийн хэмжээнд нэвтрэх эрхтэй байх ёстой.
Void setup () дээр бид myPort объектыг эхлүүлэх болно.
хүчингүй тохиргоо () {
хэмжээ (800, 800);
myPort = шинэ цуваа (энэ нь "COM18", 9600);
}
Шугамын хэмжээ (800, 800); Дэлгэцийн хэмжээг 800 пикселээс 800 пиксел хүртэл тодорхойлно.
Хоёрдахь мөрөнд байгаа шинэ түлхүүр үгийг санах ойд байгаа объектод зай гаргахад ашигладаг бөгөөд энэ аргумент нь одоогийн объектыг хэлдэг лавлагаа хувьсагч юм. COM18 аргумент нь Arduino -тай холбогдсон порт бөгөөд бидэнд өгөгдлийг цуваа интерфейсээр дамжуулах тул бидэнд хэрэгтэй байна. Таны хувьд 18 тоо өөр байж болно, та үүнийг Arduino IDE -ийн Багаж хэрэгсэл> Портоос олж болно, 9600 бол үүнийг Arduino болон Боловсруулалтын аль алинд нь өөрчилж болно.
Алхам 2: Цувралын ангиллыг ойлгох
Цувралын бүтээгч
Цуваа (эцэг эх, портНэр, baudRate, parity, dataBits, stopBits)
Аргумент:
эцэг эх: ихэвчлэн "энэ" -г ашигладаг
baudRate (int): 9600 нь анхдагч юм
portName (String): портын нэр (COM1 нь анхдагчаар)
parity (char): 'N' нь хэний ч хувьд, 'E' нь сондгойгийн хувьд 'O', 'M' тэмдэгийн хувьд 'S' нь орон зайны хувьд ('N' нь анхдагч утга юм)
dataBits (int): 8 нь анхдагч юм
stopBits (float): 1.0, 1.5 эсвэл 2.0 (1.0 нь анхдагчаар)
Чухал аргууд:
- myPort.available () - боломжтой байтын тоог буцаана.
- myPort.clear () - буферийг хоослон, тэнд хадгалагдсан бүх өгөгдлийг устгадаг.
- myPort.read () - Буфер дотор хүлээж буй дараагийн байтын хувьд 0 -ээс 255 хүртэлх тоог буцаана.
- myPort.readString () - Буферээс авсан бүх өгөгдлийг String эсвэл null хэлбэрээр буцаана.
- myPort.write ("тест") - Цуваа порт руу байт, тэмдэгт, инт, байт , мөрүүдийг бичдэг.
- myPort.stop () - Порт дээрх өгөгдөл дамжуулалтыг зогсооно.
Алхам 3: Arduino цуваа анги
Та үүнийг ашиглахаасаа өмнө Arduino -д цуваа анги оруулах шаардлагагүй.
Arduino -д setup () ба loop () гэж нэрлэгддэг 2 функц байдаг бөгөөд уг тохиргоо нь зөвхөн нэг удаа ажилладаг боловч давталт нь олон удаа ажилладаг. Setup () дээр бид бичих хэрэгтэй бөгөөд цуваа холболтыг эхлүүлэхийн тулд begin () аргыг ашиглана. Arduino -д боловсруулалтаас ялгаатай нь Arduino дээр ноорог байршуулахдаа портыг аль хэдийн зааж өгсөн тул start () аргын аргументын хувьд портыг дурдах шаардлагагүй болно.
Тиймээс setup () дараах байдлаар харагдах болно.
хүчингүй тохиргоо () {
Цуваа эхлэх (9600); // цуваа холболтыг эхлүүлэх
}
Энд 9600 нь боловсруулалтын файл дээр бас дурдсан байсан дамжуулах хурдыг тодорхойлдог. Зөв зохистой харилцахын тулд дамжуулалтын хурд хоёулаа тэнцүү байх ёстой, эс тэгвээс та цуваа гаралтыг утгагүй зүйл гэж харж болно.
Одоо loop () хэсгийг үзье. Кодын энэ хэсэг хэд хэдэн удаа ажилладаг. Хэрэв бид зарим өгөгдлийг портоор уншихыг хүсвэл Serial.read () аргыг ашиглах болно. Хэрэв өгөгдөл байхгүй бол энэ функц null буцаана, тиймээс бид Serial урсгалд байгаа зарим өгөгдөл байгаа үед л энэ аргыг дуудах болно.
Зарим өгөгдөл байгаа эсэхийг шалгахын тулд бид Serial.available () аргыг ашиглах болно. Хэрэв энэ нь 0 -ээс их утгыг буцааж өгвөл зарим өгөгдөл боломжтой болно.
Тиймээс loop () хэсэг дараах байдлаар харагдах болно.
void loop () {
if (Serial.available ()> 0) {// хэрэв цуваа порт дээр зарим өгөгдөл байгаа бол
char төлөв = Serial.read (); // утгыг уншина уу
// if мэдэгдэл эсвэл кейсийг солих
}
}
Одоо хэрэв бид шат эсвэл олон боломжит үр дүн байгаа бол switch case -ийг хувьсах төлөвт ашиглаж болно.
Алхам 4: GUI 7 сегментийн хянагч бүтээх
Файлуудыг энд хавсаргасан болно. Тэмдэглэл: Боловсруулахын тулд та GUI интерактив товчлууруудыг үүсгэхэд ашиглаж байсан p5 хяналтын номын санг суулгах хэрэгтэй болно.
Тоонуудыг зүү
7 сегмент (цагаан толгойн үсгийн дарааллаар) зургийг үзнэ үү
a - дижитал зүү 2
b - дижитал зүү 3
c - дижитал зүү 4
d - дижитал зүү 5
e - дижитал зүү 6
f - дижитал зүү 7
g - дижитал зүү 8
dp - дижитал зүү 9
Бүх агуулга, кодыг энд байгаа миний github дээрээс авах боломжтой
Зөвлөмж болгож буй:
Hologram Nova болон Ubidots ашиглан холбогдсон шийдлүүдээ холбож, сайжруулаарай: 9 алхам
Холбогдсон шийдлүүдээ Голограм Нова ба Убидот ашиглан холбож, сайжруулаарай: Голограм Нова ашиглан дэд бүтцээ сайжруулна уу. Ubidots руу өгөгдөл дамжуулахын тулд Raspberry Pi ашиглан Hologram Nova -ийг тохируулаарай. Дараах гарын авлагад Ubidots нь Raspberry Pi ашиглан Hologram Nova -ийг хэрхэн тохируулахыг харуулах болно
Flysky RF дамжуулагч нь USB + Утасны дохиог компьютерт холбож, үнэгүй симулятор програм хангамж: 6 алхам
Flysky RF -ийн дамжуулагч нь USB -ээр дамжуулан компьютерт холбогддог + үнэгүй симулятор програм хангамж: Хэрэв та надтай адилхан бол RF -ийн дамжуулагчаа туршиж, хайртай RF онгоц/дроноо унахаасаа өмнө сурах дуртай болно. Энэ нь танд маш их мөнгө, цаг хэмнэхээс гадна нэмэлт зугаа цэнгэлийг өгөх болно
Arduino дээр суурилсан DIY тоглоомын хянагч - Arduino PS2 тоглоомын хянагч - DIY Arduino Gamepad ашиглан Tekken тоглох: 7 алхам
Arduino дээр суурилсан DIY тоглоомын хянагч | Arduino PS2 тоглоомын хянагч | DIY Arduino Gamepad ашиглан Tekken тоглох: Сайн байна уу залуусаа, тоглоом тоглох нь үргэлж хөгжилтэй байдаг, гэхдээ өөрийн гараар хийсэн DIY тоглоомын хянагчтай тоглох нь илүү хөгжилтэй байдаг тул бид энэ зааварт arduino pro micro ашиглан тоглоом хянагч хийх болно
Infineon DPS422 мэдрэгчийг Infineon XMC4700 -тай холбож, NodeMCU руу өгөгдөл илгээх: 13 алхам
Infineon XMC4700 -тай Infineon DPS422 мэдрэгчийг хооронд нь холбож, NodeMCU руу өгөгдөл илгээх: Энэхүү зааварчилгаанд бид DPS422 -ийг температур ба барометрийн даралтыг XMC4700 ашиглан хэмжих талаар сурах болно. DPS422 хэрэглээ
UbiDots-ESP32 холбож, олон мэдрэгчийн мэдээллийг нийтлэх: 6 алхам
UbiDots-ESP32-ийг холбох ба олон мэдрэгчийн мэдээллийг нийтлэх: ESP32 ба ESP 8266 нь IoT-ийн салбарт маш сайн танил болсон SoC юм. Эдгээр нь IoT төслүүдийн хувьд сайн зүйл юм. ESP 32 бол нэгдсэн WiFi болон BLE төхөөрөмж юм. Зүгээр л SSID, нууц үг, IP -ийнхээ тохиргоог өгөөд эдгээр зүйлийг нэгтгээрэй