فهرست مطالب:

مبدل ساده و ارزان آنالوگ به دیجیتال: 5 مرحله
مبدل ساده و ارزان آنالوگ به دیجیتال: 5 مرحله
Anonim
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال
مبدل ساده و ارزان آنالوگ به دیجیتال

از زمان ADC گران و نادر بود ، یک راه حل سخت افزاری-نرم افزاری برای جمع آوری داده برای رایانه های شخصی وجود دارد. بر اساس پورت قدیمی Joystick سازگار با IBM ، تکنیک ایجاد یک مولتی ویبراتور یکپارچه و یک مبدل مقاومتی (ترمیستور ، فتوسل ، فشار سنج و غیره) و سپس شمارش چرخه هایی که قبل از خروجی مولتی ویبراتور بالا می رود کاملاً محاسبه می شود. پیاده سازی ساده در اکثر سیستم عامل های رایانه و در اکثر زبان ها. نمونه فایلهای VisualBasic و Qbasic نشان داده شده است.

مرحله 1: بندر جوی استیک

بندر جوی استیک
بندر جوی استیک

سالهاست که بسیاری از رایانه های شخصی سازگار با IBM دارای پورت Joystick هستند که دارای محورهای X محور ، محور Y ، پین های سیگنال دکمه های A & B هستند. اتصال کوچک DB-15 را می توان در آدرس 200h & 201h قابل دسترسی است. خود جوی استیک فقط دو پتانسیومتر و دو دکمه بود. در داخل مادربرد رایانه ، دو مولتی ویبراتور یکپارچه قابل تعویض (به اختصار RMM) با خازنهای ثابت و پین IN/OUT قرار داشت. ثابت زمان RC توسط پتانسیومترها و خازن ها تعیین شد. برای شروع تبدیل سیگنال ، باید آدرس 200h را به WRITE وارد کنید و سپس شمارش را شروع کنید تا با انجام READ به آدرس پورت 200h کمی ارتفاع بگیرید. این را می توان در هر زبانی (پایه ، پاسکال ، ج) پیاده سازی کرد.

مرحله 2: پورت جوی استیک در VB

بندر جوی استیک در VB
بندر جوی استیک در VB

این یک کد نمونه است که من برای تست جوی استیک آشغال خود استفاده کردم: Private Sub Timer1_Timer () Dim V ، H As Integer Out & H201 ، & HFF برای H = 1 تا 3000 If (Inp (& H201) And & H1) / & H1 = 0 سپس خروج برای Next H Horizontal. Text = H Out & H201، & HFF برای V = 1 تا 3000 If (Inp (& H201) And & H2) / & H2 = 0 سپس برای Next V عمودی خارج شوید. Text = V If (Inp (& H201) And & H10) / & H10 = 0 سپس Shape1. FillColor = & HFF If (Inp (& H201) And & H20) / & H10 = 0 سپس Shape2. FillColor = & HFF If (Inp (& H201) And & H10) / & H10 = 1 سپس Shape1. FillColor = & HC0C0C0 If (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 TO YMAXX IF (INP (LPTstatus) AND & H10) / & H10 = 1 سپس برای محل بعدی 23 ، 1 چاپ با استفاده از "####" ؛ خط Y (0 ، 0) - (MAXX ، YMAXX) ، 0 ، BF برای I = 1 تا MAXX LINE (I ، D (I - 1)) - (I ، D (I)) D (I - 1) = D (I) ID بعدی (MAXX) = YWEND یک پین خروجی برای فعال کردن MMR و یک پین ورودی برای خواندن خروجی آن استفاده می شود.

مرحله 4: اتصال Ciruit به LPT

اتصال Ciruit به LPT
اتصال Ciruit به LPT
اتصال Ciruit به LPT
اتصال Ciruit به LPT
اتصال Ciruit به LPT
اتصال Ciruit به LPT

این سیستم به عنوان نصف سخت افزار و نیمی نرم افزار اجرا می شود. سپس تبدیل مقاومت متغیر به تأخیر زمانی برای شمارش پالس ها استفاده می شود و این شمارش مقدار مورد نظر ما است. فایل qbasic برای نمایش سیگنال و سپس حرکت آن به سمت راست ترسیم می شود.

مرحله 5: از آن استفاده کنید

این یک IC رایج است اما از سایر پایدارها نیز می توان استفاده کرد. بسیاری از افرادی که در مکانهایی زندگی می کنند ADC به سختی یافت می شوند ، ممکن است مایل باشند از این مدار به عنوان یک پروژه مدرسه برای ترسیم دما یا هر چیز دیگری استفاده کنند ، مادامی که بتوانید MMR را با تاخیر در زمان سنسور خود تغییر دهید.

توصیه شده: