Мазмуну:

Электрондук эсептегич долбоору - Jasdeep Sidhu: 7 кадам
Электрондук эсептегич долбоору - Jasdeep Sidhu: 7 кадам

Video: Электрондук эсептегич долбоору - Jasdeep Sidhu: 7 кадам

Video: Электрондук эсептегич долбоору - Jasdeep Sidhu: 7 кадам
Video: Электрондук отчётко өтүү - турмуш зарылчылыгы 2024, Июль
Anonim
Электрондук эсептегич долбоору - Jasdeep Sidhu
Электрондук эсептегич долбоору - Jasdeep Sidhu
Электрондук эсептегич долбоору - Jasdeep Sidhu
Электрондук эсептегич долбоору - Jasdeep Sidhu

Arduino - бул ар кандай долбоорлордо колдонула турган микроконтроллерди колдонуу оңой жана кызыктуу. Бүгүн биз 4x4 клавиатурасы менен бирге Arduino микроконтроллерин колдонобуз, кошо, кемите, бөлө жана көбөйтө турган негизги эсептегичти түзөбүз! Бул долбоор абдан пайдалуу жана үйдө, мектепте, ал тургай жумуш ордунда колдонулушу мүмкүн, бул кичинекей математикалык маселелерди чечүүгө келгенде абдан тез жана эффективдүү. Бул калькуляторду түзүүдө үйрөнүп, көңүл ачасыз деп ишенем! Ырахат алыңыз!

Биринчиден, бул негизги эсептегичти түзүү үчүн керектүү болгон жабдууларды карап көрөлү!

Жабдуулар

1. Arduino микроконтроллери (1)

2. Баскыч 4x4 (1)

3. ЖК 16x2 (1)

4. 200Ω резистор (1)

5. Зымдар (22)

1 -кадам: Керектүү материалдар

Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар
Керектүү материалдар

Бул долбоорду түзүү үчүн зарыл болгон кээ бир негизги компоненттер бар. Биринчиден, бизге бир Arduino микроконтроллери керек. Arduino бул схеманын эң маанилүү компоненти, анткени бул шилтемени чыкылдатуу менен сатып алса болот.

Экинчиден, бизге дагы 4x4 баскычтоп керек болот. Бул колдонуучуга математикалык көйгөйүн эсептегичке киргизүүгө мүмкүндүк берет. Бул дагы бул долбоорду түзүү үчүн абдан маанилүү компонент. Бул баскычтопту бул шилтемени басып сатып алса болот.

Үчүнчүдөн, бизге 16x2 ЖК керек болот. Бул математикалык суроо -жоопту көрсөтө турган экран. Бул компонентти бул шилтеме аркылуу сатып алса болот.

Төртүнчүдөн, бизге 200 Ω резистор керек. Резисторлорду колдонуу абдан оңой жана бул долбоор үчүн абдан маанилүү. Бул резисторлорду бул шилтемеден сатып алсаңыз болот.

Акырында, схеманы бүтүрүү үчүн бизге 22 зым керек болот. Бул зымдарды бул шилтемеден сатып алса болот.

2 -кадам: GND & 5V туташуу

GND & 5V туташуу
GND & 5V туташуу
GND & 5V туташуу
GND & 5V туташуу
GND & 5V туташуу
GND & 5V туташуу

Бардык материалдарды чогулткандан кийин кийинки кадамга өтүшүбүз керек. Бул кадам 16x2 ЖКны Arduino менен туташтыруу. Биз LCDге Arduino Микроконтроллеринен күч жана жерге ээ болууга уруксат беришибиз керек. Бул үчүн бизге 4 зым, бир 200 Ω резистор жана 16x2 ЖК керек болот. Биринчиден, Arduinoдогу 5V пинди ЖКдагы VCCге туташтыруудан баштайлы. Бул ЖКга Arduinoдон энергия алууга мүмкүнчүлүк берет, анткени VCC туташтыргычы Voltage Common Collector деп да аталат. Кийинки кадам - Arduinoдогу жерге туташтыргычты (GND) LCDдеги жерге туташтыргычка (GND) туташтыруу. Кийинки кадам үчүн бизге дагы бир зым жана 200 Ω каршылык керек болот. Бул бизге Arduinoдогу GND пинди 16x2 ЖКдагы LED пинге туташтырууга мүмкүндүк берет. Биз резисторду ЖКга учурдагы агымды азайтуу үчүн колдонушубуз керек, анткени резисторсуз ЖК туура иштебейт, анткени ал өтө көп агымга ээ болот. Акыр -аягы, биз дагы бир GND туташуусун жасашыбыз керек, бул Arduinoдогу GND пинин V0 менен туташтырат, ошондой эле Контраст туташуу чекити деп аталат.

Бул 4 зымдын баары туура туташкандан кийин, кийинки кадамга өтө алабыз.

3 -кадам: LCD туташуулары

LCD туташуулары
LCD туташуулары
LCD туташуулары
LCD туташуулары
LCD туташуулары
LCD туташуулары

Үчүнчү кадам үчүн, биз бардык LCD байланыштарыбызды бүтүрүшүбүз керек. Ардуинонун ЖК менен туура байланышы үчүн биз ар бир зымды туура жана так туташтырышыбыз керек. Бул кадамда бизге Arduinoдогу санарип казыктарды 16x2 ЖКга туташтыруу үчүн дагы 6 зым керек болот. Биз жасай турган биринчи байланыш санарип пин 8ди DB7ге (жашыл зым) туташтырат. Андан кийин, биз ~ 9 пин DB6 (бирюза зымы) менен туташтырабыз, ошондой эле ~ 10 пин DB5ке (көк зым) туташтырабыз. Андан кийин, биз Arduinoдогу ~ 11 пин DB4ке туташтырышыбыз керек. Андан кийин, биз 12 -пинди ЖКга Е туташтырышыбыз керек. ЖКдагы "Е" туташтыргычы ошондой эле Иштетүү деп аталат. Акырында, биз 13 -пин RS туташтыргычына туташтырабыз. "RS" туташтыргычы регистр тандоо катары дагы белгилүү.

