1、使用STM32cube配置好USART
2、用到的收发函数
HAL_UART_Receive_IT(&huart1,&Re_date,1);
HAL_UART_Transmit(&huart1,&Re_date_try[i],1,1000);
3、基本思想就是先定义一个变量,把接收到的数给这个变量Re_date,然后把这个变量再放到数组Re_array[i]里,利用查询的方式发送
下面说一下我的详细步步骤
步骤1:
在pubilc.c中声明(pubilc.c和pubilc.h是我自己的头文件和源文件以后有时间我会写一篇建工程的)
uint8_t Re_date=0;//要接受的数据
uint8_t Re_count=0;//用来计数
uint8_t Re_array[10];//存放数据的数组
在public.h中声明 extern uint8_t Re_date;
步骤2:
在public.c中编写CALLBACK函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if(Re_count<10)//10代表的是容量
{
Re_array[Re_count]=Re_date;//把数据依次存放到数组中
Re_count++;
}
else
{
Re_count=0;//超过10了就为0不再存放
}
HAL_UART_Receive_IT(&huart1,&Re_date,1);
}
步骤3:
接着再public.c中写发送函数
void BSP_USART_Tx_date(void)
{
uint8_t i=0;
if(Re_count>