89C52单片机的P1口接8个发光二极管,拟用T0定时中断,控制P1口每200ms输出一次做左移流水灯显示,电路如图所示。设晶振为6MHz,不考虑T1。完成下列各问题:
(1)P1口各位输出高电平还是低电平发光二极管亮? (2)拟使T0定时多少ms、中断多少次使P1输出一次? (3)拟选T0以模式几定时?写出模式字TMOD的值; (4)计算T0的定时初值;
(5)编写主函数和T0中断服务函数,实现流水灯功能。 (1)低电平发光二极管亮 (2)100ms;2次 (3)模式1,TMOD=0X21 (4)15536 (5)C语言程序 #include
T0中断服务函数: void int_t0(void) interrupt 1 { TL0=176, TH0=60; aa<<=1;
P1=~aa; }
89C52单片机的串行口由哪些功能部件组成?各有什么作用?
89C52通过引脚RXD(P3.0,串行数据接收端)和引脚TXD(P3.1,串行数据发送端)与外界进行通信,单片机内部的全双工串行接口部分,包含有串行发送器和接收器,有两个物理上独立的缓冲器,即发送缓冲器和接收缓冲器SBUF。发送缓冲器只能写入发送的数据,但不能读出;接收缓冲器只能读出接收的数据,但不能写入。控制状态寄存器SCON ,用于定义串行通信口的工作方式和反映串行口状态。
设89C52单片机的晶振为11.0592MHz,串行口工作于方式3做数据收发,波特率为9600b/s。完成以下串行通信的初始化工作。
(1)写出T1以模式2定时作为波特率发生器的模式字; (2)计算T1的计数初值;
(3)写出串行口控制寄存器的控制字;
(4)写出初始化程序段(包括定时器和串行口)。 (1)TMOD=0x20 (2)0xfd (3)SCON=0xc0 (4)TMOD=0x20; TH1=0xfd; TL1=0xfd; TR1=1; SCON=0xc0;
使用89C52串行口以工作方式3进行串行通信,假定波特率为4800b/s,单片机晶振频率为11.0592MHz。请编写全双工通信程序,以中断方式接收和发送数据,并对数据
进行奇偶校验。设发送的50个数据在片外数据区,地址从0x0010开始的区域,接收的数据保存0x80开始的区域,接收到’S’后表示结束。 #include
unsigned char xdata *SendBuffer=0x0010; unsigned char xdata *RecvBuffer=0x0080; unsigned char i,j; bit SendOver,RecvOver; void main() {
TMOD=0x20; TH1=0xfa; TL1=0xfa; TR1=1; SCON=0xc0; ES=1; EA=1;
ACC=SendBuffer[i++]; TB8=P; SBUF=ACC; while(1); }
void Serial() interrupt 4 { if(TI) { TI=0;
ACC=SendBuffer[i++]; TB8=P; SBUF=ACC; if(i==50)
SendOver=1; } else { RI=0; ACC=SBUF; if(RB8==P) {
RecvBuffer[j++]=ACC; if(ACC=='$') RecvOver=1; } }
简述串行口四种工作方式的特点。
方式0:同步移位寄存器,波特率为fosc/12; 方式1:10位异步方式,波特率由定时器控制; 方式2:11位异步方式,波特率为fosc/32或fosc/64; 方式3:11位异步方式,波特率同方式1。
某MCS-51单片机系统使用定时器/计数器T1定时,产生频率为1000Hz的方波声音信号,要求方波信号从P3.5引脚输出。设fosc=6MHz,不考虑T0。完成下列各问题: (1)计算声音信号的周期和T0的定时时间;
(2)计算T1在定时时间内的计数值;
(3)应该选T1以何种模式工作最恰当?写出模式字TMOD的值; (4)计算T1的定时初值;
(5)编写主函数和T1中断服务函数,使T1以中断方式从P3. 5引脚产生方波。
(1)1ms,500μs (2)250
(3)模式2,TMOD=0X25 (4)6
(5)C语言程序 #include
T1中断服务函数:
void int_t1(void) interrupt 3 { P35=~P35; }
单片机



