Ai-Thinker GPRS C SDK
Ai-Thinker GPRS SoC development SDK written by C
安信可GPRS模組片上(SoC)開發SDK C語言版
This SDK can be also applied to RDA8955 raw chip 也可直接在RDA8955芯片上運行
English Readme
(一) 硬件
1. A9: GPRS 模塊

特徵
- 32位內核,主頻高達312MHz,4k指令緩存,4k數據緩存
- 多達29個GPIO(兩個GPIO作為下載口)
- 實時時鐘、鬧鐘
- 1個USB1.1接口
- 2個帶流控的UART接口(+1個下載調試串口)
- 2個SPI接口
- 3個I 2 C接口
- 1個SDMMC控制器(接口)
- 2個10位ADC接口
- 32Mb(4MB) SPI NOR Flash
- 32Mb(4MB) DDR PSRAM
- 8kHz、13Bits/sample ADC mic
- 48kHz、16bits/sample DAC Audio
- 電源管理單元:鋰電池充電管理、集成DC-DC及LDOs、可變化的IO電壓
- 18.8 x 19.2 mm SMD封裝
- 四頻GSM/GPRS(800/900/1800/1900MHz)
- 語音通話
- 短信服務
2. A9G: GPRS+GPS+BDS模塊

特徵
- A9所有特徵
- 集成GPS+BDS(內部和GPRS串口2連接)
3. A9/A9G GPRS(+GPS+BDS) 開發板

A9/A9G開發板,方便開發和調試
特徵
- 1個A9G模塊(A9和A9G採用相同封裝,引腳相同,所以開發板通用)
- 引出模塊29個GPIO(包括2個下載調試引腳(
HST_TX , HST_RX ) - 1個SIM卡(Micro卡)卡槽(Nano卡<Micro卡<標準卡)
- 1個TF卡卡槽
- 1個GPRS IPEX1代座子
- 1個GPS IPEX1代座子
- 一個USB接口
- 5v-4.2V DC-DC,故可以5v供電或者3.8~4.2V供電
- 1個加速度計LIS3DHx芯片(購買時請諮詢客服開發板有無加速度計,默認沒有)
- 1個開機按鍵,1個複位按鍵
- 2個連接到GPIO的LED燈
- 1個麥克風
pudding開發板引腳圖

RDA8955芯片或者其相關模塊理論上也可使用本SDK
4. USB轉串口模塊

需要注意的是,開發板上的USB接口不是USB轉串口功能,而是USB1.1功能, 所以,為了下載和調試,需要一個USB轉串口模塊接板子上的HST_TX和HST_RX引腳
5. 電源
- 可以用鋰電池來給模塊供電,接VBAT(3.4~4.2V),VBAT供電需要長按(拉低) power-key開機;
- 開發板也可使用5V接VUSB經過開發板的DC-DC降壓後供電,USB轉串口模塊直接供電也行(僅調試),要保證有足夠的電流供應(峰值2A), 因為VUSB接了電所以模塊上電會自動開機
(二) SDK特徵
- 提供易用的API,只要有C語言開發基礎就可以快速使用,並提供詳細的例程和文檔
- 集成大量功能,包括:
- GPIO
- UART
- 基礎信息獲取如ICCID、IMEI、IMSI等
- SPI
- I2C
- ADC
- OS
- FS
- GPRS網絡(包括基站信息查詢)
- 基站定位(LBS)
- socket(TCP/UDP)
- dns
- SSL/TLS
- MQTT
- 簡訊
- 通話
- 低功耗
- GPS
- RTC、基站時間同步
- FOTA
- 看門狗
- 音頻播放(如播放MP3)
- 機智雲平台快速接入
- 阿里雲CSDK
- 其它庫如json、NMEA解析庫等等,具體可以看
demo目錄或者libs目錄
獲得SDK
代碼託管在github上
1. 下載代碼
- 方法一:從github發布頁面下載最新發布的壓縮包(推薦)。
這種方式獲取的代碼的發布的版本
- 方法二:使用如下命令克隆工程到本地(需先安裝
git )。這種方式可以得到最新的還未發布的代碼
git clone https://github.com/Ai-Thinker-Open/GPRS_C_SDK.git
2. 檢查代碼完整性
下載完後請檢查目錄platform/csdk目錄寫是否包含debug 、 release目錄。 如果沒有,則是下載方式錯誤,請仔細閱讀第一步下載正確的文件
(三) 開發文檔及例程
文檔地址: GPRS C SDK 在線文檔
包括開發環境安裝、固件下載、調試以及GPRS基礎知識、API說明等
例程在本項目的demo目錄下
(四) 反饋
在這裡(issue)可以查看搜索正在討論或者已經解決的問題
反饋方式:
(五) 參與開發
bug修復、優化、功能模塊增加: fork -> 修改-> 提交PR