реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Коммуникация DM3730 c STM32L151R8
Sedom91
сообщение Feb 25 2017, 12:54
Сообщение #1





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Добрый день !

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

Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 25 2017, 13:29
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Sedom91 @ Feb 25 2017, 15:54) *
Думается , надо сделать SPi Slave на DM3730. Но на сайте LogicPd было написано , что они вроде не поддерживают .

Сделайте на стм USB-HID клавиатуру и не мучайтесь biggrin.gif
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 26 2017, 06:01
Сообщение #3





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Цитата(mantech @ Feb 25 2017, 16:29) *
Сделайте на стм USB-HID клавиатуру и не мучайтесь biggrin.gif


Да, но там всего 5 кнопок и как это вообще мне поможет ?
Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 26 2017, 07:28
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Sedom91 @ Feb 26 2017, 09:01) *
Да, но там всего 5 кнопок и как это вообще мне поможет ?

Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте...
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 26 2017, 07:59
Сообщение #5





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Цитата(mantech @ Feb 26 2017, 10:28) *
Неважно, сколько кнопок - хоть одна. Дело в том, что на DM3730 работает линукс, который знает, что такое стандартная HID клавиатура, поэтому не надо ничего изобретать, просто подмените для линукса стандартную клавиатуру, вашим аналогом на стм, какие коды клавиш использовать для управления вашим приложением - тут уж сами решайте...

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

Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 26 2017, 08:23
Сообщение #6


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Sedom91 @ Feb 26 2017, 10:59) *
У меня на DM сейчас стоит Win Ce 6 , а что значит коды клавиш могу сам выбирать ?


Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 26 2017, 08:59
Сообщение #7





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Цитата(mantech @ Feb 26 2017, 11:23) *
Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...

Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать .Извините , если задаю идиотский вопрос .
Go to the top of the page
 
+Quote Post
Jury093
сообщение Feb 26 2017, 11:19
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(mantech @ Feb 26 2017, 11:23) *
Думаю, винда тоже знает, что такое стандартная усб клавиатура. Хорошо, объясню на пальцах, допустим, есть у меня комп, и мне надо управлять медиаплеером. Конечно, я могу тупо подключить клаву с 101кнопкой и таскать ее как разделочную доску, но мне удобно сделать пульт с 5ю кнопками, для управления плеером. Что я делаю - создаю устройство на контроллере с поддержкой усб-хид клавиатуры, подключаю к нему 5 кнопок, и задаю коды этим кнопкам, которые соотв. кодам клавиш в стандартной клавиатуре, например, курсора, enter и esc, после этого комп воспринимает этот контроллер, как обычную клаву с этими копками, со всеми вытекающими, и не надо лезть в комп, разбираться, как работают spi, gpio и пр...

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

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

Цитата(Sedom91 @ Feb 26 2017, 11:59) *
Это я понял , это типо эмуляции кнопки , но у меня та кнопка привязана на пин STM , мне все равно надо инфу передавать .

кнопку заводите на stm32, для stm32 пишете/ищете прошивку, которая поллит порт кнопки и шлет код события через usb-hid на usb порт вашего dm37xx. для проверки возьмите обычную клавиатуру и проверьте, воткнув в порт платы
Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 26 2017, 17:41
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Jury093 @ Feb 26 2017, 14:19) *
очень правильное решение и вполне универсальное. поддерживаю..


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

Цитата(Jury093 @ Feb 26 2017, 14:19) *
для небольших расстояний можно сцепить по i2c, со стороны DM37 i2c master,


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

Сообщение отредактировал mantech - Feb 26 2017, 17:42
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 27 2017, 05:14
Сообщение #10





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Цитата(mantech @ Feb 26 2017, 20:41) *
В разумных пределах универсальность всегда приветствую.



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


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

Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 27 2017, 07:48
Сообщение #11


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Sedom91 @ Feb 27 2017, 08:14) *
просто плату уже склепали и там STM32L привязан к порту где сидят SPI на DM

Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... cool.gif
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 27 2017, 07:57
Сообщение #12





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Цитата(mantech @ Feb 27 2017, 10:48) *
Вот поэтому я всегда за полное взаимодействие схемотехников и программистов... cool.gif

Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема .
Go to the top of the page
 
+Quote Post
jcxz
сообщение Feb 27 2017, 11:07
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Sedom91 @ Feb 27 2017, 09:57) *
Да взаимодействие вроде было , просто не ожидали, что SPI Slave такая уж проблема .

Как склепали, так и переклепают. Впредь наука схемотехникам будет - не бежать спереди паровоза rolleyes.gif
Go to the top of the page
 
+Quote Post
Sedom91
сообщение Feb 27 2017, 13:22
Сообщение #14





Группа: Участник
Сообщений: 8
Регистрация: 23-02-17
Пользователь №: 95 562



Понятно. То есть Slave никто не поднимал . Ок , будем смотреть как переделывать ?
Go to the top of the page
 
+Quote Post
mantech
сообщение Feb 27 2017, 20:16
Сообщение #15


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(Sedom91 @ Feb 27 2017, 16:22) *
То есть Slave никто не поднимал


Думаю, немного тут тех, кто пишет драйвера для винСЕ, а уж под ваш конкретный камень - еще меньше laughing.gif
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 13th August 2025 - 15:52
Рейтинг@Mail.ru


Страница сгенерированна за 0.0149 секунд с 7
ELECTRONIX ©2004-2016