Përmbajtje:

Ora e vogël e ekranit të matricës LED: 8 hapa
Ora e vogël e ekranit të matricës LED: 8 hapa

Video: Ora e vogël e ekranit të matricës LED: 8 hapa

Video: Ora e vogël e ekranit të matricës LED: 8 hapa
Video: Автомобильный генератор для генератора с самовозбуждением с использованием ДИОДА 2024, Qershor
Anonim
Image
Image
Ora e vogël e ekranit të matricës LED
Ora e vogël e ekranit të matricës LED
Ora e vogël e ekranit të matricës LED
Ora e vogël e ekranit të matricës LED
Ora e vogël e ekranit të matricës LED
Ora e vogël e ekranit të matricës LED

Unë gjithmonë kam dashur të kem një orë pune të modës së vjetër, që duket si diçka nga filmat e viteve '90, me funksionalitet mjaft të thjeshtë: orë në kohë reale, datë, ndryshim i dritës së sfondit, sinjalizues dhe një opsion alarmi. Kështu, unë kam ardhur me një ide, për të ndërtuar një: Një pajisje dixhitale, e bazuar në mikrokontrollues me të gjitha tiparet që kam përmendur më lart, dhe e mundësuar nga USB - qoftë PC ose ndonjë karikues USB celular. Meqenëse doja ta bëja atë të programueshme, me menutë dhe rregullimin e cilësimeve, vendosja e MCU ishte e pashmangshme në këtë projekt. ATMEGA328P IC (Nga e cila përbëhet çdo bord Arduino Uno) u zgjodh të ishte "truri" i qarkut (Duke folur për këtë, unë thjesht kisha shumë prej tyre). Kombinimi i disa pjesëve elektronike si RGB LED, çipi i matjes së kohës së ngarkimit dhe butonat e shtytjes, mundësuan lindjen e të gjithë projektit-Orë desktopi e ekranit LED me madhësi të vogël të programueshme.

Pra, pasi të kemi mbuluar entitetin e projektit, le ta ndërtojmë atë

Hapi 1: Ideja

Ideja
Ideja

Siç u përmend më parë, pajisja jonë përmban disa ekrane LED me pamje të mirë, ndriçim të ndryshueshëm të ngjyrës RGB LED, çip të matjes së kohës me ngarkesë të rrjedhshme, njësi të përshtatshme të furnizimit me energji USB dhe mbyllje me madhësi të vogël.

Le të përshkruajmë bllok -diagramin e funksionimit të pajisjes sipas pjesëve:

1. Njësia e Furnizimit me Energji:

Meqenëse pajisja funksionon në 5 volt DC, komponenti i furnizimit me energji elektrike përbëhet nga dy qarqe të veçanta:

  • Hyrja mikro -USB - Për furnizimin me energji të drejtpërdrejtë të ngarkuesit / PC.
  • 5V Qark rregullator linear i tensionit bazuar në LM7805 IC.

Qarku IC LM7805 është opsional, nëse nuk preferoni të zbatoni disponueshmëri të ndryshme të hyrjes së furnizimit me energji elektrike. Në pajisjen tonë, përdoret PSU Micro-USB.

2. Njësia e mikrokontrolluesit:

Mikrokontrolluesi ATMEGA328P, vepron si një "tru" i të gjithë pajisjes. Qëllimi i tij është të komunikojë me të gjithë qarkun periferik, të sigurojë të dhënat e nevojshme dhe të kontrollojë ndërfaqen e përdoruesit të pajisjes. Meqenëse mikrokontrolluesi i zgjedhur është ATMEGA328P, ne do të kemi nevojë për Atmel Studio dhe njohuri bazë C (Skemat dhe sekuencat e programimit përshkruhen në hapat e mëtejshëm).

3. Qarku i orës në kohë reale:

Qarku i dytë më i rëndësishëm në pajisje. Qëllimi i tij është të sigurojë të dhëna për datën dhe kohën, me një kërkesë për ruajtjen e tyre, pa asnjë varësi nga lidhja e fuqisë hyrëse, domethënë të dhënat e kohës po rifreskohen në mënyrë reale. Në mënyrë që komponenti RTC të jetë në gjendje të vazhdojë të ndryshojë të dhënat e kohës / datës, baterisë 3V të monedhës i shtohet qarkut. IC është DS1302, funksionimi i tij përshkruhet në hapa të mëtejshëm.

