求stm8 AD单次扫描程序,麻烦给加注释,要调试出来能用的!!

 我来答
百度网友dad56c6f5
2013-03-15 · TA获得超过223个赞
知道小有建树答主
回答量:162
采纳率:0%
帮助的人:161万
展开全部
*******************************************************************************
function : STM8的AD初始化
*******************************************************************************/
void InitAD(void)
{
ADC2->CR1 = 0x40; //ADC时钟=主时钟/8=2MHZ,转换模式=单次,禁止ADC转换
ADC2->CR2 = 0x00; //A/D结果数据左对齐
//ADC2->CSR = 0x08;
ADC2->CR1 |= 0x01; //唤醒
ADC2->CR1 |= 0x01;
}
/*******************************************************************************
function : 读取STM8的AD值
*******************************************************************************/
unsigned char ReadAD(unsigned char channel)
{
unsigned char x=0;
ADC2->CSR = channel; //通道选择
ADC2->CR1 |= 0x01;
while((ADC2->CSR & 0x80) == 0x00);
ADC2->CSR &= 0x7f;
x = ADC2->DRH;
return (x);
}

刚刚调试完,调用就行
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式