标题:
STC单片机单线通讯求个思路
[打印本页]
作者:
非凡科技
时间:
2022-5-15 11:46
标题:
STC单片机单线通讯求个思路
用一个单片机IO实现收发,收的时候不发,发的时候不收,求个思路。我模拟18B20方式试了下,不好用。
作者:
188610329
时间:
2022-5-15 14:42
说几个关键点,你要重点考虑。你模拟18b20,不能站在单片机的立场,要站在18b20的立场考虑,单线方式,最重要的是区分什么代表1,什么代表0,其实18b20做参考并不是一个好的参考,你最好参考红外线收发。
作者:
kmsj
时间:
2022-5-15 15:43
“用一个IO实现收发,收的时候不发,发的时候不收”,目的何在?目的都不想说出来,让大家来这里猜?假如是想用2根线实现两个设备之间的通讯,也就是为了节约线,那就简单了,把两边单片机的RX和TX合并起来成为一个I/O口,加上地线就可以实现2根线两个设备之间的通讯,编程序的时候收的时候不发,发的时候不收,也就是半双工不就可以了,细节上注意本机发送结束引起的中断和对方发送结束引起的中断如何处理,按照一定的时间把接收和发送分开处理。硬要只用一个IO实现收发,只有用软件模拟串行口。
作者:
爱学习的小菜鸡
时间:
2022-5-15 16:32
如果另一个设备支持单总线的话,写程序可以实现,如果不支持,可以考虑串口通讯或者iic,这两个都是相对方便和容易实现的。
作者:
lkc8210
时间:
2022-5-15 18:33
代码呢?
DS18B20用的好好的代表单总线是可行的
作者:
啤酒瓶子老大
时间:
2022-5-15 20:31
单总线就是要自己编写一个协议。类似串口,先约定好波特率,然后主机发送3个字节,第一个字节是命令,第二个字节是数据,第三个字节是结束标志。接收方收到后解析并执行。然后也返回几个字节表示正常或者返回的数据。主机永远是主机,从机永远是从机,
打了半天字忽然想起来一个2812的灯,就是单线通信的。可以参考一下。
作者:
yzwzfyz
时间:
2022-5-16 11:05
1、制定个通讯协议,通讯的双方共同遵守。
2、定义好“收的时候”,重点是:何为开始、何为结束。
3、定义好“发的时候”,重点也是:何为开始、何为结束。
接下来就简单了,免谈。
作者:
STC庄伟
时间:
2022-5-16 13:13
51hei图片20220516131209.png
(2.58 KB, 下载次数: 33)
下载附件
2022-5-16 13:12 上传
http://www.stcmcudata.com/STC8F- ... 8K64U-DEMO-CODE.ZIP
作者:
STC庄伟
时间:
2022-5-16 13:14
http://www.stcmcudata.com/STC8F-DATASHEET/STC32G-DEMO-CODE.ZIP
STC32G实验箱演示程序, 32位 8051
汇编和C 都有
作者:
lyonkon
时间:
2022-5-16 21:29
主机先拉低io口50ms然后直接发送8位数据,发送完毕拉高io口。从机每循环一周检测一次当检测到io口电平大于50ms直接接受8位数据。反过来也可以
作者:
liuzz2k
时间:
2022-5-16 22:44
参考电动车的一线通协议,自由百度
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1