[技术问答] N76E003之ADC 多通道采样

[复制链接]
1159|4
 楼主| 注销 发表于 2020-9-8 11:25 | 显示全部楼层 |阅读模式

首先让我们来看看N76E003单片机的ADC工作方式,从下图中可以看到ADCHS寄存器决定当前使用哪一个通道的ADC。
watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTQ3OTg1OTA=,size_16,color_FFFFFF,t_70.jpg
接下来我们再来看看具体的寄存器含义
watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTQ3OTg1OTA=,size_16,color_FFFFFF,t_70.jpg

接下来就是N76e003库中包含的相关宏定义,可以看到每次使能一个ADC通道时,会先关闭所有通道,再去打开指定对象的通道,之后将对应ADC设置为输入模式
#define Enable_ADC_AIN3 ADCCON0&=0xF0;ADCCON0|=0x03;P06_Input_Mode;AINDIDS=0x00;AINDIDS|=SET_BIT3;ADCCON1|=SET_BIT0
//P06

接下来我们再来看看带隙电压是如何操作的,官方例程没有使用ADC中断,而是直接在循环中采样五次,这样只要将程序放在开启其他ADC通道和EA前,即可。
20190327235516994.jpg

通过上面的学习,相信大家已经明白了如何进行多通道采样,其实只需要不断切换使能的通道即可,用库函数可以很好的完成这个操作。

如果不希望一直触发ADC中断,则可以学习带隙电压所使用的方式,可以有效的降低计算量。


liangshuang95 发表于 2020-9-21 17:46 来自手机 | 显示全部楼层
谢谢楼主分享
zeshoufx 发表于 2020-9-21 18:43 | 显示全部楼层
谢谢分享【N76E003之ADC 多通道采样】
捉虫天师 发表于 2020-9-22 23:08 | 显示全部楼层
官方例子做的是很好
杨德金 发表于 2022-1-11 20:59 | 显示全部楼层
谢谢分享【N76E003之ADC 多通道采样】
您需要登录后才可以回帖 登录 | 注册

本版积分规则

57

主题

1530

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部