stm32最小系统板hal库实现蓝牙遥控循迹避障小车(2)

一、连线

蓝牙stm32
VCC5v
GNDGND
TXPA10
RXPA9

二、cubemx配置,用到了USART1,记得开启中断,以及改波特率9600

三、 代码

        定义一个变量,用来存储接收到的数据。

uint8_t receivedata;

         写回调函数,注意回调函数里一定要加入接收中断函数,否则只能接受一次数据。

        在回调函数里我们加入上一次编写的小车运行代码,通过蓝牙发送数据来控制。

/* USER CODE BEGIN 0 */

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
			
	HAL_UART_Transmit_IT(&huart1,&receivedata,1);
	if(receivedata == 1){
		Go_Ahead();
	}else if(receivedata == 2){
		Car_Stop();
	}
	HAL_UART_Receive_IT(&huart1,&receivedata,1);

	}
/* USER CODE END 0 */

        main函数里只需要写一个接收中断函数就好啦,放在开启定时器PWM通道的下面。

  /* USER CODE BEGIN 2 */
	HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_1);
	HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_2);
		
	HAL_UART_Receive_IT(&huart1,&receivedata,1);

  /* USER CODE END 2 */

四、运行效果

        接收到我们发出的数据后,蓝牙也会发送同样的数据回来,并且执行相应程序。

波特律动串口助手

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值