欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    嵌入式系统应用设计训练.ppt

    • 资源ID:6569790       资源大小:494.50KB        全文页数:110页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    嵌入式系统应用设计训练.ppt

    第13章 嵌入式应用系统设计训练,本课程设计要求同学将单片机的知识与所学的其他知识,进行综合运用,应用到具体的产品开发设计中,以加强对所学知识的进一步理解与掌握,锻炼和提高对知识综合运用的能力及分析问题和解决问题的能力。题目1:数据采集器的开发设计题目2:任意信号发生器的开发设计题目3:交通控制器的设计 在以上3个设计题目中,每个同学任选其一进行设计。设计内容包括硬件设计与软件设计。硬件设计要有设计说明(即功能实现;地址译码与分配;接口关系等)。可按功能模块设计成分图;软件设计要有程序流程框图(主程序、子程序独立的流程图),及源程序清单(要有必要的注释,注释不少于50)。,一 数据采集器的设计,技术指标与要求1.1 功能与技术指标 模拟输入通道4个,并可通过按键任意选择通道数及通道,模拟信号输入范围0V5V;采样频率设4档:1KHz;2KHz;4KHz;8KHz(所选通道一样)采样方式两种:连续采样(由按键控制开始与停止);定长采样(100点,1000点,10K).与下端机以中断方式用8位并行接口进行数据传输。1.2 设计要求 以MCS-51单片机为控制主芯片并设计必要的外围电路;A/D电路建议采用AD7864芯片进行设计;要有合理的人机接口电路,实现对采集器的操作控制。努力作到设计的产品:能用、好用、管用、耐用。,2 设计的一般方法及步骤:总体设计:根据设计要求建立系统总体框架。即根据本系统的功能与指标要求,规划出所需要的硬件功能模块,和软件总体思路与结构。并根据各模块的要求与特点,确定出各功能模块之间的接口关系与要求,进而对总体设计进行修改与调整。功能模块设计:根据各功能模块的具体要求,选择合适的芯片并进行功能实现的设计;接口设计:根据各模块的输入输出及控制需求,列出该模块需要的各种信号,并设计相应的接口;软件设计:根据总体设计中规划的软件结构进行软件的程序设计(主程序及各子程序等的设计)。综合优化:将各功能模块及接口所需信号等进行总体的综合与优化(硬件模块及之间的优化、软件与硬件的综合优化等),完成最终的整体设计。,3 硬件设计(提示与讨论),3.1总体设计:根据本数据采集器的功能与技术指标要求,可将硬件分为以下几个功能模块与部分(同学可以自己重新分配模块):主控制器模块:单片机系统及外部总线、复位、时钟电路等;数据采集模块:A/D芯片及其外围电路;采样方式选择模块:100点、1K点、10K点、连续采样任选电路;采样频率选择模块:500Hz/1KHz/5KHz/10KHz的选择电路;采样通道选择模块:通道14的任意组合选择电路;数据缓存模块:数据缓存RAM及其接口电路;操控与参数输入模块:选择参数的确认及采样过程的控制;译码模块:系统地址分配与译码电路;电源模块:采集器的电源输入、电源开关、电源指示等;机箱与面板:可靠耐用、操控方便、美观合理。,3.2 功能模块设计与讨论,3.2.1 主控制模块1 组成:89C51+时钟电路复位电路外部三总线 由于89C51片内有4KB的EEPROM,可以满足本系统程序存贮器的需求,故该系统不需扩展片外程序存贮器。若设计者选用80C31或其他原因也可外扩程序存贮器。由于该数据采集器有外部RAM、A/D、操作控制电路,因此必须引出外部三总线。该系统选择片内12MHZ时钟,外加石英晶体;采用上电复位与按键复位相结合的方式;该模块的设计参考电路如下图所示。,3.2.2 信号转换模块,该模块以A/D芯片为核心,加以合理的外围电路组成。A/D芯片选用AD公司的12位4通道AD转换器件AD7864。该器件有4个差分模拟输入通道,并可用硬件或软件的方式任意选择通道;具有片内参考电压和时钟,也可选用外部时钟信号。片内具有8个字节的数据缓存FIFO,用于存放4个通道的转换数据,并以紧凑方式按通道号的大小依次存入FIFO。,AD7864的封装及引脚,AD7864的组成逻辑框图,AD7864引脚简介,VIN1A,VIN1B:通道1的模拟信号输入引脚;VIN2A,VIN2B:通道1的模拟信号输入引脚;VIN3A,VIN3B:通道1的模拟信号输入引脚;VIN4A,VIN4B:通道1的模拟信号输入引脚;DB0DB11:12位并行数据双向口,其既作为12位转换数据输 出并口;又可作为软件设置通道的数据输入并口。/CS:片选信号输入引脚;/RD:数据读信号输入引脚;/WR:写数据信号输入引脚;H/S:通道选择方式引脚,0:硬件方式选择;1:软件方式选择SL1SL4:硬件选择通道引脚;0:不选;1:被选;/CONVST:转换启动信号输入引脚,上升沿启动;BUSY:正在转换标志,高电平有效;,/EOC:转换结束标志,低电平有效;FSTDATA:所选通道的首通道数据标志(1)信号输出引脚;INT/EXT:时钟方式选择(内/外0/1)引脚;CLKIN:外部时钟信号输入引脚;/STBY:省电模式控制引脚,正常工作时该引脚输入高电平(正 常工作电流为24MA);当不用信号转换时,设置该引脚 为低使之进入省电模式(5微安)VREF:片内基准参考电压输出(2.5V);VREFGND:片内基准参考电压输出地;AVDD:片内模拟电路电源输入引脚;AGND(3个引脚):片内模拟电路电源地;DVDD:片内数字电路电源输入引脚;DGND:片内数字电路电源输入地;,设计思路与讨论1、模拟输入通道的选择既可以用软件的方法选择,也可用硬件的方法选择。但二者都必须用操作按键进行选择操作,并对所选的通道进行指示;另外还要将选择的结果通知单片机,以确定几个通道工作等。经综合考虑,用硬件设定通道比较适合本方案。故H/S=0。若用软件方式选择通道,则/WR引脚必须与单片机的/WR信号连接。另外AD7864的SL0SL3引脚可以不接,也可以接地,但关键是H/S引脚必须接高电平。2、转换时钟采样片内时钟;故INT/EXT=03、用采样频率脉冲信号接启动引脚:/CONVST,以达到控制采样频率的目的。4、可用转换结束标志/EOC作为单片机的外部中断输入,但/EOC在每个通道转换结束都会产生,故本设计不采用这种方式。若要用/EOC作中断,则必须注意读AD7864片内 FIFO与/EOC的配合。,5、BUSY信号是AD7864正在转换的标志信号,即当启动转换时BUSY=1为高电平,所选的通道全部转换完后马上变成低电平,故用BUSY信号的反相作为单片机INT0的输入作为读数据的中断请求。6、可用并口的某一线控制/STBY引脚,A/D转换时使其为高 电平,不转换时为低电平进入省电模式。7、可利用FSTDATA信号作为首通道数据的标志,接入时可将其接到数据字的D15或D14.8、,3.2.3 采样方式选择模块,该采集器有两种采样模式,4种工作方式。即定长采样模式和连续采样模式。定长采样按采样长度分3种采样工作方式:100点、1000点和10000点。该电路要能实现方式选择,并满足以下4个要求:1.开机以后应确定一默认的采样工作方式;2.要求的4种采样工作方式通过按键可任意选择其一;3.所选择的工作方式在人机界面上要有相应的指示;4.所选择的工作方式必须告知CPU,使程序能够根据方式参数进行相应的数据采样过程控制。对于定长采样方式,按“开始”键后,程序按设置的有关参数开始采样,采够选择的点数,由程序控制停止采样;对于连续采样方式,按“开始”键后,则根据设置的参数开始采样,只有当按“停止”键时,才结束采样。根据以上要求,设计的参考电路如下图所示:,3.2.4 采样频率选择模块,本方案的设计思路:AD7864模数转换芯片有一个转换启动脉冲信号输入引脚:/CONVST,该引脚来一个脉冲则启动一次转换。因此将符合采样频率的脉冲信号送入/CONVST引脚,即可控制采样频率。功能实现:由电路产生4个符合采样频率的脉冲信号,并送入4选1器件74HC153的4个输入端;将2位频率选择码接到74HC153的2个输出控制端,频率选择指示是将2位频率选择码接入译码器74HC139的2个输入端,用其输出控制4个指示灯。,3.2.5 采样通道选择模块,AD7864片内具有4个模拟输入通道,既可用硬件的方式任意选择通道,也可用软件方法任意选择。本选择方案的设计要满足5个要求:可由操作者控制通道的选择操作;可在4个通道中任意选择;选择的通道必须在界面上指示或显示;选择的结果必须通知单片机;采集器上电后必须有一默认状态。试比较这2种选择方式:1、用软件方式选择:5种要求的实现:通道选择的操作实现:可设计4个开关或按键分别对4个通道进行选择;,4个通道的任意选择:对于用软件选择通道是非常方便的,只需通过数据总线给AD7864写入4位状态信号即可。其中的D0D3分别对应通道03,只要将需要工作的通道对应的位写1而步工作的通道对应位取0即可完成通道的选择。当通道的工作与否取决与操作者的设置选择。所选通道的指示:通过P1并口或扩展一个4位并口控制4个指示灯;通道选择结果通知单片机:通过并口将选择的状态码读入单片机;采集器开机后进入一确定的状态(默认通道选择):将默认的通道选择码通过的4位并口指示即可。综上所述,软件选择方案需要4项内容:4个选择操作开关或按键;4个指示灯及对应的4位并口;4位或2位读入选择状态的并口;相应的操作控制指令程序。,2、硬件选择通道方案:5种要求的满足与实现:通道选择的操作:需4个状态开关或按键(与软件相同);所选通道指示:用4个开关状态信号分别控制4个指示灯;选择结果通知单片机:用一4位并口将4个开关状态信号读入单片机;通道的选择:将4个开关状态信号分别接到AD7864的SL0SL3硬件(要满足高电平选通;低电平不选的条件);采集器开机的通道选择默认状态:用一信号控制4个开关状态,使之开机时为“0000”状态。归纳上述设计,需3项内容:操作按键及电路,这个电路可由单片机控制使其为“0000”;4为读入并口;可由按键电路控制的4个指示灯。分析以上设计,二者的复杂程度没有明显差别。即软件方式也无优势。同学们可根据自己的方案选择。参考电路设计见下页,3.2.6 数据缓存传输模块,该采集器的主要功能是将模拟信号根据需要转换成数字信号实现数据采集,并将这些数据传送给上端机进行处理。实现数据传送的方案有多种,以下给出三种参考方案:1 利用双口RAM实现:将采集的数据存入双口RAM,供上端机读取。此方案有2种实现方式:在采集器中设计双口RAM,将采集的数据写入本机的双口RAM,将上端机的地址线、数据线、读信号等通过插座引入,以读取数据。;在上端机中设计双口RAM,采集器将地址线、数据线、写信号等提供给上端机,即采集器将采集的数据写入上端机的双口RAM。2 利用FIFO存贮器实现:与方案的方法相同,只是采用FIFO代替双口RAM。同样有2种实现方式。3 利用串口传输实现:即将采集的数据通过串口传送给上端机。此方案的优点是简化电路,且可增加传输距离。缺点是在连续采样时,采样速率比较慢;对于定长采样,可先将采集的数据存入采集器的RAM中,采够设定长度后,再利用串口传送,但当设定的长度要受限与RAM的容量大小。以下给去相应的参考电路设计:,另外还可考虑用串行方式将采集的数据传输给上端机。这时就必须对数据传输的方式、波特率及数据块的格式进行约定:1 采用11位传输方式,第九位为偶校验位;2 波特率约定为2400(采用RS232C接口方式);3 数据块的格式:前2个数据为重复的16位格式字,其定义为:D15D8:同步码,1010 1010B=AAH D7D4:分别代表CH3CH0,1表示该通道有效,0表示该通道关闭(无数据);D3、D2:采样频率码(4个采样频率的代码)D1、D0:采样长度码(4个采样长度的代码)串行通信程序同学自己完成(内容应包括:设置串行口工作方式、设置波特率TI及其启动、开中断等。也可采用查询方式)。,3.2.7 采样控制与参数输入模块,采样方式选择、采样频率选择、采样通道选择,最终要反映在采样的具体过程中,因此以上的选择信息要通知单片机。而且这些选择在什么时候有效比较合理?在采样开始前任何选择都可以改变!但开始采样以后就不可改变或改变无效。因此我们设计一个开始按键,当“开始”采样有效,则将当前的各种设置与选择读入CPU并开始按这些选择参数开始采样。为了防止在采样过程中改变参数,可用开始键的“开始”状态取禁止各参数的改变(在以下参考电路中无此功能)。为了兼顾2种采样模式(定长与连续),设计的思路是:定长模式:按“开始”键以后开始采样,完成设定的采样点数自动停止采样,并用指令使“开始”指示灯灭;连续模式:按“开始”键开始采样,同时指示灯亮;再按该键则停止采样,同时指示灯灭,3.2.8 译码模块,以上7个模块电路都需要地址及译码信号:主控制模块:AD转换模块:读AD7864低8位及锁存高4位:读8000H 读已锁存的高4位数据:读8001H 采样方式选择模块:频率选择模块:通道选择模块:数据缓存模块:采样参数确认与采样控制模块:,3.2.9 采集器电源模块,3.2 功能模块电路设计的讨论与提示:A/D芯片的选择:AD7864的通道选择即可以用硬件选择方式也可用软件方式进行选择,这时关键是要考虑软件、硬件实现时的可靠性、合理性、简易性;操作控制主芯片的选择:操作控制电路可用8279实现,也可用其他简易的方法实现,关键是要综合考虑整个设计的简易程度与操作的方便程度。数据传输电路设计提示:与下端机接口建议用双口RAM或FIFO实现,还需必要的控制铰链(握手)信号(如中断信号)。硬件实现时与软件的综合因素:在考虑硬件的实现设计时,必须同时与软件设计综合考虑,这点对于系统设计很重要。,地址分配与译码:首先将硬件系统框架建起来,其次将全部硬件所需要的地址列出,并进行统一规划和分配,建议将RAM(双口)安排于地址高段(8000HFFFFH),将A/D接口地址、人机界面接口地址安排在低段。另外为了软件设计的方便,尽可能将A/D的读地址连续起来,这样当用MOVX A,R0指令时易于修改地址指针。建议将INT0分配给连续采样方式时的停止键中断,将INT1分配给A/D转换结束中断,对于定长采样方式结束时,用P1.0产生一个脉冲使A/D启动脉冲停止并使采样结束的LED指示灯熄灭。采集器上电后,用P1.2、P1.3使采样方式、频率为“00”状态(方式之一)。,A/D采样启动脉冲的门控信号:由“开始”键使之变高为“1”,由“停止”键或软件指令使之变低为“0”。连续采样方式用停止键结束,在定长方式结束时用软件使门控信号为“0”。在定长采样结束时,用指令在P1.7产生一负脉冲信号送至与下端机接口进行中断请求;在连续采样方式,每当数据缓存满时,用指令在P1.7产生一负脉冲信号进行中断请求,并且当停止连续采样时,也应产生同样的中断信号。,4 软件设计4.1 讨论与提示 软件部分应包括有关部分的初始化(设置中断方式、开中断等)、采样子程序及操作控制的程序等,这里比较难处理的是操作控制软件的实现设计。在设计键盘按键值的获得与确认的键盘处理子程序时,可考虑用查表的方法实现(也可用简单的键盘及处理方法);在采样程序中,应尽可能不用软件控制采样频率(后续的讨论以硬件方式实现采样频率为例),另外要考虑怎样将人机界面选择的参数应用到具体的程序中。对于实现不同功能的处理可用“多分支散转”的方法设计(按不同的键则进入相应的功能模块)。,4.2 与程序有关的参数 有关地址分配(设计假设):数据RAM:0000H(RAM容量),用DPTR作地址指针 A/D读地址:数据低8位:8000H;数据高4位:8001H;人机界面设置参数读取地址:8007H.工作寄存器设定:R4:存放人机界面的设定与控制状态原始信息值;M1、M0、F1、F0、SL3、SL2、SL1、SL0 R5:存放选择的采样通道个数;R6:存放采样点数:100(64H);R7:存放采样点数的倍数(100点的倍数);,4.3 软件工作总流程图,4.4 软件功能子程序及设计 参数处理功能程序 通道个数处理子程序 采样方式实现子程序 定长采样程序 连续采样程序 采样中断处理子程序 主程序,通道个数处理子程序该子程序根据主程序取入设置参数中的SL0SL3位,统计出采样的通道个数并存于R5中。调用前的入口参数:(R4)=采样参数 执行后的出口参数:(R5)=通道个数 CHN-P:MOV R5,#00H MOV A,R4 ANL A,#0FH RRC A JNC LPH1 INC R5,LPH1:RRC A JNC LPH2 INC R5LPH2:RRC A JNC LPH3 INC R5 LPH3:RRC A JNC LPH4 INC R5 LPH4:NOP RET,4.4.2 采样方式实现编程:CYFSP:MOV A,R4;ANL A,#0C0H CJNE A,#00H,LPM1 MOV R7,#01H AJMP CYZPLPM1:CJNE A,#40H,LPM2 MOV R7,#0AH AJMP CYZPLPM2:CJNE A,#80H,LPM3 MOV R7,#64H AJMP CYZPLPM3:CJNE A,#0C0H,LPM4 AJMP LXCYLPM4:AJMP MAIN,定长采样过程实现编程示例:CYZP:MOV DPTR,#0000H MOV P2,#80H MOV R0,#00H SETB EA SETB ET1LCY0:MOV R6,#64HLCY1:NOP AJMP$LCY2:NOP DJNZ R6,LCY1 DJNZ R7,LCY0 SETB P1.0 NOP CLR P1.0 CLR EA CLR ET1 RET,4.4.4 采样中断程序示例:INTP1:MOV A,R5MOV R3,ALCY1:MOVX A,R0 MOVX DPTR,AINC DPTRINC R0MOVX A,R0MOVX DPTR,ADEC R0DJNZ R3,LCY1(POP 7FHPOP 7FHCLR IE1 AJMPLCY2)RETI,4.4.5 连续采样编程:LXZP:MOV DPTR,#0000H MOV P2,#80H MOV R0,#00H SETB EA SETB ET1LXP0:MOV R7,#NN;设缓存的长度既与RAM大小有关 LXP1:MOV R6,#NN;还与通道数有关!LXP2:NOP AJMP$;等待AD中断(INT1)NOP DJNZ R6,LXP2 DJNZ R7,LXP1 CPL P1.?;乒乓缓存交换,用什么方式实现?SETB P1.0;缓存的交换要与电路设计一致 CLR P1.0 JB LXP0;开始标志1,继续采样 AJMP BEGIN;开始标志0结束连续采样回到?,4.4.6 连续采样方式停止中断程序示例INT0P:CLR EA CLR ET1 SETB P1.7;NOP CLR P1.7 RETI,4.4.7 主程序编程示例:ORG0000H AJMPSTART ORG0003H AJMPINT0P ORG0013H AJMPINT1P ORG0030HSTART:MOVSP,#70H MOVP1,#0FFH MOPP1,#00H NOP MOVP1,#0FFH MOVP2,#80H MOVR1,#07H MOVXA,R1 MOVR4,A CALLCHN-P,二 任意信号发生器设计,设计要求:可产生4种不同的波形信号供输出选择;任一波形信号的频率可由人机界面选择,选择时只考虑几个频段(不需频率任意调节);应有信号幅度的选择(分几个幅度段)。2.功能与指标:信号波形:正弦波、方波、三角波、任意波;信号频率:1KHz、2KHz、4KHz、8KHz;任意波形频率:1Hz 8KHz;具有4个信号幅度可供输出选择:(10V、5V、2.5V、1.25V)或(5V、2.5V、1.25V、0.625V)具有2个模拟信号输出通道。,3 设计的一般方法及步骤:总体设计:根据设计要求建立系统总体框架。即根据本系统的功能与指标要求,规划出所需要的硬件功能模块,和软件总体思路与结构。并根据各模块的要求与特点,确定出各功能模块之间的接口关系与要求,进而对总体设计进行修改与调整。功能模块设计:根据各功能模块的具体要求,选择合适的芯片并进行功能实现的设计;接口设计:根据各模块的输入输出及控制需求,列出该模块需要的各种信号,并设计相应的接口;软件设计:根据总体设计中规划的软件结构进行软件的程序设计(主程序及各子程序等的设计)。综合优化:将各功能模块及接口所需信号等进行总体的综合与优化(硬件模块及之间的优化、软件与硬件的综合优化等),完成最终的整体设计。,4 硬件设计提示:该系统应包含以下模块电路:CPU(51单片机)基本外围电路:时钟复位及三总线等。程序存贮器:存放程序代码与信号波形数据(可选)。外部数据存贮器:存放任意波形数据(双口RAM:如IDT7132)。上端机接口:由上端机产生任意波形数据并写入RAM.这里有两种设计:一是由上端机确定各参数;二是由本系统产生波形参数并将参数传递给上端机。后者键盘显示电路用8279实现为宜,但参数获取较复杂。建议用第一种方法。D/A电路:完成数据转换与输出。人机控制界面电路:实现输出波形选择、信号频率选择、信号幅度选择及信号发生器的工作控制等。综合逻辑电路:译码等逻辑电路。输出信号频率的控制,可用硬件的方法,也可用软件的方法。若用硬件的方法,可设计一个定时中断电路来控制输出信号的频率。,5.硬件总体设计 根据功能与技术指标要求可将硬件分为以下几个功能模块:主控制模块 D/A转换模块 波形选择模块(2个通道各一个)频率选择模块(2个通道各一个)幅度选择模块(2个通道各一个)通道选择模块 数据缓存模块 参数获取电路 输出控制模块 译码模块 电源模块 机箱与面板,5.1 硬件模块电路设计提示:参数设置电路用8279实现(为满足任意波形参数的设置);另外也可以将“任意”权交给PC机,(将第一个数据定义为本波形一个周期代码的长度,供输出循环用),主要考虑完成设定功能的简易程度与操作的方便程度。人机界面的操作设计除考虑硬件因素外还要考虑软件设计的方便及软件运行的可靠性。对于任意波形,可用PC机产生将波形数据产生并按约定的格式存于双口RAM或FIFO中。在考虑硬件的实现设计时,必须同时与软件的实现设计综合考虑,这点对于系统设计很重要。,5.2 功能模块电路(简易设计方案示例)构思:系统控制电路:单片机、程序存贮器、上电及上电复位电路、振荡器、三总线、译码电路。波形选择电路设计:该电路的功能是在4种波形中任选一种,要注意的是每次只能选其中的一种。频率选择与控制电路与波形选择电路一样。幅度选择电路在几个规定的4种幅度中任选一种,其电路同上。通道选择电路:两路输出可任选一个或两个:,5.3 系统工作过程:上电开机系统进入一种默认状态;这时可以进行波形选择;频率选择;通道选择;幅度选择;极性选择等设置,按开始键,系统首先读取设置的全部参数,并根据这些参数开始工作,使所设定的信号开始输出。工作结束按停止键,信号输出停止。系统的上电默认状态一般是确保上电以后系统进入一种固定的设置。这些设置是系统具有的状态的一种,也应是比较常用的一种。本系统设计不考虑关机前设置的记忆功能。通道1参数定义:W1 W0 F1 F0 V1 V0 CH1 波形选择 频率选择 幅度选择 通道选择通道2参数定义:W1 W0 F1 F0 V1 V0 CH2 波形选择 频率选择 幅度选择 通道选择,5.4.1 主控制模块设计,5.4.2 数模转换(D/A)模块设计,AD7237A简介1、功能介绍 该D/A转换器是美国AD公司生产的12位双路数模转换器 件,其内部有两个独立的D/A转换电路,每个转换电路有各自的12位数据寄存器(由1个8位和1个4位组成),与外部的8位总线连接;4个数据寄存器由地址A0、A1和片选/CS选通。2个D/A由同一个启动信号/LDAC开始同时转换(即同步输出)。该器件有内部时钟电路和内部参考电压;该器件可通过外部简单的连接实现不同输出极性的三种电压输出方式:连接VOUTA(VOUTB)输出为:0V+5V ROFSA(ROFSB):连接AGND 输出为:0V+10V 连接REF INA(REF INB)输出为:-5V+5V,引脚介绍 DB0DB7:外部数据输入总线;/CS:AD7237A片选输入端;/WR:外部数据写入信号输入引脚;A0、A1:片内4个数据寄存器选通地址输入引脚;/LDAC:转换开始启动信号输入引脚,上升沿开始;VOUTA:通道A的模拟信号(电压)输出引脚;VOUTB:通道B的模拟信号(电压)输出引脚;REFINA:通道A参考电压输入引脚;REFINB:通道B参考电压输入引脚;REF OUT:片内参考电压输出引脚;ROFSA:通道A极性控制输入引脚;ROFSB:通道B极性控制输入引脚;VDD:芯片电源正输入引脚,范围:+12V+15V;VSS:芯片电源负输入引脚,范围:-12V-15V。,3 电路设计 该模块是以D/A转换器件AD7237A为核心,并配以必要的外围电路而构成。参考设计如下:其中的KP1、KP2为2个通道的输出信号极性选择开关。,5.4.3 波形选择电路设计 该电路要实现以下功能:在4种波形(正玄波、三角波、锯齿波、任意波)中选择其中的一种。该电路的设计还应满足以下要求:波形选择可用按键任意、方便的操作;对操作选择有可靠的面板指示;选择的结果必须以参数的方式提供给单片机;系统上电或复位以后应给出一确定的默认状态。,5.4.4 频率选择电路的设计,5.4.5 输出幅度选择电路的设计,5.4.6 通道的选择电路参考设计图,5.4.7 参数获取电路设计,5.4.7 参数获取电路,5.4.8 输出控制电路,5.4.9 波形数据缓存电路设计,5.4.10 译码电路,5.4.11 系统供电电路设计,功能模块电路设计提示与示例(简易设计方案示例):系统控制主模块:该模块由两部分组成:一是单片机基本小系统电路,由单片机、上电及复位电路、振荡器电路、低位地址锁存电路(构成三总线)。二是译码电路。波形选择电路 由于有3至4种选择,并考虑到面板的操作及指示,可用一个方式选择按键操作,并触发两位D触发器,另外用139译码器点亮LED指示灯指示所选的波形;同时两位D触发器的Q输出供单片机读取并控制软件的工作方式选择与执行。频率选择电路、幅度选择电路可参照波形选择电路设计。,通道选择电路设计:设定两个通道标志,其标志1表示该通道选定。建议用2个开关状态设计,这2个参数与本通道的其他参数通过一缓冲电路读入单片机。极性选择:用二选一开关即可。ROFSAAGND/REFINA 任意波形数据缓存:建议用双口RAM设计,并给上端机设计一接口插座。参数输入电路:用2个74LS245设计2个并口。信号工作控制:用开始键和停止键分别控制一D触发器的置1端和置0端(开始键使其位1、停止键使其位0),同时将D触发器的输出信号反相(/Q)作为INT0中断输入。也可用一个键使D触发器循环工作。,频率控制电路:1、频率控制的定时可用内部定时器设计。2、用12MHz时钟分频产生4种频率(用4选1芯片74153)。12M/6/50=40K、400K/50=8K、200K/504K(74190是2、5分频74192是2、6分频74393是4、2分频)3、用12MHz时钟分频产生40KHZ频率,结合每周期的点数控制输出信号频率T=N*t(40点、20点、10点、5点)。4、用方式2、3结合的方法控制输出信号的频率(这样软件设计时要分类,且要用2选1的芯片74157)。*74153是双4选1芯片,74157是4个2选1芯片,上电与复位时的默认值设定:使波形选择、频率选择、幅度选择、通道选择上电或复位时为:波形的00状态:正弦信号(正弦、方波、三角波、函数)频率的00状态:1KHZ;(1K/2K/4K/8K)幅度的00状态:10V;(10V/5V/2.5V/1.25V)通道的00状态:2个通道均未选。电路设计:用软件指令在P1.0、P1.1、P1.2、P1.3产生负脉冲使以上各电路为“00”即可(接在D触发器的CLR引脚)。另外用P1.7的负脉冲使开始/停止D触发器也为“0”状态(即停止)。建议:12MHZ/6/50=40KHZ的脉冲同时送单片机的INT1引脚,地址分配:任意波形数据缓存:用A15=0为片选,地址范围0000H7FFFH;D/A:需4个端口地址(应使其连续,精简软件设计);D/A启动:1个端口地址(送/CONVST引脚);2个通道参数输入端口:2个端口地址。译码(用1个74LS139)(A1、A0不参与译码直接送AD7237):139输入:A15取反后送/G;A3、A2作为B、A 的输入。Y0接D/A的/CS,其地址为:00000011:8000H8003H Y1接D/A启动引脚/CONVST,其地址:0100即8004H Y2接CH1参数输入:其地址:1000:即8008H Y3接CH1参数输入:其地址:1100:即800CH,软件设计讨论与示例1 有关约定:任意波形数据(双口RAM:IDT7132,2K*8)(低字节在前,偶地址方式)CH1:0000H01FFH;CH2:200H03FFH,(第一字节为周期长度);D/A中4个数据锁存器地址:CH1:8000H、8001H CH2:8002H、8003H D/A启动地址:8004H(139的Y1);D/A波形数据缓存(在双口):CH1起始地址:400H;CH2:起始地址480H 参数读入地址:CH1:8008H;CH2:800CH CH1参数格式:W1 W0 F1 F0 V1 V0-CH1 CH2参数格式:W1 W0 F1 F0 V1 V0-CH2三种固定波形样本数据(各100点)存放地址(在程序存贮器后段):正玄信号:C00HC4FH,存40点数据,偶地址方式,占80字节 三角波形:D00HD4FH,存40点数据,偶地址方式,占80字节 方波信号:E00HE4FH,存40点数据,偶地址方式,占80字节,2 软件总体设计讨论:该软件应该由主程序和若干个子程序组成。为了便于程序优化,D/A输出子程序应设计成一个各功能共用的子程序,而将不同功能的执行,用不同的入口参数来实现。为此在双口RAM中为2个通道设置2个D/A输出数据缓存区,这样D/A所用的2个数据指针就是固定的。同时根据不同的功能(波形)与频率,将其对应的数据样本取存于对应的缓存。而对于信号频率的控制则在各功能调时设置(根据频率控制的不同方式,则有不同的设置)。在主程序中应完成系统的初始化、默认状态设置等。然后等待“开始”。在功能程序模块设计时应考虑到以下情况:,控制D/A输出的INT1中断服务子程序也必须是各功能共用的,应适合各种功能与方式。D/A工作的开始,用INT1中断启动开始;同时也可用INT1的无中断而停止。D/A输出停止可有两种方式,一是用停止信号产生一上升沿信号送到INT0请求中断,这样避免在整个工作过程中需一直查询而降低CPU效率。另外一种就是用INT1引脚的脉冲信号的停止而停止,这样占用INT0资源。以下设计用第二种方式。以下设计条件:12MHZ/300=40KHZ的脉冲同时送到D/A的/CONVST启动引脚和单片机的INT1引脚。若用这种方式,则频率选择电路的设计就要将固定的40KHZ脉冲信号直接送AD7237的/CONVST 引脚。但2位频率选择码要通过74LS245送到单片机的数据总线。为了提高输出波形的质量,可提高D/A启动脉冲的频率及每周期的数据点数。,软件功能模块设计与讨论,1。参数处理子程序约定:8008H为CH1参数读入地址 800CH为CH2参数读入地址 3AH单元存CH1参数代码。3BH单元存CH2参数代码。30H单元存CH1通道代码;31H单元存CH1幅度代码;32H单元存CH1频率代码;33H单元存CH1波形代码;34H单元存CH2通道代码;35H单元存CH2幅度代码;36H单元存CH2频率代码;37H单元存CH2波形代码;该程序的执行应由P1.7为1而调用,分析讨论:由于2个波形输出的D/A是同步输出共用一个启动信号,而2个通道的频率又是分别设置可以不同。怎样解决这一矛盾?一是用频率低的通道参数F1、F0去控制153,同时再根据二者的倍数关系及与触发信号的关系抽取样本;另外的方法是用一个固定的且满足上限要求的周期脉冲信号去控制D/A,而2个通道数据抽取则依据本通道的频率设定进行。显然是第二种方法易于实现,这种方法还可省去用153设计的频率选择控制电路。以下设计采用由12MHZ时钟300分频得40KHZ的脉冲触发INT1(设置为上升触发)。,信号发生器软件总流程图如下:,参数处理子程序示例:CSCLP:MOV DPTR,#800CH MOVX A,DPTR MOV 3BH,A;存CH2参数 MOV 34H,A MOV DPTR,#8008H MOVX A,DPTR MOV 3AH,A;存CH1参数 MOV 30H,A MOV R1,#31H MOV R6,#03H LPCS1:RR A RR A MOV R1,A INC R1 DJNZ R6,LPCS1,MOV A,3BH;取CH2参数 MOV R6,03H INC R1;(R1)=35HLPCS2:RR A RR A MOV R1,A INC R1 DJNZ R6,LPCS2 ANL 30H,#01H ANL 31H,#03H ANL 32H,#03H ANL 33H,#03H ANL 34H,#01H ANL 35H,#03H ANL 36H,#03H ANL 37H,#03H RET,2 样本调入子程序:控制D/A工作的INT1脉冲为:40KHz,各通道样本点数由其设定的频率参数确定。在程序存贮器中,每种样本预存40点。CH1任意波形原始数据:0000H开始;CH1任意波形原始数据:0200H开始;CH1输出缓存起始地址:双口RAM:400H47FHCH2输出缓存起始地址:双口RAM:480H4FFH缓存的第一个字节是周期长度点数。该子程序调用时的入口参数约定:DPTR:为该通道原始样本起始地址;R0:抽取后的数据缓存起始地址;R2:该通道的频率参数;R7:为该通道的波形代码。,有关P1口定义说明:P1.0接波形选择电路清零端P1.1接频率选择电路清零端P1.2接幅度选择电路清零端P1.3接启动停止电路清零端P1.4接启动停止电路状态输入P1.5空P1.6 CH1通道状态输入端P1.7 CH2通道状态输入端,样本调入子程序示例:RYBP:MOV P2,#04H MOV 3FH,#01H MOV A,R7 CJNE A,#03H,LTY0 MOVX A,DPTR MOVX R0,A RLC A MOV R3,A LRE0:MOV A,#00H MOVX A,DPTR MOVX R0,A INC DPL INC R0 DJNZ R3,LRE0 AJMP LTY3LTY0:MOVX R0,#28H;28H=40 MOV R3,#50H;50H=80 MOV A,R2;取频率参数 JZ LTY2 MOV A,#28H;28H=40,LTY1:RR A MOV R3,AMOV A,3FH RL A MOV 3FH,A MOV A,R3 DJNZ R2,LTY1 MOVX R0,A;存周期点数长度 RLC A MOV R3,A;得到样本字节长度 MOV A,MOV A,R7;(A)为波形参数 ADD A,83H;83H为DPH地址 MOV DPH,A;波形原始样本起始地址LTY2:INC R0 MOV A,3FH ADD A,DPL CLR A MOVC A,A+DPTR MOVX R0,A DJNZ R3,LTY2LTY3:NOP RET,幅度处理子程序:本数据要求幅度分4档选择,且幅度是整倍数关系(用右移作幅度除法时要注意是2个字节的除法)。以下程序调用要求的入口参数:R3:输出数据缓存地址低8位;R4:幅度参数。FDCLP:MOV A,R4 JZ LFD3;MOV P2,#40H;置缓存地址高 8位LFD

    注意事项

    本文(嵌入式系统应用设计训练.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开