如何使用STM8S单片机的多通道AD转换
来源:互联网 发布:全国省市区街道数据库 编辑:程序博客网 时间:2024/05/22 07:58
STM8S单片机的A/D结构简介:
1.电压0到Vdda;
2.在64和80引脚封装的有独立的Vref,其他的封装形式Vref连接在Vdda
3.续转换形式;
4.时间14个时钟周期;
5.10位转换精度;
6.产生转换结束中断;
ADC1结构图
编程中注意的知识点:
一旦转换完成,转换后的数据存储在ADC_DR寄存器中,EOC(转换结束)标志被置EOCIE 被置位将产生一个中断。
代码如下:
#include "adc.h"
void ADC_Config(void)
{
}
uint16_t Get_ADCCH_Value(ADC1_Channel_TypeDef ADC_Channel)
{
#if 0
ADC_CR2 = 0x00;
CLK_PCKENR2 |= 0x08;
ADC_CR1 = 0x00;// ADC时钟=主时钟/2=8MHz,单次转换模式
ADC_CSR = 0x01;
ADC_TDRL = 0x01;
ADC_TDRH = 0x01;
ADC_CR1 = 0x03; //2分频,连续转换,启动ADC
ADC_CR2 = 0x31; //外部事件保留,数据右对齐,禁止扫描模式,
ADC_CSR|= 0x01; //选择通道1
#endif
ADC1_Cmd(ENABLE); //启动ADC
while(ADC1_GetFlagStatus(ADC1_FLAG_EOC) == RESET); //等待转换结束
ADC1_ClearFlag(ADC1_FLAG_EOC); //清除转换结束标志
// 下面注释掉的两句与上面三句作用一样
//
//
}
//这个初始化代码很重要,不能省,每次切换通道都要初始化一次!
在main函数中直接调用即可:
转自:http://blog.sina.com.cn/s/blog_615ec1630101kf08.html
- 如何使用STM8S单片机的多通道AD转换
- stm8s单片机实现多通道转换
- STM32F103RC单片机ADC1使用TIM1自动触发注入通道组的AD转换
- STM8S AD转换
- stm8s使用问题总结2——AD转换
- STM32的DMA多通道多数据AD转换
- stm32 多通道AD和单通道AD的差别
- 使用单片机STM8S 驱动 CT1642
- 51单片机的AD/DA转换
- 51单片机AD转换的程序
- 单片机ad采样转换
- 51单片机 AD转换
- 单片机AD-DA转换
- 单片机ad/da转换
- PIC单片机-AD转换
- 单片机AD转换
- 单片机AD转换程序 TLC2543
- PIC单片机之AD转换
- USB bulk设备中的CBW和CSW
- mysql 高级 笔记
- poj 2481 Cows(树状数组)
- Java Service Wrapper-简介与使用
- 使用pymysql在python中对mysql的增删改查操作(综合)
- 如何使用STM8S单片机的多通道AD转换
- MySQL系列课程之二MySQL数据库的安装及配置
- 添加购物车动画效果
- 数位DP
- Java API--IO流整理
- Mybatis缓存及配置
- [USACO10MAR]伟大的奶牛聚集
- 趣味试题:A、B两人分别在两座岛上......
- 论js的段位级别