4. Ndërfaqja hyrëse - Çelësat e butonit të shtypjes:

Çelsat hyrëse PB sigurojnë ndërfaqen hyrëse për përdoruesin. Këta ndërprerës përpunohen në programin MCU dhe pajisjen kontrolluese të përcaktuar.

5. Ekrani i matricës LED

Ekrani i pajisjes përbëhet nga dy matrica LED alfanumerike HCMS-2902 të mbështjella me IC, secila IC ka 4 karaktere me matricë të vogël LED 5x7. Këto ekrane janë të thjeshta për t'u përdorur, komunikimi me 3 tela i mbështetur dhe i vogël-gjithçka që na nevojitet në këtë projekt.

6. Drita e prapme RGB:

Ndriçimi i ndriçimit të sfondit bazohet në LED të jashtëm RGB, të kontrolluar nga sinjalet PWM që vijnë nga MCU. Në këtë projekt, RGB LED ka gjithsej 4 kunja: R, G, B dhe të zakonshme, ku paleta e ngjyrave R, G, B kontrollohet përmes PWM nga MCU.

7. Buzzer:

Qarku i sinjalit përdoret si dalje e zërit, kryesisht për qëllime alarmi. Çelësi BJT përdoret për të siguruar rrymë të mjaftueshme në përbërësin e ziles, kështu që vëllimi i tij do të jetë mjaft i lartë për të zgjuar një person të gjallë.

Hapi 2: Pjesët dhe Instrumentet

Pjesë dhe Instrumente
Pjesë dhe Instrumente

I. Elektronikë:

A. Komponentët e Integruar dhe Aktivë:

  • 1 x ATMEGA328P - MCU
  • 2 x HCMS2902 - Shfaq AVAGO
  • 1 x DS1302 - RTC
  • 1 x 2N2222A - BJT (NPN)

B. Komponentët pasivë:

  • Rezistentët:

    • 5 x 10K
    • 1 x 180R
    • 2 x 100R
  • Kondensatorët:

    • 3 x 0.1uF
    • 1 x 0.47uF
    • 1 x 100uF
    • 2 x 22pF
  • 1 x RGB LED me 4 kunja
  • 1 x Zile
  • 1 x 32.768KHz Kristal

C. Lidhëset:

  • 1 x lidhës mikro-USB
  • 2 x 6-pin standard standard katran (100 milil) lidhës.
  • Lidhës 2 x 4 kunjësh standard (100 milil).
  • 1 x Kuti baterie me qeliza monedhe.

D. Të ndryshme:

  • 3 x Çelsat SPST Push-Button
  • Bateri 1 x 3V me monedhë.

E. PSU fakultative:

  • 1 x LM7805 - Rregullator linear
  • 2 x 0.1uF Kapak
  • 2 x 100uF Kapak

II Mekanike:

  • 1 x Shtojcë plastike
  • 4 x shtojca gome
  • 1 x bord prototip bashkimi
  • 1 x kokë MCU (Në rast të dështimit të mikrokontrolluesit)
  • 2 x bulona të vogla 8 mm
  • Rondele 2 x 8mm

III. Instrumentet dhe materialet:

  • Saldimi i telave
  • Tubat e tkurrjes
  • Kallaji i saldimit
  • Makine per ngjitjen e metalit
  • Prestar
  • Pincë
  • Piskatore
  • Bits stërvitje
  • Skedar me madhësi të vogël
  • Kaçavida të ndryshme
  • Kalibër
  • Multimetër
  • Breadboard (opsionale)
  • Kabllo Micro USB
  • Skedar me madhësi të mesme
  • Armë me ngjitës të nxehtë
  • Programues AVR ISP

IV Programimi:

  • Atmel Studio 6.3 ose 7.0.
  • ProgISP ose AVRDude
  • Microsoft Excel (Për krijimin e karaktereve të ekranit)

Hapi 3: Përshkrimi i skemave

Përshkrimi i skemave
Përshkrimi i skemave

