Inhoudsopgave:
- Stap 1: De joystickpoort
- Stap 2: Joystick-poort in VB
- Stap 3: Implementeer het met behulp van de parallelle poort onder DOS
- Stap 4: De Ciruit bevestigen aan LPT
- Stap 5: Gebruik het
Video: Eenvoudige en goedkope analoog naar digitaal converter - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:20
Uit de tijd dat ADC duur en zeldzaam was, komt er een hardware-software-oplossing voor data-acquisitie voor pc's. Gebaseerd op de oude Joystick-poort van de IBM-compatibele, is een techniek om een monostabiele multivibrator een resistieve transducer (thermistor, fotocel, spanningsmeter, enz.) eenvoudig te implementeren op de meeste pc-platforms en in de meeste talen. Een VisualBasic en Qbasic voorbeeldbestanden worden getoond.
Stap 1: De joystickpoort
Jarenlang kwamen veel IBM-compatibele pc's voor thuisgebruik met een joystickpoort met signaalpinnen op de X-as, Y-as, A & B-knoppen. De kleine DB-15 connector is toegankelijk op adres 200h & 201h. De joystick zelf bestond uit slechts twee potenciometers en twee knoppen. In het moederbord van de pc bevonden zich twee hertriggerbare monostabiele multivibrators (kortweg RMM) met vaste condensatoren en IN/OUT-pinnen. De RC-tijdconstante werd ingesteld door de potenciometers en de condensatoren. Om de signaalconversie te starten, maakt u een SCHRIJF naar poortadres 200h en begint u te tellen totdat u een beetje HOOG wordt door een READ naar poortadres 200h te doen. Dit kan in elke taal worden geïmplementeerd (basic, pascal, c).
Stap 2: Joystick-poort in VB
Dit is een voorbeeldcode die ik heb gebruikt om mijn autokerkhofjoystick te testen: 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 Volgende H Horizontal. Text = H Out &H201, &HFF For V = 1 To 3000 If (Inp(&H201) And &H2) / &H2 = 0 then Exit For Next V Vertical. Text = V If (Inp(&H201) And &H10) / &H10 = 0 Dan Vorm1. FillColor = &HFF If (Inp(&H201) En &H20) / &H10 = 0 Dan Shape2. FillColor = &HFF If (Inp(&H201) En &H10) / &H10 = 1 Dan Vorm1. FillColor = &HC0C0C0 If (Inp (&H201) En &H20) / &H20 = 1 Dan Shape2. FillColor = &HC0C0C0 Shape3. Left = H Shape3. Top = VEnd Sub Het programma werkt alleen als u een echte joystick op uw pc hebt aangesloten. De horizontale en verticale tekstvakken tonen een waarde die verband houdt met X- en Y-bewegingen van uw stick. Ook zal een vierkant in een groter vak bewegen om uw bewegingen weer te geven. Door op de A- en B-knoppen te drukken, worden de grijze cirkels weergegeven. Het voorbeeld-gecompileerde EXE-bestand, de broncode en de INPOUT32. DLL-bibliotheek bevinden zich in het. RAR-bestand.
Stap 3: Implementeer het met behulp van de parallelle poort onder DOS
De 74 LS 123 is wat ik gebruikte om hetzelfde systeem te krijgen als de joystickpoort. Het heeft twee RMM. In het PDF-bestand ziet u de datasheet en een eenvoudig circuit om aan uw parallelle poort te bevestigen. Ik ben een Qbasic-fan (omdat het overal verkrijgbaar is), dus de code is erin geschreven. De procedure is hetzelfde als in het VB-voorbeeld: LPTdata = &H378 LPTstatus = LPTdata + 1: LPTcontrol = LPTdata + 2YMAXX = 500SCREEN 2LINE (9, 1)-(630, 170),, B, &H3333VIEW (10, 2)- (629, 169)VENSTER (0, YMAXX)-(620, 0)MAXX = 620DIM D(MAXX)WHILE INKEY$ = "" OUT LPTcontrol, &H1 OUT LPTcontrol, &H0 FOR Y = 1 TO YMAXX IF (INP(LPTstatus) EN &H10) / &H10 = 1 VERLATEN DAN VOOR DE VOLGENDE LOCATE 23, 1 AFDRUKKEN MET "####"; Y LINE (0, 0)-(MAXX, YMAXX), 0, BF VOOR I = 1 TOT MAXX LINE (I, D(I - 1))-(I, D(I)) D(I - 1) = D(I) VOLGENDE ID(MAXX) = YWEND Eén uitgangspin wordt gebruikt om de MMR te triggeren en één ingangspin om de uitvoer ervan te lezen.
Stap 4: De Ciruit bevestigen aan LPT
Het systeem is half hardware en half software geïmplementeerd. De conversie van een variabele weerstand in een tijdvertraging wordt vervolgens gebruikt om pulsen te tellen en deze telling is onze gewenste waarde. Het qbasic-bestand zal plotten om het signaal te screenen en vervolgens naar rechts scrollen.
Stap 5: Gebruik het
Dit is een veelvoorkomend IC, maar er kunnen ook andere monostables worden gebruikt. Veel mensen die op plaatsen wonen waar ADC moeilijk te vinden is, willen dit circuit misschien gebruiken als een schoolproject om de temperatuur of andere dingen in kaart te brengen, zolang je de MMR de vertraging kunt laten wijzigen wanneer je sensor dat doet.
Aanbevolen:
Upgrade de Zen Micro 5 gb naar 8 gb op de goedkope: 15 stappen
Upgrade de Zen Micro 5 gb naar 8 gb op de Cheap: Good Day! Ik ben hier vandaag om je te laten zien hoe ik mijn Zen Micro uit elkaar heb gehaald, de 5 GB harde schijf erin heb vervangen door een 8 gb CF-kaart, het apparaat weer in elkaar heb gezet, en leefde naar vertel erover. Waarom zou je dit willen doen? Twee redenen: 1. Solid-state opslag betekent
Eenvoudige lichtsensor met een LED (analoog): 3 stappen
Eenvoudige lichtsensor met een LED (analoog): Hallo! In deze instructable laat ik je zien hoe je een eenvoudige lichtsensor met een LED maakt. In principe schakelt dit circuit de LED gewoon in wanneer deze wordt blootgesteld aan licht. Voor mij is dit circuit een beetje nutteloos omdat je hier niet veel mee kunt doen, maar ik denk
Handige, eenvoudige doe-het-zelf EuroRack-module (3,5 mm naar 7 mm-converter): 4 stappen (met afbeeldingen)
Nuttige, gemakkelijke doe-het-zelf EuroRack-module (3,5 mm naar 7 mm-converter): ik heb de laatste tijd veel doe-het-zelf voor mijn modulaire en semi-modulaire instrumenten, en onlangs besloot ik dat ik een elegantere manier wilde om mijn Eurorack-systeem te patchen met 3,5 mm-aansluitingen naar pedaalachtige effecten met 1/4" ins en outs. Het resultaat
Red de planeet en je zak. $$ Converteer uw goedkope P&S digitale camera naar oplaadbaar: 4 stappen (met afbeeldingen)
Red de planeet en je zak. $$ Converteer uw goedkope P&S digitale camera naar oplaadbaar: Jaren geleden kocht ik een Dolphin Jazz 2.0 Megapixel digitale camera. Het had goede eigenschappen en een goede prijs. Het had ook trek in AAA-batterijen. Niet iemand die een uitdaging uit de weg gaat, ik dacht dat ik het zou aanpassen om een oplaadbare batterij te gebruiken om te stoppen met het verspillen van ba
Standaard lamp naar L.E.D retrofit op de goedkope: 5 stappen
Standaardlamp naar L.E.D Retrofit op de goedkope .: Wanneer u L.E.D.'s vergelijkt met standaardlampen, verhoogt u uiteindelijk de lampduurzaamheid/levensduur en efficiëntie/uren gebruik van batterijen met een kleine opoffering van lumenoutput, spectrumfocus. Ik geloof dat je de spectrumfocus van L.E. enigszins kunt veranderen