نحوهي استفاده از ADC در برنامه نويسي...
به نام خدا
عرض سلام و شاد باش فراوان به مناسبت عید فرخنده نوروز خدمت همه ی دوستان گُلم. برای همه ی هموطنان عزیزم سالی پر از موفقیت و شادمانی آرزو می کنم ، امیدوارم همیشه دلهاتون شاد و بهاری باشه.
در جلسه ی گذشته در مورد ساختار ADC یا همان مبدل آنالوگ به دیجیتال توضیحات مفصل داده شد. در این جلسه، نحوه ی استفاده از ADC در برنامه را توضیح خواهیم داد.
در میکرو کنترلر ATMEGA16، 8 پایه ی به ADC اختصاص داده شده، یعنی شما می توانید به صورت همزمان، خروجیِ 8 سنسور یا مدار جانبی را به میکروکنترلر خود وصل کنید و اطلاعات آن ها را به وسیله ی ADC دریافت کنید.
اما این 8 پایه کدام پایه ها هستند؟ |
این 8 پایه، پایه مربوط به پورت A هستند که با فعال کردن ADC در CodeWizard، این پایه ها در اختیار ADC قرار می گیرند. دقت کنید که برای استفده از ADC حتماً باید قبلاً تنظیمات را در CodeWizard انجام داده باشید.
این 8 پایه طبق شکل زیر از ADC0 تا ADC7 نام گذاری شده اند.
چگونه از ADC در برنامه استفاده کنیم؟ |
هنگامیکه شما تنظیمات اولیه را برای فعال سازی ADC در CodeWizard انجام می دهید، به شما این امکان داده می شود که در هر قسمت از برنامه، مقدار هر یک از 8 ADC را بخوانید و از آن استفاده کنید. عبارت" (شماره ي ADC )read_adc " در هر قسمت از برنامه، حاوي مقدار ADC مورد نظر شماست. مثلاً اگر بخواهيم مقدار ADC0 را بررسي كنيم كه آيا از 100 بزرگتر است يا خير، به شكل زير عمل ميكنيم:
if(read_adc(0) > 100)
يا مثلاً اگر بخواهيم مقدار ADC1 را در داخل يك متغير نگه داري كنيم، به شكل زير عمل مي كنيم:
int a;
a= read_adc(1);
مبدل آنالوگ به ديجيتال، يكي از مهمترين قابليتهايست كه اكثر ميكروكنترلرهاي خانوادهي AVR آن را دارند. در ميكروكنترلرهاي قديميتر، براي اين كار، بايد يك آي سي به صورت جداگانه بر روي مدار تعبيه ميشد.
در جلسهي آينده مبحث بسيار مهم PWM را شروع خواهيم كرد. به وسيلهي اين قابليت بسيار مهم،ما ميتوانيم سرعت موتورها يا هر المان ديگري كه به ميكروكنترلر متصل ميشود را كنترل كنيم. PWM نيز يكي از قابليتهاي مهم خانوادهي AVR است كه در جلسات آينده مفصلاً به آن خواهيم پرداخت.
باز هم عيد نوروز را خدمت همهي هموطنان عزيز و دوستان گُلم تبريك عرض ميكنم.
هميشه شاد باشيد. خدا نگه دار
دوست شما، فرازاميرغياثوند