Keil移植stm32的usb及usb+massStorage步骤

阅读: 评论:0

              Keil移植stm32的usb及usb massStorage步骤
1. 将STM32的usb的库文件拷贝到Src\Libraries下
并在工程添加STM32_USB-FS-Device_Driver全部源文件;
霹雳鞭在工程属性c++选项 include Path 添加STM32_USB-FS-Device_Driver\inc路径抱毯
2. 将本目录的Mass_Storage文件夹拷贝到Src\Usr文件下
        并在工程中添加Mass_Storage\src全部源文件;
在工程属性c++选项 include Path 添加Mass_Storage\inc路径
3. 将下面三个头文件和两个函数加到stm32f10x_it.c中
    #include "usb_lib.h"
pigi#include "usb_istr.h"
#include "usb_pwr.h"
    void USB_HP_CAN1_TX_IRQHandler(void)
{
          CTR_HP();
}
void USB_LP_CAN1_RX0_IRQHandler(void)
{
  USB_Istr();
}
6. 对Mass_Storage\src下的usb_hw_config.c文件下 其中2个函数
void USB_Disconnect_Config(void) [注意:此处的IO口设置为推挽输出]
void USB_Cable_Config (FunctionalState NewState)
重新按照自己硬件改写
Mass_Storage\inc下的usb_hw_config.件三个定义
#define USB_DISCONNECT                    GPIOA 
#define USB_DISCONNECT_PIN                GPIO_Pin_8
#define RCC_APB2Periph_GPIO_DISCONNECT    RCC_APB2Periph_GPIOA
关于usb的使能IO 按照自己硬件改写
7. 在\Src\Usr\Mass_Storage\mass_mal.c文件中
A:添加 存储器驱动文件 相关函数的头文件
家用食品搅拌机B:填写四个函数,均为存储器的相关驱动函数
      在unsigned short int MAL_Init(unsigned char lun)中添加存储器初始化函数
      在unsigned short int MAL_Write(unsigned char lun, unsigned int Memory_Offset, unsigned int *Writebuff, unsigned short int Transfer_Length) 中添加存储器写缓存函数
      在unsigned short int MAL_Read(unsigned char lun, unsigned int Memory_Offset, unsigned int *Readbuff, unsigned short int Transfer_Length) 中添加存储器读缓存函数
        在unsigned short int MAL_GetStatus (unsigned char lun)中添加存储器容量的函数
8. 使用方法:
包含头文件
#include "usb_lib.h"
#include "usb_hw_config.h"
#include "usb_pwr.h"
调用函数:
MassStorageInit();        //IO相关初始化
不用充电的手电筒Set_USBClock();            //USB时钟初始化       
USB_Interrupts_Config();  //USB通信中断配置中轴旋转门
USB_Init();                //USB初始化
9. 
吴青松
2012-3-15

本文发布于:2023-06-06 14:57:51,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/2/128263.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   存储器   添加   工程   文件   食品   手电筒   源文件
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图