串行口应用
方式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;
}
總結
- 上一篇: 五:二叉树中和为某一直的路径
- 下一篇: 如何添加团队成员,并为团队成员分配访问权