MBee Arduino library
Открытые члены | Полный список членов класса
Класс TxRequest

Класс для пакета,предназначенного для передачи удаленному модему неструктурированных данных, которые будут отправлены им на последовательный интерфейс UART. Подробнее...

#include <SerialStar.h>

Граф наследования:TxRequest:
PayloadRequest MBeeRequest

Открытые члены

 TxRequest ()
 Конструктор "по умолчанию". Подробнее...
 
 TxRequest (uint16_t addr, uint8_t *payload, uint8_t payloadLength)
 Класс для адресной отправки данных со значением frameId и опций передачи "по умолчанию".
 
 TxRequest (uint16_t addr, uint8_t option, uint8_t *payload, uint8_t payloadLength, uint8_t frameId)
 Класс для адресной отправки пакета с заданным frameId и опциями передачи.
 
uint16_t getRemoteAddress ()
 Возвращает адрес получателя пакета.
 
void setRemoteAddress (uint16_t remoteAddress)
 Устанавливает адрес получателя пакета.
 
uint8_t getOption ()
 Возвращает значение байта опций отправки пакета.
 
void setOption (uint8_t option)
 Устанавливает опции отправки пакета.
 
bool getOptionEnable ()
 Возвращает true, если передача пакета осуществляется в соответствии с байтом опций и false, если в сответствии с настройками Device Mode (DM).
 
void setOptionEnable (bool optionEnable)
 Включает/выключает передачу пакетов в соответствии с байтом опций.
 
bool getAcknowledge ()
 Возвращает true, если подтверждение удаленным модемом получения пакета включено.
 
void setAcknowledge (bool acknowledge)
 Включает/выключает отправку подтверждения удаленным модемом получения пакета.
 
bool getCca ()
 Возвращает true, если при отправке пакетов включен режим CCA (Clear Channel Assessment).
 
void setCca (bool cca)
 Включает/выключает режим CCA (Clear Channel Assessment) при отправке пакетов.
 
bool getEncryption ()
 Возвращает true, если включен режим шифрования поля данных.
 
void setEncryption (bool encryption)
 Включает/выключает шифрование поля данных передаваемого пакета.
 
bool getSleepingDevice ()
 Возвращает true, если пакет предназначается для спящего модема.
 
void setSleepingDevice (bool sleepingDevice)
 Включает/выключает буферизацию пакетов для спящих модемов.
 
uint8_t getFrameData (uint8_t pos)
 Возвращает байт поля данных, номер которого определяется аргументом.
 
uint8_t getFrameDataLength ()
 Возвращает полную длину поля данных API-фрейма.
 
- Открытые члены унаследованные от PayloadRequest
 PayloadRequest (uint8_t apiId, uint8_t frameId, uint8_t *payload, uint8_t payloadLength)
 
uint8_t * getPayload ()
 Возвращает указатель на поле данных.
 
void setPayload (uint8_t *payloadPtr)
 Устанавливает указатель на поле данных.
 
void setPayload (uint8_t *payloadPtr, uint8_t payloadLength)
 Уставливает инлайном одновременно указатель на поле данных и число байт из него, начиная с первого, которое требуется поместить в передаваемое сообщение.
 
uint8_t getPayloadLength ()
 Возвращает установленную длину поля данных.
 
void setPayloadLength (uint8_t payloadLength)
 Устанавливает число байт, которое надо поместить в поле данных отправляемого пакета. Подробнее...
 
- Открытые члены унаследованные от MBeeRequest
 MBeeRequest (uint8_t apiId, uint8_t frameId)
 Конструктор, создающий фрейм с заданным API ID и идентификатором.
 
void setFrameId (uint8_t frameId)
 Устанавливает frame id. Подробнее...
 
uint8_t getFrameId ()
 Возвращает frame id.
 
void setApiId (uint8_t apiId)
 Устанавливает тип API-фрейма.
 
uint8_t getApiId ()
 Возвращает тип API-фрейма.
 

Подробное описание

Класс для пакета,предназначенного для передачи удаленному модему неструктурированных данных, которые будут отправлены им на последовательный интерфейс UART.

Режим отправки на UART(пакетный или прозрачный) зависит от настроек удаленного модуля.

Режимы передачи пакета и получения подтверждений могут определяться байтом option. Для этого параметр _optionEnable должен быть установлен в true (режим "по умолчанию"). Если параметр _optionEnable=false, то режимы отправки определяются параметром DM(Device Mode). Максимальная допустимая длина поля данных пакета зависит от выбранного режима передачи:

  1. Если _optionEnable=false, то FrameDataLength <= 40.
  2. Если _optionEnable=true, то FrameDataLength <= 39.
  3. Если требуется шифрование поля данных(_encryption = true или DEVICE_MODE_ENCRYPTION_BIT = 1), то FrameDataLength <= 32 независимо от установки _optionEnable.

ВНИМАНИЕ! Каких-либо проверок на превышение допустимой длины поля данных не производится. Если длина поля данных превышает максимально допустимую для данного режима, то в поле данных помещается макисмально возможное число. При этом все "лишние" отбрасываются и никакие уведомлений об этом в ответном пакете не формируются.

См. определение в файле SerialStar.h строка 950

Конструктор(ы)

◆ TxRequest()

TxRequest::TxRequest ( )

Конструктор "по умолчанию".

Перед отправкой пакета, необходимо как минимум установить указатель на буфер с исходными данными, указать количество отправлямых байт, начиная с первого, и адрес получателя.

См. определение в файле SerialStar.cpp строка 884

884  : PayloadRequest(TRANSMIT_REQUEST_API_FRAME, DEFAULT_FRAME_ID, NULL, 0)
885 {
886  _remoteAddress = BROADCAST_ADDRESS;
887  _option = TRANSMIT_OPTION_DEFAULT;
888  _optionEnable = true;
889 }
Базовый класс для всех пакетов, предназначенных для передачи по эфиру неструктурированных данных...
Definition: SerialStar.h:828

Объявления и описания членов классов находятся в файлах: