《单片机原理及应用习题答案(24页).doc》由会员分享,可在线阅读,更多相关《单片机原理及应用习题答案(24页).doc(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-思考与练习题11.1单项选择题(1)单片机又称为单片微计算机,最初的英文缩写是( D ) A.MCP B.CPU C.DPJ D.SCM (2)Intel公司的MCS-51系列单片机是( C )的单片机。 A.1位 B.4位 C.8位 D.16位(3)单片机的特点里没有包括在内的是( C ) A.集成度高 B.功耗低 C.密封性强 D.性价比高(4)单片机的发展趋势中没有包括的是( B ) A.高性能 B.高价格 C.低功耗 D.高性价比(5)十进制数56的二进制数是( A )A.00111000B B.01011100B C.11000111B D.01010000B (6) 十六进制数9
2、3的二进制数是( A ) A.10010011B B.00100011B C.11000011B D.01110011B(7)二进制数11000011的十六进制数是( B ) A. B3H B.C3H C.D3H D.E3H (8)二进制数11001011的十进制无符号数是( B ) A. 213 B.203 C.223 D.233(9)二进制数11001011的十进制有符号数是( B ) A. 73 B.-75 C.-93 D.75(10)十进制数29的8421BCD压缩码是( A ) A.00101001B B.10101001B C.11100001B D.10011100B(11)十进
3、制数-36在8位微机中的反码和补码是( D ) A.00100100B、11011100B B.00100100B、11011011BC.10100100B、11011011B D.11011011B、11011100B(12)十进制数+27在8位微机中的反码和补码分别是( C ) A.00011011B、11100100B B.11100100B、11100101B C.00011011B、00011011B D.00011011B、11100101B(13)字符9的ASCII码是( D ) A.0011001B B.0101001B C.1001001B D.0111001B(14)ASC
4、II码1111111B的对应字符是( C ) A. SPACE B.P C.DEL D. (15)或逻辑的表达式是( B ) A.AB=F B. A+B=F C. AB=F D.(AB)=F (16)异或逻辑的表达式是( C )A.AB=F B. A+B=F C. AB=F D.(AB)=F(17)二进制数10101010B与00000000B的“与”、“或”和“异或”结果是( B ) A.10101010B、10101010B、00000000B B.00000000B、10101010B、10101010B C.00000000B、10101010B、00000000B D.1010101
5、0B、00000000B、10101010B(18)二进制数11101110B与01110111B的“与”、“或”和“异或”结果是( D ) A.01100110B、10011001B、11111111B B.11111111B、10011001B、01100110B C.01100110B、01110111B、10011001B D.01100110B、11111111B、10011001B(19)下列集成门电路中具有与门功能的是( D ) A.74LS32 B.74LS06 C.74LS10 D.74LS08(20)列集成门电路中具有非门功能的是( B ) A.74LS32 B.74LS0
6、6 C.74LS10 D.74LS08 (21)Proteus软件由以下两个设计平台组成( C ) A.ISIS和PPT B.ARES和CAD C.ISIS和ARES D.ISIS和CAD(22)ISIS模块的主要功能是( A ) A电路原理图设计与仿真 B. 高级布线和编辑 C. 图像处理 D.C51源程序调试(23)ARES模块的主要功能是( B ) A电路原理图设计与仿真 B. 高级布线和编辑 C. 图像处理& D.C51源程序调试(24)家用电器如冰箱、空调、洗衣机中使用的单片机主要是利用了它的( D )A高速运算 B. 海量存储 C.远程通信 D. 测量控制1.2问答思考题(1)什么
7、是单片机?单片机与通用微机相比有何特点?单片机是在一块半导体硅片上集成了计算机基本功能部件的微型计算机。两者的比较:(1) 通用微机的CPU主要面向数据处理,其发展主要围绕数据处理功能、计算速度和精度的提高。单片机主要面向控制,数据类型、计算速度和精度都相对低一些;(2) 通用微机中存储器组织结构主要针对增大存储容量和CPU对数据的存取速度。单片机中存储器的组织结构比较简单,寻址空间一般都为64 KB;(3) 通用微机中I/O接口主要面向标准外设(如显示器、键盘、鼠标、打印机等)。单片机的I/O接口是面向用户的特定电路,需要用户掌握接口电路设计技术。(2)单片机的发展有哪几个阶段?它今后的发展
8、趋势是什么? 1、单片微型计算机阶段,即SCM,代表性产品是Intel公司的8位MCS-51系列单片机;2、微控制器阶段,即MCU,代表性产品是基于51内核的微控制器系列产品;片上系统(或系统级芯片)阶段,即SoC,代表性产品有各类专用的SoC器件。单片机总的发展趋势是多功能、高速度、低功耗、高性价比、强I/O功能及结构兼容。(3)举例说明单片机的主要应用领域。主要应用于领域:1、工业自动化控制,如过程控制器、机器人模块、物流计量模块、机电一体化控制系统等;2、智能仪器仪表,如温度仪表、流量仪表、分析仪器、医疗仪器、智能传感器等;3、通信设备,如路由器、标准键盘、打印机、传真机、复印机等;4、
9、汽车电子与航空电子系统,如动力监测系统、自动驾驭系统、运行监视器(黑匣子)等;5、家用电器,如空调、冰箱、洗衣机、微波炉、电视机、音响、电子玩具等。(4)在众多单片机类型中,8位单片机为何不会过时,还占据着单片机应用的主导地位?51单片机技术成熟、价格低廉,可以满足许多简单工况的应用要求;基于51单片机内核发展的8位高性能单片机已弥补了51单片机的性能不足,并已占有相当的市场份额;51单片机涉及微机原理、电工电路、软件编程等许多技术基础,主流微控制器产品也大都与51机保持兼容,非常适合初学者作为计算机入门知识。综上所述,由于8位单片机在学习和应用方面的独特地位,目前仍然不会过时淘汰。(5)掌握
10、单片机原理及应用技术要注意哪些学习方法?单片机是一门课程,与学习其他课程的基本方法是一样的,就是要理解,并做到在理解基础上记忆。单片机更是一门技术,实践环节尤其重要。只有通过实践才能展现单片机的价值、体会到单片机的精髓、激发起学好这门课程的动力。此外,还要养成课前预习 、课后复习 、勤做练习 的良好学习习惯。(6)单片机技术开发的主力军为何是有工程专业背景的技术人员而非计算机专业人员?单片机技术门槛较低,是一种适合大众掌握的先进技术。学习单片机只需要具备基本的电子基础和初中以上文化程度即可参与其中。另外,单片机开发有较强的应用专业背景要求,不懂被控对象的特殊要求,就不可能开发出紧密结合需求的单
11、片机产品。基于上述原因,工程技术人员是单片机技术开发的主力军。(7)学习单片机原理及应用技术需要哪些必要的基础知识? C语言、电子技术基础等(8)二进制数的位与字节是什么关系?51单片机的字长是多少?位即bit,是二进制数中的1位,也是计算机数据存储的最小单位。1个二进制位只可以表示0和1两种状态。字节,即Byte,由8个二进制位构成(1Byte=8bit)。字节是计算机数据处理的基本单位。字,即Word,是计算机一次存取和传送的数据长度,不同计算机的字的长度是不同的,51单片机的字长是8位。(9)简述数字逻辑中的与、或、非、异或的运算规律。运算规律如下:与运算,全1为1其余为0;或运算,全0
12、为0其余为1;非运算,逐位取反;异或运算,相同为0相异为1。(10)Proteus仿真软件为何对学习单片机原理及应用具有重要价值?单片机学习中应特别强调的是理论与实践相结合的方法,然而实验器材的限制常常很难使每个学习者都得到充分的练习机会。近年来出现的单片机仿真设计软件Proteus已经克服这种限制。Proteus不仅可以作为单片机应用的重要开发工具,也可以充当一种非常高效的辅助教学手段。用户只需在PC上即可获得接近全真环境下的单片机技能培训,为学习者提供了极大的便利。(11)Proteus ISIS的工作界面中包含哪几个窗口?菜单栏中包含哪几个选项?参考图1.2,列出图中标出的3个主要窗口,
13、3个主要工具栏和菜单栏的12个选项。(12)利用ISIS模块开发单片机系统需要经过哪几个主要步骤?开发过程是:1、启动ISIS,绘制电路原理图,保存为*.dsn文件;2、输入单片机汇编程序,保存为*.asm文件;3、进行源文件编译,排除语法错误后保存为*.hex文件;4、单步或断点仿真调试,排除逻辑错误后形成最终*.hex文件;5、连续仿真运行。(13) 何谓PCB?利用Proteus ARES模块进行PCB设计需要经过哪几个主要步骤? PCB是印刷电路板Printed circuit board的英文缩写,它是以绝缘板为基材,切成一定尺寸,其上附有用电子印刷术制成的导电图形和孔眼(如元件孔、
14、紧固孔、金属化孔等)的电子元器件安装底板。利用ARES模块进行PCB设计可以从元器件布局、布线、覆铜、形成光绘文件等方面进行考虑。思考与练习题22.1单项选择题(1)下列关于程序计数器PC的描述中_C_是错误的。A. PC不属于特殊功能寄存器BPC中的计数值可被编程指令修改C. PC可寻址64KB RAM空间 DPC中存放着下一条指令的首地址(2)MCS-51单片机的复位信号是_D_有效。A、下降沿B、上升沿C、低电平D、高电平(3)以下选项中第_A_项不是80C51单片机的基本配置。A定时/计数器T2 B128B片内RAMC4KB片内ROMD全双工异步串行口(4)单片机中的CPU主要由_B_
15、两部分组成。A运算器和寄存器B运算器和控制器C运算器和译码器D运算器和计数器(5)在51单片机的下列特殊功能寄存器中,具有16位字长的是_D_。APCONBTCONC SCONDDPTR(6)80C51单片机的ALE引脚是_A_引脚。A地址锁存使能输出端B外部程序存储器地址允许输入端C串行通信口输出端D复位信号输入端(7)80C51单片机的存储器为哈佛结构,其内包括_A_。A4个物理空间或3个逻辑空间B4个物理空间或4个逻辑空间C3个物理空间或4个逻辑空间D3个物理空间或3个逻辑空间(8)在通用I/O方式下,欲从P1口读取引脚电平前应当_B_。A.先向P1口写0B.先向P1口写1C.先使中断标
16、志清零D.先开中断(9)程序状态字寄存器中反映进位(或借位)状态的标志位符号是_A_。ACYB. F0C . OVD. AC(10)单片机中的程序计数器PC用来_C_。A.存放指令 B.存放正在执行的指令地址C.存放下一条指令地址D.存放上一条指令地址(11)单片机上电复位后,PC的内容和SP的内容为_B_。A0000H,00HB. 0000H,07HC . 0003H,07HD. 0800H,08H(12)80C51单片机要使用片内RAM,/EA引脚_D_。A必须接+5VB. 必须接地C . 必须悬空D. 没有限定(13)PSW中的RS1和RS0用来_A_。A.选择工作寄存器区号B.指示复位
17、C.选择定时器D.选择中断方式(14)上电复位后,PSW的初始值为_D_。A1B. 07HC . FFH D. 0(15)单片机80C51的XTAL1和XTAL2引脚是_D_引脚。A.外接定时器B.外接串行口C.外接中断D.外接晶振(16)80C51单片机的VSS(20)引脚是_B_引脚。A.主电源+5VB.接地C.备用电源D.访问片外存储器(17)80C51单片机的P0P3端口中具有第二功能的端口是_D_。AP0B. P1C . P2D. P3(18)80C51单片机的/EA引脚接+5V时,程序计数器PC的有效地址范围是(假设系统没有外接ROM)_D_。A.1000HFFFFHB.0000H
18、FFFFHC.0001H0FFFHD.0000H0FFFH(19)当程序状态字寄存器PSW中的R0和R1分别为0和1时,系统选用的工作寄存器组为_B_。A.组0B.组1C.组2D.组3(20)80C51单片机的内部RAM中具有位地址的字节地址范围是_B_。A01FHB. 20H2FHC .30H5FHD. 60H7FH(21)若80C51单片机的机器周期为12微秒,则其晶振频率为_A_MHz。A1B2C6D12(22)80C51单片机内部程序存储器容量为_C_。A.16KB.8KC.4KD.2K(23)80C51单片机的复位功能引脚是_C_。A.XTAL1B.XTAL2C.RSTD.ALE(2
19、4)80C51内部反映程序运行状态或运算结果特征的寄存器是_B_。A. PCB. PSWC. AD.DPTR(25)PSW=18H时,则当前工作寄存器是_D_。A. 第0组B. 第1组C. 第2组D. 第3组2.2问答思考题(1)51单片机内部结构由哪些基本部件组成?各有什么功能?从图2.1的内部图框中可得到各基本部件的名称,其中CPU具有解释指令、执行操作、控制时序和处理数据等功能;ROM主要用于存放程序代码及程序中用到的常数;RAM主要用于存放中间运算结果、数据暂存和标志位等信息;定时/计数器可实现定时控制、脉冲计数和波特率发生器功能;可编程I/O口可以实现单片机与外部设备间的数据与信息传
20、输功能;可编程串行口具有单片机与外部串行设备间的数据的收发功能;时钟振荡器具有产生单片机各系统所必需的时钟信号的功能。(2)单片机的程序状态字寄存器PSW中各位的定义分别是什么?CY(PSW7)进位标志,AC(PSW6)辅助进位标志,F0(PSW5)用户标志位,RS1、RS0(PSW4、PSW3)工作寄存器组指针,OV(PSW2)溢出标志,F1(PSW1)用户标志位。(3)51单片机引脚按功能可分为哪几类?各类中包含的引脚名称是什么?电源及晶振引脚(4只)VCC、VSS、XTAL1、XTAL2;控制引脚(4只)/PSEN,ALE、/EA、RST;并行 I/O口引脚(32只)P0.0P0.7、P
21、1.0P1.7、P2.0P2.7、P3.0P3.7。(4)51单片机在没接外部存储器时,ALE引脚上输出的脉冲频率是多少? 6分频(5)计算机存储器地址空间有哪几种结构形式?51单片机属于哪种结构形式?普林斯顿结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构,即ROM和RAM位于同一存储空间的不同物理位置处。哈佛结构是一种将程序指令存储器和数据存储器分开设置的存储器结构,即ROM和RAM位于不同的存储空间。51系列单片机属于这种结构。(6)如何认识80C51存储空间在物理结构上可划分为4个空间,而在逻辑上又可划分为3个空间?51系列单片机共有4个存储空间,即片内ROM、片外ROM、
22、片内RAM和片外RAM。由于片内、片外程序存储器是统一编址的,因此从逻辑地址来看只有3个存储器空间,即ROM、片内RAM和片外RAM。(7)80C51片内低128B RAM区按功能可分为哪几个组成部分?各部分的主要特点是什么?可分为3个组成部分:地址00H1FH的32个数据存储单元可作为工作寄存器使用。这32个单元又分为4组,每组8个单元,按序命名为通用寄存器R0R7;地址为20H2FH的16字节单元,既可以像普通RAM单元按字节地址进行存取,又可以按位进行存取。这16字节共有128个二进制位,位地址为00H7FH;地址为30H7FH的80字节单元为用户RAM区,这个区只能按字节存取。在此区内
23、用户可以设置堆栈区和存储中间数据。(8)80C51片内高128B RAM区与低128B RAM区相比有何特点?高128B RAM区中仅有21个字节单元(称为特殊功能寄存器)可被用户使用,其余为系统保留单元用户不可用,而低128 RAM区的所有单元用户都可使用。(9)80C52片内高128B RAM区与80C51片内高128B RAM区相比有何特点? 80C52有两个并列的高128B RAM区,地址都是80HFFH,其中一个作为特殊功能寄存器专用,另一个则可作为普通RAM使用,但却只能采用寄存器间接寻址方式访问。(10)什么是复位?单片机复位方式有哪几种?复位条件是什么?单片机在开机和死机时需要
24、复位,以便使各功能部件处于一个确定的初始状态开始工作。复位可以由两种方式产生,即上电复位方式和按键复位方式。复位的条件是,在RST引脚端出现满足复位时间要求的高电平状态,该时间等于系统时钟振荡周期建立时间再加2个机器周期时间(一般不小于10ms)。(11)什么是时钟周期和指令周期?当振荡频率为12MHz时,一个机器周期为多少微秒?晶振或外加振荡源的振荡周期称为时钟周期,执行一条指令所需要的时间称为指令周期。振荡频率为12MHz时,一个机器周期为1微秒。(12)简述负边沿D触发器的输入端、时钟端和输出端之间的时序关系,解释D触发器的导通、隔离、锁存功能的实现原理。当时钟端为脉冲下降沿之前时,输入
25、端和输出端之间是断开的,此时两者间为隔离状态;当时钟端为脉冲下降沿时,输入端和输出端之间是导通的,输出端跟随输入端变化;当时钟端为脉冲下降沿之后时,输入端和输出端之间又是断开的,此时输出端的状态不会随输入端变化,即为锁存状态。(13)如何理解单片机I/O端口与特殊功能寄存器P0P3的关系?I/O端口P0P3对应于并行I/O口的单元电路,特殊功能寄存器P0P3则可视为并行I/O口中的4个8位的D触发器。(14)如何理解通用I/O口的准双向性?怎样确保读引脚所获信息的正确性?无条件输出和有条件输入的I/O口称为准双向I/O口,读引脚前先写1到I/O口可避免引脚内电位被钳制到0(15)80C51中哪
26、个并行I/O口存在漏极开路问题?此时没有外接上拉电阻会有何问题? P0口工作在通用I/O口方式时,上拉场效应管V2将处于截止状态,由此会产生漏极开路现象,此时若没有外接上拉电阻会造成P0口引脚的电平状态不确定。(16)P0端口中的地址/数据复用功能是如何实现的?当希望利用P0口传输CPU地址和数据信息时,需要先使与门A解锁,同时使多路开关MUX与非门X接通,这样内部“地址/数据”端的电平便可传输到引脚P0.n上。与经由锁存器输出的通用I/O口方式不同,这种方式称为地址/数据分时复用方式。不过要使传输到P0.n上的地址和数据信息分开还需要地址/数据锁存接口电路的配合才行。思考与练习题44.1单项
27、选择题(1)C51数据类型中关键词“sfr”用于定义_D_。A指针变量B字符型变量C无符号变量D特殊功能寄存器变量(2)已知共阴极LED数码显示管中,a笔段对应于字模的最低位。若需显示字符H,则它的字模应为_A_。A. 0x76B. 0x7fC. 0x80D. 0xf6(3)为了实现keil与Proteus的联合仿真运行,需要_B_。A将Keil中形成的hex文件加载到Proteus中,然后在Proteus环境下进行运行B在Keil中形成hex文件,Proteus中形成dsn文件,然后用Keil控制Proteus运行C在Keil中形成hex文件,Proteus中形成dsn文件,然后用Prote
28、us控制Keil运行D将Proteus中形成的hex文件和dsn文件同时打开,然后在Keil环境下进行运行(4)在下图的Keil运行和调试工具条中,左数第二个图标的功能是_D_。A.存盘B.编译C. 下载D. 运行(5)在下图的Proteus ISIS绘图工具条中,包含有电源端子“POWER”的按钮是左数的_D_ 。A第2个B.第6个C.第7个D.第8个(6)Keil开发C51程序的主要步骤是:建立工程、_A_、形成hex文件、运行调试 。A输入源程序B保存为asm文件C指定工作目录D下载程序(7)将aa定义为片外RAM区的无符号字符型变量的正确写法是_D_。A. unsigned char
29、data aa;B.signed char xdata aa; C. extern signed char data aa;D. unsigned char xdata aa;(8)以下选项中合法的C51变量名是_C_。AxdataB.sbitC .startD.interrupt(9)51单片机能直接运行的文件格式是_C_。A*.asmB.*.cC .*.hexD.*.txt(10)LED数码管用作动态显示时,需要_C_。A. 将各位数码管的位码线并联起来B. 将各位数码管的位码线串联起来C. 将各位数码管的相同段码线并联起来D. 将各位数码管的相同段码线串联起来(11)若某LED数码管显示
30、字符“2”的字模是0x5b,则可以判断该系统用的是_A_。A. 共阴极数码管B. 共阳极数码管 C. 动态显示原理D. 静态显示原理(12)C51数据类型中关键词“bit”用于定义_A_。A位变量B字节变量C无符号变量D特殊功能寄存器变量(13)已知P0口第0位的位地址是0x90,将其定义为位变量P1_0的正确命令是_B_。Abit P1_0 = 0x90;Bsbit P1_0 = 0x90;Csfr P1_0 = 0x90;Dsfr16 P1_0 = 0x90;(14)将bmp定义为片内RAM区的有符号字符型变量的正确写法是_A_。A. char data bmp;B.signed char
31、 xdata bmp; C. extern signed char data bmp;D. unsigned char xdata bmp;(15)设编译模式为SMALL,将csk定义为片内RAM区的无符号字符型变量的正确写法是_B_。A.char data csk;B.unsigned char csk;C.extern signed char data csk;D. unsigned char xdata csk;(16)下列关于LED数码管动态显示的描述中_C_是正确的。A一个并行口只接一个数码管,显示数据送入并行口后就不再需要CPU干预B动态显示只能使用共阴极型数码管,不能使用共阳极型
32、数码管C一个并行口可并列接n个数码管,显示数据送入并行口后还需要CPU控制相应数码管导通D动态显示具有占用CPU机时少,发光亮度稳定的特点(17)下列关于行列式键盘的描述中_B_是正确的。A每只按键独立接在一根I/O口线上,根据口线电平判断按键的闭合状态B按键设置在跨接行线和列线的交叉点上,根据行线电平有无反转判断按键闭合状态C行列式键盘的特点是无需CPU的控制,可以自行适应各种单片机的输入接口D行列式键盘的特点是占用I/O口线较多,适合按键数量较少时的应用场合(18)下列关于按键消抖的描述中_D_是不正确的。A机械式按键在按下和释放瞬间会因弹簧开关变形而产生电压波动B按键抖动会造成检测时按键
33、状态不易确定的问题C单片机编程时常用软件延时10ms的办法消除抖动影响D按键抖动问题对晶振频率较高的单片机基本没有影响(19)下列关于C51与汇编语言混合编程的描述中_B_是不正确的。AC51可生成高效简洁的目标代码,简单应用场合下无需采用混合编程B在C51中调用汇编程序的做法只适用于两种程序间无参数传递的应用场合C在C51中嵌入汇编代码时需要对Keil编译器进行生成SRC文件的设置D混合编程对涉及I/O口地址处理和中断向量地址安排等应用具有重要价值(20)在xdata存储区里定义一个指向char类型变量的指针变量px的下列语句中,_A_是正确的(默认为SMALL编译模式)。Achar * x
34、data px;Bchar xdata * px; Cchar xdata * data px;Dchar * px xdata;4.2问答思考题(1)C51与汇编语言相比有哪些优势?怎样实现两者的互补? C51语言具有结构化语言特点和机器级控制能力,代码紧凑,效率可与汇编语言媲美。由于接近真实语言,程序的可读性强,易于调试维护,编程工作量小,产品开发周期短。C51语言与汇编指令无关,易于掌握。但对于有较高程序代码执行速度要求的场合,如I/O 接口地址处理、中断向量地址安排,汇编语言仍有一定优势。可以采用在C51中调用汇编程序和在C51中嵌入汇编代码的方法实现两种语言优势互补。(2)在C51中
35、为何要尽量采用无符号的字节变量或位变量?这两种变量占用内存少,代码长度短,执行效率高。有符号的字节变量虽然也只占用1字节,但CPU需要进行额外的操作来测试代码的符号位,这会降低代码效率。使用浮点型的变量时,编译系统还将调用相应的库函数来保证运算精度,这会明显增加运算时间和代码长度。(3)为了加快程序的运行速度,C51中频繁操作的变量应定义在哪个存储区?由于片内存储器的数据传送多为单周期指令,而片外存储器多为双周期指令,CPU处理前者数据的速度要快于后者,因此频繁操作的变量应尽量定义在片内存储器中,选择如data,bdata或idata等存储类型的变量。(4)C51的变量定义包含哪些要素?其中哪
36、些是不能省略的?变量定义中包含着存储种类、数据类型、存储类型和变量名4项要素,其中数据类型和变量名在变量定义时是不能省略的,存储种类和存储类型在变量定义时可以采用相应缺省值。(5)C51数据类型中的关键词sbit和bit都可用于位变量的声明,但二者有何不同之处?bit型变量的位地址是由编译器为其随机分配的(定义时不能由用户指定),位地址是在片内RAM的可位寻址区(bdata区)中;而sbit型变量的位地址则是由用户指定的,位地址是在可位寻址的SFR单元内(但利用bdata限定变量存储类型后,可将位地址范围扩大到bdata区)。(6)C51中调用汇编语言程序需要解决的3个基本问题是什么?具体规则
37、有哪些?程序的寻址问题通过在汇编文件中定义与C51同名的“函数”来实现的;参数传递问题通过使用指定的寄存器来实现的;返回值传递问题通过使用指定的寄存器来实现的。(7)C51中嵌入汇编代码的具体做法是什么?有什么需要关注的地方?将嵌有汇编代码的C51源文件加入当前工程文件中;根据采用的编译模式,将相应的库文件加入当前工程文件中。此后便可采用一般编译方法进行程序编译。需要注意的是,汇编代码必须放在两条预处理命令#pragma asm和#pragma endasm之间,预处理命令必须用小写字母,汇编代码则大小写字母不限。(8)集成开发环境Vision3的软件界面由哪些组成部分?简述创建一个C51程序
38、的基本方法。软件界面包括4大组成部分:菜单工具栏(标准的Windows风格,共有11个下拉菜单)、工程管理窗口(用于管理工程文件目录,由5个子窗口组成)、文件窗口(用于显示打开的程序文件,通过文件标签进行切换)和输出窗口(用于输出编译过程中的信息,由3个子窗口组成)。创建C51程序基本方法:1、打开工程文件窗口,保存为*.uv2文件;2、选择一款51单片机,如80C51BH;3、打开空白的文本框,输入C51源程序,保存为*.c文件;4、将*.c文件添加到工程文件中;5、设置或核查工程配置选项;6、编译当前工程文件,排除语法错误后保存为*.hex文件;7、仿真调试hex文件,排除逻辑错误后结束创
39、建工作。(9)简述利用Vision3进行C51程序的调试方法。利用Vision3的Debug菜单和调试工具条可对C51程序进行调试。常用的方法有:复位、全速运行、暂停、单步、过程单步、执行完当前函数和运行到光标行。其中最基本的是单步运行与全速运行。全速运行是指一行程序执行完以后自动执行下一行程序,直至程序结束。由于程序运行的速度很快,可以看出程序的总体运行效果。单步运行是每次执行一行程序,执行完该行程序以后即停止,等待单步命令后再执行下一行程序,此时可以观察该行程序执行完以后的当前结果,借此可以找到程序中的问题所在。调试过程中还可通过信息窗口观察运行信息。常用的信息窗口有:命令窗口、反汇编窗口
40、、符号窗口、寄存器窗口、堆栈窗口、观察窗口、存储器窗口、串行窗口、分析窗口等。此外,还可利用系统接口对话框直接观察定时器、中断、并行端口、串行端口的工作状态。(10)Proteus和Keil C的联合使用有什么意义?使用这一组合的单片机仿真开发过程是什么?联合仿真的意义在于:单片机的软硬件系统可作为一个整体运行,利用Vision3的程序调试功能可对ISIS中的虚拟电路进行仿真测试。如果发现问题,可立即在ISIS中进行电路修改或在Vision3中进行程序优化,然后再重新进行调试运行,直至达到所需要求。由于软硬件都能进行仿真检验,从而可加速单片机产品的开发过程。联合仿真法的开发过程是:1、启动IS
41、IS,绘制电路原理图,保存为*.dsn文件;2、启动Vision3,创建C51源程序,保存为*.c文件;3、进行源文件编译,排除语法错误,保存为*.hex文件;4、并列展开ISIS和Vision3窗口,在Vision3中启动调试运行,排除逻辑错误后结束仿真过程。(11)独立式按键的组成原理与编程思路是什么?组成原理是,按键的一端接地,另一端与一个I/O口线连接。若按键接在P0口需外接上拉电阻,而接在P1P3口无需要上拉电阻。编程思路是,当按键或开关闭合时,对应口线的电平就会发生反转,CPU通过读端口电平即可识别是哪个按键或开关发生了闭合。(12)七段LED数码管的工作原理是什么?简述数码管静态
42、显示与动态显示的特点及实现方法。工作原理是,七段LED数码管由7个条形LED组成字符笔段,1个圆形LED作为小数点。其中所有LED阳极连接在一起作为公共端引脚,所有LED阴极单独接出作为段位引脚(共阳极数码管)。反之,共阴极数码管则相反。利用发光二极管正向连接时点亮,反向连接时熄灭的特性,改变笔段的组合电平就能形成不同的字形。静态显示接口采用一个并行I/O口接一个七段数码管的段位引脚,公共端接地或Vcc。这种接法的优点是电路简单,数码管显示亮度稳定。但该方法占用I/O口资源较多。动态显示接口是将n个七段数码管的相同段码引脚并联起来接在一位I/O口线上,每个数码管的位码引脚则分别由一位I/O口线
43、控制。动态显示接口的特点是占用I/O口资源较少,但占用CPU机时较多。静态显示采用CPU单独控制显示的做法,即将被显示字符的段码值送入相应I/O口的锁存器中就能使数码管恒定显示,每位显示字符的段码值只需CPU输出一次即可。动态显示采用CUP分时控制显示的做法,即CPU需要轮流输出待显示字符串中某位字符的段码和位码,每一时刻只有一只数码管为显示状态其他数码管都为黑屏。当段码值和位码值的循环刷新速度很快时,由于视觉暂留特性,人眼不会感到显示值在闪烁,而是看到稳定显示的字符串。(13)行列式键盘的组成原理与编程思路是什么?行列式键盘组成原理是:将I/O口分为行线和列线,按键设置在跨接行线和列线的交点
44、上,列线通过上拉电阻接正电源。采用软件扫描查询法的编程原理是,根据按键压下前后,所在行线的端口电平是否出现翻转,判断有无按键闭合动作。 (14)独立式键盘与行列式键盘的特点和不足是什么?独立式键盘的特点是电路简单,软件处理工作量小,但占用的I/O口线较多。行列式键盘的特点是占用I/O口线较少但软件处理工作量较大。思考与练习题55.1 单项选择题(1)外部中断0允许中断的C51语句为_D_。A RI=1;BTR0=1;CIT0=1;DEX0=1; (2)按照中断源自然优先级顺序,优先级别最低的是_B_。A外部中断INT1B串口发送TIC定时器T1D外部中断INT0(3)当CPU响应定时器T1中断请求时,程序计数器PC里自动装入的地址是_D_。A0003HB000BHC0013HD001BH(4)当CPU响应定时器/INT0中断请求时,程序计数器PC里自动装入的地址是_A_。A0003HB000BHC0013HD001BH(5)当