Სარჩევი:
ვიდეო: Arduino წვრილმანი კალკულატორი 1602 LCD და 4x4 კლავიატურის გამოყენებით: 4 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
გამარჯობა ბიჭებო ამ ინსტრუქციებში ჩვენ გავაკეთებთ კალკულატორს Arduino– ს გამოყენებით რომელსაც შეუძლია ძირითადი გათვლების გაკეთება. ამრიგად, ჩვენ ვიღებთ 4x4 კლავიატურის მონაცემებს და დავბეჭდავთ მონაცემებს 16x2 LCD ეკრანზე და arduino გააკეთებს გამოთვლებს.
ნაბიჯი 1: ის, რაც გჭირდებათ
ამ ინსტრუქციისთვის დაგვჭირდება შემდეგი ნივთები: Arduino Uno (ნებისმიერი ვერსია იმუშავებს)
16 × 2 LCD ეკრანი
4 × 4 კლავიატურა 9V ბატარეა პურის დაფა მავთულის დაკავშირება
ნაბიჯი 2: კავშირები
ამ Arduino კალკულატორის პროექტის სრული წრიული დიაგრამა მოცემულია ზემოთ. მიკროსქემის დიაგრამაში ნაჩვენები +5V და მიწასთან დაკავშირება შესაძლებელია არდუინოს 5V და გრუნტის პინიდან. Arduino თავად შეიძლება იკვებებოდეს თქვენი ლეპტოპიდან ან DC ბუდის საშუალებით 12V ადაპტერის ან 9V ბატარეის გამოყენებით. ჩვენ ვმუშაობთ LCD– ზე 4 ბიტიან რეჟიმში Arduino– სთან ერთად, ამიტომ LCD– ის მხოლოდ ბოლო ოთხი ბიტი არის დაკავშირებული Arduino– სთან. კლავიატურას აქვს 8 გამომავალი ქინძისთავები, რომლებიც უნდა იყოს დაკავშირებული pin 0 - დან pin 7 – მდე, როგორც ეს ნაჩვენებია ზემოთ. ზოგიერთ Arduino დაფაზე შეიძლება გამოჩნდეს შეცდომა პროგრამის ატვირთვისას, თუ რაიმე კავშირი აქვს pin 0 – თან და pin1– ზე, ასე რომ, თუ თქვენ განიცდით რომელიმე მათგანს უბრალოდ წაშალეთ კლავიატურა პროგრამის ატვირთვისას.
ნაბიჯი 3: კოდი
დააკოპირეთ შემდეგი კოდი და ატვირთეთ მასში თქვენი arduino:/ * * Arduino Keypad კალკულატორი პროგრამა */#შეიცავს "LiquidCrystal.h" // სათაურის ფაილი LCD– სთვის https://www.arduino.cc/en/Reference/LiquidCrystal# შეიტანეთ "Keypad.h" // სათაურის ფაილი Keypad– დან https://github.com/Chris--A/Keypadconst byte ROWS = 4; // ოთხი რიგის კონსტრუქციის ბაიტი COLS = 4; // სამი სვეტი // განსაზღვრა Keymapchar გასაღებები [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 ქინძისთავებს. Byte colPins [COLS] = {4, 5, 6, 7}; // დააკავშირეთ კლავიატურა COL0, COL1 და COL2 ამ Arduino ქინძისთავებთან. Keypad kpd = კლავიატურა (makeKeymap (გასაღებები), rowPins, colPins, ROWS, COLS); // შექმნა Keypadconst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // ქინძისთავები, რომელთანაც LCD არის დაკავშირებული LiquidCrystal LCD (rs, en, d4, d5, d6, d7); გრძელი Num1, Num2, ნომერი; 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 (); თუ (შედეგი == ჭეშმარიტი) CalculateResult (); DisplayResult (); } void DetectButtons () {lcd.clear (); // შემდეგ გაასუფთავეთ თუ (გასაღები == '*') // თუ გაუქმების ღილაკზეა დაჭერილი {Serial.println ("ღილაკის გაუქმება"); ნომერი = Num1 = Num2 = 0; შედეგი = ყალბი;} თუ (გასაღები == '1') // თუ ღილაკზე 1 დაჭერილია {Serial.println ("ღილაკი 1"); თუ (რიცხვი == 0) ნომერი = 1; else ნომერი = (ნომერი*10) + 1; // ორჯერ დაჭერილი} თუ (გასაღები == '4') // თუ 4 ღილაკზე დაჭერილია {Serial.println ("ღილაკი 4"); თუ (რიცხვი == 0) ნომერი = 4; else ნომერი = (ნომერი*10) + 4; // ორჯერ დაჭერილი} თუ (გასაღები == '7') // თუ ღილაკზე 7 დაჭერილია {Serial.println ("ღილაკი 7"); თუ (რიცხვი == 0) ნომერი = 7; else ნომერი = (ნომერი*10) + 7; // ორჯერ დაჭერილი} if (გასაღები == '0') {Serial.println ("ღილაკი 0"); // ღილაკი 0 დაჭერილია თუ (რიცხვი == 0) ნომერი = 0; else ნომერი = (ნომერი*10) + 0; // ორჯერ დაჭერილი} თუ (გასაღები == '2') // ღილაკზე 2 დაჭერილია {Serial.println ("ღილაკი 2"); თუ (რიცხვი == 0) ნომერი = 2; else ნომერი = (ნომერი*10) + 2; // ორჯერ დაჭერილი} if (გასაღები == '5') {Serial.println ("ღილაკი 5"); თუ (რიცხვი == 0) ნომერი = 5; else ნომერი = (ნომერი*10) + 5; // ორჯერ დაჭერილი} if (გასაღები == '8') {Serial.println ("ღილაკი 8"); თუ (რიცხვი == 0) ნომერი = 8; else ნომერი = (ნომერი*10) + 8; // ორჯერ დაჭერილი} if (გასაღები == '#') {Serial.println ("ღილაკი თანაბარია"); Num2 = ნომერი; შედეგი = ჭეშმარიტი; } if (გასაღები == '3') {Serial.println ("ღილაკი 3"); თუ (რიცხვი == 0) ნომერი = 3; else ნომერი = (ნომერი*10) + 3; // ორჯერ დაჭერილი} if (გასაღები == '6') {Serial.println ("ღილაკი 6"); თუ (რიცხვი == 0) ნომერი = 6; else ნომერი = (ნომერი*10) + 6; // ორჯერ დაჭერილი} if (გასაღები == '9') {Serial.println ("ღილაკი 9"); თუ (რიცხვი == 0) ნომერი = 9; else ნომერი = (ნომერი*10) + 9; // ორჯერ დაჭერილი} if (გასაღები == 'A' || გასაღები == 'B' || გასაღები == 'C' || გასაღები == 'D') // სვეტებზე 4 ღილაკების გამოვლენა {რიცხვი 1 = ნომერი; რიცხვი = 0; if (გასაღები == 'A') {Serial.println ("დამატება"); action = '+';} if (გასაღები == 'B') {Serial.println ("გამოკლება"); action = '-'; } if (გასაღები == 'C') {Serial.println ("გამრავლება"); action = '*';} if (გასაღები == 'D') {Serial.println ("დევეზია"); action = '/';} დაგვიანებით (100); }}
void CalculateResult () {if (action == '+') Number = Num1+Num2; if (action == '-') ნომერი = Num1-Num2; if (action == '*') ნომერი = Num1*Num2; if (action == '/') ნომერი = Num1/Num2; } void DisplayResult () {lcd.setCursor (0, 0); // კურსორის დაყენება 0 სვეტზე, სტრიქონი 1 lcd.print (Num1); lcd. ბეჭდვა (მოქმედება); lcd.print (Num2); if (შედეგი == ჭეშმარიტი) {lcd.print ("="); lcd.print (ნომერი);} // შედეგის ჩვენება lcd.setCursor (0, 1); // კურსორის დაყენება 0 სვეტზე, სტრიქონი 1 lcd.print (ნომერი); // შედეგის ჩვენება}
ნაბიჯი 4: გამომთვლელი გამომუშავება
ასე რომ, ჩვენ დავასრულეთ კავშირები და ავტვირთეთ კოდი arduino– ზე და დროა ჩართოთ დენი და გამოთვლები გააკეთოთ და როგორც ხედავთ მე ვაკეთებ გამოთვლებს კლავიატურით და თქვენ ხედავთ შედეგებს lcd– ში. ასე რომ გაერთეთ თქვენი საკუთარი კალკულატორის დამზადებით არდუინოს გამოყენებით.
გირჩევთ:
Arduino კალკულატორი 4X4 კლავიატურის გამოყენებით: 4 ნაბიჯი (სურათებით)
Arduino კალკულატორი 4X4 კლავიატურის გამოყენებით: ამ გაკვეთილში ჩვენ ავაშენებთ ჩვენს საკუთარ კალკულატორს Arduino– ით. ღირებულებების გაგზავნა შესაძლებელია კლავიატურის საშუალებით (4 × 4 კლავიატურა) და შედეგი შეიძლება ნახოთ LCD ეკრანზე. ამ კალკულატორს შეუძლია შეასრულოს მარტივი ოპერაციები, როგორიცაა დამატება, გამოკლება, მრავალჯერადი
როგორ გააკეთოთ წვრილმანი მაღვიძარა LCD კლავიატურის ფარით: 5 ნაბიჯი
როგორ გააკეთოთ ხელნაკეთი მაღვიძარა LCD კლავიატურის ფარით: გამარჯობა ყველას! ამ სასწავლო ინსტრუქციაში მე გაჩვენებთ თუ როგორ უნდა გააკეთოთ მაღვიძარა Arduino დაფის გამოყენებით. მე გამოვიყენე Arduino UNO, LCD კლავიატურის ფარი, 5V Buzzer და Jumper Wires ამ საათის შესაქმნელად. თქვენ შეგიძლიათ ნახოთ დრო ეკრანზე და შეძლოთ დროის დაყენება
1602 LCD კლავიატურის ფარის მოდული I2C ზურგჩანთით: 6 ნაბიჯი
1602 LCD კლავიატურის ფარის მოდული I2C ზურგჩანთით: უფრო დიდი პროექტის ფარგლებში, მინდოდა მქონოდა LCD დისპლეი და კლავიატურა რამდენიმე მარტივი მენიუს ნავიგაციისთვის. მე Arduino– ზე ბევრ I/O პორტს ვიყენებ სხვა სამუშაოებისთვის, ამიტომ მინდოდა I2C ინტერფეისი LCD– ისთვის. ამიტომ ვიყიდე რაღაც ტექნიკა
1602 LCD კლავიატურის ფარის გამოყენებით W/ Arduino [+პრაქტიკული პროექტები]: 7 ნაბიჯი
1602 LCD კლავიატურის ფარის გამოყენებით W/ Arduino [+პრაქტიკული პროექტები]: შეგიძლიათ წაიკითხოთ ეს და სხვა საოცარი გაკვეთილები ElectroPeak– ის ოფიციალურ ვებ – გვერდზე მიმოხილვა ამ სახელმძღვანელოში თქვენ ისწავლით თუ როგორ გამოიყენოთ Arduino LCD კლავიატურის ფარი 3 პრაქტიკული პროექტით. რას ისწავლით: როგორ შევქმნათ ფარი და გამოვყოთ გასაღებები
კლავიატურის ინტერფეისი 8051 -ით და კლავიატურის ნომრების ჩვენება 7 სეგმენტში: 4 ნაბიჯი (სურათებით)
კლავიატურის ინტერფეისი 8051 -ით და კლავიატურის ნომრების ჩვენება 7 სეგმენტში: ამ გაკვეთილში მე გეტყვით იმაზე, თუ როგორ შეგვიძლია დავაკავშიროთ კლავიატურა 8051 -თან და გამოვაჩინოთ კლავიატურის ნომრები 7 სეგმენტის ეკრანზე