![]() |
SysIo
1.9.0
Embedded Library and tools
|
Ce module permet d'utiliser des modules XBee Série 1 et 2
Copyright © 2006-2008 Tymm Twillman tymm@ booy aka.c om
![]() |
Modules | |
Commandes XBee | |
Functions | |
bool | bXBeePktAddressIsEqual (const uint8_t *a1, const uint8_t *a2, uint8_t len) |
Vérifie l'égalité de 2 adresses réseau de len octets. | |
eXBeeSeries | eXBeeGetSeries (const xXBee *xbee) |
Retourne la série du module fournie à l'ouverture. More... | |
eXBeeDeviceType | eXBeePktDeviceType (xXBeePkt *pkt) |
Type de noeud (Série 2) More... | |
eXBeeSourceEvent | eXBeePktSourceEvent (xXBeePkt *pkt) |
Source de l'événement (Série 2) More... | |
int | iXBeeClose (xXBee *xbee) |
Fermeture d'un module XBee. More... | |
int | iXBeePktApply (xXBeePkt *pkt) |
Champs apply du paquet. More... | |
int | iXBeePktDataLen (xXBeePkt *pkt) |
Nombre d'octet de données (CRC exclu) More... | |
int | iXBeePktDiscovery (xXBeePkt *pkt) |
Status de découverte de paquet (Série 2) More... | |
uint8_t * | iXBeePktDst16 (xXBeePkt *pkt) |
Adresse réseau 16-bits destination du paquet (Série 2) More... | |
int | iXBeePktFrameId (xXBeePkt *pkt) |
Identifiant de paquet. More... | |
int | iXBeePktIsBroadcast (xXBeePkt *pkt) |
Indique si le paquet est un broadcast. More... | |
int | iXBeePktManufacturerId (xXBeePkt *pkt) |
Identification du fabricant du module (Série 2) More... | |
int | iXBeePktOptions (xXBeePkt *pkt) |
Champs option du paquet. More... | |
int | iXBeePktParamGetStr (char *pcDest, xXBeePkt *pkt, int iDestSize) |
Copie les paramètres de commande AT. More... | |
int | iXBeePktParamGetUByte (uint8_t *ucDest, xXBeePkt *pkt, int iOffset) |
Copie d'un octet des paramètres de commande AT. More... | |
int | iXBeePktParamGetULong (uint32_t *ulDest, xXBeePkt *pkt, int iOffset) |
Copie d'un mot long des paramètres de commande AT. More... | |
int | iXBeePktParamGetULongLong (uint64_t *ullDest, xXBeePkt *pkt, int iOffset) |
Copie d'un très long mot des paramètres de commande AT. More... | |
int | iXBeePktParamGetUShort (uint16_t *usDest, xXBeePkt *pkt, int iOffset) |
Copie d'un mot des paramètres de commande AT. More... | |
int | iXBeePktParamLen (xXBeePkt *pkt) |
Longueur des paramètres de la commande AT. More... | |
int | iXBeePktProfileId (xXBeePkt *pkt) |
Identifiant du profile Digi (Série 2) More... | |
int | iXBeePktRadius (xXBeePkt *pkt) |
Champs radius du paquet (Série 2) More... | |
int | iXBeePktRetry (xXBeePkt *pkt) |
Nombre de tentatives de paquet (Série 2) More... | |
int | iXBeePktRssi (xXBeePkt *pkt) |
Champs rssi du paquet (Série 1) More... | |
int | iXBeePktStatus (xXBeePkt *pkt) |
Status de paquet. More... | |
int | iXBeePoll (xXBee *xbee, int timeout) |
Scrute le flux relié au module en attente de réception d'octet. More... | |
int | iXBeeSend16 (xXBee *xbee, const void *data, uint8_t len, const uint8_t addr[2], uint8_t opt) |
Envoi d'un paquet de données à un module distant par son adresse 16-bit. More... | |
int | iXBeeSend64 (xXBee *xbee, const void *data, uint8_t len, const uint8_t addr[8], uint8_t opt) |
Envoi d'un paquet de données à un module distant par son adresse 64-bit. More... | |
int | iXBeeSendAt (xXBee *xbee, const char cmd[], const uint8_t *params, uint8_t param_len) |
Envoi une commande AT locale. More... | |
int | iXBeeSendRemoteAt (xXBee *xbee, const char cmd[], const uint8_t params[], uint8_t param_len, const uint8_t addr64[8], const uint8_t addr16[2], uint8_t apply) |
Envoi une commande AT à un module distant. More... | |
int | iXBeeZbSend (xXBee *xbee, const void *data, uint8_t len, const uint8_t addr64[8], const uint8_t addr16[2], uint8_t opt, uint8_t radius) |
Envoi d'un paquet de données à un module distant. More... | |
int | iXBeeZbSendBroadcast (xXBee *xbee, const void *data, uint8_t len) |
Envoi d'un paquet de données de diffusion sur le réseau. More... | |
int | iXBeeZbSendToCoordinator (xXBee *xbee, const void *data, uint8_t len) |
Envoi d'un paquet de données au coordinateur du réseau. More... | |
char * | pcXBeePktCommand (xXBeePkt *pkt) |
Nom de la commande AT. More... | |
char * | pcXBeePktNiString (xXBeePkt *pkt) |
Identifiant texte du noeud (Série 2) More... | |
const uint8_t * | pucXBeeAddr16Unknown (void) |
Adresse 16-bits inconnue (0xFFFE) More... | |
const uint8_t * | pucXBeeAddr64Broadcast (void) |
Adresse 64-bits de broadcast (0x000000000000FFFF) More... | |
const uint8_t * | pucXBeeAddr64Coordinator (void) |
Adresse 64-bits du cordinateur Zigbee (0x0000000000000000) More... | |
const uint8_t * | pucXBeeAddr64Unknown (void) |
Adresse 64-bits inconnue (0xFFFFFFFFFFFFFFFF) More... | |
uint8_t * | pucXBeePktAddrParent16 (xXBeePkt *pkt) |
Adresse réseau 16-bits parent du paquet (Série 2) More... | |
uint8_t * | pucXBeePktAddrRemote16 (xXBeePkt *pkt) |
Adresse réseau 16-bits distante du paquet (Série 2) More... | |
uint8_t * | pucXBeePktAddrRemote64 (xXBeePkt *pkt) |
Adresse 64-bits distante du paquet (Série 2) More... | |
uint8_t * | pucXBeePktAddrSrc16 (xXBeePkt *pkt) |
Adresse réseau 16-bits source du paquet. More... | |
uint8_t * | pucXBeePktAddrSrc64 (xXBeePkt *pkt) |
Adresse 64-bits source du paquet. More... | |
uint8_t * | pucXBeePktData (xXBeePkt *pkt) |
Pointeur sur les données du paquet. More... | |
uint8_t * | pucXBeePktParam (xXBeePkt *pkt) |
Paramètres de la commande AT. More... | |
void * | pvXBeeAllocPkt (xXBee *xbee, uint8_t direction, uint8_t len) |
Alloue la mémoire pour un paquet. More... | |
void * | pvXBeeGetUserContext (xXBee *xbee) |
Renvoie le pointeur contexte utilisateur. More... | |
const char * | sXBeeAssociationStatusToString (uint8_t status) |
Message explicite associé à un status d'asssociation (Commande AT AI) More... | |
const char * | sXBeeModemStatusToString (uint8_t status) |
Message explicite associé à un status de modem (message 0x8A) More... | |
const char * | sXBeeTransmitStatusToString (uint8_t status) |
Message explicite associé à un status de transmission (message 0x8B) More... | |
uint8_t | ucXBeePktType (xXBeePkt *pkt) |
Lecture du type de paquet. More... | |
uint16_t | usXBeePktLength (xXBeePkt *pkt) |
Taille du paquet en octets. More... | |
void | vXBeeFreePkt (xXBee *xbee, xXBeePkt *pkt) |
Libère un paquet alloué avec pvXBeeAllocPkt() More... | |
void | vXBeeSetCB (xXBee *xbee, eXBeeCbType cb_type, iXBeeRxCB cb) |
Modifie un gestionnaire de réception. More... | |
void | vXBeeSetUserContext (xXBee *xbee, void *pvContext) |
Modifie le contexte utilisateur. More... | |
xXBee * | xXBeeOpen (const char *pcDevice, xSerialIos *xIos, eXBeeSeries series) |
Ouverture d'un module XBee. More... | |
Typedefs | |
typedef int(* | iXBeeRxCB) (struct xXBee *xbee, struct xXBeePkt *pkt, uint8_t len) |
Prototype d'un gestionnaire de réception. More... | |
typedef struct xXBee | xXBee |
Contexte d'un module XBee. More... | |
typedef struct xXBeePkt | xXBeePkt |
Paquet XBee générique. More... | |
Enumerations | |
enum | eXBeeCbType { XBEE_CB_AT_LOCAL = 0, XBEE_CB_AT_REMOTE = 1, XBEE_CB_DATA = 2, XBEE_CB_IO = 3, XBEE_CB_TX_STATUS = 4, XBEE_CB_MODEM_STATUS = 5, XBEE_CB_SENSOR = 6, XBEE_CB_NODE_IDENT = 7, XBEE_CB_UNKNOWN = -1, XBEE_CB_FIRST = XBEE_CB_AT_LOCAL, XBEE_CB_LAST = XBEE_CB_NODE_IDENT } |
Type de gestionnaire de réception. More... | |
enum | eXBeeCmdStatus { XBEE_PKT_STATUS_OK = 0, XBEE_PKT_STATUS_ERROR = 1, XBEE_PKT_STATUS_INVALID_COMMAND = 2, XBEE_PKT_STATUS_INVALID_PARAMETER = 3, XBEE_PKT_STATUS_TX_FAILURE = 4, XBEE_PKT_STATUS_UNKNOWN = -1 } |
Réponses à une commande AT. | |
enum | eXBeeDeviceType { XBEE_DEVICE_COORDINATOR = 0, XBEE_DEVICE_ROUTER = 1, XBEE_DEVICE_END_DEVICE = 2, XBEE_DEVICE_UNKNOWN = -1 } |
Type de noeud. | |
enum | eXBeeDirection { XBEE_RECV = 0x00, XBEE_XMIT = 0x01 } |
Direction d'un échange XBee. More... | |
enum | eXBeeModemStatus { XBEE_PKT_MODEM_HARDWARE_RESET = 0, XBEE_PKT_MODEM_WATCHDOG_TIMER_RESET = 1, XBEE_PKT_MODEM_JOINED_NETWORK = 2, XBEE_PKT_MODEM_DISASSOCIATED = 3, XBEE_PKT_MODEM_COORDINATOR_STARTED = 4, XBEE_PKT_MODEM_NETWORK_SECURITY_KEY_WAS_UPDATED = 7, XBEE_PKT_MODEM_VOLTAGE_SUPPLY_LIMIT_EXCEEDED = 0x0D, XBEE_PKT_MODEM_CONFIGURATION_CHANGED = 0x11, XBEE_PKT_MODEM_STACK_ERROR = 0x80 } |
Status Modem. | |
enum | eXBeePktType { XBEE_PKT_TYPE_ATCMD = 0x08, XBEE_PKT_TYPE_QATCMD = 0x09, XBEE_PKT_TYPE_REMOTE_ATCMD = 0x17, XBEE_PKT_TYPE_ATCMD_RESP = 0x88, XBEE_PKT_TYPE_MODEM_STATUS = 0x8a, XBEE_PKT_TYPE_REMOTE_ATCMD_RESP = 0x97, XBEE_PKT_TYPE_TX64 = 0x00, XBEE_PKT_TYPE_TX16 = 0x01, XBEE_PKT_TYPE_RX64 = 0x80, XBEE_PKT_TYPE_RX16 = 0x81, XBEE_PKT_TYPE_RX64_IO = 0x82, XBEE_PKT_TYPE_RX16_IO = 0x83, XBEE_PKT_TYPE_TX_STATUS = 0x89, XBEE_PKT_TYPE_ZB_TX_REQ = 0x10, XBEE_PKT_TYPE_ZB_CMD_FRAME = 0x11, XBEE_PKT_TYPE_ZB_TX_STATUS = 0x8b, XBEE_PKT_TYPE_ZB_RX = 0x90, XBEE_PKT_TYPE_ZB_RX_IO = 0x92, XBEE_PKT_TYPE_ZB_RX_SENSOR = 0x94, XBEE_PKT_TYPE_ZB_NODE_IDENT = 0x95 } |
Types de paquets géré par le module. More... | |
enum | eXBeeSeries { XBEE_SERIES_S1 = 1, XBEE_SERIES_S2 = 2, XBEE_SERIES_S2B = 3, XBEE_SERIES_UNKNOWN = -1 } |
Serie du module XBee. | |
enum | eXBeeSourceEvent { XBEE_EVENT_BUTTON = 1, XBEE_EVENT_JOIN = 2, XBEE_EVENT_POWER_ON = 3, XBEE_EVENT_UNKNOWN = -1 } |
Type de noeud. | |
#include <xbee.h>
Prototype d'un gestionnaire de réception.
xbee | pointeur sur le contexte du module xbee initialisé |
pkt | pointeur sur le paquet reçu. Après utilisation et avant de sortir, le gestionnaire installé doit libérer la mémoire de ce paquet à l'aide de vXBeeFreePkt |
len | taille en octets de pkt |
enum eXBeeCbType |
#include <xbee.h>
Type de gestionnaire de réception.
Definition at line 184 of file xbee.h.
enum eXBeeDirection |
#include <xbee.h>
Direction d'un échange XBee.
Enumerator | |
---|---|
XBEE_RECV |
En réception |
XBEE_XMIT |
En transmission |
Definition at line 268 of file xbee.h.
enum eXBeePktType |
eXBeeSeries eXBeeGetSeries | ( | const xXBee * | xbee | ) |
#include <xbee.h>
Retourne la série du module fournie à l'ouverture.
xbee | pointeur sur l'objet XBee |
eXBeeDeviceType eXBeePktDeviceType | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Type de noeud (Série 2)
pkt | pointeur sur le paquet |
eXBeeSourceEvent eXBeePktSourceEvent | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Source de l'événement (Série 2)
pkt | pointeur sur le paquet |
int iXBeeClose | ( | xXBee * | xbee | ) |
#include <xbee.h>
Fermeture d'un module XBee.
xbee | pointeur sur l'objet XBee |
int iXBeePktApply | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Champs apply du paquet.
pkt | pointeur sur le paquet |
int iXBeePktDataLen | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Nombre d'octet de données (CRC exclu)
pkt | pointeur sur le paquet |
int iXBeePktDiscovery | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Status de découverte de paquet (Série 2)
pkt | pointeur sur le paquet |
uint8_t* iXBeePktDst16 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse réseau 16-bits destination du paquet (Série 2)
pkt | pointeur sur le paquet |
int iXBeePktFrameId | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Identifiant de paquet.
pkt | pointeur sur le paquet |
int iXBeePktIsBroadcast | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Indique si le paquet est un broadcast.
pkt | pointeur sur le paquet |
int iXBeePktManufacturerId | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Identification du fabricant du module (Série 2)
pkt | pointeur sur le paquet |
int iXBeePktOptions | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Champs option du paquet.
pkt | pointeur sur le paquet |
int iXBeePktParamGetStr | ( | char * | pcDest, |
xXBeePkt * | pkt, | ||
int | iDestSize | ||
) |
#include <xbee.h>
Copie les paramètres de commande AT.
Le paquet transmis doit un paquet de réponse à une commande AT. Si la taille de pcDest est suffisante, un caractère null est ajouté à la fin.
pcDest | Destination de la copie |
pkt | pointeur sur le paquet |
iDestSize | Taille en caractères de la destination |
int iXBeePktParamGetUByte | ( | uint8_t * | ucDest, |
xXBeePkt * | pkt, | ||
int | iOffset | ||
) |
#include <xbee.h>
Copie d'un octet des paramètres de commande AT.
ucDest | octet résultat |
pkt | pointeur sur le paquet |
iOffset | offset de l'octet à lire (par rapport au début des paramètres) |
int iXBeePktParamGetULong | ( | uint32_t * | ulDest, |
xXBeePkt * | pkt, | ||
int | iOffset | ||
) |
#include <xbee.h>
Copie d'un mot long des paramètres de commande AT.
ulDest | mot long résultat |
pkt | pointeur sur le paquet |
iOffset | offset du mot à lire (par rapport au début des paramètres) |
int iXBeePktParamGetULongLong | ( | uint64_t * | ullDest, |
xXBeePkt * | pkt, | ||
int | iOffset | ||
) |
#include <xbee.h>
Copie d'un très long mot des paramètres de commande AT.
ullDest | très long mot résultat |
pkt | pointeur sur le paquet |
iOffset | offset du mot à lire (par rapport au début des paramètres) |
int iXBeePktParamGetUShort | ( | uint16_t * | usDest, |
xXBeePkt * | pkt, | ||
int | iOffset | ||
) |
#include <xbee.h>
Copie d'un mot des paramètres de commande AT.
usDest | mot résultat |
pkt | pointeur sur le paquet |
iOffset | offset du mot à lire (par rapport au début des paramètres) |
int iXBeePktParamLen | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Longueur des paramètres de la commande AT.
pkt | pointeur sur le paquet |
int iXBeePktProfileId | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Identifiant du profile Digi (Série 2)
pkt | pointeur sur le paquet |
int iXBeePktRadius | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Champs radius du paquet (Série 2)
pkt | pointeur sur le paquet |
int iXBeePktRetry | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Nombre de tentatives de paquet (Série 2)
pkt | pointeur sur le paquet |
int iXBeePktRssi | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Champs rssi du paquet (Série 1)
pkt | pointeur sur le paquet |
int iXBeePktStatus | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Status de paquet.
pkt | pointeur sur le paquet |
int iXBeePoll | ( | xXBee * | xbee, |
int | timeout | ||
) |
#include <xbee.h>
Scrute le flux relié au module en attente de réception d'octet.
Cette fonction doit être appellée dans la boucle principale aussi souvent que possible.
int iXBeeSend16 | ( | xXBee * | xbee, |
const void * | data, | ||
uint8_t | len, | ||
const uint8_t | addr[2], | ||
uint8_t | opt | ||
) |
#include <xbee.h>
Envoi d'un paquet de données à un module distant par son adresse 16-bit.
xbee | pointeur sur le contexte |
data | pointeur sur les données |
len | longueur en octets des données |
addr | adresse 64-bit du destinataire |
opt | voir description du paquet de type 0x10 dans le datasheet |
int iXBeeSend64 | ( | xXBee * | xbee, |
const void * | data, | ||
uint8_t | len, | ||
const uint8_t | addr[8], | ||
uint8_t | opt | ||
) |
#include <xbee.h>
Envoi d'un paquet de données à un module distant par son adresse 64-bit.
xbee | pointeur sur le contexte |
data | pointeur sur les données |
len | longueur en octets des données |
addr | adresse 64-bit du destinataire |
opt | voir description du paquet de type 0x10 dans le datasheet |
int iXBeeSendAt | ( | xXBee * | xbee, |
const char | cmd[], | ||
const uint8_t * | params, | ||
uint8_t | param_len | ||
) |
#include <xbee.h>
Envoi une commande AT locale.
xbee | pointeur sur le contexte |
cmd | commande en ASCII (2 lettres) |
params | paramètres de la commande (dépend de la commande) |
int iXBeeSendRemoteAt | ( | xXBee * | xbee, |
const char | cmd[], | ||
const uint8_t | params[], | ||
uint8_t | param_len, | ||
const uint8_t | addr64[8], | ||
const uint8_t | addr16[2], | ||
uint8_t | apply | ||
) |
#include <xbee.h>
Envoi une commande AT à un module distant.
xbee | pointeur sur le contexte |
cmd | commande en ASCII (2 lettres) |
params | paramètres de la commande (dépend de la commande) |
addr64 | adresse 64-bit du destinataire |
addr16 | adresse 16-bit du destinataire |
apply | booléen qui indique si la commande doit ête appliquée immédiatement par le module distant (0 pas appliquée) |
int iXBeeZbSend | ( | xXBee * | xbee, |
const void * | data, | ||
uint8_t | len, | ||
const uint8_t | addr64[8], | ||
const uint8_t | addr16[2], | ||
uint8_t | opt, | ||
uint8_t | radius | ||
) |
#include <xbee.h>
Envoi d'un paquet de données à un module distant.
xbee | pointeur sur le contexte |
data | pointeur sur les données |
len | longueur en octets des données |
addr64 | adresse 64-bit du destinataire |
addr16 | adresse 16-bit du destinataire |
opt | voir description du paquet de type 0x10 dans le datasheet |
radius | voir description du paquet de type 0x10 dans le datasheet |
int iXBeeZbSendBroadcast | ( | xXBee * | xbee, |
const void * | data, | ||
uint8_t | len | ||
) |
#include <xbee.h>
Envoi d'un paquet de données de diffusion sur le réseau.
xbee | pointeur sur le contexte |
data | pointeur sur les données |
len | longueur en octets des données |
int iXBeeZbSendToCoordinator | ( | xXBee * | xbee, |
const void * | data, | ||
uint8_t | len | ||
) |
#include <xbee.h>
Envoi d'un paquet de données au coordinateur du réseau.
xbee | pointeur sur le contexte |
data | pointeur sur les données |
len | longueur en octets des données |
char* pcXBeePktCommand | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Nom de la commande AT.
Le nom a une longueur de 2 caractères et n'est pas terminé par un octet nul. Il est donc nécessire d'utiliser strncmp() pour faire une comparaison !
pkt | pointeur sur le paquet |
char* pcXBeePktNiString | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Identifiant texte du noeud (Série 2)
pkt | pointeur sur le paquet |
const uint8_t* pucXBeeAddr16Unknown | ( | void | ) |
#include <xbee.h>
Adresse 16-bits inconnue (0xFFFE)
Cette fonction simplifie l'utilisation de cette valeur pour l'appel des fonctions de transmission ou de comparaison de la bibliothèque.
const uint8_t* pucXBeeAddr64Broadcast | ( | void | ) |
#include <xbee.h>
Adresse 64-bits de broadcast (0x000000000000FFFF)
Cette fonction simplifie l'utilisation de cette valeur pour l'appel des fonctions de transmission ou de comparaison de la bibliothèque.
const uint8_t* pucXBeeAddr64Coordinator | ( | void | ) |
#include <xbee.h>
Adresse 64-bits du cordinateur Zigbee (0x0000000000000000)
Cette fonction simplifie l'utilisation de cette valeur pour l'appel des fonctions de transmission ou de comparaison de la bibliothèque.
const uint8_t* pucXBeeAddr64Unknown | ( | void | ) |
#include <xbee.h>
Adresse 64-bits inconnue (0xFFFFFFFFFFFFFFFF)
Cette fonction simplifie l'utilisation de cette valeur pour l'appel des fonctions de transmission ou de comparaison de la bibliothèque.
uint8_t* pucXBeePktAddrParent16 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse réseau 16-bits parent du paquet (Série 2)
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktAddrRemote16 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse réseau 16-bits distante du paquet (Série 2)
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktAddrRemote64 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse 64-bits distante du paquet (Série 2)
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktAddrSrc16 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse réseau 16-bits source du paquet.
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktAddrSrc64 | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Adresse 64-bits source du paquet.
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktData | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Pointeur sur les données du paquet.
La suite d'octets n'est pas terminée par un octet nul (mais par le CRC du paquet qui pourra être écrasé par un octet nul)
pkt | pointeur sur le paquet |
uint8_t* pucXBeePktParam | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Paramètres de la commande AT.
pkt | pointeur sur le paquet |
void* pvXBeeAllocPkt | ( | xXBee * | xbee, |
uint8_t | direction, | ||
uint8_t | len | ||
) |
#include <xbee.h>
Alloue la mémoire pour un paquet.
Cette fonction est utilisée par la bibliothèque pour allouer de la mémoire.
Le système d'allocation mémoire peut être adapté en fonction des besoins.
Par défaut, AvrIO utilise malloc() pour l'allocation et ne tiens pas compte de direction. Si l'utilisateur ne souhaite pas utiliser ce mécanisme, il devra réimplémenter cette fonction ainsi que vXBeeFreePkt().
Il pourra alors utiliser le paramètre direction pour différencier le mécansime d'allocation.
xbee | pointeur sur le contexte |
direction | permet de diférencier le mécanisme d'allocation conforme à eXBeeDirection (inutilisé par défaut) |
len | taille en octet du buffer demandé |
void* pvXBeeGetUserContext | ( | xXBee * | xbee | ) |
#include <xbee.h>
Renvoie le pointeur contexte utilisateur.
Le contexte xbee dispose d'un pointeur void * permettant à l'utilisateur d'y attacher des donnnées spécifiques.
xbee | pointeur sur l'objet XBee |
const char* sXBeeAssociationStatusToString | ( | uint8_t | status | ) |
#include <xbee.h>
Message explicite associé à un status d'asssociation (Commande AT AI)
status | status |
const char* sXBeeModemStatusToString | ( | uint8_t | status | ) |
#include <xbee.h>
Message explicite associé à un status de modem (message 0x8A)
status | status |
const char* sXBeeTransmitStatusToString | ( | uint8_t | status | ) |
#include <xbee.h>
Message explicite associé à un status de transmission (message 0x8B)
status | status |
uint8_t ucXBeePktType | ( | xXBeePkt * | pkt | ) |
uint16_t usXBeePktLength | ( | xXBeePkt * | pkt | ) |
#include <xbee.h>
Taille du paquet en octets.
Cette valeur correspond au champs length de la trame, cette taille est donc comprise entre les champs length et crc exclus.
#include <xbee.h>
Libère un paquet alloué avec pvXBeeAllocPkt()
Par défaut, AvrIO utilise free(). Si l'utilisateur ne souhaite pas utiliser ce mécanisme, il devra réimplémenter cette fonction ainsi que pvXBeeAllocPkt().
void vXBeeSetCB | ( | xXBee * | xbee, |
eXBeeCbType | cb_type, | ||
iXBeeRxCB | cb | ||
) |
#include <xbee.h>
Modifie un gestionnaire de réception.
Cette bibliothèque gère la réception de tous les types de paquets énumérés par eXBeePktType. Cette fonction permet à l'utilisateur d'installer ces propres fonctions gérant chaque événement.
Si un paquet est reçu et qu'il n'y a pas de gestionnaire correspondant à son type, il est tout simplement détruit.
void vXBeeSetUserContext | ( | xXBee * | xbee, |
void * | pvContext | ||
) |
#include <xbee.h>
Modifie le contexte utilisateur.
Le contexte xbee dispose d'un pointeur void * permettant à l'utilisateur d'y attacher des donnnées spécifiques.
xbee | pointeur sur l'objet XBee |
pvContext | contexte de l'utilisateur |
xXBee* xXBeeOpen | ( | const char * | pcDevice, |
xSerialIos * | xIos, | ||
eXBeeSeries | series | ||
) |
#include <xbee.h>
Ouverture d'un module XBee.
Cette fonction doit être appellée avant toute utilisation du contexte xbee.
series | Modèle du module utilisé |
fd | descripteur de fichier du port série ouvert en lecture-écriture connecté au module XBee, doit être ouvert en mode non-bloquant. |