单片机期末考试试题1
128B特殊功能寄存器SFR(80-0FFH);位寻址区(20H-2FH); 片外数据存储器64K(0000-0FFFFH)。 PC复位后的值为0x0000 PSW(程序状态字,8位):存放指令执行后的有关状态。 位序 D7 D6 D5 D4 D3 D2 D1 D0 位标志CY AC F0 RS1 RS0 OV / P CY(C):进位和借位标志,当指令执行中有进位和借位产生时,CY为1,反之为0。 AC:辅助进位、借位标志(低半字节对高半字节的进位和借位),有进位和借位产生时,AC为1,反之为0。F0:用户标志位,由用户自定义。RS1和RS0:工作寄存器选择标志位。OV:溢出标志位。P:奇偶校验位,当A中1的个数为偶数时P=0,反之为1。 SP(堆栈指针,8位):专门存放堆栈的栈顶位置。遵循“先进后出”的原则。
DPTR(数据地址指针,16位):存放程序存储器的地址或外部数据存储器的地址。可分DPH和DPL两个独立8位寄存器使用。
PC(程序地址寄存器,16位):执行指令后自动加一,常将PC值设置成程序第一条指令的内存地址。访问范围:0000-0FFFFH。
ACC(累加器,8位):特殊用途的寄存器,专门存放操作数或运算结果。 pc,p0,p1,T0,T1,DPTR都是16位,其他都是8位
3、波特率的含义及计算方法;
答案:波特率,即数据传送速率,表示每秒钟传送二进制代码的位数,它的单位是b/s.假设数据传送速率是120字符/s,而每个字符格式包含10个代码位(1个起始位、1个终止位、8个数据位).这时,传送的波特率为10b/字符×120字符/s=1200BPS
每一位代码的传送时间Td为波特率的倒数.T(d)=1b/(1200b乘以s的倒数) 波特率 =2SMOD fosc/【32 12(2的n次方 - X)】 其中:X 是定时器初值 初值 X = 2n -( 2SMOD fosc)/(32 波特率 12) 例:设甲乙机以串行方式1进行数据传送,fosc=11.0592MHz,波特率为1200b/s。甲机发送的16个数据存在内RAM 40H~4FH单元中,乙机接收后存在内RAM 50H为首地址的区域中。解:串行方式1波特率取决于T1溢出率(设SMOD=0), 计算T1定时初值:
T1初值 = 256 –(2的0次方/32) ×11059200/12×1200)= 232 = E8H
4、如何利用定时器T1的溢出率计算波特率;
波特率 = 2SMOD×(T1溢出率)/ 32 或 波特率=(2SMOD/32) T1的溢出率 溢出率:T1溢出的频繁程度 即:T1溢出一次所需时间的倒数。
5、如何利用串口实现双机通信。
两串口的GND相接,A串口的TXD接B串口的RXD,B串口的TXD接A串口的RXD,OK。程序嘛只要设置两边的波特率相等就行了,很简单
11、注意如何利用软件和定时器结合的方法产生任何时间的定时时间的方法。
定时/计数器的计时范围有限,当晶振采用12MHz时,方式1的计时时间最长,也只有65.536ms。当需要定时的时间超出了定时/计数器的计数范围,如需定时2秒,这时可以采用以下两种方法来处理: 答案:定时器+软件计数的方法
思路是:利用定时/计数器T1,工作于方式1,实现50 ms/次的定时,只要定时40次即可实现2s定时。 可以算出定时/计数器T1工作于方式1时,时间常数初值为
X=65536-t(fosc/12)=65536-50×10-3×(12×106/12) =15536=3CB0H 于是(TH1)=3CH ,(TL1)=0B0H。
定义TMOD=00010000B,此处只给出延时2s的查询方式子程序。 DELAY:MOV R3,#40 ;设置定时器溢出次数 SETB TR1 ;启动T1开始计时
D1: MOV TH1,#3CH ;装入时间常数初值
单片机期末考试试题1
MOV TL1,#0B0H
D2: JBC TF1,D3;TF1为1否?是则跳至D3,并清TF1, AJMP D2 ;否,则跳至D2 D3: DJNZ R3,D1;R3=0?不是,跳到D1 CLR TR1 ;是,则停止计数 RET
9、如何设定定时器的初值,
某单片机系统,主频为12M,由定时中断产生P1,0口给出方波信号,方波频率为500HZ。
分析:方波频率为500HZ,周期为2ms。即每1ms使P1.0输出信号翻转一次即可,选用定时器0,方式1,16位工作模式
(TH0,TL0)=0xFFFF-1000=0xFC17 TH0=0x0FC,TL0=0x17
ORG 0000H
SJMP START
ORG 000BH SJMP T0_INT ORG 0100H
START:
MOV TH0,#0FCH MOV TL0,#17H SETB ET0 SETB EA SETB TR0 SJMP $
ORG 0200H
T0_INT:CLR TR0
MOV TH0,#0FCH MOV TL0,#17H SETB TRO CPL P1.0 RETI
END
10、注意定时中断用于产生PWM脉冲波的方法,比如产生周期位1s,高电平时间为0.4s的PWM脉冲波的方法(重点)
1、利用指令进行程序设计,如:编程将片内20H单元开始的30个数传送到片外RAM 3000H开始的单元中。
MOV R1,#20H MOV R2,#1EH
MOV DPTR,#3000H
SEND_LOOP:
MOV A,@R1
MOVX @DPTR,A INC R1 INC DPTR
DJNZ R2,SEND_LOOP
2、如果要将内部RAM中40H单元中的数据传递到外部RAM的2000H单元中,应如何解决?试写出相应程序。
单片机期末考试试题1
MOV DPTR,#2000H MOV A,40H MOVX @DPTR,A
3:加数存放在内部RAM的41H(高位)和40H(低位),被加数存放在43H(高位)和42H(低位),将它们相加,和存放在46H~44H中。
CLR C
MOV A, 40H ADD A, 42H MOV 44H,A MOV A, 41H ADDC A, 43H MOV 45H,A CLR A
ADDC A, #00H MOV 46H,A
1、单片机中断系统的原理;
答案:CPU在处理某一事件A时,发生了另一事件B请求CPU迅速去处理(中断发生或中断请求);CPU暂时中断当前的工作,转去处理事件B(中断响应和中断服务);
待CPU将事件B处理完毕后,再回到原来事件A被中断的地方继续处理事件A(中断返回)。 中断过程:中断请求→中断响应→中断服务→中断返回
单片机通过对4个特殊功能寄存器实施中断控制:中断允许寄存器IE;中断优先级寄存器IP;定时/计数器及外部中断控制寄存器TCON;串口控制寄存器SCON
2、典型中断源的入口地址及其优先级;
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说公务员考试单片机期末考试试题1(2)在线全文阅读。
相关推荐: