ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:146.54KB ,
资源ID:3681877      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3681877.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(兰州理工大学单片机历年期末考重要试题汇总情况.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

兰州理工大学单片机历年期末考重要试题汇总情况.docx

1、兰州理工大学单片机历年期末考重要试题汇总情况2010-2018理工大学单片机历年期末考试题汇总一、简答题1.开机复位后,CPU使用哪一组工作寄存器?它们地址是?如何改变当前工作寄存器?0组工作寄存器,00H-07H,通过修改PSW中的RS1和RS0两位来改变。2.什么是半双工、全双工方式?MCS-51属于哪种传送方式?半:通信双方只有一条双向传输线,允许数据双向传送,但每个时刻上只能有一方发送,另一方接收,这是一种能切换传送方向的单工方式;全:有两条传输线,允许数据同时双向传送,通信设备具有完全独立的收发功能。单片机属于全双工传送方式。3.简述中断的定义。当CPU正在处理某件事情时,外部发生某

2、一更重要事件,需CPU暂停正在执行的工作去处理这一突发事件,之后再继续执行被暂停的工作,这个过程就叫中断。中断的优点:实现与低速设备的同步;提高系统处理的实时性;视线故障处理,避免系统灾难。4.程序设计语言有几种?分别适用于哪种场合?机器语言-程序的读写/执行;汇编语言-程序编写;高级语言-程序编写;5.简述单片机的发展趋势。第一代:以1976年推出的MCS-48系列为代表,开始采用单片结构;第二代:以MCS-51的8051为代表的单片机,该系列其他单片机都是在8051的基础上进行功能改变得来;第三代:以80C51系列为代表的低功耗单片机。二、填空1.微型计算机可分为通用型和专用型两类。2.M

3、CS-51片20H-2FH围的数据存储器,既可以字节寻址又可位寻址。3.MCS-51的堆栈只可设置在部RAM中,堆栈寄存器SP是8位寄存器。4.8051的最大外扩ROM容量为64KB,8051访问外ROM时,读选通信号有1个引脚送出,地址码由P2和P0送出,数据由P0送出。8051的EA应接低电平。5.I/O传输数据4种方式:无条件传送、查询式传送、中断传送、DMA控制方式。6.MCS51单片机可外扩的并行口芯片分两类:不可编程和可编程并行口芯片。7.中断处理全过程分3个阶段:中断响应、中断处理、中断返回。8.MCS51部5个中断源优先级从高到低是INT0、T0、INT1、T1、串行接口中断,

4、中断入口地址分别是0003H、0013H、000BH、001BH、0023H。9.A/D转换器主要技术指标有分辨率、量程、转换精度、转换时间、输出逻辑电压、工作温度围、参考电压。10.MCS51时钟频率为12MHZ时,一个机器周期为1s。11.MCS51复位后,SP容07H,P0容0FFH,PC容0000H。12.MCS51的I/O接口有P0、P1、P2、P3,其数据总线由P0提供,地址总线低8位由P0提供,高8位由P2提供。13.MOV指令用于访问部ROM中数据,MOVX访问外部RAM中数据,MOVC访问外部ROM数据。14.DAC0832分辨率为。15.8155部有128字节的RAM和14

5、位的定时器。16.过程通道是在微机和生产过程之间设置的信息传送和转换的连接通道,包括数字量输入、模拟量输入、数字量输出、模拟量输出四种。写出4种PID控制器的改进形式:串有低通滤波器的PID算法、带有死区的PID算法、积分分离的PID算法、不完全微分的PID算法。三、大题1.外部RAM2000H为始地址的存储区有20个带符号补码数,编写:把正数和正零取出放入部RAM20H为始地址的存储区(负数和负零不作处理)。解: ORG 0000H AJMP MAINORG 0100HMAIN: MOV R0,#14HMOV R1,#20HMOV DPTR,#2000HROT:MOVX A,DPTRJB A

6、CC.7,NEXTMOV R1,AINC R1NEXT: INC DPTRDJNZ R0,ROTSJMP $END2.已知RAM的BLOCK单元,编写能统计正负数个数分别存入NUM和NUM+1单元的程序。解: ORG 0100HLEN DATA 20HNUM DATA 21HBLOCK DATA 23HMAIN:MOV NUM,#00HMOV NUM+1,#00HMOV R0,#BLOCKLOOP:MOV A,R0JNB ACC.7,POSIINC NUM+1SJMP NEXTPOSI : INC NUMNEXT: INC R0DJNZ LEN,LOOPSJMP $END3.外部RAM从200

7、0H-2100H单元有一数据块,编程序:将它们送到外部RAM3000H-3100H区域。解: ORG 1000H MOV DPTR,#2000HNEXT:MOVX A,DPTR ORL DPH,#10H MOVX DPTR,A ANL DPH,#0EFH INC DPTR MOV A,DPH CJNE A,#21H,NEXT MOVX A,DPTR MOV DPH,#31H MOVX DPTR,A SJMP $ END4.将部RAM的AAA单元中8位无符号数转换成BCD码表示的十进制数。解: ORG 0100HAAA DATA 20HBAI DATA 21HSHI DATA 22HGE DAT

8、A 23HMOV A,AAAMOV B,#0AHDIV ABMOV GE,BMOV B,#0AHDIV ABMOV SHI,BMOV BAI,ASJMP $END5.编程:从部RAM的BLOCK为起始地址的20个无符号数找出最小值,并送到MIN单元。解: ORG 0100HMIN DATA 20HBLOCK DATA 21HMAIN : MOV R0,#BLOCKMOV R2,#13HMOV A,R0LOOP : INC R0MOV B,R0CJNE A,B,NEXTNEXT: JC NEXT1MOV A,R0NEXT1: DJNZ R2,LOOPMOV MIN,ASJMP $END6.编程:

9、用定时器T0(工作在方式1)产生一个50Hz的方波,由P1.0输出,晶振频率为12MHz。解:由题意,定时器T0需要工作在方式1定时10ms,则TMOD控制字为01H;已知fosc=12MHz,则机器周期为1s。定时初值216 10ms/1s= 55536=D8F0H,即TH0=0D8H,TL0=0F0H。ORG 0000HAJMP STARTORG 2000HSTART:MOV TMOD,#01H MOV TH0, #0D8H MOV TL0, #0F0H SETB TR0 LOOP:JBC TF0, PE AJMP LOOPPE:MOV TH0,#0D8H MOV TL0,#0F0H CP

10、L P1.0 AJMP LOOP END7.已知晶振频率为12MHz,试编程使P1.0和P1.2分别输出周期为2ms和500ms的方波。设晶振频率为6MHz,试用T0作为外部计数器,编程实现每当计到1000个脉冲,使T1开始2ms定时,定时时间到后,T0又开始计数,这样反复循环下去。解:(1)按照题意,定时器T0需要工作在方式1定时1ms,则TMOD控制字为01H;已知fosc=12MHz,则机器周期为1s。定时初值216 1ms/1s= 64536=FC18H,即TH0=0FCH,TL0=18H。程序如下:主程序: ORG 1000HSTART:MOV TMOD,#01H MOV TH0,#

11、0FCH MOV TL0,#18H MOV IE,#82H SETB TR0 MOV R0,#0FAH LOOP:SJMP $中断程序:ORG 000BH AJMP BRT0 ORG 0080HBRT0:CPL P1.0DJNZ R0,NEXT CPL P1.2 MOV R0,#0FAH NEXT:MOV TH0,#0FCH MOV TL0,#18H RETI END(2)按照题意,定时器T0需要工作在方式1计数方式,定时器T1需要工作在方式1定时方式,则TMOD控制字为15H;T0计数初值为216 1000= 64536=FC18H,即TH0=0FCH,TL0=18H;已知fosc=6MHz

12、,则机器周期为2s。T1定时初值216 2ms/2s= 64536=FC18H,即TH1=0FCH,TL1=18H。程序如下:ORG 2000HSTART:MOV TMOD,#15H MOV TH0,#0FCH MOV TL0,#18H MOV TH1,#0FCH MOV TL1,#18H SETB TR0 LOOP:JBC TF0, PE AJMP LOOP PE:SETB TR1CLR TR0LOOP1:JBC TF1, PE1 AJMP LOOP1 PE1 : MOV TH0,#0FCH MOV TL0,#18H MOV TH1, #0FCH MOV TL1, #18H SETB TR0

13、 CLR TR1 AJMP LOOP END8.已知单片机系统时钟频率为6MHz,若要求定时值分别为0.1ms、1ms和10ms,定时器T0工作在方式0、方式1和方式2时,定时器对应的初值各为多少?解:已知fosc=6MHz,则机器周期为2s。方式0的初值分别为:8142(1FCEH),即TH0=0FEH,TL0=0EH;7692(1E0CH),即TH0=0F0H,TL0=0CH;3192(0C78H),即TH0=63H,TL0=18H。方式1的初值分别为:65486(FFCEH);65036(FE0CH);60536(EC78H)。方式2定时0.1ms的初值为206(CEH),不能直接定时1

14、ms和10ms。9.设串行口通信波特率为2400bps,异步帧信号由8位数据,无校验位和一个停止位组成,请问传输1024个字节数据,需要多少时间?解:每一个字符规定包含10个位(一个起始位、8个数据位和1个停止位),则每秒钟可以传送240个字节数据,传输1024个字节数据共需要4.2667秒。10.用中断法编出串行口方式1下的发送程序,设单片机主频6MHz,波特率1200bps,发送数据缓冲区在外部RAM,始址为Tblock,数据块长度为30,采用偶校验,放在发送数据第8位(数据块长度不发送)。解:串行口工作在方式1,定时器T1工作在方式2,作为波特率发生器。 定时常数:X=256 (fosc

15、*2SMOD)/( 384*波特率) 取SMOD=1,则X=229.96=230=E6H。 (若取SMOD=0,则X=F3H)采用中断方式编程,单片机发送程序如下:主程序: ORG 2000H Tblock DATA 2000HMOV TMOD,#20H MOV TL1,#0E6H MOV TH1,#0E6H CLR ET1 SETB TR1MOV SCON,#40H MOV PCON,#80H MOV DPTR,#TblockMOV R7,#1EH TRS: MOVX A,DPTR MOV C,PSW.0 MOV ACC.7,CMOV SBUF, A DEC R7 INC DPTRSETB

16、EA WAIT: SETB ESSJMP WAIT中断服务程序: ORG 0023H LJMP SBV ORG 0100H SBV:CLR ES CLR TI MOVX A,DPTR MOV C,PSW.0 MOV ACC.7,C MOV SBUF,A DJNZ R7,NEXTSJMP $ NEXT:INC DPTRRETI END11 .如图8051的P1.4P1.7接有4个发光二极管,P1.0P1.3接有4个开关,最下方按键用于产生中断请求信号。每中断一次,采集一次P1.0P1.3的开关状态反映到P1.4P1.7的发光二极管上。解: ORG 0000H SJMP MAIN ORG 0003

17、H AJMP INT0 ORG 0030H MAIN: SETB IT0 SETB EX0 SETB EA SJMP $INT0: ORL P1, #0FH MOV A, P1 SWAP A XRL A, #0F0H MOV P1,A RETI END12单片机P1端口并行连接两只共阴极数码管显示器,利用扫描方式循环显示两位数00、01、02、98、99。1) 写出共阴极接法下数码管显示09的字型码;2) 编写程序实现上述功能。解:(1)3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FH(2)程序清单如下: ORG 0000HAJMP MAINOR

18、G 000BHAJMP TIMERORG 0030HTAB DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H, 7FH, 6FHMAIN: MOV R0,#00HMOV DPTR, #30HMOV TMOD, #01HMOV TH0, #0D8HMOV TL0, #0F0HSETB ET0SETB EASETB TR0START: INC R0CJNE R0,# 100, NEXTMOV R0,#00HNEXT: MOV A, R0MOV B,10DIV ABMOV R1, AMOV R2, BMOV R4, #200DELAY:MOV R5, #200DJN

19、Z R5, $DJNZ R4, DELAYAJMP STARTTIMER:CLR TR0 MOV A, R1 MOVC A, A+DPTR MOV P1, ASETB P2.1 MOV R6, #200 DJNZ R6, $ CLR P2.1 MOV A, R2 MOVC A, A+DPTR MOV P1, A SETB P2.0 MOV R6,#200 DJNZ R6, $ CLR P2.0 MOV TH0, #0D8H MOV TL0, #0F0H SETB TR0 RETIEND13.根据图9-3电路,请编写如下图所示梯形波,要求梯形波的下底由8031部定时器实现。(设fosc=12MH

20、z)解: ORG 0000HAJMP STARTORG 0100HSTART:MOV TMOD,#10H MOV TH1,#3CH MOV TL1,#B0H MOV R0,#0FEH CLR ADOWN:MOVX R0,A INC A JNZ DOWNSETB TR1 WAIT:JBC TF1,NEXT SJMP WAIT NEXT:CLR TR1MOV TH1,#3CH MOV TL1,#B0HMOV A,#0FEH UP:MOVX R0,A DEC A JNZ UP SJMP DOWN END14.2ms延时程序,已知晶振频率为12MHZ,则机器周期为1s。(此题必考)解:DELAY2ms

