最近有朋友在问HOLTEK单片机ADC转换的用法,这里就介绍一下吧!以HT46RU232为例:首先看一下其转换的时序图:
下面是ADC转换的步骤:
ADC的数据转换计算:
芯片内部的数据格式:
下面用程序来介绍一下吧:
1.首先对ADC寄存器进行初始化:
//*******************************************************
// *AD初始化*
// *入口参数:无*
//*******************************************************
void AD_init()
{
_acsr=0x02;//选定ADC转换时钟源
_adcr=0x48;
}
ADCR寄存器:
void AD_convert()//启动ADC转换
{
AD_data=0; //AD_data为无符号long型的数据
_start=0;//启动AD转换
_start=1;
_start=0;
while(_eocb); //等待转换结束
AD_data=_adrh;//读取转换值
}
转换完以后就可以得到转换后的值了!HT66F50的用法和232的用法差不多,由于时间有限,就没有在50上面试验。
关于ht66f50的资料我会传到另外一个论坛,有需要的自己去下吧。虽然有些地方不一样,仔细阅读datasheet,相信很快就能找到解决方案的!
网址:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=4737753&bbs_id=2070