完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
C:Documents and Settings21008895桌面hi,高手些
小弟想用AT89S52 单片机 通过232给PC 发个字符串,实际验证 的时候在PC的超级终端上什么都没有,到底是什么问题呢?:Q 程序如下: #include #include unsigned char ch; bit read_flag=0 ; void init_serialcom(void)//串口通信初始设定 { SCON =0x50;//UART为模式1,8位数据,允许接收 TMOD|=0x20; //定时器1为模式2,8位自动重装 PCON |= 0x80 ;//SMOD=1; TH1 = 0xFD ;//Baud:19200 fosc="11".0592MHz IE |= 0x90 ; //Enable Serial Interrupt TR1 = 1 ; // timer 1 run TI=1; } //向串口发送一个字符 void send_char_com( unsigned char ch) { SBUF=ch; while(TI== 0); TI= 0 ; } //串口接收中断函数 void serial () interrupt 4 using 3 { if (RI) { RI = 0 ; ch=SBUF; read_flag= 1 ; //就置位取数标志 } } main() { init_serialcom(); //初始化串口 while ( 1 ) { if (read_flag)//如果取数标志已置位,就将读到的数从串口发出 { read_flag= 0 ; //取数标志清0 send_char_com(ch); } } } |
|
相关推荐
1个回答
|
|
先用示波器查明白是否有信号从串口发出,线接的正确吗,再用软件接收(串口调试,超级终端)波特率要正确。
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 09:28 , Processed in 1.285684 second(s), Total 92, Slave 76 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号