Top.Mail.Ru

STM32 и I2C. Настройка и использование интерфейса I2C.

Довольно часто возникает необходимость связать микроконтроллер STM32 c другим микроконтроллером или с другим девайсом, например, внешней памятью. И тут на помощь приходит шина I2C, о которой до сих пор не было написано статьи на нашем сайте. Пора исправлять это недоразумение 🙂 И снова для начала обсудим теоретические аспекты этой замечательной шины. Итак, I2C – последовательная …

Продолжить чтение

STM32 и SDIO. Подключение SD-карты к микроконтроллеру.

Карта памяти micro SD

Всем доброго дня! Сегодня мы поговорим о подключении SD–карты к микроконтроллеру STM32. Казалось бы, памяти у контроллеров STM32F10x и так много, зачем там еще дополнительная, но это впечатление обманчиво 🙂 Вот, например, надо нам на дисплей вывести пару-тройку разных изображений – формат 320*240 – то есть 76800 пикселей, каждому из которых соответствует целых 2 байта. …

Продолжить чтение

STM32 и FSMC. Часть 2. Вывод изображения на дисплей.

Совсем недавно мы познакомились с работой FSMC в STM32, подключили дисплей и раскрасили его разными цветами (вот). И пока еще не забыли все, что обсуждали в прошлой статье, давайте выведем на дисплей, что-нибудь поинтереснее, а именно какую-нибудь картинку. Что же нам для этого понадобится? Ну во-первых сама картинка. Находим какое-нибудь изображение размером 320*240. Я секунд …

Продолжить чтение

STM32 и FSMC. Часть 1. Подключение и настройка дисплея.

Пришло время обсудить замечательную плюшку микроконтроллеров STM32 – а именно модуль FSMC. Это практически незаменимая вещь при работе с внешней памятью, либо, например, с графическим дисплеем. Собственно, с дисплеем то мы и будем играться, разбираясь с FSMC. Но для начала, как обычно, немного теории. Итак, FSMC реализует параллельный интерфейс обмена данными между различными устройствами. Короче …

Продолжить чтение

STM32 с нуля. Интерфейс SPI. Описание и пример использования.

Сегодня мы будем помогать двум микроконтроллерам подружиться с помощью интерфейса SPI! Для начала обсудим, что же такое вообще SPI, а потом напишем программу для обмена данными между устройствами. Так вот, этот интерфейс позволяет связать между собой два и более устройств. Большой плюс SPI – быстродействие, так что большой объем данных улетит влегкую. Но в SPI, …

Продолжить чтение

STM32 с нуля. FreeRTOS. Кооперативная многозадачность.

Продолжаем работу с FreeRTOS, и в этой статье мы закончим обсуждение программы-примера, созданной ранее. Там же можно найти теоретические сведения о разных типах многозадачности. Итак, у нас получилось запустить наш код под управлением FreeRTOS, и вроде бы он даже работал так, как и задумывалось. Но сейчас мы убедимся, что это не совсем так 🙂 Поправим …

Продолжить чтение

STM32 с нуля. FreeRTOS. Типы многозадачности, пример программы.

Как и обещал, сейчас попробуем реализовать что-нибудь посложнее мигания диодами на базе FreeRTOS. Но сначала немного теории, которая нам понадобится для понимания сути работы ОСРВ. Помните, мы говорили о многозадачности операционных систем реального времени? Так вот, существуют три разных типа многозадачности. Первый из них мы использовали в предыдущей статье – это вытесняющая многозадачность. Что же …

Продолжить чтение

STM32 с нуля. FreeRTOS. Обзор и установка операционной системы.

При разработке электронных устройств до поры до времени (иногда довольно долго 🙂 ) удается обходиться без использования операционной системы. Но наступает момент, когда разрабатываемый девайс должен выполнять огромное количество различных функций или, например, должен обеспечивать возможность добавления новой задачи позднее. В этих случаях обойтись без RTOS (операционная система реального времени, ОСРВ) становится невозможно. Как раз …

Продолжить чтение

STM32 с нуля. Использование модулей DMA и USART.

Пришло время рассказать об одной потрясающей штуке под названием DMA (ПДП) – то есть прямой доступ к памяти (Direct Memory Access). Поясню что же это такое. В двух словах – прямой доступ к памяти позволяет перемещать данные без (!) участия центрального процессора. То есть процессор работает себе спокойно над своими задачами, не отвлекается ни на …

Продолжить чтение

STM32 с нуля. ADC. Аналого-цифровой преобразователь.

Пришло время разобраться, что из себя представляет модуль ADC в микроконтроллерах STM32. Давайте по привычной схеме, сначала теория, под конец небольшая программка для работы с аналого-цифровым преобразователем. Начнем-с… Вот некоторые характеристики аналого-цифрового преобразователя в STM32f10x: АЦП является 12-ти битным. Возможна генерация прерывания по окончанию преобразования, по окончанию преобразования с инжектированного канала, а также возможно прерывание …

Продолжить чтение