0
MCUプログラミングの初心者です。私は、HALを使用してUARTループバック(ミラー)をテストしたいと思います。 IARプロジェクトは、CubeMXによってSTM32L071RZT6用に生成されました。このコードは、メインの永遠のループである:STM32L0にHALを使用したUARTループバックテスト
HAL_UART_Transmit(&huart2, str1, 5, 1000); HAL_UART_Receive(&huart2, str2, 5, 1000);
私はSTR2(ヌルで終了する文字列)に充填のみ第一の要素を取得します。どうすれば修正できますか?
/* USART2 init function */
static void MX_USART2_UART_Init(void)
{
huart2.Instance = USART2;
huart2.Init.BaudRate = 115200;
huart2.Init.WordLength = UART_WORDLENGTH_8B;
huart2.Init.StopBits = UART_STOPBITS_1;
huart2.Init.Parity = UART_PARITY_NONE;
huart2.Init.Mode = UART_MODE_TX_RX;
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart2.Init.OverSampling = UART_OVERSAMPLING_16;
huart2.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
huart2.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
if (HAL_UART_Init(&huart2) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}
}
完全な例は次のとおりです。https://stackoverflow.com/a/43411114/3820025 –