Për ta bërë më të lehtë kuptimin e funksionimit të qarkut, hapi skematik ndahet në shtatë nëngrupe. Ju duhet të vini re, se emrat neto janë përcaktuar në faqen skematike gjithashtu përcaktojnë lidhjet midis nën-qarqeve të veçanta të pajisjes.

A. Bordi i Komponentëve kryesorë:

Siç u përmend më parë, të gjitha nën-qarqet e përshtatshme që duam të jemi "brenda" pajisjes, vendosen në një bord prototip të vetëm. Le të vazhdojmë me shpjegimin e funksionimit të qarqeve kryesore të vendosura në tabelë:

1. Qarku i mikrokontrolluesit:

MCU që përdoret në këtë projekt është një ATMEGA328P. Mundësohet nga një furnizim me energji të jashtme 5V, në këtë rast - lidhës mikro USB. Të gjitha kunjat e duhur I/O janë të lidhur sipas kërkesave të projektimit. Hartimi i portave I/O është i lehtë për t'u kuptuar, pasi të gjithë emrat neto janë përcaktuar saktësisht ashtu siç do të përdoren në hapin e programimit. MCU ka qark të thjeshtë rivendosjeje RC, i cili përdoret ose në sekuencën e programimit dhe fillimin e fuqisë.

Pjesa kryesore e MCU është qarku i programimit. Ekziston një lidhës programimi me 6 kunja - J5, sigurohuni që rrjetat VCC, GND dhe RESET janë të zakonshme për programuesin e jashtëm të ISP dhe bordin e përbërësve kryesorë.

2. Qarku i orës në kohë reale:

Qarku tjetër, është pjesa kryesore periferike në projekt. DS1302 është një IC i matjes së kohës së ngarkimit të rrjedhshëm, që siguron vlerat e kohës dhe datës së përpunuar në njësinë tonë të përpunimit. DS1302 komunikon me MCU përmes ndërfaqes me 3 tela, e ngjashme me komunikimin SPI me 3 tela, në linjat e mëposhtme:

  • RTC_SCK (Output): Kryen drejtimin dhe marrjen e mostrave të të dhënave që transmetohen në linjën SDO.
  • RTC_SDO (I/O): Linja e drejtimit të të dhënave. Vepron si hyrje në MCU kur të dhënat e kohës/datës po merren dhe si dalje kur të dhënat po transmetohen (Shih hapin e Programimit Essentials për shpjegime të mëtejshme).
  • RTC_CE: (Output): Linja e aktivizimit të transmetimit të të dhënave. Kur vendoset LART HIGH nga MCU, të dhënat janë gati për t'u transmetuar/marrë.

DS1302 kërkon një oshilator kristal të jashtëm 32.768KHz për sjelljen e duhur të qarkut. Për të shmangur zhvendosjen e madhe në sistemin e numërimit të qarkut (fenomenet e shtjellat janë thjesht të pashmangshme në këto lloje të qarqeve të integruara), është e nevojshme të vendosni dy kondensatorë kalibrues në secilën kunj kristali (Shih pjesët X1, C8 dhe C9 në skemat). 22pF ishte një vlerë optimale pas shumë eksperimenteve me masat e mbajtjes së kohës në këtë projekt, kështu që, kur të jeni gati për të bashkuar qarkun, sigurohuni që ekziston një mundësi për të zëvendësuar këta kondensatorë me ato me vlera të tjera. Por 22pF për tabelën me madhësi të vogël funksionoi mjaft mirë për lëvizje shumë të vogla (7 sekonda në muaj).

Komponenti i fundit por jo më pak i rëndësishëm në këtë qark-bateria me monedhë 3V duhet të vendoset në tabelë në mënyrë që të furnizojë energji të mjaftueshme me IC DS1302 në mënyrë që të vazhdojë funksionimin e tij të numërimit të kohës.

4. 8 Karaktere Matrica LED:

