Прошивка JDY-08 с HM10 не изменит никаких параметров

У меня есть специальная схема с STM32F030F4P6 в качестве основного контроллера, а HDY-08 прошит прошивкой HM-10 в качестве передатчика Bluetooth LE.

Что я хотел сделать при включении схемы, так это вручную настроить модуль с помощью пользовательских параметров (имя, скорость, режим), а затем перейти к основной части расчета.

Тем не менее, я заметил, что модуль не будет работать после получения любой из AT-команд, хотя он отвечает строками OK+....

Например, я отправляю "AT+NAMEmyname" и получаю "OK+Set:myname", однако имя не меняется вообще и остается HMSoft при сканировании Bluetooth на моем телефоне. На скорости 9600 бод я посылаю "AT+BAUD4" и получаю "OK+Set:4", затем я посылаю "AT+BAUD?" ОСТАЕТСЯ на скорости 9600 бод и получите то же самое: "OK+BAUD4" - модуль продолжает работать на 9600, однако говорит, что это на 115200. Пробовал играть с вытягиванием reset и sys_key вверх и вниз для разных временных интервалов, что приводит к ничего, кроме неработающих AT-команд.

В настоящее время у меня подключен модуль с выводом RESET и SYS_KEY в течение 1200 миллисекунд при запуске, затем он отключен, а затем я продолжаю посылать AT-команды с задержками 250 миллисекунд между сеансами передачи / приема:

HAL_GPIO_WritePin(SYSTEM_KEY_GPIO_Port, SYSTEM_KEY_Pin, 1);
HAL_Delay(1200);
HAL_GPIO_WritePin(SYSTEM_KEY_GPIO_Port, SYSTEM_KEY_Pin, 0);

HAL_UART_Transmit(&huart1, (uint8_t*)setup, 8, 100);
HAL_UART_Receive(&huart1, (uint8_t*)response, 8, 100);

HAL_Delay(250);

HAL_UART_Transmit(&huart1, (uint8_t*)reset, 8, 100);
HAL_UART_Receive(&huart1, (uint8_t*)response2, 8, 100);

HAL_Delay(250);

HAL_UART_Transmit(&huart1, (uint8_t*)check, 8, 100);
HAL_UART_Receive(&huart1, (uint8_t*)response3, 8, 100);

1 ответ

Проблема была решена: я не знаю почему, но после нескольких раз перетаскивания одного и того же кода здесь и там, я получил рабочее решение: RESET Pin 1 SYSTEM_KEY Pin 1 PWR 1

  1. SYSTEM_KEY Пин 0
  2. Задержка 1200 миллис
  3. SYSTEM_KEY, контакт 1
  4. AT + BAUD4 -> OK + Set:4
  5. Задержка 250 миллис
  6. Реинициализируйте UART на STM, теперь со скоростью 115200 бод
  7. AT+BAUD? -> ОК + Получить:4
  8. Работает, потоки данных по мере необходимости.

Спасибо мне за ответ <3

Другие вопросы по тегам