Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 22.04.2008, 11:52  
greafuger
Прописка
 
Регистрация: 10.11.2007
Сообщений: 104
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
greafuger на пути к лучшему
По умолчанию Подскажите алгоритм работы с GSM-Модемом

Пишу код работы с GSM-модемом посредством AT-команд. Работаю через U(S)ART. Проблема-то в том, что команду я выдаю в порт, а вот ответ от модема приходит в разное время и разный по величине, поэтому тут необходимо использовать все это через прерывание. Но меня что-то замыкает, не могу придумать алгоритм работы с модедом через прерывание (получение данных), так как данные, по идее, нужны мне в программе, а прерывание возникает асинхронно...

Подскажите, как это можно сделать, или ткните хоть где посмотреть. Спасибо.
Реклама:
greafuger вне форума  
Непрочитано 22.04.2008, 11:54  
DRFAUST
Временная регистрация
 
Регистрация: 15.06.2006
Сообщений: 56
Сказал спасибо: 0
Сказали Спасибо 1 раз в 1 сообщении
DRFAUST на пути к лучшему
По умолчанию

Может сделать какой-то флаг, типа данные есть, и если программе нужны данные от модема, она в цикле ждет установку флага, а в прерывании когда что-то получено, устанавливать этот флаг. Так вроде получится синхронно.
DRFAUST вне форума  
Непрочитано 22.04.2008, 11:57  
greafuger
Прописка
 
Регистрация: 10.11.2007
Сообщений: 104
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
greafuger на пути к лучшему
По умолчанию

Я думал над этим, дело в том, что 1 байт - тоже данные, но мне-то нужен ответ модема... А проверять так - это неудобно.
greafuger вне форума  
Непрочитано 22.04.2008, 17:26  
dimonbest
Гражданин KAZUS.RU
 
Аватар для dimonbest
 
Регистрация: 30.04.2006
Сообщений: 984
Сказал спасибо: 5
Сказали Спасибо 18 раз(а) в 14 сообщении(ях)
dimonbest на пути к лучшему
По умолчанию

Я делал это так:
Отсылаю команду модему, например
AT+CPIN?,0x0D,0x0A
По умолчанию эхо включено, модем ответит мне тем же:

Код:
AT+CPIN?,0x0D,0x0A
Таким образом я считываю байты до тех пор, пока не встречу символ 0X0A (это было эхо).
Теперь снова ожидаю 0x0A, модем пришлет следующее:


Код:
CPIN:READY,0x0D,0x0A
запутанно конечно описал...
dimonbest вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите алгоритм проверки целостности данных Churchill Микроконтроллеры, АЦП, память и т.д 7 16.10.2008 12:31
Алгоритм работы с CAN на AT90CAN svad0 Микроконтроллеры, АЦП, память и т.д 1 15.10.2008 14:25
Упровление телефонным модемом. Developer_ Автоматика и аппаратура связи 0 16.01.2008 18:03
Подскажите! Схема сигнализатора по индикатору его работы. alladinn70 Автоматика и аппаратура связи 7 01.11.2006 19:34
[Решено] ОЧЕНЬ нужна блок-схема и алгоритм работы м/пр стир. машины Руслан Поиск схем. Делимся схемами 1 10.03.2005 15:02


Часовой пояс GMT +4, время: 19:30.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot