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

Коммуникация DM3730 c STM32L151R8

Добрый день !

 

Обрабатываю клавиатуру на STM32L, вынес их на прерывания потом передаю в DM3730 (LogicPd).В самом приложение на DM(написанном на Qt 4.8) программа реагирует не каждый раз на нажатие кнопки. Проверил в Debug в Keil каждый раз когда нажимаю кнопку захожу в правильное прерывание. Думается , надо сделать SPi Slave на DM3730. Но на сайте LogicPd было написано , что они вроде не поддерживают . Скажите пожалуйста , как исправить проблему ? Получается сейчас я заполняю буффер , а потом DM каждые 10mS считывает информацию. Может кто-то реализовывал SPI Slave на DM? или как устранить проблему ?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думается , надо сделать SPi Slave на DM3730. Но на сайте LogicPd было написано , что они вроде не поддерживают .

Сделайте на стм USB-HID клавиатуру и не мучайтесь :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сделайте на стм USB-HID клавиатуру и не мучайтесь :biggrin:

 

Да, но там всего 5 кнопок и как это вообще мне поможет ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, но там всего 5 кнопок и как это вообще мне поможет ?

Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте...

У меня на DM сейчас стоит Win Ce 6 , а что значит коды клавиш могу сам выбирать ?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня на DM сейчас стоит Win Ce 6 , а что значит коды клавиш могу сам выбирать ?

 

Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...

Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать .Извините , если задаю идиотский вопрос .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...

очень правильное решение и вполне универсальное. поддерживаю..

 

для небольших расстояний можно сцепить по i2c, со стороны DM37 i2c master, на стороне stm32 slave + выход программного прерывания.. кстати, вместо stm32 можно взять gpio expander с нужными функциями.. и доить в прерывание состояние контактов/кнопок

 

Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать .

кнопку заводите на stm32, для stm32 пишете/ищете прошивку, которая поллит порт кнопки и шлет код события через usb-hid на usb порт вашего dm37xx. для проверки возьмите обычную клавиатуру и проверьте, воткнув в порт платы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

очень правильное решение и вполне универсальное. поддерживаю..

 

В разумных пределах универсальность всегда приветствую.

 

для небольших расстояний можно сцепить по i2c, со стороны DM37 i2c master,

 

Думаю, ТСу еще рановато кодить драйвера железа под виндуСЕ, судя по посту, без обид :biggrin:

Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В разумных пределах универсальность всегда приветствую.

 

 

 

Думаю, ТСу еще рановато кодить драйвера железа под виндуСЕ, судя по посту, без обид :biggrin:

 

Да я не обижаюсь , просто плату уже склепали и там STM32L привязан к порту где сидят SPI на DM . Если бы смог написать драйвер . написал бы SPI SLave. Попробую сегодня сделать как вы сказали . Спасибо большое .

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

просто плату уже склепали и там STM32L привязан к порту где сидят SPI на DM

Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... B)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... B)

Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема .

Как склепали, так и переклепают. Впредь наука схемотехникам будет - не бежать спереди паровоза :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Понятно. То есть Slave никто не поднимал . Ок , будем смотреть как переделывать ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

То есть Slave никто не поднимал

 

Думаю, немного тут тех, кто пишет драйвера для винСЕ, а уж под ваш конкретный камень - еще меньше :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...