-
Постов
66 -
Зарегистрирован
-
Посещение
Весь контент Bass
-
Если честно, то не знал подробности этой процедуры. Думал, что SIM остается старая. Alechek, CADiLO спасибо за помощь!
-
А можно подробнее? Я так понимаю просто выделить код оператора и определить его по таблице из вики? Поправьте, если ошибаюсь, но этот код будет статическим, и при смене оператора будут определяться неверные параметры.
-
То есть этот момент ни в каких ГОСТах и спецификациях вообще не регламентирован никак? Как-то же телефоны детектируют эти SMS и предлагают пользователю применить настройки. Если не изменяет память, то так было еще даже в до Android'ную эру.
-
Автоматическое определение параметров PPP
Bass опубликовал тема в Сотовая связь и ее приложения
Доброго времени суток! Подскажите пожалуйста как можно автоматически определить параметры APN, логин и пароль для установки PPP соединения? Телефоны вроде как-то определяют эти параметры. Еще от оператора может прийти SMS с настройками. Можно ли их как-то запросить и какой формат этой SMS? Буду благодарен за любую информацию по данной теме. -
Кому-нибудь удалось решить вопрос компиляции файлов с одинаковыми названиями через IDE?
-
Преобразователь шрифтов
Bass ответил zheka тема в В помощь начинающему
Посмотрите на lcd-image-converter. Вроде как даже автор из местных обитателей. -
Я так понял Вам профиль SPP нужен? Посмотрите в сторону lmx9838.
-
Разобрался с ситуацией. Оказывается в STM32L данные во flash после стирания имеют значение 0x00 (хотя я всегда думал, что стертая flash это 0xff). Соответственно после стирания я наблюдал нули в памяти и думал, что ничего не стерлось. По аналогии запись во flash с 0 в 1 осуществляется без стирания. В документации нигде не увидел упоминания о том, что после стирания во flash должны быть нули. Если кто-то видел, сообщите пожалуйста где об этом можно прочитать.
-
Адрес 0x08001000, куда записывается 0x00000000 вижу в дебаге (J-TAG). Проверяю результат по этому же адресу. Стандартную библиотеку не использую.
-
Доброго времени суток. Наткнулся на такую проблему в STM32L151: при попытке стирания страницы Flash операция проходит без ошибок, но память не стирается. Операция выполняется согласно алгоритму, описанному в Reference Manual'е "Flash program memory and data EEPROM (FLASH)" (стр.63) 1. Разблокировка регистра PECR 2. Разблокировка записи во флэш 3. Установка бита ERASE в регистре PECR 4. Установка бита PROG в регистре PECR 5. Ожидание сброса бита BSY в регистре SR 6. Запись 0x00000000 в первые 4 байта страницы (0x08001000) 7. Ожидание сброса бита BSY в регистре SR 8. Сброс бита PROG в регистре PECR 9. Сброс бита ERASE в регистре PECR 10. Блокировка регистра PECR Данная процедура проходит без ошибок (флаги ошибок сброшены, EOP = 1), но страница не стирается. Код функции стирания расположен в RAM. Если кто-нибудь сталкивался с подобным поведением МК, то подскажите куда копать.
-
wt21 + HCI h5
Bass опубликовал тема в Wireless/Optic
Доброго времени суток! Имеется вопрос к знатокам HCI интерфейса: Пытаюсь освоить стек bluetooth и застрял в самом начале пути. Имеется bluetooth модуль WT21 с интерфейсом HCI. Использую протокол h5 (3-wire UART). При попытке установить соединение с модулем отправляю последовательность (запрос синхронизации): C0 00 2F 00 D0 01 7E C0 Ответа (Sync Response) на данный пакет не приходит. Начинают постоянно сыпаться такие же запросы без реакции на мои ответы (Sync Response). Направьте пожалуста на путь истинный, кто понимает, где я накосячил. Заранее спасибо! -
В таблице векторов прерываний по нулевому смещению присутствует адрес стека приложения?
-
Здравствуйте уважаемые знатоки. Имеется плата devkit8000 с процессором OMAP3530 на борту. Пытаюсь поселить туда Linux, но застрял на процессе загрузки. Проблема в том, что не получается заставить стартовать процессор с загрузчиками в NAND. Из сети были скачаны исходники x-loader (версия вроде 1.4.4ss) и u-boot (2012.07) и скомпилированы. X-loader подписан при помощи SignGP. 1. Загружаюсь с SD карты (там u-boot spl) 2. Записываю в NAND по адресу 0 x-loader.bin.ift fatload mmc 0:1 0x80000000 x-loader.bin.ift nandecc hw nand erase 0x00 0x80000 nand write 0x80000000 0x00 ${filesize} 3. Записываю в NAND по адресу 0x80000 u-boot.bin fatload mmc 0:1 0x80000000 u-boot.bin nandecc sw nand erase 0x80000 ${filesize} nand write 0x80000000 0x80000 ${filesize} 4. Загружаюсь из NAND. X-loader радостно стартует, но когда дело доходит до u-boot пишет "ECC Failed", причем не всегда по адресу 0x80000. Кроме того, пытался загрузится в различных сочетаниях скомпилированных мною загрузчиков и тех, что шли с платой - неудачно. Есть подозрения, что нужны какие-то дополнительные параметры компиляции загрузчиков. Прошу помощи в решении данного вопроса. Очень хочется разобраться в происходящем. Заранее благодарен.
-
Созрел еще вопросик: первое прерывание по получению фрэйма приходит только спустя 30сек после сброса, хотя разрешаются прерывания сразу во время инициализации: ETH_DMAITConfig( ETH_DMA_IT_NIS | ETH_DMA_IT_R, ENABLE ); с чем это может быть связано?
-
у меня 440 байт. а отладчиком не пробовали смотреть процесс выделения памяти? в отладочных сообщениях ничего нет?
-
Оказывается действительно плохо искал. Из Reference Manual: Спасибо всем откликнувшимся.
-
Да в общем-то большая часть кода с этих примеров и используется. Хотелось бы не просто запустить, а понять и разобраться где накосячил. По поводу отключения аппаратного подсчета сумм имеются такие наблюдения: При полном отключении и включении подсчета програмно (в стэке), естественно все работает нормально. При аппаратном вычислении ситуация такая: Режим ICMP TCP ETH_DMATxDesc_ChecksumTCPUDPICMPFull - + ETH_DMATxDesc_ChecksumTCPUDPICMPSegment - + ETH_DMATxDesc_ChecksumIPV4Header + - Ерунда какая-то :( о_О, да стэк именно 1.4.0. Как решили вопрос? upd: Интересно девки пляшут... Со стеком 1.3.2 действительно все нормально работает. Вроде проблема больше на аппаратную смахивает, а оказалось дело в стеке...кто-нибудь может пояснить в чем дело? Сравнивая обработку ICMP пакетов в core/ipv4/icmp.c заметил, что в 1.3.2 есть явное обнуление контрольной суммы в заголовке ICMP при ответе, а в 1.4.0 соответственно нету. Неужели в этом дело? Хотя нигде не встречал упоминаний, что для аппаратного подсчета там должны быть нули. Или плохо искал?
-
если отключить, то стэк софтварно будет считать (судя по коду. если принципиально, могу завтра проверить). Дело в том, что стэк выставляет эти нули в ответе и после формирования пакета передает в функцию отправки (драйвер), а та в свою очередь в буферы DMA. А там где-то перед передачей в PHY модуль должен уже просчитать все, на сколько я понял.
-
Доброго времени суток! Знакомлюсь с LwIP, сеть завелась, но возникла такая проблема: при пинге PC->МК вываливается "Превышен интервал ожидания для запроса.", хотя в wireshark виден ответ от МК, причем с ошибочной контрольной суммой (0x0000) в заголовке icmp. При инициализации интерфейса в МК выставляется железное вычесление суммы for(i = 0; i < ETH_TXBUFNB; i++) { ETH_DMATxDescChecksumInsertionConfig(&DMATxDscrTab[i], ETH_DMATxDesc_ChecksumTCPUDPICMPFull); } а в lwipopts.h #define CHECKSUM_BY_HARDWARE 1 #ifdef CHECKSUM_BY_HARDWARE /* CHECKSUM_GEN_IP==0: Generate checksums by hardware for outgoing IP packets.*/ #define CHECKSUM_GEN_IP 0 /* CHECKSUM_GEN_UDP==0: Generate checksums by hardware for outgoing UDP packets.*/ #define CHECKSUM_GEN_UDP 0 /* CHECKSUM_GEN_TCP==0: Generate checksums by hardware for outgoing TCP packets.*/ #define CHECKSUM_GEN_TCP 0 /* CHECKSUM_CHECK_IP==0: Check checksums by hardware for incoming IP packets.*/ #define CHECKSUM_CHECK_IP 0 /* CHECKSUM_CHECK_UDP==0: Check checksums by hardware for incoming UDP packets.*/ #define CHECKSUM_CHECK_UDP 0 /* CHECKSUM_CHECK_TCP==0: Check checksums by hardware for incoming TCP packets.*/ #define CHECKSUM_CHECK_TCP 0 #else /* CHECKSUM_GEN_IP==1: Generate checksums in software for outgoing IP packets.*/ #define CHECKSUM_GEN_IP 1 /* CHECKSUM_GEN_UDP==1: Generate checksums in software for outgoing UDP packets.*/ #define CHECKSUM_GEN_UDP 1 /* CHECKSUM_GEN_TCP==1: Generate checksums in software for outgoing TCP packets.*/ #define CHECKSUM_GEN_TCP 1 /* CHECKSUM_CHECK_IP==1: Check checksums in software for incoming IP packets.*/ #define CHECKSUM_CHECK_IP 1 /* CHECKSUM_CHECK_UDP==1: Check checksums in software for incoming UDP packets.*/ #define CHECKSUM_CHECK_UDP 1 /* CHECKSUM_CHECK_TCP==1: Check checksums in software for incoming TCP packets.*/ #define CHECKSUM_CHECK_TCP 1 #endif подскажите куда копать?
-
CGI скрипт
Bass ответил Zelepuk тема в Программирование
Для обновления данных возможны такие варианты: 1. при генерации страницы в <head> добавить <meta http-equiv="refresh" content="3;url=http://some_url"> тогда браузер будет постоянно обновлять вашу страницу (переходить каждые 3сек. по URL http://some_url) 2. использовать средства javascript для ajax-запросов, получая только нужные данные и подставляя их в нужное место на исходной странице (т.е. Вам не надо будет перезагружать всю страницу целиком). Судя по всему у вас страница небольшая, поэтому логичнее использовать п.1 -
SIM900 не видит SIMку
Bass ответил Bass тема в Сотовая связь и ее приложения
вопрос снят, сам накосячил - i/o при вставленной симке коротился на землю (плата без маски). тему можно удалить. -
SIM900 не видит SIMку
Bass опубликовал тема в Сотовая связь и ее приложения
Доброго времени суток! Возникла такая проблема: sim900 упорно отказывается видеть sim карту, в ошибке пишет "SIM not inserted". При старте наблюдаю по 3 импульса где-то 1,8В и 3В, длительностью несколько мс. на ногах питания симки, reset и clock, но на i/o тишина. По питанию симки стоит конденсатор 0.1u. Подскажите в какую сторону копать? -
или просто сразу взять семафор после его создания
-
Если приоритет задачи, которой ты пытаешься выдать семафор будет выше той, которую прервали прерыванием, то в xSemaphoreGiveFromISR будет установлена xHigherPriorityTaskWoken в pdTRUE, и тогда portEND_SWITCHING_ISR( xHigherPriorityTaskWoken ) при выходе из прерывания попадет не в прерванную задачу, а в задачу с более высоки приоритетом. Вроде так.
-
Установка драйвера вместе с софтом
Bass ответил en0t тема в В помощь начинающему
я скопировал свой вариант, где в моем inf файле установка происходила в секции CYUSB (что и указано в параметрах), когда обычно осуществляется в секции DefaultInstall (ну или как-то так, мог приврать с названием, а проверить пока негде). Какраз в винде по умолчанию при установке через меню ПКМ выполняются действия из этой секции DefaultInstall.