21、:MOV R7,#10 ;1T DL1:MOV R6,#48 ;1T DL2:NOP ;1T NOP ;1T DJNZ R6,DL2 ;2T DJNZ R7,DL1 ;2T RET ;2T15.一个外部中断源时的编程。如图所示电路,设外部中断信号为负脉冲,引入外部中断1引脚。要求每中断一次,从P1.4P1.7输入外部开关状态,然后从P1.0P1.3输出。 程序清单: ORG 0000H ;主程序 SJMP MAIN ORG 0013H AJMP INT1 ;转入服务程序 ORG 0030H MAIN: SETB IT1 ;设INT1为边沿触发 SETB ET1 ;允许INT1中断 SETB E

22、A ;开放总允许 SJMP $ INT1: ORL P1, #0F0H ;中断服务程序: MOV A, P1 ;从P1口输入开关状态 SWAP A ;交换高、低4位 MOV P1,A ;输出 RETI END 4、知识点(部分)1.ADC0809与MCS-51连接可采用延时方式、查询方式和中断方式。延时方式启动转换后,延时等待一段时间,等待转换结束后直接读取数据。无需查询EOC状态,编程简单但占用时间较长。延时方式编程:ORG 0000H AJMP MAINORG 0050HMAIN: MOV R1,#20H ; 置数据区首地址 MOV DPTR,#7FF8H ; 指向通道IN0LOOP: M

