这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 有人用一条口线进行串口通讯的吗???

共2条 1/1 1 跳转至

有人用一条口线进行串口通讯的吗???

院士
2006-09-17 18:14:16     打赏
有人用一条口线进行串口通讯的吗???



关键词: 人用     一条     口线     进行     串口     通讯    

院士
2006-12-22 22:43:00     打赏
2楼
问 有人用一条口线进行串口通讯的吗???下位机用一条线的,不过它可以自学波特率!1硬件是怎么样接,请指教!!我看别人在处理的时候用了个四路的rs232芯片和一些运放\与门等的!是不是没有这样麻烦的?有没有简单的!



1: 先把两边的TXD线与,并连至自己的RXD初始化:
下位机初始化以前只侦听不收发,一旦校准过波特率发生器,在听到上位机发的探询码之后回应应答.
上位机开始的时候发N个连续的同步字符(一般是55H)用来校准下位机的波特率,之后跟一个探询字符,然后停顿一个预定的延迟,若在该延迟中能收到下位机的应答,说明同步成功了.若收不到,则延迟之后继续重复N个连续同步字符+探询字符的数据,循环直到收到应答

通信:
时分共用----类似令牌
两机采取"对山歌"的对话方式,上位机发"我(上位机)唱"后跟固定时间长度的一帧数据(或等长时间的空闲),下位机在上位机发言期间只听不说,只有在上位机发言时间之后才立刻跟答"我(下位机)唱",之后的原理和上位机相同,这样一根线就可以以帧长为单位分割成双方通话的时间,如果有人要唱的太长超过一帧,那也要分割到下一帧唱,不能超过发言时间.要注意的是,通话各方在发言的时候要关闭自己的接收中断.
该方案优点是杜绝冲突,一句是一句,缺点是时间利用率低,没话方的空闲时间被白白浪费,且硬件上要占用一个定时器作为"闹钟"(呵呵,自己发明的名词,就是为对方和自己的发言时间掐算时间,时间一到自然切换通话方向)

抢占发言----ALOHA方式
主要是要处理好冲突的问题,对于点对点方式就简单了,只要有冲突,一概下位机闭嘴,怎么检测冲突,把自己发的和自己收的进行异或,如果结果不为0,就视为冲突,冲突之后下位机彻底闭嘴,上位机重新发言.发言方先发起始字符声明线路被自己占用,说完后发终止字符声明释放了线路.任何方侦听到非自己发的起始字符
都压抑住说话的欲望,直到线路重新被当前说话者释放
优点,时间利用率高点,节省掉上面方法所说的做"闹钟"的定时器.缺点是遇到两个话多的人往往那个说的长的更有优势,耽误另一方及时通报重要情况,且容易假死,也就是双方都以为线路是忙的,不敢说话,这个可以用随机发送结束码来重新对线路状态进行置位.

还有很多方法,万变不离其宗.你也可以参考I2C的模式,改动一下.
再启发你一下,电话的全双工通话也使用2线,它使用了消侧音的电桥来滤出对方信号,不过那是模拟的线路.其实你也可以对数字信号"消侧音",不过不是用电桥,是用异或门 2: 理论上说,因为可以模式串行通用,那么单线可以使用半双工方式一根线,显然就只能(当然必然能)实现半双工串口,而这个与自动波特识别没有联系。

自动波特识别需要用标识码进行判别波特,这个philips有一个相关的文档可以参考的。


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]