EZ-USB接口设备的软配置技术
摘要:介绍EZ-USB器件的基本特性和EZ-USB接口设备的开发方法,结合具体设计示例重点讨论EZ-USB接口设备的软配置方式和固件装载技术。
关键词:EZ-USB软配置固件装载
引言
EZ-USB是Cypress公司带智能内核的USB接口器件,集USB通信控制引擎和改进的8051内核于一体,具有全速度、全序列、易开发及软配置等特点,是设计USB设备的首选器件。EZ-USB的串行接口引擎能自动完成主要USB协议处理,简化了设备固件设计。但其软配置与枚举涉及到Windows编程、WindowsPnP技术以及WindowsDDK工具、INF文件和注册表的使用等问题,因此EZ-USB接口设备的软配置方式和固件装载技术是开发EZ-USB接口设备的关键问题。
1EZ-USB处理器
EZ-USB的串行接口引擎能自动完成数据收发控制、位填充、数据编码、CRC校验、PID包解码等USB协议处理。EZ-USB在连接时自动进行枚举,建立默认的EZ-USB设备。首次枚举成功后,还可以通过软配置由8051内核重新枚举建立用户定制的设备。
内置的8051处理器,相对标准的8051处理器进行了改进。以AN2131QC为例,主要有以下改进方面:
◇独立的地址总线和数据总线,总线周期为4个时钟,平均运行速度提高了近3倍;
◇双数据指针和自动指针提高了数据交换效率;
◇扩展的中断系统支持13个中断源,并支持自动中断向量;
◇1个I2C接口以及2个UART接口,24个可配置I/O端口;
◇可变周期的MOVX指令可以适合高低速存储器芯片的接口;
◇3个16位内置定时/计数器、256字节内部寄存器RAM;
◇芯片内部集成有8KB外部RAM,8051内核要用MOVX指令访问此RAM区。
2EZ-USB软配置特性
2.1软配置特性
软配置特性是EZ-USB最重要的特性。软配置特性允许设备无限制的升级或再配置。EZ-USB片内集成的外部RAM可用于装载固件。当设备与主机连接时,固件从主机装载到这里执行,而不是固化在ROM中。因此,装载不同的固件设备就呈现出不同的特性,如设备配置、有效端点、工作方式、设备功能等都可以通过改变固件进行再配置,达到软配置目的,这就是EZ-USB的软配置特性。
2.2配置方式
软配置可采用两种方式实现:自动配置和命令配置。
自动配置是指当设备连接时,固件由专门的装载驱动程序自动装载到设备。这种方式下固件要捆绑在装载驱动程序之中,固件与装载驱动程序之间一一对应,固件修改时要重新生成并重新安装装载驱动程序,固件装载后要重新枚举,以建立定制的USB设备,如果不重新枚举主机会找不到设备。
命令配置是指在应用程序中通过命令操作将固件装载到设备。这种方式不需要专用的装载驱动程序,可在任何时刻装载任意固件。固件装载后可以不用重枚举操作,由EZ-USB内核响应主机请求,可以简化固件设计。采用命令配置方式时,在应用程序中要编写固件装载代码。固件装载代码主要完成下列操作:
◇从IntelHex格式文件中提取出有效的固件代码;
◇向EZ-USB请求复位8051内核;
◇向EZ-USB请求固件下载,固件下传至EZ-USB的内部RAM;
◇向EZ-USB请求8051内核脱离复位状态;
⑤对EZ-USB外设接口和交替功能进行设置。
3EZ-USB接口设备开发方法
USB设备开发的一般步骤和内容如图1所示。其中面向设备的固件主要包括设备描述符信息、设备功能代码和通信控制功能代码。设备描述信息描述USB设备的一般特性和配置,如设备类别、接口配置、VID和PID等。主机在设备枚举时要获取USB设备的描述符,从而获得设备的配置信息和相关驱动信息。用户可以通过修改固件中的描述符来改变设备的特性。设备功能代码由设备的功能需求决定。通信控制功能代码执行主机请求分析处理和数据交换处理功能。
设备驱动程序提供用户访问设备的接口。开发系统提供厂家的通用设备驱动程序。用户也可以用相关驱动程序开发工具自己定制。自己定制的设备驱动程序要求符合WDM驱动程序规范。若采用自动配置方式,EZ-USB开发系统 《EZ-USB接口设备的软配置技术》
本文链接地址:http://www.oyaya.net/fanwen/view/170305.html
关键词:EZ-USB软配置固件装载
引言
EZ-USB是Cypress公司带智能内核的USB接口器件,集USB通信控制引擎和改进的8051内核于一体,具有全速度、全序列、易开发及软配置等特点,是设计USB设备的首选器件。EZ-USB的串行接口引擎能自动完成主要USB协议处理,简化了设备固件设计。但其软配置与枚举涉及到Windows编程、WindowsPnP技术以及WindowsDDK工具、INF文件和注册表的使用等问题,因此EZ-USB接口设备的软配置方式和固件装载技术是开发EZ-USB接口设备的关键问题。
1EZ-USB处理器
EZ-USB的串行接口引擎能自动完成数据收发控制、位填充、数据编码、CRC校验、PID包解码等USB协议处理。EZ-USB在连接时自动进行枚举,建立默认的EZ-USB设备。首次枚举成功后,还可以通过软配置由8051内核重新枚举建立用户定制的设备。
内置的8051处理器,相对标准的8051处理器进行了改进。以AN2131QC为例,主要有以下改进方面:
◇独立的地址总线和数据总线,总线周期为4个时钟,平均运行速度提高了近3倍;
◇双数据指针和自动指针提高了数据交换效率;
◇扩展的中断系统支持13个中断源,并支持自动中断向量;
◇1个I2C接口以及2个UART接口,24个可配置I/O端口;
◇可变周期的MOVX指令可以适合高低速存储器芯片的接口;
◇3个16位内置定时/计数器、256字节内部寄存器RAM;
◇芯片内部集成有8KB外部RAM,8051内核要用MOVX指令访问此RAM区。
2EZ-USB软配置特性
2.1软配置特性
软配置特性是EZ-USB最重要的特性。软配置特性允许设备无限制的升级或再配置。EZ-USB片内集成的外部RAM可用于装载固件。当设备与主机连接时,固件从主机装载到这里执行,而不是固化在ROM中。因此,装载不同的固件设备就呈现出不同的特性,如设备配置、有效端点、工作方式、设备功能等都可以通过改变固件进行再配置,达到软配置目的,这就是EZ-USB的软配置特性。
2.2配置方式
软配置可采用两种方式实现:自动配置和命令配置。
自动配置是指当设备连接时,固件由专门的装载驱动程序自动装载到设备。这种方式下固件要捆绑在装载驱动程序之中,固件与装载驱动程序之间一一对应,固件修改时要重新生成并重新安装装载驱动程序,固件装载后要重新枚举,以建立定制的USB设备,如果不重新枚举主机会找不到设备。
命令配置是指在应用程序中通过命令操作将固件装载到设备。这种方式不需要专用的装载驱动程序,可在任何时刻装载任意固件。固件装载后可以不用重枚举操作,由EZ-USB内核响应主机请求,可以简化固件设计。采用命令配置方式时,在应用程序中要编写固件装载代码。固件装载代码主要完成下列操作:
◇从IntelHex格式文件中提取出有效的固件代码;
◇向EZ-USB请求复位8051内核;
◇向EZ-USB请求固件下载,固件下传至EZ-USB的内部RAM;
◇向EZ-USB请求8051内核脱离复位状态;
⑤对EZ-USB外设接口和交替功能进行设置。
3EZ-USB接口设备开发方法
USB设备开发的一般步骤和内容如图1所示。其中面向设备的固件主要包括设备描述符信息、设备功能代码和通信控制功能代码。设备描述信息描述USB设备的一般特性和配置,如设备类别、接口配置、VID和PID等。主机在设备枚举时要获取USB设备的描述符,从而获得设备的配置信息和相关驱动信息。用户可以通过修改固件中的描述符来改变设备的特性。设备功能代码由设备的功能需求决定。通信控制功能代码执行主机请求分析处理和数据交换处理功能。
设备驱动程序提供用户访问设备的接口。开发系统提供厂家的通用设备驱动程序。用户也可以用相关驱动程序开发工具自己定制。自己定制的设备驱动程序要求符合WDM驱动程序规范。若采用自动配置方式,EZ-USB开发系统 《EZ-USB接口设备的软配置技术》