永发信息网

新手提问:两个单片机RS232通讯问题,谢谢各位学长啊!

答案:4  悬赏:70  手机版
解决时间 2021-01-30 12:43
小弟初学PROTUES,做了个两个单片机通讯的模拟,有些问题,请大帮帮忙,谢谢啊!

//发送程序,通过SBUF口发送 0x56
#include
main()
{
TMOD= 0x20;
SM0=0;
SM1=1;
REN=1;
PCON=0;
TH1 =0xFD;
TL1 =0xFD;
TR1=1;
SBUF=0x56;
}

//接受程序,P1口接受SBUF数据
#include
main()
{
TMOD= 0x20;
SM0=0;
SM1=1;
REN=1;
PCON=0;
TH1 =0xFD;
TL1 =0xFD;
TR1=1;
while(1)
{
P1=SBUF;while(!RI);RI=0;
}
}

问题1: 这个程序有没有什么错误啊?为什么接受单片机P1口的值一直在晃动。
问题2: 我看书上写发送还要加一条程序,就在SBUF赋值后面, P1=SBUF;while(!TI);TI=0;
但如果加上这条程序就无法显示了。
问题3:SBUF的数据加上,是不是就一直存在了?需要while(1)循环码?
问题4:如果做一个电脑与单片机通讯,应该如何改进呢?(就是将图中发送机换成串口通讯助手)
(饿。。才一级,没法传图,图其实很简单,就是两个单片机P3.0/RXD与P3.1/TXD相互连接,波特率为9600.晶振11.0592)
最佳答案
1,
2,书上那样说使用在一次发送多个数据的情况,要确保上一个数据发送完成才发送下一个数据,你只发送一个一个数据可以不用这么做;
3,发送程序确实需要加上while(1);但原因不是你所的那样,是因为你不加while(1);程序可能从开始又执行起来,这也是导致问题1的可能原因;
4,程序上不需要太大改动,主要是硬件上面,需要加232电平转换电路,芯片是MAX232,连接串口DB9的时候用2.3.5脚,5脚是地,接单片机地;2.3脚是发送接收(具体顺序我忘了,你查一查吧),接单片机的发送接收(交叉连接);或者你看一看MAX232的芯片资料,上面有电路图,你就懂了
全部回答
首先要分清是硬件问题还是软件的问题,两个单片机物理上相距多远,直接用TTL电平连接的两个串口,还是变成了RS232电平,哎,这类问题靠提问不好解决,看不见,最好在身边找一个懂一点的,高手都很忙,
单片机 P3.0/RXD与P3.1/TXD 直接 相连 的话 A机 RXD 连B机 TXD A机 TXD 连B机 RXD 其他 都 差不多 吧
方法有二:【1】弄个有串口的单片机,例如c8051f300,还有一片max232。一头连接pc机,一头连接单片机。单片机的gpio连接x1和x2,例如p1.0 & p1.1,并设为中断引脚。每次接收到x1 或者x2信号改变,就往pc机发送一段字符。pc机就检查这个接受的字串,做相应的动作。这里涉及到mscomm32 或者 windows api的createfile函数;【2】max232直接连接x1 和x2,另一端连接pc机的cts 和rts。也用createfile函数,不用单片机。windows(pc机)直接检查cts 和rts,间接有效!ms-comm32也可以检查cts和rts。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
体内积毒长痘痘吃需要中药调理可以吗
Merida(美利达)徐州建国路大润发专卖店地址在
智奕棋道(柳北分部)地址有知道的么?有点事想
离心风机出风口堵塞,会导致管道温度升高吗?
浩翔快乐英语培训中心地址好找么,我有些事要
Giant(捷安特)沛县东风中路专卖店地址在什么
【audience】audience是可数还是不可数啊?我
丰颖的意思是什么啊?知道的请说下!
韵达快递是什么字体
宇方画室地址在什么地方,我要处理点事
重庆广达做264在那个站下车
11款炫丽1.3手自一体,25000公理能卖多少钱
成语绝妙什么作
【嚷的拼音】嚷着的“嚷”的读音?
越南人饮酒文化
推荐资讯
凌云教育辅导中心地址在什么地方,我要处理点
酷衣吧地址在哪,我要去那里办事
让实验动物猴吸入混有18O2的空气,该猴体内
证券公司应当自专用证券账户开立之日起( )
Life is so short and so precious.Tomorrow
清理手机垃圾和手机加快速度那个软件好
下丁甲岭村地址好找么,我有些事要过去
中国外运物流发展有限公司(天目西路街道恒汇
电脑为什么一直红灯卡死
考研数学三哪几年难度大最好有难度排序
放仗的意思是什么啊?知道的请说下!
怎么把F1至F9设置成其它快捷键,比如设置到q
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?