stm32cubemx hal学习记录:HC06蓝牙

一、配置过程

1、配置RCC、SYS、USART1、时钟84MHz

2、配置USART3,允许中断,9600波特率

二、代码编写

1、usart.c

uint8_t Rxdata;
int a;
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
	if (huart->Instance==USART3)
	{
		HAL_UART_Receive_IT(&huart3,&Rxdata,1);
		if(Rxdata=='A')a=1;
		else if(Rxdata=='E')a=2;
		else if(Rxdata=='G')a=3;
		else if(Rxdata=='C')a=4;
		else
		{
			a=0;
		}				
	}	
}

2、main.c

extern uint8_t Rxdata;

HAL_UART_Receive_IT(&huart3,&Rxdata,1);

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用STM32CubeMX进行蓝牙串口通信配置时,首先需要将HC-05蓝牙模块连接到STM32开发板上。在配置完成后,主从两机重新上电,不需要按按键,进入正常模式,此时HC-05指示灯会快闪。等待几秒钟后,主从两机会自动配对完成,指示灯会以5秒的时间间隔闪烁,表示主从两机连接成功。\[1\] 在STM32CubeMX中,需要对STM32进行相应的配置。HC-05蓝牙模块是主从一体的,两个HC-05之间进行通信时,需要进入AT模式,对HC-05模块进行相应的设置。为了进入AT模式,需要通过TTL转USB模块将HC-05蓝牙模块连接到电脑上。在上电之前,需要一直按住HC-05上的按键,然后上电后松开按键,此时指示灯会慢闪,表示进入AT模式。\[2\] 在主函数循环中,可以使用以下代码进行蓝牙串口通信: ```c uint8_t SendBuffer\[30\] = "hello,world!"; HAL_UART_Transmit(&huart2, (uint8_t *)SendBuffer, sizeof(SendBuffer), HAL_MAX_DELAY); ``` 以上代码将"hello,world!"发送到UART2串口,实现了蓝牙串口通信。\[3\] #### 引用[.reference_title] - *1* *2* *3* [基于STM32CubeMX的HC-05蓝牙主从通讯](https://blog.csdn.net/m0_59551305/article/details/126634445)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值