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

 
 
> Опрос клавиатуры на С, Как написать компактный и "красивый" код?
Make_Pic
сообщение Jun 23 2018, 05:17
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828



Опрос клавиатуры на С -> Как написать компактный и "красивый" код?
Дайте pls примеры опроса матрицы клавиш на С (C++ не надо).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
iliusmaster
сообщение Jun 24 2018, 11:11
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 181
Регистрация: 15-04-17
Пользователь №: 96 556



Ну раз музыканты это специфика, то вот еще один пример.
Есть у меня самодеятельный ЦАП с пультом управления. Пульт с многими кнопками, а питается для уменьшения габаритов от батареи типоразмера 2320. Так вот если мне каждые 100мс опрашивать кнопки, то батарейки придется часто менять. Можно даже придумать хитрый алгоритм, который будет увеличивать интервал между опросами, если длительное время отсутствует нажатие, но тогда я буду беситься от долгого времени отклика при первом нажатии.
Диоды же, повешенные на прерывание, позволяют МК спать все время, пока не произошло нажатия. Время работы от батареи значительно вырастает....
Эти примеры я для чего привожу, что каждой задаче - свое решение. И вопрос как лучше опрашивать клавиатуру на Си, требует уточнения, какую клавиатуру и в каких условиях.
Go to the top of the page
 
+Quote Post
k155la3
сообщение Jun 24 2018, 13:07
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 123
Регистрация: 8-03-09
Из: Днепр
Пользователь №: 45 848



Цитата(iliusmaster @ Jun 24 2018, 14:11) *
Ну раз музыканты это специфика, . . . .

Мой коллега по работе пламенный сторонник "прерывательной" клавиатуры. Да, если нужен глубокий LPM и в то же время - быстрая реакции на
нажатие - прерывания вне конкуренции.
Go to the top of the page
 
+Quote Post
Make_Pic
сообщение Jun 25 2018, 02:06
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 779
Регистрация: 9-10-04
Из: Россия, Пермь
Пользователь №: 828



Цитата(k155la3 @ Jun 24 2018, 17:07) *
Мой коллега по работе пламенный сторонник "прерывательной" клавиатуры. Да, если нужен глубокий LPM и в то же время - быстрая реакции на
нажатие - прерывания вне конкуренции.

Тема ушла куда то "налево" sad.gif А хотелось просто увидеть код хорошего простого решения по клавиатуре...
Go to the top of the page
 
+Quote Post
arhiv6
сообщение Jun 27 2018, 05:34
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 633
Регистрация: 21-05-10
Из: Томск
Пользователь №: 57 423



Цитата(Make_Pic @ Jun 25 2018, 09:06) *
Тема ушла куда то "налево" sad.gif А хотелось просто увидеть код хорошего простого решения по клавиатуре...

Встречал эти библиотеки:
http://chipenable.ru/index.php/programming...osa-knopok.html
https://github.com/Celeron/gcc-celeronkeyinputlib
Сам эти библиотеки не пробовал, но можно на их примере посмотреть, как другие делают.


--------------------
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Make_Pic   Опрос клавиатуры на С   Jun 23 2018, 05:17
- - Forger   Цитата(Make_Pic @ Jun 23 2018, 08:17) Опр...   Jun 23 2018, 06:38
|- - Make_Pic   Цитата(Forger @ Jun 23 2018, 09:38) ... Д...   Jun 23 2018, 07:20
||- - Forger   Цитата(Make_Pic @ Jun 23 2018, 10:20) Я н...   Jun 23 2018, 08:05
||- - AlexandrY   RE: Опрос клавиатуры на С   Jun 23 2018, 13:40
||- - Forger   ЦитатаB такая генерация спасает от рутины громозди...   Jun 23 2018, 13:54
|||- - AlexandrY   Цитата(Forger @ Jun 23 2018, 16:54) Отлич...   Jun 23 2018, 14:09
|||- - Forger   Цитата(AlexandrY @ Jun 23 2018, 17:09) Во...   Jun 23 2018, 14:13
|||- - AlexandrY   Цитата(Forger @ Jun 23 2018, 17:13) Друго...   Jun 23 2018, 14:22
|||- - Forger   Цитата(AlexandrY @ Jun 23 2018, 17:22) Та...   Jun 23 2018, 14:29
|||- - AlexandrY   Цитата(Forger @ Jun 23 2018, 17:29) Какие...   Jun 23 2018, 14:43
|||- - Forger   Цитата(AlexandrY @ Jun 23 2018, 17:43) Че...   Jun 23 2018, 14:54
||- - x893   Цитата(AlexandrY @ Jun 23 2018, 16:40) .....   Jun 23 2018, 15:01
||- - Сергей Борщ   QUOTE (x893 @ Jun 23 2018, 18:01) Но это ...   Jun 23 2018, 16:01
||- - AlexandrY   Цитата(Сергей Борщ @ Jun 23 2018, 19:01) ...   Jun 23 2018, 17:25
|- - x893   Цитата(Forger @ Jun 23 2018, 09:38) ... д...   Jun 23 2018, 08:03
- - iliusmaster   Обычно, чтобы ничего постояно не опрашивать, все с...   Jun 23 2018, 17:17
|- - Forger   Цитата(iliusmaster @ Jun 23 2018, 20:17) ...   Jun 23 2018, 18:03
|- - k155la3   Цитата(iliusmaster @ Jun 23 2018, 20:17) ...   Jun 24 2018, 08:23
- - ArtemKAD   Ну развели... Проблема дребезга полностью освещена...   Jun 23 2018, 19:56
|- - Forger   Цитата(ArtemKAD @ Jun 23 2018, 22:56) Ну ...   Jun 23 2018, 20:43
|- - Сергей Борщ   QUOTE (ArtemKAD @ Jun 23 2018, 22:56) For...   Jun 23 2018, 21:07
|- - Forger   Цитата(Сергей Борщ @ Jun 24 2018, 00:07) ...   Jun 23 2018, 21:17
|- - ArtemKAD   Цитата(Сергей Борщ @ Jun 24 2018, 00:07) ...   Jun 23 2018, 23:20
|- - Forger   Цитата(ArtemKAD @ Jun 24 2018, 02:20) Я б...   Jun 24 2018, 06:52
- - ArtemKAD   Импульсную подтяжку еще и на кнопку - знаете вы то...   Jun 24 2018, 07:23
|- - Forger   Цитата(ArtemKAD @ Jun 24 2018, 10:23) Имп...   Jun 24 2018, 08:10
||- - ArtemKAD   Цитата(Forger @ Jun 24 2018, 11:10) Извра...   Jun 25 2018, 22:31
||- - AlexandrY   Цитата(ArtemKAD @ Jun 26 2018, 01:31) Кон...   Jun 26 2018, 05:17
||- - Forger   Цитата(AlexandrY @ Jun 26 2018, 08:17) Чт...   Jun 26 2018, 05:25
||- - iliusmaster   Цитата(AlexandrY @ Jun 26 2018, 08:17) Чт...   Jun 26 2018, 05:30
|||- - =L.A.=   Цитата(iliusmaster @ Jun 26 2018, 08:30) ...   Jun 26 2018, 05:44
||||- - haker_fox   QUOTE (=L.A.= @ Jun 26 2018, 13:44) Писан...   Jun 26 2018, 06:32
||||- - Forger   Имхо, физика процесса тут не очень однозначная: ра...   Jun 26 2018, 06:52
|||- - AlexandrY   Цитата(iliusmaster @ Jun 26 2018, 08:30) ...   Jun 26 2018, 07:42
|||- - Forger   Цитата(AlexandrY @ Jun 26 2018, 10:42) По...   Jun 26 2018, 07:49
|||- - iliusmaster   Цитата(AlexandrY @ Jun 26 2018, 10:42) А ...   Jun 28 2018, 15:55
|||- - AlexandrY   Цитата(iliusmaster @ Jun 28 2018, 18:55) ...   Jun 28 2018, 19:40
|||- - Herz   Цитата(AlexandrY @ Jun 28 2018, 22:40) Ну...   Jun 28 2018, 19:49
||||- - AlexandrY   Цитата(Herz @ Jun 28 2018, 22:49) Коллега...   Jun 28 2018, 20:27
||||- - Forger   Вот еще немного любопытной информации про электрич...   Jun 28 2018, 20:28
|||||- - AlexandrY   Цитата(Forger @ Jun 28 2018, 23:28) Вот е...   Jun 29 2018, 04:36
|||||- - Forger   Цитата(AlexandrY @ Jun 29 2018, 07:36) У ...   Jun 29 2018, 05:08
|||||- - AlexandrY   Цитата(Forger @ Jun 29 2018, 08:08) И не ...   Jun 29 2018, 05:39
|||||- - Forger   Цитата(AlexandrY @ Jun 29 2018, 08:39) Ищ...   Jun 29 2018, 05:50
|||||- - AlexandrY   Цитата(Forger @ Jun 29 2018, 08:50) По-хо...   Jun 29 2018, 06:40
|||||- - Forger   Цитата(AlexandrY @ Jun 29 2018, 09:40) От...   Jun 29 2018, 06:51
|||||- - AlexandrY   Цитата(Forger @ Jun 29 2018, 09:51) Пруфы...   Jun 29 2018, 06:56
|||||- - Forger   Цитата(AlexandrY)Также вам предлагаю помолчать отн...   Jun 29 2018, 07:05
||||- - rx3apf   Цитата(AlexandrY @ Jun 28 2018, 23:27) То...   Jun 28 2018, 20:41
|||||- - AlexandrY   Цитата(rx3apf @ Jun 28 2018, 23:41) Все б...   Jun 28 2018, 20:43
||||- - Herz   Цитата(AlexandrY @ Jun 28 2018, 23:27) С ...   Jun 28 2018, 23:13
|||- - rx3apf   Цитата(AlexandrY @ Jun 28 2018, 22:40) (д...   Jun 28 2018, 20:11
||- - ArtemKAD   Цитата(AlexandrY @ Jun 26 2018, 08:17) Чт...   Jun 28 2018, 14:42
|- - Herz   Цитата(ArtemKAD @ Jun 24 2018, 10:23) Имп...   Jun 24 2018, 09:50
|- - Forger   Цитата(Herz @ Jun 24 2018, 12:50) Греть р...   Jun 24 2018, 10:03
|- - Herz   Цитата(Forger @ Jun 24 2018, 13:03) Напри...   Jun 25 2018, 10:02
|- - Forger   Цитата(Herz @ Jun 25 2018, 13:02) А зачем...   Jun 25 2018, 12:13
|- - AlexandrY   Цитата(Forger @ Jun 25 2018, 15:13) Вы ве...   Jun 25 2018, 12:24
|- - Forger   Цитата(AlexandrY @ Jun 25 2018, 15:24) А ...   Jun 25 2018, 12:32
- - iliusmaster   У музыкантов нужно точно отслеживать длительность ...   Jun 24 2018, 09:30
|- - Forger   Цитата(iliusmaster @ Jun 24 2018, 12:30) ...   Jun 24 2018, 09:38
|- - k155la3   Цитата(iliusmaster @ Jun 24 2018, 12:30) ...   Jun 24 2018, 09:57
|- - Forger   Цитата(iliusmaster @ Jun 24 2018, 14:11) ...   Jun 24 2018, 11:21
|- - AlexandrY   Цитата(Make_Pic @ Jun 25 2018, 05:06) Тем...   Jun 25 2018, 08:49
|- - k155la3   Цитата(Make_Pic @ Jun 25 2018, 05:06) Тем...   Jun 25 2018, 09:09
||- - AlexandrY   Цитата(k155la3 @ Jun 25 2018, 12:09) Вот ...   Jun 25 2018, 10:35
- - k155la3   Цитата(Make_Pic @ Jun 23 2018, 08:17) . ....   Jun 26 2018, 08:41
- - Jenya7   В последних проектах юзаем ADP5589. Изначально я б...   Jun 26 2018, 14:35
|- - Forger   Цитата(Jenya7 @ Jun 26 2018, 17:35) В пос...   Jun 26 2018, 15:24
||- - haker_fox   QUOTE (Forger @ Jun 26 2018, 23:24) Имхо,...   Jun 27 2018, 02:32
|||- - Forger   Цитата(haker_fox @ Jun 27 2018, 05:32) Ну...   Jun 27 2018, 04:35
||- - k155la3   Цитата(Forger @ Jun 26 2018, 18:24) Код в...   Jun 27 2018, 06:36
|- - AlexandrY   Цитата(Jenya7 @ Jun 26 2018, 17:35) В пос...   Jun 27 2018, 05:08
- - haker_fox   QUOTE (Forger @ Jun 27 2018, 12:35) Спорн...   Jun 27 2018, 07:22
- - rx3apf   Напряжение, очевидно, нужно чтобы пробить пленку. ...   Jun 28 2018, 15:59
- - Forger   Цитата(iliusmaster) Цитата(rx3apf) Вот: https://el...   Jun 28 2018, 16:04


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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 01:37
Рейтинг@Mail.ru


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