资源预览内容
第1页 / 共35页
第2页 / 共35页
第3页 / 共35页
第4页 / 共35页
第5页 / 共35页
第6页 / 共35页
第7页 / 共35页
第8页 / 共35页
第9页 / 共35页
第10页 / 共35页
亲,该文档总共35页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
单片机原理与嵌入式应用习题及复习习题及复习Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.考试题型一选择题一选择题(每题每题2分,共分,共30分分) 二、名词解释题二、名词解释题(每题每题4分,共分,共16分分) 三、简答题(每题三、简答题(每题6分,共分,共24分)分)四、编程填空题四、编程填空题.(10分)分) 五、设计题五、设计题.(10分)分)六、编程题六、编程题.(10分)分)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.一、名词解释题一、名词解释题MCUCOP中断中断向量 中断服务程序SCI 通用I/O键盘波特率Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.一、名词解释题一、名词解释题行扫描法 行线定义为输出,列线定义为输入并接上拉电阻,每次一根行线输出为0,其它为1,检测列线的输入的电平中是否有低电平,即逻辑值0,从而判断键盘的按键是否被按下。LED位选线扫描法 SPI 是一种同步串行通信接口,发送数据不需要开始位和结束位,严格地在主机的时钟频率下以相同的时序模式在单线上按照先高位后低位或者先低位后高位的一位一位地传送。用于微处理器和外围扩展芯片之间的串行连接。A/D 滤波 物理量回归 PWM定时器:在确定时钟频率下,不断加1,得到规定的计数大小,所经历的时间,用于MCU编程控制的模块。上拉电阻:若MCU的某个输入引脚通过一个电阻接到电源上(VCC)上,则这个电阻称为“上拉电阻”。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.二、总体知识二、总体知识计算机是因科学家需要一个高速的计算工具而产生的,进而寄予更多的要求,比如通信、测控等,出现微控制器(单片机)。单片机(MCU)的基本含义在一片芯片上集成了中央处理单元(CPU)、存储器(RAM/ROM/EPROM/FLASH等)、定时器/计数器及多种输入输出(I/O)接口的比较完整的数字处理系统嵌入式系统概念面向测控对象,嵌入到实际应用系统中,实现嵌入式应用的计算机称为嵌入式计算机系统,简称嵌入式系统。MCU内部总线(控制总线、数据总线、地址总线)CPURAMFlash存储器A/D转换接口工作支撑模块定时器接口串行通信接口其他I/O模块一个典型的MCU内部框图 Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.与嵌入式软件相关的术语工作方式:主循环、中断、事件触发等中断(软件中断、硬件中断、中断源、中断向量、中断服务程序):指中央处理器CPU正在处理某件事情的时候,外部发生了某一事件,请求CPU迅速去处理,CPU暂时中断当前的工作,转入处理所发生的事件,处理完后,再回到原来中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称为中断系统,产生中断的请求源称为中断源。由软件指令引起的一个程序的中断则称为软件中断;而由某一特定功能引脚或基于芯片设备产生的中断则称为硬件中断。 中断向量:响应特定中断而运行的一段程序所在的首地址 RTOS,uCOS-II(一种操作系统,运行于嵌入式系统上,在可预测的时间间隔内,能对特定的事件做出反应)用MCU设计系统时,选MCU要考虑的因素有哪些。选择MCU时要考虑的因素有:处理性能、功耗、价格、封装形式、软硬件开发工具、设计者的熟悉程度等。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.AW60基本知识命名规则 如:MC9S08AW60、MC9S08GB60、MC9RS08KA2 MC、PC是否有FLASH核是HC08、HCS08、RS08等存储器的大小Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.存储器(RAM/FLASH,512B/32KB)RAM:0x00700x086F(2K)FLASH:0x087017FF(3984),0x1860FFFF(59296)地址大小的计算,如8位:$00$FF 大小为256B 16位:$0000$FFFF大小为64KBIO的种类:PTA、PTB、PTC、PTD、PTE、PTF、PTG(7种)大部分的口有引脚复用功能C、G都是7个引脚,其余都为8个引脚。控制类RST(复位)和IRQ(唯一只接收中断的引脚)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.通用IO接口通用I/O:是基本的输入/输出,有时也称并行I/O。作为通用输入引脚时,MCU内部程序可以读取该引脚,知道该引脚是“1”(高电平)或“0”(低电平),即开关量输入。作为通用输出引脚时,MCU内部程序向该引脚输出“1”(高电平)或“0”(低电平),即开关量输出。 方向寄存器PTADD、PTBDD、数据方向寄存器的一位:数据方向寄存器的一位:0 0定义输入,定义输入,1 1定义输出定义输出数据寄存器PTAD、PTBD、 输出时:数据寄存器的一位:输出时:数据寄存器的一位:0 0输出低电平输出低电平 1 1输出高电平输出高电平 输入时:数据寄存器的一位:输入时:数据寄存器的一位:0 0代表外部输入低电平代表外部输入低电平 1 1代表外部输入高电平代表外部输入高电平上拉电阻允许寄存器PTAPE、 在引脚被定义成在引脚被定义成输入输入时,可通过上拉电阻允许寄存器定义有无内部时,可通过上拉电阻允许寄存器定义有无内部上拉电阻:上拉电阻: 0 0没有内部上拉电阻没有内部上拉电阻 1 1有内部上拉电阻有内部上拉电阻 Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.08C中的位操作语句及对应的编译后的中的位操作语句及对应的编译后的指令指令C语句语句编译后的汇编指令编译后的汇编指令PTAD |=(17); / PTA的第的第7位置位置1Bset 7,0x00 PTAD &= (17); /PTA的第的第7位清位清0Bclr 7,0x00PTAD = (17); / PTA的第的第7位取反位取反LDA 0x00EOR #-128STA 0x00if (PTAD & 0x81) = 0) / 检检查查第第7位位和和第第0位位是否为是否为0LDA 0x00BIT #-127BNE 0x*测试或赋值某一位时,用1、2方法,多位时用3、4方法Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.IO举例一用于输入线路中的上拉或下拉电阻不会因开关断开而悬空的电阻。判断设备类型(I/O,基本的是信息流向)I:上拉/O:初始值1:PTX|=(1bit),0:PTX&=(1bit)a:输入 b:输出MCUPTB.6RDMCUPTC.4RK根据接线图,对IO口进行初始化。写出PTC.4的方向( PTCDD )定义和上拉电阻(PTCPE)的实现的两条C语句; 根据给出的接线图,对IO口进行初始化。(1)写出PTB.6的方向定义( PTBDD )的实现的一条C语句;(2)写出PTB.6口的二极管小灯初始为暗的一条C语句。 (1) PTBDD |= (16); (2) PTBD &= (16);PTCDD &= (14);PTCPE |= (14);Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.IO举例二输入R输出MCUPTB.6D根据接线图,对IO口进行初始化。根据给出的接线图,对IO口进行初始化。( 1) 写 出 PTB.6的 方 向 定 义(PTBDD)的实现的一条C语句;(2)写出PTB.6口的二极管小灯初始为暗的一条C语句。 (1) PTBDD |= (16); (2) PTBD |= (16);PTCDD &= (14);MCUPTC.4RK+5V+5VEvaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.IO举例三根据接线图,对IO口进行初始化。PTADD&=(15);PTAPE|=(15);(该句最好不要)PTADD|=(12);PTAD |=(18波特率寄存器L字节=波特率寄存器的值Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.举例的编程1、前面不同波特率的计算。2、修改程序。3、利用现有的函数编写主函数main()或者中断服务程序。比如:用SCIre1接收,用SCIsend1发送。书本中用的是SCIreN、 SCIsendN,将其修改。用函数,首先了解函数的功能,其次要注意其参数的含义和返回值。4、在设计中,SCI常常用于调试,将数据发送至计算机显示,方便的、简单。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.键盘键盘是若干个按键组成的开关矩阵,接收用户的按键信息,是实现人-机交互的输入设备。是一个常用的输入设备。读入键值有:直读方式和扫描方式;响应方式分为查询法、中断法查询:可以用PTA或者其他端口用于和键盘引脚相连(如图,见下一页)中断:用D(7,3,2)、G(40)端口Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.VDD MCU内部上拉电阻PTA0PTA1PTA2PTA3PTA7PTA6PTA5PTA4 列线 n1 n2 n3 n4行线m1 m2m3m4 1 2 3 A 4 5 6 B 7 8 9 C * 0 # DEvaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.44键盘的扫描方法将PTA口的8根数据线和键盘8根引脚相连,PTA的4根定义为输出,4根定义为输入。最初4根输出线和输入线的电平都为高。扫描时,其中一根输出线为低电平,接着检测4根输入线的电平是否有为低的。没有,则换一根输出线为低电平,重新检测4根输入线的电平是否有为低的。有,则将PTA的数据寄存器的值作为该按下键的键值。若4根输出线分别为低电平,都没有检测出输入线电平为低,则说明没有按键被按下。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.LED和LCD都是输出设备,用于显示数据。因几个8段数码管共用数据线,采用位选线扫描法让每个数码管有字符显示。其原理:要让各个数据管(共阴极的)均显示需要让各个数据管(共阴极的)均显示需要的数字,则必须逐个使相应位选信号为要的数字,则必须逐个使相应位选信号为0,其,其他位选信号为他位选信号为1,并将该位要显示的一位数字送,并将该位要显示的一位数字送到数据线上。这种方法叫到数据线上。这种方法叫“位选线扫描法位选线扫描法”。虽然。虽然每个时刻只有一个数码管有效,但只要延时适当,每个时刻只有一个数码管有效,但只要延时适当,由于人眼的由于人眼的“视觉暂留效应视觉暂留效应”(约约100ms左右左右),看,看起来则是同时显示的。起来则是同时显示的。 Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.4连排8段数码管和MCU的连接线 8位数据线 有12根 4位位选线LCD和MCU的连接线 8位数据线 有11根 3位控制线注意注意LCD显示的数据是字符型数据,所以如果给的数据是数值型的,则要转换,要进行转换。方法:x=x+0注意注意LED显示的数据是编码数据(数值型),所以如果给的数据是字符型的,则要转换,要进行转换。方法: x=x-0Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.LED和LCDCS3a b c d e fg dpCS2a b c d e fg dpCS1a b c d e fg dpCS0a b c d e fg dp4连排共阴极8段数码管内部结构图 LCD(YM1602C)16151413121110090807060504030201LCD_RWLCD_RSPTB7PTB6PTB5PTB4PTB3PTB2PTB1PTB0PTC2PTC1PTC0GP32LCD_D7LCD_D6LCD_D5LCD_D4LCD_D3LCD_D2LCD_D1LCD_D0 LCD_EGND AW60与LCD的连接 Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.SPISPI(串行外设接口)是Freescale公司推出的一种同步串行通讯接口,在主机的同步时钟频率控制下以相同的时序模式在单线上按照先高位后低位或先低位后高位一位一位地传送,没有“开始位”和“停止位”,主要用于MCU和外围扩展芯片之间的串行连接,现已发展成为一种工业标准。全双工(或设置为半双工)。主、从工作方式。 4钟工作时序可选4种中断标志Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.A/D转换模块的功能是将电压之类的模拟信号转换为对应的数字信号。实际应用中,这个电压信号可能由温度、湿度、压力等实际物理量经过传感器和相应的变换电路转化而来。经过A/D转换,MCU就可以处理这些物理量。 B、D口引脚作为A/D转换引脚时,也叫作AD15 pin AD0 pin AW60内部有16路8位/10位A/D转换,没有D/A转换。采样精度(指数字量变化一个最小量时模拟信号的变化量,即我们通常所说的采样位数) 采样速率 完成一次A/D采样所要花费的时间滤波(为了使采样的数据更准确,必须对采样的数据进行筛选去掉误差较大的毛刺,有:中值滤波和均值滤波 ) 物理量回归(得到稳定的A/D采样值以后,还需要把A/D采样值与实际物理量对应起来,知道采样数字所代表的实际物理值,才有实际意义. ) 模拟量转换Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.定时接口 HCS08系列的单片机定时器的核心是一个工作时处于不断加1的16位计数寄存器,在确定计数频率下,不断加1,得到规定的计数大小,所经历的时间,用于MCU编程控制的模块,称为定时器/计数器。 功能有:定时器溢出中断每路通道的输入捕捉(捕捉输入脉冲的沿跳变,记录沿跳变的时刻)每路通道的输出比较(在规定的时刻输出所需电平)脉宽调制波PWM (用于控制电机的转速)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.定时器举例 设fBUS2MHz=2000000Hz,希望产生t=500ms的定时间隔,设T1MOD=n,分频因子为p,则它们的关系为:t= n/(fBUS/p),另n=0xFFFF=65535,p=0.52000000/65535=15.26,即p最小15,所以p最小选择p=16,比如取p=24=16,则n=0.5(2000000/16)=62500=$F424,装入预置寄存器,满足要求,若p取更大值也行,p=25=32,n=0.5(2000000/32)=31250 =$7A12,或p=26=64,则n=0.5(2000000/64) =15625=$3D09。 或p=27=128,则n=0.5(2000000/128) =7812.5。(有小数,计数不准确,则不采用)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.Flash存储器 特点电可擦除、无需后备电源来保护数据 可在线编程 存储密度高、低功耗、成本较低 单一电源电压供电 AW60的FLASH区:?(见前面)大小约60KB两种编程模式:通过编程器来完成,Flash存储器工作于这种情况,叫监控模式或写入器模式;在程序运行过程中,有可能对Flash存储区的数据或程序进行更新,Flash存储器工作于这种情况,叫用户模式或在线编程模式 可以通过寄存器设置区域保护。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.Flash存储器 基本概念基本操作:擦除和写入Flash存储器组织单位擦除的最小单位是页擦除(1页=512B),擦除是将0改写为1,即01写入的基础是行写入(1行=64B),可以一个字节一个字节写入。写入是将1改写为0,即10Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.其他功能模块PLLPLL锁相环:可以产生各种频率,将一个较低的频率源,提升而得锁相环:可以产生各种频率,将一个较低的频率源,提升而得到一序列稳定度高的精度高的频率。到一序列稳定度高的精度高的频率。低功耗模式低功耗模式(1)STOP指令指令 STOPSTOP模式又分为模式又分为STOP1STOP1、STOP2STOP2、STOP3STOP3模式。模式。MCUMCU处于处于STOP1STOP1功耗功耗模式(功耗最小)。模式(功耗最小)。但但AW60AW60芯片不具有芯片不具有STOP1STOP1模式功能。模式功能。AW60AW60具有具有功耗比功耗比STOP1STOP1模式稍高的模式稍高的STOP2STOP2和和STOP3STOP3模式。模式。 STOP1 STOP1模式下只有模式下只有IRQIRQ引脚、引脚、RESETRESET引脚可以唤醒。引脚可以唤醒。 STOP2 STOP2模式唤醒条件:引脚模式唤醒条件:引脚IRQIRQ、RESETRESET、RTIRTI中断。中断。 STOP3 STOP3模式唤醒条件:模式唤醒条件:IRQIRQ引脚引脚 、RESETRESET引脚引脚 、RTIRTI中断、中断、KBIKBI中中断、断、LVDLVD中断、中断、ADCADC中断。在后两种停止模式下,所有内部时钟都中断。在后两种停止模式下,所有内部时钟都被关闭。工作电流在被关闭。工作电流在 A A级。级。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.(2)WAIT指令指令 在程序中运行在程序中运行WAIT指令,使指令,使MCU处于处于WAIT低功耗模式。低功耗模式。WAIT模式的功耗比模式的功耗比STOP模式大。工作电流在模式大。工作电流在mAmA级。进入级。进入WAITWAIT模式后,模式后,CPUCPU内部条件码寄存器内部条件码寄存器CCRCCR中的中的I I位被清零(允许总中断),一旦有位被清零(允许总中断),一旦有中断请求发生,中断请求发生,CPUCPU被唤醒,退出被唤醒,退出WAITWAIT模模式,进入式,进入RUNRUN模式,执行模式,执行WAITWAIT后面的第一后面的第一个语句。个语句。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.系统正常操作监视模块系统正常操作监视模块COP系统正常操作监视模块系统正常操作监视模块(Computer Operating Computer Operating ProperlyProperly,COPCOP)俗称看门狗()俗称看门狗(WatchdogWatchdog)。该模块有)。该模块有一个自由运行的计数器,若在一个自由运行的计数器,若在SOPTSOPT中设定中设定COPCOP允许后,允许后,用户程序必须周期地向系统复位状态寄存器(用户程序必须周期地向系统复位状态寄存器(SRSSRS)的)的地址写任何值被地址写任何值被COPCOP计数器重置(使用指令计数器重置(使用指令STA SRSSTA SRS,叫做给看门狗喂食),以清除叫做给看门狗喂食),以清除COPCOP计数器。若系统由于计数器。若系统由于某种原因使软件工作不正常时,某种原因使软件工作不正常时,COPCOP计数器就得不到周计数器就得不到周期地清零,那么当它溢出时便产生期地清零,那么当它溢出时便产生COPCOP复位,以防止程复位,以防止程序进入不可预料的操作。序进入不可预料的操作。 Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.LED显示温度压力光湿度SCI通信PC机SPI通信1路AD线GP328个PTA口5个PTC口8个PTB口6个PTD口2个PTE口GP326个PTD口5个PTC口8个PTB口8个PTA口2个PTE口利用MC9S08AW60 MCU设计一个数据采集系统,功能是:采集一路光,将数据显示在4连排共阴极8段LED数码管,并送入PC机显示。在给定的框图模块中选择能满足功能要求的框图组合一个硬件系统的结构图,并简要说明数据从采集到显示的过程。(供给的对象框图、模块框图、PC机框图、MCU框图等,图形中引脚数量根据需要而改写)LCD显示Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.利用MC9S08AW60MCU设计一个实验,功能是:采集33键盘的按键,将数据显示在LCD液晶屏,并送入PC机显示。分析至少占用MCU几个口,各自需多少个IO引脚,所用引脚中用于数据输入、输出的引脚各有几个。需要先按普通IO口定义的键盘和LCD,用c语言表达其普通IO口定义。并简要说明数据从键盘到LCD显示的流程。(注:画出系统框图,图中标注数据流向、端口名和IO引脚数)键盘的IO口初始化:PTADD|=0b00000111;PTADD&=0b11000111;PTAPE|=0b00111000;LCD的IO初始化:PTBDD=0b11111111;PTCDD|=0b00000111;数据从键盘到LCD显示的流程:MCU通过A2A0打出数据对键盘扫描,A5A3返回键盘按键信息,MCU运算得到对应按键的定义值,将该定义值发给接在B7B0和C2C0的LCD液晶显示,并由E0(Tx)经MAX232将TTL电平转换232电平送给PC机显示。33键盘3LCDA5A3A2A0B7B08C2C0E1E0MAX232PCMCU其他键盘22 23 44呢?串口一用,两个引脚就一起用。Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.程序填空题:他人给你编写好的程序文件,即要求会增加功能模块,会加入相应的代码文件和编写相应的语句一. 主程序、中断文件二.Includes.h三.(举例)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.编写小驱动程序:要求会简单编写功能模块函数键盘:P147 KBDef(键个数)若扫描线接口变了或者2 3键盘呢?扫描线?SCI: P126 SCIsend1和SCIrelLED:P154 LEDshow LEDshow1 (位数)。 LED课本是4个字,若3个字呢?ADC:ADCValue(P272)Evaluation only.Created with Aspose.Slides for .NET 3.5 Client Profile 5.2.0.0.Copyright 2004-2011 Aspose Pty Ltd.
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号