当前位置:易博PCB抄板工作室 >> 技术文档 >> 深圳pcb抄板嵌入式USB主机的USB系统模型的设计实现方案

深圳pcb抄板嵌入式USB主机的USB系统模型的设计实现方案

    在USB的拓扑机构中居于核心地位的是主机(Host),任何一次USB的数据传输都必须由主机来发起和控制,所有USB设备都只能和主机建立连接,任何两个外设之间或是两个主机之间无法直接通信。而目前,大量扮演主机角色的是个人电脑PC。
    USB主机包括PC或嵌入式系统两种类型,每一次USB数据通信都必须是由USB主机来发起的(远程唤醒模式除外),主机管理着每个USB设备。即使新兴的USB On-The-Go设备,其核心部分仍然是嵌入了USB主机的功能。本方案主要是基于嵌入式USB主机的USB系统模型。
    1 USB系统模型和拓扑结构
    最简单的USB系统模型组成是以USB主机为核心,以外围的USB设备为特定功能的设备模块。即USB提供的是主机和设备中间的一种数据通信服务。此外,为了构建更复杂的USB系统,还需要加上USB集线器(Hub)。
    USB的拓扑体系由3种元素组成:主机、Hub和设备,通过Hub的级联,构成了层次化的星形结构。USB的拓扑结构如图1所示。
    2 硬件设计
    2.1 电源电路
    电源电路的组成如下:
    系统采用双电压给电方式;触发器采用3.3 V给电;1284收发器采用5 V和3.3 V的双电压给电方式。在交流适配器中将干扰过滤后,提供5 V直流电压。3.3 V直流电压由固定输出电源模块来提供。电源系统结构如图2所示。
    2.2 USB接口电路
    为了给USB总线安全的提供电源,采用电源管理芯片,利用MCU来管理USB总线的电源。系统reset时,为了使与其连接的USB设备不进行误操作,关闭USB电源;总线电路异常而导致过流(over current)时,系统自动关闭电源并通知MCU。并且还采用压敏电阻(vatistor)来防止静电(ESD);采用共模轭流线圈(Common Mode Choke Coil)来减少对总线差模数据的干扰。USB Host接口部分的电路如图3所示。
    2.3 MCU程序下载电路
    由RS232端口来下载MCU程序,对应的电路图如图4所示。
    DR9插座和MAX232置于单独的下载板上,利用8PIN插座和主板(SPP/USB转换主板)来连接。pcb抄板异步串行接口下载程序时,各管脚设置如下所示:
    P60='L‘,P61='L’;
    MD0,MD1,MD2='HHL‘。
    2.4 Reset电路
    在MB90F337内部有上电复位(power on reset)功能,在外部reset电路发生外部reset请求。外部reset电路的初步想法如图5所示。
    使用的复位芯片(reset chip)是PST9231。reset时间利用外部电容,设置为40~50 ms之间。
    3 USB Host库设计
    MiniHost部分负责USB Host部分的操作,它将完成如下功能:初始化MiniHost部分电路;支持USB 2.0高速和低速设备;注册回调函数;设备的枚举,包括BUS Reset、SETADDRESS请求以及设定控制端点的最大包的大小:SETUP请求操作;Bulk传输请求操作。
    3.1 Time Module部分
    设置一个PWCTimer,使其再0.1ms中断一次,在这个中断处理程序中对记录时间的全局变量加1,电路板克隆也就是说系统中时间的单位是0.1ms。如果记录时间的全局变量溢出,则将这个变量的值设置为0。