单片机编程期末考试试题(含详细答案)_第1页
单片机编程期末考试试题(含详细答案)_第2页
单片机编程期末考试试题(含详细答案)_第3页
单片机编程期末考试试题(含详细答案)_第4页
单片机编程期末考试试题(含详细答案)_第5页
已阅读5页,还剩1页未读, 继续免费阅读

下载本文档

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

文档简介

单片机编程期末考试试题(含详细答案)适用范围:高职/本科电子信息、自动化专业(51单片机为主)考试时长:90分钟满分:100分说明:试题侧重基础理论与实操编程,无超纲内容,答案步骤清晰、贴合实际项目应用一、单项选择题(每题2分,共20分)1.51单片机的核心运算位数是()A.4位B.8位C.16位D.32位2.51单片机中,程序存储器的最大寻址空间为()A.64KBB.32KBC.128KBD.256KB3.单片机复位后,程序计数器PC的默认值为()A.0001HB.0000HC.0010HD.1000H4.51单片机的定时器/计数器工作方式1的计数位数是()A.8位B.13位C.16位D.12位5.以下不属于51单片机通用IO口的是()A.P0B.P1C.P3D.P66.51单片机中,开启总中断的控制位是()A.EAB.EX0C.ET0D.ES7.按键消抖的常规延时时间范围是()A.1~5msB.10~20msC.50~100msD.100~200ms8.51单片机串口通信默认的工作模式是()A.方式0B.方式1C.方式2D.方式39.P0口作为输出口使用时,必须外接()才能正常输出高电平A.限流电阻B.上拉电阻C.下拉电阻D.稳压二极管10.单片机中断优先级寄存器是()A.TCONB.IPC.IED.TMOD二、填空题(每空1分,共20分)1.51单片机内部包含________、________、存储器、IO接口、定时器等核心模块。2.51单片机存储器分为________存储器和________存储器两类,二者独立编址。3.P3口具备多功能复用特性,其中P3.0为________引脚,P3.2为________外部中断0引脚。4.定时器/计数器有两种工作模式,分别是________模式和________模式。5.51单片机外部中断有两种触发方式:________触发和________触发。6.串口通信中,常用的波特率单位是________,51单片机常用基准波特率为9600、________。7.单片机按键检测分为________检测和________检测两种方式。8.程序跳转指令中,SJMP为________跳转,LJMP为________跳转。9.51单片机堆栈操作遵循________、________的原则。10.点亮LED常用的两种电路模式是________点亮和________点亮。三、简答题(每题6分,共30分)1.简述51单片机P0~P3四个IO口的主要区别。2.说明单片机按键抖动产生的原因,以及软件消抖的实现原理。3.简述51单片机定时器方式1的特点及适用场景。4.单片机中断服务函数的编写规则有哪些?5.简述串口通信方式1的工作特点。四、编程应用题(每题15分,共30分)题目1:编写51单片机C语言程序,实现P1口8个LED灯循环流水点亮(从低位到高位依次点亮,循环往复),延时自行编写。题目2:编写51单片机C语言程序,利用定时器0方式1实现1秒定时中断,控制P1.0引脚LED灯每秒翻转一次(亮灭交替)。详细参考答案一、单项选择题答案1.B2.A3.B4.C5.D6.A7.B8.A9.B10.B选择题核心解析:1.标准51单片机为8位单片机,单次处理8位二进制数据;2.51单片机程序地址总线16位,寻址范围2^16=65536,即64KB;3.单片机上电复位后,所有程序从0000H地址开始执行;4.定时器方式1为16位自动重装模式,最大计数65536次;9.P0口为开漏输出,无内部上拉电阻,必须外接上拉电阻才能输出高电平,其余P1-P3口自带内部上拉;10.IP为中断优先级寄存器,IE为中断允许寄存器。二、填空题答案1.中央处理器(CPU)、寄存器组2.程序(ROM)、数据(RAM)3.串口接收(RXD)、INT04.定时、计数5.电平、边沿6.bit/s(比特每秒)、4800(115200也可)7.查询、中断8.短距离、长距离9.先进后出、后进先出10.共阴极、共阳极三、简答题答案1.P0~P3IO口主要区别(1)P0口:双向IO口,无内部上拉电阻,开漏输出,只能灌电流,输出高电平需外接上拉电阻,可作为地址/数据总线使用;(2)P1口:准双向通用IO口,自带内部上拉电阻,仅作为普通IO口使用,无复用功能;(3)P2口:准双向IO口,自带内部上拉电阻,可作为高8位地址总线使用;(4)P3口:准双向IO口,自带内部上拉电阻,具备多功能复用,包含串口、外部中断、定时器、读写控制等功能。2.按键抖动原因及软件消抖原理原因:机械按键按下和松开瞬间,内部弹片会产生短暂的弹性震动,持续10~20ms,导致电平反复跳变,单片机误检测为多次按键。软件消抖原理:检测到按键电平变化后,不立即判定按键生效,先延时10~20ms避开抖动时间段,再次检测按键电平,若电平状态一致,才确认按键按下或松开,完成消抖。3.定时器0方式1特点及适用场景特点:16位定时/计数模式,由TH0、TL0两个8位寄存器组成,最大计数值65536;无自动重装功能,每次定时溢出后需要手动给寄存器赋值;计数精度高、定时范围广。适用场景:适用于需要精准长时间定时、低频脉冲计数、延时函数精准校准等场景,是单片机项目中最常用的定时模式。4.中断服务函数编写规则(1)中断函数无返回值、无参数,函数类型为void;(2)必须添加中断号,51单片机中断号固定对应对应中断源;(3)函数内部代码尽量精简,避免延时过长、嵌套调用复杂函数;(4)中断触发后,需根据需求手动清除中断标志位(部分中断硬件自动清零);(5)禁止在中断函数中使用死循环。5.串口通信方式1工作特点(1)为8位异步通信模式,一帧数据包含1位起始位、8位数据位、1位停止位,无校验位;(2)波特率可通过定时器1溢出率设置,波特率可调、通用性强;(3)支持双工收发数据,是单片机与外设、电脑串口通信的主流模式;(4)数据收发完成后会置位对应的中断标志位,可通过查询或中断方式处理数据。四、编程应用题答案(C语言,标准51内核)题目1:流水灯程序c

#include<reg51.h>

//简单软件延时函数

voidDelay_ms(unsignedintt)

{

unsignedinti,j;

for(i=t;i>0;i--)

for(j=110;j>0;j--);

}

voidmain(void)

{

unsignedcharled=0x01;//初始最低位点亮

while(1)

{

P1=~led;//低电平点亮LED(共阳极电路)

Delay_ms(500);//延时500ms

led=led<<1;//左移一位

if(led==0x00)//移到最高位后重置

{

led=0x01;

}

}

}程序说明:采用共阳极LED电路,低电平点亮;通过变量左移实现逐位点亮,延时500ms切换一次,循环往复。题目2:定时器0中断1秒翻转LEDc

#include<reg51.h>

sbitLED=P1^0;

unsignedintcnt=0;//中断计数变量

//定时器0初始化方式116位定时

voidTimer0_Init(void)

{

TMOD|=0x01;//定时器0工作方式1

//初值赋值,11.0592晶振,定时50ms

TH0=0x4C;

TL0=0x00;

ET0=1;//开启定时器0中断

EA=1;//开启总中断

TR0=1;//启动定时器0

}

//定时器0中断服务函数

voidTimer0_ISR(void)interrupt1

{

TH0=0x4C;//重装初值

TL0=0x00;

cnt++;

if(cnt>=20)//50ms*20=1000ms=1s

{

cnt=0;

LED=~LED;//翻转LED状态

}

}

voidmain(void)

{

温馨提示

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

评论

0/150

提交评论