No.29661 作者:yangdong5979 邮件:yangdong5979@sina.com ID:56832 登陆:2次 文章数:1篇 最后登陆IP:210.27.6.222 最后登陆:2007/10/9 16:48:15 注册:2006/7/13 18:38:58 财富:106 发帖时间:2007/9/8 12:55:35 发贴者IP:210.27.6.222 标题:yangdong5979:51串口通信出错,第一个数据被覆盖[求助] 摘要:No.2966151串口通信出错,第一个数据被覆盖[求助] 我是一个单片机初学者,希望大侠不吝赐教! 我写了个串口数据接受程序(蛮菜的一个程序)!如果我一位一位的发送数据,接受端就可以正确的接受,但是一旦一起发送,如:01 02 03 04 05 06(我这个程序,只接受6字节数据),那么接收的数据就成了:02 03 04 05 06 06! 我不知道是甚么原因,希望各位高手指点!以下是我的程序: 要是各位高手看出甚么不对的地方,就请直接提出,小弟这里受教了,都是为了学习嘛! ORG 0070H COMM_BUFFER: DS 7;接受缓冲区 STOP_NUM EQU 77H ;本地识别号,判断是否为发送给自己的数据 REC_NUM EQU COMM_BUFFER+3;存放识别号 ORG 0000H SJMP INIT ORG 0023H SJMP COM_INT ORG 0050H INIT: MOV R0,#STOP_NUM MOV A,#07H MOV @R0,A MOV TMOD,#20H;以下把波特率设置为9600 MOV TH1,#0FAH MOV TL1,#0FAH MOV SCON,#50H MOV PCON,#80H SETB TR1 SETB ES SETB EA MOV R0,#COMM_BUFFER MOV R7,#0 ;计数器 MAIN: JMP $ ;主循环 COM_INT: PUSH ACC PUSH B CLR RI CLR EA MOV A,SBUF;我看了好像只要一起发送,第一个 ......
>>返回讨论的主题
|