#include<reg52.h> //库文件 #define uchar unsigned char//宏定义无符号字符型 #define uint unsigned int //宏定义无符号整型 void delayms(uchar n) { uchar m,s; for(m=n;m>0;m--) for(n=20;n>0;n--) for(s=248;s>0;s--); } void Init_Com(void) { TMOD = 0x20; PCON = 0x00; SCON = 0x50; TH1 = 0xFd; TL1 = 0xFd; TR1 = 1; } void main() { Init_Com(); //初始化 delayms(40); //延时等待 while(1) { do{ while(!RI);//等待接收中断置位 RI=0; //中断清零 } while(SBUF!=0XAA); do{ SBUF=0XBB; //向甲发送BBH while(!TI); TI=0; while(!RI); RI=0; P2=SBUF; while(!RI); RI=0; } while(SBUF!=0XFF); SBUF=0xFF; while(!TI); TI=0; } }发送程序 |
么么儿 发表于 2017-12-1 10:33 把仿真和程序发过来我看看 |
999333 发表于 2017-12-1 09:19 在舍友的电脑上也试了,不行 |
本帖最后由 zl2168 于 2017-12-1 10:19 编辑 给你介绍一个正确有效的案例,自己对照查错吧! 先Proteus仿真一下,确认有效。 实例77 双机串行通信方式1 ![]() ![]() 实例78 双机串行通信方式2
![]() ![]() 实例79 双机串行通信方式3 ![]() ![]() 以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil C和Proteus》清华大学出版社ISBN 978-7-302-41682-1,内有常用的单片机应用100案例,用于仿真实验操作,电路与程序真实可靠可信可行。书中电路和程序设计有详细说明,程序语句条条有注解。仿真电路和Hex文件能在清华出版社网站免费下载,程序源代码只能到书上看了。到图书馆借,或到新华书店翻阅,或到网上书店打折购买。 |
第一,程序虽然编译过了,但你确保逻辑上的错误 |