2019级单片机复习重点 1

发布 2022-07-18 03:02:28 阅读 5166

单片机复习重点。

1.单片机的堆栈指针sp始终是指示堆栈顶 。

2.当程序状态字寄存器psw状态字中rs1和rs0分别为0和1 时,系统先用的工作寄存器组为组1 。

3.定时器t1的中断入口地址是 001bh 。

4.8051定时/计数器共有四种操作模式,由tmod寄存器中m1 m0的状态决定,当m1 m0的状态为01 时,定时/计数器被设定为 16位定时/计数器 。

5.串行口的工作方式由 scon 寄存器决定。

6. 定时器t0的溢出标志tf0,在cpu响应中断后由硬件自动清零。

7.扩展程序存储器2764时,需要 5 条p2口线。

8.若单片机的振荡频率为6mhz,设定时器工作在方式1需要定时1ms,则定时器初值应为 216-500 。

9.扩展存储器时要加锁存器373,其作用是锁存寻址单元的低八位地址 。

11.8051单片机中,唯一一个用户可使用的16位寄存器是 dptr 。

12.8051的程序计数器pc为16位计数器,其寻址范围是 0000h-ffffh ,64kb 。

13.单片机应用程序一般存放在 rom 中。

单片机在同一优先级的中断源同时申请中断时,cpu首先响应外部中断0 。

15.定时器若工作在循环定时或循环计数场合,应选用工作方式2

单片机的外部中断1的中断请求标志是 it1 。

17.中断入口地址一般可存放转移指令 。

18.串行口每一次传送 1帧字符。

19.定时器1工作在计数方式时,其外加的计数脉冲信号应连接到 p3.5/ t1 引脚。

20某应用系统需要通过p1.0输出脉宽为500us的方波,系统选用定时器/计数器0(t0),定时方式3,主频为12mhz。试写出相应的程序。 (参考课件例题)

c语言程序(中断方式) :

# include <>包含特殊功能寄存器库。

sbit p1_0=p1^0;

void main( )

tmod=0x03设置工作模式。

tl0=0x06;

th0=0x06为定时器赋初值。

et0=1允许定时0中断。

ea=1;tr0=1启动定时器0

