h3dn
@h3dn
0
声望
5
楼层
1492
资料浏览
0
粉丝
0
关注
h3dn 发布的帖子
-
RE: 如何用串口传输16进制数
@gaoxianshneg 成功啦
cmd3 = bytearray([0xff,0x09,0x00,0x03,0x00]) uart.write(cmd3)
-
opemv和stm32f103正常串口通信,平台truestdio和tm32cubemx
/* USER CODE BEGIN 1 */ uint8_t len; /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ HAL_Init(); /* USER CODE BEGIN Init */ /* USER CODE END Init */ /* Configure the system clock */ SystemClock_Config(); /* USER CODE BEGIN SysInit */ /* USER CODE END SysInit */ /* Initialize all configured peripherals */ MX_GPIO_Init(); MX_USART1_UART_Init(); /* USER CODE BEGIN 2 */ delay_init(72); //初始化延时函数 /* USER CODE END 2 */ /* Infinite loop */ /* USER CODE BEGIN WHILE */ while (1) { /* USER CODE END WHILE */ if(USART_RX_STA&0x8000) { len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度 printf("\r\n您发送的消息为:\r\n"); HAL_UART_Transmit(&huart1,(uint8_t*)USART_RX_BUF,len,1000); //发送接收到的数据 while(__HAL_UART_GET_FLAG(&huart1,UART_FLAG_TC)!=SET); //等待发送结束 printf("\r\n\r\n");//插入换行 if(USART_RX_BUF[0]==0x30) //openmv发送0 { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5|GPIO_PIN_6, GPIO_PIN_RESET); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET); delay_ms(100); } else if(USART_RX_BUF[0]==0x31) //openmv发送1 { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4|GPIO_PIN_6, GPIO_PIN_RESET); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET); delay_ms(100); } else if(USART_RX_BUF[0]==0x32) //openmv发送2 { HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5|GPIO_PIN_4, GPIO_PIN_RESET); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_SET); delay_ms(100); } USART_RX_STA=0; } delay_ms(10); //HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6); //delay_ms(200); /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */