Прежде всего, основываясь на стиле вашего поста, я просто хочу предупредить вас, что нет никакого способа, кроме как погуглить к черту ваш щит и биться головой о стену, чтобы понять, как использовать то, что вы только что купленный. В следующем посте я напишу ответы на все ваши вопросы, и это даст вам фору, но вам все равно придется гуглить все, что вы не понимаете, и попробовать все это до .. навсегда.
Если вы еще не попрактиковались в arduino, прочтите «начало работы с arduino».
1.) Есть несколько тестов, которые вы можете сделать. Вот учебник с AT-командами, которые вы можете использовать для программирования вашего щита . Я рекомендую загрузить «последовательное реле для AT-команд» на вашу плату Arduino, а затем попытаться отправить или получить текстовое сообщение от вашего Arduino. Вот последовательное реле, которое я использовал. Обратите внимание, что этот код не будет работать с вашим шилдом, потому что контакты tx/rx настроены по-другому. (На моем шилде --seeedstudio GPRS 2.0 контакты tx и rx настроены на контакты 7 и 8. На вашем они настроены на 1-6.) К счастью для вас, установка контактов на вашем шилде, вероятно, позволит вам использовать примеры библиотеки GSM, которые поставляются с IED Arduino.
//Serial Relay - Arduino will patch a
//serial link between the computer and the GPRS Shield
//at 19200 bps 8-N-1
//Computer is connected to Hardware UART
//GPRS Shield is connected to the Software UART
#include <SoftwareSerial.h>
SoftwareSerial GPRS(7, 8);
unsigned char buffer[64]; // buffer array for data recieve over serial port
int count=0; // counter for buffer array
void setup()
{
GPRS.begin(19200); // the GPRS baud rate
Serial.begin(19200); // the Serial port of Arduino baud rate.
}
void loop()
{
if (GPRS.available()) // if date is comming from softwareserial port ==> data is comming from gprs shield
{
while(GPRS.available()) // reading data into char array
{
buffer[count++]=GPRS.read(); // writing data into array
if(count == 64)break;
}
Serial.write(buffer,count); // if no data transmission ends, write buffer to hardware serial port
clearBufferArray(); // call clearBufferArray function to clear the storaged data from the array
count = 0; // set counter of while loop to zero
}
if (Serial.available()) // if data is available on hardwareserial port ==> data is comming from PC or notebook
GPRS.write(Serial.read()); // write it to the GPRS shield
}
void clearBufferArray() // function to clear buffer array
{
for (int i=0; i<count;i++)
{ buffer[i]=NULL;} // clear all index of array with command NULL
}
2.) загрузите последовательное реле (для отправки AT-команд прямо с клавиатуры) или вставьте его в свой код Arduino, как это делается в примерах GSM. Чтобы использовать последовательное реле, прочитайте эту статью о основы терминала. (Познакомьтесь поближе с sparkfun.com. Это отличный веб-сайт. А также инструкции и adafruit).
3.) В библиотеке GSM на вашем IDE есть пример кода, который должен работать на вашем шилде. Или вы можете сделать это с помощью команд at в терминале после настройки последовательного реле. Команды для этого должны быть в ссылке, которую я дал вам в ответе 1.
Еще одна мысль, которая меня на какое-то время сбила с толку: убедитесь, что у вас есть правильный тарифный план и соответствующий APN для вашей сим-карты. Я использую гофон ATT, поэтому apn wap.cingular.
Удачи.
person
Goodword
schedule
21.10.2014