单片机应用技术c语言版第3版习题答案Word格式.docx
- 文档编号:13668882
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:29
- 大小:130.23KB
单片机应用技术c语言版第3版习题答案Word格式.docx
《单片机应用技术c语言版第3版习题答案Word格式.docx》由会员分享,可在线阅读,更多相关《单片机应用技术c语言版第3版习题答案Word格式.docx(29页珍藏版)》请在冰豆网上搜索。
//函数功能:
实现软件延时
//形式参数:
无符号整型变量i,控制空循环的循环次数
//返回值:
无
voiddelay(unsignedinti)//延时函数
{
unsignedintk;
for(k=0;
k<
i;
k++);
}
voidmain()//主函数
while
(1){
P1=0x00;
delay(20000);
//调用延时函数,实际参数为20000
P1=0xff;
}
(2)
P1=0x55;
}
@习题2
2.1单项选择题
(1)C
(2)A(3)A(4)A(5)A(6)D(7)C(8)A(9)A(10)C
2.2填空题
(1)外部程序存储器、外部数据存储器、内部程序存储器、内部数据存储器
(2)程序存储器
(3)工作寄存器组、位寻址区、用户RAM
(4)1us、2us
(5)按键复位、上电复位
(6)2、高
2.3回答题
(1)P3口的第二功能是什么?
P3口各引脚的第二功能如下表。
第一功能
第二功能
第二功能信号名称
P3.0
RXD
串行数据接收
P3.1
TXD
串行数据发送
P3.2
外部中断0申请
P3.3
外部中断1申请
P3.4
T0
定时/计数器0的外部输入
P3.5
T1
定时/计数器1的外部输入
P3.6
外部RAM或外部I/O写选通
P3.7
外部RAM或外部I/O读选通
(2)画出单片机时钟电路,并指出石英晶体和电容的取值范围。
单片机时钟电路单片机时钟电路如下图。
一般地,电容C1和C2取30pF左右;
晶体振荡器,简称晶振,频率范围是1.2~12MHz。
晶体振荡频率越高,系统的时钟频率也越高,单片机的运行速度也就越快。
在通常情况下,使用振荡频率为6MHz或12MHz的晶振。
如果系统中使用了单片机的串行口通信,则一般采用振荡频率为11.0592MHz的晶振。
(3)什么是机器周期?
机器周期和晶振频率有何关系?
当晶振频率为6MHz时,机器周期是多少?
51单片机采用定时控制方式,有固定的机器周期。
规定一个机器周期的宽度为6个状态,即12个振荡脉冲周期,因此机器周期就是振荡脉冲的十二分频。
当晶振频率为6MHz时,机器周期是2us。
(4)51单片机常用的复位方法有几种?
画电路图并说明其工作原理。
2种,上电复位和按键复位。
单片机常见的复位电路下图所示。
(a)为上电复位电路。
它利用电容充电来实现复位,在接电瞬间,RST端的电位与VCC相同,随着充电电流的减少,RST的电位逐渐下降。
只要保证RST为高电平的时间大于两个机器周期,便能正常复位。
(b)为按键复位电路。
该电路除具有上电复位功能外,还可以按图2.5(b)中的RESET键实现复位,此时电源VCC经两个电阻分压,在RST端产生一个复位高电平。
图1.23中的信号灯控制电路就采用按键复位电路。
(5)51单片机片内RAM的组成是如何划分的?
各有什么功能?
8051的内部RAM共有256个单元,通常把这256个单元按其功能划分为两部分:
低128单元(单元地址0x00~0x7F)和高128单元(单元地址0x80~0xFF)。
片内RAM的低128个单元用于存放程序执行过程中的各种变量和临时数据,称为DATA区。
内部RAM的高128单元地址为0x80~0xFF,是供给专用寄存器SFR(SpecialFunctionRegister,也称为特殊功能寄存器)使用的。
(6)51单片机有多少个特殊功能寄存器?
它们分布在什么地址范围?
51单片机有21个可寻址的专用寄存器,它们不连续地分布在片内RAM的高128单元中,尽管其中还有许多空闲地址,但用户不能使用。
另外还有一个不可寻址的专用寄存器,即程序计数器PC,它不占据RAM单元,在物理上是独立的。
(7)简述程序状态寄存器PSW各位的含义,单片机如何确定和改变当前的工作寄存器组。
程序状态字PSW是一个8位寄存器,用于存放程序运行中的各种状态信息。
PSW的各位定义如下表所示。
位地址
0xD7
0xD6
0xD5
0xD4
0xD3
0xD2
0xD1
0xD0
位名称
CY
AC
F0
RS1
RS0
OV
F1
P
CY(PSW.7):
进位标志位。
存放算术运算的进位标志。
AC(PSW.6):
辅助进位标志位。
存放算术运算中低4位向高4位进位或借位。
F0(PSW.5):
用户标志位。
供用户定义的标志位,需要利用软件方法置位或复位。
RS1和RS0(PSW.4,PSW.3):
工作寄存器组选择位。
上电或复位后,RS1RS0=00。
OV(PSW.2):
溢出标志位。
存放带符号数加减运算的溢出位。
F1(PSW.1):
保留未使用。
P(PSW.0):
奇偶标志位。
存放累加器ACC数据的二进制形式中1的个数的奇偶性。
一般用于异步串行通信中的奇偶校验。
(8)C51编译器支持的存储器类型有哪些?
单片机的存储器结构包括4个物理存储空间,C51编译器对这4个物理存储空间都能支持。
常见的C51编译器支持的存储器类型如下表所示。
存储器类型
描述
data
直接访问内部数据存储器,允许最快访问(128B)
bdata
可位寻址内部数据存储器,允许位与字节混合访问(16B)
idata
间接访问内部数据存储器,允许访问整个内部地址空间(256B)
pdata
“分页”外部数据存储器(256B)
xdata
外部数据存储器(64KB)
code
程序存储器(64KB)
(9)当单片机外部扩展RAM和ROM时,P0口和P2口各起什么作用?
P0口可以分时复用作为8位数据总线和低8位地址线,P2口作为高8位地址线。
(10)在单片机的C语言程序设计中,如何使用SFR和可寻址位?
采用sfr和sbit来定义专用寄存器和位。
2.4上机操作题
(1)修改程序ex2_1.c,使得蜂鸣器发出有变化的报警声。
提示:
修改延时参数,声音就会有改变。
(2)利用单片机控制蜂鸣器和发光二极管,设计一个声光报警系统。
增加一个LED发光二极管,采用一个I/O口来控制,当报警时,发出声音的同时,灯也闪动。
(3)利用单片机控制按键和发光二极管,设计一个单键控制单灯亮灭的系统。
参考电路如下图:
参考程序如下:
//功能:
单键控制单灯程序
sbitP1_0=P1^0;
//定义P1.0引脚名称为P1_0
sbitP3_0=P3^0;
//定义P3.0引脚名称为P3_0
{
bitled;
//定义位变量led
P3_0=1;
//P3.0作为输入口,置1
led=P3_0;
//读P3.0
if(led==1)P1_0=1;
//判断按键是否按下,没有按下,灯熄灭
if()led==0P1_0=0;
//按键按下,灯点亮
(4)利用单片机控制4个按键和4个发光二极管,设计一个4人抢答器,要求当有某一参赛者首先按下抢答开关时,相应的LED灯亮,此时抢答器不再接受其他输入信号,需按复位按键才能重新开始抢答。
参考电路如下图。
参考程序如下。
实用4路抢答器程序
sbitP3_1=P3^1;
//定义P3.1引脚名称为P3_1
sbitP3_2=P3^2;
//定义P3.2引脚名称为P3_2
sbitP3_3=P3^3;
//定义P3.3引脚名称为P3_3
bitflag;
//定义位变量flag
while(!
flag)
{
if(!
P3_0)
P1=0xfe;
flag=1;
}
elseif(!
P3_1)
{
P1=0xfd;
flag=1;
}
elseif(!
P3_2)
{
P1=0xfb;
flag=1;
P3_3)
P1=0xf7;
while(flag);
}
@习题3
3.1单项选择题
(1)C
(2)A(3)A(4)D(5)D(6)D(7)A(8)B(9)C(10)A
(11)voiddelay(unsignedinti)、delay、delay
3.2填空题
(1)main
(2)sbitFLAG=P3^1;
(3)sfr(4)顺序、选择和循环
(5)表达式和分号(6)if、switch(7)do-while语句、while语句(8)无限次
(9)10000(10)unsignedchar
(11)指定该变量在51单片机硬件系统中所使用的存储区域,并在编译时准确的定位。
(12)’\0’
3.3上机操作题
(1)感应灯控制系统设计。
实现当照明灯感应到有人接近时自动开灯,当人离开后自动关灯的功能。
采用热释电红外传感器模块和发光二极管模拟电灯
(2)自动滑动门开关控制系统设计。
实现当滑动玻璃门感应到有人接近时自动
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 应用技术 语言版 习题 答案