Bibliothèque pour configurer les broches EndDevice Loramesh GPIO, en demandant et en envoyant des données à partir de / vers les nœuds. Il était basé sur la bibliothèque de Radioenge suivante
Téléchargez tous les fichiers de cette racine et incluez-les dans votre projet. Cette étape est obligatoire pour les utiliser avec STM8L Discovery Board et votre "bibliothèque périphérique standard".
Comme STM8L152C6T6 n'a qu'une seule interface USART et que le module Loramesh en a deux, le choix dont l'interface sera utilisée via la connexion matérielle. Il est possible de choisir deux façons de configurer USART: en utilisant Arduino par défaut ou en utilisant des configurations manuelles. Le mode par défaut d'Arduino fonctionne bien avec le module Lora Mesh. Pour les configurations manuelles, vous pouvez utiliser les types définis dans "STM8L15X_USART" fournis par ST.
//Easy way
uint32_t baudrate = 9600 ;
ArduinoSerialCommandsInit ( baudrate );
//Manual
/* USART configured as follow:
- BaudRate = 9600 baud
- Word Length = 8 Bits
- One Stop Bit
- No parity
*/
SerialCommandsInit ( 9600 , USART_WordLength_8b , USART_StopBits_1 , USART_Parity_No );Les fonctionnalités principales de la bibliothèque sont basées sur les fonctions pour demander et envoyer des données à l'aide des broches connectées à d'autres modules réseau.
/* GpioConfig */
GpioConfig ( NODEID , PIN , GPIOMODE , PULL_R_TYPE );
/* GpioWrite */
GpioWrite ( NODEID , PIN , ValueForWrite );
/* GpioRead */
GpioRead ( NODEID , PIN , & ReturnedValue );Configurez les broches GPIO avec les modes suivants:
/* DIGITAL_IN */
GpioConfig ( NODEID , PIN , DIGITAL_IN , PULL_R_TYPE );
/* DIGITAL_OUT */
GpioConfig ( NODEID , PIN , DIGITAL_OUT , PULL_R_TYPE );
/* ANALOG_IN */
GpioConfig ( NODEID , PIN , ANALOG_IN , PULL_R_TYPE );Configurer les résistances de traction avec les types suivants
/* PULL_OFF */
GpioConfig ( NODEID , PIN , DIGITAL_IN , PULL_OFF );
/* PULLUP */
GpioConfig ( NODEID , PIN , DIGITAL_OUT , PULLUP );
/* PULLDOWN */
GpioConfig ( NODEID , PIN , ANALOG_IN , PULLDOWN );Le rendement de la demande de données est donné par l'état suivant pour indiquer une erreur ou non:
/* MESH_OK */
while ( LocalRead ( & localId , & localNet , & localUniqueId ) != MESH_OK );
/* MESH_ERROR */
if ( GpioRead ( NODEID , PIN , & ReturnedValue ) == MESH_ERROR ){
//Invalid value
}Un exemple de code peut être téléchargé à partir de cette racine en suivant les instructions.
Description complète de la documentation ici.
Lisez ce guide.
@vjpamorim | @Radiogen |
|---|
@Marcoaoc |
|---|
Aimez-vous cette bibliothèque? Veuillez jouer ce projet sur Github!