INHOUDSOPGAWE:
- Stap 1: Die noodsaaklikhede (nie regtig nie)
- Stap 2: Die spanningsverdeler
- Stap 3: Voltage Divider Ladder
- Stap 4: Opsomming
Video: Hoe om baie skakelaars met een MCU -pen te lees: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:29
Het u al ooit 'n projek of projekte ontwrig en die projek groei en groei, terwyl u nog meer dinge daarby voeg (ons noem dit 'n Feaping Creaturism)? By 'n onlangse projek het ek 'n frekwensiemeter gebou en 'n vyffunksie -seingenerator/frekwensiesintetiseerder bygevoeg. Ek beland gou met meer skakelaars as wat ek beskikbare penne oor het, so wat moet 'n man doen?
Ek het egter spoedig nog sewe skakelaars op my Funbox gehad (ja, dit is wat ek my funksiegenerator genoem het … ek weet, ek het geen kreatiwiteit nie) en hier is 'n kort instruksie wat u wys hoe u dieselfde kan doen. Dit vereis geen skofregisters of spesifieke IC's nie. In werklikheid is dit ook nie 'n mikrobeheerder nodig nie, as diskrete halfgeleiers hoe jy rol. Hier is een manier waarop u verskeie skakelaars kan lees/bestuur met 'n enkele pen op u AVR (of ander mikrobeheerder … ek het gehoor dat daar ander mikrobeheerders is as AVR's, maar ek kan my nie voorstel nie …).:)
Stap 1: Die noodsaaklikhede (nie regtig nie)
Om dit te bereik, benodig u 'n paar komponente. Dit help om 'n menigte skakelaars te hê wat u moet bestuur. U benodig ook weerstande en óf 'n mikrobeheerder met ADC (analoog-na-digitale omskakeling), óf op 'n ander manier wat u wil aandui dat 'n skakelaar geaktiveer is en watter skakelaar dit is.
As u wil, kan u 'n spanningsgestuurde ossillator gebruik om dit aan te dui, miskien met 'n paar blinken ligte, of alternatiewelik met klank. In hierdie artikel gaan ek voorgee dat ons 'n AVR gebruik, maar in u wêreld kan u voorgee wat u ook al gelukkig maak. Ek mis Bob Ross.
Stap 2: Die spanningsverdeler
In wese is die manier waarop ons dit gaan doen deur 'n tegniek en stroombaan te gebruik wat 'n spanningsverdeler genoem word. Spanningsverdelers verdeel, soos u al vermoed het, die spanning V, in,, deur 'n waarde wat u bepaal. U kan die spanning met verskillende komponente verdeel, insluitend kapasitors en induktors, maar hier gaan ek dit doen met die goeie weerstand. Die idee wat ons doen, is om twee komponente in serie te plaas wat elkeen afsonderlik 'n spanningsval oor die komponent sal veroorsaak. Kyk na die eerste prentjie as ek nie sin het nie. Daar is 'n potensiële verskil van 9V van spoor tot spoor. Tussen 9V en 0V is daar twee weerstande in serie. Elkeen hiervan sal 'n spanningsval oor homself ondervind, afhangende van die weerstand, soos u waarskynlik onthou van V = IR. As u 'n spanningsmeting tussen die twee weerstande doen, kry u 'n waarde tussen 9V en 0V, afhangende van hoeveel spanning oor die eerste weerstand gedaal het en hoeveel daar oor is om oor die 2de weerstand te daal, voor 0V. Daar is 'n eenvoudige formule vir die berekening van die spanningsval oor 'n weerstand in hierdie situasie, en dit lyk so. Laat die spanning oor weerstand 1 (R1) V1 wees en die spanning oor weerstand twee (R2) V2. Aangesien ek nie meer formatering kan gebruik nie, kyk na prentjie 2 hieronder vir die formule … Dus, in ons resistiewe verdeler, kan die Vout -spanning bepaal word deur ons formule vir V2 (aangesien ons GND na 0V verwys). Wat het dit te doen met die feit dat 'n klomp skakelaars uit een pen opgespoor word? Blaai om, ek wys jou!
Stap 3: Voltage Divider Ladder
Gestel ons het al ons skakelaars, miskien ses of agt of sestien, almal gekoppel via weerstande wat elkeen as 'n spanningsverdeler optree, sodat wanneer die toestand van die skakelaarpen verander, die spanning gelees word en gebaseer is op die spanningsvlak kan weet watter skakelaar pas geaktiveer is. Kyk hieronder. Op die onderstaande prentjie het ek twee blokke skakelaars verbind. Die boonste blok het twee skakelaars, en die onderste blok het vyf skakelaars. U kan u afsonderlike skakelaars, kortstondige, tasbare, ens. Skakelaars op dieselfde manier verbind. Die belangrikste ding om op te let is die weerstand waarmee u skakelaar gekoppel is. In my voorbeeld het ek die weerstand van die volgende weerstand byna verdubbel om 'n spanningsgaping te skep wat maklik is om te meet, en nie die fout van die skakelaar voor of daarna nie. As u nog nie vantevore opgemerk het nie, kyk weer en besef dat ons terug is na ons ou vriend, die weerstandspanningsverdeler. Die eerste weerstand, die 10k ohm, is gekoppel aan 5V en die 2de weerstand - die weerstand wat V sal bepaaluit vir SWITCH_ADC -pen, is aan elke skakelaar gekoppel en daarom word elke skakelaar geassosieer met 'n spesifieke Vout -spanning wat gelees kan word vanaf die ADC -pen wat by SWITCH_ADC gekoppel is. Bepaal vervolgens die verwagte Vout van elke skakelaar so
Vout = Vin * (R2 / (R1 + R2))
vir skakelaar een:
Vout = 5V * (500 / (10000 + 500)) = 5 * 0,048 = 0,24V of 240 mV
vir skakelaar twee:
Vout = 5V * (2200 / (10000 + 2200)) = 5 * 0,18 = 0,9V of ~ 900mV
ensovoorts.. Vervang u eie waardes vir R2 as u slegs sekere weerstande byderhand het … sit u in die spanning wat van 'n naburige skakelaar verwag word. Ek het gevind dat die maklikste ding om te doen, is om die skeidingsleer te bou en 'n multimeter/voltmeter op die ADC -pen te plaas en op elke pen te druk om te sien watter waardes u kry. Hulle moet redelik in lyn wees met wat u bereken. As u al die verwagte spanningswaardes van elke skakelaar met 'n spesifieke weerstand het, kan u u MCU die ADC -pen laat lees en dit vergelyk met u bekende waardes om te bepaal watter skakelaar ingedruk is. Sê byvoorbeeld dat u 'n onderbrekingsdiensroetine geregistreer het wat gebel sal word wanneer daar 'n verandering op die ADC -pen voorkom. Binne die ISR kan u die ADC lees en die waarde vergelyk met u skakelbord. As u 'n 8-bis ADC-waarde gebruik, word u spanning omgeskakel in 'n getal tussen 0 en 255 wat ooreenstem met 'n spanning tussen 0V en 5V. Dit veronderstel dat u u ADC op hierdie manier gekonfigureer het.
Stap 4: Opsomming
Dus, nou moet u weet hoe om spaarsamig te wees met die gebruik van GPIO -penne vir skakelaars. As u te min GPIO -penne het, of u amper nie kan begin nie, of as u besef dat u 'n groot aantal skakelaars gaan gebruik, is die weerstandsverdeler die manier om u GPIO -penne te stoor, terwyl u steeds 'n robuuste meganisme om toegang tot die skakelaar op te spoor.
Aanbeveel:
Hoe om DHT -data op LCD te lees met behulp van Raspberry Pi: 6 stappe
Hoe om DHT -data op LCD te lees met behulp van Raspberry Pi: Die temperatuur en die relatiewe humiditeit is belangrike weerdata in die omgewing. Die twee kan die data wees wat 'n mini -weerstasie lewer. U kan u temperatuur en relatiewe humiditeit met Raspberry Pi lees met verskillende variëteite
Hoe om die MPX5010 differensiële druksensor met Arduino te lees: 5 stappe
Hoe om die MPX5010 differensiële druksensor met Arduino te lees: Die manier waarop ek die kode geskryf het, is so dat dit maklik verander kan word om by 'n ander druksensor te pas. Verander net die volgende konst veranderlikes in die kode gebaseer op die waardes van die gegewensblad vir enige druksensor: "sensorOffset"
IKEA kragoplaaibak met individuele skakelaars: 6 stappe (met foto's)
IKEA-laaibak met individuele skakelaars: So het ek die ander dag die instruksies gesien oor hoe om 'n maklike kragstasie te maak met behulp van 'n IKEA-boks: Die-IKEA-laaibak --- geen kabel-gemors nie! Ek het beslis nodig gehad iets soortgelyks, so ek het een van die bokse by IKEA gaan koop, maar dit het in my kop gestaan
Drie-rigting en vier-rigting skakelaars-hoe dit werk: 6 stappe
Drie-rigting en vier-rigting skakelaars-hoe dit werk: 'n Drieweg-skakelaar is baie eenvoudig vir baie mense wat Instructables.com besoek, maar dit is 'n raaisel vir baie ander. Om te verstaan hoe die kring werk, bevredig nuuskierigheid. Dit kan ook help om 'n driewegskakelaar te diagnoseer wat nie werk nie omdat iemand
Baie eenvoudig Tog 'n baie effektiewe grap (rekenaarprank): 3 stappe
Baie eenvoudig … Tog 'n baie effektiewe grap (rekenaarprankie): hierdie instruksie is baie eenvoudig, maar tog baie effektief! Wat sal gebeur, is: U verberg al die ikone op die lessenaar se lessenaar. Die slagoffer sal skrik as hy die rekenaar sien nadat u die grap gemaak het. Dit kan die rekenaar op geen manier benadeel nie