Наш канал в telegram

Программирование ARM-контроллеров STM32 на ядре Cortex-M3. Часть 14. Использование DMA

Что такое DMA и зачем это нужно Возможности и работа DMA в stm32 Регистры Техника программирования DMA Что такое DMA и зачем это нужно DMA (Direct Memory Access) — технология прямого доступа к памяти. Эта технология позволяет быстро и без использования центрального процессора пересылать данные из одной области памяти в другую. При этом для такой …

Программирование ARM-контроллеров STM32 на ядре Cortex-M3. Часть 13. Работа с модулями ADC

Общее описание Скорость оцифровки, тактирование Физические линии ввода, группы каналов Включение, запуск оцифровки, режимы работы модулей ADC Одиночные и непрерывные преобразования Сканирование списка каналов Использование DMA Опрос инжектированных каналов Прерывистый режим опроса каналов Режим калибровки Предельный компаратор Регистры Пример Общее описание ADC (analog to digital converter) — это аналого-цифровой преобразователь (АЦП). Модули ADC предназначены для …

Программирование ARM-контроллеров STM32 на ядре Cortex-M3. Часть 12. Работа с модулями USART и UART.

Общее описание Регистры Техника программирования Пример Общее описание USART — это модуль универсального синхронно-асинхронного приёмо-передатчика. В первую очередь эти модули используются для организации связи по интерфейсу RS-232 и другим, имеющим аналогичный формат фреймов (RS-422, RS-485). Модули, естественно, реализуют не весь интерфейс, а только нижний уровень логики (формат передачи одного фрейма, байта), к которому потом ещё …

Программирование ARM-контроллеров STM32 на ядре Cortex-M3. Приложение 3. Драйвера и функции библиотеки StdPeriph

MISC (Framework) ADC BKP CAN CEC CRC DAC DBGMCU DMA EXTI FLASH FSMC GPIO I2C IWDG PWR RCC RTC SDIO SPI TIM USART WWDG Часть 1. Установка MDK, создание проекта, основы Keil uVision Часть 2. Команды и директивы ассемблера, структура и синтаксис программы. Первая программа для STM32 Часть 3. Карта памяти контроллеров STM32, методы работы …

Программирование ARM-контроллеров STM32 на ядре Cortex-M3. Часть 11. Подключение и использование драйверов из пакета StdPeriph

Подключение драйверов стандартной периферии из пакета StdPeriph Пример использования драйверов для работы с RCC и GPIO. Подключение драйверов стандартной периферии из пакета StdPeriph В прошлый раз мы познакомились со стандартом CMSIS, а также научились подключать поставляемые вместе с пакетом Keil uVision библиотеки. Сегодня мы продолжим изучение стандарта CMSIS и рассмотрим пакет StdPeriph Drivers — драйвера …

Микрокомпьютер Omega2. Часть 9. Сборка альтернативной прошивки на базе OpenWRT

Введение Подготовительный этап Алгоритм сборки Дополнительная информация Введение Сегодня я расскажу о том, как собрать альтернативную прошивку для микрокомпьютера Omega2. Зачем это нужно? Ну, во-первых, оригинальная прошивка сделана на базе уже устаревшей версии LEDE OpenWRT, а значит там могут быть ошибки, которые в новых версиях уже пофиксили. Во-вторых, возможности OpenWRT постоянно растут (это ж «open …

Инструкция по созданию Telegram ботов. Часть 5. Пишем Telegram бота на php для работы через longpolling

Введение API telegram для работы через поллинги Переделываем нашего telegram-бота на php для работы через поллинги Замечания и дополнения Введение Чуть меньше года назад я обещал написать, как сделать на php телеграм-бота, работающего через longpolling. И вот, наконец-то, у меня дошли руки, чтобы выполнить это обещание. В чём идея этого метода и чем он принципиально …

Памятка по ООП

Сегодняшняя статья представляет собой небольшую памятку, в которой кратко, в тезистной форме изложены основные понятия объектно-ориентированного программирования (ООП). Программа в ООП представляет собой набор взаимодействующих абстрактных объектов. Объекты имеют атрибуты (свойства, переменные). Эти атрибуты для объектов прописаны программистом. Над объектами можно выполнять операции (методы, действия, функции) с целью модификации этих или других объектов. Сами операции …

Лайфхак — портативный картридер

Сегодня я расскажу о небольшом лайфхаке, позволяющем легко и быстро сделать портативный USB-картридер. Так случилось, что у меня возникла необходимость периодически читать на ноутбук данные резервного копирования с CF-карт (по работе). А CF-карты, к сожалению, имеют достаточно большой физический размер, так что соответствующими картоводами комплектуются только стационарные компы и портативные картоводы, но не ноутбуки. Поскольку …

Микрокомпьютер Omega2. Часть 8. Подключаем проводной Ethernet

Теория Пример Теория Cегодняшняя статья будет посвящена тому, как организовать на микрокомпьютере Omega2 полноценный проводной Ethernet. Вся необходимая физика для Ethrnet-а 100 Мбит/с в модуле Omega2 уже реализована, нам нужно добавить только схему трансформаторной развязки и разъём RJ45. Для скорости 100 Мбит/с понадобится 2 витых пары и, соответственно, два трансформатора. Типовая схема подключения: Что мы …