充电桩网络开发--硬件篇

       很多物联网设备都是通过移动网络上网的,从GPRS到4G,现在最流行的是4G CAT1通信标准,此篇文章使用simcom公司生产的A7630C为例,介绍4G模块在充电桩领域的应用。

       A7630C模块和其他的移动模块都是一样的,包含uart,usb,io等外围资源,和主控芯片主要是通过usb或者uart,使用AT指令实现通信,因为充电桩上的主控都是跑比较简单的RTOS或者是裸跑,实现usb驱动不是很容易,所以大多使用UART。因为充电桩使用4g模块只是传输简单的数据,数据量比较小,不需要太高的传输速率,UART接口足够满足要求。

      A7630c主要脚位及功能

1.模块开机

用户通过拉低 PWRKEY 引脚使模块开机。此引脚已在模块内部上拉到 VBAT
推荐客户在设计时,模块引脚处增加 TVS 管可以有效的增强模块的抗静电能力,推荐电路如下图:

       

 ※ 特别注意

如客户不需要上电自动开机,请不要在 PWRKEY RESET 上并联超过 10nF 的电容,否则上电检测到低电平会导致模块自动开机。 因 PWRKEY RESET 都有拉低开机功能,禁止开机流程中短时间内先后拉 PWRKEY RESET,否 则有可能导致开机异常。更详细的内容参考《硬件设计手册》

2.模块关机

强烈建议客户使用 PWRKEY 或者 AT+CPOF 进行关机,关机之后再对 VBAT 断电(特别是模块完全不需要工作的情况下),另外不能通过断开 VBAT 进行关机,这样可能会对 FLASH 造成损伤。
用户可以通过把 PWRKEY 信号拉低来关机,关机时序图如下图所示:
串口通信程序
mcu和a7630c之间使用串口通信,包括rx,tx,gnd。在软件上两种方式处理接收数据。
第一种  数据流
      需要开辟一个足够大的BUF,缓存接收到的数据,设置读数据指针。如果mcu运行RTOS,使用rtos的设备文件系统,可以很好的实现。创建一个任务来接收数据,可以按照需要读取一定长度的数据,然后进行解析。以下是实例代码
void recvtask()
{
  while(1)
  {
     read(uart); //读取数据
     delay(100);//延时
     parsedata(); //解析数据
  }
}
第二种  数据帧
    因为和A7630c之间是AT指令,At指令有一定的规范,它不是时刻在发送。一般是mcu主动发指令,a7630c才会相对应的回应。每次数据之间的有一定的时间间隔。我在资料里没有找到这个参数,我的项目里波特率115200,间隔时间取10ms。这样的话每收到一帧数据就按照a630c的格式取解析就可以了。当接收数据多,接收不过来,出现丢帧的情况,有两种办法解决,第一提供接收程序的运行速度,第二,可以设置多个接收buf。
A7630模块经常出现的问题及解决方案
  • 断网重连
  • 数据重发机制

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智光实验室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值