Бул байланыштардын баары жасалган соң, схема жогоруда көрсөтүлгөндөй болушу керек. Биз дээрлик бүттүк!

4 -кадам: ЖК туташууларын аяктоо

LCD туташууларын аяктоо
LCD туташууларын аяктоо
LCD туташууларын аяктоо
LCD туташууларын аяктоо
LCD туташууларын аяктоо
LCD туташууларын аяктоо

Бул бул схемада абдан жөнөкөй, бирок маанилүү кадам. Жогорудагы сүрөттө сиз бир боз зымды көрөсүз, бул зым ЖКнын эң жакшы көрүнүшүнө уруксат берүү үчүн колдонулушу керек. Биз VCC туташтыргычын LED туташтыргычына туташтырганда, бул ЖКнын жарык болушуна шарт түзөт, бул экрандын жакшы көрүнүшүнө алып келет. Бул кошумча байланыш болсо да (ЖК ансыз иштейт), бул ЖК жогорудагы сүрөттөрдөн көрүнүп тургандай, жаркыраган болушуна мүмкүндүк бергендиктен, ар кандай эсептегич схемасына жакшы кошумча болот.

5 -кадам: 4x4 баскычтопту туташтыруу

4x4 баскычтопту туташтыруу
4x4 баскычтопту туташтыруу
4x4 баскычтопту туташтыруу
4x4 баскычтопту туташтыруу

Эми биз 4x4 баскычтопту Arduino менен туташтырышыбыз керек. Биз 0дон 7ге чейинки санарип казыктарды клавиатуранын 8 түрдүү туташтыргычына туташтырышыбыз керек. Биринчиден, биз Arduinoдогу D0ну клавиатуранын 4 -графасына туташтырышыбыз керек. Андан кийин, биз D1ди клавиатуранын 3 -графасына туташтырышыбыз керек. Андан кийин биз D2ди 2 -графага, D3 -ти 1 -графага туташтырабыз. D4 пини клавиатурада 4 -катар менен, D5 3 -катар менен, D6 2 -катар менен, D7 1 -сап менен туташат.

Булардын баары туташкандан кийин 4x4 баскычтоп туура орнотулат жана колдонууга даяр болот. Ариптакта ушунчалык маанилүү, ансыз колдонуучу математикалык көйгөйүн калькуляторго тере албайт. Натыйжада, клавиатураны Arduino менен кылдат туташтырыңыз.

Эгерде зымдар туура эмес туташса, клавиатураны форматтоо мааниге ээ болбойт, бул калкулятордун колдонулушун өтө башаламан кылат.

Бардык зымдар туура туташтырылгандан кийин, схема жогоруда көрсөтүлгөн сүрөттөргө окшош болушу керек.

6 -кадам: Келгиле код

Келгиле код!
Келгиле код!
Келгиле код!
Келгиле код!
Келгиле код!
Келгиле код!

Эми биз долбоорубуздун аппараттык бөлүгүн бүтүргөндөн кийин, программалык камсыздоого өтөлү.

Биринчиден, бул кодго киргизишибиз керек болгон керектүү китепканаларды карап көрөлү. Бул коддун иштеши үчүн бизге эки негизги китепкана керек. Бизге Keypad.h жана LiquidCrystal.h керек. Бул китепканалардын ар бири түшүнүксүз көрүнүшү мүмкүн, бирок аларды түшүнүү жана колдонуу абдан жөнөкөй. Keypad.h бизге клавиатуранын ар бир баскычын коддоого мүмкүндүк берген сап-мамычанын кодуна туташтырууга мүмкүндүк берет. Кийинки, LiquidCrystal.h Arduino Микроконтроллерине ЖКны (Liquid-Crystal-Display) туура колдонууга жана башкарууга мүмкүндүк берет.

Экинчиден, биз клавиатуранын форматын жакшылап карасак болот (алар клавиатура.h китепканасы маанилүү болуп калат). Биз RowPinsти ColPins менен бирге колдоно алабыз, бул схемага катардык казыктар жана мамы казыктары катары кандай санарип казыктар колдонулаарын түшүнүүгө мүмкүнчүлүк берет. Бул учурда RowPins 7, 6, 5, 4, ал эми ColPins 3, 2, 1, 0.

Үчүнчүдөн, void setup () функциясында биз баштапкы билдирүүлөрдүн эмне экенин көрө алабыз. Бул билдирүүлөр lcd.printти колдонуу менен ЖКга басылат.

Төртүнчүдөн, биз void loop () функциясынын ичинде көптөгөн коддор бар экенин көрө алабыз жана бул саптардын ичинде мен switch операторун колдондум. Бул схемага эгер -, +, /, же * чыкылдатылган болсо, анда алар эмне кылышы керек экенин түшүнүүгө мүмкүнчүлүк берет. Бул колдонуучу кайсы баскычты басканына жараша бир катар көрсөтмөлөрдү берет.

Бул кадамдардын баары жасалган соң, код жогорудагы сүрөттөргө окшош болушу керек! Бул код татаал көрүнүшү мүмкүн, бирок аны түшүнүү жана үйрөнүү абдан оңой.

7 -кадам: ырахат алыңыз

Эми биз бул долбоордун аппараттык жана программалык компоненттерин бүтүрдүк, биз расмий түрдө даярбыз! Менин окуу куралымды караганыңыз үчүн рахмат жана сизге жакты деп ишенем!

Сунушталууда: