我们如果想实现一个USB 的HID 类设备,不需要在Windows 下开发自己的驱动程序。HID不一定要是标准的外设类型,唯一的要求是交换的数据存储在报文的结构内,设备固件必须支持报文的格式。任何工作在该限制之内的设备都可以成为一个HID,例如温度计、电压计、读卡机等。报文的格式是由报告描述符决定的,所以只要修改描述符就能实现我们需要的报文格式。下面我们来实现一个简单的报文格式:上位机发送固定64 字节数据给设备,这个数据可以是命令,也可是数据,具体含义并不是由报告描述符来决定的,是由开发人员事先约定好的。设备返回的数据也是64 个字节,同样这个数据流的每个字节(甚至每个位)的具体含义由开发人员事先约定好。
上传时间: 2013-12-05
上传用户:xinyuzhiqiwuwu
为了同时实现计算机对FPGA进行在线配置和高速数据传输,提出了一种基于CY7C68013A芯片的USB2.0接口设计方案。介绍了以CY7C68013A芯片为核心的系统硬件电路设计和软件编程,详细分析了CY7C68013A固件程序设计方法。CY7C68013A芯片在配置FPGA时受芯片内部CPU控制,配置速度为6 Mb/s,而在数据传输时采用从属FIFO模式以实现高速数据通信。该方案可以广泛应用到软件无线电项目开发中。
上传时间: 2014-12-29
上传用户:三人用菜
最稳定的固件库版本,适用于所以STM32系列ARM Cortex M3的芯片。
标签: x_stdperiph_lib stm 32 10
上传时间: 2013-10-10
上传用户:奔跑的雪糕
哈特度日
上传时间: 2014-01-12
上传用户:253189838
设计并实现了一个嵌入式USB主机系统的硬件和软件,用于解决USB设备不能脱离PC主机的问题。并在设计的硬件和软件基础上利用嵌入式C语言编制了具有USB Host功能通用固件库。并利用这个固件库实现一个具有并口到USB接口的打印转换器。
上传时间: 2013-10-19
上传用户:yczrl
核心板配置 核心板配置癿FPGA芯片是Cyclone II系列癿EP2C8Q208C,具有8256个LEs,36个M4K RAM blocks (4Kbits plus 512 parity bits),同时具有165,888bit癿RAM,支持18个Embedded multipliers和2个PLL,资源配备十分丰富。实验证明,返款芯片在嵌入NIOS II软核将黑釐开収板癿所有外讴全部跑起来,仅占全部资源癿70-80% ; 核心板同时配备了64Mbit癿SDRAM,对亍运行NIOS软核提供了有力癿保障,返款芯片为时钟频率有143MHz,实验证明,NIOS II软核主频可以平稳运行120MHz,速度迓是相当忚癿; 16Mbit癿配置芯片也为返款核心板增色丌少,丌仅可以存储配置信息,同时迓可以实现NIOS II软件程序存储,你编写癿程序再大也没有后顼乀忧了。 20M癿有源晶振也是必丌可少癿,他是整个系统癿时钟源泉;4个LED对亍调试来说更是提供了径多方便;复位按键,重新配置按键,配置指示灯一个也丌能少;同时支持AS模式和JTAG模式; 除此以外,核心板一个更大的特点是它可以独立亍底板单独运行,为此配备了5V癿电源接口,高质量癿红色开关,为了安全迓加入了自恢复保险丝。当然扩展口是丌能少癿,除了SDRAM占用癿38个IO口外,其他100个IO全部扩展出来,为大家可以迕行自我扩展实验做好了充分癿准备。 四、 下扩展板配置 为了让FPGA収挥它癿强大功能,黑釐开収板为其讴计一款资源丰富癿下扩展板(乀所以叨下扩展板,是因为我们后续迓会有上扩展板)。下面我们就来简单介终一下下扩展板癿资源配置。 支持网络功能,配置ENC28J60网口芯片。ENC28J60是Microchip Technology(美国微芯科技公司)推出癿28引脚独立以太网控刢器。目前市场上大部分以太网控刢器癿封装均赸过80引脚,而符吅IEEE 802.3协议癿ENC28J60叧有28引脚,既能提供相应癿功能,又可以大大简化相关讴计,减小空间; 支持USB功能,配置CH376芯片。CH376 支持USB 讴备方式和USB 主机方式,幵丏内置了USB 途讯协议癿基本固件,内置了处理Mass-Storage海量存储讴备癿与用途讯协议癿固件,内置了SD 卡癿途讯接口固件,内置了FAT16和FAT32 以及FAT12 文件系统癿管理固件,支持常用癿USB 存储讴备(包括U 盘/USB 硬盘/USB 闪存盘/USB 读卡器)和SD 卡(包括标准容量SD 卡和高容量HC-SD 卡以及协议兼容癿MMC 卡和TF 卡); 支持板载128*64的点阵LCD。ST7565P控刢芯片,内置DC/DC电路,途过软件调节对比度。该芯片支持,幵口和串口丟种方式;
上传时间: 2013-11-23
上传用户:ouyangtongze
嵌入式LINUX 电子教程全集 嵌入式系统出现于60年代晚期,它最初被用于控制机电电话交换机,如今已被广泛的应用于工业制造、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等众多领域。计算机系统核心CPU,每年在全球范围内的产量大概在二十亿颗左右,其中超过80%应用于各类专用性很强的嵌入式系统。一般的说,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。 1. 嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。 Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快,linux是可以定制的,其系统内核最小只有约134KB。第三,Linux是免费的OS,在价格上极具竞争力。 Linux还有着嵌入式操作系统所需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统。到目前为止,它可以支持二三十种CPU。而且性能稳定,裁剪性很好,开发和使用都很容易。很多CPU包括家电业芯片,都开始做Linux的平台移植工作。移植的速度远远超过Java的开发环境。也就是说,如果今天用Linux环境开发产品,那么将来换CPU就不会遇到困扰。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的TCP/IP协议有最完备的支持。提供了包括十兆、百兆、千兆的以太网络,以及无线网络,Toker ring(令牌环网)、光纤甚至卫星的支持。所以Linux很适于做信息家电的开发。 还有使用Linux为的是来开发无线连接产品的开发者越来越多。Linux在快速增长的无线连接应用主场中有一个非常重要的优势,就是有足够快的开发速度。这是因为LInux有很多工具,并且Linux为众多程序员所熟悉。因此,我们要在嵌入式系统中使用Linux操作系统。 Linux的大小适合嵌入式操作系统——Linux固有的模块性,适应性和可配置性,使得这很容易做到。另外,Linux源码的实用性和成千上万的程序员热切其望它用于无数的嵌入式应用软件中,导致很多嵌入式Linux的出现,包括:Embedix,ETLinux,LEM,Linux Router Project,LOAF,uCLinux,muLinux,ThinLinux,FirePlug,Linux和PizzaBox Linux 相对,Linux的图形界面还相对较弱,但近年Linux的图形界面发展也很快,这也就不是问题。 2. 什么是嵌入式Linux 嵌入式linux 是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。嵌入式linux既继承了Interlnet上无限的开放源代码资源,又具有嵌入式操作系统的特性。嵌入式Linux的特点是版权费免费;购买费用媒介成本技术支持全世界的自由软件开发者提供支持网络特性免费,而且性能优异,软件移植容易,代码开放,有许多应用软件支持,应用产品开发周期短,新产品上市迅速,因为有许多公开的代码可以参考和移植,实时性能RT_Linux Hardhat Linux 等嵌入式Linux支持,实时性能稳定性好安全性好。 3. 嵌入式Linux有巨大的市场前景和商业机会,出现了大量的专业公司和产品,如Montavista Lineo Emi等,有行业协会如Embedded Linux Consortum等,得到世界著名计算机公司和OEM板级厂商的支持,例如IBM Motorola Intel等。传统的嵌入式系统厂商也采用了Linux策略,如Lynxworks Windriver QNX等,还有Internet上的大量嵌入式Linux爱好者的支持。嵌入式Linux支持几乎所有的嵌入式CPU和被移植到几乎所有的嵌入式OEM板。 4.嵌入式Linux的应用领域非常广泛,主要的应用领域有信息家电、PDA 、机顶盒、Digital Telephone、Answering Machine、Screen Phone 、数据网络、Ethernet Switches、Router、Bridge、Hub、Remote access servers、ATM、Frame relay 、远程通信、医疗电子、交通运输计算机外设、工业控制、航空航天领域等。 5.如果分别让10位工程师给出嵌入式系统的定义,将得到10个不同的答案。一般来说,大部分的嵌入式系统执行特定的任务。我们假定最简单的嵌入式系统包括输入/输出功能,以及一些控制逻辑,该系统基于它的配置执行某些类型的功能。按照这个标准,可以认为一个包含实现控制逻辑74123计数器以及一个状态是一个嵌入式系统。也许可以补充说,该系统必须可通过存储在固件中的软件进行编程。这个新的嵌入式系统定义包括输入/输出(I/O),以及存储在系统固件中的控制逻辑。一个带有鼠标、键盘、网络连接并运行图形用户界面(GUI,graphical user interface)多任务操作系统的桌面计算机显然满足这些要求,但我们能认为它是一个嵌入式系统吗? 如果桌面计算机不是一个嵌入式系统,那么手持设备呢?它们有I/O功能,可以运行存储在固件中的控制逻辑。有人说,桌面计算机和手持设备都有通用计算机设备,可以运行软件来执行许多不同的任务,与之不同的是,嵌入式系统(例如,洗碗机控制器或飞行导航系统)主要是为特定任务而设计的。这种特定的功能限定使嵌入式设备有功能上的唯一性。如果是这样,为什么一些嵌入式系统设计成具有附加的功能,如存储在非易失性存储器中的程序,并且具有运行可以完成原始设计范围之外的任务的多任务操作系统的能力呢? 在过去,区分嵌入式系统和通用计算机比现在简单的多。例如,可以很容易地区分出一个基于8051的T1分幅卡嵌入式系统和一台Sun UNIX工作站。而现在,从功能方面很难区分一台Sun工作站和一个包含PowerPC以及32MB内存和16MB闪存的机顶盒。这样的机顶盒可以运行带GUI的多任务操作系统,可现场升级,可以同时运行多个程序(如视频控制器、数字录像和Java虚拟机),还可以进行安全的因特网在线交易。很难判断这种机顶盒是否是一个嵌入式系统。显然,硬件性能的提升和价格的下降使通用计算机和嵌入式系统之间的界限变得很模糊,技术的进步使得我们很难定义什么是嵌入式。
上传时间: 2014-12-30
上传用户:ljt101007
stm32学习
上传时间: 2013-10-21
上传用户:sjb555
odin3 v1.85中文汉化版是专门为大家提供的一款汉化版的刷机工具,该工具可以更好的辅助大家进行手机更新,该工具的最大优点就是:不用担心手机变“砖”,即使不小心刷错了固件,也可以通过再次刷新来解决!
上传时间: 2013-10-10
上传用户:heheh
stm32学习
上传时间: 2014-01-26
上传用户:hanhanhan