Как отправить данные по SMS.

Тут обсуждаем все что связано с микроконтроллерами.

Модератор: gurvinok

Ответить
Владимир
Сообщения: 1
Зарегистрирован: 24 дек 2016, 19:13

Как отправить данные по SMS.

Сообщение Владимир » 24 дек 2016, 21:47

Не могу отправить данные по SMS.
Вложения
GSM_01.rar
(104.49 КБ) 71 скачивание

Аватара пользователя
gurvinok
Сообщения: 1500
Зарегистрирован: 02 мар 2013, 09:18
Откуда: Москва

Re: Как отправить данные по SMS.

Сообщение gurvinok » 24 дек 2016, 23:15

Это что за каша!? :shock: :shock:
Я так понимаю код был надран из разных проектов. Поехали:

Эти две функции как две капли воды, отправляют байт в порт. Две, наверное для усиления)))

void send_Uart(unsigned char c)
void UART_Char(unsigned char d)


Вот эти принимают. Я так понимаю это если не сработает прерывание по приему. :lol:

unsigned char GET(void)
unsigned int UartRdChar()
int UART_Receive(void)


Строки вероятно пихать в порт ну просто необходимо четырьмя функциями, для каждой строки своя. :lol:

void UART_String(const char *msg)
void UART_STR(unsigned char *s)
void Str_UART_Send(char *string)
void UART_CMD(const char *msg)


И даже если на весь этот треш закрыть клаза, то...

UART_Char(13); не 13, а 0x0D Только на кой хрен это здесь надо.

UART_CMD("AT+CMGS="); Это команда и она должна всегда заканчиваться символами \r\n
Отсюда нужно писать вот так UART_CMD("AT+CMGS=\r\n");


А так как нет ни единой пары \r\n после команд, то модуль просто серит ерорами в ответ. Поэтому SMS и не отправляется.
Вот здесь для понимания я подробно разжевывал как слать SMS с контроллера.
Если долго мучиться, может быть получится.

Ответить