本帖最后由 WAMCNCN 于 2017-4-29 23:24 编辑
USB OTG HS作为设备时用做虚拟串口通讯,使用STMCubeMX配置比较容易。
其它默认导出工程。
应用层user多了几个文件。设备文件,Cdc类,配置文件,和设备描述符文件。cdc类文件中包括接收、发送、控制函数。
可以直接调用发送函数通过虚拟串口向主机发送数据。
uint8_t CDC_Transmit_HS(uint8_t* Buf, uint16_t Len)
{
uint8_t result = USBD_OK;
/* USER CODE BEGIN 12 */
USBD_CDC_HandleTypeDef *hcdc = (USBD_CDC_HandleTypeDef*)hUsbDeviceHS.pClassData;
if (hcdc->TxState != 0){
return USBD_BUSY;
}
USBD_CDC_SetTxBuffer(&hUsbDeviceHS, Buf, Len);
result = USBD_CDC_TransmitPacket(&hUsbDeviceHS);
/* USER CODE END 12 */
return result;
}
在主函数里设置发送的数据
uint8_t FatfsBuff[]="21ic社区和STM32F722E DISC开发板试用...\r\n";
在while循环里没各一秒发送一次
编译下载,连接HS USB接口道电脑上,没有虚拟串口驱动会自动搜索安装。
使用测速软件不靠谱,相差太多了。
|