查看: 2247|回复: 0

i.MX27上实现串口扩展

[复制链接]

该用户从未签到

发表于 2011-7-12 15:53:48 | 显示全部楼层 |阅读模式
分享到:
 
                i.MX27上实现串口扩展
摘要:介绍在i.MX27芯片上利用16C652芯片来扩展串口的方案,详细阐述i.MX27芯片与16C652芯片之间的接口设计、CPLD设计、驱动设计。嵌入式平台:成都莱得科技基于i.MX27的FlexG1平台。

关键词: i.MX27; 16C652; 串口扩展; ARM9嵌入式系统;工业控制。

 引 言

在工业控制中需要的大量的现场控制总线,如CAN,Profibus,MODBUS,RS485/RS422,RS232.同时在工业控制,仪器仪表,医疗器械等非消费类领域,嵌入式处理器占到绝大部分,而作为控制中枢的嵌入式处理器串口往往只有三、四个,为了实现对多个外设的控制,需要对串口进行扩展。ARM芯片是目前在嵌入式系统中应用得最多的一种处理器内核可运行linux、WINCE、VxWORKS等操作系统拥有包括LCD、串口、网络通讯、存储芯片等大量外围接口。这里介绍成都莱得科技有限公司大量使用的处理器:freescale i.MX27处理器,以及成都莱得科技研发的通用嵌入式工控平台FlexG1,平台详细介绍略,请参阅成都莱得科技有限公司FlexG1工控板.

注:本文章只介绍扩展2个串口的设计,需要扩展4个串口选用 16C654即可,如果需要增加更多的串口,增加16C654即可增加UART扩展个数,设计思路完全相同。

 硬件设计

1 串口扩展硬件图

 

在图1,电路图由4部分组成:i.MX27处理器、CPLD、16C652、DB9连接器。其中i.MX27处理器和DB9连接器没有在图中画出来。片选选用i.MX27的CS4,起始地址为:0xD400 0000

,地址信号A0,A1,A2决定了16C652不同的寄存器。

 CPLD设计

CPLD实现如下几个功能:电平转换:由于i.MX27的WEIM总线为1.8V,需要CPLD实现1.8V-3.0V的电平转换;UART片选、读写信号:16C652的两个串口的片选信号由CS4_BGPIO_CS4产生。GPIO_CS4为0,以及CS4_B为0,UART_CSA片选有效;GPIO_CS4为1,以及CS4_B为0,UART_CSB片选有效;

详细CPLD代码如下:

library ieee;

use ieee.std_logic_1164.all;

 

entity UART is

    port(

         A:in std_logic_vector(0 to 2);

         UART_Aut std_logic_vector(0 to 2);

         D:inout std_logic_vector(0 to 7);

         UART_D:inout std_logic_vector(0 to 7);

        

         GPIO_CS4:in std_logic;

         CS4_B:in std_logic;

         OE_B:in std_logic;

         RW_B:in std_logic;

        

         UART_CSA_But std_logic;

         UART_CSB_But std_logic;

         UART_OE_But std_logic;

         UART_RW_But std_logic

        

);

 

end;

 

architecture control of UART is

 

begin

 

-- Chip Select Outputs

 

<div align="left"><span style="font-size: 10pt">    UART_CSA_B
串口扩展.GIF
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条



手机版|小黑屋|与非网

GMT+8, 2025-1-9 09:54 , Processed in 0.113568 second(s), 17 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.