Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Вопросы начинающих

Вопросы начинающих Прежде чем задать вопрос, стоит воспользоваться поиском

Ответ
 
Опции темы Опции просмотра
Старый 26.02.2010, 00:06   #1
_void_
Junior Member
 
Регистрация: 20.01.2010
Сообщений: 14
Вес репутации: 100/30
_void_ will become famous soon enough_void_ will become famous soon enough
По умолчанию Алгоритм управления прибором

Есть некий прибор, который управляется с клавиатуры из 10 кнопок. В составе кнопок есть и курсорные кнопки, и кнопки быстрого вызова. Есть ЖК графический дисплей, на котором необходимо отображать все действия по управлению прибором посредством системы меню, подменю, подсвечиванием различных элементов, изменения высоты светящегося столба (типа градусника) и т. д.

Есть управляющий микроконтроллер (ARM9).

Как методологически построить алгоритм такого управления и индикации?

Я себе это представляю так.
На входе: Есть переменная, хранящая в себе результат опроса кнопок. Есть вторая переменная, описывающая текущее состояние прибора.
На выходе хотелось бы иметь: Прямой вызов функции или указатель на функцию, которую необходимо выполнить при данном сочетаннии состояния кнопок и состояния прибора, а также изменить переменную состояния прибора на новое (обновить).

Плохо себе представляю, что должно быть между этими входом и выходом. Если бы состояний было немного, да и кнопок поменьше, сделал бы простыми процедурами Switch....case. Но здесь этих свичей городить надо чертову уйму, причем многоуровневых. Много работы, да и запутаться и ошибиться легко. Как бы все это дело упростить или свести к рутине, которая легко отслеживается?

В итоге надо все это реализовать на Си без использования каких-либо "костылей" типа ОС и спецбиблиотек.
_void_ вне форума   Ответить с цитированием
Старый 03.03.2010, 17:52   #2
SSH
Banned
 
Регистрация: 27.02.2007
Адрес: Красноярск
Возраст: 47
Сообщений: 2,387
Вес репутации: 950/0
SSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to beholdSSH is a splendid one to behold
По умолчанию Re: Алгоритм управления прибором

IMHO RTOS и предназначена для подобных задач, тем более на базе ARM9. Но Вы, видимо, ещё не использовали эти "костыли", раз называете их так презрительно и думаю, совершенно безосновательно. Если каша из switch-ей и if-ов Вам удобнее, то делайте так. Но генерить прерывание по нажатию клавиши, и от нажатой клавиши посылать сообщение, которое примет ждущая именно его задача, мне кажется будет удобнее. Всё зависит от стиля программтрования и личных предпочтений, можно всё вообще на ассемблере написать, вот только зачем?
SSH вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Считывание данных с панели управления Andrey Общетехнические вопросы 10 31.10.2008 18:15
Цифровая система импульсно-фазового управления тиристорным преобразователем Ainnka Вопросы начинающих 1 29.10.2008 10:09
схема управления тиристором Sergey1 Общетехнические вопросы 9 01.07.2008 09:19
Блок управления ДВС Urec Источники питания и силовая электроника 31 10.01.2008 19:56


Часовой пояс GMT +3, время: 00:54.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot