راه اندازی ADC با ARM STM32(قسمت دوم)

 


مشاهده ی فیلم های اموزشی بیشتر درباره ی مبدل انالوگ دیجیتال


هدف از مثال زیر این است که شما با مبدل آنالوگ به دیجیتال ADC)) و طریقه­ ی راه­اندازی آن در میکروکنترلرهای ARM   آشنا شوید.


شرح کلی برنامه

در مثال موجود در تابع  ADC_AnalogWatchdog_Intial می­توانید دو مقدار برای حد بالا و پایین در نظر بگیرید تا وقتی­که مقدار اندازه­ گیری شده از دو مقدار بالاتر رفت یا پایین تر آمد یک وقفه ایجاد کرده و بدین ترتیب شما را مطلع می­­کند. از جمله از کاربرد­های AnolaogWatchfog  در اندازه­گیری و کنترل دما است که می­خواهیم دمای سیستم از مقدار مجازی تجاوز نکند.

نکته : روتین وقفه داخل فایل stm32f10x_it قرار دارد.


سخت افزار

برای تست این برنامه می­توانید از یک پتانسیومتر استفاده نمائید و آن را به ADC1 متصل کنید وبا تغییر پتانسیومتر نتیجه را مشاهده کنید.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


آشنایی و کار با برنامه

ابتدا برنامه را با نرم افزار Keil باز کنید.

 

 

 

 

 

 

 

 

تغذیه 5 ولت را به برد آموزشی متصل کنید و بعد از اینکه پروگرامر ST-LINK را به برد متصل نمودید؛ برنامه را با استفاده از دکمه ­ی Download    پروگرم نمائید.

 

 


توضیحات مربوط به برنامه

ابتدا کتابخانه­ های مربوطه فراخوانی شده­ اند.

[pastacode lang=”markup” manual=”%2F*%20Includes%20——————————-*%2F%0A%23include%20%22stm32f10x.h%22%0A%23include%20%22bsp.h” message=”” highlight=”” provider=”manual”/]

 

در تابع اصلی (main) ابتدا کلاک مربوط به GPIO  و ADC روشن شده، سپس وقفه­ی مربوط به ADC  فعال می­شود. همینطور پیکربندی مربوط به GPIO(ADC) انجام می­گیرد؛ همچنین پیکربندیled  و   ADC انجام می­شود.

[pastacode lang=”cpp” manual=”%2F*%20Private%20functions%20———————————————————*%2F%0A%2F**%0A%20%20*%20%40brief%20%20%20Main%20program%0A%20%20*%20%40param%20%20None%0A%20%20*%20%40retval%20None%0A%20%20*%2F%0Aintmain(void)%0A%7B%0A%20%20%2F*%20System%20clocks%20configuration%20———————————-*%2F%0A%20%20RCC_Configuration()%3B%0A%0A%20%20%2F*%20NVIC%20configuration%20——————————————–*%2F%0A%20%20NVIC_Configuration()%3B%0A%0A%20%20%2F*%20GPIO%20configuration%20——————————————*%2F%0A%20%20GPIO_Configuration()%3B%0A%0A%20%20%2F*%20Configure%20LED%20GPIO%20Pin%20———————————–%20*%2F%0A%20%20STM_EVAL_LEDInit(LED1)%3B%0A%20%20%0A%20%20%20%20%2F*%20Configure%20ADC%20%20——————————————%20*%2F%0A%20%20ADC_AnalogWatchdog_Intial()%3B%0A%0A%20%20while(1)%0A%20%20%7B%0A%20%20%7D” message=”” highlight=”” provider=”manual”/]

 

دانلود مثال ها و pdf این مقاله



 

Tags: , ,