基于51单片机的多机并行通信系统
时间:09-11
来源:互联网
点击:
的应用中会受到一定的限制,在使用时要注意下面几点:
①波特率很高时,要考虑单片机串行口能否实现;
②从波特率高的向波特率低的变换时,要考虑波特率低的单片机能否实现不丢数据的发送;
③当双向变换时,既要考虑上述情况,还有考虑程序的大小,以及执行时间对双向传送数据的影响,计算两个单片机能否实现不丢数据的变换,在时间上要留有余量;
④在查询时,要注意握手信号的关系,不要对同一数据产生重复读取,以至于数据重复;
⑤波特率不同时,单片机可以选用不同的晶振频率。
2.4 实例及源程序
在实际使用中若碰到如图1所示的情况,需要波特率变换器将坡特率为172.8kbps的通信数据转换成波特率为115.2kbps,再向上位机传送。实际使用的电路如图2所示。在该实例中,为了防止局部时刻接收数据比发送快而丢失数据,再U2_H单片机的程序中,加入了8个数据区作为接收数据存放缓冲区。
3 结论
通过长时间的通信实验和实际应用,设计的波特率变换器方案可行,通信可靠,没有出现数据丢失的情况。在一些系统中,由于通信波特率特殊,在设备之间通信存在波特率不匹配时,通过波特率变换器,可以实现不同波特率设备之间的通信。通过更改单片机的晶频振率,可以满足各种波特率(在单片机允许的范围内)的转换。
- Linux嵌入式系统开发平台选型探讨(11-09)
- VxWorks实时操作系统下MPC8260ATM驱动的实现(11-11)
- VXWORKS内核分析(11-11)
- Linux内核解读入门(11-09)
- linux文件系统基础(02-09)
- 基于Winodws CE的嵌入式网络监控系统的设计与实现(03-05)
栏目分类