Наиболее просматриваемые

Прерывание на контроллере AVR в Atmel AVR Studio

Первым делом о том что такое прерывание.
Прерывание ( interrupt ) - это своеобразная функция, которая будет выполнена при поступлении сигнала на какой нибудь вход контроллера.
При работе в AVR Studio прерывания создаются при помощи макросов ISR() , SIGNAL() и INTERRUPT(). Они помечают некоторую функцию как обработчик прерывания. Их различие в том, что INTERRUPT() и ISR() определяют функцию обработчик для случая, когда разрешено общее прерывание (обработчик может быть прерван), а SIGNAL() для случая когда общее прерывание запрещено.

Виртуальный COM порт. Шлём из COM1 в COM2 и в проект ISIS

Виртуальный COM порт пригодиться тем, кто хочеть отладить программу на компьютере на котором один или вовсе нет COM портов.

Для создания вам понадобиться Windows (В linux можете просто в файл писать данные, всё ведь файл), терминальная программа и Virtual Serial Port Driver от Etima.

Штука это хорошая но, платная. Предлагают демо версию, которую можно бесплатно использовать аж две недели.

Итак по ссылке выше качем и устанавливаем exe`шник.

Используем QSettings для хранения настроек приложения Qt

Решили сделать так, чтобы ваше приложение сохраняло свои настройки в ходе работы и использовало их в дальнейшем? Я предлагаю научится это делать при помощи консольного Qt приложения...

Создадим его в Qt Creator..
Перед использованием необходимо подключить библиотеку QSettings:

#include <QSettings>

Теперь можно создать объект настроек Qt:

Мигаем диодами с помощью ШИМ ( PWM ) stm32f4 discovery [ arm ]

В этой статье речь пойдёт об использовании ШИМ контроллера. Применений этому режиму работы море, от банального моргания диодом, до управления двигателями и прочей электроникой.. Суть заключается в том, что при помощи широтно-импульсной модуляции и сглаживающей RC цепи можно получать аналоговое напряжение в диапазоне от логической еденицы до 0.

Мы же будем использовать таймер TIM4 нашего STM32F4 Discovery в качестве формирователя ШИМ сигнала (на буржуйском PWM - pulse width modulation).

Настроим и оставим как есть, чтобы диоды "моргали" с разной частотой.

SPI в stm32 - шлём из SPI1 в SPI2

SPI - один из самых распространенных интерфейсов для передачи данных между цифровыми микросхемами.
Естественно STM не обошли стороной его в своих микроконтроллерах.

Напишем программу, которая передаёт данные из SPI1 в SPI2, а затем проверяет правильность передачи.
Я буду использовать (как и во всех других статьях) stm32f4-discovery с мк stm32f407vgt6.
Приступим.

Заголовки:

Управление семисегментным индикатором при помощи SPI (сдвигового регистра 74hc595)

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

Семисегментный индикатор

Рассмотрим схему индикатора:

схема индикатора

Самая простая нейронная сеть на Python

Мы сейчас переживаем настоящий бум нейронных сетей. Их применяют для распознания, локализации и обработки изображений. Нейронные сети уже сейчас умеют многое что не доступно человеку. Нужно же и самим вклиниваться в это дело!

Рассмотрим нейтронную сеть которая будет распознавать числа на входном изображении. Все очень просто: всего один слой и функция активации. Это не позволит нам распознать абсолютно все тестовые изображения, но мы справимся с подавляющим большинством.

В качестве данных будем использовать известную в мире распознания чисел подборку данных MNIST.

Вывод графиков в Qt 5 при помощи QCustomPlot

Одной из распространенных задач программирования является - построение графиков.
Вы конечно можете создать новый проект и используя библиотеки вроде freeglut набросать программку для отрисовки графика, но зачем заниматься изобретением велосипеда? Зачем рисовать оси самостоятельно, если это можно сделать одной строкой при помощи библиотеки, которая не особо то и раздуем ваш код.

Мой выбор для таких вещей - QCustomPlot. Это библиотека для Qt.

Прошивка внешнего контроллера при помощи stm32 discovery - SWD

Для создания минимального проекта нам понадобится: контроллер stm32 ( у меня stm32f103 ), жменя проводов, светодиод (для проверки).
Мы не будем вешать даже кварц, чтобы не усложнять процесс.
Очень удобно использовать вот такую плату-переходник с LQFP:

Стоит она в районе 1$. Зато не надо травить крохотные дорожки.
Собираем вот такую схему (для stm32f103 48ног):