Значит такой набор есть: TFT 3,2" тачскрин монитор, GSM шилд на базе TC35, Arduino Mega 1280.
Научил выводить на монитор (вырезка из общего скетча):
Код:
if(Serial1.available())
{
bgsm[bsm++]=tgsm[i++]=Serial1.read();
if (bsm>=40)
{
bsm=0;
}
}
myGLCD.setFont(SmallFont);
myGLCD.print(bgsm, 5, 175);
myGLCD.setFont(BigFont);
Отображает нормально, правда вместо пробелов квадраты шлет, но латинские ЗАГЛАВНЫЕ буквы отчетливо.
Для начала, самая простая задача - определить что пришла SMS
Приходит от GSM модема строка: +CMTI: "SM", 1
Т.е. , пришла SMS и записана по нумером 1.
Алгоритм придумал следующий: проверяем каждую переменную массива.
Например, в массиве в переменной под индексом i появилась эта буква, значит в переменной с индексом i+1 нужна буква M.
SMS всегда будет записываться в 1 ячейку, но в дальнейшем надо научить видеть в какую ячейку записана и открывать.
Проблема: как научить ардуину найти букву S? Пытался так:
Код:
if (bgsm[bsm]=='S')
{
myGLCD.print("S OK", CENTER, 120);
Serial1.println("AT+CMGD=1");
}
Общий кусок -
Код:
if(Serial1.available())
{
bgsm[bsm++]=tgsm[i++]=Serial1.read();
if (bsm>=40)
{
bsm=0;
}
if (bgsm[bsm]=='S')
{
myGLCD.print("S OK", CENTER, 120);
Serial1.println("AT+CMGD=1");
}
}
myGLCD.setFont(SmallFont);
myGLCD.print(bgsm, 5, 175);
myGLCD.setFont(BigFont);