Значит такой набор есть: 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);




Ответить с цитированием