#1 2014-07-11 14:23:59

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Modem Terminal 2014 [test]

Всем привет.
Уважаемое сообщество, есть программка, т.е. даже комплекс реализованных идей,  которые упрощают жизнь скромным разработчикам.
комплекс переносится в QT, будет open source со всеми вытекающими,  и любой сможет подправить под свои нужды.
сейчас же, я прошу помощи в отладке.  Замечания,  пожелания, мелкие и не очень  глюки - прошу проинформировать ).

общая идея - очень часто мы работаем с устройствами по UARTу. заливая код в контроллер и просматривая поток через сниферы , того или иного качества..
смысл в том, что б создать ПО на котором можно отладить основной поток без использования специфического софта или оборудования.
ПО выкладываю сырое, боюсь что идей столько, что в ближайший год релиза не будет (.

Итак: по основным окнам описания не будет - проверим нативность GUI

Окно выполнения списка команд:

exe.jpg

данные можно просмотреть с датой, хексом,  в таблице.
mini_hex.jpgmini_table.jpeg
*1270 байт в таблице ( в одной строчке, с  выводом hex ) уже нагружают  ПО.

список команд доступных в текущей версии:

<info> xxx </info> - comments view
<default_wait>1000</default_wait>  ожидание ответа по умолчанию
<cmd>AT</cmd>  send AT\r\n
<wait>1000</wait>  time out 1000 ms для текущей команды

<repeat>10</repeat>  repeat command 10 повторять текущую команду 10 раз
<char>AT</char>  send AT without \r\n
<hex>20 0A 0B</hex>  sens 3 byte 0x20 0x0A 0x0B
<answer>OK</answer>  if no answer - break execure   ( не сделал, но создавать файлы лучьше  с ответами )
<modbus>1,4,34,3</modbus>  1 - adrress 4 - type command  34 number reg 3 count
<hint>AT+GMI Request Manufacturer identification</hint>     подсказка
<text>View uset text</text>   вывод к консоль текста, подсказка, либо требование нажать кнопку )
<pause>1000</pause>    в текущей позиции поспать  1000 мс
<DTR>1</DTR>  set   DTR
<DTR>0</DTR>  unset DTR
<RTS>1</RTS>  set   RTS
<RTS>0</RTS>  unset RTS

пример файла


<info> 02.07.2014 test GPRS Telit</info>
<default_wait>2000</default_wait>
<device>TELIT</device>

<DTR>1</DTR>				<hint>set DTR - ON </hint>
<RTS>1</RTS>				<hint>set RTS - ON </hint>
	<text>setting modem Telit 863-PY</text>
<cmd>ATE1Q0</cmd>			<hint>answer enable, echo disable</hint>	
<cmd>AT+CPIN?</cmd>			<hint>check sim</hint>	
<cmd>AT+CREG?</cmd>			<hint>check registration</hint>	
<cmd>ATH</cmd>				<hint>shutdown connect</hint>	
<cmd>AT&D2</cmd>			<hint>&D2 - DTR drop causes modem to hang up</hint>		
<cmd>AT#GPRS=0</cmd>			<hint> deactivates the contex</hint>	
<cmd>AT#SELINT=2</cmd>			<hint>When #SELINT=2 mode is selected, a string enclosed between quotes is case sensitive.</hint> 

<cmd>AT+CGCLASS="B"</cmd>		<hint>GPRS class “B” - GSM/GPRS (factory default)</hint>
<cmd>AT+CGDCONT=1,"IP","www.umc.ua","0.0.0.0",0,0</cmd>  <hint>+CGDCONT - Define PDP Context</hint>
<cmd>AT+CGQREQ=1,2,1,4,4,17</cmd>			 <hint>+CGQREQ - Quality Of Service Profile</hint>
<cmd>AT#USERID="mts";#PASSW="mts"</cmd>			<hint>#USERID - Authentication User ID \n#PASSW - Authentication Password</hint>

<cmd>AT#DSTO=6</cmd>					<hint>#DSTO - Data Sending Time-Out</hint>
<cmd>AT#SKTTO=90</cmd>					<hint>#SKTTO - Socket Inactivity Time-Out</hint>
<cmd>AT#SKTCT=600</cmd>					<hint>#SKTCT - Socket TCP Connection Time-Out</hint>
	<text>initialization </text>
<cmd>AT#GPRS=1</cmd> 				<wait>7000</wait>	<hint>#GPRS - GPRS Context Activation, 1 - GPRS context activation request</hint>

<cmd>AT#SKTD=0,80,"192.0.43.10",0,0</cmd>	<wait>7000</wait>	<hint>#SKTD - Socket Dial 192.0.43.10 </hint>
<cmd>GET /index.html HTTP/1.0</cmd>		<wait>10</wait>
<cmd>Host: www.example.com</cmd>		<wait>10</wait>
<hex>0D 0A</hex>				<wait>5</wait>
<pause>20000</pause>
<DTR>0</DTR>				<hint>устанавливаем DTR - OFF </hint>
<RTS>0</RTS>				<hint>устанавливаем RTS - OFF </hint>
<cmd>AT#GPRS=0</cmd>
<cmd>ATH</cmd>

сеть не сделал,  как минимум нужно закрыть основные вопросы по USART соединению.
скачать тестовое ПО можно тут
по мере исправления ошибок - найдем статическое место для ПО.
линковка с динамическими библиотеками, потому размер и кол. файлов пусть не пугают.
по правильному нужно приложить и исходники, но пока стыдно  выкладывать )

есть возможность подправить стиль,  цвета , шрифты  под себя в файле stylesheet.qss

QListWidget {
	margin-right: 2px;
	margin-left: 2px;
	margin-top: 2px;
	margin-bottom: 2px;
    background-color: rgb( 255, 255, 255 );
}

background-color: rgb( 255, 255, 255 ); - свет фона белый
но это уже тема отдельной статьи

PS при запуске ПО пытается открыть порт, и соответственно   получаем ошибку ибо не знаем какой порт открывать.
Если делаете русские/китайские или иные, не латинские комментарии и подписи, файлы  конфигурации создавайте с кодировкой UTF8
файлы конфигурации в папке "file_modemConfig"


с ув. Alex

Неактивний

#2 2014-07-21 09:59:07

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Modem Terminal 2014 [test]

пусть будет блог )
пример работы программы:

к удаленному модему подключен эмулятор модема сименса с паузой между байтами.

Неактивний

#3 2014-07-24 20:03:57

Андрей
Учасник
Зареєстрований: 2014-06-17
Повідомлень: 46

Re: Modem Terminal 2014 [test]

Судя по описанию прикольная программа, но не смог скачать - судя по всему ех.уа уже его удалил, т.к. редиректит на главную.

Неактивний

#4 2014-07-25 13:39:22

NoName
Customer
З Київ
Зареєстрований: 2014-07-08
Повідомлень: 1,446

Re: Modem Terminal 2014 [test]

ex.ua удалил. 7 дней хранения если нет загрузки.  такой вот тест на интерес )
на первую версию (устарела) 
штатное место будет тут актуально с 28.07.2014

Остання редакція NoName (2014-07-27 12:16:30)

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму