|
我在开发板上写了个USB HID键盘的测试程序,功能是从USART1接收到数据后,从USB发送到PC机。代码是基于USB-JoyStickMouse修改的。 现在遇到的问题是,拨动摇杆四个方向键,可以往PC上发送字符。但是接收到串口中断后,往PC机上发送数据失败,用Bus Hound软件监视的话,可以看到USB发过来的是全零的数据。 while (1) { if (bDeviceState == CONFIGURED) { if (JoyState() != 0) { Joystick_Send(JoyState()); //发送一个字符到PC //Delay(100); Joystick_Send(0); //停止发送 //按键发送OK,PC机能收到字符 } } #if 1 if (get_rx_data) { Joystick_Send(LEFT); //发送一个字符到PC //Delay(100); Joystick_Send(0); //停止发送 //如果注释掉这句话,PC机上可以收到数据,相当于一个按键被长按住的效果,不注释掉的话PC上收不到字符 rx_counter = 0; get_rx_data = FALSE; } #endif } 我把代码共享在网盘里(https://pan.baidu.com/s/1sjBXDtb),请大家帮忙看看哪里有问题。谢谢。 |
学习一下![]() ![]() |
![]() ![]() ![]() ![]() ![]() |
在擦除flash时 同时挂起中断 是否会造成卡死以及相关的卡死机制
STM32F401RBT6 USB 大容量存储设备问题
FLASH擦除轮询等待时CPU真的会轮询吗
HAL_I2C_Mem_Read 一直返回 BUSY
STM32F103C8T6 上电后无法通过串口发出数据的问题?
USB OTG 主机枚举问题
STM32F042 在启动文件内跳转至 USB DFU Bootloader
KEILMDK每次都要手动选Reset and Run吗 不然下载到板子上得重启电源才行 求解答
B-L475E-IOT01A 无法枚举为 USB DFU 设备
USBX Audio Class frame done 不触发回调
微信公众号
手机版