Shfaqja e pajisjes bazohet në IC-të e ekranit LED të Matricës 2 x 4 karaktere, të programuara përmes ndërfaqes me 3 tela, të ngjashme me qarkun RTC DS1302, me një ndryshim të vetëm, se linja e të dhënave që siguron (SDI) përcaktohet si dalje e MCU (Përveç nëse dëshironi të shtoni aftësia për të kontrolluar statusin në qarkun tuaj të ekranit). Ekranet kombinohen në një shtrirje serike 3-Wire, kështu që të dy IC-të veprojnë si një pajisje e vetme e ekranit, ku ekziston aftësia për ta programuar atë për të gjithë përkufizimin e karaktereve të ekranit (Shih kombinimin e serive SPI). Të gjithë emrat neto të qarkut, përputhen me lidhjet e duhura MCU - vini re se ka rrjeta të zakonshme, që krijojnë komunikim midis ekraneve dhe nuk ka nevojë të lidhni të dyja ndërfaqet e komunikimit të ekranit me MCU. Programimi dhe sekuenca e ndërtimit të personazheve përcaktohen në hapa të mëtejshëm.5. Qarku i Ndërfaqes së Përdoruesit:

Ndërfaqja e përdoruesit ndahet në dy nëngrupe-Sistemet hyrëse dhe dalëse: Sistemi i hyrjes: Pajisja në vetvete ka dhënë hyrjen e përdoruesit të përcaktuar si tre çelësa të butonave SPST, me rezistorë tërheqës shtesë, në mënyrë që të drejtojë logjikën e përcaktuar ose të Lartë ose të ULT MCU. Këta ndërprerës sigurojnë sistem kontrolli për të gjithë algoritmin e programuar, meqë ka nevojë për të rregulluar vlerat e kohës/datës, kontrollin e menysë, etj.

6. Sistemi i daljes:

Qarku A. Buzzer siguron dalje të zërit në të dyja gjendjet, ndërrimi i menusë pranon algoritmin e zërit dhe alarmit. Transistori NPN përdoret si ndërprerës, duke siguruar rrymë të mjaftueshme në zile, duke e bërë atë të tingëllojë në një itensitet të përshtatshëm. Buzzer kontrollohet drejtpërdrejt nga softueri i MCU. B. RGB LED përdoret si pjesë e dritës së prapme të pajisjes. Isshtë kontrolluar drejtpërdrejt nga MCU, me katër opsione për zgjedhjen e dritës së prapme: mënyrat e kuqe, të gjelbër, blu, PWM ose OFF. Vini re se rezistorët që janë të lidhur në seri me kunjat LED R, G dhe B kanë vlera të ndryshme, pasi secila ngjyrë ka intensitet të ndryshëm gjatë një rryme konstante. Për LEDS jeshile dhe blu ka të njëjtat karakteristika, kur e kuqja ka intensitet pak më të madh. Kështu LED i kuq është i lidhur me vlerën më të madhe të rezistencës - në këtë rast: 180Ohm (Shih Shpjegimin LED RGB).7. Lidhëset:

Lidhësit vendosen në tabelën kryesore në mënyrë që të mundësojnë komunikimin midis komponentëve të jashtëm të ndërfaqes siç janë: Ekrani, RGB LED, çelsat e hyrjes së energjisë dhe butonit, dhe bordit kryesor. Çdo lidhës i kushtohet qarkut të ndryshëm, kështu që kompleksiteti i montimit të pajisjes bie në mënyrë dramatike. Siç mund ta shihni në skemat, çdo rend i rrjetave lidhës është opsional dhe mund të ndërrohet, nëse e bën procesin e instalimeve elektrike shumë më të thjeshtë. Pasi të kemi mbuluar të gjitha konceptet e skemave, le të vazhdojmë në hapin tjetër.

Hapi 4: Saldimi

Bashkim
Bashkim
Bashkim
Bashkim
Bashkim
Bashkim

Ndoshta për disa prej nesh është hapi më i vështirë në të gjithë projektin. Për ta bërë shumë më të lehtë punën e pajisjes sa më shpejt të jetë e mundur, procesi i bashkimit duhet të përfundojë në sekuencën e mëposhtme:

1. MCU dhe lidhësi i programimit: rekomandohet të bashkoni kokën 28 pin në vend të vetë MCU në mënyrë që të jeni në gjendje të zëvendësoni IC MCU në rast dështimi. Sigurohuni që pajisja të jetë e programueshme dhe e ndezur. Rekomandohet të vendosni afishen e përshkrimit të pinit në lidhësin e programimit (Shih figurën e tretë).

