leefei 发表于 2015-3-29 22:36:22

stm8 ADC的使用

今天分享的内容是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通道);

jianhong_wu 发表于 2015-3-29 22:45:07

你做的既是笔记,也是教程。感谢分享。

101MHz 发表于 2015-3-30 14:51:08

为什么楼主的所有变量都定义为int型???

蓝色追天 发表于 2015-10-11 15:30:04

楼主ADC中断如何实现,是否尝试过?
页: [1]
查看完整版本: stm8 ADC的使用