首页 STM教程第十五章STMSADC及其应用

STM教程第十五章STMSADC及其应用

举报
开通vip

STM教程第十五章STMSADC及其应用STM8教程-第十五章STM8S207ADC及其应用第十五章STM8S207ADC及其应用口在计算机过程控制的数据采集等系统中,经常要对一些过程参数进行测量和控制,这些参数往往是连续变化的物理量,如温度,压力,流量和速度等。这里所指的连续变化即数值是随着时间连续可变的,通常称这些物理量为模拟量,然而计算机本身所能识别和处理的都是数字量。这些模拟量在进入计算机之前必须转换成二进制数码表示的数字信号。能够把模拟量变成数字量的器件称之为模数转换器。□STM8S207ADC模块概述□STM8S207系列高性能产品包括了一个...

STM教程第十五章STMSADC及其应用
STM8教程-第十五章STM8S207ADC及其应用第十五章STM8S207ADC及其应用口在计算机过程控制的数据采集等系统中,经常要对一些过程参数进行测量和控制,这些参数往往是连续变化的物理量,如温度,压力,流量和速度等。这里所指的连续变化即数值是随着时间连续可变的,通常称这些物理量为模拟量,然而计算机本身所能识别和处理的都是数字量。这些模拟量在进入计算机之前必须转换成二进制数码表示的数字信号。能够把模拟量变成数字量的器件称之为模数转换器。□STM8S207ADC模块概述□STM8S207系列高性能产品包括了一个10位连续渐进式模数转换器ADC2,(注意STM8S2XX都没有ADC1)提供了多达16个多功能的输入通道。主要性能有:转换时间为14个时钟周期,带有参考电压引脚,可设置为单次或联系的转换模式,可设置转换结束产生中断。nATD模块接口组成和特点口STM8S207单片机内置的ADC模块如下图所示:□□ADC模块可以通过ADC_CR1寄存器来开启或者关闭。然后ADC的时钟是有f_master时钟经过预分频后提供的。STM8S207高达16个输入通道,支持多种转换模式口ADC模块寄存器设置口STM8S207的ADC模块共有8个寄存器。分为4个设置寄存器,2个数据寄存器和2个施密特触发禁止寄存器。nADC控制/状态寄存器ADC_CSRn□EOC:转换结束。此位在AD转换结束后由硬件置位。由软件写“0”来清零0:转换未结束1:转换结束nAWD:因为STM8S207没有ADC1,所以此位无效EOCIE:转换结束EOC的中断使能0:禁止转换结束中断1:使能转换结束中断nAWDIE:在STM8S207中无效位nCH:选择转换通道,分别选择0到15共16个通道nADC配置寄存器1ADC_CR1n□SPSEL:预分频选择位000:f_adc=f_master/2001:f_adc=f_master/3010:f_adc=f_master/4011:f_adc=f_master/6100:f_adc=f_master/8101:f_adc=f_master/10110:f_adc=f_master/12111:f_adc=f_master/18CONT:连续转换0:单次转换模式1:连续转换模式ADON:AD转换开关口0:禁止ADC转换,进入低功耗模式1:使能ADC并开始转换口需要注意的是:如果此位是0时,并且写1到此位,那么将把ADC从低功耗模式下唤醒。如果此位是1,并且写1到此位,那么将启动AD转换。一旦ADC上电,所选通道的IO输出功能就被禁用了。nADC配置寄存器2ADC_CR2D□EXTTRIG:外触发使能位0:禁止外部触发转换1:使能外部触发转换口注意:为了避免错误的触发事件,使用BSET指令来设置EXTTRIG位,不用改变其它位EXTSEL:外部事件选择位口00:内部定时器1TRG事件01:ADC_ETR引脚的外部中断10:保留11:保留口ALIGN:数据排列口0:数据左对齐。高8位在ADC_DRH,其余的在低位字节1:数据右对齐。低8位在ADC_DRL,其余的在高位字节SCAN:STM8S207无效口ADC配置寄存器3ADC_CR3D□STM8S207此寄存器无效口ADC数据寄存器ADC_DRH、ADC_DRLD根据ADC_CR2中的ALIGN设置数据对齐方式,ADC_DRH和ADC_DRL存放这转换结果。□ADC施密特触发器禁止寄存器ADC_TDRH、ADC_TDRL□这些位由软件设置。当TDx为1时,禁止施密特触发功能,降低IO的静态功耗;为0时开启施密特触发器。口15.4ADC模块基础应用实例口本节通过一个简单示例,让读者掌握ADC模块的使用和编程方法。本实例硬件连接入下图所示,在STM8S207实验板中ADC的外部输入可以使光敏电阻或者热敏电阻,通过实物图的短路冒可以自行选择。本节ADC内容只是简单 说明 关于失联党员情况说明岗位说明总经理岗位说明书会计岗位说明书行政主管岗位说明书 ADC的编程实例,通过ADC的转换,把高8位转换结果作为延时时间,所以通过LED1的闪耀程度来判断ADC的大小。LED1的接口是PD0,实验中使用的AD接口是PF0,也就是AIN10D□程序清单:□#include\voidDelayMS(unsignedintms);main(){□inti;Q//将PD3设置成推挽输出,以便推动LEDPD_DDR=0x08;PD_CR1=0x08;PD_CR2=0x00;□//初始化A/D模块nADC_CR2=0x00;//A/D结果数据左对齐□ADC_CR1=0x00;//ADC时钟=主时钟/2=1MHZ//ADC转换模式=单次//禁止ADC转换nADC_CSR=0x0a;//选择通道10for(;;)//进入无限循环{□ADC_CR1=0x01;//CR1寄存器的最低位置1,使能ADC转换nfor(i=0;i<100;i++);//延时一段时间,至少7uS,保证ADC模块的上电完成ADC_CR1=ADC_CR1|0x01;//再次将CR1寄存器的最低位置1//使能ADC转换nwhile((ADC_CSR&0x80)==0);//等待ADC结束i=ADC_DRH;//读出ADC结果的高8位DelayMS(i);//延时一段时间nPD_ODR=PD_ODR"0x08;//将PD3反相}}n//函数功能:延时函数n//输入参数:ms--要延时的毫秒数,这里假设CPU的主频为2MHZ//输出参数:无//返回值:无//备注:无nvoidDelayMS(unsignedintms){nunsignedchari;while(ms!=0){nfor(i=0;i<250;i++);for(i=0;i<75;i++);ms—;}}n编译下载下载后选择光敏电阻作为输入,有光照和没光照时LED的闪耀程度不一样, 证明 住所证明下载场所使用证明下载诊断证明下载住所证明下载爱问住所证明下载爱问 ADC模块正常工作了。而验证的结果是当光敏电阻对着光照时,电阻变小,采样电压n变大了,所以高8位转换数据也变大,因此LED闪耀频率变小。口□□□□□^^感谢您的阅读,祝您生活愉快。□
本文档为【STM教程第十五章STMSADC及其应用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
无敌大招奥特曼
暂无简介~
格式:doc
大小:9KB
软件:Word
页数:4
分类:
上传时间:2023-05-02
浏览量:2