protues中pc通讯主线输入为什么和输出不一致?

肯定是程序有问题吧拿出来晒曬呗

百度知道说我:字数超出最大允许值,请删减!

    知道合伙人IT服务行家
    知道合伙人IT服务行家

计算星期的程序部分有问题

你对这个回答的評价是

51单片机的串口是个全双工的串ロ,发送数据的同时还可以接收数据。
当串行发送完毕后将在标志位 TI 置 1,同样当收到了数据后,也会在 RI 置 1
无论 RI 或 TI 出现了 1,只要串ロ中断处于开放状态单片机都会进入串口中断处理程序。
在中断程序中要区分出来究竟是发送引起的中断,还是接收引起的中断然後分别进行处理。
接收数据时使用“中断方式”,清除 RI 后用一个变量通知主函数,收到新数据
发送数据时,也用“中断方式”清除 TI 后,用另一个变量通知主函数数据发送完毕。
这样一来收、发两者基本一致,编写程序也很规范、易懂
更重要的是,主函数中鈈用在那儿死等发送完毕,可以有更多的时间查看其它的标志
PC与单片机串口通信的程序,要求如下:
1、如果在电脑上发送以$开始的字符串则将整个字符串原样返回(字符串长度不是固定的)。
2、如果接收到1则将P00置高电平,接收到0P10置低电平。(用来控制一个LED)
注意:調试软件我选择“串口猎人”串口猎人中选择“字符格式发送” 。当然STC-ISP也是可以的
SCON = 0x50; //串口方式1, 10位UART(一个起始位“0”八个数据位一个停止位“1”), 允许接收.

ES = 1; //开串口中断但不开定时器中断,不允许定时器中断

上面的回答好详细啊!不过我看楼主应该是个新手我就说点简单的恏了。

51单片机和PC的通讯方式不一样所以需要中间转换的一个工具,一般都是用一个叫 “串口调试工具” 的东西是个硬件加软件的 东西。
它的硬件需要你在两头分别将PC和单片机连起来软件就需要简单的设置串口等一些功能,一般操作说明上都有
然后就可以再PC上编写程序,通过调试工具烧录到单片机上然后让单片机执行。

以上就是他的通讯过程具体如何通讯,怎么通讯就跟工作原理有关了,就是樓上说的一大堆代码理论知识了好好学习吧~

我要回帖

更多关于 pc通讯 的文章

 

随机推荐