2. Qarku RTC: pasi të keni bashkuar të gjitha pjesët e nevojshme, sigurohuni që kondensatorët e kalibrimit të zëvendësohen lehtë. Nëse dëshironi të përdorni kutinë e baterisë me monedhë 3V - sigurohuni që të përputhet me dimensionet e rrethimit të pajisjes.

3. Ekrani: Dy IC të ekranit duhet të ngjiten në tabelën e veçantë me madhësi të vogël (Figura 1). Pasi të keni bashkuar të gjitha rrjetat e nevojshme, është e nevojshme të përgatitni tela jashtë bordit (Figura 4): këto tela duhet të ngjiten dhe kryhen në anën e tabelës së ekranit, vini re se tensioni dhe stresi mekanik i aplikuar në tela nuk do të ndikojnë në lidhjet e saldimit në tabelën e ekranit.

4. Në telat nga hapi i mëparshëm, afishet me etiketë duhet të vendosen - kjo do ta bënte procesin e montimit shumë më të lehtë në hapin e mëtejshëm. Hapi opsional: shtoni një lidhës mashkullor me një kunj në çdo tel (stil Arduino).

5. Lidhni lidhësit e mbetur në tabelën kryesore, përfshirë përbërësit periferikë. Edhe një herë, rekomandohet të vendosni afishe me një përshkrim të kunjit për secilin lidhës.

6. Qarku i zhurmës: zilja ndodhet brenda pajisjes, kështu që duhet të ngjitet në tabelën kryesore, nuk ka nevojë për lidhësin ndërlidhës.

7. LED RGB: Për të kursyer hapësirën e bordit kryesor, unë kam bashkuar rezistencat e serive në kunjat LED, ku secili rezistencë korrespondon me ngjyrën e tij të përputhshme dhe kunjin e duhur MCU (Figura 5).

Hapi 5: Montimi

Montimi
Montimi
Montimi
Montimi
Montimi
Montimi

Ky hap përcakton pamjen e projektit - elektrike dhe mekanike. Nëse të gjitha shënimet e rekomanduara janë marrë parasysh, procesi i montimit bëhet shumë i lehtë për t'u kryer. Sekuenca e mëposhtme hap pas hapi siguron informacion të plotë të procesit:

Pjesa A: Shtojca

1. Shponi tre vrima, sipas diametrit të çelësit të butonit (3mm në këtë rast).2. Stërvitni një vrimë të dedikuar për zile në anën e rrethimit. Mund të përdoret çdo diametër i dëshiruar i stërvitjes. Stërvitni vrima të vogla si bazë për bluarje sipas lidhësit USB që duhet të përdorni (Mikro USB në këtë rast). Pas kësaj, kryeni bluarje me skedarin e vogël, që të përputhet me dimensionet e lidhësit. Stërvitni vrima relativisht të mëdha si bazë për bluarje. Kryeni bluarje me një skedar me madhësi të mesme, sipas dimensioneve të ekranit. Sigurohuni që IC -të e ekranit të jenë të pranishme në anën e jashtme të rrethimit.5. Stërvitni vrima me madhësi të mesme në pjesën e poshtme të pajisjes, sipas diametrit LED RGB. Pjesa B - Shtojcat:

1. Lidhni dy tela në secilën prej tre butonave (GND dhe sinjal). Rekomandohen ngjitëse të etiketave dhe lidhës të vetëm me kunja në tela. Bashkangjitni katër tela të përgatitur në kunjat LED RGB. Vendosni afishe etiketash dhe tuba tkurrës në nyjet e saldimit.3. Bashkangjitni katër këmbë gome në pjesën e poshtme të pajisjes. Pjesa C - Lidhja e pjesëve:

