首页 > 代码库 > 串行口应用
串行口应用
方式2和方式3
方式2 和方式3都是为11位数据的异步通信口,他们的惟一区别是传输速率不同。TXD为数据发送引脚,RXD为数据接收引脚。用这两种方式传输数据时,起始位1位,数据位9位(含1位附加的第9位,发送时为SCON中的TB8,接收时为RB8),停止位1位,一贞数据为11位。方式2的波特率固定为晶振的1/64或1/32,方式3的波特率有定时器T1的溢出率决定。一贞数据传输格式
发送起始时,先把起始位0输出到TXD引脚,然后发送移位寄存器的输出位(D0)到TXD引脚。每一个移位脉冲都使输出移位寄存器的各位右移一位,并由TXD引脚输出。
TB=0时总共有11位,
TB=1时总共有9位。
#include<reg52.h>
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
void delayms(uint xms)
{
uint i,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
void main()
{
SM0=1;
SM1=0;
TB8=0;
EA=1;
ES=1;
TI=0;
while(1)
{
SBUF=0xaa;
delayms(1);
}
}
void ser0() interrupt 4
{
TI=0;
}
串行口应用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。