Hallo,
ich habe mit CubeMx einen Code für den STM32f103 erzeugt, ich habe bei
middleware "Virtual comport" ausgewählt. Wenn die Funktion
"CDC_Transmit_FS"
verlassen wird, springt der µC in den Hardfault_Handler.
Ich habe schon gegoogelt:
-im Startup code Heap_Size auf 0x00000800 geändert
-die Funktion kontrolliert
1 | uint8_t CDC_Transmit_FS(uint8_t* Buf, uint16_t Len)
|
2 | {
|
3 | uint8_t result = USBD_OK;
|
4 | /* USER CODE BEGIN 7 */
|
5 |
|
6 | USBD_CDC_SetTxBuffer(hUsbDevice_0, Buf, Len);
|
7 | result = USBD_CDC_TransmitPacket(hUsbDevice_0);
|
8 | /* USER CODE END 7 */
|
9 | return result;
|
10 | }
|
Im main Programm habe ich nichts verändert. Nach einer verzögerung wird
die Funktion wie folgt aufgerufen:
uint8_t buffer_x[125];
CDC_Transmit_FS(buffer_x,4);
Verwendet wird:
stm32f103c8t6 minimum system board, Keil EDU, Jlink EDU.
Habe auch schon einen anderen µC versucht.
Hatte jemand schon so ein Problem?