Мазмуну:

Кичинекей LED Matrix дисплей сааты: 8 кадам
Кичинекей LED Matrix дисплей сааты: 8 кадам

Video: Кичинекей LED Matrix дисплей сааты: 8 кадам

Video: Кичинекей LED Matrix дисплей сааты: 8 кадам
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Ноябрь
Anonim
Image
Image
Кичинекей LED Matrix дисплей сааты
Кичинекей LED Matrix дисплей сааты
Кичинекей LED Matrix дисплей сааты
Кичинекей LED Matrix дисплей сааты
Кичинекей LED Matrix дисплей сааты
Кичинекей LED Matrix дисплей сааты

Мен ар дайым 90-жылдардагы кинолорго окшош, эски модадагы үстөл саатына ээ болууну эңсеп келгем, абдан момун функциясы бар: реалдуу убакыт сааты, датасы, фон жарыгы, бипер жана ойготкуч. Ошентип, мен бир идея менен келдим, бирин куруу үчүн: Мен жогоруда айтып кеткен бардык функциялары бар микроконтроллерге негизделген жана USB аркылуу иштей турган санарип түзмөк - же PC, же кандайдыр бир мобилдик USB заряддагыч. Мен муну меню жана орнотууларды тууралоо менен программалаштыргым келгендиктен, бул долбоордо MCUнун жайгашуусу сөзсүз болду. ATMEGA328P IC (ар бир Arduino Uno тактасы турат) схеманын "мээси" болуп тандалып алынган (бул жөнүндө айтсам, менде алардын көбү бар болчу). Кээ бир электрондук бөлүктөрдү RGB LED, акырындык менен толтуруучу чип жана баскычтар катары бириктирип, бүтүндөй долбоордун жаралышын камсыз кылды-Программалануучу кичинекей LED дисплей стол сааты.

Ошентип, биз долбоордун субъектиси менен таанышкандан кийин, аны куралы

1 -кадам: Идея

Ой
Ой

Мурда да айтылгандай, биздин түзмөктө LED матрицасынын жакшы көрүнгөн дисплейлери, түсүн өзгөрткөн RGB LED арткы жарыгы, убакытты сактоочу чип, ыңгайлуу USB энергия менен камсыздоо блогу жана кичинекей корпус бар.

Келгиле, түзүлүштүн блок -схемасын бөлүктөр боюнча сүрөттөп берели:

1. Электр менен камсыздоо бирдиги:

Түзмөк 5 вольтто туруктуу иштегендиктен, электр менен камсыздоочу компонент эки башка схемадан турат:

  • Микро -USB киргизүү - Заряддоочу түзмөктү / PC үчүн.
  • LV7805 ICге негизделген 5V линиялык чыңалуу жөндөгүч схемасы.

LM7805 IC микросхемасы милдеттүү эмес, эгерде сиз башка энергия менен камсыздоону киргизүү мүмкүнчүлүгүн колдонууну каалабасаңыз. Биздин түзмөктө Micro-USB PSU колдонулат.

2. Микроконтроллер бирдиги:

ATMEGA328P микроконтроллери бүт түзүлүштүн "мээси" катары иштейт. Анын максаты - бардык перифериялык схемалар менен баарлашуу, керектүү маалыматтарды берүү жана түзмөктүн колдонуучу интерфейсин башкаруу. Тандалган микроконтроллер ATMEGA328P болгондуктан, бизге Atmel Studio жана C боюнча негизги билим керек болот (схемалар жана программалоо ырааттуулугу кийинки кадамдарда сүрөттөлгөн).

3. Чыныгы убакыт сааты схемасы:

Түзмөктөгү экинчи маанилүү схема. Анын максаты-кирүү кубаттуулугуна көз каранды болбостон, аны сактоо талабы менен дата жана убакыт маалыматын берүү, башкача айтканда, убакыт маалыматтары реалдуу убакыт режиминде жаңыртылып жатат. RTC компонентинин убакыттын / датанын маалыматын өзгөртүүсүн улантуу үчүн, схемага 3V монета клеткалуу батарея кошулат. IC DS1302, анын иштеши кийинки кадамдарда сүрөттөлгөн.

4. Киргизүү интерфейси - баскыч баскычтары:

Киргизүү PB которгучтары колдонуучу үчүн кирүү интерфейсин камсыз кылат. Бул өчүргүчтөр MCUда жана көзөмөлдөөчү түзмөктө аныкталган программада иштетилет.

5. LED Matrix Display

Түзмөктүн дисплейи эки IC оролгон HCMS-2902 Alphanumeric LED матрицасынан турат, ар бир ICде 5x7 кичинекей LED матрицасынын 4 белгиси бар. Бул дисплейлерди колдонуу оңой, 3-Wire байланышы колдоого алынат жана чакан-бул долбоордо бизге керектүү нерселердин баары.

6. RGB Backlight:

Түстүн жарыктын өзгөрүшү тышкы RGB LEDине негизделген, MCUдан келген PWM сигналдары менен башкарылат. Бул долбоордо RGB LED 4 казыктан турат: R, G, B жана жалпы, мында R, G, B түс палитрасы MCU тарабынан PWM аркылуу башкарылат.

7. Зумзер:

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

2 -кадам: Бөлүктөр жана инструменттер

Бөлүктөр жана инструменттер
Бөлүктөр жана инструменттер

I. Электроника:

A. Интегралдык жана активдүү компоненттер:

  • 1 x ATMEGA328P - MCU
  • 2 x HCMS2902 - AVAGO дисплейлери
  • 1 x DS1302 - RTC
  • 1 x 2N2222A - BJT (NPN)

B. Пассивдүү компоненттер:

  • Резисторлор:

    • 5 x 10K
    • 1 x 180R
    • 2 x 100R
  • Конденсаторлор:

    • 3 x 0.1uF
    • 1 x 0.47uF
    • 1 x 100uF
    • 2 x 22pF
  • 1 х 4-пин RGB LED
  • 1 x Buzzer
  • 1 х 32.768KHz кристалл

C. туташтыргычтар:

  • 1 x Micro-USB туташтыргычы
  • 2 х 6-пин стандарттык кадам (100 мил) туташтыргычы.
  • 2 х 4-пин стандарттык чайыр (100mil) туташтыргычы.
  • 1 х Монета-клетка Батарея корпусу.

D. Ар кандай:

  • 3 x SPST баскыч баскычтары
  • 1 x 3V монета клеткалуу батарея.

E. Кошумча PSU:

  • 1 x LM7805 - Сызыктуу жөнгө салуучу
  • 2 x 0.1uF Cap
  • 2 x 100uF капкак

II. Механикалык:

  • 1 х Пластикалык корпус
  • 4 х Резина тиркемелери
  • 1 х прототип ширетүүчү тактасы
  • 1 x MCU аталышы (Микроконтроллер иштебей калган учурда)
  • 2 x Small 8мм болт
  • 2 x 8мм кир жуугучтар

III. Аспаптар жана материалдар:

  • Зымдарды ширетүү
  • Түтүктөрдү кичирейтүү
  • Калай калай
  • Кандооч
  • Cutter
  • Plier
  • Пинцет
  • Бургулоо биттери
  • Чакан файл
  • Ар кандай бурагычтар
  • Caliper
  • Мультиметр
  • Нан тактасы (Милдеттүү эмес)
  • Микро USB кабели
  • Орточо файл
  • Hot Glue Gun
  • AVR ISP программисти

IV. Программалоо:

  • Atmel Studio 6.3 же 7.0.
  • ProgISP же AVRDude
  • Microsoft Excel (дисплей символун түзүү үчүн)

3 -кадам: Схеманын сүрөттөлүшү

Схемалардын сүрөттөлүшү
Схемалардын сүрөттөлүшү

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

A. Негизги компоненттери Board:

