Новости

 

 

 

PIC. Урок 14. Модуль CCP. Режим PWM

 

 

Продолжаем работу по программированию контроллеров PIC.
В данном уроке мы познакомимся с третьим и последним режимом модуля CCP — PWM (Pulse-Width Modulation) или ШИМ (широтно-импульсная модуляция).
Мы закрепим наш материал на практике с помощью логического анализатора с программой для логического анализа, а также визуально с помощью двух плавно мигающих светодиодов.
Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Модуль CCP. Режим PWM

 

 

 

STM32. Урок 119. WS2812B. Лента на умных светодиодах RGB. Часть 3

 

 

В данном занятии мы попробуем поработать со светодиодами RGB, в которые встроен чип для управления их свечением.
Таким светодиодом является WS2712B от компании WORLDSEMI.
Данные светодиоды расположены в ленте, которой мы и будем управлять.
Микроконтроллер мы будем использовать народный — STM32F103C8T6, расположенный на очень дешёвой отладочной плате.
В данной части урока мы напишем несколько интересных тестов, чтобы увидеть, как красиво ведут себя умные светодиоды, если уметь управлять их свечением.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM Name

 

 

 

STM32. Урок 119. WS2812B. Лента на умных светодиодах RGB. Часть 2

 

 

В данном занятии мы попробуем поработать со светодиодами RGB, в которые встроен чип для управления их свечением.
Таким светодиодом является WS2712B от компании WORLDSEMI.
Данные светодиоды расположены в ленте, которой мы и будем управлять.
Микроконтроллер мы будем использовать народный — STM32F103C8T6, расположенный на очень дешёвой отладочной плате.
В данной части урока мы создадим проект, изучим работу таймера в режиме PWM с использованием DMA и попробуем зажечь определённые светодиоды различными цветами.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM Name

 

 

 

STM32. Урок 119. WS2812B. Лента на умных светодиодах RGB. Часть 1

 

 

В данном занятии мы попробуем поработать со светодиодами RGB, в которые встроен чип для управления их свечением. Таким светодиодом является WS2712B от компании WORLDSEMI. Данные светодиоды расположены в ленте, которой мы и будем управлять. Микроконтроллер мы будем использовать народный — STM32F103C8T6, расположенный на очень дешёвой отладочной плате. В данной части урока мы познакомимся поближе с умными светодиодами RGB WS2712B, а также приготовим схему для практического закрепления материала.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM Name

 

 

 

STM32. Урок 118. LAN8720. LWIP. RAW. UDP Client

 

Продолжаем изучать программирование передачи данных по локальной сети. Использовать мы будем для этой цели проводной интерфейс LAN. В качестве сетевого устройства мы используем модуль на микросхеме LAN8720, в котором на этот раз присутствует только один уровень — это только физический. Тем не менее данная микросхема, а также другие микросхемы линейки LAM87xx обрели огромную популярность в связи с уверенной и быстрой их работой. В отличие от её предшественников, уже рассмотренных нами в прошлых уроках, она, соответственно, требует наличия желательно аппаратной поддержки канального уровня в контроллере, к которой её подключают, а также наличие там аппаратного интерфейса RMII, предназначенного, также как и MII, для обмена данными между физическим и канальным уровнем. В качестве микроконтроллера мы будем использовать STM32F407VG, который расположен на нашей любимой плате STM32F4-Discovery, с которой мы прошли ранее немало уроков и знаем о ней далеко не понаслышке. И также продолжаем использовать библиотеку стека протоколов LWIP, которая нам очень помогает в упрощении сочинения кода. Теперь мы попробуем создать ещё один клиент, но только в качестве транспортного протокола мы будем использовать UDP.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM LAN8720. LWIP. RAW. UDP Client

 

 

 

STM32. Урок 117. NRF24L01. Обмен информацией

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы научим наши модули оперативно переходить из режима приёмника в режим передатчика и наоборот. Тем самым мы организуем своего рода полудуплексный режим, который отличается от полнодуплексного тем, что последний может это делать ещё и одновременно. В качестве первого и второго устройства у нас будут платы на контроллере STM32F103C8T6.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Обмен информацией

 

 

 

