Სარჩევი:

მარტივი და იაფი ანალოგური ციფრული გადამყვანი: 5 ნაბიჯი
მარტივი და იაფი ანალოგური ციფრული გადამყვანი: 5 ნაბიჯი

ვიდეო: მარტივი და იაფი ანალოგური ციფრული გადამყვანი: 5 ნაბიჯი

ვიდეო: მარტივი და იაფი ანალოგური ციფრული გადამყვანი: 5 ნაბიჯი
ვიდეო: ESP32 Tutorial 17 - Controlling Servo Motor using ESP32 and Potentiometer -ESP32 IoT Learnig kit 2024, ნოემბერი
Anonim
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი
მარტივი და იაფი ანალოგი ციფრული კონვერტორი

იმ დროიდან, როდესაც ADC იყო ძვირი და იშვიათი, მოდის აპარატურა-პროგრამული გადაწყვეტა კომპიუტერებისთვის მონაცემების მოპოვებისთვის. IBM- ის თავსებადი ძველი ჯოისტიკის პორტის საფუძველზე, რეზისტენტული გადამყვანის (თერმისტორი, ფოტოელექტრონული, დაძაბულობის მაჩვენებელი და სხვა) მონოსტაბილური მულტივიბრატორის გააქტიურების ტექნიკა და შემდეგ იმის დათვლა, თუ რამდენ ციკლს გადის სანამ მულტივიბრატორის გამომუშავება მაღალი იქნება. მარტივი განხორციელება კომპიუტერის უმეტეს პლატფორმებზე და უმეტეს ენებზე. ნაჩვენებია VisualBasic და Qbasic ნიმუშის ფაილები.

ნაბიჯი 1: ჯოისტიკის პორტი

ჯოისტიკის პორტი
ჯოისტიკის პორტი

მრავალი წლის განმავლობაში IBM თავსებადი კომპიუტერები მოდიოდა Joystick პორტით, რომელსაც ჰქონდა X ღერძი, Y ღერძი, A & B ღილაკები სიგნალის ქინძისთავები. მცირე DB-15 კონექტორზე წვდომა შესაძლებელია 200h & 201h მისამართზე. ჯოისტიკი მხოლოდ ორი პოტენციომეტრი და ორი ღილაკი იყო. კომპიუტერის დედაპლატის შიგნით, განლაგებული იყო ორი დასაბრუნებელი ერთჯერადი მულტივიბრატორი (მოკლედ RMM) ფიქსირებული კონდენსატორებით და IN/OUT ქინძისთავებით. RC დროის მუდმივი დადგენილია პოტენციომეტრებითა და კონდენსატორებით. სიგნალის კონვერტაციის დასაწყებად თქვენ დაწერეთ პორტის მისამართი 200 სთ და შემდეგ დაიწყებთ დათვლას სანამ არ მიიღებთ ოდნავ მაღალ დონეს კითხულობთ პორტის მისამართს 200 სთ. ეს შეიძლება განხორციელდეს ნებისმიერ ენაზე (ძირითადი, pascal, c).

ნაბიჯი 2: ჯოისტიკის პორტი VB– ში

ჯოისტიკის პორტი VB– ში
ჯოისტიკის პორტი VB– ში

ეს არის კოდის ნიმუში, რომელიც მე გამოვიყენე ჩემი ჯონიკის ჯოისტიკის შესამოწმებლად: 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 შემდეგი H ჰორიზონტალური. ტექსტი = H Out & H201, & HFF For V = 1 დან 3000 თუ (Inp (& H201) And & H2) / & H2 = 0 მაშინ გამოდით შემდეგი V ვერტიკალური. Text = V If (Inp (& H201) And & H10) / & H10 = 0 შემდეგ Shape1. FillColor = & HFF თუ (Inp (& H201) და & H20) / & H10 = 0 შემდეგ Shape2. FillColor = & HFF If (Inp (& H201) And & H10) / & H10 = 1 შემდეგ Shape1. FillColor = & HC0C0C0 თუ (Inp (& H201) და & H20) / & H20 = 1 შემდეგ Shape2. FillColor = & HC0C0C0 Shape3. Left = H Shape3. Top = VEnd Sub პროგრამა მუშაობს მხოლოდ იმ შემთხვევაში, თუ თქვენს კომპიუტერზე არის მიმაგრებული ნამდვილი ჯოისტიკი. ჰორიზონტალური და ვერტიკალური ტექსტის ყუთები აჩვენებს მნიშვნელობას, რომელიც დაკავშირებულია თქვენი ჯოხის X და Y მოძრაობებთან. ასევე კვადრატი გადავა უფრო დიდ ყუთში, რომ წარმოადგინოს თქვენი მოძრაობები. A და B ღილაკების დაჭერით მოხდება ნაცრისფერი წრეების კითხვა. ნიმუში შედგენილი EXE ფაილი, საწყისი კოდი და INPOUT32. DLL ბიბლიოთეკა. RAR ფაილშია.

