马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
今天分享的内容是stm8的ADC使用方法。 Stm8s103f3p6的ADC寄存器有很多。但很多初学者要使用ad时不知道到设置哪个寄存器, 其实stm8的ADC的单通道采集只要ADC_CR1,ADC_CR2,ADC_CSR三个寄存器就可以搞定了; 具体这三个寄存器每一位是干嘛的请看参考手册,配置方法看代码: /**************************** ADC初始化 ***************************/ void ADC_Init(void) { ADC_CR1 = 0X00; //不分频禁止使能ADC ADC_CR2 = 0X30; //左对齐 ADC_CR1 |=0X01; //唤醒 } unsigned int ReadADC(unsigned int AIN) { unsigned int i = 0; ADC_CSR = AIN; ADC_CR1 |=0X01; //开始转换 while(!(ADC_CSR&0X80)); //等待转换结束 ADC_CSR &=0X7F; //清零转换结束标志位 i = (unsigned int)ADC_DRH; //读ADC的值 i = i<<2; i += (unsigned int)ADC_DRL; return (i); //把读到的值返回 } 要使用ADC时先初始化ADC_Init();循环中读ReadADC(这里写要采集的AD通道);
|