当前位置:首页 > 单片机 > 单片机
[导读]1 前言USB(Universal Serial Bus,通用串行总线)作为PC史上最成功的接口之一,它不仅成为PC的标准接口,而且发展成为消费类电子、移动设备的标准接口。它具有安装方便、高速、灵活、低成本、易扩展,支持

1           前言

USB(Universal Serial Bus,通用串行总线)作为PC史上最成功的接口之一,它不仅成为PC的标准接口,而且发展成为消费类电子、移动设备的标准接口。它具有安装方便、高速、灵活、低成本、易扩展,支持热插拔等优点,已经逐渐成为现代数字设备进行数据传输主要接口标准。

C8051F020是高集成的单片机系统,它集成了模/数控制器,外部存储器,和串行通讯接口,但是没有集成USB控制器;USBN9604是遵循USB1.1标准的USB端点控制器,如果把两者集合到一起,把C8051F020的高速数据采集和USB的接口的优点集合起来,将大大提高数据采集系统的性能和数据传输效率。

2           芯片特点

2.1          C8051F020微控制器[1]

C8051F020系列器件使用Silicon Labs的专利CIP-51微控制器内核。CIP-51与MCS-51TM

指令集完全兼容,可以使用标准803x/805x的汇编器和编译器进行软件开发。CIP-51 内核具有标准8052的所有外设部件,包括5个16 位的计数器/定时器、两个全双工UART、256 字节内部RAM、128 字节特殊功能寄存器(SFR)地址空间及8/4个字节宽的I/O 端口。

    C8051F020系列MCU对CIP-51内核和外设有几项关键性的改进,提高了整体性能,更易于在最终应用中使用。

2.2          USB控制器USBN9604[2]

USBN9604是National Semiconductor公司设计生产的一款较新型的专用USB通信控制芯片,它支持12Mbps全速传输,4种传输方式和总线供电方式,可满足USB1.0和1.1协议。它具有8位并行接口,可支持DMA、MICRWIRE/PLUS接口,能适应大多数设备规范的设计,可以广泛应用于很多外围设备。芯片提供了3种访问外部数据的方式:非复用并行方式、复用并行方式和MICRWIRE方式。其主要特点如下:

1)        外部24MHZ晶振,因为芯片内部有倍频电路,因而内部可得到48MH时钟。

2)        可编程时钟发生器能产生不同频率的时钟,可以作为外部器件(如CPU)提供的时钟信号。

3)        带有串行引擎接口(SEI),包含物理层接口和介质访问控制层协议,支持USB1.0和USB1.1协议。

4)        带有7个端点的USB功能控制器,每个端点对应一个FIFO。其中端点0是双向控制端点,另有3个发送端点和3个接收端点。除端点0外其余端点缓存区都是64字节。

USBN9604内部有64个映射到内存的寄存器,主要有主控制寄存器(MCTL)、时钟配置寄存器(CCONF)、主事件寄存器(MAEV)、ALT事件寄存器(ALTEV)、接收事件寄存器(RXEV)和发送事件寄存器 (TXEV)以及各端点的控制寄存器和收发数据及状态寄存器等。固件的大部分功能就是完成对此寄存器组的读写,实现对接口的配置、接口状态的转换以及数据在外设和计算机之间的传输等。

3           USB接口的扩展

C8051F020专门提供了丰富的I/O端口,它可以提供8个8位的数字接口,其中P0、P1、P2、P3为低端口,它既可以按位寻址,也可以按字节寻址,C8051F020丰富的数字资源(UART、SMBUS、SPI、PCA、定时器)均要通过交叉开关配置到4个低端口才能使用。P4、P5、P6、P7为高端口,它只能按字节寻址,C8051F020虽工作电压为2.7-3.6V,但其I/O端口均与TTL电平兼容。对于外部扩展存储器和存储器映射的I/O设备可采用总线复用模式和非复用模式扩展。

