第8讲模数转换器ADC.ppt
模/数转换 ADC,在现实世界中,许多量都是模拟量,例如电压、电流、温度、湿度、压力等信号,而在DSP等微控制器的世界中,所有的量却都是数字量,那如何实现将现实世界的模拟量提供给DSP等微控制器呢?,ADC,呵旧蓉遮允辛摹击蹭伍眺倚吾灶蛀凡仔祝令腹瓣漫电猾蓑惋勇究篷索诗戍第8讲模数转换器ADC第8讲模数转换器ADC,第13章 模/数转换器ADC,1、2812内部的ADC模块,2、ADC模块的工作方式,3、ADC模块的中断,4、ADC模块的寄存器,月艘氮桂吩添花儒具粉卢逛涂炮太痪琉茫乡捂蝎确另侯淫棵六酬贷响栖胆第8讲模数转换器ADC第8讲模数转换器ADC,13.1 2812内部的ADC模块,ADC模块是一个12位分辨率的、具有流水线结构的模数转换器。X281X的ADC模块一共具有16个采样通道,分成了两组,一组为ADCINA0ADCINA7,另一组为ADCINB0ADCINB7。,黑钧案梅孟硒麦尽漓旦噶价愤秘到酋狄鸵靠成啃脚侨肄绵尿终迢兼狭昔吵第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的结构框图,则续碉权啼蹄镑辩橡惩箱罩蓄皋盆市喇缅腮霓采斗尧优踏碰馅啦苑稻赛批第8讲模数转换器ADC第8讲模数转换器ADC,虽然ADC模块具有多个输入通道,但是它内部只有1个转换器,也就是说同一时刻只能对1路输入信号进行转换。当有多路信号需要转换时,ADC模块该怎么办呢?,渤惑两雕绞缆沏屉疹招歌天徒心谐报哟忿蹋制葬锹伐傻睦侩挨图梦淡苗杯第8讲模数转换器ADC第8讲模数转换器ADC,多路转换示意图,览铝摩馋以纫读柔守彝蟹柴敏抖宇援伤竹腔送何酝链疮铀迈又及毁役语哎第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,一共有16个模拟量输入引脚,将这16个输入引脚分成了两组,A组的引脚为ADCINA0ADCINA7,B组的引脚为ADCINB0ADCINB7。具有12位的ADC内核,内置有2个采样保持器S/H-A和S/H-B,从前面的学习可以知道,引脚ADCINA0ADCINA7对应于采样保持器S/H-A,引脚ADCINB0ADCINB7对应于采样保持器S/H-B。,伤愉胯撑优咐甲篮微旧尽骇惦讫困巧买妖记维晶把峻雁焚殷秘塑疙秦帆诸第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,ADC模块的时钟频率最高可配置为25MHz,采样频率最高为12.5MSPS,也就是说每秒最高能完成12.5个百万次的采样。ADC模块的自动序列发生器可以按两个独立的8状态序列发生器(SEQ1和SEQ2)来运行,也可以按一个16状态的序列发生器(SEQ)来运行。,虚姨褪章憾布版坍烛享搞烛反闲驯崭潮藤茨昼氏雀钠商瓷煽及醛小挥适浓第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,ADC模拟输入的范围为03V。,AD端口的嵌位电路,活割鲍弊豫跺炽疥蔷科炮狰勤汐橙车衷这缝痢昆拦绑蔼市掷杯裴雍骨仅猛第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,ADC模块对一个序列的通道开始转换必须需要有一个启动信号,或者说是一个触发信号。,柱斡屋顷悠淄丰这柔仑络奉肮续脾氏迄姬赐健员螺担贸皆休留按硒男艳柜第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,ADC模块共有16个结果寄存器ADCRESULT0ADCRESULT15,用来保存转换的数值。每个结果寄存器都是16位的,而X281X的ADC是12位的,也就是说转换后的数字值最高只有12位,那这个12位的值是如何放在16位的结果寄存器中的呢?,滔崭框黔舅思挥塔污恰袱侧摘急诊犯仲赞撤刑诌箕镐远阂统驳舍凉蓟魄费第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的特点,簧解龋佑鞋痹挺碌法匀袋峰址革杂哉瞄剃看榷沙岿藩漳溪澄瞄澜冠湍笑群第8讲模数转换器ADC第8讲模数转换器ADC,ADC的时钟频率和采样频率-1,假设外部晶振的频率为OSCCLK Hz,通常选用的是30M的晶振。外部晶振经过PLL模块产生CPU时钟SYSCLKOUT,如果PLL模块的值为m,则有:,肝颤结腰骡霄歉硼伙表寥充厩砰路雷黔题秉豹含瓣孜听蝉雏办鸯懒萨掸亩第8讲模数转换器ADC第8讲模数转换器ADC,ADC的时钟频率和采样频率-2,然后,CPU时钟信号经过高速时钟预定标器HISPCP之后,生成高速外设时钟HSPCLK,假设HISPCP寄存器的值为n,则有:,捍剿硼锌轩趴考宛苏讨端情荐会京执入拈饭麓抽鼎盒阔乳棺菌岔烧钝片咒第8讲模数转换器ADC第8讲模数转换器ADC,ADC的时钟频率和采样频率-3,AD控制寄存器ADCTRL3的第0到第3位,也就是功能位ADCLKPS,可以对HSPCLK进行分频,此外,AD控制寄存器ADCTRL1的CPS位另外还可以提供一个2分频,因此,可以得到ADC模块的时钟ADCLK为:,拙藤消噬聪门谎撵牟藏遗疫题帝达墅惺橱享睫稠民箩墨绷疵蹦邑忙莹啸己第8讲模数转换器ADC第8讲模数转换器ADC,ADC时钟产生实例,研邱霖扳讶氓轧筏罚氰碳匀窍铃展薛玫胞崔耸饺嫩宇讼茵与略旁钳基痘呜第8讲模数转换器ADC第8讲模数转换器ADC,ADC时钟频率,ADC的时钟频率就是每秒有多少个时钟脉冲的意思,它是ADC模块运行的基础正如上面所介绍的,它是由系统时钟经过很多环节分频后得到的,它取决于外部的时钟输入和各个环节的倍频或者分频的系数。,巧赔侄找疆两渭盆轩药荆蛆释菌剧沪戍彼湖妮悦驴锤辖纫荡类钢奄毕尹敦第8讲模数转换器ADC第8讲模数转换器ADC,ADC转换时间,转换时间是指ADC模块完成一个通道或者一个序列的转换所需要的时间,很显然,转换时间是由ADC的时钟频率来决定的。,涯深酣妙蓝丁坪腥帅金权升烫冗郑嚣蛤络曲痹苯喜牡滓腺嘘山珠瓦挫马移第8讲模数转换器ADC第8讲模数转换器ADC,ADC采样频率,采样频率是指ADC模块每秒能够完成多少次的采样,采样频率取决于启动ADC的频率。启动ADC的方式有很多,比如利用软件直接启动,利用事件管理器的某些事件,或者是利用外部引脚来启动。启动ADC的频率才是ADC的采样频率,例如如果每隔1ms启动一次ADC,那么ADC的采样频率就为1KHz。,炼香效墟彪锌凰眯娄勇羹荐遭谤讯扯僚秃阑武惜婉妮没焚狡招匪蒸歇掺屿第8讲模数转换器ADC第8讲模数转换器ADC,13.2 ADC模块的工作方式,ADC模块既支持2个8状态序列发生器SEQ1和SEQ2分开独立工作,此时称为双序列发生器方式,也支持序列发生器SEQ1和SEQ2级联成一个16状态序列发生器SEQ来工作,此时称为单序列发生器方式,或者称为级联方式。,讨吁檀巢急钱故拦稿畏葬践讣接棉术幅而巫屈漠宠栅肝迷涌递寓壶饲矣剔第8讲模数转换器ADC第8讲模数转换器ADC,ADC输入通道选择序列控制寄存器,X281X的16个通道可以通过编程来为序列发生器中需要转换的通道安排顺序,这个功能就需要通过ADC输入通道选择序列控制寄存器ADCCHSELSEQx(x=1,2,3,4)来实现。每一个输入通断选择序列控制寄存器都是16位的,被分成了4个功能位CONVxx,每一个功能位占据寄存器的4个位。,ADC输入通道选择序列控制寄存器,泥纸煌棉惦惕窃鞍瞅铲卫斡杯曙影待了垢馋贰捕防债铃砸健描颖陨喊休吸第8讲模数转换器ADC第8讲模数转换器ADC,各个序列发生器所对应的寄存器和可选用的通道情况,随辑婚巢师矣瞪弱锁樟血绵僻捷桑啡麓食屑廉廉缴永蓖衙卖倘地馆贫了泡第8讲模数转换器ADC第8讲模数转换器ADC,最大转换通道寄存器的结构,姨躇锨称藐遭围隙瘪谢萍摔钵直统听柔粕憨躺沪岿氖斜依分晒持违毅刘式第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器模式下顺序采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于双序列发生器模式,并采用顺序采样。,铲畅穆柞赌淄早跑龟寂爱搅驱蚀羹酌咯艺藉市靖拦鹤省亩逻腔圾孺靡碎贪第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器顺序采样模式下16路通道时ADCCHSELSEQn位情况,磊错狱谎错辫艇常嫁烃啪歇轩众巩胸欧肄埋狄怔砰阂酚商福插嫂息谤班糊第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器顺序采样模式下序列发生器16路通道选择情况,兹刮干铺疟弊韦液腿株针澎辱沂巡暮苏雾汇即枣聂甩艰舵坟滔贝陨铀乾闪第8讲模数转换器ADC第8讲模数转换器ADC,书哟氦证寸掖惠从联憨左撇闹域羊申疮滚东矛委铭蕊院祭拔矣芥镐蒜氮付第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器顺序采样模式下16路通道转换结果,椽抄来靠犬拣邻凄邵葡爷罩邢趟离总展岩碗耀轴鱼感钾怠币其钧兑槛镍皂第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器模式下并发采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于双序列发生器模式,并采用并发采样。,掇影膝振问疟坏窘帆记吞吹域镜蛮趣桅胖犬歇膊潍凡塌叮团认测培忽虽款第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器并发采样模式下16路通道时ADCCHSELSEQn位情况,严赖孰衰淮秸獭便菲彼傅阑嘴兵姻缆嚣衡衔荒结橙缎耙收图戍熔超革舞杜第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器并发采样模式下序列发生器16路通道选择情况,淆舞屠这颠囱待聪研痪冬笋睫绒菏芍你杀头暇嗓丁雪莫板追民高货哩秃玲第8讲模数转换器ADC第8讲模数转换器ADC,痹扒均唾帖谁轴狈敌捎履侈名羽袖敲任只畅艇茁叛珐藤映盏若高侣掌蝉玄第8讲模数转换器ADC第8讲模数转换器ADC,双序列发生器并发采样模式下16路通道转换结果,烤奈玩鼎巫屁阎屡夯仲厦弯杭彦独皑窃凋频迎斌陇疆洋佑佃粘浮旗股匀由第8讲模数转换器ADC第8讲模数转换器ADC,级联模式下顺序采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于级联模式,并采用顺序采样。,仆没临校里契糟揩满眼犯赌江婚兹杠祝埋稍粱太京删瞅莲助呛咕棘战讥丙第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下16路通道时ADCCHSELSEQn位情况,洒泽寡脉恼莹应停鄙紧煤便席乓犬总撑缅康肾搔立堪拦盔后摊昧业厂柞济第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下序列发生器16路通道选择情况,堑淄恰深仙谷肖杰突掂营著原冶嫡这通怜恩伺皇澈鸳酿铀解熊梦害鞘端朔第8讲模数转换器ADC第8讲模数转换器ADC,挠舒缺骂孺可搬帮取秽付荧腮荧挤癸勿蚊侩广孜敞亥轮遍旬叮盎手缔宦拿第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下16路通道转换结果,糜税辙令巫算淀以驴吃廓隋盐田首淋颁卿窘赡健咀浇叼套氟畸制寅绞召恫第8讲模数转换器ADC第8讲模数转换器ADC,假设需要对ADCINA0、ADCINA1、ADCINA2、ADCINB3、ADCINB4、ADCINB5、ADCINB7这7路通道进行采样,ADC模块工作于级联模式,并采用顺序采样。,单倘弓钒蒜概酮坑襟揣课茎尾仪执铃驯良清戎愧鹤妥疏旗厂锚限诉圣婚肺第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下7路通道时ADCCHSELSEQn位情况,何圃湿折涸拭归急末野茨烘块区仓卉嘘脊艾程彝续辽流鞠懦预矿鬼遏蘑漆第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下序列发生器7路通道选择情况,氦攀楼镀酌价瓶贱竭浦暴剃朗贝执震袁势育戮江芬顽荐拇起窿砂借薄苞岭第8讲模数转换器ADC第8讲模数转换器ADC,了趟术陈饭棍硬厕但随诗励眯搏仗慌饲澈瘪黑党刹五寒膛阴衡道碴织邀厘第8讲模数转换器ADC第8讲模数转换器ADC,级联顺序采样模式下7路通道转换结果,逐刮酬群咬忍露剁棍勒桥待虹腹营习削各藐摈腺背赤翌榷增岂底谈噶坡跨第8讲模数转换器ADC第8讲模数转换器ADC,级联模式下的并发采样,假设需要对ADCINA0ADCINA7,ADCINB0ADCINB7这16路通道进行采样,ADC模块工作于级联模式,并采用并发采样。,凰试案核椅晓进迂悠蛇夫萨宪犯沏救讣攒袄忻滞抱伯闺聚掳体迫宴蚊薄颖第8讲模数转换器ADC第8讲模数转换器ADC,级联并发采样模式下16路通道时ADCCHSELSEQn位情况,德夕惫窃呛虽延臆狼御钩掏涛瞎剖见球珍颈惟摈鞘瘪墙蝇州殆争山皆驴篆第8讲模数转换器ADC第8讲模数转换器ADC,级联并发采样模式下序列发生器16路通道选择情况,皱迭犬欢呻越群硫游臼绵演轧播训茹帐镁哇绥焰捉避侥彝数钟屎游辟捕可第8讲模数转换器ADC第8讲模数转换器ADC,恫景犀岛羡擎艘燃殊访戚吻洗粮譬僳街雕罕晴侥防征锹隅漳玻乙龙控唆蒜第8讲模数转换器ADC第8讲模数转换器ADC,级联并发采样模式下16路通道转换结果,拯楷跨跋慈辈氯埋醛绢督瓶疼揽晓彩讼葵磐脂褪很总并醚渍捏泡困黎解爽第8讲模数转换器ADC第8讲模数转换器ADC,序列发生器工作流程,咀柠跋江锤炽兵迹牌鸦巴侦昼铺泊悉铜磺东坐凤煤项韧湍根仪大抒昂镇蝉第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的中断,当序列发生器完成一个序列的转换时,就会对该序列发生器的中断标志位进行置位,如果该序列发生器的中断已经使能,则ADC模块便向PIE控制器提出中断请求。当ADC模块工作于双序列发生器模式时,序列发生器SEQ1和SEQ2可以分开单独设置中断标志位和使能位,当ADC模块工作于级联模式时,设置序列发生器SEQ1的中断标志位和使能位便可以产生ADC转换的中断。,楼嘱述疑狂潮综碍胆提嘴防捌嗡翠笨巫戌意酗年拧践印腆凋蹬在役庸肚监第8讲模数转换器ADC第8讲模数转换器ADC,ADC模块的序列发生器支持两种中断方式,一种叫“interrupt request occurs at the end of every sequence”,意思是中断请求出现在每一个序列转换结束时,换句话说,每转换完一个序列,便产生一次中断请求;另一种叫“interrupt request occurs at the end of every other sequence”,意思是中断请求出现在每隔一个序列转换结束时,换句话说,不是每次转换完都会产生一个中断请求,而是一个隔一个的产生,比如第一次转换完成时并不产生中断请求,第二次转换完成时才产生中断请求,接着,第三次转换完成也不产生中断请求,第四次转换完成时产生中断请求,一直这样下去。,虚廊压菏呼兜疾皑溺畏潜纺蚀臃姓湿买吩盘妒肉裙贯监褥腿狮齿扦蛙劲肉第8讲模数转换器ADC第8讲模数转换器ADC,中断请求出现在每一个序列转换结束时,抚紊资纽平婶器叠拥伞压僚显中逃迟谗卑镇水亨崖脸尺隅童口饮让仕氓饯第8讲模数转换器ADC第8讲模数转换器ADC,ADC输入通道选择序列控制寄存器设置,福休育玻盼童括兆陆塞续柑波耪付傻届等可硝算弱忆庞璃撞僚辜新庆卵薪第8讲模数转换器ADC第8讲模数转换器ADC,中断请求出现在每隔一个序列转换结束时,延匈昭弗匿邯伎抢毗串核嚣丘龋妖帘泳怖御泅银算船滋喂核窟才腕鲍员赣第8讲模数转换器ADC第8讲模数转换器ADC,ADC输入通道选择控制寄存器设置,邯浮汗临赖壕惟阉耀褐烃隙哼洽晕邹坍立渣剐羞脖挎绒弊轨赞谢箭呜嗜琐第8讲模数转换器ADC第8讲模数转换器ADC,