راه اندازی مبدل آنالوگ به دیجیتال ADC به زبان بیسیک BASIC

راه اندازی مبدل آنالوگ به دیجیتال ADC

مبدل آنالوگ به دیجیتال یک دیگر از خصوصیات میکروکنترلرهای AVR است. این مبدل با روش تقریب ها مداوم مقدار ولتاژ آنالوگ ورودی را به دیجیتال تبدیل می کند. از جمله مدها و خصوصیات این مبدل در زیر بیان شده است.

:: وضوح تبدیل = 10 بیت

:: ولتاژ ورودی = 0 تا Vcc

:: رجیستر پرچم وقفه = ADC

:: زمان تبدیل = 65 الی 260us

:: میزان خطای تبدیل = 2LSB ±

:: فرکانس کلاک مورد نیاز = 50 الی 200KHz

اکثر سری های میکرو دارای چند کانال ADC هستند. در حالی که در تمامی این میکرو کنترلرها تنها یک پک ADC موجود است. در این میکروها برای افزایش تعداد کانال ها از روش مالتی پلکس استفاده شده است.

نکته : منبع تغذیه مبدل آنالوگ به دیجیتال جدا از منبع میکرو بوده اما می توان آن را به تغذیه میکرو متصل نمود. این دو پایه AVCC پایه مثبت و AGND پایه زمین مبدل است.

راه اندازی مبدل آنالوگ به دیجیتال ADC به زبان بیسیک BASIC

ولتاژ مرجع

برای میکرو کنترلرهای avr دو حالت برای دسترسی به ولتاژ مرجع تعبیه شده که برای دسترسی پایه ای به نام AREF وجود دارد که می توان تا ولتاژ VCC را به این پایه به عنوان ولتاژ مرجع متصل نمود و یکی ولتاژ مرجع داخلی که به میزان 2.56v بوده و باید در زمان استفاده یک خازن به پایه AREF متصل شود.

نحوه اتصال ولتاژ مرجع به AVR جهت فعال سازی ADC

البته برای جلوگیری از نویزهای احتمالی که CPU بر مبدل القا می کند. می توان از مدار زیر استفاده کرد که در اکثر مواقع استفاده نمی شود و تنها در پروژه های حساس از این روش استفاده می شود.

نحوه جلوگیری از نویزهای احتمالی در هنگام فعال سازی ADC

پیکر بندی مبدل آنالوگ به دیجیتال ADC در زبان بیسیک BASIC

Single : این مد زمانی استفاده می شود که عمل تبدیل تنها زمان فراخوانی با دستور Getadc انجام می شود و این مد تنها برای کانال 0 (Adc0) قابل اجراست.

Free : این مد به حالت دائم عمل تبدیل را انجام می دهد و مقدار تبدیل را در رجیستر Adcd قرار می دهد. این مد تنها برای کانال 0 (adco) قابل اجراست.

Prescaler : با قرار دادن گزینه Auto میکرو به صورت هوشمند بهترین کلاک برای Adc تعیین می کند.

State : حالت های ولتاژ مرجع را مشخص می کند و گزینه های Off برای خاموش کردن ولتاژ مرجع داخلی و اتصال ولتاژ مرجع به پایه Aref, گزینه Avcc برای استفاده از پایه Avcc به عنوان ولتاژ مرجع و گزینه Internal برای استفاده از ولتاژ مرجع 2.56v داخلی می باشد.

فعال سازی عمل نمونه برداری ADC در زبان بیسیک BASIC

برای فعال سازیو شروع به کار مبدل از این دستور استفاده می شود. در صورت نیاز می توان از دستور stop adc برای غیر فعال کردن adc استفاده کرد.

نکته: همان طور که می دانید در زمان استفاده از adc هنگام برنامه نویسی دیگر نمی توان پورت مبدل را به عنوان 1/0 استفاده کرد.

فرخوانی مبدل آنالوگ به دیجیتال ADC در زبان بیسیک BASIC

این دستور از کانال n مبدل آنالوگ به دیجیتال مقدار آنالوگ را دریافت کرده و پس از تبدیل به مقدار دیجیتال 10 بیتی آن را در متغیر var قرار می دهد.

نکته : متغیر var از نوع word است.

وقفه مبدل آنالوگ به دیجیتال ADC در زبان برنامه نویسی BASIC

رجیستر وقفه مبدل آنالوگ به دیجیتال به نام adc بوده و می توان با این دستور پایان عمل تبدیل به زیر برنامه وقفه پرش کرد.

نکته : دستورات Enable Interrupts و Enable Adc فراموش نشود.

:: تبدیل مقادیر دیجیتال به مقادیر واقعی (نرمالیزه کردن)

فرض کنید ولتاژ مرجع 5v به میکرو وصل است. در نتیجه بعد از فراخوانی adc مقدار گرفته در متغیر مربوطه بین 0 تا 1023 خواهد شد (10 بیت) در صورتی که بخواهید مقدار متغیر را به مقدار واقعی خود یعنی بین 0 تا 5 برسانید به روش زیر عمل کنید:

مقدار خوانده شده توسط دستور Getadc را در متغیر از نوع word با نام a ریخته شده و بعد مقدار متغیر را بر عدد 204.6 تقسیم کنید. ( 1023/5 = 204.6 ) و در متغیر b از نوع single قرار دهید. در آخر برای روند کردن مقدار تا 4 رقم اعشار از دستور fusing استفاده کرده و در متغیر از نوع string ریخته می شود. می توانید با دستور var نوع متغیر را از رشته به عدد تبدیل کنید. با این روش مقدار واقعی ورودی در متغیر قرار می گیرد.

نکته : در صورت استفاده از ولتاژ مرجع داخلی 2.56v مقدار متغیری که عدد تبدیل شده در آن ریخته شده را بر 399.6 تقسیم کنید. ( 1023/2.56 = 399.6 )

پروژه راه اندازی مبدل آنالوگ به دیجیتال ADC با میکروکنترلر ATmega32

پروژه راه اندازی مبدل آنالوگ به دیجیتال ADC با میکروکنترلر ATmega32

برنامه میکروکنترلر در نرم افزار BASCOM-AVR به زبان بیسیک BASIC

 اطلاعات پروژه

 رمز فایل : www.electronics98.com (این مطلب فاقد فایل جهت دانلود است)

 نویسنده : فرهاد اکبری

 تاریخ انتشار : 10 اکتبر 2014

 شرایط و قوانین ثبت دیدگاه

 فارسی بنویسید و از کیبورد فارسی استفاده کنید.

 لطفاً بیش‌از‌حدِ معمول، شکلک یا ایموجی استفاده نکنید و از کشیدن حروف یا کلمات با صفحه‌کلید بپرهیزید.

 به کاربران و سایر اشخاص احترام بگذارید. پیام‌هایی که شامل محتوای توهین‌آمیز و کلمات نامناسب باشند، حذف می‌شوند.

 از ارسال لینک‌های سایت‌های دیگر و ارایه‌ی اطلاعات شخصی خودتان مثل شماره تماس، ایمیل و آی‌دی شبکه‌های اجتماعی پرهیز کنید.