Мурда да айтылгандай, биз шаймандын "ичинде" болууну каалаган бардык тиешелүү чакан схемалар бир кесилген прототип тактасына жайгаштырылган. Келгиле, башкы тактанын жайгаштырылган микросхемалардын иштешинин түшүндүрмөсүнө өтөлү:

1. Микроконтроллердин схемасы:

Бул долбоордо колдонулган MCU бул ATMEGA328P. Бул тышкы 5В электр булагы менен иштейт, бул учурда - micro USB туташтыргычы. Бардык тиешелүү I/O казыктары дизайн талаптарына ылайык туташтырылган. Порттордун I/O картасын түшүнүү оңой, анткени бардык таза аттар программалоо баскычында колдонулгандай так аныкталган. MCU программалык ырааттуулукта жана кубатты инициализациялоодо колдонулган жөнөкөй RC баштапкы абалга келтирүү схемасына ээ.

MCUнун чечүүчү бөлүгү программалоо схемасы. 6 -пин программалоо туташтыргычы бар - J5, VCC, GND жана RESET торлору тышкы провайдер программисти менен негизги компоненттер тактасына жалпы экенин текшериңиз.

2. Реалдуу убакыт режиминдеги саат схемасы:

Кийинки схема, долбоордун негизги перифериялык бөлүгү. DS1302 - бул биздин иштетүү бирдигибизге иштетилген убакыт менен күндүн маанилерин камсыз кылуучу заряддын хронометраждык IC. DS1302 MCU менен 3 зымдуу SPI байланышына окшош 3 зымдуу интерфейс аркылуу төмөнкү линиялар боюнча байланышат:

  • RTC_SCK (Чыгуу): SDO линиясында берилип жаткан айдоочулук жана маалыматтардын үлгүлөрүн аткарат.
  • RTC_SDO (I/O): Маалыматты айдап өтүүчү линия. Убакыт/дата маалыматы алынганда MCUга киргизүү катары жана маалыматтар өткөрүлүп жатканда чыгуу катары иштейт (Кошумча түшүндүрмө алуу үчүн Programming Essentials кадамын караңыз).
  • RTC_CE: (Чыгуу): Маалымат берүү линиясын иштетүү. MCU тарабынан ЖОГОРУ коюлганда, маалыматтар берилүүгө/кабыл алууга даяр.

DS1302 шайкеш райондук жүрүм -туруму үчүн тышкы 32.768KHz кристалл осцилляторун талап кылат. Райондук эсептөө тутумунда чоң дрейфти болтурбоо үчүн (интегралдык микросхемалардын мындай түрлөрүндө дрейф кубулуштары сөзсүз болот), ар бир кристаллдын учуна эки калибрлөөчү конденсаторду коюу керек (схемаларда X1, C8 жана C9 бөлүктөрүн караңыз). 22pF бул проектте убакытты сактоо боюнча көптөгөн эксперименттерден кийин оптималдуу баалуулуктар болгон, андыктан чынжырды толугу менен ширете турган болгондо, бул конденсаторлорду башка баалуулуктарга алмаштыруу мүмкүнчүлүгү бар экенин текшериңиз. Бирок кичинекей тактай үчүн 22pF абдан кичинекей дрейф үчүн абдан жакшы иштеген (айына 7 секунд).

Бул схеманын акыркы, бирок эң аз эмес компоненти-3V монета-клетка батареясын DS1302 ICге жетиштүү энергия менен камсыз кылуу үчүн тактага коюу керек, андыктан ал убакытты эсептөө ишин уланта берет.

4. 8 Белгилери LED Matrix:

Түзмөктүн дисплейи 2 х 4 белгиден турган LED Matrix дисплей ICлерине негизделген, 3 зымдуу интерфейс аркылуу программаланган, RTC схемасынын DS1302 окшош, айырмасы жок, ошол маалымат менен камсыз болгон линия (SDI) MCUнун чыгышы катары аныкталат (эгер сиз кошкуңуз келбесе) дисплей схемаңыздын абалын текшерүү мүмкүнчүлүгү). Дисплейлер 3-Wire кеңейтүүсүндө бириктирилген, андыктан эки IC тең бир дисплей түзмөгү катары иштешет, мында аны бардык дисплей символдорунун аныктамасы үчүн программалоо мүмкүнчүлүгү бар (SPI серияларынын комбинациясын караңыз). Райондун бардык таза аттары MCU ылайыктуу туташууларына дал келет - дисплейлер ортосунда байланыш түзүүчү жалпы тармактар бар экенин белгилеп коюңуз, жана дисплейдин коммуникациялык интерфейстерин MCUга туташтыруунун кажети жок. Программалоо жана белгилердин ырааттуулугу кийинки кадамдарда аныкталат.5. Колдонуучу интерфейси схемасы:

Колдонуучу интерфейси эки чакан топко бөлүнөт-Киргизүү жана чыгаруу системалары: Киргизүү системасы: Түзмөктүн өзү аныкталган логиканы жогору же ТӨМӨН кылуу үчүн кошумча тартуучу резисторлору бар SPST баскычтарынын үч өчүргүчтөрү катары аныкталган колдонуучуну камсыз кылат. MCU. Бул алмаштыргычтар бүт программаланган алгоритмди башкаруу системасын камсыз кылат, анткени убакыт/датанын маанилерин, менюну көзөмөлдөөнү ж.б.

6. Чыгуу системасы:

A. Buzzer схемасы эки мамлекетте үн чыгарууну камсыз кылат, менюну которуу үндү жана сигналдын алгоритмин тааныйт. NPN транзистору которгуч катары колдонулат, сигналга жетиштүү ток берип, аны тийиштүү жыштыкта чыгарат. Buzzer MCU программасы менен түздөн -түз башкарылат. RGB LED түзмөктүн арткы бөлүгү катары колдонулат. Бул түздөн -түз MCU тарабынан көзөмөлдөнөт, арткы жарыкты тандоонун төрт варианты бар: КЫЗЫЛ, ЖАШЫЛ, КӨК, PWM же ӨЧҮК режимдери. LED R, G жана B казыктарына серия менен туташкан резисторлордун ар кандай мааниге ээ экенин байкаңыз, анткени ар бир түс туруктуу токтун ар кандай интенсивдүүлүгүнө ээ. Жашыл жана көк светодиоддор үчүн бирдей мүнөздөмөлөр бар, качан кызыл бир аз көбүрөөк интенсивдүүлүккө ээ. Ошентип, кызыл LED чоң каршылык маанисине туташат - бул учурда: 180Ohm (RGB LED түшүндүрмөсүн караңыз).7. Туташтыргычтар:

Негизги тактага туташтыргычтар тышкы интерфейс компоненттеринин ортосундагы байланышты камсыз кылуу үчүн жайгаштырылган: Дисплей, RGB LED, Power киргизүү жана баскыч баскычтары, жана башкы такта. Ар бир туташтыргыч ар кандай схемага арналган, ошон үчүн аппараттын комплекстүүлүгү кескин төмөндөйт. Схемада көрүнүп тургандай, ар бир туташтыргычтын заказы милдеттүү эмес жана алмаштыруу мүмкүн, эгерде бул зым процесстерин бир топ жеңилдетсе. Бардык схемалардын түшүнүктөрүн карагандан кийин, кийинки кадамга өтөлү.

4 -кадам: ширетүү

Soldering
Soldering
Soldering
Soldering
Soldering
Soldering

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

1. MCU жана программалоо туташтыргычы: MCU IC аткарылбай калганда алмаштырылышы үчүн MCUнын ордуна 28 пин башын кошуу сунушталат. Түзмөктү программалоого жана күйгүзүүгө жөндөмдүү экенин текшериңиз. Пин сүрөттөө стикерин программалоочу туташтыргычка коюу сунушталат (Үчүнчү сүрөттү караңыз).