while(1等待中断。

void time0_int(void) interrupt 1

p1_0=~p1_0;

中断方式汇编语言程序:

org 0000h

ljmp main

org 000bh ;中断处理程序。

cpl p1.0

reti org 0030h ;主程序

main:

movsp, #0dfh

movtmod,#02h

movtl0, #06h

movth0, #06h

setb et0 ;允许定时器0中断。

setb ea ;允许cpu中断。

setb tr0 ;启动定时器0

sjmp等待中断。

end采用查询方式c语言程序:

# include <>

sbit p1_0=p1^0;

void main()

tmod=0x02;

tl0=0x06;

th0=0x06;

tr0=1;

while (1)

while(!tf0) ;查询计数溢出tf0=0;

p1_0=~p1_0;

查询方式汇编语言程序:

main:

mov tmod,#02h ;主程序。

mov tl0,#06h

mov th0,#06h

setb tr0

loop:

jnb tf0查询计数溢出。

clr tf0

cpl p1.0

sjmp loop

end 21.将片内ram 50h~5fh中的数据串行发送,用第9个数据位作奇偶校验位,设晶振为11.0592 mhz,波特率为2400 b/s,编制串行口方式3的发送程序。

(参考课件例题)

解:用tb8作奇偶校验位,在数据写入发送缓冲器之前.先将数据的奇偶位p写入tb8,这时,第9位数据作奇偶校验用,发送采用中断方式。

c语言程序清单:

#include<>

unsigned char i=0;

unsigned char array[16] _at_ 0x50; /发送缓冲区。

void main()

scon=0xc0串行口初始化。

tmod=0x20定时器初始化。

th1=0xf4; tl1=0xf4;

tr1=1;

es=1ea=1; /中断初始化。

acc=array[i发送第一个数据送。

tb8=p累加器,目的取p位。

sbuf=acc发送一个数据。

while(1等待中断。

void server() interrupt 4 //串行口中断服务程序。

ti=0清发送中断标志。

acc=array[++i取下一个数据。

tb8=p;

sbuf=acc;

if(i==16发送完毕,es=0禁止串口中断。

汇编语言程序清单:

org 0000h

sjmp main上电,转主程序。

org 23h

sjmp server转中断服务程序。

main:

mov scon,#0c0h ;串行口方式3初始化。

mov tmod,#20h ;定时器1工作在方式2

mov th1,#0f4h

mov tl1,#0f4h

setb tr1

setb es允许串行口中断。

setb eacpu开中断。

mov r0,#50h

mov r7,#0fh

mov a,@r0

mov c,p

mov tb8,c送奇偶标志位到tb8

mov sbuf,a发送第一个数据。

sjmp $

server:

clr ti清除发送中断标志。

inc r0修改数据地址。

mov a,@r0

mov c,p

mov tb8,c

mov sbuf,a发送下一个数据。

djnz r7,endt判断数据块是否发送完。

clr es否则,禁止串行口中断。

endt:

reti中断返回。

22.编写一个接收程序,将接收的16字节数据送入片内ram 50h~5fh单元中。设第9个数据位作奇偶校验位,晶振为11.

059 2 mhz,波特率为2 400b/s。(参考课件例题)

解:rb8作奇偶校验位,接收时,取出该位进行核对,接收采用查询方式。

c语言程序清单:

#include<>

unsigned char i;

unsigned char array[16] _at_ 0x50接收缓冲区。

void main()

scon=0xd0串行口初始化,允许接收。

tmod=0x20;

th1=0xf4;

tl1=0xf4;

tr1=1;

for(i=0;i<16;i循环接收16个数据。

while(1);

汇编语言程序清单:

main:mov tmod,#20h ;定时器初始化。

mov th1,#0f4h

mov tl1,#0f4h

setb tr1

mov scon,#0d0h ;串口初始化,允许接收。

mov r0,#50h ;首地址送r0

mov r7,#10h ;数据长度送r7

wait: jnb ri等待接收完成。

clr ri清中断标志。

mov a,sbuf ;读数到累加器。

jnb p,pnpp=0,转pnp

jnb rb8,error ;p=1,rb8=0,转出错。

sjmp right

pnp: jb rb8,error ;p=0,rb8=1,转出错。

right: mov @r0,a存数。

inc r0修改地址指针。

djnz r7,wait ;未接收完,继续。

clr f0置正确接收标志f0=0

reterror: setb f0置错误接收标志f0=1

ret23.设计一个独立式按键的键盘接口,并编写键扫描程序,电路原理图如图所示,键号从上到下分别。

为0~7。(10分)(参考课件例题)

c语言程序清单:

#include<>

void key()

unsigned char k;

p1=0xff输入时p1口置全1

k=p1读取按键状态。

if(k==0xff无键按下,返回。

return;

delay20ms有键按下,延时去抖。

k=p1;if(k==0xff确认键按下。

return抖动引起,返回。

while(p1!=0xff等待键释放。

switch(k)

汇编语言程序清单:

key: mov p1,#0ffh ;p1口为输入口。

mov a, p1 ;读取按键状态。

cpl a取正逻辑。

jz ekey无键按下,返回。

lcall delay20ms有键按下,去抖。

mov a, p1

cpl ajz ekey抖动引起,返回。

mov b, a存键值。

key1: mov a, p1 ;以下等待键释放。

cpl ajnz key1未释放,等待。

单片机复习

12 用某定时器产生某一频率的占空比 高电平宽度与周期之比 分别为 矩形波信号,由单片机某一i o口线输出,并用示波器观其波形。可以用查询法或中断法检测定时时间到,但两种方法必须都会 会计算定时器定时初值,会初始化tmod tcon ie 13 外中断应用 二进制计数器的设计,用按键模拟外部中断源,...

单片机期末复习卷

1.在51单片机中,同级的中断可以相互打断,这种说法是 2.中断的响应是有一定的条件的,当在一些特殊情况时,可能不会被响应,这种说法是 3.数码管按公共端的不同,可以分为共阴和共阳两种,这种说法是 4.单片机区别于微型计算机的最典型的特点是具有较强的控制功能。这种说法是 5.仅仅依靠单片机自身就可以...

单片机复习题2019 末

单片机期末复习。第三章。1.单片机除了微处理器外,一般还集成了哪些功能部件?单片机组成 cpu 存储器输入输出接口时钟电路定时 计数器中断控制系统。2.简述8051单片机的特点。51单片机是8位的微处理器,有节 b 的数据存储器ram,4kb的只读存储器rom,2个16位的定时 计数器,4个8位并行...