【博友原创】k64开发之AD数模转换

所谓AD就是模拟信号转化为数字信号
强大的性能:k64拥有两个分辨率可配置的高速16位模数转换器(ADC)。这个精度相当高了,大部分应用都能满足。
单输出或差分输出模式运行,可提高噪声抑制水平。利用可编程延迟模块触发功能可实现500 ns的转换时间。
k64内部AD结构:

内部ADC参考值表:

我们可以通过编程选择自己所需要的AD通道,AD精度
编程时主要就是先配置功耗,我们可以在高功耗和低功耗之间选择ADC_CFG1_ADLPC_MASK
然后配置时钟,也就是时钟分频,根据你需要吧。注意时钟分频选择,分频系数为 2^n,2bit ADC_CFG1_ADIV()
采样时间配置,0为短采样时间,1 为长采样时间ADC_CFG1_ADLSMP_MASK
还有一个总线时钟配置ADC_CFG1_ADICLK
基本的配置完毕之后我们开始启用AD
ADC_CFG2_MUXSEL_MASK //ADC复用选择,0为a通道,1为b通道。
ADC_CFG2_ADACKEN_MASK //异步时钟输出使能,0为禁止,1为使能。
ADC_CFG2_ADHSC_MASK //高速配置,0为正常转换序列,1为高速转换序列
ADC_CFG2_ADLSTS(0) //长采样时间选择,ADCK为4+n个额外循环,额外循环,0为20,1为12,2为6,3为2
写入 SC1A 启动转换:
ADC_SC1_AIEN_MASK // 转换完成中断,0为禁止,1为使能
ADC_SC1_DIFF_MASK // 差分模式使能,0为单端,1为差分
最后转换完成:
ADC_SC1_AIEN_MASK // 转换完成中断,0为禁止,1为使能
ADC_SC1_DIFF_MASK // 差分模式使能,0为单端,1为差分
ADC_SC1_ADCH(Module0_Dis) //输入通道选择,此处选择禁止通道

(0)

相关推荐