修改USB固件库的Customer_HID例程】的更多相关文章

我用的是神州三号开发板子,板子的USB模块原理图为: 配置端口G的11号引脚为usb的使能引脚,按理来说应该是开漏输出的(看了很多的修改代码都是这个模式),不过就是不能使能usb,只能配置成推挽的才行,不知道为什么,不知道有没有人知道这个,求解答? GPIO_InitStructure.GPIO_Pin = USB_DISCONNECT_PIN; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_M…
有愿意共同发展USB固件做.现在,它使用STC89S52+PDIUSBD12(环教你玩USB开发板)它实现了一个USB键盘,项目地址:https://github.com/artprogramming/usb,目的是为了实现一个共同的开源USB固件库,例:USB键盘.鼠标.串行.摄像机等,并可以很容易地移植到不同的平台,设你有兴趣,所以,请增加它.qq组:113717714. 版权声明:本文博客原创文章,博客,未经同意,不得转载.…
STM32F4的相关资料:http://www.stmcu.org/document/list/index/category-523 一.标准固件库简介 本文下载的是STM32F4xx_DSP_StdPeriph_Lib_V1.5.0,其文件夹如下图所示: 其中Project文件夹为各个开发环境(MDK-ARM.EWARM.TrueSTUDIO)的模板工程,Utilities文件夹为官方评估板的标准固件库应用例程,而真正的标准固件库在Libraries文件夹中.在Libraries文件夹中:CM…
1 STM32的三种开发方式 通常新手在入门STM32的时候,首先都要先选择一种要用的开发方式,不同的开发方式会导致你编程的架构是完全不一样的.一般大多数都会选用标准库和HAL库,而极少部分人会通过直接配置寄存器进行开发.网上关于标准库.HAL库的描述相信是数不胜数.可是一个对于很多刚入门的朋友还是没法很直观的去真正了解这些不同开发发方式彼此之间的区别,所以笔者想以一种非常直白的方式,用自己的理解去将这些东西表述出来,如果有描述的不对的地方或者是不同意见的也可以大家提出. 一.直接配置寄存器不少…
1 STM32的三种开发方式 通常新手在入门STM32的时候,首先都要先选择一种要用的开发方式,不同的开发方式会导致你编程的架构是完全不一样的.一般大多数都会选用标准库和HAL库,而极少部分人会通过直接配置寄存器进行开发.网上关于标准库.HAL库的描述相信是数不胜数.可是一个对于很多刚入门的朋友还是没法很直观的去真正了解这些不同开发发方式彼此之间的区别,所以笔者想以一种非常直白的方式,用自己的理解去将这些东西表述出来,如果有描述的不对的地方或者是不同意见的也可以大家提出. 一.直接配置寄存器不少…
对于我这种以前只接触过51和AVR单片机编程的小菜来说,现在开始学习STM32的编程,对于函数的功能以及C语言的语法都还好理解,难的是它提供的那一套硬件抽象层(HAL)驱动是怎么和其他的东东搭配在一起组成一个又一个的工程. 首先上两张从ST官方提供的HAL固件库文档截图 从这两张图的话,能对它的构架看出个一二,下面稍稍具体一点分析 HAL固件库编程,它的文件组织大致分三个部分 - HAL驱动 - CMSIS驱动 - 用户编写程序 而假如你使用的是ST官网的开发板,那么你还有一套现成的驱动可供使用…
dscr51里放的是USB描述符表,EZ-USB在重枚举阶段会读取或设置相应的描述符: db    DSCR_DEVICE_LEN          ;; Descriptor length db    DSCR_DEVICE                  ;; Decriptor type dw   0002H                                 ;; Specification Version (BCD) db    00H                  …
一.概论: 在STM32_USB-FS-Device_Lib_V4.1.0的Custom_HID工程基础上进行修改: 开发一款设备,有三个HID接口,mouse+pen+自定义HID 其中:0_HID 是mouse(端点1 IN):1_HID 是pen(端点2 IN):2_HID 是自定义(端点3 IN-OUT). 在设备管理器和bus hound可以看到如下: 二.修改步骤: 1.修改设备$$配置描述符 /* USB Standard Device Descriptor */ const ui…
STM32固件库详解   emouse原创文章,转载请注明出处http://www.cnblogs.com/emouse/ 应部分网友要求,最新加入固件库以及开发环境使用入门视频教程,同时提供例程模板,个人录制,欢迎指正.下载地址:http://dl.dbank.com/c0w0ehqynd 2013.3补充在线视频教程 最近考试较多,教材编写暂停了一下,之前写了很多,只是每一章都感觉不是特别完整,最近把其中的部分内容贴出来一下,欢迎指正.本文内容基于我对固件库的理解,按照便于理解的顺序进行整理…
第9章     初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.<STM32F4xx规格书>.<Cortex-M3权威指南>, STM32标准库帮助文档:<stm32f4xx_dsp_stdperiph_lib_um.chm>. 在上一章中,我们构建了几个控制GPIO外设的…
第9章     初识STM32固件库 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.<STM32F4xx规格书>.<Cortex-M3权威指南>, STM32标准库帮助文档:<stm32f4xx_dsp_stdperiph_lib_um.chm>. 在上一章中,我们构建了几个控制GPIO外设的…
本篇博文是转载自emouse,因为不能直接转载,所以是复制过来再发布的. emouse原创文章,转载请注明出处http://www.cnblogs.com/emouse/   1.1 基于标准外设库的软件开发 1.1.1 STM32标准外设库概述 STM32标准外设库之前的版本也称固件函数库或简称固件库,是一个固件函数包,它由程序.数据结构和宏组成,包括了微控制器所有外设的性能特征.该函数库还包括每一个外设的驱动描述和应用实例,为开发者访问底层硬件提供了一个中间API,通过使用固件函数库,无需深…
1.新建文件夹如图: 2.新建项目在USER文件夹中,选cpu如图: 若再弹出窗口, 直接点cancel 3.删了这俩文件夹: 4.复制文件到fwlib: src 存放的是固件库的.c 文件, inc 存放的是对应的.h 文件,每个外设对应一个.c 文件和一个.h 头文件 5.复制文件到core 很玄学的变了名字.. 6.复制文件到user 7.把源文件添加到工程 在keil中,左边一栏,对着target右键,manage project items FWLIB 选src里所有文件,删一个: c…
固件库结构 本文使用的固件库是STM32F10x_StdPeriph_Lib_V3.5.0,可以在官网获取.该固件库包含四个文件夹和一个库的说明文档,如下图所示,stm32f10x_stdperiph_lib_um这个英文的帮助文档非常有用,可以很方便地了解某个库函数的使用方法. Project Project文件夹是一些写好的官方例程,便于学习和开发. Libraries/CMSIS/CoreSupport Libraries文件夹下包含了固件库的源代码和启动文件,是固件库的核心所在.如果想要…
目录 前言 移植N32Gxxx系列要点 前言 链接: 李柱明博客 移植AT32库&FreeRTOS教程 由于大部分国产MCU移植固件库.RTOS源码都是差不多的,所以本文不讲细节,如想熟悉移植的套路,就参考上面链接去移植自己手上的MCU.相信移植一次后就懂了,然后自己写一篇博文记录一下,可以理清移植思路,也可以分享给众多道友. 下面主要列出国民技术移植要点.(基于ST工程) 移植N32Gxxx系列要点 文件替换: 启动文件:如:startup_n32g45x.s. 系统文件:如:system_n…
考了很多移植的资料和代码,终于移植好了...应该是完美移植吧~~哈哈哈~~ 编译环境是IAR 工程适用于STM32F10X大容量产品,如果不是,请自行修改启动文件和工程配置 编译器优化等级最高...这个你们根据需要自己调整吧... ############################################################################### 1.Jean J.Labrosse与μCOS—II μCOS—II是一个实时可剥夺型操作系统内核,该操作系统…
一.STM32固件库开发和传统寄存器开发方式的区别 二.CMSIS标准 CMSIS标准--Cortex Microcontroller Software Interface Standard,是ARM公司为了解决不同SOC厂商生产不同的Cortex某系类芯片的软件兼容性问题,与芯片厂商建立的软件内核标准. 1.Cortex-M3芯片架构(硬件结构) 2.CMSIS标准(软件结构) 三.STM32固件库 1.文件结构 2.关键文件夹和相关文件说明 ① 顶层目录 _htmresc    内含CMSI…
很久没有碰单片机了,两年了吧,因为项目需要,最近入手一块红牛的开发板,核心为STM32F103ZE.虽然以前做过大概半年的stm32的开发,现在天天在.net平台下写代码,已经忘记的差不多,恰逢周末,补补课,以后用的时候也方便点. ST推出的FW大大提高了单片机SW的开发效率,所以在新建工程前先来了解下这个SDK.我使用的是最新的v3.5固件库,这个固件库可以分为三个部分: 1.内核支持(..\STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\…
文章包含STM32固件库介绍和工程模板搭建两方面内容. 一.STM32固件库介绍 要建立工程模板,首先要对STM32的固件库有所了解.STM32的固件可以从ST官网下载,网址为:http://www.stmicroelectronics.com.cn/web/cn/catalog/tools/FM147/CL1794/SC961/SS1743,下载后的文件夹组织结构如图1所示. 图1 STM32固件库文件夹 为了更清楚的了解这个文件夹,我们把Libraries文件夹展开来看,如图2的所示.其中C…
源:使用固件库操作STM32F4时的必要配置 使用STM32F4的固件库时,默认的晶振为25Mhz晶振,因此需要做一定的修改.之前因为一直没有注意这个问题,我捣腾了许久,发现工作时钟总是不对,查阅了一下资料之后才知道有好几个地方需要修改. 原文链接:修改STM32库函数中的晶振值 STM32F407的库文件中默认晶振值为25MHz,若外接晶振8MHz,则需修改以下几个地方: 1)修改HSE_VALUE的值 将#define HSE_VALUE ((uint32_t)25000000) /*!<…
操作系统:win10 1.文件目录 (在cmd下用"cd 文件夹" 进入到要显示的文件夹,如cd d:\en.stsw-stm32054,然后输入tree 回车就会出现上图的目录结构) Libraries 文件夹下面有CMSIS和STM32F10x_StdPeriph_Driver两个目录, 其 中CMSIS目录下面是启动文件,STM32F10x_StdPeriph_Driver放的是STM32固件库源码文件.源文件目录下面的inc目录存放的是stm32f10x_xxx.h头文件,无需…
ST(意法半导体)为了方便用户开发程序,提供了一套丰富的 STM32 固件库.固件库就是函数的集合,固件库函数的作用是向下负责与寄存器直接打交道,向上提供用户函数调用的接口(API) .固件库将这些寄存器底层操作都封装起来,提供一整套接口(API)供开发者调用,大多数场合下,你不需要去知道操作的是哪个寄存器,你只需要知道调用哪些函数即可. ARM 公司为了能让不同的芯片公司生产的 Cortex-M3 芯片能在软件上基本兼容,和芯片生产商共同提出了一套标准 CMSIS 标准(Cortex  Mic…
第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm>. 利用库建立好的工程模板,就可以方便地使用STM32标准库编写应用程序了,可以说从这一章我们才开始迈入STM32开发的大门. LED灯…
第11章     GPIO输出—使用固件库点亮LED 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章参考资料:<STM32F4xx参考手册>.库帮助文档<stm32f4xx_dsp_stdperiph_lib_um.chm>. 利用库建立好的工程模板,就可以方便地使用STM32标准库编写应用程序了,可以说从这一章我们才开始迈入STM32开发的大门. LED灯…
CMSIS 标准英文全称是Cortex MicroController Software Interface Standard,翻译为中文意思就是 ARM Cortex 微控制器软件接口标准. 由于基于 Cortex 核的芯片厂商很多,不单只是 ST 公司,为了解决不同厂家的 Cortex 核芯片软件兼容的问题,ARM 和这些厂家就建立了这套 CMSIS 标准. 在 CMSIS 框架内 又分为3个基本功能层 核内外设访问层:ARM 公司提供的访问,定义处理器内部寄存器地址以及功能函数 中间件访问…
1. 项目 使用STM32F103VE的固件库实现流水灯设计. 2. 代码 由于这是基于野火的视频进行学习的,项目代码在上节基础上进行编写的. 点亮绿灯: main.c #include "stm32f10x.h" //相当于51单片机中的 #include <reg51.h> #include "bsp_led.h" void Delay(uint32_t count) { for(; count!=0; count--); } int main(vo…
Cube固件库是ST现在主推的固件库,并且在它的官网已经找不到原来的标准库可供下载.Cube固件库的构架图如下 这种新式构架可以有效的加快软件工程师的工程进度. 新建一个工程项目主要包括以下的步骤: 1.使用它提供的模板或是拷贝一个现有的工程 2.加入你可能用到的middleware 3.拷贝相应的HAL及middleware的配置头文件到你的工程中 4.检查主函数中调用的HAL_Init() 5.配置系统时钟 6.初始化外围 7.这一步就是根据你的设计要求写你自己的工程了…
ST官方网站改版后,基本上很难搜索到固件库的地址,找了半天才找到固件库的下载地址,通过此方法可以找到其他需要的资源,故记下来方便大家. 下载的网站地址为: Home>Tools and Software> Software> MCU Software> STM32 MCUs Software> STM32 Firmware 固件库连接:http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743 下载其中的产…
STM32固件库文件分析 1.汇编编写的启动文件 startup/stm32f10x.hd.s:设置堆栈指针,设置pc指针,初始化中断向量,配置系统时钟,对用c库函数_main最后去c语言世界里. 2.时钟配置文件 system_stm32f10x.c:把外部时钟HSM=8HZ,经过PLL被频为72M. 3.外设相关的 stm32f10x.h:把实现了内核之外的外设的寄存器映射,也就是俗称的上帝之手. stm32f10x_xx.c:外设的驱动函数库文件. stm32f10x_xx.h:存放外设的…
首先除了有个USB线外,你还需要一个USB转串口的线(目的是防止修改错误,无法使用原来的usb的IP地址登陆,心大的可以跳过这步直接进入重点),串口线连接方法如下图: ​ 将USB以及串口和PC机相连后,在PC机新终端输入命令“sudo screen /dev/ttyUSB0 115200”(你有可能需要通过命令”sudo apt-get install screen“来下载screen)来通过串口登陆板子,开个新终端通过ssh或PUTTY进入板子终端(USB进入方式). 重点来了: 在BBB终…