当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于嵌入式ARM9的USB设计与实现

引 言
    USB(Universal Serial Bus)是通用串行总线的缩写,因其具有方便易用,动态分配带宽,容错性优越和高性价比等特点,现已成为计算机的主流接口。
    随着嵌入式系统的广泛应用,各种小型终端需要开发出与外界联系的USB接口。目前,常用的技术有两种。基于单片机的USB接口,特点是需要外置芯片,电路复杂,留下的CPU资源不多;基于ARM的USB接口,特点是资源丰富,但ARM系列产品较多,如果选型不当,还需要搭接较多的外围电路,且不能很好地发挥CPU性能。
    该设计采用三星公司ARM9核的S3C2440A芯片作为CPU,因为该芯片内部集成了控制USB的所有部件,外围电路简单,易于实现。

1 S3C2440A特点
    S3C2440A的CPU部分主要集成了电源模块、复位和时钟模块、触摸屏和小键盘模块、程序存储器和数据存储器模块。同时提供如下丰富的外围接口:同步存储器(SDRAM)和NAND FLASH控制接口,可扩展到1 GB的存储的空间;4个DMA通道和24个中断端口;能控制STN LCD和TFT液晶屏显示,支持触摸屏功;USB接口A型和B型各一个;3个串行口、I2C,SPI,I2S等接口;带AC97音频接口;具备SD卡、数码相机接口和网络接口。
    S3C2440A还具备多种工作模式,管脚为17×17方型分布,横向从左1到右17编号,纵向从下A到上U编号,分类为A1~A17,B1~B17, C1~C17依此类推到U1~U17。这些管脚所对应的功能并不是惟一的,通常只要使能变化,S3C2440A就能实现不同的控制功能。该设计涉及到的 S3C2440A,其管脚如表1所示分为3类。

2.2 串口电路
    串口在该设计中的作用是通过计算机加载USB驱动程序,原理如图2所示。

[!--empirenews.page--]

2.3 电源电路
    由于S3C2440A芯片的管脚对电压提出了不同要求,所以需要完成电源的变压,其原理如图3所示。

3 驱动程序的研究
    按USB接口,其设备结构可分为USB Host(主机)和USB Device(外部设备)。USB主机控制USB设备进行通信,而主机与主机之间,或USB设备与USB设备之间是不能通信的。
3.1 USB主机
    USB主机的功能通常包含以下几个部分:验证USB设备是否安插好或拔除;控制USB主机与设备两者中的数据流;返回USB主机的所显状态。
    USB系统软件由以下3个部分组成:主机控制器驱动(HCD)、USB驱动(USBD)、主机软件(Host Software)。主机控制器所具备的功能如表2所示。HCD和USBD包含基于不同抽象层次的软件接口,两者以一定的方式协同完成任务,用以实现 USB系统的功能。它们的任务差别没有具体定义,然而HCD要具备的一项功能就是必须支持多种不同主机控制器芯片。在一些操作系统中,当系统必须实现某些基本功能时,可由Host Software实现。
3.2 USB传输类型
    USB定义了4种传送类型:控制传送、同步传送、中断传送、批传送。其中,控制传送是指可靠的、非周期性的、突发的,并由主机客户软件所发起的通信,主要应用于控制命令和状态信息的传送;同步传送是指在主机和设备之间周期性的、连续的通信,一般用于传送时实信息,这种类型保留了将时间概念包含于数据的能力,但传送并不一定很紧急;中断传送是指少量数据的、低速的、周期的传送;批传送是指非周期的、大量的、可靠的传送,其典型应用在于传送那些可以利用带宽的数据。[!--empirenews.page--]


3.3 USB设备请求
    USB设备应通过缺省控制管道(Default Control Pipe)响应来自主机的请求命令。这些请求是通过使用控制传输来完成的。请求及请求的参数通过Setup包发向设备,由主机负责设置Setup包内的每个域的值。USB设备请求包含的请求类型有三种:标准、厂商和设备类。标准请求用来完成设备的枚举过程;厂商请求用来完成使用者自己定义的请求;设备类请求指的是某些特定的USB设备类所传输出的请求,例如打印机类就属于这一类。设备请求要求有严格的定义,包含的内容有类型、设备请求、值、索引和长度。

 

3.4 USB驱动程序结构
    S3C2440A芯片支持USB1.1协议和USB 2.0协议。该设计是针对USB Host(主机,A型),并基于USB 1.1协议编写的。程序结构和数据传输的流向如图4所示。
    驱动程序的编写主要分为以下几个部分考虑:硬件提取层、中断服务程序、标准设备请求和主循环。硬件提取层实现的是S3C2440A对I/O端口直接的读写操作;中断服务程序处理各种中断,包括总线任务上的请求;标准设备请求完成主机送来的各种标准请求,用于完成各种枚举请求;而主循环则负责完成前台的数据采集等工作,所有的任务结束后都要回到主循环上去。


4 结 语
    该设计采用三星公司ARM9的S3C2440A芯片作为CPU,比原来基于单片机的模式,外围电路简单,容易可靠地实现嵌入式终端的USB接口功能。在调试中,用到的嵌入式开发板GEC2440A套件还提供了串口工具DNW。用这一工具可以检测驱动程序的正确与否,如:程序编写无误,则DNW串口会提示 “USB IS CONNECT”。由于S3C2440A芯片功能丰富,如处理器可提高运算速度,LCD可人机交互,网口可连接因特网,所以开发出的嵌入式终端不但可提升整体性能,还为日后的应用奠定了基础。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

经过几十年发展,嵌入式技术已经用在了我们生活中的方方面面,但是嵌入式始终都带有小众,专业性强的属性,让很多非嵌入式领域的同学望而却步。近十几年的发展,物联网覆盖了越来越多领域,包括了家居,商业,工业,农业等领域,不仅吸引...

关键字: 嵌入式 物联网 技术

随着IT技术飞速发展,互联网已经进入了“物联网”时代。物联网中需要的大量设备不在依赖人与人之间的交互产生联系,更多通过协议、通信、程序设计等方式连接到一处。即 “物联网”的目的则是让所有的物品都具有计算机的智能但并不以通...

关键字: 嵌入式 物联网 计算机

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