HLK-RM04: система AT-команд |
![]() |
Добавил(а) microsin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Модуль HLK-RM04 может конфигурироваться не только через WEB-интерфейс, но и с помощью текстовых AT-команд. Такой режим принцип управления позволяет конфигурировать модуль с помощью микроконтроллера через интерфейс TTL UART. Чтобы войти в режим AT-команд, нужно на вывод ES/RST модуля (ножка 10) подать импульс лог. 0 длительностью больше 0.1 секунды и меньше 5 секунд. Есть и другие способы входа в режим AT-команд, подробнее см. [1]. По умолчанию UART модуля HLK-RM04 настроен на скорость 115200 бод, 8 бит данных, 1 стоп-бит, без контроля четности. Обмен осуществляется через 2 сигнальных вывода UART_RX (ножка 20) и UART_TX (ножка 21). [AT-команды модуля] Почти все команды, приведенные ниже в таблице, могут использоваться в двух формах: для установки параметра, и для запроса значения параметра. Установка параметра. Для установки параметра AT-команда должна быть введена так: AT+команда=значение Если команда введена правильно, то будет изменено значение параметра. Запрос параметра. Для того, чтобы узнать значение параметра, AT команда должна быть введена со знаком вопроса ? после символа =, например: AT+команда=? После этого модуль выдаст значение параметра. Ниже в таблице приведены доступные команды и их краткое описание.
[Режим работы модуля] Установка режима работы модуля (физическая среда передачи данных): at+netmode=Режим Запрос информации о текущем режиме: at+netmode=? Могут быть установлены следующие режимы:
Подробнее про режимы см. статью [1], раздел "Режимы работы модуля HLK-RM04 как моста для передачи данных". Команда управляет прозрачным режимом модуля. at+out_trans=Значение Фактически этой командой не может быть произведен выход из прозрачного режима, если команда посылается через UART1, когда модуль работает в прозрачном режиме.
Перезапуск служб, которые формируют мост для передачи данных между UART1 и сетевыми интерфейсами. at+reconn=Значение
[Конфигурирование WiFi] Устанавливает используемый канал Wi-Fi. По умолчанию установлен канал 0, может быть установлен любой из каналов от 0 до 14. Пример установки канала 1: at+Channel=1 Запрос текущего канала: at+Channel=? Команда позволяет узнать IP-адрес на интерфейсе WAN. Синтаксис: at+net_wanip=? Команда позволяет узнать состояние соединения WiFi. Синтаксис: at+wifi_ConState=? Команда позволяет установить и узнать конфигурацию соединения WiFi. Синтаксис установки конфигурации: at+wifi_conf=ssid,encrypt_type,password Здесь: ssid идентификатор точки доступа WiFi Возможные варианты шифрования трафика:
Синтаксис запроса конфигурации: at+wifi_conf=? Сканирование для получения списка доступных сетей WiFi. Синтаксис: at+wifi_Scan=? [Настройка клиента DHCP] Команда разрешает / запрещает работу клиента DHCP на модуле. Синтаксис: at+dhcpc=Значение
[Настройка сервера DHCP] Команда разрешает / запрещает работу сервера DHCP на модуле. Синтаксис: at+dhcpd=Значение
Настройка адресов DNS, которые сервер DHCP предоставляет клиентам. Синтаксис: at+dhcpd_dns=dns1,dns2 Здесь dns1 и dns2 - первичный и вторичный адреса серверов DNS. Адреса вводятся в обычном формате A.B.C.D, без кавычек и пробелов. Синтаксис запроса параметра: at+dhcpd_dns=? Настройка диапазона IP-адресов, которые выдаются клиентам DHCP. Синтаксис: at+dhcpd_ip=ip_start,ip_end,mask,gateway Здесь: ip_start начало диапазона адресов Запрос параметров: at+dhcpd_ip=? Устанавливает время аренды IP-адреса клиентом DHCP в секундах. По умолчанию установлено время аренды 86400 секунд. Синтаксис (пример установки времени 50000 секунд): at+dhcpd_time=50000 Запрос параметра: at+dhcpd_time=? [Настройка сетевого интерфейса] Команда позволяет получить значение MAC-адреса. Синтаксис: at+Get_MAC=? Подтверждение правильности сетевых настроек. Если настройки подтверждены, они будут сохранены соответствующей командой. Синтаксис: at+net_commit=Значение
Настройка параметров сетевого адреса (статический адрес). Эта команда не действует, когда включена функция клиента DHCP. Синтаксис: at+net_ip=ip,mask,gateway Здесь: ip IP-адрес Запрос параметров: at+net_ip=? Настройка параметра адресов DNS. Эта команда не действует, когда включена функция клиента DHCP. Синтаксис: at+net_dns=dns1,dns2 Здесь dns1 и dns2 - первичный и вторичный адреса серверов DNS. Адреса вводятся в обычном формате A.B.C.D, без кавычек и пробелов. Запрос параметров: at+net_dns=? [Настройка сетевого подключения] Устанавливает локальный порт TCP/UDP. Синтаксис: at+CLport=номер_локального_порта Настраивается режим работы сетевых соединений. Синтаксис: at+mode=Режим
Настройка IP-адреса или доменного имени для внешнего сервера. Синтаксис: at+remoteip=remoteip Здесь адрес remoteip вводится в обычном формате A.B.C.D, либо в обычном формате доменного имени без кавычек и пробелов. Запрос параметра: at+remoteip=? Настраивается протокол сетевых соединений. Синтаксис: at+remotepro=Протокол
Установка порта подключения для внешнего сервера. Синтаксис: at+remoteport=номер_порта Опция задает автоматически восстанавливать потерянное соединение TCP (когда модуль работает как клиент TCP). Синтаксис: at+tcp_auto=значение Здесь значение 0 отключает функцию восстановления соединения, значение 1 включает. Состояние обнаружения подключения клиента. Синтаксис: at+tcp_client_check=Значение
Устанавливает таймаут сервера в секундах. Если сетевое соединение с клиентом не использовалось в течение указанного времени, сервер разорвет соединение. По умолчанию установлено 0, что означает, что сервер никогда не разорвет соединение. Синтаксис: at+timeout=timeout [Настройка последовательного порта UART1] Команда разрешает / запрещает выход из прозрачного режима передачи с помощью специальной последовательности символов, поступающей на вход UART1. Подробнее см. [1], раздел "RS-232 (UART1)". Синтаксис: at+escape=Значение
Также имеется еще одна упрощенная последовательность символов, включаемая командой at+escape2=1. Подробнее см. статью [1]. Команда разрешает / запрещает выход из прозрачного режима передачи с помощью упрощенной последовательности символов, поступающей на вход UART1. Подробнее см. [1], раздел "RS-232 (UART1)". Синтаксис: at+escape2=Значение
Команда управляет сигналом аппаратного управления потоком RTS - разрешена его работа или нет. Также этот сигнал используется для управления приемопередатчиком RS485. Синтаксис: at+RTS=Значение
Опрос состояния последовательного соединения. Синтаксис: at+S2N_Stat=? Настройка последовательного интерфейса UART1. Синтаксис: at+uart=baud,data,parity,stop Здесь: baud скорость в бодах(число в диапазоне 1200..500000), по умолчанию 115200 Запрос параметров: at+uart=? Задает размер пакета последовательного интерфейса в битах, по умолчанию 64. Синтаксис: at+uartpacklen=длина_фрейма_в_битах Задает таймаут последовательного интерфейса в миллисекундах (длительность фрейма), по умолчанию 10. Синтаксис: at+uartpacktimeout=длительность_фрейма_мс Команда управляет работой программного управления потоком XON/XOFF - разрешена эта функция или или нет. Синтаксис: at+XON_XOFF=Значение
[Настройка последовательного порта UART2] Набор команд для UART2 такой же, как и для UART1, только к команде добавляется префикс C2. Настраивается режим работы сетевых соединений. Синтаксис: at+C2_mode=Режим
Настройка IP-адреса или доменного имени для внешнего сервера. Синтаксис: at+C2_remoteip=remoteip Здесь адрес remoteip вводится в обычном формате A.B.C.D, либо в обычном формате доменного имени без кавычек и пробелов. Запрос параметра: at+C2_remoteip=? Установка порта подключения для внешнего сервера. Синтаксис: at+C2_remoteport=номер_порта Настраивается протокол сетевых соединений. Синтаксис: at+C2_remotepro=Протокол
Опция задает автоматически восстанавливать потерянное соединение TCP (когда модуль работает как клиент TCP). Синтаксис: at+C2_tcp_auto=значение Здесь значение 0 отключает функцию восстановления соединения, значение 1 включает. Состояние обнаружения подключения клиента. Синтаксис: at+С2_tcp_client_check=Значение
Устанавливает таймаут сервера в секундах. Если сетевое соединение с клиентом не использовалось в течение указанного времени, сервер разорвет соединение. По умолчанию установлено 0, что означает, что сервер никогда не разорвет соединение. Синтаксис: at+С2_timeout=timeout Настройка последовательного интерфейса UART2. Синтаксис: at+C2_uart=baud,data,parity,stop Здесь: baud скорость в бодах(число в диапазоне 1200..500000), по умолчанию 115200 Запрос параметров: at+C2_uart=? Задает размер пакета последовательного интерфейса в битах, по умолчанию 64. Синтаксис: at+С2_uartpacklen=длина_фрейма_в_битах Задает таймаут последовательного интерфейса в миллисекундах (длительность фрейма), по умолчанию 10. Синтаксис: at+С2_uartpacktimeout=длительность_фрейма_мс [Другие команды] Команда восстанавливает настройки модуля по умолчанию (заводские настройки). Синтаксис: at+default=1 Команда немедленно перезагружает модуль. Синтаксис: at+reboot=1 Команда принимает или отменяет изменения конфигурации и перезапускает службы. Синтаксис: at+save=Значение
Команда приостанавливает работу модуля. Синтаксис: at+suspend=Значение
Показывает версию модуля. Синтаксис: at+ver=? err escap excxxx gpio_mode gpio_read gpio_save gpio_write pm settings settings_done status suspend uart uartpackintertimeout XON_XOFF [Значения по умолчанию для AT-команд]
[Ссылки] 1. HLK-RM04. |