21 #ifndef _AVRIO_WUSB_SENSOR_H_ 22 #define _AVRIO_WUSB_SENSOR_H_ 24 #include <avrio/wusb/net/network.h> 114 #if defined(__DOXYGEN__) 262 typedef struct xWSensorConfig {
272 typedef struct xWusbSensor {
275 xWSensorConfig xConfig;
285 extern xWusbSensor dSensor;
288 __STATIC_ALWAYS_INLINE (
void 294 __STATIC_ALWAYS_INLINE (
bool 297 return xWPktBit (dSensor.xConfig.ucFlags, eFlag);
300 __STATIC_ALWAYS_INLINE (
bool 306 __STATIC_ALWAYS_INLINE (
bool 312 __STATIC_ALWAYS_INLINE (uint16_t
315 return dSensor.xConfig.usDeviceId;
318 __STATIC_ALWAYS_INLINE (
void 321 vWPktSetBit (&dSensor.xConfig.ucFlags, eFlag, xValue);
324 __STATIC_ALWAYS_INLINE (
void 331 __STATIC_ALWAYS_INLINE (
void 337 __STATIC_ALWAYS_INLINE (
void 343 __STATIC_ALWAYS_INLINE (
void 349 __STATIC_ALWAYS_INLINE (
void 355 __STATIC_ALWAYS_INLINE (
void 361 __STATIC_ALWAYS_INLINE (
void 368 int iSensorTestPing (uint16_t usCount, uint16_t usInterval,
369 xWNetTestResult * pxResult);
371 # define iSensorTestPing(c,i,r) (0)
void vWSensorDataClear(void)
Efface les données à envoyer au hub et prépare le prochain paquet DATA.
bool xWPktBit(uint8_t Byte, uint8_t Bit)
Renvoie l'état du bit de rang Bit de l'octet Byte.
void vWNetTxPktAddByte(uint8_t ucByte)
Ajoute un octet au paquet TX.
int iWSensorDataSend(bool Synchronous)
Transmission/Réception de données vers le hub Cette fonction effectue les opérations suivantes: ...
void vWSensorDataAddStr(const char *pcStr)
Ajoute une chaîne de caractères aux données à transmettre au hub Le zéro final n'est pas ajouté au pa...
eWSensorFlags
Indice des bits de mode et d'état utilisés par un capteur.
uint8_t ucWSensorBackDataPayloadLength(void)
Renvoie le nombre d'octets renvoyés par le hub lors de la dernière transmission.
void vWSensorSleep(bool xSleep)
Endort ou réveille le module WirelessUSB afin d'économiser de l'énergie Le module est à l'état statiq...
void vWNetTxPktAddWord(uint16_t usWord)
Ajoute un mot de 16 bits au paquet TX.
uint8_t * pucWSensorBackDataPayload(void)
Renvoie un pointeur sur les données renvoyées par le hub lors de la dernière transmission.
void vWSensorInit(eWDevDataRate DataRate)
Initialisation de la couche application capteur WirelessUSB™.
void vWSensorSetAutoSeededBind(bool xEnable)
Autorise le BIND rapide automatique en cas de retrait du réseau par le hub.
void vWSensorDataAddWord(uint16_t ucWord)
Ajoute un mot de 16 bits aux données à transmettre au hub.
bool xWSensorBound(void)
Indique si le sensor est intégré à un réseau.
bool xWSensorAutoSeededBind(void)
Indique si le BIND rapide automatique en cas de retrait du réseau par le hub est autorisé.
void vWPktSetBit(uint8_t *Byte, uint8_t Bit, bool xValue)
Modifie l'état du bit de rang Bit de l'octet pointé par Byte.
void vWSensorDataAddBytes_P(const uint8_t *pucData, uint8_t ucLength)
Ajoute des octets stockés en mémoire programme aux données à transmettre au hub.
eWSensorError
Codes d'erreurs d'un capteur.
bool xWSensorFlag(eWSensorFlags eFlag)
Teste un bit d'état d'indice eFlag.
void vWNetTxPktAddBytes(const uint8_t *pucBytes, uint8_t ucLength)
Ajoute une suite d'octets au paquet TX.
eWDevDataRate
Différentes vitesse de transmission.
void vWSensorSleepCB(eWSensorError eError)
Gestionnaire d'endormissement Cette fonction doit être implémentée par l'utilisateur. Elle est appellée lorsque le hub ne répond pas ou plus.
void vWNetTxPktAddStr(const char *pcStr)
Ajoute une chaîne de caractères à zéro terminal au paquet TX Le zéro final n'est pas ajouté au paquet...
uint16_t usWSensorDeviceId(void)
Renvoie le Device ID attribué par le hub (WNET_INVALID_DEVICEID si invalide)
void vWNetTxPktAddBytes_P(const uint8_t *pucBytes, uint8_t ucLength)
Ajoute une suite d'octets résidant en mémoire programme au paquet TX.
void vWDevSleep(bool Sleep)
Endort ou réveille le module afin d'économiser de l'énergie Le module est à l'état statique...
void vWSensorDataAddBytes(const uint8_t *pucData, uint8_t ucLength)
Ajoute des octets aux données à transmettre au hub.
void vWSensorDataAddStr_P(const char *pcStr)
Ajoute une chaîne de caractères stockée en mémoire programme aux données à transmettre au hub Le zéro...
void vWSensorDataAddByte(uint8_t ucByte)
Ajoute un octet aux données à transmettre au hub.
void vWSensorBind(bool Seeded)
Intègre le capteur au réseau WirelessUSB™ Envoie des paquets BIND REQUEST à la recherche d'un hub...
void vWNetTxPktAddStr_P(const char *pcStr)
Ajoute une chaîne de caractères à zéro terminal résidant en mémoire programme au paquet TX Le zéro fi...