Sedom91 0 25 февраля, 2017 Опубликовано 25 февраля, 2017 · Жалоба Добрый день ! Обрабатываю клавиатуру на STM32L, вынес их на прерывания потом передаю в DM3730 (LogicPd).В самом приложение на DM(написанном на Qt 4.8) программа реагирует не каждый раз на нажатие кнопки. Проверил в Debug в Keil каждый раз когда нажимаю кнопку захожу в правильное прерывание. Думается , надо сделать SPi Slave на DM3730. Но на сайте LogicPd было написано , что они вроде не поддерживают . Скажите пожалуйста , как исправить проблему ? Получается сейчас я заполняю буффер , а потом DM каждые 10mS считывает информацию. Может кто-то реализовывал SPI Slave на DM? или как устранить проблему ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 25 февраля, 2017 Опубликовано 25 февраля, 2017 · Жалоба Думается , надо сделать SPi Slave на DM3730. Но на сайте LogicPd было написано , что они вроде не поддерживают . Сделайте на стм USB-HID клавиатуру и не мучайтесь Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба Сделайте на стм USB-HID клавиатуру и не мучайтесь Да, но там всего 5 кнопок и как это вообще мне поможет ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба Да, но там всего 5 кнопок и как это вообще мне поможет ? Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте... У меня на DM сейчас стоит Win Ce 6 , а что значит коды клавиш могу сам выбирать ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба У меня на DM сейчас стоит Win Ce 6 , а что значит коды клавиш могу сам выбирать ? Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр... Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать .Извините , если задаю идиотский вопрос . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Jury093 2 26 февраля, 2017 Опубликовано 26 февраля, 2017 · Жалоба Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр... очень правильное решение и вполне универсальное. поддерживаю.. для небольших расстояний можно сцепить по i2c, со стороны DM37 i2c master, на стороне stm32 slave + выход программного прерывания.. кстати, вместо stm32 можно взять gpio expander с нужными функциями.. и доить в прерывание состояние контактов/кнопок Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать . кнопку заводите на stm32, для stm32 пишете/ищете прошивку, которая поллит порт кнопки и шлет код события через usb-hid на usb порт вашего dm37xx. для проверки возьмите обычную клавиатуру и проверьте, воткнув в порт платы Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 26 февраля, 2017 Опубликовано 26 февраля, 2017 (изменено) · Жалоба очень правильное решение и вполне универсальное. поддерживаю.. В разумных пределах универсальность всегда приветствую. для небольших расстояний можно сцепить по i2c, со стороны DM37 i2c master, Думаю, ТСу еще рановато кодить драйвера железа под виндуСЕ, судя по посту, без обид Изменено 26 февраля, 2017 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба В разумных пределах универсальность всегда приветствую. Думаю, ТСу еще рановато кодить драйвера железа под виндуСЕ, судя по посту, без обид Да я не обижаюсь , просто плату уже склепали и там STM32L привязан к порту где сидят SPI на DM . Если бы смог написать драйвер . написал бы SPI SLave. Попробую сегодня сделать как вы сказали . Спасибо большое . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба просто плату уже склепали и там STM32L привязан к порту где сидят SPI на DM Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... B) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... B) Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема . Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 184 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема . Как склепали, так и переклепают. Впредь наука схемотехникам будет - не бежать спереди паровоза :rolleyes: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Sedom91 0 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба Понятно. То есть Slave никто не поднимал . Ок , будем смотреть как переделывать ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 27 февраля, 2017 Опубликовано 27 февраля, 2017 · Жалоба То есть Slave никто не поднимал Думаю, немного тут тех, кто пишет драйвера для винСЕ, а уж под ваш конкретный камень - еще меньше :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться