[原创] 【沁恒试用】五、ADC

lising   2019-7-3 21:48 楼主

       本次实验利用CH549内部的ADC模块采集芯片内部温度检测通道的数值,然后将采集到的数据通过沁恒USB转串口模块通过UART0发送至PC端,并利用串口调试助手进行显示。

一、实验资源
1、CH549EVT学习开发板;
2、Keil v5.28.0.0;
3、CH549开发资料汇总.rar;
4、WCHISPTool v2.70;

5、CH549EVT其它相关文档;

6、沁恒USB转串口模块;

7、串口调试助手SSCOM51 v5.13.1;

 

二、实验准备

1、CH549的ADC资源。CH549内部提供了一个12位的ADC模块,具有16个外部模拟信号输入通道和 4 个内部输入通道(参考电压),可以分时采集,支持0到VDD模拟输入电压范围。从系统图上看还是挺复杂的,毕竟与ADC相关的还有“TouchKey”及电压比较器“CMP”。

Image 007.png

2、与ADC相关的寄存器。寄存器比较多,下面是简单的了解。

ADC控制和状态寄存器(ADC_CTRL)中与ADC有关的有两位:ADC转换完成中断标志“bADC_IF”以及ADC 启动控制位“bADC_START”;

Image 001.png

 ADC配置寄存器(ADC_CFG)中的低两位决定了ADC模块的时钟频率,ADC采样时钟的选用与工作电压、信号源内阻、信号源并联的电容等参数有关,就根据具体的环境不同进行选择;

Image 003.png Image 004.png

Image 005.png

ADC模拟信号通道选择寄存器(ADC_CHAN)比较好理解,通过对其配置可选择内部或者外部采样通道,本次实验选用的就内部通道“3”的温度传感器TS;

Image 006.png Image 008.png Image 009.png Image 010.png

ADC数据寄存器(ADC_DAT)中包括了“ADC_DAT_H”和“ADC_DAT_L”,从下表中可以看出“ADC_DAT_H”只用到了低4位,ADC的12位数据的低8位存放于“ADC_DAT_L”中,这应该是传说中的“右对齐”;

Image 011.png

 

三、本次实验

       本次ADC采集实验利用了上次调试的UART0配合进行,并且把时钟Fsys配置成了24MHz。ADC模块的配置按照手册给出的步骤进行,实验代码参考了官方DEMO程序,工程中引入了“DEBUG.C”及“DEBUG.H”。

Image 002.png
主要测试代码如下:

void TS_ADC_Config(void)
{
	ADC_CFG |= bADC_EN;                              //开启ADC模块电源
	ADC_CFG = ADC_CFG & ~(bADC_CLK0 | bADC_CLK1);    //选择ADC参考时钟 750KHz
	ADC_CFG &= ~bADC_AIN_EN;                         //关闭外部通道
	ADC_CHAN = ADC_CHAN &~MASK_ADC_I_CH | (3<<4);    //内部通道3为温度检测通道
	ADC_CTRL |= bADC_IF;                             //清除ADC转换完成标志,写1清零
}

UINT16 TS_Vol;
void main()
{
	CfgFsys(); 
	mDelaymS(5);
	UART0_Config();
	TS_ADC_Config();
	printf("\nWCH CH549EVT ADC TEST\n");

	while(1)
	{
		ADC_CTRL |= bADC_START;	//启动ADC转换
		TS_Vol = ADC_DAT;
		printf("TS = %d\n",TS_Vol);
		mDelaymS(1000);
	}
}

 

四、实验结果

Image 012.png

 

五、实验总结

       本次实验利用CH549的ADC模块并配合UART0进行了内部单一通道的数据采集,过于简单了点,但是通过此次实验对CH549的ADC模块有了感性认识,为后面对ADC进一步的学习创造了条件。


此内容由EEWORLD论坛网友lising原创,如需转载或用于商业用途需征得作者同意并注明出处
 

本帖最后由 lising 于 2019-7-3 21:51 编辑

回复评论 (4)

楼主评测内容很不错,期待后续

1084534438 欢迎交流  [加油,一切皆有可能]
点赞  2019-7-4 09:27
引用: RCSN 发表于 2019-7-4 09:27 楼主评测内容很不错,期待后续

谢谢表扬!继续学习。

点赞  2019-7-4 10:23

楼主测评很实在,所谓的简单不轻视,困难要重视!期待期待后续

点赞  2019-7-4 10:42
引用: 我芯永恒 发表于 2019-7-4 10:42 楼主测评很实在,所谓的简单不轻视,困难要重视!期待期待后续

谢谢表扬!继续学习分享。

点赞  2019-7-4 16:34
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复