Turinys:
- 1 žingsnis: vairasvirtės prievadas
- 2 žingsnis: vairasvirtės prievadas VB
- 3 žingsnis: Įdiekite jį naudodami lygiagretųjį prievadą pagal DOS
- 4 žingsnis: grandinės prijungimas prie LPT
- 5 žingsnis: naudokitės
Video: Paprastas ir pigus analoginis -skaitmeninis keitiklis: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:51
Nuo to laiko, kai ADC buvo brangus ir retas, ateina aparatinės ir programinės įrangos sprendimas, skirtas kompiuteriams surinkti duomenis. Remiantis senu „IBM“suderinamu „Joystick“prievadu, monostabiliam multivibratoriui suaktyvinti varžinį keitiklį (termistorių, fotoelementą, įtempimo matuoklį ir tt) ir paskaičiuoti, kiek ciklų jis praeina, kol multivibratoriaus išvestis padidės, yra gana paprasta įdiegti daugelyje kompiuterių platformų ir daugeliu kalbų. Rodomi „VisualBasic“ir „Qbasic“pavyzdiniai failai.
1 žingsnis: vairasvirtės prievadas
Daugelį metų su IBM suderinamais kompiuteriais buvo pristatytas vairasvirtės prievadas, turintis X ašį, Y ašį, A ir B mygtukų signalinius kaiščius. Mažą DB-15 jungtį galima pasiekti adresais 200h & 201h. Pati vairasvirtė buvo tik du potenometrai ir du mygtukai. Kompiuterio pagrindinėje plokštėje buvo du įjungiami monostabilūs multivibratoriai (trumpai RMM) su fiksuotais kondensatoriais ir įvesties/išvesties kaiščiais. RC laiko konstantą nustatė potenciometrai ir kondensatoriai. Norėdami pradėti signalo konvertavimą, atlikite WRITE į uosto adresą 200h ir tada pradėkite skaičiuoti, kol gausite šiek tiek AUKŠTĄ, atlikdami READ to 200h prievado adresą. Tai galima įgyvendinti bet kuria kalba (pagrindinė, paskalio, c).
2 žingsnis: vairasvirtės prievadas VB
Tai pavyzdinis kodas, kurį naudoju išbandydamas savo šiukšliadėžės vairasvirtę: Privatus papildomas laikmatis1_Timer () Dim V, H As Integer Out & H201, & HFF H = nuo 1 iki 3000 Jei (Inp (& H201) ir & H1) / & H1 = 0, tada išeikite Kitas H horizontalus. Tekstas = H išėjimas ir H201, ir HFF, kai V = nuo 1 iki 3000, jei (Inp (& H201) ir & H2) / & H2 = 0, tada išeikite iš kitos V vertikalės. Tekstas = V Jei (Inp (& H201) ir & H10) / & H10 = 0 Tada forma 1. FillColor = & HFF If (Inp (& H201) Ir & H20) / & H10 = 0 Tada Shape2. FillColor = & HFF If (Inp (& H201) Ir & H10) / & H10 = 1 Tada Shape1. FillColor = & HC0C0C0 If (Inp (& H201) Ir & H20) / & H20 = 1 Tada Shape2. FillColor = & HC0C0C0 Shape3. Left = H Shape3. Top = VEnd Sub Programa veikia tik tuo atveju, jei prie kompiuterio prijungta tikra vairasvirtė. Horizontalus ir vertikalus teksto laukeliai parodys reikšmę, susijusią su X ir Y lazdos judesiais. Taip pat kvadratas judės didesnėje dėžutėje, kad atspindėtų jūsų judesius. Paspaudus A ir B mygtukus, bus perskaityti pilki apskritimai. Sudėtinio EXE failo pavyzdys, šaltinio kodas ir INPOUT32. DLL biblioteka yra. RAR faile.
3 žingsnis: Įdiekite jį naudodami lygiagretųjį prievadą pagal DOS
74 LS 123 naudoju tą pačią sistemą kaip ir vairasvirtės prievadas. Jis turi du RMM. PDF faile galite pamatyti duomenų lapą ir paprastą grandinę, kurią galima prijungti prie lygiagretaus prievado. Aš esu „Qbasic“gerbėjas (nes jis yra plačiai prieinamas), todėl kodas jame parašytas. Procedūra yra tokia pati kaip ir VB pavyzdyje: 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) WHILLE INKEY $ = "" OUT LPTcontrol, & H1 OUT LPTcontrol, & H0 FOR Y = 1 TO YMAXX IF (INP (LPTstatus)) IR & H10) / & H10 = 1 Tada išeikite iš kitos vietos 23, 1 atspausdinkite naudodami „####“; Y LINE (0, 0) - (MAXX, YMAXX), 0, BF FOR I = 1 - MAXX LINE (I, D (I - 1)) - (I, D (I)) D (I - 1) = D (I) KITAS ID (MAXX) = YWEND Vienas išvesties kaištis naudojamas MMR suveikimui ir vienas įvesties kaištis jo išėjimui nuskaityti.
4 žingsnis: grandinės prijungimas prie LPT
Sistema įdiegta kaip pusė aparatinės ir pusiau programinės įrangos. Tada impulsų skaičiavimui naudojamas kintamo pasipriešinimo konvertavimas į laiko uždelsimą, ir šis skaičius yra mūsų norima vertė. „Qbasic“failas parodys signalą ir pasuks jį į dešinę.
5 žingsnis: naudokitės
Tai yra įprastas IC, tačiau taip pat gali būti naudojami kiti monostabulai. Daugelį žmonių, gyvenančių tose vietose, kur buvo ADC, sunku rasti, galbūt norėtų naudoti šią grandinę kaip mokyklos projektą, kad būtų galima nustatyti temperatūrą ar bet kokius kitus dalykus, jei tik galite priversti MMR pakeisti delsą, kai jūsų jutiklis tai daro.
Rekomenduojamas:
Paprastas šviesos jutiklis su LED (analoginis): 3 žingsniai
Paprastas šviesos jutiklis su šviesos diodu (analoginis): Sveiki! Šioje pamokoje aš jums parodysiu, kaip padaryti paprastą šviesos jutiklį su šviesos diodu. Iš esmės ši grandinė tiesiog įjungia šviesos diodą, kai jis yra veikiamas šviesos. Man ši grandinė yra nenaudinga, nes tu negali su tuo daug nuveikti, bet aš manau
Paprastas „pasidaryk pats“loginis keitiklis 3,3 V įrenginiams: 4 žingsniai
Paprastas „pasidaryk pats“loginis keitiklis 3,3 V įrenginiams: šiame įraše aš jums parodysiu, kaip galite sukurti savo 5V į 3,3V loginį keitiklį, kad prijungtumėte 5V jutiklius prie naujų „Arduino“plokščių ir „Raspberry Pi“. Kodėl mums reikia loginio lygio keitiklio IC ? Dauguma iš jūsų mėgsta žaisti su „Arduino“ir „Raspberry Pi duri“
Mini pigus AC į DC keitiklis: 7 žingsniai
Mini pigus AC į DC keitiklis: šis yra kintamosios srovės keitiklis. Man tai kainavo tik kelis dolerius. Tik keturių diodų kaina. Tai labai lengva ir nėra problemų lituoti. todėl noriu pasidalinti ja su jumis visais. taigi pradėkime
PCF8591 (i2c analoginis įvesties/išvesties plėtiklis) Greitas ir paprastas naudojimas: 9 žingsniai
PCF8591 („i2c Analog I/O Expander“) Greitas ir paprastas naudojimas: biblioteka, skirta naudoti „i2c pcf8591 IC“su arduino ir esp8266. Šis IC gali valdyti (iki 4) analoginį įėjimą ir (arba) 1 analoginį išėjimą, pvz., Išmatuoti įtampą, nuskaityti termistoriaus vertę arba išblukinti šviesos diodą. Gali nuskaityti analoginę vertę ir parašyti analoginę vertę tik su 2 laidais (perfec
Pigūs hidrofonai ir ultragarsinis keitiklis: 6 žingsniai
Pigūs hidrofonai ir ultragarsinis keitiklis: ar norite įrašyti kalbančius delfinus ar banginius? Arba sukurti povandeninę akustinę komunikacijos sistemą? Gerai, mes jus išmokysime „kaip“. Pradėkime nuo pagrindinio dalyko: antenos. Jei kasdieniame gyvenime naudojame garsiakalbius (pvz., Nešiojamame kompiuteryje ar