// #include
#include “derivative.h” /* derivative-specific definitions */
#include “WQ.h”
/***************************************************
// 功 能:读取A/D转化成果,送PORTB 口操控 LED灯显现
进口参数 ;无
// 出口参数:无
***************************************************/
/******************************************************
// 功 能:完结ATD模块的初始化
// 进口参数: 无
// 出口参数: 无
******************************************************/
void ATD0_Init(void){
ATD0DIEN = 0x00; //制止数字输入功用
ATD0CTL1 = 0x00; //A/D 分辨率挑选8位,且采样前不放电;
ATD0CTL2 = 0x40; //A/D 模块快速清零,制止外部触发,制止中止;
ATD0CTL3 = 0x88; //A/D 转化成果右对齐,每个序列1个通道,非FIFO形式
ATD0CTL4 = 0x03; //采样时刻4个周期,RES=3;
ATD0CTL5 = 0x20; //对通道0单通道接连采样,一起发动A/D转化序列
}
void main(void) {
uint N;
uint sum;
sum=0;
DDRB = 0xff;
PORTB =0xff;
ATD0_Init();
for(;;){
for(N=0;N<=250;N++){
while(!ATD0STAT2L_CCF0){ //等候转化成果
;
}
sum=sum+ATD0DR0L;
}
PORTB =sum/251;
N=0;
sum=0;
}
}