Hi-Tech Arduino Компьютеры Интернет
HV-Lab Reference Linux Форум
Справочники Libraries Windows Галерея
Электроника Hardware Hardware Загрузки
Печатные платы Forum Программирование Мини-чат
[ Февр 26, 07:42 ] admin: Форум перешел в разряд архивного.
[ Февр 24, 19:02 ] admin: переехали на новый сервер. Грядут перемены.
[ Фев 20, 08:38 ] кулибин: Переход на SSL был непрост (особенно с абсолютными путями на изображения, но мы его осуществили)
RSS статьи
 
Статьи

Статьи->Программирование МК->МенюОС .9R3 [ Поиск ]

МенюОС .9R3 - Первая версия-релиз
Отправил: кулибин, Суббота, 08 Декабря 2012 15:56

Практически во всех проектах с ЖК-дисплеем требуется создать удобное меню для конфигурации устройства и запуска необходимых приложений. И неплохо было бы иметь под рукой готовый инструмент для его создания. Такой инструмент позволит сконцентрироваться на разработке конечного продукта, не затрачивая ресурсы на разработку интерфейса конфигуратора. О таком инструменте и будет данная статья.

Проект МенюОС был создан в августе 2010г, и с тех пор успешно применяется при разработке устройств управления и автоматики. Проект изначально был задуман как open-source, но при этом, имелась более старшая закрытая версия. Честно говоря, почти весь функционал закрытой версии постепенно перешел в открытую ветку и данная версия менюОС является самой актуальной и постоянно поддерживается. Лицензия проекта BSD, позволяющая создавать на своей основе коммерческие прошивки. МенюОС распространяется бесплатно, но некоторые закрытые модули приобретаются и разрабатываются за отдельную плату.

Строение системы:

Основной единицей системы является файл. Файл характеризуется типом, названием и набором параметров. В настояий момент, в системе имеется 6 типов файлов:

Тип Описание
T_FOLDER Папка со списком файлов.
T_DFOLDER Динамическая папка, хранит несколько копий одного файла
T_SFOLDER Папка выбора. Хранит список пунктов выбора конфига
T_APP Приложение
T_CONF Конфиг. Редактирование конфига осуществляется в редакторе конфигов и позволяет установить необходимое значение
T_DCONF Динамический конфиг. Используется совместно с динамической папкой и позволяет отредактировать область памяти конфигов
T_SCONF Конфиг выбора. Используется вместе с папкой выбора. Позволяет выбрать один из нескольких текстовых выриантов.

 Каждый файл может иметь до двух параметров, задающих те или иные свойства файла. Подробное описание параметров описано в разделе Структура Файлов

Всего типов файлов может быть до 256.  

Количество файлов в структуре меню ограничено объемом памяти контроллера. В настоящий момент все переменные используются типа uint8_t что требует количество файловдо 255.

Учитывая, что все файлы могут быть динамическими, общее количество файлов может быть равно 2^31.  

Основные возможности системы

  1. Древовидное, переплетающееся меню с 255 листьями
  2. До 256 различных типов файлов. 
  3. До 255 уровней вложенности.
  4. При использовании динамических папок возможно описание дерева, имеющего 2^32 листьев.
  5. Отсутствие аппаратной привязки к конкретному типу МК. Поддерживаются любые контроллеры ATmega с достаточным количеством памяти.
  6. Возможность подключения до 8 кнопок и использование их в любой конфигурации.

Первоначальная настройка проекта

Для того, чтобы внедрить данную систему в ваш проект, необходимо последовательно выполнить следующие действия:

  1. Выполнить настойку кнопок
  2. Произвести настройку дисплея
  3. Сконфигурировать массив файлов
  4. сконфигурировать массив конфигов
  5. И подключить ваши приложения

Настройка проекта завершена! Можно попробовать скомпилировать проект и залить прошивку в контроллер.

Скачать актуальную версию проекта под Arduino 0022 и новее можно по ссылке:MenuOS_9R3.rar

Версия проекта под AVR Studio будет выложена после обновления

Артем Кашканов

 

Голосов Голосов: 1 - В среднем: 5

Добавить комментарий Оценить
Комментарии

Статистика
Всего 205 статей в базе
Наиболее просматриваемые: Arduino и сеть RS485.
Лучшие по оценкам: РЦВМ1 - Релейная Цифровая Вычислительная Машина

Пользователи в разделе статьи: 1 (0 Пользователи 1 Гости и 0 Скрытые пользователи)
Видимые пользователи:


 
 

MKPortal©2003-2008 mkportal.it
MultiBoard ©2007-2009 RusMKPortal
Страница сгенерированна за 0.01894 секунд с 24 обращениями в базу данных

Intel Core i5-3450 2Gb RAM 100Gb HDD 100Mbps Ethernet

© Artem Kashkanov 2005-2016