Mundarija:
- 1 -qadam: Serial displey
- 2 -qadam: Matrix klaviaturasi
- 3 -qadam: yig'ish
- 4 -qadam: Manba kodi
- 5 -qadam: Buyruqlarni ko'rsatish
- 6 -qadam: Klaviatura bilan ishlash
- 7 -qadam: Parolni sozlash
- 8 -qadam: sozlash
- 9 -qadam: halqa
Video: LCD displey va Arduino Uno bilan boshqaruv paneli klaviaturasi: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Bu matritsali klaviatura, LCD displeyi va Arduino Uno bilan ishlaydi, bugungi kunda eng asosiysi. Ushbu sozlamaning maqsadi matritsa klaviaturasida yozilgan parolni qabul qiladigan, uni to'g'ri parol bilan solishtiradigan va displeyda tasdiqlovchi xabarni ko'rsatadigan dastur yaratishdir.
Shuni esda tutish kerakki, matritsa klaviaturasi ham, displey ham ESP8266 va ESP32 bilan ishlaydi.
Ko'rib turganingizdek, biz tashqi manbadan foydalanmayotganimiz sababli, biz Arduino bilan elektronni quvvatlantiramiz. Arduino portlariga juda oddiy tarzda ulangan sakkizta simlar bizning klaviaturamizni ulash imkonini beradi. Bu klaviatura hech qanday kuchga ega emas va passiv, bu ulanishni sezilarli darajada osonlashtiradi.
Displey Arduino -ga UART orqali ulanadi, bu portni ketma -ket port, u ham qurilmani quvvatlaydi.
Namoyish paytida biz klaviaturada yozilgan parol to'g'ri yoki noto'g'riligini tekshiradigan o'z sxemamizni ko'rsatamiz.
Videoda ishlatilgan va bu erda mavjud bo'lgan PDF -da biz ishlatilayotgan chipning to'liq pinoutiga egamiz.
1 -qadam: Serial displey
Bu UXT bilan aloqa qiladigan ketma -ket displey, bu TXRX bilan RS. U I2C versiyalarida ham mavjud, ammo boshqa modellar yaqinda yig'ilish uchun qoladi. Bunday holda, bu displey UART tomonidan RSda ishlaydi.
2 -qadam: Matrix klaviaturasi
Biz foydalanadigan matritsali klaviatura misoli fotosuratga o'xshaydi va u o'ng tomonda. Bizda uning qanday ishlashini ko'rsatadigan diagramma mavjud. Aslida u faqat 4x4 qatorga ega. Shunday qilib, u minimal miqdordagi simlardan foydalanadi; har bir satr va ustun uchun bitta sim, shunda jami sakkizta sim bor.
Quvvat kerak emas, chunki u quyidagicha ishlaydi: 7 bosilganda, klaviatura 7 ni oladi va chiziq va ustunga ulanadi, bu algoritmni avtomatik skanerlash orqali identifikatsiyani amalga oshiradi.
Shuni esda tutish kerakki, nuqta matritsali har qanday 4x4 klaviatura ishlaydi.
3 -qadam: yig'ish
Umumiy sxemada biz sakkizta simni to'g'ridan -to'g'ri Arduino portlariga ulaymiz, chunki klaviaturada quvvat yo'q. Displeyda biz RS 232 signaliga, ijobiy va salbiy kuchga egamiz. Orqa yorug'lik hali ham mavjud, u ham allaqachon ulangan (BKL tomonidan aniqlangan).
4 -qadam: Manba kodi
Loyihaning manba kodida siz ketma -ketlik va klaviaturani kiritishingiz kerak. U ketma -ket dasturiy ta'minot uchun zarur bo'lgan RX_PIN va TX_PIN to'plamiga ega, shuningdek INVERTED 1. Bu teskari mantiq bilan kirishni ishlatadigan signalni kuchaytirish uchun joylashtirilgan.
// biblioteca javoblari pa comunicação LCD displeyi #o'z ichiga oladi // biblioteca javob beradi, agar siz hech qachon bosmasangiz #qo'shish // hech qanday xato qilmasa, SoftwareSerial bilan hech qanday aloqasi yo'q #RX_PIN 255 ni belgilang // pino TX da nossa LCD displeyi #define TX_PIN 3 // Rx e Tx, LOW como HIGH, aksincha, #ta'rif INVERTED 1
5 -qadam: Buyruqlarni ko'rsatish
Muhim: bu displeyda unga sim qo'yish kifoya qilmaydi. Siz nazorat belgilarini yuborishingiz kerak. PDF -da ushbu displey qo'llanmasi bo'lgan sayt havolasi mavjud. Ammo, agar sizda boshqa brendning ketma -ket displeyi bo'lsa, ularning tegishli kodlarini ko'rib chiqish yaxshidir. Ushbu modelda, masalan, biz ma'lum bir boshqaruvni yuborganimizda (masalan, bu displey uchun ma'lumot), biz aloqani yoqish uchun 254 raqamli prefiksni yuborishimiz kerak.
Shunday qilib, biz narsalarni osonlashtirish uchun ARRAY -ni o'rnatdik, bu raqamli indeks yordamida kirish mumkin bo'lgan o'zgaruvchilar to'plami. Bu displeyga dastlabki konfiguratsiya sifatida yuboriladi.
// pul limpar toda to display a displayconst char limparTela = {254, 1}; // konfiguratsiya inicial/ * 254, 254 orqa nuri 254, 254, 253, 1 ta konfiguratsiya 254, 13 ta konfiguratsiya va boshqa parametrlar * yoki const char configInicial = {254, 254, 254, 1, 254, 253, 1, 254, 13};
6 -qadam: Klaviatura bilan ishlash
Klaviatura qanday ishlaydi? Birinchidan, u qatorni o'rnatadi. Bu qator aslida u erda ko'rsatiladigan belgidir. Agar men X ni qo'ysam, tepadagi birinchi chap tugmani bosganimda, u ko'rsatiladi. Bu klaviaturaning mazmuni, u buyruq beradi.
Biz aniqlagan boshqa narsalar - bu klaviatura ARRAY holatida 4 -qator va 4 -ustun. Bizda hali ham Arduino pinlari va ustunning pinlari bor. Hali ham bizda belgi, pin, qator va ustun parametrlari bo'lgan customKeypad klaviatura quruvchisi bor.
const bayt LINHAS = 4; // nolinchi raqamli bayt COLUNAS = 4; // nosozliklarni aniqlang // aniqlang SIM -kartalar [LINHAS] [KOLUNAS] = {{'A', '1', '2', '3'}, { 'B', '4', '5', '6'}, {'C', '7', '8', '9'}, {'D', 'c', '0', 'e '}}; bayt PINOS_LINHA [LINHAS] = {8, 9, 10, 11}; // pinos que indicam linxas qilib, bayt PINOS_COLUNA [COLUNAS] = {4, 5, 6, 7}; // buyruq satrlari buyruqlar buyrug'iga binoan // klaviatura, javoblar va buyruqlar klaviatura customKeypad = keypad (makeKeymap (SIMBOLOS), PINOS_LINHA, PINOS_COLUNA, LINHAS, COLUNAS);
7 -qadam: Parolni sozlash
Bu qismda biz parolni belgilaymiz, keyin parolni kiritishimiz kerak, bu bo'sh satr. Quyida biz softwareSerial misolini keltiramiz.
// o'zgaruvchan javoblar String SENHA_ESPERADA = "1234ABCD" sifatida; SENHA_DIGITADA qatori = ""; // Installer of SoftwareSerial para nos comunicar com Serial orqali ko'rsatish DisplaySerial = SoftwareSerial (RX_PIN, TX_PIN, INVERTED);
8 -qadam: sozlash
O'rnatishga kelsak, bu erda displaySerial.begin (2, 400), bu tezlik haqida. Bizning holatda, bu bayt yuborish uchun etarli. Buning ortidan 700 millisekund kutish kutilmoqda. Biz DisplaySerial.print (initialConfig) ni dastlabki konfiguratsiyadan 10 millisekundga yangi kechikish bilan kiritamiz va start funksiyasiga o'tamiz. Boshlash funktsiyasiga displaySerial.print ("parol:") qo'yamiz.
void setup () {Serial.begin (2400); // bir vaqtning o'zida bir qatorda comunicação ko'rsatiladi // muhim tezlik 2400 displaySerial.begin (2400); // kechiktirish tezligi (700); // displeyni ko'rsatish uchun rasmiy sozlash DisplaySerial.print (configInicial); kechikish (10); inicio (); } // funchão javob berish uchun siz raqamli raqamlar va raqamlarni yozib olishingiz mumkin // siz bir nechta raqamlarni taqqoslashingiz mumkin, bu sizning raqamingiz yoki raqamingiz uchun javob beradi. void inicio () {displaySerial.print ("Senha:"); }
9 -qadam: halqa
Loopda biz customKey = customKeypad.getKey () yaratamiz va ketma -ketlikda biz Switch buyrug'ini kiritamiz.
// maxsus tugmachani bosish orqali CustomKey = customKeypad.getKey (); // agar (customKey) {Serial.println (customKey); almashtirish (customKey) { /… /}}
Loop Switch 1 -qism
Switch buyrug'i ichida: u bosilsa, bosiladigan tugmalar imkoniyatlari ro'yxatini ko'rsatadi va parolni oshiradi: customKey -ni oladi va kiritilgan parolni birlashtiradi. Keyingi, displaySerial.print (customKey) asosiy tarkibni ko'rsatadi.
switch (customKey) {// "A" harfi: "B" holati: "C" holati: "D" holati: "0": "1" holati: "2" holati '3': holat '4': holat '5': holat '6': holat '7': holat '8': holat '9': // yangi raqamlar bir -biridan farqli o'laroq, SENHA_DIGITADA+= customKey; Serial.println (SENHA_DIGITADA); // imrpime yoki displeyni ko'rsatish DisplaySerial.print (customKey); tanaffus;
Loop Switch 2 -qism
Ushbu kodda biz CLEAR tugmachasi bosilsa ssenariyni ko'rsatamiz. Agar siz C harfini yozsangiz va siz kiritayotgan parolni saqlaydigan o'zgaruvchini o'chirsangiz, u ekranni tozalash buyrug'ini chaqiradi va qayta boshlanadi.
// CLEAR tugmachasini bosish "s" holatida: // cheklovlar va raqamlar SENHA_DIGITADA = ""; // chegirmalar yoki simlar displeySerial.print (limparTela); // konfiguratsiya uchun hisob raqamini sozlash (); tanaffus;
Loop Switch 3 -qism
Yana bir imkoniyat, agar siz E harfini yozsangiz, bu holda, agar parol to'g'ri yoki noto'g'ri kiritilgan bo'lsa, ekran tozalanadi va tahlil qilinadi. Keyin biz 2 soniya kechiktiramiz, ekranni tozalaymiz, parol o'zgaruvchisini tiklaymiz va boshiga qaytamiz.
// ENTER tugmachasini bosing va "e" holatiga o'xshash taqqoslash: // telSerial.print (limparTela); // siz ESPERADA ni ko'rsatsangiz, agar (SENHA_ESPERADA == SENHA_DIGITADA) {Serial.println ("Senha Correta!"); // senha korreta displaySerial.print ("Senha Correta !!!"); } // caso senha esteja errada else {Serial.println ("Senha Incorreta!"); // senxa kiritilmagan displeySerial.print ("Senha Incorreta!"); } // 2 -sonli ma'lumotni kechiktirish kerak emas, chunki siz uni kechiktirishingiz mumkin (2000); displaySerial.print (limparTela);
Tavsiya:
Bluetooth boshqaruvidagi Messenger LCD -- 16x2 LCD displey -- Hc05 -- Oddiy -- Simsiz xabarnomalar paneli: 8 qadam
Bluetooth boshqaruvidagi Messenger LCD || 16x2 LCD displey || Hc05 || Oddiy || Simsiz xabarnomalar taxtasi: …………………………. boshqa videolarni ko'rish uchun YouTube kanalimga obuna bo'ling …… ………………………………… E'lonlar taxtasi odamlarni yangi ma'lumotlar bilan yangilash uchun ishlatiladi yoki agar siz xabarni xonada yoki halqa bilan yubormoqchi bo'lsangiz
Guino: Arduino uchun boshqaruv paneli: 4 qadam (rasmlar bilan)
Guino: Arduino uchun asboblar paneli: Bu loyiha rassomni Instructables qarorgohida o'tkazgan tajribalarining bir qismi. Boshqa loyihalarni bu erda ko'rishingiz mumkin. Arduino doskasida "nbsp; real vaqtda" ma'lumotlarni disk raskadrovka qilish va vizualizatsiya qilish qiyin ish bo'lishi mumkin. Siz odatda s ga yopishib qolasiz
Arduino yordamida P10 LED displey modulidagi displey harorati: 3 qadam (rasmlar bilan)
Arduino yordamida P10 LED displey modulidagi displey harorati: Oldingi qo'llanmada Arduino va DMD ulagichi yordamida nuqta matritsali LED displeyli P10 modulida matnni qanday ko'rsatish kerakligi ko'rsatilgan. Ushbu qo'llanmada biz P10 modulini displey vositasi sifatida ishlatib, oddiy loyiha qo'llanmasini beramiz
PSP -ni kompyuter boshqaruv paneli sifatida ishlatish va keyin kompyuterni PSP bilan boshqarish: 5 qadam (rasmlar bilan)
PSP -ni kompyuterni joystik sifatida ishlatish va keyin PSP yordamida kompyuterni boshqarish: Siz PSP homebrew -dan foydalanib juda ko'p ajoyib ishlarni bajarishingiz mumkin va men sizga bu PSP -ni o'yin o'ynash uchun joystik sifatida ishlatishni o'rgataman. sichqoncha sifatida joystikdan foydalanish imkonini beruvchi dastur. Mana, ona
LCD studiyada maxsus displey yarating (G15 klaviaturasi va LCD displeylari uchun): 7 qadam
LCD studiyasida maxsus displey yarating (G15 klaviaturasi va LCD displeylari uchun): OK, agar siz G15 klaviaturasini oldingiz va u bilan birga kelgan asosiy displeylar bilan unchalik ta'sirlanmagan bo'lsangiz, men sizni LCD Studio -dan foydalanish asoslari bilan tanishtiraman. Bu misol faqat bazani ko'rsatadigan displeyni yaratadi