|
用的stm32cubemx 版本是 6.4.0, 配置了stm32h743的USB host ,想往外发数据,所以调用了 USBH_CDC_Transmit(),但是在这个函数里运行到第一个if下一步直接就跳到 HardFault_Handler了,不知道为什么 USBH_StatusTypeDef USBH_CDC_Transmit(USBH_HandleTypeDef *phost, uint8_t *pbuff, uint32_t length) { USBH_StatusTypeDef Status = USBH_BUSY; CDC_HandleTypeDef *CDC_Handle = (CDC_HandleTypeDef *) phost->pActiveClass->pData; if ((CDC_Handle->state == CDC_IDLE_STATE) || (CDC_Handle->state == CDC_TRANSFER_DATA)) { CDC_Handle->pTxData = pbuff; CDC_Handle->TxDataLength = length; CDC_Handle->state = CDC_TRANSFER_DATA; CDC_Handle->data_tx_state = CDC_SEND_DATA; Status = USBH_OK; #if (USBH_USE_OS == 1U) phost->os_msg = (uint32_t)USBH_CLASS_EVENT; #if (osCMSIS < 0x20000U) (void)osMessagePut(phost->os_event, phost->os_msg, 0U); #else (void)osMessageQueuePut(phost->os_event, &phost->os_msg, 0U, NULL); #endif #endif } return Status; } |
STM32CubeMX配置STM32F103C8T6 RTC分频器问题
STM32H747XIH6 CM7正常运行 CM4不能正运行
【经验分享】STM32H7 DMA+UART不定长接收实战:解决缓存溢出与数据错位问题
STM32H725的LSE不起振
STM32H747XI CM7正常运行 CM4不运行
stm32h7s78-dk烧录
STM32Programmer能识别芯片,Keil无法识别
ST的MCU开发
STM32H7进入BOOTLoader模式
ST的MCU开发
微信公众号
手机版
hardfault的话往往可以从SCB错误状态寄存器看到些提示,比方对齐问题啊、除以0问题、非法访问等等。