1. Vendoseni RGB LED në pjesën e poshtme të rrethimit, lidheni atë me lidhësin e dedikuar në tabelën kryesore. Bashkojeni atë me ngjitësin e nxehtë.2. Vendosni tre ndërprerës të butonave, lidhini ato në lidhësin e dedikuar në tabelën kryesore, ngjitini me zam të nxehtë. Vendosni lidhësin USB, lidheni atë me kunjat e furnizimit me energji të lidhësit të programimit (VCC dhe GND). Sigurohuni që polariteti i linjave të furnizimit me energji të përputhet me pjesët e lidhura. Bashkojeni me zam të nxehtë.4. Vendosni tabelën e ekranit, lidheni atë me lidhësin e dedikuar. Bashkangjiteni atë me ngjitësin e nxehtë. Shënime:

1. Rekomandohet shtimi i çifteve të bulonave në rrethimin e tabelës kryesore dhe kapakun e sipërm (Siç tregohet në këtë rast).2. Për të shmangur dështimin e telave të prishur, merren parasysh ato me pamjen e tyre brenda mbylljes.

Hapi 6: Hyrje e shkurtër e Programimit

Hyrje e shkurtër e programimit
Hyrje e shkurtër e programimit
Hyrje e shkurtër e programimit
Hyrje e shkurtër e programimit
Hyrje e shkurtër e programimit
Hyrje e shkurtër e programimit

Pasi të jenë bashkuar të gjitha pjesët, rekomandohet të kryeni testimin fillestar të pajisjes para se të vazhdoni në hapin përfundimtar të montimit. Kodi MCU është shkruar në C, dhe ATMEGA328P është programuar përmes çdo programuesi ISP (Ka lloje të ndryshme të pajisjeve programuese Atmel: AVR MKII, AVR DRAGON etj. - Unë kam përdorur programues të lirë USB ISP nga eBay, që kontrollohet nga programi ProgISP ose AVRDude). Mjedisi i programimit duhet të jetë Atmel Studio 4 dhe më lart (rekomandoj fuqimisht versionet më të reja të softuerit). Nëse përdoret programues i jashtëm, jo Atmel Studio, i natyrshëm, është e nevojshme t'i jepet shteg skedarësh hex softverit të programimit (Zakonisht gjendet në dosjen Debug ose Release të projektit). Sigurohuni që para se të vazhdoni me hapin e montimit, pajisja mund të programohet, dhe çdo proces themelor i projektimit dhe krijimit të projektit të dedikuar AVR bazohet në mikrokontrolluesin ATMEGA328P (Shih tutorialin Atmel Studio).

Hapi 7: Përshkrimi i Kodit

Përshkrimi i Kodit
Përshkrimi i Kodit
Përshkrimi i Kodit
Përshkrimi i Kodit

Algoritmi i kodit Decice shtresohet në dy shtresa gjysmë të ndara: 1. Shtresa kryesore: Komunikimi me qarqet periferike, përcaktimi i operacioneve të pajisjes, inicimi dhe deklarimet e komponentëve.2. Shtresa e ndërfaqes: Ndërveprimi përdorues-pajisje, funksionaliteti i menysë, rregullimi i orës/ziles/ngjyrës/alarmit. Sekuenca e programit përshkruhet në Pic. 1, ku secili bllok i përgjigjet gjendjes MCU. Programi i përshkruar vepron si "sistem operativ" bazë që siguron ndërfaqe midis harduerit dhe botës së jashtme. Shpjegimi i mëposhtëm përshkruan funksionimin thelbësor të programit sipas pjesëve: Pjesa A: Shtresa kryesore:

1. Inicimi i MCU I/O: Para së gjithash, ka nevojë për inicimin e komponentëve të harduerit:- Konstantet e përdorura nga Kodi.- Portat I/O- Ndërfaqja.- Deklaratat e komunikimit periferik.

2. Funksionet themelore të përgjithshme: Disa funksione përdoren nga blloqe kodesh të veçantë, përcaktojnë operacionet në kunjat që kontrollohen nga softueri:- Aktivizo/Çaktivizo komunikimin e RTC dhe ekranit të ekranit.- Krijimi/çaktivizimi i zërit të zhurmshëm. funksionet lart/Clock down.- Shfaq funksionet e krijimit të personazheve.3. Fillimi periferik: Pasi të jenë konfiguruar portat I/O, komunikimi midis përcaktimit të funksioneve të qarqeve bëhet. Kur të përfundojë - MCU fillon inicimin e qarqeve RTC dhe ekranit duke përdorur funksionet që u përcaktuan më lart.

