《2022年单片机试卷-浙江科技学院 .pdf》由会员分享,可在线阅读,更多相关《2022年单片机试卷-浙江科技学院 .pdf(7页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、单片机试卷一、填空1,和通用微机中广泛采用的将程序存储器和数据存储器合用一个存储器空间的结构不同, 80C51 单片机将程序存储器和数据存储器在结构上分开,并分别寻址,这种结构称为 _。2, 80C51 单片机的 I/O 中, 准双向口是, 真正双向口是。3,某条指令执行完毕后,累加器A 中内容为0 x33,则 PSW.0 应输出为。4,某八段式数码管,欲显示数字“5” ,采用软件译码方法,若其为共阳极接法,则正确的显示代码为0 x ,若其为共阴极接法,则代码为0 x 。5,一般地,要正确地使用80C51 单片机的定时器0,可以分为3 个步骤:第一步:正确配置这个特殊功能寄存器(SFR) ;第
2、二步: 将初始值写入这些特殊功能寄存器;第三步:。6,80C51 单片机采用11.0592MHz 的晶振,串口通讯采用方式1,允许接收,波特率为 19200(加倍后得到) ,采用定时器1 的方式 2 生成,则其配置步骤为:第一步:正确配置这 2 个串口相关的SFR;第二步: 正确配置定时器1 相关寄存器并启动定时器1,为得到上述波特率,根据波特率= (写出波特率的计算公式),得出 TH1=TL1=0 x 。7、为将 80C51 单片机的外中断0( INT0 )设置为跳变触发方式,应将(写出 SFR 名称)的(写出位名称)写为1。8、80C51 单片机的片内RAM 区,可位寻址区是;要选择工作寄
3、存器区,应通过设置来实现。9、根据数据传送的方向不同,串行数据通信可以分为三种方式:单工、和。10、80C51 单片机和 PC 机进行串口通讯,需要用到 MAX232这个芯片, 该芯片的作用是 _和_。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 1 页,共 7 页二、简答1,键盘扫描设计中,一般应考虑去抖动,请完整描述软件法防抖动的原理和具体方法(有需要的话可结合作图并说明)。2,简述 80C51 单片机的基本组成。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 2 页,共 7 页3,简述 80C5
4、1 单片机的寻址方式,每种寻址方式举出一个对应的指令例子。三、程序分析题。在“”处填上答案1,一个实现延时(假设外接晶振为12MHz )功能的子程序,汇编代码如下:DELAY: MOV R6,#01H DL0: MOV R5,#2FH DJNZ R5,$ ; (此处请作出注释) DJNZ R6,DL0 RET 该延时子程序的精确延时时间为us。通过查指令周期表,结合该程序,列出计算精确延时时间的公式:。2,电路如图所示。上电时LED 不亮,若按一下PB1,则 LED 点亮,再按一下PB1,则 LED 熄灭,如此循环。源代码如下:精选学习资料 - - - - - - - - - 名师归纳总结 -
5、 - - - - - -第 3 页,共 7 页#include sbit PB1= ; /声明 P2.0 为 PB1 sbit LED1= ; /声明 P1.0 为 LED1 void delay10ms(void); main() ; /设置 PB1 为输入口LED1=1; while(1) if (PB1=0) delay10ms(); if (PB1=0) ; / (作出注释 ) while (PB1=0); / (作出注释 ) 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 4 页,共 7 页 void delay10ms(void) un
6、signed char a,b,c; for(c=1;c0;c-) for(b=38;b0;b-) for(a=130;a0;a-); 3,电路如图所示。利用单片机的定时器0,采用方式1,每隔 1s 时间这 8 个 LED 交替闪烁一次。源代码如下:#include #define LED P1 int count=0; main() TMOD= ; TH0=(65536-50000)/256; 精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 5 页,共 7 页TL0=(65536-50000)%256; /定时器 0 定时时间为s EA=1; E
7、T0=1; TR0=1; while(1); void timer0(void) interrupt count+; if (count= ) count=0; ; / (作出注释 ) 四、综合题两个单片机系统进行串口通信数据传输,电路连接如图所示。设一方为甲机, 另一方为乙机,由甲机将温度值(设数值范围为099,无小数)传输给乙机,每次连续传输 10 个温度值,双方通信协议约定如下:1, 甲机先发送0 xff 给乙机;2, 乙机收到0 xff 后,回发0 xff 给甲机,表示已做好接收准备;3, 甲机收到0 xff 后,开始连续发送10 个温度值;4, 乙机接收完10 个温度值后,计算出这10 个温度值的总和,并回发给甲机;5, 甲机将收到的10 个温度值的总和,和发出去之前计算得出的10 个温度值总和,进行比较, 若两者相符, 即认为通信正确,不再重发, 若两者不符, 则需要重发。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 6 页,共 7 页根据上述要求,分别编写甲机和乙机的程序。精选学习资料 - - - - - - - - - 名师归纳总结 - - - - - - -第 7 页,共 7 页