Mundarija:

Jai Mishra LCD kalkulyatori: 8 qadam
Jai Mishra LCD kalkulyatori: 8 qadam

Video: Jai Mishra LCD kalkulyatori: 8 qadam

Video: Jai Mishra LCD kalkulyatori: 8 qadam
Video: LCD from Banggood not working 2024, Iyul
Anonim
LCD kalkulyatori Jai Mishra
LCD kalkulyatori Jai Mishra

Tinkercad loyihalari »

Bu sizning shaxsiy kalkulyatoringizni yaratishni o'rgatadigan juda foydali loyiha. Siz bu kalkulyatorni Internetda yoki real hayotda qo'shimcha materiallar yordamida yaratishingiz mumkin, lekin hozircha biz faqat onlayn kalkulyator yaratishga e'tibor qaratmoqchimiz.

Ta'minotlar

  • Arduino Uno R3
  • 220 Ohm qarshilik
  • 4*4 klaviatura
  • 16*2 LCD displey
  • Zanjirni ulash uchun simlar to'plami

1 -qadam: Materiallaringizni TinkerCad -da to'plang

TinkerCad -da jihozlaringizni to'plang
TinkerCad -da jihozlaringizni to'plang

Stress va xatolarni kamaytirish uchun 2 -bosqichni boshlashdan oldin, sizning barcha materiallaringiz mavjudligiga ishonch hosil qiling. To'g'ri jihozlardan foydalanganingizga ishonch hosil qiling, yuqoridagi rasmdagi ba'zi komponentalar boshqa qismlarga o'xshash, shuning uchun ularni aralashtirib yubormang. Yo'llanma sifatida yuqoridagi rasmdan foydalaning.

2 -qadam: Materiallaringizni joylashtiring

Ta'minotingizni tartibga soling
Ta'minotingizni tartibga soling

Ta'minotlarni tartibga solish - bu sizning kalkulyatoringiz qanday ko'rinishini oldindan ko'rishni ko'rishning eng yaxshi usuli. Siz xohlagan turdagi kalkulyator dizaynini yaratishingiz mumkin, lekin kalkulyator tabiiy ko'rinishiga ishonch hosil qiling va foydalanuvchilar dizaynni tushunishi va chalkashib ketmasligi mumkin. Men hamma uchun samarali va tushunarli bo'lgan odatiy kalkulyator dizaynidan foydalandim. Siz mening dizaynimni tanlashingiz yoki o'zingiz yaratishingiz mumkin, lekin nima bo'lishidan qat'i nazar ijodiy va omad tilaymiz!

3 -qadam: simlarni ulash

Simlarni ulash
Simlarni ulash

Agar siz uning ma'nosini tushunmasangiz, simlarni ulash juda qiyin ish. Ushbu simni ulashda biz barcha to'rt komponentni bir -biriga ulashga harakat qilmoqdamiz, shunda ular kod yozish vaqti kelganida guruh bo'lib ishlashlari mumkin. Agar simlar bo'lmasa, hech qanday oqim ketmaydi, bu esa muvaffaqiyatsiz loyihaga olib keladi. Hech qanday tushunmovchiliksiz simlar to'g'ri ulanganligiga ishonch hosil qiling.

Simlarni ulashni tugatganingizdan so'ng, simlaringiz aniq va tartibli ekanligiga ishonch hosil qiling, shunda siz va boshqalar bu kalkulyatorning apparatida nima bo'layotganini aniqroq tushunishadi. Yuqorida aytganimdek, siz simlarni tartibga solish texnikasini ishlatishingiz yoki o'zingiz yaratishingiz mumkin, lekin nima qaror qilsangiz ham, ular bo'sh joy bilan yig'ilganligiga ishonch hosil qiling.

4 -qadam: Kodni yozish

Kodni yozish
Kodni yozish
Kodni yozish
Kodni yozish
Kodni yozish
Kodni yozish

#qo'shing

#qo'shing #qo'shing

LiquidCrystal lcd (13, 12, 11, 10, 9, 8);

uzoq birinchi = 0; uzoq soniya = 0; ikki marta jami = 0;

char customKey; const bayt ROWS = 4; const bayt COLS = 4;

char tugmalari [ROWS] [COLS] = {{'1', '4', '7', '/'}, {'2', '5', '8', '+'}, {'3', '6', '9', '-'}, {'C', '0', '=', '*'}}; bayt rowPins [ROWS] = {7, 6, 5, 4}; // klaviatura baytlari colPins [COLS] = {3, 2, 1, 0}; // klaviatura ustun ustunlariga ulanish

// NewKeypad klaviatura sinfining namunasini ishga tushirish customKeypad = Klaviatura (makeKeymap (tugmalar), rowPins, colPins, ROWS, COLS);

