Агуулгын хүснэгт:
- Алхам 1: Шаардлагатай зүйл
- Алхам 2: Хэлхээ диаграм
- Алхам 3: Arduino тооцоолох програм
- Алхам 4:
- Алхам 5: Arduino тооцоолуурын ажиллах
- Алхам 6: Код
Видео: Arduino тооцоолуур: 6 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Програмчлал нь үргэлж хөгжилтэй байдаг бөгөөд хэрэв та Embedded програмчлалыг дөнгөж эхлүүлж байгаа бол Arduino бол гайхалтай платформ юм. Энэхүү гарын авлагад бид Arduino ашиглан өөрийн тооцоолуур хийх болно. Энэ утгыг товчлуураар (4 × 4 товчлуур) илгээж, үр дүнг LCD дэлгэц дээр (16 × 2 цэг матриц) үзэх боломжтой. Энэхүү тооцоолуур нь нэмэх, хасах, үржүүлэх, хуваах гэх мэт энгийн үйлдлүүдийг бүхэл тоогоор гүйцэтгэх боломжтой. Гэхдээ энэ ойлголтыг ойлгосноор та Arduino -ийн суурилуулсан функцүүдийг ашиглан шинжлэх ухааны чиг үүргийг хэрэгжүүлж чадна. Төслийн төгсгөлд та Arduino -той 16x2 хэмжээтэй LCD болон товчлуурыг хэрхэн ашиглах, мөн тэдгээрийг ашиглан програмчлах нь хэр хялбар болохыг мэдэх болно. боломжтой номын сангууд. Тодорхой даалгаврыг биелүүлэхийн тулд Arduino -г хэрхэн програмчлах талаар та бас ойлгох болно.
Алхам 1: Шаардлагатай зүйл
Arduino Uno (Ямар ч хувилбар ажиллах болно) 16 × 2 LCD дэлгэц 4 × 4 товчлуур 9V зайБоловсруулах самбар ба холбох утас
Алхам 2: Хэлхээ диаграм
Алхам 3: Arduino тооцоолох програм
Энэхүү төслийн бүрэн Arduino програмыг энэ төслийн төгсгөлд өгсөн болно. Кодыг жижиг утгатай хэсгүүдэд хувааж, доор тайлбарласан болно. Өмнө дурьдсанчлан бид номын санг ашиглан Arduino -тай LCD болон товчлуурыг холбох болно. Тиймээс эхлээд тэдгээрийг Arduino IDE дээрээ нэмье. LCD -ийн номын сан нь таны Arduino -д аль хэдийн орсон байдаг тул бид үүнд санаа зовох хэрэггүй болно. Товчлуурын номын сангийн хувьд Github -аас татаж авах линк дээр дарна уу. Та ZIP файлыг авах болно, дараа нь энэ lib -ийг Sketch by Arduino дээр нэмээд -Номын санг оруулах ->. ZIP файл нэмж, татаж авсан файл руу байршлыг зааж өгнө үү. Бид товчлуурыг ашиглахын тулд номын сан ашигладаг байсан ч гэсэн Arduino -ийн товчлуурын талаар цөөн хэдэн мэдээллийг (доор харуулав) дурдах ёстой. ROWS ба COLS хувьсагч нь бидний товчлуурт хичнээн мөр, багана байгааг хэлж өгөх бөгөөд товчлуур нь гар дээрх товчлууруудын дарааллыг харуулдаг. Миний энэ төсөлд ашиглаж байгаа товчлуурууд нь түлхүүр газрын зураг дээр мөн адил харагдаж байна. Дараах мөрөнд аль товчлуурыг rowPins болон colPins хувьсагч массив ашиглан холбосон талаар дурдсан болно.const байт ROWS = 4; // Дөрвөн эгнээний конст байт COLS = 4; // Гурван багана // Keymapchar түлхүүрүүдийг тодорхойлох [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; байт мөрийн хавчаарууд [ROWS] = {0, 1, 2, 3}; // ROW0, ROW1, ROW2 ба ROW3 товчлууруудыг эдгээр Arduino pin -тэй холбоно уу. Byte colPins [COLS] = {4, 5, 6, 7}; // COL0, COL1, COL2 товчлууруудыг эдгээр Arduino тээглүүрт холбоно уу. Бид ямар төрлийн товчлуур ашиглаж байгаа болон хэрхэн холбогдсон талаар дурьдсаны дараа доорх мөрийг ашиглан товчлууруудыг үүсгэж болно Keypad kpd = Keypad (makeKeymap), rowPins, colPins, ROWS, COLS); // Товчлуурыг үүсгээрэй LCD дэлгэц нь Arduino -ийн аль зүүтэй холбогдсоныг мөн адил хэлэх ёстой. Бидний хэлхээний диаграмын дагуу тодорхойлолтууд доорх шиг байх болно int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // LCD холбогдсон зүүLiquidCrystal lcd (rs, en, d4, d5, d6, d7); // LCD үүсгэх Тохиргооны функц дотор бид зөвхөн төслийн нэрийг харуулаад үндсэн төслийн хаана байгаа гогцоонд шилжих болно. Үндсэндээ товчлуур дээр ямар нэгэн зүйл бичиж байгаа эсэхийг шалгах ёстой. бичиж байгаа зүйлээ "=" дарахад хувьсагч болгон хөрвүүлэхийн тулд бид үр дүнг тооцоолж, эцэст нь LCD дэлгэц дээр харуулах ёстой. Энэ нь доор үзүүлсэн шиг давталтын функц дотор хийгддэг зүйл юм = kpd.getKey (); // дарагдсан түлхүүрийн утгыг charif -д хадгалах (key! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); Функц бүрийн дотор юу болж байгааг тайлбарын мөрийг ашиглан тайлбарлаж, доорхи кодыг бүрэн гүйцэд судалж, эргэн тойрондоо хуурч, энэ нь хэрхэн ажилладагийг ойлгох болно. Хэрэв та тодорхой шугам дээр эргэлзэж байвал сэтгэгдэл бичих хэсэг эсвэл форумыг ашиглах боломжтой.
Алхам 4:
Алхам 5: Arduino тооцоолуурын ажиллах
Холболтыг схемийн дагуу хийж, доорх кодыг байршуулна уу. Хэрэв алдаа гарсан бол дээр дурдсан зааврын дагуу номын санг нэмж оруулсан эсэхээ шалгаарай. Асуудал нь таны техник хангамжид байгаа эсэхийг шалгахын тулд та симуляцийг туршиж үзэж болно. Хэрэв бүх зүйл төлөвлөсний дагуу хийгдсэн бол таны техник хангамж 4x4 товчлуурыг ашиглан LCD дэлгэцийг харуулах болно. Энд ашигласан товчлуур дээр зохих тэмдэглэгээ байхгүй тул би цагаан толгойнуудыг оператор гэж үздэг. Доор жагсаасан товчлуур дээрх тэмдэгт "A" нэмэлт (+) "B" хасах (-) "C" үржүүлэх (*) "D" хэлтэс (/) "*" Clear (C) "#" тэнцүү (=) гэж үзсэн Тэмдэглэгч ашиглан товчлуур бүр яг юу илэрхийлж байгааг бичих боломжтой бөгөөд ингэснээр та тооцоолуур ашиглаж болно. Дугаарыг бичээд хоёр дахь мөрөнд гарч ирэх бөгөөд операнд дээр дараад хоёр дахь дугаараа бичээд эцэст нь "#" товчлуур дээр дарж үр дүнгээ аваарай. Та мөн энэ мэдрэгчтэй дэлгэц дээр суурилсан Arduino тооцоолуур бүтээхийг оролдож болно.
Алхам 6: Код
/ * * Arduino Keypad тооцоолох програм */#оруулах // https://www.arduino.cc/en/Reference/LiquidCrystal#include линкээс LCD дэлгэцийн толгой файл // https://github.com/ дээрээс товчлуурын толгой файл. Крис-A/Keypadconst байт ROWS = 4; // Дөрвөн эгнээний конст байт COLS = 4; // Гурван багана // Keymapchar түлхүүрүүдийг тодорхойлох [ROWS] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {'*',' 0 ','#',' A '}}; байт мөрийн хавчуурууд [ROWS] = {0, 1, 2, 3}; // ROW0, ROW1, ROW2, ROW3 товчлууруудыг эдгээр Arduino pin -тэй холбоно уу. Byte colPins [COLS] = {4, 5, 6, 7}; // COL0, COL1 ба COL2 товчлууруудыг эдгээр Arduino тээглүүрт холбоно уу. Keypad kpd = Keypad (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, Number; char түлхүүр, үйлдэл; boolean result = false; void setup () {lcd.begin (16, 2); // Бид 16*2 хэмжээтэй LCD дэлгэцийг ашиглаж байна lcd.print ("DIY тооцоолуур"); // танилцуулга мессежийг харуулах lcd.setCursor (0, 1); // курсорыг 0-р баганын 1-р мөрөнд тохируулна уу lcd.print ("-CircuitDigest"); // Танилцуулгын мессежийн саатлыг харуулах (2000); // Дэлгэц мэдээлэл харуулахыг хүлээнэ үү lcd.clear (); // Дараа нь үүнийг цэвэрлэ} void loop () {key = kpd.getKey (); // дарагдсан түлхүүрийн утгыг charif -д хадгалах (key! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); } хүчингүй DetectButtons () {lcd.clear (); // Дараа нь үүнийг цэвэрлэнэ үү (key == '*') // Хэрэв цуцлах товчлуур дарагдсан бол {Serial.println ("Button Cancel"); Дугаар = Num1 = Num2 = 0; result = false;} if (key == '1') // If Button 1 дарагдсан бол {Serial.println ("Button 1"); if (Number == 0) Number = 1; өөр тоо = (тоо*10) + 1; // Хоёр удаа дарсан} if (key == '4') // If Button 4 дарагдсан бол {Serial.println ("Button 4"); хэрэв (Дугаар == 0) Дугаар = 4; өөр тоо = (тоо*10) + 4; // Хоёр удаа дарсан} if (key == '7') // If Button 7 дарагдсан бол {Serial.println ("Button 7"); хэрэв (Дугаар == 0) Дугаар = 7; өөр тоо = (тоо*10) + 7; // хоёр удаа дарагдсан} if (key == '0') {Serial.println ("Button 0"); // (Тоон == 0) Дугаар = 0 бол 0 товчлуур дарагдана. өөр тоо = (тоо*10) + 0; // хоёр удаа дарагдсан} if (key == '2') // 2 -р товчлуур дарагдсан {Serial.println ("Button 2"); хэрэв (Дугаар == 0) Дугаар = 2; өөр тоо = (тоо*10) + 2; // Хоёр удаа дарсан} if (key == '5') {Serial.println ("Button 5"); хэрэв (Дугаар == 0) Дугаар = 5; өөр тоо = (тоо*10) + 5; // Хоёр удаа дарагдсан} if (key == '8') {Serial.println ("Button 8"); хэрэв (Дугаар == 0) Дугаар = 8; өөр тоо = (тоо*10) + 8; // хоёр удаа дарагдсан} if (key == '#') {Serial.println ("Товч тэнцүү"); Num2 = тоо; үр дүн = үнэн; } if (key == '3') {Serial.println ("Button 3"); хэрэв (Дугаар == 0) Дугаар = 3; өөр тоо = (тоо*10) + 3; // Хоёр удаа дарсан} if (key == '6') {Serial.println ("Button 6"); хэрэв (Дугаар == 0) Дугаар = 6; өөр тоо = (тоо*10) + 6; // Хоёр удаа дарсан} if (key == '9') {Serial.println ("Button 9"); хэрэв (Дугаар == 0) Дугаар = 9; өөр тоо = (тоо*10) + 9; // хоёр удаа дарсан} хэрэв (түлхүүр == 'A' || түлхүүр == 'B' || түлхүүр == 'C' || түлхүүр == 'D') // 4 -р баганад байгаа товчлууруудыг илрүүлэх {Num1 = Дугаар; Дугаар = 0; if (key == 'A') {Serial.println ("Нэмэлт"); action = '+';} if (key == 'B') {Serial.println ("хасах"); үйлдэл = '-'; } if (key == 'C') {Serial.println ("Үржүүлэх"); action = '*';} 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; } хоосон DisplayResult () {lcd.setCursor (0, 0); // курсорыг 0 багана, 1 -р мөр lcd.print (Num1) болгож тохируулна уу; lcd.хэвлэх (үйлдэл); lcd.print (Num2); if (үр дүн == үнэн) {lcd.print ("="); lcd.print (Number);} // Үр дүнг харуулах lcd.setCursor (0, 1); // курсорыг 0 -р баганын 1 -р мөрөнд тохируулна уу lcd.print (Дугаар); // Үр дүнг харуулах}
Зөвлөмж болгож буй:
Nextion/Arduino тооцоолуур: 3 алхам
Nextion/Arduino тооцоолуур: Arduino Uno -д хэрэгтэй тооцоолуур. Тооцоологч нь Windows 10 -тэй нийлдэг стандарт тооцоолууртай төстэй хэв маягтай байдаг. Тэмдэглэл: Үүнд Windows 10 тооцоолуур хийдэг шинжлэх ухаан, програмист функцууд ороогүй боловч эдгээр функцууд нь
4X4 товчлуур ашиглан Arduino тооцоолуур: 4 алхам (зурагтай)
4X4 товчлуур ашиглан Arduino тооцоолуур: Энэхүү гарын авлагад бид Arduino ашиглан өөрийн тооцоолуур хийх болно. Утгауудыг товчлуураар (4 × 4 товчлуур) илгээж, үр дүнг LCD дэлгэц дээр харах боломжтой. Энэхүү тооцоолуур нь Нэмэх, хасах, үржүүлэх гэх мэт энгийн үйлдлүүдийг хийж чадна
1602 LCD болон 4x4 товчлуур ашиглан Arduino DIY тооцоолуур: 4 алхам
1602 LCD болон 4x4 товчлуур ашиглан Arduino DIY тооцоолуур: Сайн байна уу залуусаа, энэ зааварт бид үндсэн тооцоог хийх боломжтой Arduino ашиглан тооцоолуур хийх болно. Үндсэндээ бид 4x4 товчлуураас оролтыг авч, өгөгдлийг 16x2 LCD дэлгэц дээр хэвлэх бөгөөд arduino тооцооллыг хийх болно
Arduino мэдрэгчтэй дэлгэцийн тооцоолуур: 7 алхам
Arduino мэдрэгчтэй дэлгэцийн тооцоолуур: Сайн байна уу! Энэ бол Arduino Uno болон TFT LCD бамбай ашиглан мэдрэгчтэй дэлгэцийн тооцоолуур хийх төсөл юм. Би гэрийн сургуулийн програмчлалын ангийнхаа концепцийг гаргаж ирсэн бөгөөд энэ төслийг бүтээх туршлага маш сонирхолтой байсан. Энэхүү тооцоолуур нь
Arduino тооцоолуур хийхийн тулд товчлуур ба LCD -ийг Arduino ашиглан хэрхэн ашиглах вэ: 5 алхам
Arduino тооцоолуур хийхийн тулд товчлуур ба LCD -ийг Arduino ашиглан хэрхэн ашиглах вэ: Энэхүү гарын авлагад та 4x4 матрицтай товчлуур болон 16x2 LCD дэлгэцийг Arduino -той хэрхэн ашиглаж, энгийн Arduino тооцоолуур хийх талаар хуваалцах болно. Тиймээс эхэлцгээе