راه اندازی ADC در ARM STM32

 

 


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


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

سخت افزار

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

 

 

 

 

 

 

 

 

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

 

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

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

#include "stm32f10x_usart.h"
#include <stdio.h>
#include "bsp.h"
#include "delay.h"

دستوراتی که در زیر آورده شده است، مربوط به ارسال داده از طریق سریال است که این تنظیمات برای ارسال داده­ها  استفاده می­شوند تا امکان استفاده از printf وجود داشته باشد.

//printf init
struct__FILE { inthandle;} ;

FILE__stdout;
FILE__stdin;
FILE__stderr;

intfputc(intch, FILE*f) 
{
    while(!USART_GetFlagStatus(COM1,USART_FLAG_TXE));   
                                                         
    USART_SendData(COM1,ch);   

    while(!USART_GetFlagStatus(COM2,USART_FLAG_TXE));   
                                                         
    USART_SendData(COM2,ch);   
       
    returnch; 
}

در تابع اصلی (main) ابتدا کلاک مربوط به GPIO  ، Usart و ADC  روشن می­شود و سپس پیکربندی مربوط به هر یک از این پریفرالها انجام می گیرد. در داخل حلقه­ی while  از طریق تابع getval  مقدار آنالوگ تبدیل به دیجیتال شده و از طریق USAR1 , USART2  ارسال می­شوند.

intmain(void)
{
    /******** Intial the clock and perpherals *************/
  RCC_Configuration();
  GPIO_Configuration();
  Com1_Intial();  //usb to serial
  Com2_Intial();  //COM PORT (Rs232)
 ADC1_Intial();
 delay_intial();
    
  printf("Naminic STM32 evaluation board");
    while(1)
    {
        printf("adc get val = %d",getVal());
        delayMs(400);
    }
    return0;
    
}

 

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



 

Tags: , , ,