Мазмұны:
Бейне: 1602 LCD және 4x4 пернетақтасын қолданатын Arduino DIY калькуляторы: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:24
Сәлеметсіздер ме, осы нұсқаулықта біз Arduino көмегімен калькулятор жасаймыз, ол негізгі есептеулерді орындай алады. Осылайша, біз 4x4 пернетақтасынан кіріс аламыз және 16x2 дисплейдегі деректерді басып шығарамыз, ал arduino есептеулерді жасайды.
1 -қадам: Сізге қажет заттар
Бұл нұсқаулықтар үшін бізге келесі заттар қажет болады: Arduino Uno (кез келген нұсқа жұмыс істейді)
16 × 2 СКД дисплейі
4 × 4 пернетақта 9В аккумуляторлық тақта Сымдарды қосу
2 -қадам: Қосылымдар
Бұл Arduino калькуляторының толық схемасы жоғарыда келтірілген. Схемада көрсетілген +5В және жерге қосуды Arduino 5В және жерге тұйықталу шнурынан алуға болады. Arduino-ны ноутбуктен немесе тұрақты ток ұясы арқылы 12В адаптер немесе 9В аккумулятор арқылы қуаттауға болады. Біз СКД-ді 4-разрядты режимде Arduino-мен жұмыс жасаймыз, сондықтан СКД-дің соңғы төрт биті Arduino-ға қосылған. Пернетақтада жоғарыда көрсетілгендей түйреуіш 0 -ден 7 -ге дейінгі түйінге қосылатын 8 шығыс түйреуіш болады, егер кейбір түйіндер 0 мен түйреуішке қосылған болса, бағдарламаны жүктеу кезінде қатені көрсетуі мүмкін. бағдарламаны жүктеу кезінде пернетақта.
3 -қадам: код
Келесі кодты көшіріп, оған arduino жүктеңіз:/ * * Arduino пернетақтасының калькулятор бағдарламасы */#құрамында «LiquidCrystal.h» // СКД үшін тақырыптық файл https://www.arduino.cc/en/Reference/LiquidCrystal# «Keypad.h» қамтиды // https://github.com/Chris--A/Keypadconst байт ROWS = 4 пернетақтасына арналған тақырыптық файл; // Төрт жолдық конст байт COLS = 4; // Үш баған // Keypapchar пернелерін анықтаңыз [ROWS] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {'*',' 0 ','#',' A '}}; байт rowPins [ROWS] = {0, 1, 2, 3}; // ROW0, ROW1, ROW2 және ROW3 пернетақтасын осы Arduino түйреуіштеріне жалғаңыз. Colte -colPins [COLS] = {4, 5, 6, 7}; // COL0, COL1 және COL2 пернетақтасын осы Arduino түйреуіштеріне қосыңыз. Keypad kpd = Keypad (makeKeymap (пернелер), rowPins, colPins, ROWS, COLS); // Пернетақтаны жасаңыз int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // СКД қосылған түйреуіштерLiquidCrystal lcd (rs, en, d4, d5, d6, d7); ұзын сан1, сан2, сан; char пернесі, әрекет; логикалық нәтиже = жалған; void setup () {lcd.begin (16, 2); // Біз 16*2 LCD дисплейін қолданамыз lcd.print («DIY калькуляторы»); // lcd.setCursor кіріс хабарламасын көрсету (0, 1); // курсорды 0 бағанға, жол 1 кешігуге қойыңыз (2000 ж.); // lcd.clear () ақпаратты көрсетуді көрсетуді күтіңіз; // Содан кейін оны тазалаңыз} void loop () {key = kpd.getKey (); // басылған кілт мәнін харифте сақтау (кілт! = NO_KEY) DetectButtons (); if (нәтиже == шын) CalculateResult (); DisplayResult (); } void DetectButtons () {lcd.clear (); // Содан кейін оны тазартыңыз, егер (key == '*') // Болдырмау батырмасы басылса {Serial.println («Түймені бас тарту»); Сан = Сан1 = Сан2 = 0; result = false;} if (key == '1') // If Button 1 is pressed {Serial.println («Button 1»); if (Сан == 0) Сан = 1; else Сан = (Сан*10) + 1; // екі рет басылды} if (key == '4') // If 4 button is pressed {Serial.println («Button 4»); егер (Сан == 0) Сан = 4; else Сан = (Сан*10) + 4; // екі рет басылды} if (key == '7') // If 7 button is pressed {Serial.println («Button 7»); егер (Сан == 0) Сан = 7; else Сан = (Сан*10) + 7; // екі рет басылды} if (key == '0') {Serial.println («Button 0»); // 0 батырмасы басылады, егер (Сан == 0) Сан = 0; else Сан = (Сан*10) + 0; // екі рет басылды} if (key == '2') // 2 батырмасы басылады {Serial.println («Button 2»); егер (Сан == 0) Сан = 2; else Сан = (Сан*10) + 2; // екі рет басылды} if (key == '5') {Serial.println («Button 5»); егер (Сан == 0) Сан = 5; else Сан = (Сан*10) + 5; // екі рет басылды} if (key == '8') {Serial.println («Button 8»); егер (Сан == 0) Сан = 8; else Сан = (Сан*10) + 8; // екі рет басылды} if (key == '#') {Serial.println («Түйме тең»); Num2 = Сан; нәтиже = ақиқат; } if (key == '3') {Serial.println («Button 3»); егер (Сан == 0) Сан = 3; else Сан = (Сан*10) + 3; // екі рет басылды} if (key == '6') {Serial.println («Button 6»); егер (Сан == 0) Сан = 6; else Сан = (Сан*10) + 6; // екі рет басылды} if (key == '9') {Serial.println («9 -түйме»); егер (Сан == 0) Сан = 9; else Сан = (Сан*10) + 9; // екі рет басылды} егер (key == 'A' || key == 'B' || key == 'C' || key == 'D') // 4 -бағандағы түймелерді анықтау {Num1 = Number; Сан = 0; if (key == 'A') {Serial.println («Қосу»); әрекет = '+';} if (key == 'B') {Serial.println («Азайту»); әрекет = '-'; } if (key == 'C') {Serial.println («Көбейту»); әрекет = '*';} if (key == 'D') {Serial.println («Devesion»); әрекет = '/';} кешіктіру (100); }}
void CalculateResult () {if (action == '+') Number = Num1+Num2; if (action == '-') Number = Num1-Num2; if (action == '*') Number = Num1*Num2; if (action == '/') Number = Num1/Num2; } void DisplayResult () {lcd.setCursor (0, 0); // курсорды 0 бағанына, 1 жолға орнатыңыз lcd.print (Num1); lcd.print (әрекет); lcd.print (Num2); if (нәтиже == шын) {lcd.print («=»); lcd.print (Сан);} // Нәтижені көрсету lcd.setCursor (0, 1); // курсорды 0 бағанына, 1 жолға орнатыңыз lcd.print (Сан); // Нәтижені көрсету}
4 -қадам: Калькулятордың шығысы
Осылайша біз қосылымды аяқтадық және arduino -ға кодты жүктедік және оның қуатын өшіріп, кейбір есептеулерді жүргіздік, және сіз көріп отырғандай, мен пернетақтаның көмегімен есептеулер жүргіземін, және сіз нәтижелерді LCD -де көре аласыз. Ардуино көмегімен өзіңіздің жеке калькуляторыңызды жасаңыз.
Ұсынылған:
4X4 пернетақтасын қолданатын Arduino калькуляторы: 4 қадам (суреттермен)
4X4 пернетақтасын қолданатын Arduino калькуляторы: Бұл оқулықта біз Arduino көмегімен жеке калькулятор құрамыз. Мәндерді пернетақта (4 × 4 пернетақта) арқылы жіберуге болады және нәтижені СКД экранында көруге болады. Бұл калькулятор қосу, азайту, көбейту сияқты қарапайым әрекеттерді орындай алады
4x4: 3 қадамдық Arduino матрицалық пернетақтасы бар заманауи және жаңа және қарапайым шкаф үлгісі
4x4 Arduino матрицалық пернетақтасы бар заманауи және жаңа шкафтың мысалы: I2C схемасы бар 4x4 СКД пернетақтасын қолданудың тағы бір мысалы
Arduino TFT LCD сенсорлық экранының калькуляторы: 3 қадам
Arduino TFT LCD сенсорлы экрандағы калькулятор: Сәлеметсіздер ме, балалар, біз осы нұсқаулықта Arduino Uno 3.5 көмегімен калькулятор жасауды үйренеміз. TFT LCD сенсорлық дисплейі. Біз кодты жазамыз және оны arduino -ға жүктейміз, ол дисплейде калькулятор интерфейсін көрсетеді және
Arduino және WS2812b жарықдиодты қолданатын DIY компьютерлік жарықтандыру: 6 қадам (суреттермен)
Ардуино мен WS2812b светодиодтарын қолданатын DIY компьютерлік жарықтандыру: ойын/фильм көру тәжірибем үшін тағы да тереңдік қажет болды, осылайша мен қоршаған жарықтандыруды қалай орнаттым. Біз бастамас бұрын, бұл жоба дәнекерлеуішті және басқа да негізгі құралдарды қалай қолдану керектігін білуді талап етеді. құралдар. Егер сізге дәнекерлеу ыңғайлы болмаса
Steampunk пернетақтасын арзан және оңай жасау: 7 қадам (суреттермен)
Steampunk пернетақтасын арзан және оңай жасау: Datamancer сайтындағы сәнді ретро пернетақталар мен Steampunk шеберханасындағы жақсы оқулықты қарап шыққаннан кейін мен оны өзім жасағым келді. Өкінішке орай, маған жез алу және кесу үшін құралдар/кеңістік пен ақша жетіспейді, мен