PIC. Урок 13. Модуль CCP. Режим сравнения

 

Продолжаем работу по программированию контроллеров PIC. И сегодня мы продолжим изучать возможности модуля CCP, который расширяет возможности таймеров и позволяет нам запустить наши таймеры в режиме захвата, сравнения либо ШИМ. В данном уроке мы познакомимся со следующим режимом данного модуля — с режимом сравнения. Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Модуль CCP. Режим сравнения

 

 

 

STM32. Урок 116. FreeRTOS. Прерывания. Очереди в прерываниях. Часть 2

 

В данном уроке мы продолжим заниматься программированием микроконтроллеров STM32 с использованием операционной системы реального времени FreeRTOS. Сегодня мы изучим использование функционала операционной системы в теле обработчиков прерываний. В частности, мы попробуем байт, принятый из шины USART отправить в очередь, а уже в задачах его обработать, соединить с другими байтами, а результат вывести на дисплей. Использовать для применения FreeRTOS в нашем проекте мы будем, как и прежде, отладочную плату STM32F746G-DISCO. В данной части урока мы напишем функцию парсинга строки, на пишем скрипт для терминальной программы в целях автоматизации передачи данных через USART и проверим наш клиент на практике.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Прерывания. Очереди в прерываниях

 

 

 

STM32. Урок 116. FreeRTOS. Прерывания. Очереди в прерываниях. Часть 1

 

В данном уроке мы продолжим заниматься программированием микроконтроллеров STM32 с использованием операционной системы реального времени FreeRTOS. Сегодня мы изучим использование функционала операционной системы в теле обработчиков прерываний. В частности, мы попробуем байт, принятый из шины USART отправить в очередь, а уже в задачах его обработать, соединить с другими байтами, а результат вывести на дисплей. Использовать для применения FreeRTOS в нашем проекте мы будем, как и прежде, отладочную плату STM32F746G-DISCO. В данной части урока мы познакомимся с механизмом использования API FreeRTOS в телах обработчиков прерываний, создадим и настроим проект и напишем код для отправки байта, принятого по шине USART, в очередь.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Прерывания. Очереди в прерываниях

 

 

 

PIC. Урок 12. Модуль CCP. Режим захвата. ИК-пульт. Часть 2

 

Продолжаем работу по программированию контроллеров PIC. И сегодня мы узнаем, как расширить возможности таймеров нашего контроллера. Для этого служит модуль CCP («CAPTURE/COMPARE/PWM» или «Захват / сравнение / ШИМ»), который позволяет нам запустить наши таймеры в режиме захвата, сравнения либо ШИМ. На данном уроке мы познакомимся с данным модулем и остановимся на первым из его режимов — на захвате. И, чтобы закрепить данную тему практически, мы поработаем с приёмом и распознанием сигналов от инфракрасного пульта дистанционного управления. Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате. В данной части урока мы изучим протокол передачи данных NEC, напишем проект для распознавания адреса и команды посылки от ИК-пульта, а также проверим наш код на практике, используя несколько ИК-пультов дистанционного управления.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Модуль CCP. Режим захвата. ИК-пульт

 

 

 

PIC. Урок 12. Модуль CCP. Режим захвата. ИК-пульт. Часть 1

 

Продолжаем работу по программированию контроллеров PIC. И сегодня мы узнаем, как расширить возможности таймеров нашего контроллера. Для этого служит модуль CCP («CAPTURE/COMPARE/PWM» или «Захват / сравнение / ШИМ»), который позволяет нам запустить наши таймеры в режиме захвата, сравнения либо ШИМ. На данном уроке мы познакомимся с данным модулем и остановимся на первым из его режимов — на захвате. И, чтобы закрепить данную тему практически, мы поработаем с приёмом и распознанием сигналов от инфракрасного пульта дистанционного управления. Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате. В данной части урока мы познакомимся с модулем CCP, а более подробно с режимом захвата, познакомимся с передачей и приёмом данных от ИК-пульта дистанционного управления, а также с одним из протоколов такой передачи данных — RC5.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Модуль CCP. Режим захвата. ИК-пульт

 

 

 