2. RTC схемасы: бардык керектүү бөлүктөрдү ширеткенден кийин, калибрлөөчү конденсаторлордун алмаштырылышы оңой экендигин текшериңиз. Эгерде сиз 3V монеталуу батарейка корпусун колдонууну кааласаңыз - анын түзмөктүн корпусунун өлчөмдөрүнө дал келерин текшериңиз.

3. Дисплей: Эки дисплей ICлер өзүнчө кичинекей тактайга ширетилиши керек (1-сүрөт). Бардык керектүү торлорду ширеткенден кийин, борттон тышкаркы зымдарды даярдоо керек (4-сүрөт): бул зымдар ширетилип, дисплей тактасынын капталында өткөрүлүшү керек, зымдарга колдонулуучу чыңалуу жана механикалык стресс болбойт экенин эске алыңыз. дисплей тактасындагы ширетүүчү муундарга таасир этет.

4. Мурунку кадамдагы зымдарга этикеткалар чапталган болушу керек - бул кийинки кадамда монтаж процессин бир топ жеңилдетет. Кошумча кадам: ар бир зымга эркек бир-пин туташтыргыч кошуу (Arduino стили).

5. Негизги тактада калган туташтыргычтар, анын ичинде перифериялык компоненттер. Дагы бир жолу, ар бир туташтыргычка пин сыпаттамасы бар стикерлерди коюу сунушталат.

6. Буззердин схемасы: шыңгыр аппараттын ичинде жайгашкан, андыктан ал башкы тактага ширетилиши керек, бири -бирине туташтыргычтын кереги жок.

7. RGB LED: Негизги тактай мейкиндигин үнөмдөө үчүн, мен ар бир резистор өзүнүн дал келген түсүнө жана ылайыктуу MCU төөнөгүчүнө туура келген LED казыктарындагы сериялык резисторлорду ширеттим (Pic. 5).

5 -кадам: чогултуу

Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу
Чогултуу

Бул кадам долбоордун көрүнүшүн аныктайт - электрдик жана механикалык. Эгерде бардык сунушталган эскертүүлөр эске алынган болсо, анда чогултуу процесси өтө оңой болуп калат. Төмөнкү этап-этабы менен толук процесс маалыматын берет:

Бөлүм А: Каптоо

1. Баскычтын баскычынын диаметри боюнча 3 тешик бургулаңыз (бул учурда 3мм).2. Корпустун капталында ызы-чууга арналган бир тешик бургулаңыз. Каалаган бургулоочу бит диаметри колдонулушу мүмкүн.3. Колдонушуңуз керек болгон USB туташтыргычына ылайык майдалоо үчүн кичинекей тешикти бургула (Бул учурда Micro USB). Андан кийин, туташтыргычтын өлчөмүнө дал келүү үчүн, кичинекей файл менен майдалоону аткарыңыз. Тегирмен үчүн негиз катары салыштырмалуу чоң тешик бургулаңыз. Дисплейдин өлчөмүнө ылайык, орто өлчөмдөгү файл менен майдалоону аткарыңыз. Дисплей ICлеринин корпустун сырт жагында бар экенин текшериңиз. RGB LED диаметри боюнча, түзүлүштүн түбүндөгү орточо тешикти бургула. Бөлүм B - Тиркемелер:

1. Үч баскычтын (GND жана белги) ар бирине эки зымды ээрчиңиз. Зымдарга этикеткалар жана жалгыз пин туташтыргычтары сунушталат.2. Төрт даярдалган зымды RGB LED казыктарына туташтырыңыз. Этикетка чаптамаларын жана кичирейүүчү түтүктөрдү ширетүүчү жерлерге коюңуз.3. Түзмөктүн астына төрт резина бутун бекиткиле. Бөлүм C - Бөлүктөрдү Туташтыруу:

