Სარჩევი:
- ნაბიჯი 1: მასალები
- ნაბიჯი 2: 4x4 კლავიატურის დაკავშირება
- ნაბიჯი 3: მიეცით ძალა Breadboard- ს და შეაერთეთ LCD
- ნაბიჯი 4: შეაერთეთ Power და Ground LCD- თან
- ნაბიჯი 5: პოტენომეტრის დაკავშირება
- ნაბიჯი 6: Arduino– ს დაკავშირება LCD– თან
- ნაბიჯი 7: განახორციელეთ კოდი
- ნაბიჯი 8: შედეგი
ვიდეო: კალკულატორი TinkerCad კონკურსი: 8 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
ჰეი, ამ ბოლო დროს მე ვიკვლევ, თუ როგორ უნდა განხორციელდეს სხვადასხვა ტიპის კოდი წრედ. აღმოვაჩინე, რომ კალკულატორის გაკეთება იქნება დიდი გზა "შემთხვევის" და სხვა სახის კოდის განსახორციელებლად, რომელიც მე ვიპოვე საინტერესო. მე წარსულში კალკულატორები პირდაპირ კოდისგან გავაკეთე, მაგრამ ამისთვის მიკროსქემის გაკეთება ინტერესს მაძლევს. განსაკუთრებით ამ საკარანტინო პერიოდში, სადაც თითქმის მთელი დღე კომპიუტერში ვარ. პროექტი არის მათემატიკური ოპერაციების განხორციელება LCD ეკრანზე.
ნაბიჯი 1: მასალები
წრედისთვის:
- LCD 16 x 2
- Arduino Uno R3
- კლავიატურა 4x4
- პატარა პურის დაფა
- პოტენციომეტრი (250 kΩ)
- რეზისტორი (1kΩ)
- x26 ჯუმბერის მავთულები
ნაბიჯი 2: 4x4 კლავიატურის დაკავშირება
4x4 კლავიატურის 4 რიგის ქინძისთავები დაუკავშირეთ Arduino ქინძისთავებს 4-7 და შეაერთეთ 4 სვეტის ქინძისთავები Arduino ქინძისთავებთან 0-3.
ნაბიჯი 3: მიეცით ძალა Breadboard- ს და შეაერთეთ LCD
მე გამოვიყენე დენის ძაბვა 5 პურის დაფისთვის. დენი და დაფქვილი შევუერთე პურის დაფას. LCD მოთავსებულია პურის დაფაზე და მოთავსებულია ისე, რომ მისი ყველა ქინძისთავები დაუკავშირდეს პურის დაფას.
ნაბიჯი 4: შეაერთეთ Power და Ground LCD- თან
იქნება 3 ქინძისთავი, რომელიც საჭიროა LCD– თან დასაკავშირებლად. ერთი იქნება დაკავშირებული თავად LCD– ის მიწასთან, მეორე იქნება დაკავშირებული LCD– ის LED– თან და ბოლო იქნება დაკავშირებული RW– თან. LCD– ისა და led– ის VCC– ს დასჭირდება დენის დაკავშირება. თუმცა LED- ის სიმძლავრე მოითხოვს რეზისტორს, რომელიც დაკავშირებულია ამ შემთხვევაში მე გამოვიყენე 1kΩ რეზისტორი.
ნაბიჯი 5: პოტენომეტრის დაკავშირება
შეაერთეთ პოტენომეტრი პურის დაფაზე 3 უფასო სვეტით. მას ექნება 3 ქინძისთავი, სვეტს, რომელიც შეიცავს ტერმინალს 1 პინს, დასჭირდება მისთვის მიწების მიცემა. სვეტს, რომელიც შეიცავს ტერმინალს 2 პინს, დასჭირდება მასზე მიცემული ძალა. შემდეგ გამწმენდს ექნება ჯუმბერის მავთული მის სვეტში, რომელიც აკავშირებს LCD– ის VO– ს.
ნაბიჯი 6: Arduino– ს დაკავშირება LCD– თან
Arduino– ს 8-13 პინები იქნება დაკავშირებული LCD– თან. არდუინოს ქინძისთავები 8-11 დაუკავშირდება შესაბამისად D8 (7-4). შემდეგ Arduino– ს პინი 12 დაუკავშირდება LCD– ის ჩართვას და Arduino– ს პინი 13 დაუკავშირდება LCD– ის რეგისტრს.
ნაბიჯი 7: განახორციელეთ კოდი
კოდი საჭირო იქნება მათემატიკური ოპერაციების გამოსაყენებლად კლავიატურაზე და LCD– ით. ქვემოთ იქნება კოდი, რომელიც მე გამოვიყენე, თუმცა მრავალი ცვლილება მაინც შემიძლია განვახორციელო, რომ ის იყოს უფრო სუფთა და უკეთესი. ასე რომ მოგერიდებათ ცოტათი ითამაშე.
#ჩართეთ #ჩართეთ
LiquidCrystal LCD (13, 12, 11, 10, 9, 8);
გრძელი პირველი = 0;
გრძელი წამი = 0;
ორმაგი ჯამი = 0;
int posit = 0;
char customKey;
const byte ROWS = 4;
const byte COLS = 4;
char ღილაკები [ROWS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
byte rowPins [ROWS] = {7, 6, 5, 4};
ბაიტი colPins [COLS] = {3, 2, 1, 0};
კლავიატურა customKeypad = კლავიატურა (makeKeymap (გასაღებები), rowPins, colPins, ROWS, COLS);
void setup () {
lcd. დასაწყისი (16, 2);
lcd.setCursor (5, 0);
lcd. წმინდა (); }
ბათილი მარყუჟი () {
customKey = customKeypad.getKey ();
გადართვა (customKey) {
საქმე '0' … '9':
lcd.setCursor (0, 0);
პირველი = პირველი * 10 + (customKey - '0');
lcd.print (პირველი);
პოზიტირება ++;
შესვენება;
შემთხვევა '+':
პირველი = (სულ! = 0? სულ: პირველი);
lcd.setCursor (პოზიტივი, 0);
lcd.print ("+");
პოზიტირება ++;
მეორე = SecondNumber ();
სულ = პირველი + მეორე;
lcd.setCursor (1, 1);
lcd.print (სულ);
პირველი = 0, მეორე = 0;
პოზიტივი = 0;
შესვენება;
საქმე '-':
პირველი = (სულ! = 0? სულ: პირველი);
lcd.setCursor (პოზიტივი, 0);
lcd.print ("-");
პოზიტირება ++;
მეორე = SecondNumber ();
სულ = პირველი - მეორე;
lcd.setCursor (1, 1);
lcd.print (სულ);
პირველი = 0, მეორე = 0;
პოზიტივი = 0;
შესვენება;
საქმე '*':
პირველი = (სულ! = 0? სულ: პირველი);
lcd.setCursor (პოზიტივი, 0);
lcd.print ("*");
პოზიტირება ++;
მეორე = SecondNumber ();
სულ = პირველი * მეორე;
lcd.setCursor (1, 1);
lcd.print (სულ);
პირველი = 0, მეორე = 0;
პოზიტივი = 0;
შესვენება;
საქმე '/':
პირველი = (სულ! = 0? სულ: პირველი);
lcd.setCursor (პოზიტივი, 0);
lcd.print ("/");
პოზიტირება ++;
მეორე = SecondNumber (); lcd.setCursor (1, 1);
მეორე == 0? lcd.print ("შეცდომა"): სულ = (float) პირველი / (float) მეორე;
lcd.print (სულ);
პირველი = 0, მეორე = 0;
პოზიტივი = 0;
შესვენება;
საქმე 'C':
სულ = 0;
პირველი = 0;
მეორე = 0;
პოზიტივი = 0;
lcd. წმინდა ();
შესვენება; }
}
გრძელი მეორე ნომერი () {
ხოლო (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
მეორე = მეორე * 10 + (customKey - '0');
lcd.setCursor (პოზიტივი, 0);
lcd. ბეჭდვა (მეორე); }
if (customKey == 'C') {
სულ = 0;
პირველი = 0;
მეორე = 0;
პოზიტივი = 0;
lcd. წმინდა ();
შესვენება; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
პოზიტივი = სულ;
lcd. წმინდა ();
lcd.setCursor (0, 1);
lcd.print ("=");
შესვენება; }
}
მეორე დაბრუნება;}
ნაბიჯი 8: შედეგი
ვიმედოვნებ, რომ ყველას მოგეწონათ ეს სასწავლო. გმადლობთ რომ კითხულობთ!
საიმი.
გირჩევთ:
DIY VR სარბენი ბილიკი- Basys3 FPGA-Digilent კონკურსი: 3 ნაბიჯი
DIY VR სარბენი ბილიკი- Basys3 FPGA-Digilent კონკურსი: გნებავთ ააშენოთ VR სარბენი ბილიკი, რომელზედაც შეგიძლიათ აწარმოოთ თქვენი დესკტოპის პროგრამები და თამაშები? შემდეგ თქვენ მიხვედით სწორ ადგილას! ჩვეულებრივ თამაშებში თქვენ იყენებთ მაუსს და კლავიატურას გარემოსთან ურთიერთობისათვის. ამიტომ, ჩვენ უნდა გავაგზავნოთ
Fpga კონტროლირებადი RC Servo Motor Robot Arm - Digilent კონკურსი: 3 ნაბიჯი
Fpga კონტროლირებადი RC Servo Motor Robot Arm - Digilent კონკურსი: FPGA კონტროლირებადი servo motor robot arm ამ პროექტის მიზანია შექმნას პროგრამირებადი სისტემა, რომელსაც შეუძლია შეასრულოს შედუღების ოპერაციები პერფის დაფაზე. სისტემა დაფუძნებულია Digilent Basys3 განვითარების დაფაზე და მას შეეძლება შეაერთოს
უოლტერი (არდუინოს კონკურსი): 5 ნაბიჯი (სურათებით)
უოლტერი (არდუინოს კონკურსი): გთხოვთ მიმიწოდოთ არდუინოს კონკურსზე 2017 [გთხოვთ მაპატიოთ ჩემი ინგლისური] მე ნამდვილად მომწონს პოპულარული სერტიფიცირებული 2 servos arduino მწერები youtube– ზე. როდესაც მას ვუყურებდი, მე ყოველთვის მახსოვს რა გააკეთეს BEAM რობოტი ბიჭებმა დიდი ხნით ადრე, სანამ ეს მოწყობა საყვარელი გახდებოდა. ეს პ
Mash Up და LED კონკურსი: Pez დისპენსერი ფანარი: 5 ნაბიჯი
Mash Up და LED კონკურსი: Pez დისპენსერი ფანარი: ეს არის Pez გამანაწილებელი ფანარი. ის არ არის ძალიან ნათელი, მაგრამ საკმარისად კაშკაშაა გასაღებების, კარის სახელურების და ა
USB Thumb Drive Zippo Lighter Case Mod (ჯიბის ზომის კონკურსი! ხმა მიეცი ჩემთვის!): 7 ნაბიჯი
USB Thumb Drive Zippo Lighter Case Mod (ჯიბის ზომის კონკურსი! ხმა მიეცი ჩემთვის!): დაიღალეთ იმ მოსაწყენი გარეგნობის USB thumb დისკით? გაახარეთ ეს Zippo Lighter Mod- ით