51单片机与串口通信代码
作者:来源:本站原创点击数:3192更新时间:2007年06月17日
1发送:向总线上发命令
2接收:从总线接收命令,并分析是地址还是数据。
3定时发送:从内存中取数并向主机发送
经过调试,以上功能基本实现,目前可以通过上位机对单片机进行实时控制。
程序如下:
这是一个单片机C51串口接收(中断)和发送例程,可以用来测试51单片机的中断接收
和查询发送,另外我觉得发送没有必要用中断,因为程序的开销是一样的
#i
clude
#i
clude
#i
clude
defi
eINBUF_LEN4数据长度
u
sig
edchari
buf1INBUF_LEN
u
sig
edcharchecksumcou
t3flagtempch
bitread_flag0
fsbitcpP11
sbitDIRP12
i
ti
u
sig
edi
txdataRAMDATA定义RAM地址指针
u
sig
edchara60x110x220x330x440x550x66
voidi
it_serialcommvoid
SCON0x50在110592MHz下,设置串行口波特率为9600,方式1并允许接收
PCON0x00
ES1
TMOD0x21定时器工作于方式2,自动装载方式
TH0655361000256
TL0655361000256
TL10xfd
TH10xfd
ET01
TR01
TR11
fTI0
EA1
TI1
RAMDATA0x1F45
voidseriali
terrupt4usi
g3
ifRI
RI0
chSBUF
TI1置SBUF空
switchch
case0x01pri
tf