Рубрика «микроконтроллеры» - 17

UDB. Что же это такое? - 1

В комментариях к моей статье про управление RGB светодиодами средствами блока UDB микроконтроллеров PSoC фирмы Cypress было высказано мнение, что неплохо бы в начале статьи кратко рассказать, что такое вообще UDB. Как я уже отметил в статье, про UDB кратко не написать, но можно просто перевести фирменную документацию на него, чтобы познакомить отечественного читателя со столь мощным средством для реализации микропрограммных функций.
Читать полностью »

Пролог

Всё имеет своё начало. Вот и эта история началась с желания иметь свой медиацентр. Внимательно присмотревшись к предложениям продавцов, я понял, что серийные модели не удовлетворяют мои потребности. А аппетит у меня здоровый… Сразу приведу перечень моих пожеланий:

  • Всё должно быть выполнено единой конструкцией открытого (программно-аппаратного) типа. Т.е. я должен иметь возможность вносить самостоятельные изменения.
  • Аппарат должен уметь работать индивидуально и в составе комплекса с другим оборудованием.
  • Раз в комплексе, значит иметь широкие сетевые возможности, в том числе с возможностью трансляции интерфейсов.
  • Иметь диагональ экрана 19-24 дюйма.
  • Для хранения информации должен быть оборудован жёстким диском, с возможностью подключения внешнего накопителя.
  • Возможность отключения любой подсистемы с кнопочной панели или пульта ДУ.
  • Не помешает система резервного электропитания.
  • Работа в качестве монитора к персональному компьютеру.

Пришло время чесать репу… Окинул взглядом в интернете самодельные конструкции… И они, в плане внутренней организации, мне понравились. По образованию я инженер-системотехник (конструктор вычислительной техники) да и опыт практической работы 25 лет, руки растут правильно, наличие инструмента и самое главное желание, дают уверенность в успешной реализации проекта.

У меня есть матрицы 15-19 дюймов от мониторов и ноутбуков, но нет корпуса. А городить на подносе (не в обиду автору, мне его проект и подход к работе понравились) я не захотел. Не фэншуй. Поэтому приступил к поиску достойного донора. И он был найден — не подающий признаков жизни моноблок Sony VAIO VGC-LN1MR. К сожалению, он ко мне приехал в полуразобранном состоянии. Поэтому приведу фотографию внешнего вида, взятую в интернете, для понимания с чем мы имеем дело. Обещаю – дальше все фотографии и чертежи будут мои.

Вот так он выглядит.

Создание домашнего медиацентра. Пролог - 1

Сказать можно только одно – дизайн на высоте.
Читать полностью »

PVS-Studio, MISRA C, MISRA C++

Начиная с версии 6.27 статический анализатор кода PVS-Studio может классифицировать свои предупреждения согласно стандартам MISRA C и MISRA C++. Благодаря поддержке этих стандартов анализатор стало возможным эффективно использовать для улучшения безопасности, переносимости и надежности программ для встраиваемых систем.
Читать полностью »

Вся правда об ОСРВ. Статья #23. Очереди: введение и базовые службы - 1

Очереди были упомянуты в одной из предыдущих статей (#5). Они предоставляют более гибкий способ передачи простых сообщений между задачами по сравнению с почтовыми ящиками.
Читать полностью »

image

Здравствуй, сообщество!

Представляю собственную реализацию светильника-ночника в виде облака. Основная идея – сделать ночник с имитаций естественных природных процессов и какой-нибудь интерактивностью. Природа – лучший вдохновитель!

За основу взял дешёвый микроконтроллер ATmega8-16PU. Код написан на С без Ардуино и реализует несколько световых эффектов с управлением от общей освещённости пространства и с управлением звуком.

Подробности и фотки — далее…
Читать полностью »

Вся правда об ОСРВ. Статья #19. Семафоры: введение и базовые службы - 1

Семафоры были упомянуты в одной из предыдущих статей (#5). Их основная задача – управление доступом к ресурсам.
Читать полностью »

Вся правда об ОСРВ. Статья #18. Группы флагов событий: вспомогательные службы и структуры данных - 1

Эта статья продолжает описывать группы флагов событий.

Предыдущие статьи серии:

Статья #17. Группы флагов событий: введение и базовые службы
Статья #16. Сигналы
Статья #15. Разделы памяти: службы и структуры данных
Статья #14. Разделы памяти: введение и базовые службы
Статья #13. Структуры данных задач и неподдерживаемые вызовы API
Статья #12. Службы для работы с задачами
Статья #11. Задачи: конфигурация и введение в API
Статья #10. Планировщик: дополнительные возможности и сохранение контекста
Статья #9. Планировщик: реализация
Статья #8. Nucleus SE: внутреннее устройство и развертывание
Статья #7. Nucleus SE: введение
Статья #6. Другие сервисы ОСРВ
Статья #5. Взаимодействие между задачами и синхронизация
Статья #4. Задачи, переключение контекста и прерывания
Статья #3. Задачи и планирование
Статья #2. ОСРВ: Структура и режим реального времени
Статья #1. ОСРВ: введение.

Читать полностью »

«Решить парадокс Грея с дельфинами может любой, а ты попробуй сделать это без дельфинов. »

К вопросу о кривых Безье, быстродействии Ардуино и одном интересном сайте, или как я провел выходные - 1

Вообще то планировал я провести выходные несколько по иному, съездить на Copter Huck (не то, чтобы я был фанатом коптеров, просто посмотреть, что молодежь придумывает, потусоваться типа), но старшая сестра была категорически против. Я, конечно, настаивал (то есть пару раз хмыкнул и сказал" Ну может, все-таки… будет прикольно"), но она была неумолима, а когда супруга приняла ее сторону, шансов на поездку не осталось. Ну и ладно, «не очень то и хотелось», зато немного посидел над забавной задачкой из области программирования, которую сам себе придумал, о чем и докладываю.

( Необходимое примечание — имелись в виду предыдущие выходные, вот так всегда — написание программы требует пары часов, написание отчета о ней и за пять дней поездок в общественном транспорте не завершено.)

В одном недавнем посте автор рассматривал задачу ускорения (кроме всего прочего) расчета кривых Безье (КБ) на МК со сравнительно слабыми параметрами. Ну на самом деле эти параметры на уровне среднего мейнфрейма 70х годов, но по нынешним временам считаются явно недостаточными. В результате определенных действий автору удалось несколько ускорить вычисления, на мой взгляд, явно недостаточно, вот и решил написать, как это следует делать в первом приближении. Я прекрасно знаю универсальный рецепт решения проблем с быстродействием — взять МК с частотой повыше или перейти на другое семейство, но я родом из тех времен, когда мы учились обходится тем, что есть, просто потому, что ничего другого не было, от слова совсем. По нынешним временам подход устаревший, но мне показалось, что будет не безынтересен и современным читателям Хабра.
Читать полностью »

Вся правда об ОСРВ. Статья #16. Сигналы - 1

В этой статье будут рассмотрены сигналы, которые являются простейшими механизмами взаимодействия между задачами в Nucleus SE. Они предоставляют малозатратный способ передачи простых сообщений между задачами.
Читать полностью »

GNU Arm Embedded Toolchain + PVS-Studio

Встраиваемые системы давно и прочно вошли в нашу жизнь. Требования к их стабильности и надежности очень высоки, а исправление ошибок обходится дорого. Поэтому для embedded разработчиков особенно актуально регулярное использование специализированных инструментов для обеспечения качества исходного кода. Эта статья расскажет о появлении поддержки GNU Arm Embedded Toolchain в анализаторе PVS-Studio и дефектах кода, найденных в проекте Mbed OS.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js