说明
连接到指定的接入点名称 (APN) 以启动 GPRS 通信。
每个蜂窝提供商都有一个接入点名称 (APN),用作蜂窝网络和互联网之间的桥梁。有时,存在与连接点关联的用户名和密码。例如,Bluevia APN 是 bluevia.movistar.es,但它没有密码或登录名。
此页面列出了一些承运人的信息,但可能不是最新的。您可能需要从您的服务提供商处获取此信息。
用法
grps.attachGPRS(APN, user, password)
参数
APN:char 数组,移动操作符提供的接入点名称(APN)用户:char 数组,APN 的用户名密码:char 数组,访问 APN 的密码
返回
错误、空闲、连接、GSM_READY、GPRS_READY、TRANSPARENT_CONNECTED
示例
#include <MKRGSM.h>
// PIN Number
#define PINNUMBER ""
// APN data
#define GPRS_APN "GPRS_APN" // replace your GPRS APN
#define GPRS_LOGIN "login" // replace with your GPRS login
#define GPRS_PASSWORD "password" // replace with your GPRS password
// initialize the library instance
GPRS gprs;
GSM gsmAccess; // include a 'true' parameter for debug enabled
GSMServer server(80); // port 80 (http default)
// timeout
const unsigned long __TIMEOUT__ = 10*1000;
void setup()
{
// initialize serial communications
Serial.begin(9600);
// connection state
boolean notConnected = true;
// Start GSM shield
// If your SIM has PIN, pass it as a parameter of begin() in quotes
while(notConnected)
{
if((gsmAccess.begin(PINNUMBER)==GSM_READY) &
(gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD)==GPRS_READY))
notConnected = false;
else
{
Serial.println("Not connected");
delay(1000);
}
}
Serial.println("Connected to GPRS network");
// start server
server.begin();
//Get IP.
IPAddress LocalIP = gprs.getIPAddress();
Serial.println("Server IP address=");
Serial.println(LocalIP);
}
void loop() {
// listen for incoming clients
GSM3MobileClientService client = server.available();
if (client)
{
while (client.connected())
{
if (client.available())
{
Serial.println("Receiving request!");
bool sendResponse = false;
while(char c=client.read()) {
if (c == '\n') sendResponse = true;
}
// if you've gotten to the end of the line (received a newline
// character)
if (sendResponse)
{
// send a standard http response header
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println();
client.println("<html>");
// output the value of each analog input pin
for (int analogChannel = 0; analogChannel < 6; analogChannel++) {
client.print("analog input ");
client.print(analogChannel);
client.print(" is ");
client.print(analogRead(analogChannel));
client.println("<br />");
}
client.println("</html>");
//necessary delay
delay(1000);
client.stop();
}
}
}
}
}
相关用法
- Arduino MKRGSM - gsm.shutdown()用法及代码示例
- Arduino MKRGSM - gsm.begin()用法及代码示例
- Arduino MKRGSM - grps.ping()用法及代码示例
- Arduino MKRGSM - sms.read()用法及代码示例
- Arduino MKRGSM - sms.print()用法及代码示例
- Arduino MKRGSM - client.connected()用法及代码示例
- Arduino MKRGSM - voice.answerCall()用法及代码示例
- Arduino MKRGSM - voice.hangCall()用法及代码示例
- Arduino MKRGSM - sms.write()用法及代码示例
- Arduino MKRGSM - modem.getIMEI()用法及代码示例
- Arduino MKRGSM - sms.available()用法及代码示例
- Arduino MKRGSM - client.available()用法及代码示例
- Arduino MKRGSM - client.stop()用法及代码示例
- Arduino MKRGSM - voice.voiceCall()用法及代码示例
- Arduino MKRGSM - GSM构造函数用法及代码示例
- Arduino MKRGSM - sms.endSMS()用法及代码示例
- Arduino MKRGSM - sms.peek()用法及代码示例
- Arduino MKRGSM - sms.beginSMS()用法及代码示例
- Arduino MKRGSM - voice.retrieveCallingNumber()用法及代码示例
- Arduino MKRGSM - client.connect()用法及代码示例
- Arduino MKRGSM - client.read()用法及代码示例
- Arduino MKRGSM - sms.flush()用法及代码示例
- Arduino MKRGSM - sms.remoteNumber()用法及代码示例
- Arduino MKRGSM - voice.getVoiceCallStatus()用法及代码示例
- Arduino MKRNB - getCurrentCarrier()用法及代码示例
注:本文由纯净天空筛选整理自arduino.cc大神的英文原创作品 MKRGSM - gprs.attachGPRS()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。