Perpustakaan untuk mengonfigurasi enddevice loramesh gpio pin, meminta dan mengirim data dari/ke node. Itu didasarkan pada perpustakaan radioenge berikut
Unduh semua file dari root ini dan sertakan ke dalam proyek Anda. Langkah ini wajib untuk menggunakannya dengan papan penemuan STM8L dan "Perpustakaan Periferal Standar" Anda.
Karena STM8L152C6T6 hanya memiliki satu antarmuka USART dan modul Loramesh memiliki dua, pilihan antarmuka mana yang akan digunakan akan dilakukan melalui koneksi perangkat keras. Dimungkinkan untuk memilih dua cara untuk mengonfigurasi USArt: menggunakan Arduino default atau menggunakan konfigurasi manual. Mode default Arduino bekerja dengan baik dengan modul Lora Mesh. Untuk konfigurasi manual Anda dapat menggunakan jenis yang ditentukan dalam "STM8L15X_USART" yang disediakan oleh 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 );Fitur utama perpustakaan didasarkan pada fungsi untuk meminta dan mengirim data menggunakan pin yang terhubung ke modul jaringan lainnya.
/* GpioConfig */
GpioConfig ( NODEID , PIN , GPIOMODE , PULL_R_TYPE );
/* GpioWrite */
GpioWrite ( NODEID , PIN , ValueForWrite );
/* GpioRead */
GpioRead ( NODEID , PIN , & ReturnedValue );Konfigurasikan pin GPIO dengan mode berikut:
/* 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 );Konfigurasikan resistor tarik dengan jenis berikut
/* PULL_OFF */
GpioConfig ( NODEID , PIN , DIGITAL_IN , PULL_OFF );
/* PULLUP */
GpioConfig ( NODEID , PIN , DIGITAL_OUT , PULLUP );
/* PULLDOWN */
GpioConfig ( NODEID , PIN , ANALOG_IN , PULLDOWN );Pengembalian permintaan data diberikan oleh status berikut untuk menunjukkan kesalahan atau tidak:
/* MESH_OK */
while ( LocalRead ( & localId , & localNet , & localUniqueId ) != MESH_OK );
/* MESH_ERROR */
if ( GpioRead ( NODEID , PIN , & ReturnedValue ) == MESH_ERROR ){
//Invalid value
}Contoh kode dapat diunduh dari root ini mengikuti instruksi.
Deskripsi dokumentasi lengkap di sini.
Baca panduan ini.
@vjpamorim | @Radioenge |
|---|
@Marcoaoc |
|---|
Apakah Anda menyukai perpustakaan ini? Silakan bintangi proyek ini di GitHub!