首页 > 代码库 > 利用STM32CubeMX来生成USB_HID_Mouse工程
利用STM32CubeMX来生成USB_HID_Mouse工程
硬件开发板:STM32F103C8
软件平台
好了现在开始利用STM32CubeMX来生成我们的工程
1、新建工程
选择MCU的型号
选择选择时钟
开启usb的模块
选择USB的类
配置时钟树(主要是设置usb的48Mhz)
设置工程路径和编译环境
打开工程
我们现在在main.c进行修改
/* USER CODE BEGIN Includes */ #include "usbd_hid.h" /* USER CODE END Includes */
/* USER CODE BEGIN 1 */ // HID Mouse struct mouseHID_t { uint8_t buttons; int8_t x; int8_t y; int8_t wheel; }; struct mouseHID_t mouseHID; mouseHID.buttons = 0; mouseHID.x = 10; mouseHID.y = 0; mouseHID.wheel = 0; /* USER CODE END 1 */
/* USER CODE BEGIN 3 */
// Send HID report
mouseHID.x = 10;
USBD_HID_SendReport(&hUsbDeviceFS, (uint8_t*)&mouseHID, sizeof(struct mouseHID_t));
HAL_Delay(1000);
}
/* USER CODE END 3 */
编译下载后复位
在电脑设备管理中可以看到一个新的USB输入设备(到这部时候可以看到我们的STM32的USB枚举成功)
可以看到我们鼠标光标移动
如果出现
***JLink Error: Bad JTAG communication: Write to IR: Expected 0x1, got 0xF (TAP Command : 10) @ Off 0x5.
将在HAL_MspInit()代码中 __HAL_AFIO_REMAP_SWJ_DISABLE();给注释掉
利用STM32CubeMX来生成USB_HID_Mouse工程
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。