реклама на сайте
подробности

 
 
> SIM300DZ, начинаем с ноля
KGB
сообщение Dec 23 2008, 01:02
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 21-12-08
Пользователь №: 42 644



Привет всем!!!
я тока начинаю свои познания в области GSM но найдя много инфы в инете многое что понял..
как это всё работает.. впринципе не сложно.. но есть непонятки в некоторых вопросах так как
вся инфа какято разрозненая. и нет одного конкретного документа..
сам я в основном замимаюсь картсплитерами на сат-тв..
так вот в "сат-индустрии" например как что не понятно сразу посылают читать букварь по виаксес biggrin.gif в котором собраны все команды...
а вот в данной теме присутствует не только "софт" но и аппаратная часть..
в частности с SIM300DZ..
приобрёл я SIM300C_EVB_V2.01 с модулем...

настроил гипер терминал.. конект есть.. команды принимаютя ответы видятся.
но это всё на компе и с тестовой платой.
а вот при разработке своих устройств оказывается не так всё просто...
во первых.. исмользуя 5и вольтовые процы нужно согласование уровней.
интересует кто как это делает.
второе..
инициализация модуля.. аппаратная..
прочитав доки аж испугался wacko.gif
процес выключения заморочен.. черевато слитанием софта во флеш!!!!
с влючением тоже напряги..
от 2-8 сек на входа ваще ничего нельзя подавать..
вопрос!!!!!
при включении модуля светодиод STATUS загорается секунды через 2
а в гипер терменале сек через 8 появляется Call Ready - это что?????
этого я ненашол в доках.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KGB
сообщение Jan 5 2009, 20:19
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 21-12-08
Пользователь №: 42 644



помучал я сим300 и сделал для себя некоторые выводы
про которые нигде не написано.... или я просто не нашол..
и если я не прав то поправте пожалуйста...
1 - если например набирать смс в модуль.. и в этот момент позвонить на сим300
то на RX RING не появляется зумер поёт.. RI должен среагировать (не проверял)
вывод.... модуль работает в симлексе.. не выполняет команду пока не закончил предыдущую.
2 - модуль общается по ASCII кодировке?????? всмыле это я видел, но может есть ещё какието варианты???
Go to the top of the page
 
+Quote Post
chief_olimp
сообщение Jan 5 2009, 20:41
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 249
Регистрация: 31-10-05
Из: Украина Нетешин
Пользователь №: 10 344



Цитата(KGB @ Jan 6 2009, 00:19) *
2 - модуль общается по ASCII кодировке?????? всмыле это я видел, но может есть ещё какието варианты???

это в текстовом режиме
Для цифрового (PDU) можно использовать UNICODE с расширеным набором символов (рус. укр. и тд)
Go to the top of the page
 
+Quote Post
KGB
сообщение Jan 6 2009, 00:30
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 44
Регистрация: 21-12-08
Пользователь №: 42 644



Цитата(chief_olimp @ Jan 5 2009, 23:41) *
это в текстовом режиме
Для цифрового (PDU) можно использовать UNICODE с расширеным набором символов (рус. укр. и тд)

chief_olimp
ты не путаеш вид СМС с байтамы которые непосредственно идут в модуль???
помоему путаеш...
вот смотри...
если ты отправляеш в модуль F
ТО ЭТО БУДЕТ ТАК
ldi____BUF,0x46____; F
rcall__TX_232

если ты отправляеш в модуль П
то так.. с преворительной подготовкой..

;______П-----------это по русски
;_04_1F_04_40 это преобпазуем в UCS2
;_30_34_31_46 а это UCS2 в ASCII

ldi____BUF,0x30
rcall__TX_232
ldi____BUF,0x34
rcall__TX_232
ldi____BUF,0x31
rcall__TX_232
ldi____BUF,0x46
rcall__TX_232

ТОЕСТЬ КАК НЕ КРУТИ В МОДУЛЬ ЛЕЗИТ --- ASCII
это был пример на вводе СМС

но вед остальное впринципе лезит в модуль токже.. тока без лишних преобразований
типа
;AT+CSCS="UCS2" это сама команда что надо отправит в ТЕКСТОВОМ виде
;41 54 2B 43 53 43 53 3D 22 55 43 53 32 22 0D а это то что непосредственно
лезит в модуль в hex но сами биты (информация) передаётся в ASCII