STM32. Урок 115. NRF24L01. Несколько приемников. Часть 2

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы попробуем наоборот передать данные с одного передатчика сразу на три приёмника. Отладочная плата Nucleo STM32F401RE теперь будет использоваться в качетсве передатчика. В качестве первого и второго приёмника — платы на контроллере STM32F103C8T6. В качестве третьего приёмника — плата STM32F4-DISCOVERY. В данной части урока мы создадим и напишем проекты для второго и третьего приёмников, а также проверим как работает адресная передача на несколько приёмников.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Несколько приемников

 

 

 

STM32. Урок 115. NRF24L01. Несколько приемников. Часть 1

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы попробуем наоборот передать данные с одного передатчика сразу на три приёмника. Отладочная плата Nucleo STM32F401RE теперь будет использоваться в качетсве передатчика. В качестве первого и второго приёмника — платы на контроллере STM32F103C8T6. В качестве третьего приёмника — плата STM32F4-DISCOVERY. В данной части урока мы создадим и напишем проект для приёмника, а также проект для первого передатчика.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Несколько приемников

 

 

 

STM32. Урок 114. FreeRTOS. Продвинутая задержка DelayUntil

 

В данном уроке мы продолжим заниматься программированием микроконтроллеров STM32 с использованием операционной системы реального времени FreeRTOS и сегодня мы изучим использование продвинутой задержки DelayUntil, узнаем, чем же она отличается от обычной и обязательно оценим данное отличие на практике. Использовать для применения FreeRTOS в нашем проекте мы будем, как и прежде, отладочную плату STM32F746G-DISCO.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Продвинутая задержка DelayUntil

 

 

 

PIC. Урок 11. Внутренняя энергонезависимая память EEPROM. Часть 2

 

Продолжаем работу по программированию контроллеров PIC. На данном мы научимся программировать чтение и запись встроенной в контроллер энергонезависимой памяти EEPROM, а для того чтобы это выглядело более наглядно, мы будем использовать символьный дисплей размерностью 20×4, собранный на контроллере HD44780. Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате. В данной части урока мы проверим работу библиотеки для памяти EEPROM на практике, записав в EEPROM различные типы данных (в том числе строковый массив), а также затем отобразив его на дисплее. Также мы научимся настраивать среду программирования так, чтобы память EEPROM при перепрошивке микроконтроллера не стиралась.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Внутренняя энергонезависимая память EEPROM

 

 

 

PIC. Урок 11. Внутренняя энергонезависимая память EEPROM. Часть 1

 

Продолжаем работу по программированию контроллеров PIC. На данном мы научимся программировать чтение и запись встроенной в контроллер энергонезависимой памяти EEPROM, а для того чтобы это выглядело более наглядно, мы будем использовать символьный дисплей размерностью 20×4, собранный на контроллере HD44780. Микроконтроллер мы будем использовать тот же — PIC16F877A, расположенный на удобной и недорогой отладочной плате. В данной части урока мы познакомимся с организацией, а также с чтением и записью памяти EEPROM, создадим проект и напишем библиотеку для работы с EEPROM.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC Внутренняя энергонезависимая память EEPROM

 

 

 

STM32. Урок 113. NRF24L01. Несколько передатчиков. Часть 3

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы попробуем передать данные на один приёмник сразу с трёх передатчиков. В качестве приёмника будет использоваться по-прежнему отладочная плата Nucleo STM32F401RE. В качестве первого передатчика — плата на контроллере STM32F103C8T6. В качестве второго и третьего передатчика платы NUCLEO-F303K8. В данной части урока мы настроим проект для третьего передатчика, в приёмнике добавим возможность приёма пакетов с трёх источников и проверим код на практике.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Несколько передатчиков

 

 

 

STM32. Урок 113. NRF24L01. Несколько передатчиков. Часть 2

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы попробуем передать данные на один приёмник сразу с трёх передатчиков. В качестве приёмника будет использоваться по-прежнему отладочная плата Nucleo STM32F401RE. В качестве первого передатчика — плата на контроллере STM32F103C8T6. В качестве второго и третьего передатчика платы NUCLEO-F303K8. В данной части урока мы подготовим проекты для двух передатчиков, также в проект приёмника добавим возможность приёма пакетов от двух передатчиков и отображения их в разных строках дисплея и проверим наш код на практике.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Несколько передатчиков

 

 

 

STM32. Урок 113. NRF24L01. Несколько передатчиков. Часть 1

 

Продолжаем работать с модулем NRF24L01 (NRF24L01+), который предаёт и принимает данные беспроводным способом. В этом уроке мы попробуем передать данные на один приёмник сразу с трёх передатчиков. В качестве приёмника будет использоваться по-прежнему отладочная плата Nucleo STM32F401RE. В качестве первого передатчика — плата на контроллере STM32F103C8T6. В качестве второго и третьего передатчика платы NUCLEO-F303K8. В данной части урока мы подключим символьный LCD-дисплей к плате приёмника, настроим для него проект, также немного подправим наши библиотеки.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM NRF24L01. Несколько передатчиков

 

 

 

STM32. Урок 112. FreeRTOS. Таймеры

 

В данном уроке мы продолжим заниматься программированием микроконтроллеров STM32 с использованием операционной системы реального времени FreeRTOS и сегодня мы изучим программные таймеры, а также применим данные знания на практике. Мы создадим два таймера и увидим их работу, которая никак не будет мешать работе остальных наших задач.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Таймеры

 

 

 

PIC. Урок 10. LCD 20×4. 8-битный режим. Часть 2

 

Продолжаем работу по программированию контроллеров PIC. На данном мы попробуем к микроконтроллеру PIC подключить символьный дисплей, в котором находятся 4 строки по 20 символов, используя полноправный 8-битный способ его подключения. Данный дисплей собран на контроллере HD44780. Микроконтроллер мы будем использовать несколько другой, но очень похожий на тот, который мы использовали в прошлых занятиях, — это — PIC16F877A. В данной части урока мы напишем библиотеку для дисплея и, воспользовавшись ею, выведем на него текстовые строки.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC LCD 20x4. 8-битный режим

 

 

 

PIC. Урок 10. LCD 20×4. 8-битный режим. Часть 1

 

Продолжаем работу по программированию контроллеров PIC. На данном мы попробуем к микроконтроллеру PIC подключить символьный дисплей, в котором находятся 4 строки по 20 символов, используя полноправный 8-битный способ его подключения. Данный дисплей собран на контроллере HD44780. Микроконтроллер мы будем использовать несколько другой, но очень похожий на тот, который мы использовали в прошлых занятиях, — это — PIC16F877A. В данной части урока мы познакомимся с дисплеем, со схемой и её компонентами, а также создадим и настроим проект.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC LCD 20x4. 8-битный режим

 

 

 

STM32. Урок 111. FreeRTOS. Очереди. Часть 2

 

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

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Очереди

 

 

 

STM32. Урок 111. FreeRTOS. Очереди. Часть 1

 

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

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Очереди

 

 

 

PIC. Урок 9. TIMER2

 

Продолжаем работу по программированию контроллеров PIC. На данном мы продолжим работу с таймерами, а также с прерываниями, связанными с таймерами и на этот раз мы рассмотрим работу со следующим таймером — таймером 2 (TIMER2), который хотя и является 8-битным, но, благодаря двум делителям, может обеспечивать вполне немалые интервалы между прерываниями. Также данный таймер, благодря наличию специального регистра, не нуждается в занесении в регистр счёта значения в обработчике прерывания для обеспечения точности периода. Микроконтроллер мы будем использовать тот же, что и на прошлом занятии — PIC16F876A.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

PIC TIMER2

 

 

 

STM32. Урок 110. FreeRTOS. Приоритеты задач

 

В данном уроке мы продолжим заниматься программированием микроконтроллеров STM32 с использованием операционной системы реального времени FreeRTOS и главной темой данного занятия будут приоритеты задач. Мы узнаем, что каждая задача может иметь различный приоритет, как данные свойства применяются, также мы узнаем то, что приоритет у задачи можно не только назначать при её создании, но и менять в процессе выполнения программы.

 

Урок здесь

 

 

Видеоурок здесь (нажмите на картинку)

 

STM FreeRTOS. Приоритеты задач