USBN9604与微控制器的并行连接有两种方式:即非复用方式和复用方式。它们可通过设置引脚MODE0、MODE1来选择。当MODE0和MODE1连接低电平时USBN9604采用非复用模式;当MODE0接高电平,MODE1接低电平时采用复用方式。在非复用方式时,可用控制引脚CS、RD、WR、地址引脚A0和双向数据线D[7:0]实现相应的地址读写。而在复用方式时,则使用控制引脚CS、RD、WR、地址锁存信号ALE和双向数线D[7:0]实现其地址读写。

本设计采用总线复用方式进行数据交换。图1所示是C8051F020单片机和USBN9604的接口电路,该电路由一片C8051F020单片机、USB控制芯片USBN9604、时钟振荡电路以及相应的外围电路组成。其中USBN96O4通过外部中断INT与单片机进行通信。

图1为低端口复用总线扩展实例。数据总线和低8位地址总线共享相同的端口引脚:AD[7:0],地址锁存信号ALE连接到USBN9604的A0引脚,用于控制USBN9604内部地址锁存寄存器,保持低8位地址。通过交叉开关的特殊寄存器将数据总线和数据总线定义到相应的端口。当我们在选用总线复用模式,用低端口作为扩展外部数据存储器总线时需要做以下工作:

1)        用外部存储器接口(EMIF)设置寄存器EMIOCF选择端口:EMIOCF.5置0,将P3、P2、P1、P0选用外部扩展总线。

2)        选择复用方式:将EMIOCF.4置0,定义复用方式。定义P3.7-P3.0为数据总线D7-D0和低8位复用地址总线A7-A0,P2.7-P2.0定义为高8位地址总线A15-A8,P0.7定义为写控制(WR),P0.6定义为读控制(RD),P0.5定义为ALE。

图1 C8051F020单片机和USBN9604接口电路示意图

3)        选择存储器模式:用EMIOCF.3-2,选择EMIF的工作模式,当EMIOCF.3-2为01时外部存储器接口工作在不带块选择的分片方式,在这种模式下寻址低于4K 边界的地址时访问片内存储器,寻址高于4K 边界的地址时访问片外存储器,也就是说该设备的寄存器地址范围是0X1000-0X10FF。

4)        设置外设接口时序:外设读写时序通过EM0TC特殊寄存器设置,EM0TC.7-6设置EMIF地址建立时间,EM0TC.5-2设置EMIF的WR和RD脉冲宽度,EM0TC.1-0设置EMIF地址保持时间。

所以通过上面步骤我们设置EMIF的相关特殊寄存器为以下值:

    EMI0CF  = 0x07;    //使用低端口,复用方式以不带片选方式工作

EMI0TC  =0x21;    //地址建立时间为0,RD/WR持续时间为9个系统时钟周期,地址保持时间为1个系统周期。

在设置EMIF之后,我们读取USBN9604的寄存器就像读取普通外部数据存储器一样。我们可以这样编写对USBN9604读取的函数:

#define USBN9604 (byte xdata *)(0x1000)

extern void write_usb(byte adr,byte dta)

{

  *(USBN9604 +adr)= dta;

}

 

byte read_usb(byte adr)

{

  return  *(USBN9604+adr);

}

4           设备固件(firmware)设计

USB接口的程序包括三个基本的部分:①初始化,这部分程序用来对单片机C8051F020、USB控制芯片USBN9604和所有外围电路进行初始化;②主循环,发送USB请求、处理USB总线事件和用户事件处理;③中断服务程序,对USBN9604产生的中断进行处理。

初始化程序中对USBN9604的初始化包括:①进行软件复位,它不影响时钟输出,相当于一个硬件复位;②设置中断方式,确定中断输出是高电平有效还是低电平有效;③设置缺省地址,这是由于USB规范规定设备在总线为其分配地址之间要以0作为缺省地址;④设置中断屏蔽,在USBN9604中各个端点的发送数据、接收数据和发送NAK握手包等事件可能产生中断;设置中断屏蔽这个步骤确定了哪一个端点的哪一种事件能够产生中断。

