#include "led.h"
#include "delay.h"
#include "sys.h"
#include "key.h"
#include "usart.h"
#include "wdg.h"
#include "timer.h"
#include "pwm.h"
#include "lcd.h"
#include "adc.h"
#include"rtc.h"
//ALIENTEK Mini STM32开发板范例代码13
//ADC 实验
//正点原子@ALIENTEK
//技术论坛:www.openedv.com
const u8 *COMPILED_DATE=__DATE__;//获得编译日期
const u8 *COMPILED_TIME=__TIME__;//获得编译时间
const u8* Week[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};
int main(void)
{
u8 t=0;
u16 adcx;
float temp;
SystemInit();
delay_init(72); //延时初始化
NVIC_Configuration();
uart_init(9600);
LED_Init();
KEY_Init();
LCD_Init();
Adc_Init();
POINT_COLOR=RED;//设置字体为红色
LCD_ShowString(60,30,"Mini STM32");
LCD_ShowString(60,50,"ADC TEST");
LCD_ShowString(60,70,"ATOM@ALIENTEK");
LCD_ShowString(60,90,"2013/07/14");
//显示时间
POINT_COLOR=BLACK;//设置字体为蓝色
LCD_ShowString(60,110," - - ");
LCD_ShowString(60,132," : : ");
//显示提示信息
POINT_COLOR=BLUE;//设置字体为蓝色
LCD_ShowString(60,190,"ADC_CH0_VAL:");
LCD_ShowString(60,222,"ADC_CH0_VOL:0.000V");
while(1)
{
if(t!=timer.sec)
{
t=timer.sec;
LCD_ShowNum(60,110,timer.w_year,4,16);
LCD_ShowNum(100,110,timer.w_month,2,16);
LCD_ShowNum(124,110,timer.w_date,2,16);
switch(timer.week)
{
case 0:
LCD_ShowString(60,148,"Sunday ");
break;
case 1:
LCD_ShowString(60,148,"Monday ");
break;
case 2:
LCD_ShowString(60,148,"Tuesday ");
break;
case 3:
LCD_ShowString(60,148,"Wednesday");
break;
case 4:
LCD_ShowString(60,148,"Thursday ");
break;
case 5:
LCD_ShowString(60,148,"Friday ");
break;
case 6:
LCD_ShowString(60,148,"Saturday ");
break;
}
LCD_ShowNum(60,168,timer.hour,2,16);
LCD_ShowNum(84,168,timer.min,2,16);
LCD_ShowNum(108,168 ,timer.sec,2,16);
LED0=!LED0;
}
delay_ms(10);
adcx=Get_Adc(ADC_Channel_0);
LCD_ShowNum(156,190,adcx,4,16);//显示ADC的值
temp=(float)adcx*(3.3/4096);
adcx=temp;
LCD_ShowNum(156,220,adcx,1,16);//显示电压值
temp-=adcx;
temp*=1000;
LCD_ShowNum(172,220,temp,3,16);
}
}
|