4. Përkufizimi i funksioneve bazë: Në këtë fazë, pajisja është e vendosur dhe e gatshme për të kryer komunikime me disa qarqe periferike. Këto funksione përcaktojnë:- Ndërroni kalimin e kontrollit- Funksionimi i RGB LED (Sidomos PWM)- Gjenerator i valës katrore të zhurmës

5. Funksionet e Shfaqjes: Nuk gjeta shumë në internet në lidhje me IC -të HSMS që kam përdorur, kështu që e kam shkruar bibliotekën e tij. Funksionet e ekranit sigurojnë funksionalitet të plotë të shfaqjes së karakterit, duke përfshirë shfaqjen e karaktereve ASCII dhe çdo numër të plotë. Funksionet shkruhen në mënyrë të përgjithësuar, kështu që nëse ka nevojë të thërrisni funksionet e ekranit nga ndonjë pjesë e kodit, është e lehtë t'i përdorni ato pasi ato përgjithësohen me anë të funksionimit (Për shembull: Ekrani me vargje, shfaqja me një karakter, etj.).

6. Funksionet e funksionimit RTC: Të gjitha funksionet RTC janë shkruar në mënyrë të përgjithësuar (Ngjashëm me funksionet e ekranit të vendosur) sipas funksionimit të DS1302 IC. Kodi bazohet në bibliotekën e shkruar, të cilat janë të disponueshme në shumë variacione në gitHub. Siç do ta shihni në kodin përfundimtar, funksionet e ekranit dhe RTC përfshihen në skedarët e veçantë.c dhe.h. Pjesa B - Shtresa e Ndërfaqes:

1. Funksioni kryesor: në pjesën e pavlefshme main (), ekziston deklarimi i të gjitha funksioneve bazë të inicimit. Menjëherë pas fillimit të të gjithë përbërësve, MCU hyn në lak të pafund, ku funksionaliteti i pajisjes kontrollohet nga një përdorues.

2. Ndërprerës në kohë reale, dritë prapa dhe kontroll i ekranit: Ndërsa funksionon në një lak të pafund, MCU kryen rifreskim në secilën pjesë të pajisjes. Zgjedh se cilat të dhëna do të shfaqen, cili buton është shtypur dhe cila mënyrë e dritës së pasme është zgjedhur.

3. Funksionet e menusë së përdoruesit: Këto funksione kanë formë të ngjashme me pemën (Shih Figurën X), ku sistemi i menysë dhe hierarkia përcaktohet si një makinë shtetërore. Çdo makinë shtetërore e kontrolluar nga një hyrje e përdoruesit - çelësi i butonit, kështu që kur shtypet butoni i përshtatshëm - makina e gjendjes do të ndryshojë vlerën e saj. Shtë projektuar në atë mënyrë që çdo ndryshim në pajisjen e kryer në meny, të ndryshohet menjëherë.

4Ndërrimi i menysë së përdoruesit: kur të jepet hyrja e përdoruesit, gjendja e menusë duhet të ndryshojë gjendjen e saj. Pra, këto funksione sigurojnë kontroll të varur nga përdoruesi mbi një makinë shtetërore. Në këtë rast të veçantë: tjetër, i mëparshëm dhe në rregull.

Hapi 8: Kodi përfundimtar dhe skedarët e dobishëm

Dhe kjo eshte! Në këtë hap, mund të gjeni të gjithë skedarët që mund t'ju nevojiten:- Skemat elektrike- Kodi burimor i plotë- Ndërtuesi i karaktereve të ekranit Karakteristika opsionale: Ekzistojnë një sërë personazhesh që janë në dispozicion për t'u shfaqur në bibliotekën e IC-ve të ekranit, por disa nuk përfshihen Me Nëse dëshironi të krijoni karaktere vetë, shtoni gjendjen e rastit me një referencë ASCII në funksionin Print_Character ('') (Shih funksionet display.c). Shpresoj se do ta gjeni të dobishme këtë Instructable:) Faleminderit për leximin!

Recommended: