stm32--USB(作为U盘)+FatFs的实现】的更多相关文章

源:STM32之独立版USB(Host)驱动+MSC+Fatfs移植 STM32之USB驱动库详解(架构+文件+函数+使用说明+示例程序)…
硬件设计 该核心板的USB插口有两个,一个是用于USB Slave的,可以用来做HID设备,把模拟STM32模拟为U盘等:另一个是USB Host设备,可以对插上的U盘的数据进行读写. 图中J2是Micro-USB口,用于向整个板子供电,由于最大供电为500mA,所以板载资源耗电不能超过2.5W. 上图中J1是USB Host设备,它需要向Slave(如U盘)供电,USB_POW用于控制是否供电.当USB_POW为低,Q1导通,5V的电源(来自)供到S5V上,为Slave供电. 在调试USB-H…
将stm32的USB口接到PC端后,PC端会要求安装一个STM32 USB Virtual COM Port Driver,然后就可以用串口调试助手对其操作了…
源:STM32 USB虚拟串口 串口调试在项目中被使用越来越多,串口资源的紧缺也变的尤为突出.很多本本人群,更是深有体会,不准备一个USB转串口工具就没办法进行开发.本章节来简单概述STM32低端芯片上的USB虚拟串口的移植.在官方DEMO中已经提供了现成的程序,这里对修改方法做简单说明. 官方demo及驱动程序,我存放在百度盘: http://pan.baidu.com/s/1hq3moE4 首先打开官方demo我们开始进行移植,第一步复制我们可用的文件,操作如下: Projects\Virt…
源:STM32 USB 问题汇总 汇总1:STM32的USB例程修改步骤,来自http://blog.csdn.net/cy757/archive/2010/01/01/5117610.aspx 以下是笔者将ST的Custom_HID例程修改为“自定义USB设备”例程时总结出来的,因为笔者也是刚刚学USB开发不久,某些方面理解错误在所难免,请各位大虾指正. 一.usb_desc.c文件 根据你程序使用的通信方式修改.usb_desc.h文件中定义要根据usb_desc.c文件中的数组的大小:Co…
最近偷懒,没学习,反想起自己的路由刷了Openwrt,正好闲置了一个硬盘想拿来做个网络硬盘,于是开始了折腾....这里将不谈论如何刷Openwrt,如何ssh,如何添加PPOE,如何添加相对应服务的包等等,网上太多资料了... 这里只记录了耗时1天半,折磨自己,例如,扩展了系统容量,设置了Samba,aria2和aria2webui, 构建Owncloud私有云盘,的一些过程和一些配置文件干货.有些配置完了突然感觉然并卵,但是过程很愉快算是减压的好玩具. 硬件大概这个样子....WNDR4300…
STM32平台SD卡的FatFS文件系统开发 系统平台: STM32系列的STM32F103ZE SPI方式与SD卡通信 SD上移植FatFS系统 1 FatFS文件系统 1.1 FatFS简介 FatFS是一个为小型嵌入式系统设计的通用FAT(File Allocation Table)文件系统模块.FatFs 的编写遵循ANSI C,并且完全与磁盘I/O层分开.因此,它独立(不依赖)于硬件架构,可以被嵌入到低成本的微控制器中,如AVR, 8051, PIC, ARM, Z80, 68K 等等…
串口调试在项目中被使用越来越多,串口资源的紧缺也变的尤为突出.很多本本人群,更是深有体会,不准备一个USB转串口工具就没办法进行开发.本章节来简单概述STM32低端芯片上的USB虚拟串口的移植.在官方DEMO中已经提供了现成的程序,这里对修改方法做简单说明. 官方demo及驱动程序,我存放在百度盘: http://pan.baidu.com/s/1hq3moE4 首先打开官方demo我们开始进行移植,第一步复制我们可用的文件,操作如下: Projects\Virtual_COM_Port文件夹下…
STM32 USB Virtual COM USB转串口的功能实现   这次讲的是如何实现USB转串口功能的实现.首先看看工程的布局吧: 我们主要要介绍的文件的在USB_User这个组文件.从上面的截图可以看到USB_User这个文件由hw_config.c.usb_desc.c.usb_endp.c.usb_istr.c.usb_prop.c.usb_pwr.c几个文件组成.其中usb_istr.c和usb_pwr.c整两个文件不用修改,其他的文件都需要修改.下面接慢慢将来. 首先讲讲hw_c…
stm32 像W25Q256FLASH中通过  FATFS文件系统写入数据  写多了之后出现错误,之前存储的全都找不到了 http://firebbs.cn/thread-23490-1-1.html 原文地址感谢原主.…
http://blog.csdn.net/u011318735/article/details/17424349 既然学习了USB,那就必须的搞懂USB设备与USB主机数据是怎么通讯的.这里主要讲设备端,因为我们的代码是做USB设备用的. 我们需要必须要定义了USB中断.起始在STM32的中断向量表中给USB两个中断,我们可以在stm32f10x.h中找到这两个中断: USB_HP_CAN1_TX_IRQn = 19, /*!< USB Device High Priority or CAN1…
STM32 USB-FS-Device development kit Compatible with the STM32F102xx and STM32F103xx series, STM32 L1 Ultra Low Power, STM32 F3 Series USB On-The-Go host and device library Compatible with the STM32F105x, STM32F107x devices in FS USB modes Compatible…
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 在上一篇中,我结合Netgear Wndr3700讲解了如何对Openwrt进行必要的配置.接下来,我们就想要在Openwrt上安装必要的软件了.可是这时候新的问题又来了:当安装一些软件之后,存储空间不足了.这时候该怎么办呢?以4M的Flash为例,当大家讲Openwrt固件刷到自己的路由器后,大家会发现剩余的空间往往只剩下不到2M.当我们需要安…
目的 完成一个CDC + MSC的复合USB设备 可以方便在CDC,MSC,复合设备三者间切换 可移植性强 预备知识 cube中USB只有两个入口. main函数中的MX_USB_DEVICE_Init函数. /* init function */ void MX_USB_DEVICE_Init(void) { /* Init Device Library,Add Supported Class and Start the library*/ USBD_Init(&hUsbDeviceFS, &a…
.\usb\USB\usb_pwr.h(54): error:  #20: identifier "bool" is undefinedusb\USB\usb_pwr.h(54): error:  #20: identifier "bool" is undefinedusb-driver\STM32_USB-FS-Device_DriverV3.1.1\src\usb_core.c(511): error:  #20: identifier "TRUE&q…
USB 时钟可以一直使能. 如果CAN时钟没有使能,RAM 能被软件读写.(CANBus 不能发送和接受Message) 如果CAN时钟使能,RAM不能软件被写. CANBus Core 控制此RAM区域.(CANBus 可以发送和接受Message) CANBus 占用了 256 字节(地址范围 512 字节). 开始区域是Filters[14] = (F0R0.F0R1), (F1R0.F1R1),  ... (F13R0.F13R1). 紧接着是 Rx0 FiFo[0], Tx0, Tx1…
OTG_FS general core configuration register (OTG_FS_GCCFG) Bit 21 NOVBUSSENS: VBUS sensing disable option When this bit is set, VBUS is considered internally to be always at VBUS valid level (5 V). This option removes the need for a dedicated VBUS pad…
查了一整天的资料,自己把不懂的全部试了一遍 一下是程序以及注释 /* USB设备描述符*/ const uint8_t CustomHID_DeviceDescriptor[CUSTOMHID_SIZ_DEVICE_DESC] = { 0x12, /*bLength 描述符的长度*/ USB_DEVICE_DESCRIPTOR_TYPE, /*bDescriptorType 描述符的类型(设备描述符为0x01)*/ 0x00, /*bcdUSB USB协议的版本*/ 0x02, 0x00, /*…
相信很多人在做USB转串口时出现过串口驱动安装不成功,出现黄色感叹号问题, 出现这种问题一般是驱动安装不成功造成的. 这里我就这个问题总结几个简单的方法. 方法1: 插上USB,利用驱动人生安装驱动. 方法2: 先插上USB,去到设备管理器,把驱动卸载, 然后再把USB拔掉,再插上,让电脑自动重新安装驱动,反复几次就可以了. 方法3: 有一种可能是STM32CubeMX分配的堆空间太小造成的,这里改变其大小即可,如下: 方法4: 还有一种原因是STM32F407的VBUS检测功能默认是开启,把该…
*MOS0101000000# 鼠标左键按下 *MOS0102000000# 鼠标右键按下 *MOS0103000000# 鼠标中键按下 *MOS0100000000# 鼠标抬起 *MOS01000a0000# 鼠标向+X移动0x0a *MOS01008a0000# 鼠标向-X移动0x0a补数 *MOS0100000a00# 鼠标向+Y移动0x0a *MOS0100008a00# 鼠标向-Y移动0x0a补数 *MOS010000000a# 鼠标向上滚动0x0a *MOS010000008a# 鼠…
U盘是我们最常使用的一种USB设备,本文继续使用DOSUSB做驱动,试图以读取扇区的方式读取你的U盘.本文可能涉及的协议可能会比较多. 一.了解你的U盘    首先我们用上一篇文章介绍的程序usbview.exe去看一下你的U盘,我在本文中用于测试的U盘情况如下: Device Descriptor: (设备描述符) USB Address: Length: Descriptor Type: USB Specification nr.: 0x0110 Calss Code: Class code…
个时候我们需要区分系统磁盘中,哪些是U盘,这样我们在访问的时候可以区别对待.具体方法如下: 1,调用GetLogicalDrives()返回系统盘符标记位 API GetLogicalDrives()将返回一个DWORD类型的标记值,将其转换成二进制之后,为1的位标识对应的盘符在系统中存在.比如返回值为:11100,则表示盘符C:D:E:在系统中存在,因为最低位对应盘符A. 2,调用GetDriveType()返回磁盘属性 如果该API返回DRIVE_REMOVABLE,则认为该盘符对应的设备是…
/********************************************************************* * mdev USB disk auto mount demo * 说明: * 之前有分析过mdev,这次富林写了一个demo,跟一下,不过呢,在看过之后 * 觉得,需要优化,后面提供了一种兼容eMMC.SD.U盘.SATA自动挂载的方式, * 在功能上可以进步的进行优化,其中的eMMC.SD卡功能需要加强区分,这份脚本 * 中没有进一步识别区分,这份参考…
史上最全USB HID开发资料 史上最全USB HID开发资料,悉心整理一个月,亲自测试. 涉及STM32 C51 8051F例子都有源码,VC上位机例子以及源码,USB协议,HID协议,USB抓包工具,开发文档,开发过程文档. 有了这个资料包,你再说开发不了USB HID,打死我都不信!好资料当然一分都不能少!  内容截图:   内容简介:  STM32_USB_Demo例子:USB虚拟串口.HID.游戏手柄.USB音频传输等demo源码. STM32_USB_HID_PC_demo:USB…
catalogue . 引言 . Device Class Definition for Human Interface Devices (HID) . USB HID Report Descriptors . arduino USB Keyboard definition . USB Host Shield for Arduino分类 . USB Host Shield for Arduino datasheet . USB Host Library Rev.2.0 . USB Keyboar…
买了个号称超强性价比的游戏本- 机械革命, i7+ssd+hd+4G RAM+ GTX850M, 很直接, 直接出厂就一个DOS系统,回来要自己装机. 好吧, 先下了个大白菜软件,用来刻录ISO系统到USB盘上, 为啥用USB呢? 其实我手头好几个光盘, 但这机子没有光驱... 所以,这就是悲剧的开始. usb引导进入win7安装界面,选了自定义安装后, 提示“缺少所需的cd/dvd驱动器设备驱动程序”, 找了半天问题, 又换了个ISO重做了USB的启动盘,无果. 后来网上狂搜,发现可能是USB…
导读 很多安全专家偏好像 VeraCrypt 这类能够用来加密闪存盘的开源软件,是因为可以获取到它的源代码.要是你需要在 Windows 系统,苹果的 OS X 系统或者 Linux 系统上加密以及访问文件,开源软件 VeraCrypt 提供绝佳的选择. 很多安全专家偏好像 VeraCrypt 这类能够用来加密闪存盘的开源软件,是因为可以获取到它的源代码.保护 USB 闪存盘里的数据,加密是一个聪明的方法,正如我们在使用 Microsoft 的 BitLocker 加密闪存盘 一文中提到的.但是…
把文件通过U盘拷贝到linux系统下插好U盘后,查看磁盘情况fdisk -l正常情况下有 Disk /dev/sda:2045 MB,2045247488 bytes47 heads,46 sectors/track,1847 cylindersUnits = cylinders of 2162 * 512 = 1106944 bytes Device Boot   Start       End       Blocks      Id    System/dev/sda1         1…
1. 使用的制作工具 Ø 下载需要制作启动盘的linux的iso文件 Ø 制作启动盘的软件linux usb creater Ø U盘(大小差不多需要4G的空间) 软件可以的下载的地址:http://www.linuxliveusb.com/ 下载的iso文件: 可以在centos的官网上进行下载:http://vault.centos.org/ 2. 制作启动盘 选择的步骤如上,首先选择U盘,然后选择安装源,然后模式选择可以不选,再进行步骤四,然后进行安装,如下图所示: 3. 使用 a. 插上…
u8 nandflash_write_buffer[NAND_SERECT_FULL_SIZE]; static int currentBlock = -1; static int currentPage = -1; //带缓冲的nand读取,不支持跨扇区 void NAND_Read_Addr_Mal(u32 addr,u8* buffer,u32 length) { u32 i = 0; u32 readBlock = ((addr/NAND_SERECT_SIZE)/NAND_PAGE_N…