Fan: O’rnatilgan tizimlar Bajardi: Olimjonov Xasanboy Tekshirdi
Qisqacha nazariy ma’lumot
Download 0.59 Mb.
|
Qisqacha nazariy ma’lumot
Bir razryadli yetti segmetli indikatorda sonlarni 2ta tugma orqali o‘sish va kamayish tartibida chiqarish(1 tasi +, 1 tasi -) Foydalanilgan qurilmalar: 1. Seven Segment Display LED yoki yorug'lik chiqaradigan diod, fotonlar shaklida yorug'lik energiyasini chiqaradigan qattiq holatdagi optik pn-o'tish diodidir. Ushbu fotonlarning emissiyasi diodli birikma tashqi kuchlanish bilan to'g'ridan-to'g'ri yo'naltirilganda sodir bo'ladi, bu uning ulanishi bo'ylab oqim o'tishiga imkon beradi va elektronikada biz bu jarayonni elektroluminesans deb ataymiz. Ko'kdan qizildan to'q sariqgacha bo'lgan LED tomonidan chiqarilgan ko'rinadigan yorug'likning haqiqiy rangi chiqarilgan yorug'likning spektral to'lqin uzunligi bilan belgilanadi, bu o'zi uni ishlab chiqarish uchun ishlatiladigan yarimo'tkazgich materiallarga qo'shilgan turli xil aralashmalar aralashmasiga bog'liq. Yorug'lik chiqaradigan diodlar an'anaviy lampochka va lampalarga nisbatan juda ko'p afzalliklarga ega, ularning asosiylari kichik o'lchamlari, uzoq umr ko'rishlari, turli xil ranglari, arzonligi va tayyor bo'lishi, shuningdek, turli xil boshqa elektron komponentlar va raqamli sxemalar bilan oson interfeysga ega.Ammo yorug'lik chiqaradigan diodlarning asosiy afzalligi shundaki, ularning kichik o'lchamlari tufayli ularning bir nechtasi bitta kichik va ixcham paketga ulanishi mumkin, bu odatda 7 segmentli displey deb ataladi . 2. Push button Bosish tugmasi ikkita pin (kontakt) to'plamiga ega, 1 va 2. Bosish tugmasi bosilganda, u bu ikki kontaktni bog'laydi, shu bilan elektr pallasini yopadi. Har bir kontaktda bosish tugmachasining chap tomonidagi pin va tugmachaning o'ng tomonida boshqa pin mavjud. Shunday qilib, pin 1.lbirinchi kontakt uchun chap pindir va birinchi kontakt 1.ruchun o'ng pin. Ikkalasi ham bir xil kontaktga tegishli bo'lganligi sababli, tugma bosilmasa ham, ular doimo ulanadi. Quyidagi diagrammada tugma ichidagi ulanishlar ko'rsatilgan: Arduino bilan ishlashda siz odatda bitta kontaktni (masalan , 1.ryoki 1.l) raqamli pinga ulaysiz va bu pinni INPUT_PULLUP, boshqa kontaktni (masalan, 2.ryoki 2.l) yerga sozlaysiz. Raqamli pin LOW tugmani bosganingizda va HIGH tugma bosilmaganda o'qiydi. Amaliy qism: Topshiriq kod qismi: const int seg_pins[7] = { 4, 3, 1, 2, 12, 5, 6 }; const int num_segs[10][7] = { {1, 1, 1, 1, 1, 1, 0}, // 0 {0, 1, 1, 0, 0, 0, 0}, // 1 {1, 1, 0, 1, 1, 0, 1}, // 2 {1, 1, 1, 1, 0, 0, 1}, // 3 {0, 1, 1, 0, 0, 1, 1}, // 4 {1, 0, 1, 1, 0, 1, 1}, // 5 {1, 0, 1, 1, 1, 1, 1}, // 6 {1, 1, 1, 0, 0, 0, 0}, // 7 {1, 1, 1, 1, 1, 1, 1}, // 8 {1, 1, 1, 1, 0, 1, 1} // 9 }; const int shutdown_segs[7] = { 0, 0, 0, 0, 0, 0, 0 }; #define inc_button_pin 9 #define dec_button_pin 8 void setup() { for (int i = 0; i < 7; i++) { pinMode(seg_pins[i], OUTPUT); } pinMode(inc_button_pin, INPUT); pinMode(dec_button_pin, INPUT); Serial.begin(9600); } int num = 0; void loop() { int inc_button_state = digitalRead(inc_button_pin); int dec_button_state = digitalRead(dec_button_pin); if (inc_button_state == LOW) { num++; if (num > 9) { num =9 ; } delay(100); } if (dec_button_state == LOW) { num--; if (num < 0) { num = 0; } delay(100); } for (int i = 0; i < 7; i++) { digitalWrite(seg_pins[i], num_segs[num][i]); } Serial.println(num); delay(100); } Topshiriq linki: https://www.tinkercad.com/things/0mhqu7RrTcP-smashing-jofo/editel?sharecode=H26L3ZjncQqhc-UikyiexxuNvbaNbUPELt19eNHQuUQ 3. 4 razryad 7 segmentli indikator yordamida jarayonlarni boshqarish Download 0.59 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling