GithubHelp home page GithubHelp logo

zakkemble / gprs_c_sdk Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ai-thinker-open/gprs_c_sdk

20.0 2.0 12.0 30.14 MB

Ai-Thinker A9/A9G GPRS (with GPS(A9G)) module C development SDK

License: MIT License

Makefile 6.08% C 64.63% Batchfile 0.51% Shell 1.09% C++ 16.17% CMake 1.28% Ruby 5.79% Python 1.62% Perl 2.83%

gprs_c_sdk's Introduction

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

Average time to resolve an issue Percentage of issues still open

(一) 硬件

1. A9: GPRS 模块


特征
  • 32位内核,主频高达312MHz,4k指令缓存,4k数据缓存
  • 多达29个GPIO(两个GPIO作为下载口)
  • 实时时钟、闹钟
  • 1个USB1.1接口
  • 2个带流控的UART接口(+1个下载调试串口)
  • 2个SPI接口
  • 3个I2C接口
  • 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_TXHST_RX引脚

5. 电源

  • 可以用锂电池来给模块供电,接VBAT(3.4~4.2V),VBAT供电需要长按(拉低)power-key开机;
  • 开发板也可使用5V接VUSB经过开发板的DC-DC降压后供电,USB转串口模块直接供电也行(仅调试),要保证有足够的电流供应(峰值2A), 因为VUSB接了电所以模块上电会自动开机

(二) SDK特征

  1. 提供易用的API,只要有C语言开发基础就可以快速使用,并提供详细的例程文档
  2. 集成大量功能,包括:
    • 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. 下载代码

需要注意的是:请勿使用本页面右上角的绿色Clone or download按钮下载的压缩包,否则编译会报文件缺失的错误



  • 方法二:使用如下命令克隆工程到本地(需先安装git注意克隆时需要加--recursive参数,不然获得的SDK文件不全)。

    这种方式可以得到最新的还未发布的代码

git clone https://github.com/Ai-Thinker-Open/GPRS_C_SDK.git --recursive

2. 检查代码完整性

下载完后请检查目录platform/csdk目录写是否包含debugrelease目录。 如果没有,则是下载方式错误,请仔细阅读第一步下载正确的文件

(三) 开发文档及例程

文档地址: GPRS C SDK 在线文档

包括开发环境安装、固件下载、调试以及GPRS基础知识、API说明等

例程在本项目的demo目录下

(四) 反馈

这里(issue)可以查看搜索正在讨论或者已经解决的问题

反馈方式:

(五) 参与开发

bug修复、优化、功能模块增加: fork -> 修改 -> 提交PR

gprs_c_sdk's People

Contributors

442534820 avatar a710450641 avatar huangxunyan avatar khaledbenh avatar neutree avatar petrynchyn avatar punee995 avatar zakkemble avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

gprs_c_sdk's Issues

Coolwatcher fail to burn A9G

Hi.
Please let me know any advice on this.
I have 5 days stucked on this, trying to set the A9G flashing enviroment. This has been a real pain because official site is outdated about software.

I downloaded your fies for windows:
[CSDTK42_Update2_18_7_27.7z]
[GPRS_C_SDK_V2129.zip]

I put them in C: root, using folder names:
CSDTK
GPRS_C_SDK

Later on CSDTK I run "config_env_admin" as administrator, which finisk OK.
Later on GPRS_C_SDK folder I open a POWER SHELL WINDOW and run "./build.bat app" which also finish OK.
I compiled the program call from DEMO folder which finished OK also.

Later on coolwatcher I select the flash Programmer as host_8955_flsh_spi32m_ramrun.lod
And finally select the compiled file, CALL (from demo folder): C:/GPRS_C_SDK/hex/call/call_B2129_debug.lod

But when I press the burn button (launch fastpf), I get several errors and the process stops:

image

image

I´m using Windows 11, a PROLIFIC cable and the latest driver taken from PROLIFIC page. The cable look fine when checked on Windows device manager.

Any idea why this error ?

1. SDK version(SDK 版本)

{

}


2. In what kind of operation problems appear, and how to reproduce the problem ?(什么样的操作步骤问题会出现,是否是稳定复现,如何复现问题?)

{

}


Corrupted NMEA messages might mess up the GPS parser

The GPS parser looks for the VTG NMEA message in each NMEA frame received from the GPS receiver to determine the end of the frame (this isn't very good since VTG can be in different places depending on what receiver is used). If the message ID "VTG" or the new line at the end of the VTG message "\r\n" is corrupted, like from GSM interference on the UART lines, the parser won't find the message and the buffer is left unchanged since it doesn’t think the entire NMEA frame has been received yet. If the VTG message is corrupted for a few frames in a row then the buffer will fill up and is never cleared, and new frames won't be added to the buffer and processed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.