Innholdsfortegnelse:
- Trinn 1: Joystick -porten
- Trinn 2: Joystick -port i VB
- Trinn 3: Implementer det ved å bruke den parallelle porten under DOS
- Trinn 4: Fest sirupen til LPT
- Trinn 5: Bruk den
Video: Enkel og billig analog til digital omformer: 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:26
Fra den tiden ADC var dyre og sjeldne, kommer en maskinvare-programvareløsning for datainnsamling for PC-er. Basert på den gamle joystick-porten fra IBM-kompatible, er en teknikk for å utløse en monostabil multivibrator en resistiv transduser (termistor, fotocelle, strekkmåler, osv.) Og deretter telle hvor mange sykluser den passerer før multivibratorens utgang går høyt ganske god enkel å implementere på de fleste PC -plattformer og på de fleste språk. En VisualBasic og Qbasic prøvefiler vises.
Trinn 1: Joystick -porten
I mange år kom mange hjemmekompatible PC -er med en joystick -port som hadde X -akser, Y -akser, A & B -knapper, signalpinner. Den lille DB-15-kontakten er tilgjengelig på adressen 200h og 201h. Selve joysticken var bare to potensiometer og to knapper. Inne på hovedkortet til PC -en ble det funnet to retriggerbare monostabile multivibratorer (RMM for korte) med faste kondensatorer og IN/OUT -pinner. RC -tidskonstanten ble satt av potensiometrene og kondensatorene. For å starte signalkonvertering, ville du lage en SKRIV til portadresse 200t og deretter begynne å telle til du blir litt HØY ved å gjøre en LES til portadresse 200t. Dette kan implementeres på alle språk (basic, pascal, c).
Trinn 2: Joystick -port i VB
Dette er en eksempelkode jeg brukte til å teste søppelstyrespaken min: Private Sub Timer1_Timer () Dim V, H As Integer Out & H201, & HFF For H = 1 To 3000 If (Inp (& H201) And & H1) / & H1 = 0 Then Exit For Neste H Horisontal. Tekst = H Ut & H201, & HFF For V = 1 Til 3000 Hvis (Inp (& H201) Og & H2) / & H2 = 0 Avslutt deretter for neste V Vertikal. Tekst = V Hvis (Inp (& H201) Og & H10) / & H10 = 0 Deretter Shape1. FillColor = & HFF If (Inp (& H201) And & H20) / & H10 = 0 Then Shape2. FillColor = & HFF If (Inp (& H201) And & H10) / & H10 = 1 Then Shape1. FillColor = & HC0C0C0 If (Inp (& H201) Og & H20) / & H20 = 1 Deretter fungerer Shape2. FillColor = & HC0C0C0 Shape3. Left = H Shape3. Top = VEnd Sub Programmet fungerer bare hvis du har en ekte joystick festet til PCen. De horisontale og vertikale tekstboksene viser en verdi relatert til X- og Y -bevegelser på pinnen din. Også en firkant vil bevege seg rundt i en større boks for å representere bevegelsene dine. Ved å trykke på A- og B -knappene blir de grå sirklene lest. Eksempelkompilert EXE -fil, kildekoden og INPOUT32. DLL -biblioteket er i. RAR -filen.
Trinn 3: Implementer det ved å bruke den parallelle porten under DOS
74 LS 123 er det jeg brukte for å få det samme systemet som joystickporten. Den har to RMM. I PDF -filen kan du se databladet og en enkel krets for å feste til parallellporten. Jeg er en Qbasic -fan (fordi den er allment tilgjengelig), så koden er skrevet i den. Fremgangsmåten er den samme som i VB-prøven: LPTdata = & H378 LPTstatus = LPTdata + 1: LPTcontrol = LPTdata + 2YMAXX = 500SCREEN 2LINE (9, 1)-(630, 170),, B, & H3333VIEW (10, 2)- (629, 169) WINDOW (0, YMAXX)-(620, 0) MAXX = 620DIM D (MAXX) WILE INKEY $ = "" OUT LPTcontrol, & H1 OUT LPTcontrol, & H0 FOR Y = 1 TO YMAXX IF (INP (LPTstatus) AND & H10) / & H10 = 1 SLUTT SÅ FOR NESTE Y LOCATE 23, 1 UTSKRIFT BRUKER "####"; Y LINE (0, 0) - (MAXX, YMAXX), 0, BF FOR I = 1 TO MAXX LINE (I, D (I - 1)) - (I, D (I)) D (I - 1) = D (I) NESTE ID (MAXX) = YWEND En utgangspinne brukes til å utløse MMR og en inngangspinne for å lese utgangen fra den.
Trinn 4: Fest sirupen til LPT
Systemet er implementert som halv maskinvare og halv programvare. Konverteringen av en variabel motstand til en tidsforsinkelse brukes deretter til å telle pulser, og denne tellingen er vår ønskede verdi. Qbasic -filen vil plotte for å skjerme signalet og deretter bla det til høyre.
Trinn 5: Bruk den
Dette er en vanlig IC, men andre monostabler kan også brukes. Mange mennesker som bor på steder der ADC er vanskelig å finne, vil kanskje bruke denne kretsen som et skoleprosjekt for å plotte temperatur eller andre ting så lenge du kan få MMR til å endre forsinkelsen når sensoren gjør det.
Anbefalt:
Mini billig AC til DC -omformer: 7 trinn
Mini Billige AC til DC -omformer: denne er en AC til DC -omformer. Det kostet meg bare noen få dollar. Bare kostnaden for fire dioder. Det er veldig enkelt og ingen problemer med lodding. så jeg vil dele det med dere alle. så la oss komme i gang
Nyttig, enkel DIY EuroRack -modul (3,5 mm til 7 mm omformer): 4 trinn (med bilder)
Nyttig, enkel DIY EuroRack-modul (3,5 mm til 7 mm omformer): Jeg har gjort mye DIY for mine modulære og halvmodulære instrumenter i det siste, og nylig bestemte jeg meg for at jeg ønsket en mer elegant måte å lappe Eurorack-systemet mitt med 3,5 mm-kontakter til effekter i pedalstil som har 1/4 " inn og ut. Resultatet
Raspberry Pi GPIO -kretser: Bruke en LDR analog sensor uten ADC (analog til digital omformer): 4 trinn
Raspberry Pi GPIO -kretser: Bruke en LDR -analog sensor uten ADC (analog til digital omformer): I våre tidligere instrukser har vi vist deg hvordan du kan koble din Raspberry Pi's GPIO -pinner til lysdioder og brytere og hvordan GPIO -pinnene kan være høye eller Lav. Men hva om du vil bruke din Raspberry Pi med en analog sensor? Hvis vi vil bruke en
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: 4 trinn
(Enkel) enkel måte å få analog/pwm -lyd fra Raspberry PI Zero og også tilkobling til Crt TV: Her har jeg brukt en enkleste metode for å mate lyd til en tv sammen med video fra en annen side
Billig bærbar stativ / bærbar til stasjonær omformer: 3 trinn
Billig bærbar stativ / bærbar til stasjonær omformer: Jeg finner meg selv i å bruke min bærbare datamaskin i lange perioder. Det blir ubehagelig etter hvert. Tastaturet og skjermen bør ideelt sett være atskilt for å redusere nakkebelastning ved langvarig bruk. Hvis du er en bærbar bruker på heltid, foreslår jeg at du bygger