Views: 5326
AT команды связанные с функцией TCP/IP
В этом разделе описаны команды которые позволяют устанавливать соединения между серверами и клиентами в сети. Приведено описание команд и примеры их выполнения.
| Функции TCP/IP | ||
| Команда | Описание | |
| 1 | AT+ CIPSTATUS | Получить статус подключения. |
| 2 | AT+ CIPDOMAIN | Функция DNS |
| 3 | AT+CIPSTART | Устанавливает TCP-соединение, передачу UDP или соединение SSL |
| 4 | AT+CIPSSLSIZE | Устанавливает размер буфера SSL |
| 5 | AT+CIPSEND | Отправляет данные |
| 6 | AT+CIPSENDEX | Отправляет данные |
| 7 | AT+CIPSENDBUF | Записывает данные в TCP-send-buffe |
| 8 | AT+CIPBUFRESET | Сбрасывает счетчик количества идентификаторов сегмента |
| 9 | AT+CIPBUFSTATUS | Проверяет состояние TCP-send-buffer |
| 10 | AT+CIPCHECKSEQ | Проверка успешной отправки конкретного сегмента. |
| 11 | AT+CIPCLOSE | Закрывает соединение TCP/UDP/SSL |
| 12 | AT+CIFSR | Получить локальный IP-адрес |
| 13 | AT+CIPMUX | Включение/выключение режима нескольких подключений (Multiple connections) |
| 14 | AT+CIPSERVER | Удаляет/создает TCP-сервер |
| 15 | AT+CIPSERVERMAXCONN | Установить максимальное количество соединении, разрешенное сервером |
| 16 | AT+CIPMODE | Настраивает режим передачи |
| 17 | AT+SAVETRANSLINK | Сохраняет прозрачную линию передачи во флэш-памяти |
| 18 | AT+CIPSTO | Устанавливает таймаут, когда ESP8266 работает как сервер TCP |
| 19 | AT+PING | Ping-пакеты |
| 20 | AT+CIUPDATE | Обновляет программное обеспечение через сеть |
| 21 | AT+CIPDINFO | Показывает удаленный IP-адрес и удаленный порт с + IPD |
| 22 | +IPD | Прием данных сети (сообщение) |
| 23 | AT+CIPSNTPCFG | Устанавливает конфигурацию SNTP |
| 24 | AT+CIPSNTPTIME | Запросит время SNTP |
| 25 | AT+CIPDNS_CUR | Устанавливает пользовательские DNS-серверы; конфигурация не сохраняется во flash |
| 26 | AT+CIPDNS_DEF | Устанавливает пользовательские DNS-серверы; конфигурация, сохраненная во flash |
Команды
1 AT+ CIPSTATUS Получить статус подключения.
| Получить статус подключения. | |
| Команда | AT+CIPSTATUS |
| Отклик | STATUS:<stat>
+CIPSTATUS:<link ID>,<type>,<remote IP>,<remote port>,<local port>,<tetype> |
| Параметр |
|
| Пример (команда – ответ) соединение с сервером установлено TCP |
AT+CIPSTATUS
STATUS:3 +CIPSTATUS:0,”TCP”,”192.168.4.103″,1112,49305,0 OK |
| Пример (команда – ответ) ESP8266 подключена к AP WIFI CONNECTED WIFI GOT IP |
AT+CIPSTATUS
STATUS:2 OK |
| Пример (команда – ответ) ESP8266 не подключена к AP WIFI DISCONNECT |
AT+CIPSTATUS
STATUS:5 OK |
2 AT+ CIPDOMAIN Функция DNS
| Команда | AT+CIPDOMAIN=<domain name> |
| Отклик | +CIPDOMAIN:<IP address>
OK или DNS Fail ERROR |
| Параметр | <domain name>: имя домена, длина должна быть меньше 64 байт. |
| Пример (команда – ответ) | AT+CWMODE=1
OK AT+CWJAP=”SSID”,”password” WIFI CONNECTED WIFI GOT IP OK AT+CIPDOMAIN=”catcatcat” DNS Fail ERROR AT+CIPDOMAIN=”catcatcat.com” +CIPDOMAIN:146.66.71.254 OK |
3 AT+CIPSTART Устанавливает TCP-соединение, передачу UDP или соединение SSL
| Установить TCP-соединение | |
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPSTART=<type>,<remote IP>,<remote port>[,<TCP keep alive>] |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPSTART=<link ID>,<type>,<remote IP>,<remote port>[,<TCP keep alive>] |
| Отклик | OK или ERROR Если TCP-соединение уже установлено, отклик: ALREADY CONNECTED – //УЖЕ ПОДКЛЮЧЕН |
| Параметр |
Модуль пытается подключиться 3 секунды, потом, если нет соединения, закрывает соединение, независимо от TCP keep-alive |
| Пример (команда – ответ) (Single connection) |
AT+CIPSTART=”TCP”,”iot.espressif.cn”,8000
CONNECT OK |
| Пример (команда – ответ) (Single connection) |
AT+CIPSTART=”TCP”,”192.168.4.103″,1112
CONNECT OK |
| Пример (команда – ответ)(Multiple connections) | AT+CIPMUX=1
OK AT+CIPSTART=4,”TCP”,”192.168.4.103″,1112 4,CONNECT OK |
| Пример (команда – ответ) | AT+CIPSTART=”TCP”,”192.168.4.103″,1112
CONNECT OK AT+CIPSTART=”TCP”,”iot.espressif.cn”,8000 ALREADY CONNECTED |
| Установить UDP соединение | |
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPSTART=<type>,<remote IP>,<remote port>[,(<UDP local port>),(<UDP mode>)] |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPSTART=<link ID>,<type>,<remote IP>,<remote port>[,(<UDP local port>),(<UDP mode>)] |
| Отклик | OK или ERROR Если UDP-соединение уже установлено, отклик: ALREADY CONNECTED – //УЖЕ ПОДКЛЮЧЕН |
| Параметр |
Примечание: Модуль пытается подключиться 3 секунды, потом, если нет соединения, закрывает соединение, независимо от TCP keep-alive |
| Пример (команда – ответ) (Single connection) |
AT+CIPMUX=0
OK AT+CIPSTART=”UDP”,”192.168.4.103″,1112,1002,2 CONNECT OK |
| Пример (команда – ответ)(Multiple connections) | AT+CIPMUX=1
OK AT+CIPSTART=3,”UDP”,”192.168.4.103″,1112,1002,2 3,CONNECT OK |
| Установить SSL-соединение | |
| Команда | AT+CIPSTART=[<link ID>,]<type>,<remote IP>,<remote port>[,<TCP keep alive>] |
| Отклик | OK или ERROR Если TCP-соединение уже установлено, отклик: ALREADY CONNECTED – //УЖЕ ПОДКЛЮЧЕН |
| Параметр |
Модуль пытается подключиться 3 секунды, потом, если нет соединения, закрывает соединение, независимо от TCP keep-alive |
| Пример (команда – ответ) |
AT+CIPSTART=”SSL”,”iot.espressif.cn”,8443 |
4 AT+CIPSSLSIZE Устанавливает размер буфера SSL
| Команда запроса | AT+CIPSSLSIZE=<size> |
| Отклик | OK |
| Параметр | <size>: размер буфера SSL; диапазон значений: [2048, 4096]. |
| Пример (команда – ответ) | AT+CIPSSLSIZE=4096
OK |
5 AT+CIPSEND Отправляет данные
| Функция: для настройки на данные длины в нормальных передачах режима. | Функция: для запуска отправки данных в прозрачной передачи режиме. | |
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPSEND=<length> |
AT+CIPSEND |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPSEND=<link ID>,<length> |
|
| UDP- передача | AT+CIPSEND=[<link ID>,]<length>[,<remote IP>,<remote port>] Удаленный IP-адрес и порты могут быть установлены в UDP- передаче: |
|
| Отклик | Отправлять данные определенной длины. Wrap return> после команды Set. Начните получать последовательные данные. Когда длина данных, определяемая длиной <length>, выполняется, начинается передача данных. Если соединение не может быть установлено или будет прервано во время передачи данных, система вернет: ERROR Если данные успешно передаются, система возвращает: SEND OK Если это не удалось, система вернет: SEND FAIL |
Wrap return > после выполнения этой команды. Введите прозрачную передачу, с интервалом 20 мс между каждым пакетом, и с максимумом в 2048 байт в пакете. Когда получен следующий пакет, содержащий только +++ ESP8266 возвращается в режим нормальной команды. Подождите, по крайней мере, одну секунду перед отправкой следующей команды AT. Эта команда может только быть использована в режиме прозрачной передачи , которая использует только Single connection. Для прозрачной передачи UDP значение <UDP mode> должно быть 0 при использовании AT+CIPSTART. |
| Параметр |
|
|
| Пример (команда – ответ) | AT+CIPMUX=0
OK AT+CIPSTART=”TCP”,”192.168.4.103″,1112 CONNECT OK AT+CIPSEND=10 OK Recv 10 bytes SEND OK |
|
| Пример (команда – ответ) | AT+CIPSEND=10
OK SEND Canceled |
Отмена передачи буфера вводом +++ |
| Примечание | AT+CIPSEND=10
OK busy s… Recv 10 bytes SEND OK |
При передачи данных свыше установленного размера, возвращает их в эхо. |
6 AT+CIPSENDEX Отправляет данные
| Функция: настройка длины данных в нормальном режиме передачи. | |
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPSENDEX=<length> |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPSENDEX=<link ID>,<length> |
| UDP- передача | AT+CIPSENDEX=[<link ID>,]<length>[,<remote IP>,<remote port>]
Удаленный IP-адрес и порты могут быть установлены в UDP- передаче: |
| Отклик | Отправляет данные определенной длины. Wrap return > после команды Set. Начните получать последовательные данные. Когда выполняется требование длины данных, определяемое <length>, или когда \0 появляется в данных, начинается передача. Если соединение не может быть установлено или отключено во время передачи, система возвращает: ERROR Если данные успешно переданы, система возвращает: SEND OK Если это не удалось, система вернет: SEND FAIL |
| Параметр |
|
| Пример (команда – ответ) (Single connection) отправка больше байт чем ожидает буфер |
AT+CIPSENDEX=10
OK busy s… Recv 10 bytes SEND OK
|
| Пример (команда – ответ) (Single connection) отправка 10 байт |
AT+CIPSENDEX=10
OK Recv 10 bytes SEND OK |
| Пример (команда – ответ) (Single connection) прерывание командой +++ |
AT+CIPSENDEX=10
OK SEND Canceled |
| Пример (команда – ответ) (Single connection) прерывание командой \0 |
AT+CIPSENDEX=10
OK busy s… Recv 0 bytes SEND FAIL |
| Пример (команда – ответ) (Single connection) передача командой меньшего числа байт с командой \0 hex 5C 30 |
AT+CIPSENDEX=10
OK busy s… Recv 6 bytes SEND OK |
| Примечание | Пакеты загрузки буфера должны передаваться с интервалом не менее 20 мс, для определение модулям команд управления. |
7 AT+CIPSENDBUF Записывает данные в TCP-send-buffe
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPSENDBUF=<length> |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPSENDBUF=<link ID>,<length> |
| Отклик | <current segment ID>,<segment ID of which sent successfully> OK >
|
| Параметр |
|
| Пример (команда – ответ) | AT+CIPSENDBUF=20
1,0 OK > Recv 20 bytes1, SEND OK |
| Пример (команда – ответ) при попытки загрузить большее количество байт лишние появляются в эхо | AT+CIPSENDBUF=30
2,1 OK > 111 busy s… Recv 30 bytes2, SEND OK |
| Пример (команда – ответ) отмена командой +++ | AT+CIPSENDBUF=60
2,1 OK SEND Canceled |
| Примечание |
|
8 AT+CIPBUFRESET Сбрасывает счетчик количества идентификаторов сегмента
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPBUFRESET |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPBUFRESET=<link ID> |
| Отклик | OK Если соединение не установлено или все еще есть данные TCP, ожидающие отправки, Отклик будет: ERROR |
| Параметр | <link ID>: идентификатор соединения (0 ~ 4) для нескольких соединений. |
| Пример (команда – ответ) | AT+CIPSENDBUF=60
5,4 OK SEND Canceled AT+CIPBUFRESET OK AT+CIPSENDBUF=60 1,0 OK |
| Примечание | Эта команда может использоваться только при использовании AT+CIPSENDBUF |
9 AT+CIPBUFSTATUS Проверяет состояние TCP-send-buffer
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPBUFSTATUS |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPBUFSTATUS=<link ID> |
| Отклик | <next segment ID>,<segment ID sent >,<segment ID successfully sent>,<remain buffer size>,<queue number> OK |
| Параметр |
|
| Пример (команда – ответ) | Например, в одном соединении команда AT+CIPBUFSTATUS возвращает: 20,15,10,200,7 Описание:
|
| Пример (команда – ответ) | AT+CIPBUFSTATUS
2,1,1,2920,8 OK |
| Примечание | Эта команда не может использоваться для подключения SSL. |
10 AT+CIPCHECKSEQ Проверка успешной отправки конкретного сегмента.
| Команда (Single connection) | (AT+CIPMUX=0) AT+CIPCHECKSEQ=<segment ID> |
| Команда (Multiple connections) | (AT+CIPMUX=1) AT+CIPCHECKSEQ=<link ID>,<segment ID> |
| Отклик | [<link ID>,]<segment ID>,<status> OK |
| Параметр |
|
| Пример (команда – ответ) | AT+CIPCHECKSEQ=1
1,TRUE OK AT+CIPCHECKSEQ=2 ERROR |
| Примечание | Эта команда может использоваться только при использовании AT+CIPSENDBUF. |
11 AT+CIPCLOSE Закрывает соединение TCP/UDP/SSL
| Функция: закрывает соединение TCP / UDP. | |
| Команда (Single connection) | AT+CIPCLOSE |
| Команда (Multiple connections) | AT+CIPCLOSE=<ID> |
| Отклик | OK |
| Параметр | <link ID>: идентификатор соединения, которое нужно закрыть. Когда идентификатор 5, все соединения будут закрыты. (В режиме сервера, ID – не имеет не эффекта.) |
| Пример (команда – ответ) | AT+CIPCLOSE
CLOSED OK |
12 AT+CIFSR Получить локальный IP-адрес
| Команда | AT+CIFSR |
| Отклик | +CIFSR:APIP,<SoftAP IP address> +CIFSR:APMAC,<SoftAP MAC address> +CIFSR:STAIP,<Station IP address> +CIFSR:STAMAC,<Station MAC address>OK |
| Параметр | <IP address>:
IP address of the ESP8266 SoftAP; <MAC address>: MAC address of the ESP8266 SoftAP; |
| Пример (команда – ответ) режим станции AT+CWMODE=1 |
AT+CIFSR
+CIFSR:STAIP,”192.168.4.100″ OK |
| Пример (команда – ответ) режим станции+сервер AT+CWMODE=3 |
AT+CIFSR
+CIFSR:APIP,”192.168.4.1″ OK |
| Примечание | Только когда станция ESP8266 подключена к AP, можно запросить IP-адрес станции. |
13 AT+CIPMUX Включение/выключение режима нескольких подключений (Multiple connections)
| Команда запрос | AT+CIPMUX? |
| Отклик | OK |
| Пример (команда – ответ) | AT+CIPMUX?
+CIPMUX:0 OK |
| Команда настройки | AT+CIPMUX=<mode> |
| Отклик | OK |
| Параметр | <mode>:
|
| Пример (команда – ответ) | AT+CIPMUX=0
OK |
| Примечание |
|
14 AT+CIPSERVER Удаляет/создает TCP-сервер
| Команда | AT+CIPSERVER=<mode>[,<port>] |
| Отклик | OK |
| Параметр |
|
| Пример (команда – ответ) создание | AT+CIPMUX=1
OK AT+CIPSERVER=1,1001 OK |
| Пример (команда – ответ) удаление | AT+CIPSERVER=0
OK |
| Примечание | TCP-сервер может быть создан только при активации нескольких подключений (AT+CIPMUX = 1). • При создании TCP-сервера автоматически создается монитор сервера. • Когда клиент подключен к серверу, он займет одно соединение и получит идентификатор. |
15 AT+CIPSERVERMAXCONN Установить максимальное количество соединении, разрешенное сервером
| Команда запрос | AT+CIPSERVERMAXCONN? |
| Функция: получить на максимальное число из клиентов , разрешенных для подключения к с TCP или SSL сервера. |
|
| Отклик | +CIPSERVERMAXCONN:<num> OK |
| Пример (команда – ответ) | AT+CIPSERVERMAXCONN?
+CIPSERVERMAXCONN:5 OK |
| Команда настройки | AT+CIPSERVERMAXCONN=<num> |
| Отклик | OK |
| Параметр | <num>: максимальное количество клиентов, которым разрешено подключаться к серверу TCP или SSL, диапазон: [1, 5] |
| Пример (команда – ответ) | AT+CIPSERVERMAXCONN=2
OK AT+CIPSERVERMAXCONN? +CIPSERVERMAXCONN:2 OK |
| Примечание | Чтобы установить эту конфигурацию, вы должны вызвать команду AT+CIPSERVERMAXCONN=<num> перед созданием сервера. |
| Пример | AT+CIPMUX=1
AT+CIPSERVERMAXCONN=2 AT+CIPSERVER=1,80 |
16 AT+CIPMODE Настраивает режим передачи
| Команда запрос | AT+CIPMODE? |
| Отклик | +CIPMODE:<mode>
OK |
| Пример (команда – ответ) | AT+CIPMODE?
+CIPMODE:0 OK |
| Команда настройки | AT+CIPMODE=<mode> |
| Отклик | OK |
| Параметр | <mode>:
|
| Пример (команда – ответ) | AT+CIPMODE=1
OK AT+CIPMODE=0 OK |
| Пример (команда – ответ) | AT+CIPMODE=1
CIPMUX and CIPSERVER must be 0 // для изменения параметра функции должны иметь параметр 0 ERROR |
| Примечание |
|
| Пример | AT+CIPMODE=1 |
17 AT+SAVETRANSLINK Сохраняет прозрачную линию передачи во флэш-памяти
| Сохранит TCP во Flash (Single connection) | |
| Команда запроса | AT+SAVETRANSLINK=<mode>,<remote IP or domain name>,<remote port>[,<type>,<TCP keep alive>] |
| Отклик | OK
или ERROR |
| Параметр |
|
| Пример (команда – ответ) | AT+SAVETRANSLINK=1,”192.168.6.110″,1002,”TCP”
OK
AT+SAVETRANSLINK=0 OK |
| Примечание |
|
| Сохранить передачу UDP во Flash | |
| Команда запроса | AT+SAVETRANSLINK=<mode>,<remote IP>,<remote port>,<type>[,<UDP local port>] |
| Отклик | OK
или ERROR |
| Параметр |
|
Это может быть интересно
Development of temperature control and management systemsViews: 223 Catcatcat Electronics Пошта для контакту e-mail: catcatcat.electronics@gmail.com
Акриловый корпус для платы ch-4000Views: 850 Плата ch-4000 подходит для монтажа в корпуса на дин рейку, но для домашней автоматики необходимо что-то другое, поэтому был разработан корпус из акрила который позволит создавать настольные и настенные устройства. Корпус …
PIC18F25K42 – v. A001 – выявленные баги.Views: 796 Модуль I2C Не работает при использовании в стандартной конфигурации MCC. Требует особой нестандартной конфигурации и управления для нормальной работы. Обойти Обход проблемы возможен библиотека см статью. Модуль ADC2 На …
MPLAB X IDE – управление проектамиViews: 1131 Среда MPLAB X IDE позволяет оперативно работать с несколькими проектами, например, если у вас в работе несколько проектов: Для того чтобы переключиться достаточно выбрать другой проект: Для выбора …
Система отопления на солнечных коллекторах от Дмитрия (rv3dpi)Views: 3442 Солнечные коллекторы для отопления в Европе используют в более 50% от общего количества установленных гелиосистем. Однако следует понимать, что гелиосистемы предназначены лишь для поддержки отопления и экономии затрат на основную …
Проект с использованием MCC часть 02Views: 2437 Когда мы запустили конфигуратор, самое главное понять, что с этим делать и как проверить, то что мы делаем работает или нет. Для начала настроим регистры конфигурации микроконтроллера и настроем …
Гаджеты для домашней автоматики – Датчик движенияViews: 1495 Управление светодиодным освещением – Датчик движения. Данный гаджет предназначен для управления освещением рабочих столов (кухонных столов), освещение прихожих, освещение зеркал в прихожих, автоматическое включение света в коридорах. Датчик позволяет …
Простой цифровой милливольтметр постоянного токаViews: 4212 Простой цифровой вольтметр постоянного тока. Три диапазона измерений с автоматическим переключением 1 – 0,001 – 0,999 V, 2 – 0,01-9,99 V, 3 – 0,1-99,9. Четыре управляемых выхода с возможностью задания функции контроля …
ESP32-первое знакомствоViews: 7130 Музыкальная тема к статье, слушаем: Настало время познакомиться c ESP32 и для меня, для этого я приобрел в ГАММЕ отладочную плату с модулем ESP-WROOM-32 (ESP32-DevKitC). Первая задача, как …
ESP8266 процедура получение данных даты и времени от серверов точного времени.Views: 6166 Эта функция доступна уже в версии 1.6.1. Для многих приложений, необходимо часы реального времени, если в вашем проекте есть модуль WiFI ESP8266, то легко можно сделать следующим образом. …