1. Корпустун ылдый жагына RGB LEDди коюп, аны башкы тактадагы атайын туташтыргычка туташтырыңыз. Аны ысык клей менен чаптаңыз.2. Үч баскычты которгучту жайгаштырыңыз, аларды башкы тактадагы атайын туташтыргычка туташтырыңыз, ысык клей менен тиркеңиз. USB туташтыргычын коюңуз, аны программалоо туташтыргычынын электр менен камсыздоочу казыктарына (VCC жана GND) туташтырыңыз. Электр менен камсыздоо линияларынын полярдуулугу ширетилген бөлүктөргө дал келерин текшериңиз. Аны ысык клей менен бекиңиз.4. Дисплей тактасын коюп, аны атайын туташтыргычка туташтырыңыз. Аны ысык клей менен чаптаңыз.

1. Болт-гайка жуптарын негизги борттун корпусуна жана үстүңкү капкакка кошуу сунушталат (Бул учурда көрсөтүлгөндөй).2. Үзүлгөн зымдардын иштебей калышына жол бербөө үчүн, аларды сырткы көрүнүшү менен кошо тиркелиңиз.

6 -кадам: Кыскача программалоого киришүү

Кыскача программалоо киришүүсү
Кыскача программалоо киришүүсү
Кыскача программалоо киришүүсү
Кыскача программалоо киришүүсү
Кыскача программалоо киришүүсү
Кыскача программалоо киришүүсү

Бардык бөлүктөр ширетилгенден кийин, жыйынтыктоочу кадамга өтүүдөн мурун баштапкы түзмөктү тестирлөө жүргүзүү сунушталат. MCU коду C менен жазылган жана ATMEGA328P ар кандай ISP Программисти аркылуу программаланган (Atmel программалоо түзмөктөрүнүн ар кандай түрлөрү бар: AVR MKII, AVR DRAGON ж.б. - Мен eBayден арзан USB ISP Программистин колдондум, ал ProgISP же AVRDude программасы тарабынан башкарылат). Программалоо чөйрөсү Atmel Studio 4 жана андан жогору болушу керек (мен программалык камсыздоонун эң акыркы версияларын сунуштайм). Эгерде тышкы, Atmel Studioго мүнөздүү эмес программист колдонулса, программалоо программасына.hex файл жолун берүү керек (Адатта, долбоордун Debug же Release папкасында жайгашкан). Чогуу кадамына өтүүдөн мурун, түзмөктү программалоого болоорун жана AVRге арналган ар кандай долбоорлорду түзүү жана чогултуу процесси ATMEGA328P микроконтроллерине негизделгенин текшериңиз (Atmel Studio окуу куралын караңыз).

7 -кадам: Коддун сүрөттөлүшү

Code Description
Code Description
Code Description
Code Description

Decice кодунун алгоритми эки бөлөк катмарга бөлүнөт: 1. Негизги катмар: перифериялык микросхемалар менен байланыш, түзмөктүн операцияларын аныктоо, инициализация жана компоненттердин декларациясы. Интерфейстин катмары: Колдонуучу менен түзмөктүн өз ара аракеттенүүсү, менюнун иштеши, саат/ызгыр/түс/ойготкучту тууралоо. Программанын ырааттуулугу Сүрөттө сүрөттөлгөн. 1, бул жерде ар бир блок MCU абалына туура келет. Сипатталган программа аппараттык жана тышкы дүйнөнүн ортосундагы интерфейсти камсыз кылган негизги "операциялык система" катары иштейт. Төмөнкү түшүндүрмө программанын негизги бөлүгүн бөлүктөр боюнча сүрөттөйт: Бөлүм А: Негизги катмар:

1. MCU I/O Initialization: Биринчиден, аппараттык компоненттерди инициализациялоо керек:- код менен колдонулуучу туруктуулар.- I/O порттору- интерфейс.- Перифериялык байланыш декларациялары.

2. Негизги жалпы функциялар: Кээ бир функциялар өзүнчө код блоктору тарабынан колдонулат, программалар тарабынан көзөмөлдөнүүчү казыктар боюнча операцияларды аныктайт:- RTC жана дисплей тактасынын байланышын иштетүү/өчүрүү. up/Clock down functions.- Дисплей символдорду түзүү функциялары.3. Перифериялык баштоо: I/O порттору конфигурациялангандан кийин, микросхемалардын функцияларын аныктоо ортосундагы байланыш ишке ашат. Бүткөндө - MCU жогоруда аныкталган функцияларды колдонуп, RTC жана дисплей схемаларын инициализациялоону баштайт.

4. Негизги функциялардын аныктамасы: Бул этапта түзмөк орнотулган жана кээ бир перифериялык схемалар менен байланышты аткарууга даяр. Бул функциялар төмөнкүлөрдү аныктайт:- которгучту башкарууну которуу- RGB LED иштөөсү (өзгөчө PWM)- Buzzer чарчы толкун генератору

5. Дисплейдин функциялары: Интернетте мен колдонгон HSMS ICs жөнүндө көп нерсе таппадым, ошондуктан анын китепканасын өзүм жаздым. Дисплей функциялары ASCII символдорун жана бүтүн сандарды көрсөтүүнү камтыган толук мүнөздү көрсөтүү функцияларын камсыз кылат. Функциялар жалпыланган түрдө жазылган, андыктан коддун кайсы бир бөлүгүнөн дисплей функцияларын чакыруу керек болсо, аларды колдонуу оңой, анткени алар операция боюнча жалпыланган (Мисалы: Стринг дисплейи, бир тамга дисплейи ж. Б.).

6. RTC иштөө функциялары: Бардык RTC функциялары жалпыланган түрдө жазылган (Display функциялары топтомуна окшош) DS1302 ICдин ишине ылайык. Код жазылган китепканага негизделген, алар gitHubдын көптөгөн варианттарында бар. Акыркы коддон көрүнүп тургандай, дисплей жана RTC функциялары өзүнчө.c жана.h файлдарына киргизилген. Бөлүм B - Interface Layer:

1. Негизги функция: void main () бөлүмүндө бардык негизги инициализация функциялары жөнүндө декларация бар. Бардык компоненттерди ишке киргизгенден кийин, MCU чексиз циклге кирет, мында түзмөктүн иштеши колдонуучу тарабынан көзөмөлдөнөт.

2. Реалдуу убакыт которгучтары, Арткы жарык жана Дисплейди башкаруу: Чексиз циклде иштеп жатканда, MCU түзмөктүн ар бир бөлүгүндө жаңыртууну аткарат. Ал кайсы маалыматты көрсөтүү керектигин, кайсы баскыч басылганын жана арткы жарык режими тандалганын тандайт.

3. Колдонуучунун менюсунун функциялары: Бул функциялар дарак сымал формага ээ (X караңыз. X), мында меню системасы жана иерархиясы мамлекеттик машина катары аныкталат. Колдонуучунун киргизүүсү менен башкарылган ар бир мамлекеттик машина - баскыч баскычын которот, ошондуктан тиешелүү баскыч басылганда - мамлекеттик машина анын маанисин өзгөртөт. Бул менюда аткарылган түзмөктөгү бардык өзгөрүүлөр заматта өзгөрүп тургандай кылып иштелип чыккан.

4. Колдонуучунун менюсун которуу: колдонуучу киргизилгенде, меню абалы анын абалын өзгөртүүгө туура келет. Ошентип, бул функциялар мамлекеттик машинаны колдонуучудан көз каранды башкарууну камсыз кылат. Бул учурда: кийинки, мурунку жана OK.

8 -кадам: Акыркы код жана пайдалуу файлдар

Жана бул! Бул кадамда сиз керектүү болгон бардык файлдарды таба аласыз:- Электр схемасы- Толук булак коду- Дисплей Character BuilderOptional Feature: Дисплей ICлеринин китепканасында көрсөтүлө турган ар кандай символдор бар, бирок кээ бирлери киргизилген эмес. Эгерде сиз каармандарды өзүңүз түзгүңүз келсе, Print_Character ('') функциясында ASCII шилтемеси бар регистрдин абалын кошуңуз (display.c функцияларын караңыз). Сиз бул Нускаманы пайдалуу деп үмүттөнөбүз:) Окуганыңыз үчүн рахмат!

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