ВОТ Я И СПРАШИВАЮ ЧТО МЕТОД ОБЩЕНИЯ ЕСТЬ ТОЛЬКО В ASCII?????
если да то тут проблемы малость решаются....
так ка диапазон ASCII от 00 до 7F
даже можно начать с 20 и включив в список такие на 1A 0D 0A

ЭТО Я К ТОМУ ЧТО Я ПИШУ ТОКА НА АСМ

и этим решается такие проблемы как например приём байта.

AT+.....
OK
вот после АТ надо принять ОК... тут всего два байта..
а бывает больше ..как узнать длину всего ответа?????????????????????????
но кроме дины есть ещё и факт что мы оттуда ваще ничего не примем!!!
так вот тут в таком случае можем совсем повиснуть в ожидании..
делаем так..
судя по временым интервалам в работе с гсм модулем
лучше использовать таймер 16 бит
так вот.... используем софтовый рх_тх
запускаем тамер TMR1
опрашиваем пин рх
если не 0 (старт бит не пришол)
то проверяем переполнение
если небыло то в начало приёма
если было то значит сильно долго ждём и походу не дождёмя..
и выходим скажем с результатом 0х01

так вот если приём состоялся
то мы получим наш ОК + последний байт будет 0х01 (всякие 0D я тут пока пропускаю для упрощения всасывания...)
а если добавитьещё скажем
inc Len после принятия каждого байта то получится что мы их просто тупо пощитаем
и будем знать длину принятого ответа.

получается !!!!
1- не зависли при отсутствии ответа
2- знаем длину
----------------------
усложняем .... врубаем превание INT0 и на эту ногу заводим RX
и при срабатывании прерывания выполняем выше описаную ПП
добавив в ней вконце выставление бита в каком нибуть регистре..
типа чтение состоялось
и загрузку всего принятого в озу
---
дальше...возвращаемся к..
AT+.....
OK
теперь мы тут ОК уже не ждём ... всмысле что он у нас сам считается автоматом и запшится в память
а будем опрашивать какото время тот самый выставленый бит.
если бит выставлен .. значит ответ был.
тогда обрабатываем наш ОК или что там пришло...
стираем этот бит
и идём дальше по программе...

вариант хороший...
удобно то что можно включать выключать прерывание
тем самым не мешать выполнению какойто задачи с высшим приоритетом.. ну и итд..
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- KGB   SIM300DZ   Dec 23 2008, 01:02
- - FormatCft   Цитата(KGB @ Dec 23 2008, 06:02) а вот пр...   Dec 23 2008, 07:16
- - chief_olimp   Цитата(KGB @ Dec 23 2008, 05:02) через 8 ...   Dec 23 2008, 08:00
- - Harbinger   А вот и необязательно. Если сразу после Call Ready...   Dec 23 2008, 08:48
- - KGB   чесно говоря не ожидал такой активности... спасибо...   Dec 23 2008, 11:17
- - chief_olimp   Вам сюда   Dec 23 2008, 11:56
- - Dron_Gus   Не буду заводить новую тему. Где-то мелькали конкр...   Dec 23 2008, 12:26
|- - M_Z   Цитата(Dron_Gus @ Dec 23 2008, 16:26) Не ...   Dec 23 2008, 13:18
|- - =F8=   Цитата(Dron_Gus @ Dec 23 2008, 16:26) Не ...   Dec 23 2008, 13:27
- - chief_olimp   где то проскакивала схема жсм телефона на базе сим...   Dec 23 2008, 12:40
- - Dron_Gus   Спасибо!   Dec 23 2008, 13:58
- - av-master   еще один аргумент, в пользу целого подфорума по Si...   Dec 23 2008, 15:11
|- - war4one   По питанию удобны IRF7317, два полевичка, SOIC-8, ...   Dec 24 2008, 03:51
- - Alechek   SO8 против SOT23 Нет уж, спасибо!   Dec 24 2008, 11:15
- - chief_olimp   ну тогда в чем был вопрос?   Jan 6 2009, 19:08
- - Dron_Gus   По-моему, Вы несколько перемешали все в кучу. И ап...   Jan 6 2009, 19:17
- - KGB   Dron_Gus я действительно похоже перемудрил... но в...   Jan 6 2009, 23:27


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 5th August 2025 - 21:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01423 секунд с 7
ELECTRONIX ©2004-2016