perpustakaan Antarmuka seluler perpustakaan antarmuka seluler - Gratis RTOS

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

perpustakaan Antarmuka seluler perpustakaan antarmuka seluler

catatan

Konten pada halaman ini mungkin tidak up-to-date. Silakan lihat halaman perpustakaan FreeRtos.org untuk pembaruan terbaru.

Pengantar

Perpustakaan Antarmuka Seluler mengimplementasikan API terpadu sederhana yang menyembunyikan kompleksitas perintah AT khusus modem seluler dan mengekspos antarmuka seperti soket ke pemrogram C.

Sebagian besar modem seluler menerapkan lebih atau kurang dari perintah AT yang ditentukan oleh standar 3GPP TS v27.007. Proyek ini menyediakan implementasi seperti perintah AT standar dalam komponen umum dapat digunakan kembali. Tiga perpustakaan Antarmuka Seluler dalam proyek ini semua mengambil keuntungan dari kode umum itu. Pustaka untuk setiap modem hanya mengimplementasikan perintah AT khusus vendor, kemudian mengekspos API library Antarmuka Seluler yang lengkap.

Komponen umum yang mengimplementasikan standar 3GPP TS v27.007 telah ditulis sesuai dengan kriteria kualitas kode berikut:

  • Skor Kompleksitas GNU tidak lebih dari 8

  • MISRA C: 2012 standar pengkodean. Setiap penyimpangan dari standar didokumentasikan dalam komentar kode sumber yang ditandai dengan “coverity”.

Dependensi dan persyaratan

Tidak ada ketergantungan langsung untuk pustaka Antarmuka Seluler. Namun, Ethernet, Wi-Fi, dan seluler tidak dapat hidup berdampingan di tumpukan jaringan FreeRTOS. Pengembang harus memilih salah satu antarmuka jaringan untuk diintegrasikan dengan perpustakaan Secure Sockets.

Porting

Untuk informasi tentang mem-porting library Antarmuka Seluler ke platform Anda, lihat Memindahkan pustaka Antarmuka Seluler di Panduan Porting FreeRTOS.

Penggunaan memori

Ukuran Kode pustaka antarmuka seluler (contoh yang dihasilkan dengan GCC untuk ARM Cortex-M)
File Dengan Optimasi -O1 Dengan Optimasi -Os
cellular_3gpp_api.c 6.3K 5.7K
cellular_3gpp_urc_handler.c 0.9K 0.8K
cellular_at_core.c 1.4K 1.2K
cellular_common_api.c 0.5K 0.5K
cellular_common.c 1.6K 1.4K
cellular_pkthandler.c 1.4K 1.2K
cellular_pktio.c 1.8K 1.6K
Total perkiraan 13.9K 12,4K

Mulai

Unduh kode sumber sumber sumber sumber sumber sumber sumber sumber sumber

Kode sumber dapat diunduh sebagai bagian dari pustaka FreeRTOS atau dengan sendirinya.

Untuk mengkloning perpustakaan dari Github menggunakan HTTPS:

git clone https://github.com/FreeRTOS/FreeRTOS-Cellular-Interface.git

Menggunakan SSH:

git clone git@github.com:FreeRTOS/FreeRTOS-Cellular-Interface.git

Struktur folder folder struktur folder

Di root repositori ini Anda akan melihat folder ini:

  • source: kode umum yang dapat digunakan kembali yang mengimplementasikan perintah AT standar yang ditentukan oleh 3GPP TS v27.007

  • doc: dokumentasi

  • test: unit test dan cbmc

  • tools: alat untuk analisis statis Coverity dan CMock

Mengkonfigurasi dan membangun Pustaka

Pustaka Antarmuka Seluler perpustakaan Antarmuka Seluler harus dibangun sebagai bagian dari aplikasi. Untuk melakukannya, Anda harus memberikan konfigurasi tertentu. Proyek FreeRtos_Cellular_Interface_Windows_Simulator memberikan contoh cara mengkonfigurasi build. Informasi selengkapnya dapat ditemukan di Referensi API Seluler dapat ditemukan di Referensi API Seluler.

Silakan lihat halaman Antarmuka Seluler untuk informasi lebih lanjut.

Integrasikan perpustakaan Antarmuka Seluler dengan platform MCU

Perpustakaan Antarmuka Seluler berjalan pada MCU menggunakan antarmuka yang disarikan, Antarmuka Komunikasi, untuk berkomunikasi dengan modem seluler. Antarmuka Comm harus diimplementasikan pada platform MCU juga. Implementasi yang paling umum dari Comm Interface berkomunikasi melalui perangkat keras UART, tetapi dapat diimplementasikan melalui antarmuka fisik lainnya, seperti SPI, juga. Dokumentasi untuk Comm Interface dapat ditemukan di Cellular Library API Referensi. Contoh implementasi berikut dari Comm Interface tersedia: