当前位置:首页 > 嵌入式 > 嵌入式硬件

除了上述所介绍的描述符类型外,若用户想要将1.x规范的设各兼容2.0规范,就必须对描述符作若干的修正。在双速度设各中,如 何通过读取其描述符来检测设备的目前速度,就是一个非常重要的课题。  如表1所列,为1.x规范设备要与2.0规范设备兼容时,所须修改的描述符字段。其中,用户会发现仅具各等时端点的设各须去修 改等时端点描述符的内容,而在设备描述符中,唯一也是仅须去修改的字段是bcddevice,且将其更改为0200h。  在此须知道,设备的预设上,必须要求无等时的带宽。这是因为这些接口并没有使  用等时传输的数据,若设各想要去执行等时传输,它必须支持至少一个接口设置,其中还须内含至少一个端点描述符。而有部分1.x 设备也已经符合了这个要求。所以说,若没有使用等时传输,也就无须更改这些字段设置值。  在2.0规范中对于已存在的字段的若干位,增加了2个新的描述符与功能。但是如表1所列,所使用到的新描述符仅用在双速度的设 各上。而所存在的描述符也与规范1.x向下兼容。表1 1.x规范与2.0规范兼容所须改变的描述符类型及其字段  而高速设备必须以全速的方式来响应设备列举的标准要求的过程,以及也可能具备与全速完全兼容的功能。  前面的章节有提及过,如果一个具备与高速兼容的设备连接至1.x规范主机,或如果介于主机与设备之间使用1.x规范集线器,就必 须使用全速的功能。  而对于应用程序与设备驱动程序通常无须知道这双速度设备是使用何种速度,因为所有的应用程序与设备驱动程序若与速度相关的 都可以以较低阶的方式来加以处理。事实上,windows操作系统没有直接的方法可以知道设备的速度是什么,但是,还是有一些小技巧,可以让主机知道有一些设备仍可提供相关信息。  例如,如果设备具有批量端点,用户即可通过设备列举,以主动的方式去取得并检查端点描述符的信息。其中,对maxpacksize字段 来说,若设置为512(个字节),即可知道目前所连接上的是高速设备。这是因为全速设备不能设置这个数值。若以此方式来推演, 假设没有批量端点,也可以使用中断端点与等时端点所设置的maxpacksize字段,同样地,用户也可用来判断此设备是属于哪一种速 度。其中,针对中断端点的maxpacksize字段来说,若设置超过64的数值,就可表示目前是高速设备。但是,若高速设各也有可能设 置为64,或更低的maxpacksize值。再者同样的道理,对于等时端点的maxpacksize字段来说,若设置为1 024的数值,表示目前连接 上的是一个高速设各。但是,相对的高速设备也有可能设置为l 024或更低的maxpacksize值。因此,这种方式并不能绝对保证此设备 一定是高速设备。  如果用户曾经编写过固件程序代码,用户可以通过配置描述符或other_speed_configuration描述符,利用可选择性的配置字符串 索引来添加一些与速度相关的信息。例如,以cypress ez-usb fx2(usb 2.0)的固件范例程序代码bulkloop来说明。以下列出其描 述符文件的内容。  从这个程序范例码中观察到,可以把描述符分成:highspeedconfigdscr与full-speedconfigdscr两组,分别设置高速与全速的各种描述符。其中,设备描述符的bcd-device字段设置成:dw 0002h方式(因为是little endian),用来表示高速设备。  在稍前所叙述的usb设备描述符的“设备群组”字段以及“设备次群组”字段中,定义了设备群组。那什么是设各群组呢?在usb的 文件中,定义了将某种相同属性的设备整合在一起的群体,称之为群组(class)。而将这些相同属性的设备组合在一起的优点是, 可以同时开发该群组以pc主机为主的驱动程序。  例如,鼠标是属于人工接口设备的一种,其群组驱动程序已包含在操作系统下。如果鼠标也遵循了设备群组规范,那么鼠标的制造 商在出售时,根本就无须另外再附一套驱动程序。也就是可以直接使用windows 98 se或windows 2000所内建的人工接口设备的驱动 程序。这样,硬件的制造商只须专心开发其硬件电路即可。相对的,倘若该设备并不符合人工接口设备群组,就必须使用含有win32 api调用的vb、c++或delphi等高级程序,另外再编写其驱动程序。  以下列出usb规范中所定

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

本设计的控制系统主要包括:倾斜模块、超声波模块、语音模块、光敏电阻模块及电源等。

关键字: 单片机 STC51

本文针对电动两轮车自燃防控装置的开发与分析进行了研究。通过电动两轮车自燃原因分析,提出了电动两轮车的自燃防控智能装置设计思路,介绍了电动两轮车的自燃防控智能

关键字: STC89C52RC 单片机 微控制器

现在市面上还不存在一种方便实验人员选取芯片,以及方便管理人员对芯片进行智能化管理的芯片柜,为此希望通过研发这款智能芯片柜,来解决以上问题。​

关键字: 单片机 芯片

这款全新的中端MCU系列为设计人员提供了更高水平的安全性和灵活性

关键字: 嵌入式 单片机

单片机是一种嵌入式系统,它是一块集成电路芯片,内部包含了处理器、存储器和输入输出接口等功能。

关键字: 单片机 编写程序 嵌入式

在现代电子技术的快速发展中,单片机以其高度的集成性、稳定性和可靠性,在工业自动化、智能家居、医疗设备、航空航天等诸多领域得到了广泛应用。S32单片机,作为其中的佼佼者,其引脚功能丰富多样,是实现与外部设备通信、控制、数据...

关键字: s32单片机引脚 单片机

在微控制器领域,MSP430与STM32无疑是两颗璀璨的明星。它们各自凭借其独特的技术特点和广泛的应用领域,在市场上占据了重要的位置。本文将深入解析MSP430与STM32之间的区别,探讨它们在不同应用场景下的优势和局限...

关键字: MSP430 STM32 单片机

该系列产品有助于嵌入式设计人员在更广泛的系统中轻松实现USB功能

关键字: 单片机 嵌入式设计 USB

单片机编程语言是程序员与微控制器进行交流的桥梁,它们构成了单片机系统的软件开发基石,决定着如何有效、高效地控制和管理单片机的各项资源。随着微控制器技术的不断发展,针对不同应用场景的需求,形成了丰富多样的编程语言体系。本文...

关键字: 单片机 微控制器

单片机,全称为“单片微型计算机”或“微控制器”(Microcontroller Unit,简称MCU),是一种高度集成化的电子器件,它是现代科技领域的关键组件,尤其在自动化控制、物联网、消费电子、汽车电子、工业控制等领域...

关键字: 单片机 MCU
关闭
关闭