"CeleronKeyInputLib" C library топик-ссылка

General C library (crossplatform) for "Buttons" and "Encoders" input processing in microcontrollers. Библиотека процедур для интеллектуальной обработки ВВОДА в МК (событий от Кнопок и Энкодеров). Особенности: Кроссплатформенность. Адаптивность к любому железу. Универсальное API. Событийная модель кода обслуживающего интерфейс.

AVRASM: Библиотека процедур для интеллектуальной обработки ВВОДА в МК: событий от Кнопок и Энкодеров (часть 2: порядок внедрения и использования)

AVR
Большинству микроконтроллерных устройств требуется поддерживать интерфейс с пользователем-человеком: для вывода используются светодиоды или дисплеи, а для ввода — обычно, традиционные Кнопки и Энкодеры.
Данная реализация «Библиотеки процедур для интеллектуальной обработки ВВОДА» написана на языке ассемблера, для компилятора AVRASM. Соответственно, она предназначена для разработки программных прошивок (firmware) на языке ассемблер, для микроконтроллеров Atmel AVR (8-bit).



Читать дальше

AVRASM: Библиотека процедур для интеллектуальной обработки ВВОДА в МК: событий от Кнопок и Энкодеров (часть 1: авторская методика и реализация)

AVR
Микроконтроллерное устройство может работать исключительно в автономном режиме: получать сигналы с датчиков, и выдавать управляющие импульсы, иногда оно ещё взаимодействует с ЭВМ или другими микроконтроллерами… Но большинству микроконтроллерных устройств требуется поддерживать интерфейс с пользователем-человеком: для вывода используются светодиоды или дисплеи, а для ввода — традиционные Кнопки и Энкодеры, редко используются и другие экзотические устройства ввода
В данной работе будут рассматриваться только традиционные инструменты ввода: «цифровые Кнопки / Клавиатуры» и «инкрементальные Энкодеры», поскольку именно они используются почти всегда.

Содержание:


Читать дальше

Динамический ввод и вывод на 74HC595

Сей опус я решил посвятить динамическому вводу/выводу, но не программной его составляющей, здесь этого навалом, а железу. Скучных примеров исходников выкладывать не буду. Так вот, собственно, не нарадуюсь на элементарный и всем известный регистр 74HC595. Уже давно в моих конструкциях – он единственный из присутствующей логики, помимо самого контроллера. Вдохновившись некоторыми постами типа 3D Globe V2.0, и вспомнив, что у меня завалялись светодиодные матрицы 5х7 и решил из них сделать некое табло или часы какие-нить (ну не вставляют меня уже обычные 7-ми сегментники, прошлый век! :) ). Подумал, как же связать обработку вывода и микроконтроллер, используя минимум портов? Ответ нашел – использовать линейку из 595-ых, всего 3 управляющих провода +2 питание, итого 5! Вся прелесть в том, что у регистра есть фиксация параллельного вывода, а значит не нужно печалиться о строгом времени вывода и прочих дрожаний и смазываний изображения! Получилось вот что:


Читать дальше