void setup () {lcd.begin (16, 2); // boshlash uchun lcd (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Kalkulyator"); lcd.setCursor (0, 1); lcd.print ("Jai Mishra tomonidan"); kechikish (4000); lcd.clear (); lcd.print ("Yakuniy loyiha"); kechikish (2500); lcd.clear (); lcd.setCursor (0, 0); }

void loop () {

customKey = customKeypad.getKey (); switch (customKey) {case '0'… '9': // Bu operatorga "+-*/" lcd.setCursor (0, 0) bosilmaguncha birinchi qiymatni yig'ishda davom etadi; birinchi = birinchi * 10 + (customKey - '0'); lcd.print (birinchi); tanaffus;

holat '+': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("+"); soniya = SecondNumber (); // yig'ilgan ikkinchi sonni oling umumiy = birinchi + soniya; lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; // keyingi foydalanish uchun qiymatlarni nolga qaytarish;

holat '-': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("-"); soniya = SecondNumber (); jami = birinchi - ikkinchi; lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat '*': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("*"); soniya = SecondNumber (); jami = birinchi * soniya; lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat '/': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("/"); soniya = SecondNumber (); lcd.setCursor (0, 3);

soniya == 0? lcd.print ("Noto'g'ri"): jami = (suzuvchi) birinchi / (suzuvchi) soniya;

lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat 'C': jami = 0; lcd.clear (); tanaffus; }}

long SecondNumber () {while (1) {customKey = customKeypad.getKey (); if (customKey> = '0' && customKey <= '9') {second = second * 10 + (customKey - '0'); lcd.setCursor (0, 2); lcd.print (ikkinchi); }

agar (customKey == '=') tanaffus; // sekundiga qaytish; } soniya qaytish; }

5 -qadam: Kodni buzish

Kodni buzish
Kodni buzish

Biz kompyuter tushunishi uchun qiymatlarni ishga tushirdik

#qo'shing

#qo'shing #qo'shing

LiquidCrystal lcd (13, 12, 11, 10, 9, 8);

uzoq birinchi = 0; uzoq soniya = 0; ikki marta jami = 0;

char customKey; const bayt ROWS = 4; const bayt COLS = 4;

Biz kompyuterga klaviatura ishlashi kerak bo'lgan raqamlar va belgilarni aytdik

char tugmalari [ROWS] [COLS] = {{'1', '2', '3', '/'}, {'4', '5', '6', '+'}, {'7', '8', '9', '-'}, {'C', '0', '=', '*'}};

Biz klaviatura satrlari va ustunlarini aniqladik va qaysi raqam qaysi ustunda joylashgan va hokazo

bayt rowPins [ROWS] = {7, 6, 5, 4}; bayt colPins [COLS] = {3, 2, 1, 0};

Biz kompyuter uchun kirish yoki ekranning quvvatini yaratdik (Siz unga o'z ismingizni yozishingiz mumkin)

void setup () {lcd.begin (16, 2); uchun (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Kalkulyator"); lcd.setCursor (0, 1); lcd.print ("Jai Mishra tomonidan"); kechikish (4000); lcd.clear (); lcd.print ("Yakuniy loyiha"); kechikish (2500); lcd.clear (); lcd.setCursor (0, 0); }

Biz har bir operatsiyaning ma'nosi va formulasini kalkulyatorda yaratamiz, shunda kompyuter kalkulyatorda "+" tugmachasini bosganda va qaysi formuladan foydalanish kerakligini tushunadi

{holat '0'… '9': lcd.setCursor (0, 0); birinchi = birinchi * 10 + (customKey - '0'); lcd.print (birinchi); tanaffus;

holat '/': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("/"); soniya = SecondNumber (); lcd.setCursor (0, 3);

soniya == 0? lcd.print ("Noto'g'ri"): jami = (suzuvchi) birinchi / (suzuvchi) soniya;

lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus; holat '+': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("+"); soniya = SecondNumber (); lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat '-': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("-"); soniya = SecondNumber (); jami = birinchi - ikkinchi; lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat '*': birinchi = (jami! = 0? jami: birinchi); lcd.setCursor (0, 1); lcd.print ("*"); soniya = SecondNumber (); jami = birinchi * soniya; lcd.setCursor (0, 3); lcd.print (jami); birinchi = 0, ikkinchi = 0; tanaffus;

holat 'C': jami = 0; lcd.clear (); tanaffus; }}

Kod juda oson, buni tushunishga harakat qilish kifoya, keyin hamma narsani osonlikcha bajarish mumkin. Agar kod bilan bog'liq muammolar bo'lsa, menga elektron pochta xabarini yuboring

6 -qadam: Bu kalkulyatorning uskunalari qanday ishlaydi?

Bu kalkulyatorning apparati qanday ishlaydi?
Bu kalkulyatorning apparati qanday ishlaydi?

Bu kalkulyatorda LCD, klaviatura, Arduino kartasi va 220 ohmli rezistor ishlatiladi. Bu komponentlarning barchasi alohida, lekin Arduino -dan klaviatura va LCD -ga simlar bilan ulangan. LCD displeyining turli bo'limlari Arduino kartasi bilan bog'langan bo'lib, ular oxir -oqibat klaviatura bilan bog'lanadi. Ulanishdan so'ng, kodlash barcha ishlarni bajaradi va klaviaturadagi har bir operatsiya va tugmani bajarishga vazifa beradi.

7 -qadam: Kalkulyatorning to'liq ko'rinishi

Bizning yakuniy loyihamiz shunday ko'rinadi! Agar sizning kodingiz ishlamasa yoki ba'zi texnik qiyinchiliklar bo'lsa, iltimos, menga elektron pochta orqali xabar yuboring va men sizga eng yaxshi kalkulyatorni yaratishga yordam berishga harakat qilaman!

8 -qadam: Mening ushbu koddan ilhomlanishim

Men yuqoridagi videodan tinkerkadda kalkulyatorni yasashni ilhom oldim! Men hech narsani nusxa ko'chirmadim va joylashtirmadim, lekin men uning kalkulyator va kodni tushunish haqidagi fikridan foydalandim.

Tavsiya: