基于AVR单片机的ISP1362OTG设计

发布者:创新之梦最新更新时间:2010-09-18 来源: 电子技术关键字:OTG  USB控制器  ISP1362 手机看文章 扫描二维码
随时随地手机看文章

  0 引言

  随着PDA、移动电话、数码相机、打印机等消费类产品的普及,用于这些设备与电脑、或设备与设备之间的高速数据传输技术越来越受到人们的关注。以往以计算机为核心的数据传输结构,非常不利于USB,总线在嵌入式行业的应用,也不适用于野外作业,而OTG技术的推出则可实现在没有PC的情况下,设备与设备之间的数据传输,它拓展了USB技术的应用范围。本文采用的设计方案是基于Philips公司的ISP1362 OTG控制芯片,参照最新的USB OTG技术规范,设计了一种遵循USB协议的主/从机系统。

  1 ISP1362芯片的内部结构

  Philips公司的ISP1362是一款符合USB 2.0总线协议的接口芯片,内部有3个USB控制器一主机控制器、设备控制器和OTG控制器。其中,主机控制器具备高度优化的USB主机功能;设备控制器则具有多达14个可编程端点,又可以被配置成双缓冲端点进一步提高吞吐量:而OTG控制器主要提供包括监控和转换功能在内的所有OTG控制。ISP1362内部构造如图1所示。

ISP1362内部构造

  2 USB OTG主/从机系统设计

  USB OTG主/从机系统设计包括硬件设计和软件设计两大模块。其中硬件电路主要是USB接口电路板的设计;软件设计包括设备初始化、系统的功能设计、设备驱动程序设计等,下面分别介绍系统软、硬件系统的设计方法。

  2.1 系统硬件电路设计

  USB OTG主/从机设计的硬件电路如图2所示,图中ATmega 32的PD口和IPA口用于控制ISP1362的时序,PB口和PC口则用于与ISP1362的D[0..15]进行数据交换。ISP1362芯片有Port1和IPort2两个USB接口。Port1是个综合接口,可以配置成downstream、upstream或者是OTG;Port2是作为固定的downstream,主要接一般的USB设备。当ISP1362做主机时,主机内部的寄存器通过检测其相应状态寄存器的值就可以判断是Port1还是Port2接了设备,从而进行相应的处理。

USB OTG主/从机设计的硬件电路

  ISP1362的Port1口主/从机功能通过ID、OTGMODE两引脚电平的高低组合来确定。当OTGMODE引脚接低,无论ID电平如何,则芯片的Port1口只能OTG用;如果OTGMODE接高,ID接低,芯片的Port1口作主机使用;OTGMODE接高,ID也接高时,则芯片的Port1口作外设使用。在电路中通过15kΩ的上拉电阻和下拉电阻实现ID、OTGMODE两引脚电平的高低变化。

  2.2 系统软件设计

  本设计的主机系统是一个软件和硬件的集合体,功能的实现不依赖于任何操作系统,而是通过中断来调度各个任务,使之满足USB通信的要求,因此系统是按照协议规范和特定的时序运行的。

  本系统是ISP1362工作于主/从机模式下的应用,按系统硬件电路配置完成接口芯片,然后对其编程,就可以进行USB数据传输。系统工作流程如下:首先进行系统初始化,构建PTD传输描述符,接着总线枚举过程,给外设分配地址,获取外设的基本信息,并判断外设为主机设备或是从机设备,之后驱动相应的主/从机驱动程序运行,数据传送和接收,根据总线的活动情况判断是否挂起。系统流程图如图3所示:

系统流程图

  实现ISP1362芯片的软件编程控制,就是对该芯片的CS、RD、WR、A0、A1引脚的控制。本文中CS代表片选,低电平有效;RD代表读信号,低电平有效;WR代表写信号,低电平有效;A0引脚电平的高低不同,分别表示传输的信号代表的是命令信号还是数据信号;A1引脚电平的高低不同,分别表示控制的是外设还是主机。通过上述几个引脚信号的组合,可以实现读写控制ISP1362的不同功能。除此之外,以下的几个引脚对于控制ISP1362也有重大意义:DREQ1引脚代表DMA请求输出,当它高电平有效时,通知IDMA控制器主机正在请求数据传送;DREQ2引脚高电平有效时,通知DMA控制器外设正在请求数据传送;DACK1引脚代表DMA确认输入,低电平有效时表明来自主机的DMA传输请求已经被DMA控制器确认;DACK2引脚低电平有效时表明来自外设的DMA传输请求已经被DMA控制器确认;INT1和INT2引脚连接到外部微处理器的IRQ引脚,使得ISP1362可以根据请求执行中断服务程序。软件设计具体工作流程如下:

  (1)系统硬件初始化,包括ATmega32和ISP1362的初始化。AVR微处理器是Atmel公司的8位嵌入式RISC处理器,它具有功耗低、速度快、输出高、开发工具开放、性价比高等优点,它的程序存储器和数据存储器是可以独立访问的哈佛结构,因此代码执行效率非常高。ATmega系列单片机的内部模块还很丰富,可用的资源也很多,本文对ATmega32的初始化,就是要对它的I/O口、定时器、时钟、看门狗等进行相应的设置,使之开始工作。而ISP1362的初始化,就是当ISP1362上电后,主机控制器驱动程序(HCD)必须通过一系列的硬件初始化步骤来配置主机控制器,从而进入可操作状态。首先检测主机控制器是否存在,此步由MCU(单片机)实现,本文通过MCL响HcScratch寄存器内写入某个值,再从该寄存器中读取,将读出值与写入数值进行比较,若相等,则可说明主机控制器存在;反之则出错,无主机控制器存在。

  (2)构建PTD描述符。PTD(Phi l ips Transfer Descriptor)为ISP1362主机控制器与外围设备的通信提供了一个传输渠道,要在主机与外设之间进行通讯,首先需要构建一个PTD。PTD具有3种传输类型:控制和批量传输(非周期传输)PTD、中断传输PTD和同步传输PTD。

  (3)主机分配地址给设备,获取设备描述符和设备的功能信息。主机通过不断地向外设发送设备请求来获取设备、端点的功能信息。获取USB设备描述符的过程分为三个步骤:a.主机通过设备的默认端点获取设备描述符,为设备分配一个惟一的地址;b.主机读取配置描述符信息、接口描述符信息和端点描述符信息;c.根据设备的相关信息调用相应的事务处理程序。

  (4)设备枚举成功之后,主机就可以根据已编写的进程与外设进行USB通信,等待、查询数据的发送和接收。

  (5)数据发送或接收完毕之后,根据QueryBus函数查询总线的活动情况,判断设备是否需要挂起。

  2.3 设备驱动程序

  要实现主机对从机的读写,USB主机必须具有相应的驱动,对各种读写指令进行封装、解释和执行。开发驱动有很多种方法,本文采用直接在USB主机接口驱动上层封装一个USB传输API 函数-USBXfer,应用于实现各种USB传输。

  3 结束语

  本文设计的USB 0TG主从机系统性能稳定,数据传输效率高。测试表明,此设计能够正确地实现USB 0TG主从机间的数据交换,性能可以满足设备间的数据传输要求,同时又能很好地控制成本,具有一定的实用价值。

关键字:OTG  USB控制器  ISP1362 引用地址:基于AVR单片机的ISP1362OTG设计

上一篇:AVR单片机视觉智能寻迹车设计与实现
下一篇:基于AVR单片机的服装压力检测系统设计

推荐阅读最新更新时间:2024-03-16 12:30

MCU&USB设备控制器IP核的设计
  1 引言   在传统的计算机系统上常采用串口(如RS232)和并口连接外围设备,但串口和并口都存在着通信速度 慢,接口独占不利于扩展等无法克服的缺点,而通用串行总线(Universal Serial Bus,即USB)因具有传输 速度快、支持热插拔、扩展方便、抗干扰强、成本低、数据传输质量高、节省系统资源等优点而得到了广 泛的应用,当前它已成为计算机最常用的接口之一 。   现在USB控制器主要有两种:带USB接口的单片机(MCU)和纯粹的USB接口芯片。纯粹的USB接口芯片仅处 理USB通信,必须有个外部微处理器来进行协议处理和数据交换。典型产品有Philips公司的PDIUSBD11(I2C 接口)、PDIUSBD12
[单片机]
MCU&<font color='red'>USB</font>设备<font color='red'>控制器</font>IP核的设计
USB2.0控制器CY7C68013特点与应用
摘要:介绍USB2.0协议以及Cypress公司推出的USB2.0控制器CY7C68013。USB2.0协议提供480Mb/s的传输速度,向下完全兼容流行的USB1.1协议。CY7C68013是USB2.0的完整解决方案。该芯片包括带8.5KB片上RAM的高速8051单片机、4KB FIFO存储器以及通用可编程接口(GPIF)、串行接口引擎(SIE)和USB2.0收发器,无需外加芯片即可完成高速USB传输,性价比较高。 关键词:USB2.0 高速模式 端点 本刊2002年到2、3期已对EZ-USB单片机的介绍。本文在此只重点介绍USB2.0的特殊之处以及芯片CY7C68013的主要特点。* 1 USB2.0的主要特点 US
[应用]
德州仪器在 C2000™ Piccolo™ 实时浮点微控制器上集成 USB,可实现移动现场诊断与通信
2013 年 2 月 18 日,北京讯 日前,德州仪器 (TI) 宣布推出集成 USB 连接功能的最新 32 位实时 C2000™ Piccolo™ F2806xU 微控制器 (MCU),为客户开发需要现场连接的终端产品助一臂之力。 在消费类及工业电机控制系统、工业电源系统、电信及数据系统、风力与太阳能发电、普通电力电子应用等众多应用中,能够进行存取诊断并进行现场动态修改非常重要。有了 Piccolo F2806xU MCU,TI 客户可便捷地为其应用整合 USB 连接功能。 Piccolo F2806xU MCU 的特性与优势: • 集成型 USB 2.0 及 CAN 外设可充分满足现场移动通信需求; • 支持同步双通道采样
[单片机]
一颗DC/DC控制器解决车用USB Type-C电源系统的三大挑战
最近几年,越来越多的智能手机、笔记本电脑、平板等便携式电子设备开始采用USB Type-C接口,它多样化的功能使其逐渐取代了传统的MicroUSB,成为主流接口。欧洲议会也曾通过决议,主张将欧洲范围内的智能手机等移动设备统一为USB Type-C接口,这预示着USB Type-C会在未来成为统一的接口标准。而随着大众、奔驰、宝马等欧洲传统汽车品牌,以及特斯拉等新能源势力的加入,USB Type-C接口也正在从消费级产品走向汽车应用。与手机、电脑、充电宝和充电头一样,USB Type-C可为汽车带来了最高达100W的充电功率。 无论是新能源汽车还是传统汽车,车内的电子电气部件都占据着极大的比重,所以一款解决方案是否可以在非常小的
[汽车电子]
一颗DC/DC<font color='red'>控制器</font>解决车用<font color='red'>USB</font> Type-C电源系统的三大挑战
USB嵌入式主机控制器设计
  介绍 /script   过去USB仅应用于个人计算机其在嵌入式系统领域的巨大潜力尚未开发USB在嵌入式系统中的应用包括KVM开关数码相机PDA打印机机顶盒及移动电话。   什么是嵌入式系统嵌入式系统被定义为硬件和固件--独立的或作为更大型系统的一部分--通常带有某种操作系统操作系统可以是Windows CEVxWorks或由“自编代码”构成的更简单系统根据上述定义可以认为任何带有处理器的电子装置均可以作为USB嵌入式主机。   嵌入式系统的设计挑战   在基于PC的系统中三种主要部件需要USB操作它们是通常作为PCI子系统部分的主机控制器USB堆栈以及USB类驱动器。   主机控制器是集成主板芯片
[嵌入式]
USB3.0主机控制器在嵌入式媒体中的应用
    随着数字媒体的日益普及,高清视频、数码照片的容量动辄几个GB,而大容量闪存、MP4及“海量”移动硬盘等USB设备的不断增加,使我们随时需要传输几GB甚至几十GB的大文件到我们的媒体中心去,如果使用原来的USB2.0接口,传输这些文件往往要等待几分钟甚至几十分钟。这样给用户的体验就非常的不好。为此我们需要引入新一代的USB3.0接口,使用这种接口,不仅能使我们系统能在几十秒甚至几秒就能完成GB级的数据传输而且还能和已有的USB设备保持兼容。     USB3.0又称为SuperSpeed USB。USB3.0包含了USB2.0的所有特性,且USB3.0大幅提升了传输速度,其最大传输带宽高达5.0Gbps,即625MB/s。US
[嵌入式]
Symwave开始量产高性能的USB 3.0存储控制器
Symwave(芯微科技)宣布,已开始量产SW6316,这是一款单芯片USB3.0到SATA存储控制器。SW6316装置是业界性能最高的解决方案,传输速度超过270MB/秒,可达到目前USB2.0技术产品的10倍以上。 Symwave公司总裁暨CEO Yossi Cohen表示,“Symwave的工程和运营团队在提供最高性能SoC方面连番出击,获得优异进展,包括相关软件,以及从产品定义到正式量产,都是在几乎创纪录的短时间内完成。为达到成功目标,你必须有成功的计划。我们准备了大量的SW6316作为发布推出之用,并可随时支持客户大量出货的市场需求。” Symwave受專利保护的SW6316架構为开
[手机便携]
Symwave开始量产高性能的<font color='red'>USB</font> 3.0存储<font color='red'>控制器</font>
利用USB控制器设计的Windows音量控制器
  USB技术在现代电子系统中应用得越来越广泛。很多计算机上甚至去掉了传统的串口,全部改用USB口的鼠标、键盘,甚至风扇。传统的USB控制器在使用时,需要大量的与主控机相连的接口连线,占用了大量的CPU I/O口资源。随着电子技术的高速发展,USB控制器向小体积、低功耗的方向发展。本文介绍如何使用MAX3420进行Windows系统HID设计的过程。   本设计的首要目的就是,寻找一种快捷的方法来调整音量或者暂停播放,而不需要移动鼠标来寻找Windows Media Player窗口。该系统插在USB端口上,只有一个旋钮起主要作用。旋转这个按钮可以调节音量。按一次旋钮暂停播放,再按一次开始播放。由于该旋钮掌控主要的Windows
[单片机]
利用<font color='red'>USB</font><font color='red'>控制器</font>设计的Windows音量<font color='red'>控制器</font>
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved