MUHAMMAD AL XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
O`rnatilgan tizimlar fanidan
TOPSHIRIQ 5
Bajardi: 216-18- guruh talabasi
Quvvatov S
Tekshirdi: Xoldorov Sh
Toshkent 2021
Mavzu: Arduino muhitida 7 segmentli pinda avval juft raqamlarni chiqarish va undan keyin toq raqamlarni chiqarish.
Nazariy qism:
Etti segmentli LED ko'rsatkichlari raqamli qiymat displeylari orasida juda mashhur va ular mikroto'lqinli pechning old panellarida, kir yuvish moshinalari, raqamli soatlar, hisoblagichlar, taymerlar va boshqalar. LCD ko'rsatkichlari, segmentlari bilan taqqoslaganda lED ko'rsatkichi yorqin porlaydi va uzoq masofada va keng ko'rish burchagida ajralib turadi. 7 segmentli 4 raqamli displeyni mikrokontrolderga ulash uchun kamida 12 kirish / chiqish liniyasi kerak. Shu sababli, ushbu ko'rsatkichlardan kam sonli pinli mikrokontrolörler bilan, masalan, kompaniyaning bir qatoridan foydalanish deyarli mumkin emas. Albatta, siz multipleksatsiyalashning turli usullaridan foydalanishingiz mumkin (ularning tavsifini saytda "Sxemalar" bo'limida topishingiz mumkin), ammo bu holda har bir usul uchun ma'lum cheklovlar mavjud va ko'pincha ular murakkab dastur algoritmlaridan foydalanadilar.
Ko'rsatkichni SPI interfeysi orqali ulash usulini ko'rib chiqamiz, unga mikrokontrolörning faqat 3 ta kirish / kirish chizig'i kerak bo'ladi. Bunday holda, indikatorning barcha segmentlarini boshqarish qoladi.
4-raqamli ko'rsatkichni mikrokontrolderga SPI avtobusi orqali ulash uchun kompaniya tomonidan ishlab chiqarilgan ixtisoslashtirilgan haydovchi chipidan foydalaniladi. Mikrosxemalar umumiy katodli sakkiz etti segmentli displeyni haydashga qodir va BCD dekoderini, segment drayverlarini, multipleksatsiyalash pallasini va raqamli qiymatlarni saqlash uchun statik RAMni o'z ichiga oladi
7 segmentning ko`rinishi
Dasturning kodi qismi.
int a = 13; int b = 12; int c = 11; int d = 10; int e = 9; int f = 8; int g = 7;
void setup()
{
pinMode(a, OUTPUT); pinMode(b, OUTPUT); pinMode(c, OUTPUT);
pinMode(d, OUTPUT); pinMode(e, OUTPUT); pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
}
void loop()
{
// 0 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, LOW); digitalWrite(f, LOW);
digitalWrite(g, HIGH); delay(2000);
// 2 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, HIGH);
digitalWrite(d, LOW); digitalWrite(e, LOW); digitalWrite(f, HIGH);
digitalWrite(g, LOW); delay(2000);
// 4 ni chiqarish
digitalWrite(a, HIGH); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, HIGH); digitalWrite(e, HIGH); digitalWrite(f, LOW);
digitalWrite(g, LOW); delay(2000);
// 6 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, HIGH); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, LOW); digitalWrite(f, LOW);
digitalWrite(g, LOW); delay(2000);
// 8 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, LOW); digitalWrite(f, LOW);
digitalWrite(g, LOW); delay(2000);
// 1 ni chiqarish
digitalWrite(a, HIGH); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, HIGH); digitalWrite(e, HIGH); digitalWrite(f, HIGH);
digitalWrite(g, HIGH); delay(2000);
// 3 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, HIGH); digitalWrite(f, HIGH);
digitalWrite(g, LOW); delay(2000);
// 5 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, HIGH); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, HIGH); digitalWrite(f, LOW);
digitalWrite(g, LOW); delay(2000);
// 7 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, HIGH); digitalWrite(e, HIGH); digitalWrite(f, HIGH);
digitalWrite(g, HIGH); delay(2000);
// 9 ni chiqarish
digitalWrite(a, LOW); digitalWrite(b, LOW); digitalWrite(c, LOW);
digitalWrite(d, LOW); digitalWrite(e, HIGH); digitalWrite(f, LOW);
digitalWrite(g, LOW); delay(2000);
}
Xulosa
Menda bu topshiriqni bajarish davomida 7segment qanday tuzilgani va qanday ishlashi haqida bilib oldim va yangi bilimlarga ega bo’ldim
Do'stlaringiz bilan baham: |