ნაბიჯი 3: განახორციელეთ იგი პარალელური პორტის გამოყენებით DOS– ის ქვეშ

განახორციელეთ იგი პარალელური პორტის გამოყენებით DOS– ის ქვეშ
განახორციელეთ იგი პარალელური პორტის გამოყენებით DOS– ის ქვეშ

74 LS 123 არის ის, რასაც ვიყენებდი იმავე სისტემის მისაღებად, როგორც ჯოისტიკის პორტი. მას აქვს ორი RMM. PDF ფაილში შეგიძლიათ ნახოთ მონაცემთა ფურცელი და მარტივი წრე, რომელიც უნდა დაერთოს თქვენს პარალელურ პორტს. მე ვარ Qbasic– ის ფანი (რადგან ის ფართოდ არის ხელმისაწვდომი), ასე რომ კოდი მასში წერია. პროცედურა იგივეა, რაც VB ნიმუშში: 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) სანამ მელანი $ = "" OUT LPTcontrol, & H1 OUT LPTcontrol, & H0 FOR Y = 1 YMAXX IF (INP (LPTstatus) და & H10) / & H10 = 1 შემდეგ გამოდით მომდევნო 23 ადგილას, 1 ბეჭდვით გამოყენება "####"; Y ხაზი (0, 0) - (MAXX, YMAXX), 0, BF FOR I = 1 MAXX LINE (I, D (I - 1)) - (I, D (I)) D (I - 1) = D (I) NEXT ID (MAXX) = YWEND ერთი გამომავალი პინი გამოიყენება MMR- ის გასააქტიურებლად და ერთი შესასვლელი პინი მისი გამომავალი წასაკითხად.

ნაბიჯი 4: Ciruit– ის მიმაგრება LPT– ზე

Ciruit– ის მიმაგრება LPT– ზე
Ciruit– ის მიმაგრება LPT– ზე
Ciruit– ის მიმაგრება LPT– ზე
Ciruit– ის მიმაგრება LPT– ზე
Ciruit– ის მიმაგრება LPT– ზე
Ciruit– ის მიმაგრება LPT– ზე

სისტემა დანერგილია როგორც ნახევარი აპარატურა და ნახევარი პროგრამული უზრუნველყოფა. ცვლადი წინააღმდეგობის გარდაქმნა დროის დაგვიანებით გამოიყენება პულსის დასათვლელად და ეს რიცხვი არის ჩვენი სასურველი მნიშვნელობა. Qbasic ფაილი ასახავს სიგნალის ეკრანს და შემდეგ გადაახვიეთ მარჯვნივ.

ნაბიჯი 5: გამოიყენეთ იგი

ეს არის ჩვეულებრივი IC, მაგრამ სხვა მონოსადგურების გამოყენებაც შესაძლებელია. ბევრი ადამიანი, რომელიც ცხოვრობს ADC– ში, ძნელი საპოვნელია, შეიძლება ისარგებლოს ამ სქემით, როგორც სასკოლო პროექტი ტემპერატურის ან სხვა ნივთების დასადგენად, რამდენადაც თქვენ შეძლებთ MMR– ს შეცვალოს მისი შეფერხება, როდესაც თქვენი სენსორი აკეთებს.

გირჩევთ: