Мазмуну:

4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен: 7 кадам
4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен: 7 кадам

Video: 4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен: 7 кадам

Video: 4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен: 7 кадам
Video: Lesson 99: Building Arduino Digital Clock using DS3231 LCD and Seven Segment Display 2024, Ноябрь
Anonim
4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен
4 цифралуу жана 7 сегменттик дисплейди колдонуу, Arduino менен

Бул үйрөткүчтө мен сизге ардуинонун жардамы менен 4 цифралуу 7 сегменттүү дисплейди кантип колдонууну көрсөтөм. Мен белгилегим келген кээ бир негизги нерселер бул arduino uno, Леонардо, 13 санарип казыктары бар тактайчалардын дээрлик баардыгын камтыйт. Көпчүлүк дисплейлерде түздөн -түз arduino же резистор аркылуу туташкан 12 үзүлгүч казык бар. Ошондой эле, мен бул дисплейлердин Ground, 5V же 3.3V туташуусунун кереги жок экенин белгилегим келет. Андыктан, баштайлы…

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

Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар
Материалдар

Мындай дисплейди колдонуу дээрлик материалдарды талап кылбайт.

- 4 x 330Ω резисторлор

- 12 x Эркектен эркекке секирүүчү зымдар

- 1 x Arduino

- 1 х өлчөмдөгү нан өлчөмү (аларга электр рельсинин кереги жок)

Бул долбоордун прототипин жасоо үчүн эч кандай инструменттердин кереги жок. Бирок, туруктуу колдонуу үчүн ширетүүчү жана PCB такта керек болот.

2 -кадам: Breadboard макети

Breadboard Layout
Breadboard Layout

Сизге контекст берүү үчүн, мен ар бир пиндин колдонулушун түшүндүрөм. Дисплейдеги 12 пиндин 8и 8 сегмент үчүн колдонулат. Ар бир цифраны түзүү үчүн 7 сегмент колдонулат, ал эми ондук чекитти башкарат. 12 казыктан калган 4 дисплейдеги 4 цифранын ар бирин көзөмөлдөйт. Резистору бар ар кандай пин 4 орундуу казыктардын бири, антпесе алар сегменттин казыктары.

Жогорудагы дизайн мен дисплей менен arduino ортосундагы байланышты көрсөтүү үчүн фризингден жараткам. Резисторлордун жайгашкан жерине көңүл буруңуз, анткени эгер сиз каршылыкты дисплейдеги туура эмес пинге туташтырсаңыз, анда ал цифра иштебейт же сегмент иштебейт, түбөлүккө …

*** МААНИЛҮҮ ЭСКЕРТҮҮ ***

Районду орнотууда сары жана кызгыл көк зымдарды алмаштырыңыз (мен схемамды бузуп койдум).

3 -кадам: Китепкананы орнотуу

Төмөндө шилтемеленген китепкана arduino веб -сайтынан дисплейди оңой башкаруу үчүн. Шилтеме githubга барат. Эгерде сиз эч качан githubга кире элек болсоңуз, анда кийинки абзацты окуган болсоңуз, кунт коюп угуңуз. Веб -сайтка киргенде, терезенин оң жагын караңыз жана "Zip жүктөп алуу" дегенди көргөнгө чейин ылдый караңыз. Ал баскычты чыкылдатыңыз жана анын жүктөөлөрүңүздө пайда болгонун көрүңүз.

Эми сиз мурда орнотулган китепкананы китепканалар папкаңызга жүктөшүңүз керек. Эгер муну кантип жасоо керек болсо, кийинки кадамга өтүңүз, болбосо окууну улантыңыз. Алгач тапкычка кирип, "документтер" папкасын таап, аны ачыңыз. Андан кийин, "arduino" папкасын таап, аны ачыңыз. Андан кийин, китепканалар папкасын таап, аны ачыңыз. Акыры орнотулган китепкананы жаңы эле ачылган китепканалар папкасына сүйрөп барып таштаңыз.

МААНИЛҮҮ. Эгерде сиздин arduino тиркемеси ачылып, иштеп жаткан болсо, сиз китепкананы китепканалар папкасына салып жатканда, arduino китепкананы тааныбайт. Сиз жөн гана тиркемени таштап, кайра ачышыңыз керек.

github.com/DeanIsMe/SevSeg

4 -кадам: Код

Кодекс
Кодекс

Чындыгында бир нерсени көрсөтүү коду төмөндө келтирилген.

#"SevSeg.h" кошуу

SevSeg sevseg; // Жети сегменттеги контроллер объектисин жокко чыгаруу демилгесин көтөрүңүз () {byte numDigits = 4; байт digitPins = {2, 3, 4, 5}; байт segmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; bool resistorsOnSegments = 0; // жогорудагы өзгөрмө цифрдык казыктарга 4 резистор коюлганын көрсөтөт. // сегменттин казыктарында 8 резисторду колдонууну кааласаңыз, өзгөрмөнү 1ге коюңуз. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Кайра -кайра иштетүү керек

5 -кадам: Жыйынтык

Эгерде сиз дисплейди туура туташтырсаңыз, кодду туура жүктөсөңүз жана кодду туура көчүрсөңүз, анда дисплейиңиз пи көрсөтүшү керек (болгону 3.141).

Андай болбосо, туура эмес болуп жаткан нерселер үчүн алтынчы кадамды окуңуз.

Эгер сиз туура түшүнсөңүз, анда мен жетинчи кадамда андан ары окууну сунуштайм.

6 -кадам: Мүчүлүштүктөрдү оңдоо

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

- Сиздин дисплей 8888ди көрсөтүп жатат

Кабатыр болбоңуз, бул чечиле турган маселе, жөн гана бул кадамдарды аткарыңыз

1. "sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins)" кодунан табыңыз;

2. "COMMON CATHODE" ды "COMMON ANODE" ге өзгөртүү

3. Кодду кайра жүктөңүз

- Сиздин дисплейде 3. 41 же.141 же 3.1 1 же 3.14 башка 1 көрсөтүлбөйт

Тилекке каршы, бул көйгөйдү оңдоого болот, же чечүүгө болбойт: (… (бул менин ыйлаган жүзүм)

1. Байланыштарыңызды текшериңиз жана бардыгы IS сайылганын жана асылып турбаганын текшериңиз

2. Схеманы кайра текшериңиз, анткени сиз аны туура эмес туташтырдыңыз

3. Колдонуу (3.141, 3) жана 3.141ди 8888ге алмаштыруу жана 8дин бирөөсү жокпу деп айтуу

4. Эгерде андай болсо, анда зымдардын биринде резистор жок болушу мүмкүн, анткени анын бир цифрасы күйүп кеткен деген мааниге ээ болушу керек эле. Сиз муну дисплейдин артына карап текшере аласыз. Эгерде сиз казыктардын биринин жанында кара түстү көрсөңүз, анда цифралуу жерлердин бирин жеңип алдыңыз. Тилекке каршы, бул оңдолбойт жана башка дисплей сатып алгыңыз келет.

5. Эгерде сиз эч жерде кара такты көрө албасаңыз, анда зымдарды алмаштыра албайсыз, андыктан схеманы текшериңиз жана туура сайыңыз жана 8888ден 3.141ге кайра кодду алмаштырыңыз.

7 -кадам: Мындан ары

Ардуинодогу бир нече казыкты колдонуунун бир ыкмасы-бул бир нече светодиоддорду көзөмөлдөө, антпесе көп пин талап кылынат, бул үч штаттык 8 пин жылдыруучу регистр. Ошентип, 8 сегменттин казандарын arduino менен түз туташтыруунун ордуна, аларды нөөмөт реестрине туташтырып, муну кантип жасоону түшүнсөңүз болот.

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

Дисплейиңиз менен көңүл ачыңыз жана бул көрсөтмө сизге жакты деп үмүттөнөм, анткени бул менин долбоорлорумдагы көп нерселердин биринчиси.

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