1, riistvara arhitektuur: mitme seadme draiverid ja signaali sünkroonimine
Segmenteeritud vedelkristallekraani mitme seadmega ekraan tugineb riistvaratasemel multi COM (common end) ja multi SEG (segment end) disainile. Võttes näiteks 4-kohalise LCD segmendikoodiekraani, sisaldab see tavaliselt 4 COM-porti ja mitut SEG-porti, kusjuures iga COM-SEG-i kombinatsioon vastab kuvaüksusele (nt number või ühiku sümbol). Näiteks teatud segmendikoodiekraani mudel juhib 4 digitaalset bitti läbi 4 COM-pordi, kasutades samal ajal täiendavaid SEG-porte ühikusümbolite (V/A/Hz) kuvamise juhtimiseks.
Peamised riistvara parameetrid:
Töö: määrake COM-portide arv. Näiteks 1/4 Duty tähendab, et 4 COM-porti juhitakse vaheldumisi, kusjuures iga pordi töötsükkel on 25%, mis sobib 4-kohalise kuva jaoks.
BIAS (Bias Ratio): mõjutab kontrasti ja juhtimispinget . 1/3 BIAS tähendab, et juhtpinge on 1/3 tööpingest, mis võib vähendada energiatarbimist ja parandada kuva stabiilsust.
Pinge stabiilsus: vedelkristallmolekule peavad juhtima vahelduvvoolu signaalid ja alalisvoolu nihe võib põhjustada ekraani hägusust. Näiteks teatud projektis kasutatakse STM32F103C8T6 mikrokontrollerit, et genereerida taimeri kaudu täpseid vahelduvvoolu ruutlaine signaale, tagades stabiilse pingeerinevuse 3,3 V ja vältides vedelkristalli molekulide vananemist.
Tüüpilised rakenduse stsenaariumid:
Võimsuse jälgimise seadmed: see peab kuvama samaaegselt selliseid parameetreid nagu pinge (V), vool (A) ja võimsus (W). Teatud nutikas arvesti kasutab 8-bitise segmendi koodiekraani, mis kuvab sünkroonselt 4 numbrikomplekti (nt 220 V, 5,6 A) ja 3 ühiku sümbolit 8 COM-pordi ja 32 SEG-pordi kaudu.
Meditsiiniline monitor: selliste parameetrite kuvamisel nagu südame löögisagedus (bpm) ja vere hapnik (SpO2%), tuleb eri andmetüüpe eristada mitme COM-pordi kaudu. Näiteks on teatud monitori mudelil 1/8 Duty disain, mis toetab 8 numbri ja 4 ühiku sümboli sõltumatut juhtimist.
2, draiveri loogika: dünaamiline skannimine ja andmete kaardistamine
Segmendikoodi LCD-ekraani mitme ühikuga kuvamine tuleb saavutada dünaamilise skaneerimisega. Põhiloogika on COM-portide korduvkasutamine-ajajagamisel, kuvasisu kiire vahetamine ja inimese visuaalse taju püsivusefekti kasutamine stabiilsete kujutiste moodustamiseks. Konkreetsed sammud on järgmised.
Andmete kaardistamine: teisendage kuvatavad numbrid ja ühikusümbolid segmendikoodi andmeteks. Näiteks numbri "8" segmendi kood on 0x7F (vastab täielikult valgustatud segmentidele a-g) ja ühiku "V" segmendi kood on 0x01 (ainult valgustatud segment a).
Dünaamiline skannimine: aktiveerige COM-pordid fikseeritud tsüklina (nt 1 ms) ja saatke vastavad SEG-andmed. Näiteks 4-kohalisel ekraanil aktiveeritakse COM1-COM4 vaheldumisi, värskendades iga kord ainult praegusele COM-pordile vastavat numbrit ja ühikut.
Kontrastsuse juhtimine: optimeerige ekraani jõudlust, reguleerides sõidupinget või töötsüklit. Näiteks tugevas valguses reguleeris teatud projekt BIAS-i 1/3-lt 1/4-le, suurendas kontrasti 1500:1-ni ja tagas, et ühikute sümbolid oleksid selged ja eristatavad.
3, Tarkvara programmeerimine: mitme ülesande haldamine ja andmete värskendamine
Mitme seadmega kuvamise tarkvararakendus peab lahendama kaks peamist väljakutset: reaalajas{0}}andmed ja kuva sünkroonimine. Järgmised on peamised optimeerimisstrateegiad.
Katkestamisega juhitud skannimine: perioodilise skannimise saavutamiseks ja põhiprogrammi blokeerimise vältimiseks kasutatakse taimeriga katkestusi. Näiteks seab projekt 1 ms taimeri katkestuse, mis värskendab iga kord ühe COM-pordi andmeid ja lõpetab täisekraani värskenduse 4 ms jooksul.
Topeltpuhverdusmehhanism: kasutades kahte kuvapuhvrit (esiplaan/taust), kasutatakse esiplaani puhvrit praeguse kuva jaoks ja taustapuhvrit andmete värskendamiseks. Kui värskendamine on lõpule viidud, lülitage puhver läbi lipu, et vältida skannimisprotsessi ajal andmete mutatsioonidest põhjustatud virvendust.
Ühiku sümbolite dünaamiline ümberlülitamine: laadige ühiku sümbolid dünaamiliselt parameetritüüpide alusel. Näiteks sageduse mõõtmise stsenaariumide korral, kui sisendsignaal tuvastatakse ruutlainena, lülitub seade automaatselt "V"-lt "Hz"-le.
Korpus: intelligentne sagedusmõõtur
Projekt põhineb STM32F103 ja HT1621 draiveri kiipidel, et saavutada ruutlaine sageduse mõõtmine ja kuvamine. Tarkvaraprotsess on järgmine:
Sageduse mõõtmine: kasutage taimerit, et tabada sisendsignaali tõusev serv, arvutada periood ja teisendada see sageduse väärtuseks.
Andmete dekomponeerimine: jaotage sagedusväärtused tuhandeteks, sadadeks, kümneteks ja numbriühikuteks.
Ühiku hinnang: kui sagedus on suurem kui 1 kHz, kuvab ühik "kHz"; Vastasel juhul kuvage 'Hz'.
Ekraani värskendus: saatke SPI-liidese kaudu numbri- ja ühikusegmendi koodi andmed HT1621-le ja käivitage 4-kohaline LCD-ekraan sünkroonseks värskendamiseks.
4, optimeerimisstrateegia: parandage kuva kvaliteeti ja töökindlust
Häirevastane disain: tugevates elektromagnetilistes keskkondades (nt tööstusobjektid) kasutatakse LCD ja MCU ühendamiseks varjestatud juhtmeid ning mürahäirete vähendamiseks lisatakse toiteallika otsa magnethelmeste filtreerimine.
Madala temperatuuri kompensatsioon: -20 kraadi juures võib vedelkristalli molekulide aktiivsuse vähenemine põhjustada kontrasti vähenemist. Suurendades ajamipinget (näiteks 3,3 V-lt 3,6 V-le) või lisades eelsoojendusloogika (kuvatakse käivitamisel madala kontrastsusega ja naaseb järk-järgult normaalväärtustele), saab probleemi lahendada.
Madala energiatarbega optimeerimine: akutoitega seadmetes kasutatakse skannimissageduse dünaamilise reguleerimise strateegiat. Näiteks kui toimingut ei toimu, vähendab skannimissageduse vähendamine 1 kHz-lt 100 Hz-le energiatarbimist 90%, säilitades samal ajal kuva sisu riistvara hoideahelate kaudu.