
用的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; } |
stm32H745 M4核不能调试和下载
CUBEMX界面汉化有吗?
STM32会存在单个IO口坏掉的情况吗?
STM32CUBE MX无法安装,每次总是卡在最后一步
STM32部署机器学习算法硬件至少要使用哪个系列的芯片?
用NanoEdge Ai训练多分类后输出概率一直为一样的值,传不同数据永远都是一样的概率
stm32h745 调试问题
STM32G474RET6移相问题
STM32G474使用HRTIME完成两路180度移相问题
我想实现三对移相PWM(占空比为50%)输出,前两对是互补输出,用了TIM1的CH1/CH1N和CH2/CH2N。第三对用了TIM1的CH3和TIM8的CH2,类似于互补输出。需要以TIM1的CH1/CH1N为参考,其余两对怎样实现占空比不变,相移可调呢?另外TIM8的CH1和CH3的PWM需要输出高电平
hardfault的话往往可以从SCB错误状态寄存器看到些提示,比方对齐问题啊、除以0问题、非法访问等等。