C 如何使用STM32和连接3个蓝牙模块?
我正在使用STM32F407和3 HC-05蓝牙模块。我试图同时使用1个主设备和2个从设备。我可以把任何奴隶连接到主人。我正在尝试为2个从机实现一个简单的alghoritm。我每隔10秒更改主机连接的设备地址。当我尝试同时连接这两个主机时,我的主机始终处于at模式。它从不快速闪烁(当它快速闪烁时,表示它未处于AT模式并正在搜索设备)。我的奴隶也发送数据。大师有什么问题吗?C 如何使用STM32和连接3个蓝牙模块?,c,bluetooth,embedded,stm32,hc-05,C,Bluetooth,Embedded,Stm32,Hc 05,我正在使用STM32F407和3 HC-05蓝牙模块。我试图同时使用1个主设备和2个从设备。我可以把任何奴隶连接到主人。我正在尝试为2个从机实现一个简单的alghoritm。我每隔10秒更改主机连接的设备地址。当我尝试同时连接这两个主机时,我的主机始终处于at模式。它从不快速闪烁(当它快速闪烁时,表示它未处于AT模式并正在搜索设备)。我的奴隶也发送数据。大师有什么问题吗? 这是 从机配置: HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET);//
这是 从机配置:
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET);// reset hc-05
delay_ms(1000);
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_SET);// set high to 'key' pin to enter AT
delay_ms(1000);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);// entered AT mode
delay_ms(3000);
HAL_UART_Transmit(&huart1,(uint8_t*)"AT+ROLE=0\r\n",sizeof("AT+ROLE=0\r\n")-1,100);
delay_ms(1000);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);//exit AT mode
忘记延迟哪些延迟?50毫秒?任何阻塞延迟==错误代码好的,我会更改。但是它们不是问题的原因,是吗?“any-blocking delay==bad code”没有争论,而讽刺语句==bad statement忘记了延迟哪个延迟?50毫秒?任何阻塞延迟==错误代码好的,我会更改。但它们不是问题的原因,是吗?“any-blocking delay==坏代码”没有争论,而讽刺语句==坏语句
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_1, GPIO_PIN_SET);// reset hc-05
delay_ms(1000);
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_7,GPIO_PIN_SET);// set high to 'key' pin to enter AT
delay_ms(1000);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);// entered AT mode
delay_ms(3000);
HAL_UART_Transmit(&huart1,(uint8_t*)"AT+ROLE=0\r\n",sizeof("AT+ROLE=0\r\n")-1,100);
delay_ms(1000);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_1,GPIO_PIN_RESET);//exit AT mode