Jump to content

    

ДЕЙЛ

Участник
  • Content Count

    282
  • Joined

  • Last visited

Everything posted by ДЕЙЛ


  1. Эти входы для внешних прерываний EINT0-EINT1, которые сами по себе отдельные источники прерываний и к порту не имеют отношения. В моём случае P2 должен быть отдельным источником прерывания, в обработчике которого нужно смотреть, какая именно ножка потревожила контроллер.
  2. В мануале написано, что порты P0 и P2 могут быть источниками прерываний. Как сделать обработчик для входов P2.11 и P2.12? На этих ножках висят EINT1 и EINT2, но на них нельзя сделать прерывание одновременно по фронту и по спаду. В стартапе следующий список обработчиков: WDT_IRQHandler TIMER0_IRQHandler TIMER1_IRQHandler TIMER2_IRQHandler TIMER3_IRQHandler UART0_IRQHandler UART1_IRQHandler UART2_IRQHandler UART3_IRQHandler PWM1_IRQHandler I2C0_IRQHandler I2C1_IRQHandler I2C2_IRQHandler SPI_IRQHandler SSP0_IRQHandler SSP1_IRQHandler PLL0_IRQHandler RTC_IRQHandler EINT0_IRQHandler EINT1_IRQHandler EINT2_IRQHandler EINT3_IRQHandler ADC_IRQHandler BOD_IRQHandler USB_IRQHandler CAN_IRQHandler DMA_IRQHandler I2S_IRQHandler ENET_IRQHandler RIT_IRQHandler MCPWM_IRQHandler QEI_IRQHandler PLL1_IRQHandler USBActivity_IRQHandler CANActivity_IRQHandler Для GPIO ничего нет.
  3. Отправляю данные на сервер: AT+CIPSEND=0,6 > байты запроса 0, SEND OK +CIPRXGET:1,0 AT+CIPRXGET=2,0,1040 +CIPRXGET:2,0,1040,200 [1040 байтов ответа] Как я понимаю, модуль принял 1240 байт, из них 1040 байт передал по UART, 200 байт оставил у себя в буфере. Как правильно вытащить эти байты наружу? В дукументации на эту тему негусто написано. Нужно отдельно посылать команду AT+CIPRXGET=2,0,200 или можно не задумываясь опять отправлять AT+CIPRXGET=2,0,1040 из соображений, что модуль сначала буфер вытолкнет через последовательный порт, а потом новые данные с сервера? Пока нет возможности сравнить отправляемые данные с сервера с принятыми в SIM900.
  4. Если была такая тема, то хотелось бы ссылку увидеть, поиск мне выдал добрые два десятка страниц. Сейчас разбираюсь в загрузчике и есть вопрос по поводу контрольной суммы бинарного файла, скомпилированного в Keil'е. Где она хранится и какой алгоритм расчёта? Где можно почитать на эту тему?
  5. при измерении проводимости жидкости следует учитывать эффект поляризации. Думаю, что этот же эффект имеется во влажном грунте, поэтому для длительного отслеживания изменения влажности способ пропускания постоянного тока не годится. :bb-offtopic:
  6. всего 7 строчек, 128 возможных комбинаций закоментировано-раскоментировано перепробовал и не нашёл такой, при которой файл скомпилировался бы. Где ещё что можно поменять? UP1: к глубокой ночи соображать плохо стал #include "miniz.c" стояла самой первой строчкой в программе перед присоединением стандартных библиотек, получалось какое-то дублирование из-за отсутствия где-то защитных дефайнов UP2: библиотека компилируется, но проблема осталась - ошибка памяти UP3: Для нормальной работы zlib нужно 270КБ оперативки, а это уже больше чем в 4 раза больше доступной памятив LPC1768. Этот требуемый объём как-то можно уменьшить изменением дефайнов? c minizlib пока не получается заархивировать, постоянно ошибка памяти(-4), хотя указал объём ОЗУ в несколько МБ. Сейчас закомментирована только строка #MINIZ_NO_ZLIB_APIS, все остальные возможные комбинации перепробовал ещё раз. UP4: Откуда взялась цифра "32КБ ОЗУ", если только размер одной структуры tdef1_compessor больше 300КБ? Это речь о miniz.c Minizlib.rar
  7. Спасибо за ссылку, но компилятор возмущается отсутствием файлов <sys\stat.h> и <sys\utime.h>. Где их взять?
  8. Похоже, что библиотека слишком много памяти требует. Код рабочий, если в настройках указать заведомо огромную доступную память. Как можно уменьшить размер потребляемой памяти?
  9. Скомпилировал по минимуму библиотеку в IARe. Ошибок не показывает, но почему-то compress возвращает код ошибки -4, т.е. ошибка памяти. В чём может быть причина? К сообщению прикреплён проект. ZLIB2.rar
  10. По совету с просторов интернета скопировал всю папку zlib в корень проекта и в главном файле добавил строку #include 'zlib/zlib.h' . Результат опять никакой.
  11. Скопировал все файлы, компилятор пишет, что неопределена функция "compress"
  12. Библиотеку нашёл, скачал, порадовался наличию десятков всяких файлов. Какие файлы нужны для LPC1768 в IAR? Где можно найти описание последовательности настройки этой библиотеки под Cortex-M3? Где что закомментировать-раскомментировать, какие и в каком файле поменять константы?
  13. Где можно найти данную библиотеку? Какие файлы нужны для работы в IAR? Скажу большое спасибо, если кто-нибудь выложит пример пректа с применением данной библиотеки для архивирования.
  14. http://alex-exe.ru/programm/terminal-sim900-dialog/ здесь последняя версия терминала и статья на эту тему
  15. Открыл для себя существование видеоуроков на ютубе. Жить стало легче, жить стало веселей(С)
  16. http://gromr1.blogspot.ru/2014/04/install-...on-windows.html по этой ссылке всё внятно расписано вместе с картинками. От себя добавлю, что нужно снести все следы деятельности после неудачных попыток установки, вернуть исходные значения переменной PATCH, которая часто мелькает в других местах и многие её наверняка правили. После этого сделать всё в соответствии с инструкцией. Пока для меня вопрос снят. UP: Теперь появился вопрос по компиляции файла *.exe для копирования на другой комп. Как правильно нужно делать и куда копать? В самом Creator'е запускается, отдельно никак. UP2: попробую книжку почитать, мошть прояснится :rolleyes:
  17. Поставил QT 5.2.0 и minqw, указывал в настройках по очереди все компиляторы из папки mingw\win, но всё равно пишет, что не указан компилятор. Как правильно пошагово всё настроить? Полазил по куче форумов и в результате в голове хорошая каша отложилась. Смотрел на ютубе видюшки - там по умолчанию всё настроилось. Хотелось бы увидеть скрины процесса настройки QT 5.2.0 и minqw с самого нуля под винду ХР. У меня постоянно такая ошибка
  18. Почему бы обычный буфер не поставить, если есть сомнения? Процессору без разницы, как формируется сигнал до его входа :)
  19. Нельзя ли тут вместо гасящих резисторов применить гасящие конденсаторы? http://grimmi.ru/kondensator-vmesto-resistora.html
  20. Есть такое дело, неподумавши накодил :rolleyes: Подправил свою программу ещё в некоторых местах и добавил функцию сниффера(для него ещё нужно железо). SIM900_DIALOG.rar
  21. Вкратце вот так: procedure TForm1.RxTimerTimer(Sender: TObject); var Errors : Dword; LenReceive : DWord; i : integer; RxData, Log, NumStr : string; begin RxData := ''; ClearCommError(hCom, Errors ,@Stat);//?????????? ???? LenReceive := Stat.cbInQue; If LenReceive>0 Then Begin {1} ReadFile(hCom,RXBUF,LenReceive,LenReceive,nil); For i:=0 to LenReceive-1 Do Begin if (RXBUF[i]<>$A) and (RXBUF[i]<>$D) then begin RxData := RxData + Chr(RXBUF[i]); end else begin ListBox1.Items.Strings[ListBox1.ItemIndex] :=' '+RxData; RxData := ''; ListBox1.TopIndex := ListBox1.Items.Count - 1; end; End; End; {1} end; Данные он отправляет без приглашения, смски тоже. В прикреплённом файле только что дописанная программа для работы с SIM900. В инете не нашёл, поэтому сам сочинил. До этого ковырялся в программе от другова модуля. SIM900_DIALOG.rar
  22. Я использую только TX-RX, остальные ножки не трогаю. Это принципиально для работы с TCP/IP? скопировал как текст из окна программы
  23. //перезапуск AT+CFUN=1,1 yyyy //проверка регистрации в сети Send: AT+CREG?<cr><lf> AT+CREG? +CREG: 1,1 OK //проверка GPRS Send: AT+CGATT?<cr><lf> AT+CGATT? +CGATT: 1 OK //закрытие всех соединений Send: AT+CIPSHUT<cr><lf> AT+CIPSHUT SHUT OK //проверка инициализации модуля IP Send: AT+CIPSTATUS<cr><lf> AT+CIPSTATUS OK STATE: IP INITIAL //устанавливаем только одно соединение Send: AT+CIPMUX=0<cr><lf> AT+CIPMUX=0 OK //настройки GPRS Send: AT+CSTT="internet.mts.ru","mts","mts"<cr><lf> AT+CSTT="internet.mts.ru","mts","mts" OK //соединяемся с заданными настройками Send: AT+CIICR<cr><lf> AT+CIICR OK //смотрим свой IP Send: AT+CIFSR<cr><lf> AT+CIFSR 10.49.180.250 //включаем TCP-соединение Send: AT+CIPSTART="TCP","yandex.ru",80<cr><lf> AT+CIPSTART="TCP","yandex.ru",80 OK CONNECT OK //после этой команды должно появиться приглашение для записи отправляемых данных Send: AT+CIPSEND<cr><lf> AT+CIPSEND и в этом месте всё виснет, никаких признаков жизни
  24. Не появляется этот символ. Попробую сегодня вечером или в ближайшее время скопировать сюда файл лога.
  25. делаю по шагам, как написано вот тут http://badembed.ru/sim900-tcp-soedinenie-s-serverom/ Дохожу вот до этой строки Символ готовности никак не хочет появляться даже посли 20минутного ожидания.