标题: 用STM32CubeMX编写的串口通讯程序(可收发) [打印本页]

作者: 磊雷雷    时间: 2018-9-13 20:19
标题: 用STM32CubeMX编写的串口通讯程序(可收发)
  MX_GPIO_Init();
  MX_DMA_Init();

  /* Initialize interrupts */
  MX_NVIC_Init();
  MX_USART1_UART_Init();
MX_USART2_UART_Init();
  /* USER CODE BEGIN 2 */
        HAL_UART_Receive_DMA(&huart1, UsartType.RX_pData, RX_LEN);
        __HAL_UART_ENABLE_IT(&huart1, UART_IT_IDLE);
        
        HAL_UART_Receive_DMA(&huart2, UsartType.RX_pData, RX_LEN);
        __HAL_UART_ENABLE_IT(&huart2, UART_IT_IDLE);

  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
//        HAL_UART_Transmit_IT(&huart1,"strat!\r\n",9);
  while (1)
  {

  /* USER CODE END WHILE */
        int a[10];
        int i = 0,j,k;
        j = sizeof (&a);
        k = sizeof (&a[0]);

        printf("j = %d\n",j);
        printf("k = %d\n",k);
        printf("\n");
  /* USER CODE BEGIN 3 */
                if(UsartType.RX_flag)            // Receive flag
                {  
                        UsartType.RX_flag=0;        // clean flag
                        HAL_UART_Transmit(&huart1, UsartType.RX_pData, UsartType.RX_Size, 0xFFFF);
                }
                switch(UsartType.RX_pData[0])
                {
                        //全亮
                        case '1':
//                                        HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_0);
                                HAL_GPIO_WritePin(GPIOB, LED0_Pin|LED1_Pin|LED2_Pin, GPIO_PIN_RESET);
                                break;
                        case '2':
                                HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_1);
                                break;
                        case '3':
                                HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
                                break;
                }
                //UsartType.RX_pData[RX_LEN] = '\0';
                        HAL_UART_Transmit_IT(&huart1,"strat!\r\n",9);
               
//                if(UsartType.RX_flag)            // Receive flag
//                {  
//                        UsartType.RX_flag=0;        // clean flag
//                        HAL_UART_Transmit(&huart2, UsartType.RX_pData, UsartType.RX_Size, 0xFFFF);
//                }
//                if( UsartType.RX_pData[0] == '1')
//                {
//                        HAL_UART_Transmit_IT(&huart2,"strat!\r\n",9);        
//                        UsartType.RX_pData[RX_LEN] = '\0';
//                }
                HAL_Delay(1000);

TWO_USART.7z

2.89 MB, 下载次数: 43, 下载积分: 黑币 -5

cube编写的串口通讯


作者: 2765715    时间: 2018-9-14 09:39
这个可以在STM32F103的单片机上使用吗?
作者: 磊雷雷    时间: 2018-10-19 02:32
2765715 发表于 2018-9-14 09:39
这个可以在STM32F103的单片机上使用吗?

可以,这个就是103的
作者: tyu123582    时间: 2018-10-23 13:30
学习下
作者: 磊雷雷    时间: 2019-1-26 13:31
2765715 发表于 2018-9-14 09:39
这个可以在STM32F103的单片机上使用吗?

完全可以
作者: 磊雷雷    时间: 2020-1-15 22:08
2765715 发表于 2018-9-14 09:39
这个可以在STM32F103的单片机上使用吗?

就是F103的源码
作者: 2362765482    时间: 2020-6-12 09:03
可以软仿真吗在keil5




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1