/*****************************************************************
** 函数名: AD_Init()
** 参 数:无
** 功 能:AD初始化
** 注 意:
******************************************************************/
void AD_Init(void)
{
//8路通道
ATDCTL1=0x20; //7:1-外部触发,65:00-8位精度,01-10位精度,4:放电,3210:ch
ATDCTL2=0x40; //忽略外部触发,中断禁止
ATDCTL3=0x80; //右对齐无符号,每次转换8个序列, 无缓冲, 冻结模式下继续转换
ATDCTL4=0x01; //765:采样时间为4个AD时钟周期,ATDClock=[BusClock*0.5]/[PRS+1]
ATDCTL5=0x30; //6:0特殊通道禁止,5:1连续转换 ,4:1多通道轮流采样
ATDDIEN=0x00; //作为AD用,IO口禁止
}
/*****************************************************************
** 函数名: ReadATD()
** 参 数:ch:读取第ch通道电压值
** 功 能:读取AD采集的电压值
** 注 意:10位精度
******************************************************************/
ReadATD(byte ch)
{
signed int ad = 0; //存放采集电压值
MC9S12G128 ADC
最新推荐文章于 2024-04-20 13:16:10 发布