2014中南大学嵌入式微控制器技术参考答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

中南大学考试试卷--评分标准2014--2015学年一学期;嵌入式微控制器技术课程56学时;考试形式:开卷专业年级:自动化、测控、电气12级;总分100分,占总评成绩70%;时间120分钟试卷由两部分组成,第一部分是有关AT89S51/2微控制器,第二部分是有关TMS320F2812DSP。第一部分AT89S51/2微控制器一、填空题:(每空1分,共13分)1、AT89S52微控制器的一个机器周期包含了(6)个状态周期,(12)个振荡器周期。2、执行MOVX@DPTR,A指令,控制信号PSEN、RD、WR的电平状态分别为(高、高、低)。3、串行口控制寄存器SCON的SM0、SM1和SM2位为101时,此时接收数据送入SBUF的条件是(第9位数据为1(或RB8=1)),串行口波特率是由(振荡频率和SMOD位一起确定)确定,如有第9位数据(校验位)应该从(RB8)读取。4、根据AT系列微控制器的命名规则,命名为AT89LV51-24PI微控制器,其电路生产工艺是(CMOS),封装形式和引脚数目是(DIP40),运行电压可以低至(2.7或3.3)V,内置程序存储器类型为(FLASH)。5、AT89S52微控制器单片机的P0和P2口除了可以进行I/O操作外,在系统外扩时,可作为(数据与地址线),此时(P0口)是数据与地址复用口,可通过(ALE)控制信号将地址锁存。二、简答题(10分)如果AT89S52微控制器需要按某一标准波特率(如9600bit/s,19200bit/s等)与其它系统进行串行通信,此时该微控制器晶振频率有什么特别要求,并用具体计算实例说明之。本题答案:此时微控制器晶振频率要满足在通过定时器计数初值分频后能产生指定的标准波特率(也可直接回答晶振频率一般选择11.0592M)。(4分)具体计算实例:波特率计算式为:2SMOD*fosc/(32*12*(28-a))选择晶振频率fosc为11.0592M,计数初值a=FDH,SMOD=0或者/1,就可得到标准波特率9600bit/s或者19200bit/s。(6分)三、程序设计(7分)1、用汇编指令编写程序段:按照CI2时序,完成20个8位二进制数据的传送(P1.0为数据线,P1.1为时针线),数据在数据存储器30H~43H单元,需要起停信号,连续传送,不需考虑接收方的应答。本题答案:起始信号:P1.1=1,P1.0由1变为0(1分)结束信号:P1.1=1,P1.0由0变为1(1分)位数据传送:P1.1=0,P1.0位数据准备(1分)内循环:(2分)外循环:(2分)四、综合设计题(30分)以AT89S52微控制器核心,设计温度循环测量与控制系统。设计要求:(1)温度范围0T100(°C),测量误差小于0.5°C;温度显示格式“XX.X”;(2)系统上电启动;(3)每分钟检测一次温度并显示,利用定时器T0定时,采用中断方式;(4)温度控制方式:当20°CT80°C时,温度正常运行;温度不在此范围时,启动相应升温装置或者降温装置并报警;(5)A/D转换器要求采用TLC549,采用LED显示器,静态或动态显示均可。假设:温度检测放大和调整电路已完成,温度在0°C~100°C变化对应电压为0V~5V,具有较好的线性度;升温、降温两装置也准备好,微控制器的两个引脚输出高电平控制信号就可分别启动相应升温或降温装置。回答下列问题:(1)按上述要求选择合适外围芯片,画出基于AT89S52微控制器的硬件原理图,简要说明微控制器引脚分配方式。(10分)(2)采用模块化程序设计,系统程序由主程序和各功能模块(A/D转换与数据读取、定时器中断服务程序、温度显示和温度控制等模块)组成。画出主程序和温度控制模块的程序流程图。(10分)(3)用C51语言编写定时器中断服务程序和A/D转换与数据读取模块的程序。(10分)本题答案:该题主要考查学生设计微控制器系统的能力,针对要求可有多种答案,不做统一要求,评卷时注意有关关键知识点是否正确再给出合适的分数。(1)硬件原理图的关键知识点是:温度显示电路及引脚分配说明(3分)、电源及晶振(1分)、A/D转换及引脚分配说明(4分)、控制降温、升温两个装置(2分)。(2)主程序流程图至少包括:系统初始化(或者功能具体指定初始化)(2分)、由于A/D转换器要求采用TLC549,先须读一次A/D值作为A/D启动(1分)、开中断(1分)、循环并等待定时器T0中断(3分)。(3)温度控制模块的流程图至少包括:温度分支逻辑判断,分别启动升温装置、启动降温装置和不启动。(3分)(4)定时器T0中断服务程序:基本结构(3分)、逻辑判断(T0定时器需要多次中断才满足1分钟检测一次的要求)(2分),满足1分钟后调用A/D转换与数据读取模块(1分)。(5)A/D转换与数据读取模块的程序:基本结构(1分)、TLC549使能(1分)、按照SPI时序读数据(2分)。第二部分TMS320F2812DSP一、填空题:(每空1分,共12分)1、F2812DSP复位时,程序指针的值是(3FFFC0H)。2、链接器命令文件.CMD文件的主要作用是(给出链接器在链接时的有关信息);文件中关键两条伪指令分别是(MEMORY)和(SECTIONS)。3、CCS中采用通用目标文件格式称为COFF文件,COFF文件一般微控制器的两个引脚分别输出高电平控制信号就可启动相应升温或降温装置。由三种形式的段组成,分别是(.text)、(.data)和.bss预留空间段。4、2812DSP的中断管理可分为(三)级,分别是(CPU级、PIE级)和外设级。每级都有中断标志位IFR,这些中断标志位有的在中断响应过程中硬件清0,有的在中断服务程序中清0,在(外设级)级的中断标志位需要在中断服务程序中软件清0。5、如果要使用PIE向量区存储系统的各个中断服务子程序ISR的地址,则状态寄存器STl的VMAP位为(1),PIE控制寄存器PIECTRL的ENPIE位为(1)。6、指令QMACLP,*AR6%++,*AR7++的第二个操作数的寻址方式是(间接寻址方式或循环间接寻址方式)。二、简答题(10分)从内核的硬件结构特征分析在同样的片外晶振频率下为什么TMS320F2812DSP比AT89S52微控制器的运算速度快很多。本题答案:改进的哈佛结构体系(或者在一个机器周期可同时进行程序读出和数据存取)(3分)、采用流水线技术(3分)、硬件乘法器(2分)、片内锁相环倍频(2分)。三、程序设计(8分)F2812DSP的GPIOA口连接如下图所示,按下列要求编写程序(C程序或者汇编程序):①根据连接图的要求配置GPIOA口;②按键按下,对应LED指示灯亮,根据按键与灯的对应关系(GPIOA0对应GPIOA8…GPIOA7对应GPIOA15),循环检测8个按键状态,点亮或者熄灭相应指示灯。(8分)本题答案:#includedsp281X_Device.h#includedsp281X_Examples.h//以上是头文件(1分),voidmain(void)//主函数{EALLOW;GpioMuxRegs.GPAMUX.all=0x0000;GpioMuxRegs.GPADIR.all=0x00FF;GpioMuxRegs.GPAQUAL.all=0x0080;//可以是其它值EDIS;//以上是GPIOA口的初始化(4分),下面是循环检测按键状态并点亮或者熄灭相应指示灯的程序,有多//种答案,应该包括:循环结构(2分)、读取按键状态(1分)、数据移位(1分)、送数据到GPIOA口(1分)}四、程序分析题(10分)有一关于DSP事件管理器A产生PWM信号的C++程序如下所示。已知DSP系统的片外晶振频率为30MHz,分析该程序,回答下列问题:①在那个或者那几个引脚输出PWM信号?(2分)。②修改那个寄存器就可修改PWM波形的占空比?(2分)。③根据系统的各初始化程序,PWM信号的频率为多少Hz?(4分)。④当前PWM波形的占空比为多少?(4分)。#includedsp281X_Device.h#includedsp281X_Examples.hvoidmain(void)//主函数{InitSysCtrl();//初始化系统时钟和外设时钟,在下面已定义InitGpio();//初始化相应Gpio引脚,在下面已定义InitEv();//初始化EV,在下面已定义for(;;){}//等待产生PWM信号}voidInitSysCtrl(void)//初始化系统时钟和外设时钟{Uint16i;EALLOW;SysCtrlRegs.WDCR=0x0068;//禁止看门狗SysCtrlRegs.PLLCR=0xA;///初始化PLL模块,系统时钟30M*10/2=150Mfor(i=0;i5000;i++){}//延时,使得PLL初始化成功SysCtrlRegs.HISPCP.all=0x0001;//HSPCLK=150M/2=75MSysCtrlRegs.LOSPCP.all=0x0002;//LSPCLK=150M/4=37.5MSysCtrlRegs.PCLKCR.bit.EVAENCLK=1;//使能EVA的时钟EDIS;}voidInitGpio(void)//初始化相应Gpio引脚{EALLOW;GpioMuxRegs.GPAMUX.bit.T1PWM_GPIOA6=1;EDIS;}voidInitEv(void)//初始化EVA和启动EVA{EvaRegs.T1CON.bit.TMODE=2;EvaRegs.T1CON.bit.TENABLE=0;EvaRegs.T1CON.bit.TPS=1;EvaRegs.T1CON.bit.TCLKS10=0;EvaRegs.T1CON.bit.TCLD10=2;EvaRegs.T1CON.bit.TECMPR=1;EvaRegs.GPTCONA.bit.TCOMPOE=1;EvaRegs.GPTCONA.bit.T1PIN=1;//定时器1的比较输出极性是低电平有效EvaRegs.T1PR=18749;EvaRegs.T1CMPR=15000;EvaRegs.T1CNT=0;EvaRegs.T1CON.bit.TENABLE=1;//启动定时器操作,开始产生PWM波}本题答案:(1)GPIOA6或者T1PWM(2分)(2)T1CMPR(2分)(3)2KHz(3分)(4)80%(3分)

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功