ЗАО «ЗЭО»
Техническая поддержка пользователей => Windows CE, EBoot => Тема начата: bva_rzn от 13 Декабря, 2011, 15:21:26
-
Добрый день.
Имеем Тион-Про270, Windows CE 6.0
Разрабатываемое устройство должно через заданные интервалы времени считывать информацию с несколькох датчиков и её обрабатывать. В связи с этим возникло несколько вопросов:
1) какое время реакции системы на прерывание по линии gpio (пользуемся образом с сайта)?
2) есть ли в системе таймеры, которые можно использовать для задания временных интервалов?
3) подаю на GPIO9 последовательность так-х импульсов с периодом 10 мс. Запустил демонстрационный пример GPIO_Test.
В отладчике вижу, что DeviceIoControl с GPIO_GET_STATE работает, состояние линии меняется, но при использовании DeviceIoControl с GPIO_GET_EDGE_DETECT_STATUS в буфере OutBuf постоянно нули. В чём может быть проблема?
-
Добрый день.
Добрый день.
Имеем Тион-Про270, Windows CE 6.0
Разрабатываемое устройство должно через заданные интервалы времени считывать информацию с несколькох датчиков и её обрабатывать. В связи с этим возникло несколько вопросов:
1) какое время реакции системы на прерывание по линии gpio (пользуемся образом с сайта)?
Для того, чтобы отслеживать прерывания GPIO, нужно писать драйвер, реализующий данную функцию. Время реакции будет зависеть от того, как написае драйвер.
2) есть ли в системе таймеры, которые можно использовать для задания временных интервалов?
Есть аппаратные таймеры. Для их применения также необходимо разработать драйвер.
Есть программные. Доступ к нам возможен через API WinCE.
3) подаю на GPIO9 последовательность так-х импульсов с периодом 10 мс. Запустил демонстрационный пример GPIO_Test.
В отладчике вижу, что DeviceIoControl с GPIO_GET_STATE работает, состояние линии меняется, но при использовании DeviceIoControl с GPIO_GET_EDGE_DETECT_STATUS в буфере OutBuf постоянно нули. В чём может быть проблема?
При вызове DeviceIoControl с параметром GPIO_GET_EDGE_DETECT_STATUS возвращается либо TRUE, либо FALSE, в зависимости от текущих настроек порта.
-
Здравствуйте.
Пытался установить драйвер GPIO, скаченный с Вашего сайта. Используем Тион+Сириус Win CE5.0 В реестре создал запись:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\GPIO]
"dll"="\NORFlash\gpio_ep9315.dll"
"Prefix"="GIO"
"Order"=dword:4
Файл драйвера записал на sd карту в созданную папку NORFlash. При попытке обратиться к драйверу из нашего приложения:
IntPtr file = CreateFile("GIO1:", access, 0, IntPtr.Zero, OPEN_EXISTING, 0, IntPtr.Zero);
получаю исключение. На Вашем сайте в разделе wiki написано: "Драйвер должен быть записан во внутренний флеш-диск, путь к нему должен быть такой, как в указанных выше ключах реестра." Sd карта это и есть NORFlash или нет? Если нет, тогда расскажите пожалуйста алгоритм записи файла драйвера в NORFlash. Спасибо.
-
После добавления в реестр информации о драйвере, должна ли появляться запись о нем в HKEY_LOCAL_MACHINE\Drivers\Active ? Каковы могут быть причины того, что запись о драйвере не появляется?
-
Добрый день.
Драйвер написан для WinCE 6.0. В 5.0 он, скорее всего, не заработает.
-
Драйвер написан для WinCE 6.0. В 5.0 он, скорее всего, не заработает.
Это связано с особенностями образа win ce 5.0?
Вроде при написании драйверов нигде не указывается версия win ce (отличия есть для NT или win 7), или я ошибаюсь?
Еще просьба уточнить sd карта это и есть NORFlash или нет?
-
У WinCE 5 и WinCE 6 сильно отличается архитектура. Функции, вызываемые из драйвера, не реализованы в ОС WinCE 5.0.
Для работы с GPIO Вам нужно работать напрямую (писать и читать) с регистрами процессора.
NorFlash - это не SD-карта, а внутренняя Flash.
-
У WinCE 5 и WinCE 6 сильно отличается архитектура. Функции, вызываемые из драйвера, не реализованы в ОС WinCE 5.0.
Для работы с GPIO Вам нужно работать напрямую (писать и читать) с регистрами процессора.
NorFlash - это не SD-карта, а внутренняя Flash.
Спасибо за ответ.
Если мы прошьем в тион образ win ce 6.0, как осуществить запись Вашего драйвера GPIO в NorFlash?
P.S. судя по описанию на Вашем сайте, win ce 6.0 прошить в тион (с платой сириус) не получиться?
-
В WinCE 6.0 драйвер GPIO уже включен.
Для Тиона WinCE 6 мы не порторовали.