STM32 使用CUBEMX配置 生成DMA+串口發送測試代碼 精簡

一直沒有使用過DMA,在網上查了一些關於DMA的教程和例子,內容要麼偏多,要麼有關鍵條件的缺失,要麼摻雜有其他的內容干擾。流程走通之後,回頭來看其實很簡單。在此記錄一下詳細的必要的完整流程:

第一步:配置CubeMX:

第二步:編寫測試代碼

int main(void)
{
  /* USER CODE BEGIN 1 */
	unsigned char Buffer[10] = {0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3A};
  /* USER CODE END 1 */
  /* USER CODE BEGIN WHILE */
	while (1)
	{
  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */
		if(HAL_DMA_GetState(&hdma_usart1_tx) != HAL_DMA_STATE_BUSY)
		{
			HAL_UART_Transmit_DMA(&huart1,Buffer,10);
		}
  }  

第三步:編譯,鏈接,下載測試

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章