单片机应用技术-课后习题参考答案_第1页
单片机应用技术-课后习题参考答案_第2页
单片机应用技术-课后习题参考答案_第3页
单片机应用技术-课后习题参考答案_第4页
单片机应用技术-课后习题参考答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1习题1答案1.2 填空题(1)单片级应用系统是由硬件系统、软件系统组成的(2)除了单片机和电源外,单片机最小系统包括时钟电路、复位电路(3)除了电源 和电线引脚外,XTAL1、XTAL2、RST、引脚信号必须连接相应电路(4) 51系列单片机的存储器主要有4个物理存储空间,即片内数据存储器、片内程序存储器、片外数据存储器、片外程序存储器(5)51系列单片机的XTAL1和XTAL2引脚是时钟电路(6)51系列单片机的应用程序一般存放在程序存储器(7)片内RAM低128单元,按其用途划分为工作寄存器组、位寻址区、用户RAM区(8)但振荡脉冲频率为12MHz时,一个机器周期为1us,当振荡脉冲频率为6MHz时,一个机器周期为2us (9)51系列单片机的复位电路有两种,即上电复位电路、按键复位电路(10)输入单片机的复位信号需延续2个机器周期以上的高电平即为有效。1.3 (4)什么是机器周期?机器周期和晶振频率有何关系?当晶振频率为6MHz时,机器周期是多少?答:规定一个机器周期的宽度为12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。当振荡脉冲频率为6 MHz时,一个机器周期为2 s。(5)51系列单片机常用的复位方法有哪几种?画电路图并说明其工作原理 。答:(a) 上电复位电路 (b) 按键复位电路单片机常见的复位电路图(a)为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RST端的电位与VCC相同,随着充电电流的减少,RST的电位逐渐下降。只要保证RST为高电平的时间大于两个机器周期,便能正常复位。图(b)为按键复位电路。该电路除具有上电复位功能外,若要复位,只需按图(b)中的RESET键,此时电源VCC经电阻R1、R2分压,在RST端产生一个复位高电平。习题3 答案3.2 填空题(2)用C51编程访问51单片机的并行I/O口是,可以按字节,寻址操作,还可以按位操作(4)C51中定义一个可位寻址变量FLAG访问P3口的P3.1引脚的方法是sbit FLAG=P31;(10)下面的while循环执行了无限次空语句。i=3;While(i!=0);(15) 在以下的数组定义中,关键字“code”是为了把tab数组存储在程序存储器ROM中 Unsigned char code b= ;3.3 上机操作题(1)/xiti3_3_1.c第三章习题3.3上机操作题(1)#include void delay(unsigned char i); /延时函数声明void main() /主函数while(1)P1=0x55;/按状态1的方式点亮8个LEDdelay(200);/延时P1=0xaa; /按状态2的方式点亮8个LEDdelay(200);/延时 void delay(unsigned char i)/延时函数参见任务1程序ex1_1.c(2)/xiti3_3_2.c第三章习题3.3上机操作题(2)#include /包含头文件REG51.H void delay(unsigned char i); /延时函数声明void main() /主函数 unsigned char i,l,r; while(1)l=0x10; / 高4位灯的位置初值为Br=0x08; / 低4位灯的位置初值为B for(i=0;i4;i+) P1=(l|r); / 循环点亮灯 l=1; / 低4位灯的位置移动 delay(200); /延时 void delay(unsigned char i)/延时函数参见任务1程序ex1_1.c(3)/xiti3_3_3.c第三章习题3.3上机操作题(3)#include /包含头文件REG51.H void delay(unsigned char i); /延时函数声明void main() /主函数 unsigned char i; unsigned char display=0x89, 0xff,0x86, 0xff,0xc7, 0xff,0xc7, 0xff,0xc0, 0xff;while(1) for(i=0;i10;i+) P1=displayi; /显示字送P1口 delay(200); /延时 void delay(unsigned char i) /延时函数参见任务1程序ex1_1.c习题4 答案4.2 填空题(1)MCS-51系列单片机定时器的内部结构由以下四部分组成: 定时器T0 定时器T1 定时器方式寄存器TMOD 定时器控制寄存器TCON(251系列单片机的定时/计数器,若只用软件启动,与外部中断无关,应使TMOD中的GATE=0(3)51系列单片机的T0用做计数方式时,用工作方式1(16位),则工作方式控制字为TMOD=0x05 (4)定时器方式寄存器TMOD的作用是选择定时器T0/T1的工作方式(5)定时器方式寄存器TCON的作用是控制定时器的启动、停止,标志定时器的溢出和中断情况。(6)51的中断系统由定时控制寄存器TCON、串行口控制寄存器SCON、中断允许寄存器IE、中断优先权寄存器IP等寄存器组成(7)51的中断源有外部中断0、定时器0、外部中断1、定时器1、串行口 (8如果定时器控制寄存器TCON中的IT1和IT0位为0,则外部中断请求信号为电平触发方式(9) 中断源中断请求撤销包括硬件自动清除、软件清除、硬件配合软件共同清除 等三种形式(10)外部中断0的中断类型号为04. 3(1)51系列单片机定时/计数器的定时功能和计数功能有什么不同?分别应用在什么场合 ?答:当定时/计数器设置为定时工作方式时,计数器对内部机器周期计数,每过一个机器周期,计数器增1,直至计满溢出。定时器的定时时间与系统的振荡频率紧密相关,如果单片机系统采用12M晶振,则计数周期为:,这是最短的定时周期,适当选择定时器的初值可获取各种定时时间。当定时/计数器设置为计数工作方式时,计数器对来自输入引脚T0(P3.4)和T1(P3.5)的外部信号计数,外部脉冲的下降沿将触发计数,检测一个由1到0的负跳变需要两个机器周期,所以,最高检测频率为振荡频率的1/24。计数器对外部输入信号的占空比没有特别的限制,但必须保证输入信号的高电平与低电平的持续时间在一个机器周期以上。当需要准确计算时间时往往采用定时器的定时方式,而当要对一些外部事件计数时则采用定时器的计数方式。(6)什么叫中断?中断有什么特点?答:中断是通过硬件来改变CPU的运行方向。计算机在执行程序的过程中,当出现CPU以外的某种情况,由服务对象向CPU发出中断请求信号,要求CPU暂时中断当前程序的执行而转去执行相应的处理程序,待处理程序执行完毕后,再继续执行原来被中断的程序。这种程序在执行过程中由于外界的原因而被中间打断的情况称为“中断”。调用中断服务程序的过程类似于调用子程序,其区别在于调用子程序在程序中是事先安排好的;而何时调用中断服务程序事先却无法确定,因为“中断”的发生是由外部因素决定的,程序中无法事先安排调用指令,因此,调用中断服务程序的过程是由硬件自动完成的。中断的特点:分时操作、实时处理、故障处理习题5答案5.3(2)7段LED静态显示和动态显示在硬件连接上分别具有什么特点?实际设计时应如何选择使用?答:LED静态显示时各位数码管相对独立,公共端恒定接地(共阴极)或正电源(共阳极),每个数码管的8个字段分别与一个8位I/O口地址相连,适合于2个及其以下的数码管显示。动态显示时各位数码管的段选线相应并联在一起,由一个8位的I/O口控制,各位的段选线由另外的I/O口控制。(4)机械式按键组成的键盘,应如何消除按键抖动?答:可以采用硬件和软件两种方式,硬件上可在键输出端加RS触发器或单稳态触发器构成去抖电路,软件上可以在检测到有按键按下时,执行一个10ms左右的延时程序,然后确认该键是否仍保持闭合状态的电平。(1)周期为25ms的锯齿波发生器C语言源程序如下:#include#include#define DA0832 XBYTE0x7fff#define uchar unsigned char#define uint unsigned intuchar i;void delay_100us() TH1=0xff;/ 置定时器初值0xff9c,即65436,定时0.1ms TL1=0x9c; TR1=1; / 启动定时器1 while(!TF1); / 查询计数是否溢出,即定时0.1ms时间到,TF1=1 TF1=0; / 0.1ms时间到,将定时器溢出标志位TF清零void main(void)TMOD=0x10; / 置定时器1为方式1while(1)for(i=0;i=255;i+)/形成锯齿波输出值,最大255DA0832=i;/D/A转换输出delay_100us();(2)周期为50ms的三角波C语言源程序如下:#include#include#define DA0832 XBYTE0x7fff#define uchar unsigned char#define uint unsigned intuchar i,j;void delay_100us() TH1=0xff;/置定时器初值0xff9c,即65436,定时0.1ms TL1=0x9c; TR1=1;/ 启动定时器1 while(!TF1); / 查询计数是否溢出,即定时0.1ms时间到,TF1=1 TF1=0;/ 0.1ms时间到,将定时器溢出标志位TF清零void main(void)TMOD=0x10; / 置定时器1为方式1while(1)for(i=0;i=0;j-)/形成三角波输出值,最大255 DA0832=j;/D/A转换输出delay_100us();(3)周期为50ms的方波C语言源程序如下:#include#include#define DA0832 XBYTE0x7fff#define uchar unsigned char#define uint unsigned intuchar i,j;void delay_25ms() TH1=0x9e;/ 置定时器初值 TL1=0x58; TR1=1; / 启动定时器1 while(!TF1); / 查询计数是否溢出,即定时25ms时间到,TF1=1 TF1=0; / 25ms时间到,将定时器溢出标志位TF清零void main(void)TMOD=0x10; / 置定时器1为方式1while(1)DA0832=255;/形成方波输出值,最大255 ,D/A转换输出delay_25

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论