Bibliothek zum Konfigurieren von Enddevice Loramesh GPIO -Pins, Anfordern und Senden von Daten von/an die Knoten. Es basierte auf der folgenden Radiolugh -Bibliothek
Laden Sie alle Dateien von diesem Root herunter und fügen Sie sie in Ihr Projekt ein. Dieser Schritt ist obligatorisch, sie mit STM8L Discovery Board und Ihrer "Standard -Peripherie -Bibliothek" zu verwenden.
Da STM8L152C6T6 nur eine USART -Schnittstelle hat und das Loramesh -Modul zwei hat, wird die Auswahl der Schnittstelle über die Hardwareverbindung getroffen. Es ist möglich, zwei Möglichkeiten zum Konfigurieren von USAArT zu wählen: Verwenden von Arduino -Standardeinstellungen oder mit manuellen Konfigurationen. Der Standardmodus von Arduino funktioniert gut mit dem Lora Mesh -Modul. Für manuelle Konfigurationen können Sie die in "STM8L15X_USart" definierten Typen verwenden, die von ST bereitgestellt werden.
//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 );Die Hauptfunktionen der Bibliothek basieren auf den Funktionen, um Daten mithilfe der mit anderen Netzwerkmodulen verbundenen Stifte anzufordern und zu senden.
/* GpioConfig */
GpioConfig ( NODEID , PIN , GPIOMODE , PULL_R_TYPE );
/* GpioWrite */
GpioWrite ( NODEID , PIN , ValueForWrite );
/* GpioRead */
GpioRead ( NODEID , PIN , & ReturnedValue );Konfigurieren Sie die GPIO -Stifte mit den folgenden Modi:
/* 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 );Konfigurieren Sie die Zugwiderstände mit den folgenden Typen
/* PULL_OFF */
GpioConfig ( NODEID , PIN , DIGITAL_IN , PULL_OFF );
/* PULLUP */
GpioConfig ( NODEID , PIN , DIGITAL_OUT , PULLUP );
/* PULLDOWN */
GpioConfig ( NODEID , PIN , ANALOG_IN , PULLDOWN );Die Datenanforderungsrendite erfolgt durch den folgenden Status, um Fehler anzuzeigen oder nicht:
/* MESH_OK */
while ( LocalRead ( & localId , & localNet , & localUniqueId ) != MESH_OK );
/* MESH_ERROR */
if ( GpioRead ( NODEID , PIN , & ReturnedValue ) == MESH_ERROR ){
//Invalid value
}Beispielcode kann aus diesem Root nach den Anweisungen heruntergeladen werden.
Vollständige Dokumentationsbeschreibung hier.
Lesen Sie diesen Leitfaden.
@vjpamorim | @Radioenge |
|---|
@Marcoaoc |
|---|
Gefällt dir diese Bibliothek? Bitte spiele dieses Projekt auf GitHub!