来源:中国一卡通网 作者:中国一卡通收录 发布时间:2012-02-10 09:33:15 字体:[大 中 小]
摘 要:通信方案应由具体应用决定。当PC机和单片机要通过公共电话交换网进行通信时,由于MSM7512B没有附加其他功能电路,因此在发起连接端需要加接拨号电路,在应答连接端需要加接振铃检测电路。
在正常收发情况下(无重传),对单片机而言,一收到来自计算机的数据,紧接着就改变为发模式,但改变为发模式后并不立即发应答,而要延迟T1时间等待计算机准备好收状态再发应答。单片机发完应答后也不能立即转换为收模式,而应延迟T2时间保证计算机方在此之前已转移为发送模式。如果是确认应答,就保存数据,然后转为收模式,如果是否认应答,直接转为收模式。对计算机端而言,状态转移过程类似。即计算机一收到来自单片机的应答立即改变为发模式,如果是确认应答,装载下一组数据,然后延迟T1时间等待单片机准备好接收状态再发数据。如果是否认应答,直接延迟T1时间等待单片机准备好接收状态,然后重发数据。计算机发完数据后也不能立即转换为收模式,而应延迟T2时间保证单片机方在此之前已转移为发送应答模式。显然,在链路对称的情况下,假定装载数据和保存数据时间相同,应有T1>T2。
那么如何确定T1,T2呢?为了保证在通信过程中双方不能同时出现在接收状态(也就是双方或者都处于发送状态,或者一发一收),则不难得出如下关系式:
因为Tsave和Tload都与具体的帧长度有关,即与机器速率有关,例如单片机处理数据要慢于PC机,因此帧越长,保存数据时间就越大于装载数据时间,为保证正确的模式转换,T1随之增加。所以延时值即T1,T2的取值在数据传输速率一定时也要依具体的数据长度而定。通过实验得出当帧长度为54字节时T1,T2的取值为100 ms,50ms比较合理。而帧长度为100字节时T1,T2的取值为200 ms、100 ms比较合理。针对其他长度的T1,T2的选取可以用试凑法,测试多组数据比较选取较好的。选取的原则就是在保证数据传输可以正常进行的前提下选取较小值。
3 传输效率
从图3的时序图可以看出如下关系:
设帧长度为N1字节,应答长度为N2字节,数据传输速率为Rb/s.当每字节10个码元时,传输一段数据的总耗时Ts为
Ts≈2T1+2Tc+2Td+[(N1+N2)×10/R]×1 000 (ms)(3)
其中Td与路径长度和媒介有关,Tc与调制解调芯片有关,一般均较小。由于传输效率与传输时间成反比,因此在N1,N2,R取值一定时,式(3)表明传输效率主要由T1决定,即T1选取越小传输效率越高。注意到延时T2是为了保证通信过程中,在收方转变为发送模式之前,发方仍处于发送模式,同时也要保证在对方数据发出之前转变为接收模式,他的选取只要满足关系式(1)即可,表面上看与传输效率无关,但由于T1受到T2的制约,所以隐含着对T2的要求。由此可见,合理选取模式转换的人为延迟时间T1和T2,是提高传输效率的关键所在。
采用以上方案,PC机和单片机之间就都可以使用MSM7512B正确地进行远程数据的发送和接收了。
推荐文章
论坛热帖