Turinio apžvalga:
1 Infraraudonųjų spindulių signalo siųstuvo principas
2 Infraraudonųjų spindulių signalo siųstuvo ir imtuvo atitikimas
3 Infraraudonųjų spindulių siųstuvo funkcijos įgyvendinimo pavyzdys
1 Infraraudonųjų spindulių signalo siųstuvo principas
Pirmasis yra pats įrenginys, skleidžiantis infraraudonųjų spindulių signalą, kuris paprastai atrodo taip:
Nuotraukoje esančio infraraudonųjų spindulių diodo skersmuo yra 3 mm, o kito - 5 mm.
Jie beveik lygiai tokie patys kaip ir šviesą skleidžiantys šviesos diodai, todėl ilgesni kaiščiai jungiami prie teigiamo poliaus, o kitas – su neigiamu.
Paprasčiausia valdymo grandinė yra pridėti 1k srovės ribojimo rezistorių prie teigiamos gatvės 3,3 V, o tada prijungti neigiamą elektrodą prie mikro valdiklio IO.Kaip parodyta žemiau:
2 Infraraudonųjų spindulių signalo siųstuvo ir imtuvo atitikimas
Tai pasakęs, kitame straipsnyje su jumis turiu ištaisyti klaidą.
Aukščiau esančiame paveikslėlyje paminėta, kad siųstuvo ir imtuvo signalo lygiai yra priešingi.Tai yra tas pats, kas aukščiau esančiame paveikslėlyje raudonuose ir mėlynuose laukeliuose apvestas turinys.
Tiesą sakant, tikroji bangos forma mėlyna siųstuvo dalis nėra paprastas aukštas 0,56 ms lygis.Atvirkščiai, tai 0,56 ms 38 kHz pwm banga.
Faktinė išmatuota bangos forma yra tokia:
Paveikslėlyje pateiktos siųstuvo bangos spalvos dalies bangos formos detalės yra tokios:
Matyti, kad šios tankios kvadratinės bangos dažnis yra 38kHz.
Štai santrauka: infraraudonųjų spindulių nuotolinio valdymo pulto siųstuvo ir imtuvo atitikimas:
Kai siųstuvas išveda 38 kHz kvadratinę bangą, imtuvas yra žemas, kitaip imtuvas yra aukštas
3 Infraraudonųjų spindulių siųstuvo funkcijos įgyvendinimo pavyzdys
Dabar pereikime prie programavimo praktikos.
Remiantis ankstesne įžanga, žinome, kad norėdami įgyvendinti infraraudonųjų spindulių nuotolinio valdymo pulto funkciją, pirmiausia turime suvokti dvi pagrindines funkcijas:
1 38kHz kvadratinės bangos išvestis
2 Valdykite 38 kHz kvadratinę bangą, kad įjungtumėte ir išjungtumėte norimu laiku
Pirmasis yra 38 kHz kvadratinės bangos išvestis.Mes tiesiog naudojame pwm bangą, kad ją sukurtume.Čia turime naudoti laikmačio pwm funkciją.Čia naudoju STM32L011F4P6 mažos galios lustą.
Pirmiausia naudokite kodo generavimo įrankio artefaktų kubą, kad sugeneruotumėte kodą:
Inicializacijos kodas:
Tada yra funkcija įjungti arba išjungti pwm bangą pagal kodavimo taisykles, kuri įgyvendinama naudojant laikmačio pertraukimus, o tada pakeisti pwm bangos įjungimo arba išjungimo trukmę modifikuojant kitos bangos atvykimo laiką. nutraukti:
Vis dar yra keletas užkoduotų duomenų informacijos, kuri čia nebus paskelbta.Jei jums reikia daugiau šaltinio kodo, galite palikti pranešimą ir kuo greičiau pateiksiu jums išsamų kodą.
Paskelbimo laikas: 2022-02-24