STM8 的 ADC 转换速率和精度的问题,为什么手册如此粗糙

 我来答
uf...2@163.com
2017-08-06 · TA获得超过754个赞
知道小有建树答主
回答量:1738
采纳率:75%
帮助的人:349万
展开全部
ADC1的基本的单次转换
void InitADC()
{
ADC1->CR1 = 0x20; //分频系数为4 单次转换模式 先不启动ADC转换
ADC1->CR2 = 0x08; //非外部触发 数据右对齐 禁止扫描模式
ADC1->CSR = 0x03; //禁止转换结束中断 设置转换通道为AIN3
ADC1->TDRL|= 0x08; //禁止AIN3施密特触发器功能
ADC1->CR1 |= 0x01; //第一次写1是从低功耗模式唤醒
}

unsigned int GET_AD()
{
unsigned int temph=0;
unsigned char templ=0;
ADC1->CR1 |= 0x01; //启动AD转换
while(!(ADC1->CSR0x80)); //等待转换结束
ADC1->CSR = ~0x80; //清除转换结束标志
templ = ADC1->DRL;
temph = ADC1->DRH; //读出AD转换结果
temph = ConTOINT(temph,templ);
return(temph);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式