Перейти к содержанию
    

KGB

Участник
  • Постов

    44
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о KGB

  • Звание
    Участник
    Участник

Посетители профиля

468 просмотров профиля
  1. не понял что не можете реализовать
  2. шутить изволите? не сравнивайте компилятор с реальным авр!!! при включении там может быть мусор! вы используете софтовую реализацию компорта и передаёте байт описывая каждый бит.. это занимает очень много памяти.. вот попробуйте это... подогнать под свою скорость и частоту кварца сможете? ;********************************************************************** ********* ******************* ; передача одного байта в формате РС-232 16МГЦ 115200 TX_232: push r16 push r17 push r18 ; заносим в... cbi PORTB,1 ; формирум СТАРТ бит 1=>0 ldi r17,0x08 ; заносим в CNT_BIT - 9. количество сдвигов ;--------------------- ldi r18,43 ; корекция скорости передачи sta_bit: dec r18 brne sta_bit ;--------------------- Loop_TX: sbrs r16,0 cbi PORTB,1 sbrc r16,0 sbi PORTB,1 ;------------------ ldi r18,43 ; корекция скорости передачи tx_bit: dec r18 brne tx_bit nop nop ;------------------ lsr r16 ; здвигаем dec r17 brne Loop_TX sbi PORTB,1 ; формирум СТОП бит ;------------------ ldi r18,80 ; 15 корекция скорости передачи st_bit: dec r18 brne st_bit; ;------------------ pop r18 pop r17 pop r16 ret ;******************************************************************************* ******************* LDI R30, low(fing_cmp*2) LDI R31, high(fing_cmp*2) lpm r18, Z ;загрузим байт и R31 обязателен!!! вот и вся прога... отправки 8ми байт в ком из таблицы ;********************************************************************** **************************** ; _reset: clr r1 out SREG,r1 ldi r16, LOW(RAMEND) ;setup stack pointer out SPL, r16 ; ldi r16, HIGH(RAMEND) ; out SPH, r16 ldi ZL,low(Table_1*2) ; считываем адрес таблицы ldi ZH,high(Table_1*2) ldi r19,8 lp: lpm r24,Z+ call TX_232 dec r19 brne lp sss: jmp sss Table_1: .db 0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08 ;******************************************************************************* *******************
  3. я тут тоже занялся прибором... измерения скорости пули... по моим подсчётам на меге 8 при такте 16 мгц точность можно дать 10см... поговорил с охотниками ... они говорят наыиг это надо... 1м достаточно... пока делаю 10см...там посмотрим
  4. вчера привёз с тольятти парачку.. как раз такие попались. :crying: SN MP0608270013868 MP0608270013882
  5. Я ... скажем так .. всего 3 недели пишу прогу.. а не несколько лет как некоторые.. и всё дописывают. и 4 недели как узнал что такое гсм модуль. поэтому изза отсутствия практики в работе с модулем я ещё не знаю всех возможностей модуля. соответственно фантазия работает тока в пределах позноного. век жеви век учись.. так что я думаю что всему своё время. пока я тока опрашиваю AT+CGREG? если был разрыв соединения то сперва СИПШУТ потом AT+CGREG? и исхотя из этого на AT+CGATT если жпрс оторвался, или на СИПСТАРТ. AT+CIPSTATUS С ЭТИМ ПОКА НЕ РАЗОБРАЛСЯ КАК РАБОТАЕТ. едининственное подметил из твоих слов что это определяет что происходит. а не варианты ответа на набраную перед ним коману. --------------------- единственое могу сказать что С САМИМ модулем уже больших проблем нету, понял как с ним работать..пока всё получается... главное правельно мониторинг организовать ... и тогда и AT+CIPSTATUS не понадобится... и так видно что происходит.
  6. но во туто с этим и не понятки.... сипшут поидее должен сбросить РРР и тогда в следущем конекте должна появится 6 а не 9 а вот если дёрнуть питание то тогда точно начинает вываливаться 6ка PDP DEACT выскакивает не сразу а через некоторое врямя... гдело минута а потом через несколько секунд 6 6 это не состоявшийся конект.
  7. Baser..... спасибо!!!!! ну тогда у меня всё правельно. ------------------------------------------------ вот что происходит 6 AT+CIPSHUT 0 AT+CGREG? +CGREG: 0,1 0 AT+CIPSTART="TCP","x","6565" 0 +PDP: DEACT 6 AT+CIPSHUT 0 AT+CGREG? +CGREG: 0,1 0 AT+CIPSTART="TCP","x","6565" 0 +PDP: DEACT 9 AT+CIPSHUT 9 0 AT+CGREG? +CGREG: 0,1 0 AT+CIPSTART="TCP","x","6565" 0 +PDP: DEACT 9 AT+CIPSHUT 9 0 AT+CGREG? +CGREG: 0,1 0 AT+CIPSTART="TCP","x","6565" 0 +PDP: DEACT 9 AT+CIPSHUT 9 0 AT+CGREG? пока итик далее до бесконечности... --------------------------------------------- я думал что 9 это типа конект-фаил соединение ЕЩЁ не установлено мол ждите... и хотел было уж в обработке 9ки добавить паузу побольше и счётчик 9ок.. чтоб не ждать до посинения... -------------------------------------------- но если вё ка ты сказал то тогда всё понятно. ----------------------------- смущает это... AT+CIPSHUT 9 0 не говорит ли это отом что стек нихрене не сброшен????? ----------------------------- ща поймаю момент когда пойдут такие ответы переключусь в текстовый режим и посмотрю что за 9ка после сипшута
  8. про 3 IP IND Производится соединение правельно ли?? сегодня у меня выскочило такое при конекте... CONNECT FAIL STATE: IP IND судя по переводу должно было подсоединится раз оно производится но этого не поизошло
  9. M_Z давай не будем друг другу мозг калупать!!! и о вкусах спорить... то что мне надо.. работает . жпс принемается и на сервер передаётся. при дисконектах сам сеодиняется и дальше передаёт команды с сервера принимаются и устройсто на них реагирует. всё пучком!!!
  10. кстати... выше описаный недостаток можно использовать и во благо.... например клиента надо переключить на 2й сервер... а на первом мож профилактика тогда посылаем в модуль команду записать новый ип в епром... и потом 8 по 8 происходит дисконект .... и потом конект но уже на новый ип. прикольная фича.
  11. ЭТО КАК.... хозяева авто канцернов собрались решать чей автомобиль лучше... а потом все сели на свои мерседесы и разъехались
  12. добавил обработку +____0D и всё работает нармально. правда если с сервака послать 8 то получится автоматический переконект (почти перетонит :crying: ) ----------------------------------------------- AT+CIPSEND > 123456789 SEND OK 8 .............................десконект AT+CIPSHUT 0 AT+CGREG? +CGREG: 0,1 0 AT+CIPSTART="TCP","ч.ч.ч.ч","6565" 0 +PDP: DEACT 8 ............................. конект AT+CIPSEND > 123456789 SEND OK -------------------------------------------------
  13. Baser обрабатывать не всё не получится... смотри какой прикольный касяк вылез.. ----------------------------------------------------- AT+CIPSEND > 123456789 SEND OK +CMTI: "SM",7 AT+CIPSEND > 123456789 SEND OK +CMTI: "SM",8 ------------- тут 8ку восприняло как дисконект ... надо тут добывить обработку +, а то цыпануло за 8ку...это не правельно. врпинципе это надо сделать везде.. будем ловить + а после него 0D ...обработка в холостую смс нам тут не нужно.. но если понадобится можно и сделать AT+CIPSTART="TCP","X.X.X.X","6565" -- послали заново конект 4 --------------------- и нихрена не поняли +CMTI: "SM",8 --- ЭТО ВХОДЯЩЕЕ СМС №8 А БУДУТ ЖЕ ещёи 30,38,40,48,34,44,33,43,32,42, итд на которые это будет срабатывать если не обработать +100 и три строчки кода. )) я заметил такие ситуации что когда не по теме что приходит и оно игнорируется а после этого от модуля нет никаких ответов... вродибы и рад чтото обработать а нету.... вот и получаем висяк... я думаю что единственый выход это подождать его малость и послать его нах
  14. короче как говорится после сборки обработать напильником.... сделал всё проше... установил конект с сервером.. и сидел отрубал ... врубал сервак смотрел в каких местах вываливаются какие команды... конект отладил... теперь полный автомат... ни звонок ни смс .. ему пох.... работает (если надо то можно сделать их обработку) потом стал модуль дрочить звонками и смс во время передачи данных серверу... тут тоже вылезло несколько касяков. которые уже поправлены... короче теперь есть можно сказать полный автомат конекта и передачи данных серверу.. причём после любых дисконектов делаю CGREG проверяю жпрс и если надо то врубаю его обратно.
  15. наверно это не глюк, мож оно так и должно быть. отбить то звонок можно. ну пока я так и делаю... просто холось бы сразу сделать чтоб прога не висла... а не гонять потом с логером...
×
×
  • Создать...