设备固件是设备运行的核心,其主要功能是控制芯片USB9604接受并处理USB驱动程序的请求(如请求设备描述符、请求或设置设备状态、请求设备设置、请求或设置设备接口等供10种USB1.1标准请求)。描述符包括设备描述符和配置描述符,USB规范给出了它们的格式,想要计算机正确识别设备并安装驱动程序,这些描述符必须根据具体设备的情况填写。如果这些设置正确,这时该已经成为一个USB设备,能够被计算机正确识别。由于Windows XP自带了多种USB驱动程序,所以现在一般不用开发USB驱动程序,用其自带的USB驱动程序即可正确和PC进行通讯,用户只需开发应用软件即可。

5           结论

基于USB外设的应用目前在国内处于高速发展阶段,利用USB进行数据采集和工业控制已得到成功应用,虽然随着USB协议2.0,特别是无线USB协议的推出,USB总线发生了巨大的变化,但是基于USB1.1协议的数据采集系统在工业应用中仍占主导地位。该方案经实验证明正确有效,能够应用于多种数据采集系统,具有重要的应用价值。

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

助力科研与检测新突破 上海2024年5月15日 /美通社/ -- 全球知名的科学仪器和服务提供商珀金埃尔默公司今日在上海举办了主题为"创新不止,探索无界"的新品发布会,集中展示了其在分析仪器领域的最...

关键字: 质谱仪 BSP DSC 气相色谱

上海2024年5月16日 /美通社/ -- 2024年5月10日至5月13日,富士胶片(中国)投资有限公司携旗下影像产品创新力作亮相北京P&E 2024。在数码相机展览区域,全新制定的集团使命"为世界绽...

关键字: 富士 数码相机 影像 BSP

贝克曼库尔特目前已成为MeMed Key免疫分析平台和MeMed BV检测技术的授权经销商 在原有合作的基础上,继续开发适用于贝克曼库尔特免疫分析仪的MeMed BV检测 加州布瑞亚和以色列海法2024年5月16日...

关键字: BSP IO 检测技术 免疫分析仪

英国英泰力能的燃料电池是可产业化的产品解决方案 英国首个专为乘用车市场开发的燃料电池系统 在 157kW 功率下,此燃料电池比乘用车的其他发动机更为强大 &...

关键字: ENERGY INTELLIGENT 氢燃料电池 BSP

深爱人才,共赴"芯"程 深圳2024年5月15日 /美通社/ -- 5月11日,深圳国资国企"博士人才荟"半导体与集成电路产业专场活动在深圳市重投天科半导体有限公司(简...

关键字: 半导体 集成电路产业 BSP 人工智能

武汉2024年5月15日 /美通社/ -- 北京时间4月26日-5月4日,2024 VEX 机器人世界锦标赛于美国得克萨斯州达拉斯市举办。本届 VEX 世锦赛为期九天,设有 VIQRC 小学组/初中组、V5RC 初中组/...

关键字: 机器人 BSP RC POWERED

上海2024年5月15日 /美通社/ -- 由生成式人工智能(AI)驱动的临床阶段生物医药科技公司英矽智能宣布,与复星医药(600196.SH;02196.HK)合作开发的潜在"全球首创"候选药物IS...

关键字: ISM BSP PC 人工智能

上海2024年5月13日 /美通社/ -- 5月8日,浦东新区国资委组织陆家嘴集团等9家区属企业与立邦中国召开合作交流会,旨在贯彻落实浦东新区区委、区政府工作要求,进一步放大进博会溢出带动效应,持续扩大区属企业与进博会重...

关键字: BSP 数字化 自动化立体仓库 智慧园区

上海2024年5月13日 /美通社/ -- 在数字化时代,高效的税务管理和ERP系统成为企业发展的关键。为了满足这一需求商应信息科技与Exact Software 易科软件就金四全电票税系统与ERP系统集成及商务合作建立...

关键字: AC 软件 BSP 数字化

北京2024年5月13日 /美通社/ -- 5月11日,鲲鹏昇腾开发者大会2024期间,华为举办"昇思AI框架及大模型技术论坛",软通动力数字基础设施与集成事业部总经理谢睿受邀出席、软通动力...

关键字: AI 模型 BSP 精度
关闭
关闭