1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/FeiBenDeWuGui-mlib_nixietube-drive

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
README.md 6.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 05.06.2025 09:16 90d511d

mlib_NixietubeDrive

Описание

Библиотека верхнего уровня для управления цифровыми табло. Необходимо предоставить базовый уровень управления вводом-выводом, чтобы обеспечить сканирование цифровых табло, а также легко настроить частоту сканирования и количество разрядов цифровых табло. В будущем планируется поддержка различных типов цифровых табло.

  1. Текущая версия поддерживает только обычные цифровые табло восьмиразрядного типа (с точкой или без).

Архитектура программного обеспечения

C, bk32-bit микроконтроллер

Инструкции по использованию

Скопируйте репозиторий в проект и добавьте три файла:

mlib_NixietubeDrive.c
mlib_NixietubeDrive.h
mlib_NixietubeDrive_Port.c

Необходимо изменить или реализовать два функции в файле mlib_NixietubeDrive_Port.c для различных микроконтроллеров:

void sit_set(uint8 sit, uint8 state)
void seg_set(uint16 value)

Шаги использования

  1. Определите объект цифрового табло

    MLIB_NIXIETUBE_OBJECT_S myobject;

  2. Инициализируйте объект цифрового табло с использованием параметров по умолчанию

    mlib_Nixietube_Object_DefaulInit(&myobject);

  3. Инициализируйте объект цифрового табло и базовый уровень управления вводом-выводом, передав функцию инициализации базового уровня управления вводом-выводом

    mlib_Nixietube_init(hardwareInit, &myobject);

Исправления:

  • "bk32-bit" заменено на "32-битный"
  • "функции" заменено на "функции" (исправлено окончание слова)4. Перенастройте параметры объекта цифрового табло (если параметры были настроены по умолчанию с помощью функции mlib_Nixietube_Object_DefaultInit и нет специальных требований к параметрам, этот шаг можно пропустить). myobject->type_enum = MLIB_NIXIETUBE_SEG8_GENERAL; // Установите тип цифрового табло, например, обычный 8-разрядный, обычный 7-разрядный или цифровое табло в виде креста myobject->bit_count = 4; // Установите общее количество разрядов цифрового табло myobject->bit_enable_level = 0; // Уровень активации разрядов цифрового табло (высокий или низкий уровень) myobject->seg_enable_level = 0; // Уровень активации сегментов цифрового табло (низкий или высокий уровень) myobject->lum_level_max = 50; // Максимальный уровень яркости myobject->lum_level = 0; // Текущий уровень яркости myobject->dis_buff.seg8_general[0] = display_value[0]; // Значение по умолчанию для отображения myobject->dis_buff.seg8_general[1] = display_value[1]; myobject->dis_buff.seg8_general[2] = display_value[2]; myobject->dis_buff.seg8_general[3] = display_value[3];
  1. Реализуйте функции управления разрядами и сегментами в файле интерфейса mlib_NixietubeDrive_Port.c6. Вызовите функцию сканирования в прерываниях или таймерах. Частота вызова функции сканирования напрямую связана с частотой обновления цифрового табло. Конкретная формула расчета приведена ниже.
mlib_Nixietube_Scan(&myobject, sit_set, seg_set);

Метод расчета частоты сканирования:

[ \text{Hz} = \frac{1}{\text{время вызова функции сканирования} \times (\text{максимальный уровень яркости} + \text{текущий уровень яркости}) \times \text{количество цифр табло}} ]

Например: функция сканирования вызывается каждые 100 микросекунд, максимальный уровень яркости равен 40, текущий уровень яркости равен 10, количество цифр табло равно 4.

[ \text{Частота сканирования} = \frac{1}{0.0001 , \text{с} \times (40 + 10) \times 4} = 50 , \text{Гц} ]

Участие в вкладе1. Fork этого репозитория

  1. Создать новую ветку Feat_xxx
  2. Подать код
  3. Создать Pull Request

Фичи

  1. Использовать Readme_XXX.md для поддержки различных языков, например Readme_en.md, Readme_zh.md
  2. Официальный блог Gitee blog.gitee.com
  3. Вы можете https://gitee.com/explore посетить этот адрес, чтобы узнать о выдающихся открытых проектах на Gitee
  4. GVP — сокращение от Gitee Most Valuable Open Source Project, это оценка лучших открытых проектов на платформе
  5. Официальная документация Gitee https://gitee.com/help
  6. Секция Gitee Stars представляет собой рубрику, посвящённую представлению профиля пользователей Gitee https://gitee.com/gitee-stars/

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/FeiBenDeWuGui-mlib_nixietube-drive.git
git@api.gitlife.ru:oschina-mirror/FeiBenDeWuGui-mlib_nixietube-drive.git
oschina-mirror
FeiBenDeWuGui-mlib_nixietube-drive
FeiBenDeWuGui-mlib_nixietube-drive
master