23、OVX DPTR,A ;启动A/D转换 MOV R6,#30H ;软件延时,等待转换结束DELAY: NOP ; 延时时间,视CLK时钟 NOP 频率而定 NOP DJNZ R6,DELAY MOVX A,DPTR ;读取转换结果 MOV R1,A ;存储转换结果 END 查询方式启动转换后读取连续EOC引脚电平,直到EOC变为高电平后读取ADC0809转换数据。查询方式编程:ORG 0000H AJMP MAIN ORG 0050H MAIN: MOV DPTR,#7FF8H ;试分析如何读取通道2? MOVX DPTR,A ;启动A/D转换 LOOP:JB P1.0,LOOP ;等待转换L

24、OOP1: JNB P1.0,LOOP1 ;等待转换结束 MOVX A,DPTR ;读取A/D转换数据 MOV 20H,A ;存储数据 END中断方式 主程序启动转换后继续运行主程序,转换结束后触发中断,在中断子程序中读取转换数据。中断方式主程序:ORG 0000H AJMP START ORG 0050HSTART:MOV DPTR,#7FF8H MOVX DPTR,A ;启动A/D转换 SETB EA SETB EX0 ;开外中断1 SETB IT0 ;外中断请求为下跳沿触发 LOOP:SJMP LOOP ;等待中断中断服务程序:ORG 0013H ;外中断1的入口地址LJMP 1000H

25、 ;转中断服务程序的入口地址ORG 1000HMOVX A,DPTR ;读取A/D转换数据MOV 20H,A ;存储数据RETI ;中断返回END2.DAC0832的应用(有直通方式和单缓冲方式两种,这里只讲后者)单缓冲方式的应用:DAC0832部的两个数据缓冲器有一个处于直通方式,另一个处于受控的锁存方式。产生锯齿波的程序:MOV R0,#0FEH MOV A,#00HLOOP: MOVX R0,A INC A NOP NOP SJMP LOOP产生方波的程序: MOV R0,#0FEHLOOP: MOV A,#DATA1 MOVX R0,A ACALL DELAY MOV A,#DATA2 MOVX R0,A ACALL DELAY AJMP LOOP

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1