Arduino 3G shield using SoftwareSerial to control
On the 3G shield, by default the power pin is on D8 and reset pin is on D9. Make it HIGH then it works.
if you want to play this 3G shield using SoftwareSerial on Arduino,
Try this code:
/* Change UART control ports from Tx0 / Rx1 to Tx2 / Rx3 using SoftwareSerial
And reserve Tx0 / Rx1 for debugging */ #include <SoftwareSerial.h> #define rxPin 6
#define txPin 7 #define power_pin 8
#define reset_pin 9 SoftwareSerial mySerial(rxPin, txPin); // RX, TX char AtCommand[] = "ATI\r";
void setup()
{
// Open serial communications and wait for port to open:
Serial.begin();
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT); // power on 3G module automatically
pinMode(power_pin, OUTPUT);
digitalWrite(power_pin, HIGH); delay(); Serial.println(AtCommand); // set the data rate for the SoftwareSerial port
mySerial.begin();
mySerial.println(AtCommand);
//mySerial.write(AtCommand);
} void loop() // run over and over
{
if (mySerial.available())
{
Serial.write(mySerial.read());
}
if (Serial.available())
{
mySerial.write(Serial.read());
}
}
if you play with this 3G shield, and you want to enable power at the setup, and change the baud rate from 115200 to 9600 on your arduino when communicating with chip SIM5126E.
Try this code:
/* Change UART control ports from Tx0 / Rx1 to Tx2 / Rx3 using SoftwareSerial
And reserve Tx0 / Rx1 for debugging */
#include <SoftwareSerial.h> #define rxPin 6
#define txPin 7
#define baudrate 9600 #define power_pin 8
#define reset_pin 9 SoftwareSerial mySerial(rxPin, txPin); // RX, TX char AtCommand[] = "ATI\r";
void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(baudrate);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
pinMode(rxPin, INPUT);
pinMode(txPin, OUTPUT); Serial.println(AtCommand); // set the data rate for the SoftwareSerial port
Serial.println("wait 5s for modem to wake up"); // power on 3G module automatically
pinMode(power_pin, OUTPUT);
digitalWrite(power_pin, HIGH); delay();
mySerial.begin();
mySerial.println("AT+IPR=9600\r\n"); // chnage baudrate to 9600 baud Serial.println("Changing baudrate");
mySerial.begin(baudrate);
mySerial.println(AtCommand);
} void loop() // run over and over
{
if (mySerial.available())
{
Serial.write(mySerial.read());
}
if (Serial.available())
{
mySerial.write(Serial.read());
}
}
Arduino 3G shield using SoftwareSerial to control的更多相关文章
- Arduino 3g shield using GSM bought from ITead
This is an old arduino 3G module bought half years ago. Its wiki: http://wiki.iteadstudio.com/ITEAD_ ...
- Arduino UNO开发板、Arduino CNC Shield V3.0扩展板、A4988驱动板、grbl固件使用教程
前言 CNC Shield V3.0可用作雕刻机,3D打印机等的驱动扩展板,板上一共有4路步进电机驱动模块的插槽,可驱动4路不进电机,而每一路步进电机都只需要2个IO口,也就是说,6个IO口就可以很好 ...
- Welcome to LED Control Wiki
About this project This project was developed after I had to find out that controlling my RGB ambien ...
- 一百元的智能家居——Asp.Net Mvc Api+讯飞语音+Android+Arduino
大半夜的,先说些废话提提神 如今智能家居已经不再停留在概念阶段,高大上的科技公司都已经推出了自己的部分或全套的智能家居解决方案,不过就目前的现状而言,大多还停留在展厅阶段,还没有广泛的推广起来,有人说 ...
- Arduino 学习
Arduino 背景可以参考官方网站www.arduino.cc 先看一个最简单的示例程序: 打开 Arduino IDE , 选择菜单:文件 -> 示例 -> 01.Basics -&g ...
- Arduino Nano + WIZ550io = 简易上网
我爱Arduino Nano – 这是一个非常好外形小巧却功能齐全的Arduino Uno.然而.当我去将它连接到互联网,全部的干净利落小巧也消失在大尺寸的以太网盾底下了. 只是,我近期发现了一个更好 ...
- 用Arduino做一个可视化网络威胁级别指示器!
在当今世界,网络监控器是非常重要的.互联网是个可怕的地方.人们已经采取措施以提高警戒----他们安装了入侵检测系统(IDS)比如SNORT. 通过把可视化部分从电脑中移出来,我们想让它更容易去观察.一 ...
- Arduino 网络时钟client
升级! 添加了12h/24h 的开关,还有标准/ 夏令时开关!见步骤7 & 步骤8. 你是否曾想要一个和办公室时间来源全然准确的表? 这就有一个网络的办公时间server,你能够根据它并同步你 ...
- 为什么Arduino独占鳌头并站稳脚跟?
出处: http://bbs.dfrobot.com.cn/thread-793-1-1.html 为什么Arduino独占鳌头并站稳脚跟? 每个月,我都会在<Make>杂志上发表几篇社论 ...
随机推荐
- SSAS系列——【08】多维数据(程序展现Cube)
原文:SSAS系列--[08]多维数据(程序展现Cube) 1.引用DLL? 按照之前安装的MS SQLServer的步骤安装完成后,发现在新建的项目中“Add Reference”时居然找不到Mic ...
- openfire修改服务器名称方法
1.登陆openfire管理页面,在主页面下方选择编辑属性,修改服务器名称为当前主机名称,点击保存属性,按页面提示重启服务器. 2.重启后,主页的服务器属性下的服务器名称出现一个叹号,鼠标放上去显示F ...
- PHP时间戳与时间相互转换(精确到毫秒)
原文:PHP时间戳与时间相互转换(精确到毫秒) /** 获取当前时间戳,精确到毫秒 */ function microtime_float(){ list($usec, $sec) = explo ...
- Java小知识点学习--------数组和位运算小知识点
位运算符: >>>无符号右移运算符,无符号右移的规则和右移的规则同样,仅仅是在填充时,无论原来是正数还是负数都用0来补充. 数组: arr1=arr2; 此时两个数组变量都会同一时 ...
- T-SQL: 17 个与日期时间相关的自定义函数(UDF),周日作为周的最后一天,均不受 @@DateFirst、语言版本影响!
原文:T-SQL: 17 个与日期时间相关的自定义函数(UDF),周日作为周的最后一天,均不受 @@DateFirst.语言版本影响! CSDN 的 Blog 太滥了!无时不刻地在坏! 开始抢救性搬家 ...
- RPL协议介绍
RPL是IPv6 Routing Protocol for Low-Power and Lossy Networks的简称. 低功耗及有损网络(LLN)是一类内部链接和路由器都受限的网络,该网络下的路 ...
- jQuery弹出窗口完整代码
jQuery弹出窗口完整代码 效果体验:http://keleyi.com/keleyi/phtml/jqtexiao/1.htm 1 <!DOCTYPE html PUBLIC "- ...
- Newtonsoft.Json 将C#对象转化为json格式
object To json public static string ObjectToJson(object obj) { JsonSerializerSettings jss = new Json ...
- gulp package.json
{ "name": "gulpAngular1", "version": "0.0.0", "dependen ...
- EntityFramework中支持BulkInsert扩展
EntityFramework中支持BulkInsert扩展 本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 前言 很显然,你应该不至于使用 Ent ...