·上一文章:基于SAM模块的CPU型IC卡燃气表的设计
·下一文章:基于凌阳SPCE061A单片机的音控小车的设计
图3 P89C669方面的程序流程图
(2) AT89C2051方面
AT89C2051是作为IC芯片用来进行串口扩展的,在初始化阶段接收上位机传来的数据进行初始化设置,然后循环等待接收上位机发送的数据[6]。AT89C2051将并口传来的数据存在并口接收缓冲区,并复制到串口发送缓冲区,激活串口使用中断方式发送;将串口传来的数据存在串口接收缓冲区,并复制到并口发送缓冲区,同时改变 的电位,向上位机发出请求。在船舶导航数据转换器中,AT89C2051主要是用来串口发送电罗经信号,它与P89C669的通信流程图如图4所示。
4 结束语
文中应用AT89C2051扩展串口后,系统共有三个串行口。其中,一个串口用来选择接收电罗经或者GPS信号用以数据转换;一个串口经过MAX3232实现TTL电平与RS-232电平转换后可连接微机的串行口,从而简单方便地实现单片机P89C669的在线编程,它同时也作为GPS信号的输出接口;另一个串口主要用来输出电罗经信号。
该电路与采用专用芯片的电路相比,并不复杂,而且编程设计较简单,综合考虑是一种比较经济实用的低成本设计方法。
创新点:
文章本着低成本的指导思想进行设计。首先,选用可在线编程的P89C669单片机为主处理器,省去编程器,降低了成本;其次,采用价格便宜的AT89C2051单片机与充分利用P89C669单片机丰富的IO口进行串口扩展。最终,实现了多串口船舶导航数据转换器的低成本实现。