新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机系统多串行口设计技术

单片机系统多串行口设计技术

作者: 时间:2012-04-27 来源:网络 收藏

以上八种多串口的方法可以归纳为五种思想:

①直接从CPU上下手,选择多

②挖掘器件本身的资源,在CPU I/O口线上用软件模拟口;

③使用功能电路实现串、并转换;

④使用功能电路将一路高速口分解为多路低速串行口;

⑤通过分时复用实现一路到多路的切换。

针对这几种不同的思想和其具体的实现方法,在应用时该如何选择,不但要依据以上几种方法的软硬件复杂度、CPU时间开销、实时性和可靠性,还要依据应用中所需串行接口的总路数、各个串口之间的独立性和波特率,以及现有的开发条件和综合成本指标。选择时要根据各种因素进行综合权衡。要在能实现所要求功能的基础上,充分利用现有资源、降低的复杂度、提高可靠性,力求使设计代价最小、总体成本最低。当然,这些方法的选择应该灵活多样,不必拘泥于一种方法,也可以因地制宜地选择几种方法的组合。

4 应用举例

在某型无人机飞行控制器设计中,CPU选用的是80C196KC。CPU上原有的一路串口用于遥控遥测。为了测量飞机的航向角。中应用了数字罗盘HMR3000。该传感器为串口接口,波特率为19200,输出数据为NMEAC183格式,每秒20帧,每帧35字节,为此需要给控制器增加一路全双工异步串行接口。

基于对以上8种设计方法的比较与分析,在权衡系统的软硬件复杂度之后,选用了第四种方法,即利用16C550可编程通讯控制器扩展出一路串行口。专门与该传感器通讯。16C550使用了FIFO功能,在接收14个字节后向CPU提出一次中断请求。这样CPU最多中断4次就可以全部接收一帧姿态测量数据。控制器的软件对HMR3000一帧输出数据的解码时间仅为1.187ms,CPU的负担并不大。CPU、16C550和HMR3000的连接电路如图1所示。

23.gif
图1 可编程通讯控制器16C550与系统的接口电路图


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