Оглавление:

Анимация на ЖК-дисплее 16x2 I2c С ИСПОЛЬЗОВАНИЕМ STM32 Nucleo: 4 шага
Анимация на ЖК-дисплее 16x2 I2c С ИСПОЛЬЗОВАНИЕМ STM32 Nucleo: 4 шага

Видео: Анимация на ЖК-дисплее 16x2 I2c С ИСПОЛЬЗОВАНИЕМ STM32 Nucleo: 4 шага

Видео: Анимация на ЖК-дисплее 16x2 I2c С ИСПОЛЬЗОВАНИЕМ STM32 Nucleo: 4 шага
Видео: Micropython для квестов в реальности и аркадных игр / Никита Левонович (КВЕСТОДЕЛЫ) 2024, Ноябрь
Anonim
Image
Image

Привет, друзья, это руководство, демонстрирующее, как создать собственную анимацию на ЖК-дисплее i2c 16x2. Для проекта очень мало вещей, поэтому, если у вас есть доступ к коду, вы можете завершить его за 1 час.

Следуя этому руководству, вы сможете создавать свою собственную анимацию на микроконтроллере.

НЕОБХОДИМАЯ ЭЛЕКТРОНИКА ДЛЯ ПРОЕКТА: -

1) Плата STM32L476RG Nucelo

2) ЖК-дисплей 16x2 i2c

3) Провода перемычки

НЕОБХОДИМО ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ: -

1) STM32cubemx

2) Keil uVision5

Подключения: подключите PB6 к I2C-SCK и I2C-SDA к выводу PB7 платы Nucleo.

Шаг 1. Откройте STM32Cubemx и установите настройки, соответствующие прикрепленным изображениям

Откройте STM32Cubemx и установите настройки, соответствующие прикрепленным изображениям
Откройте STM32Cubemx и установите настройки, соответствующие прикрепленным изображениям
Откройте STM32Cubemx и установите настройки, соответствующие прикрепленным изображениям
Откройте STM32Cubemx и установите настройки, соответствующие прикрепленным изображениям

1) После выбора STM32L476RG в качестве микроконтроллера в STM32CUBE выберите интерфейс I2C1 как i2c.

2) Установите максимальное значение часов (80 МГц)

3) После этого выберите Timer1 и Timer2, а затем инициализируйте их значения, как указано в более поздней части руководства.

4) Выберите прерывание обновления Timer1 и глобальное прерывание Timer2 в настройках NVIC.

5) Сгенерируйте код для проекта в Keil 5.

Шаг 2: Создайте необходимые пользовательские изображения и добавьте их коды в файл Custom_char.h

Сделайте необходимые пользовательские изображения и добавьте их коды в файл Custom_char.h
Сделайте необходимые пользовательские изображения и добавьте их коды в файл Custom_char.h
Сделайте необходимые пользовательские изображения и добавьте их коды в файл Custom_char.h
Сделайте необходимые пользовательские изображения и добавьте их коды в файл Custom_char.h

1) Каждая позиция в ЖК-экране 16x2 может быть разделена на 32 сегмента, каждый сегмент состоит из 5x8 пикселей.

2) Вы можете визуализировать изображение и его границу на сегменте и представить каждую часть сегмента со значением 1, если позиция на сегменте является частью изображения, в противном случае присвойте ему значение 0, которое дает значения для каждой строки, как показано в прилагаемом рисунок.

3) Поместите это значение из шага 2 в файл custom_char.h, указанный в прилагаемом коде.

Шаг 3: Добавление соответствующего кода в Keil 5

Добавление соответствующего кода в Keil 5
Добавление соответствующего кода в Keil 5
Добавление соответствующего кода в Keil 5
Добавление соответствующего кода в Keil 5
Добавление соответствующего кода в Keil 5
Добавление соответствующего кода в Keil 5

1) Запишите команду для запуска Timer1 и Timer2 в файл main.c. Таймер 1 используется для очистки ЖК-дисплея, а Timer2 используется для отображения изображений.

2) Запишите значения Prescalar и Autoreload для Timer1 и Timer2 в файл main.c, который одинаков для обоих таймеров.

3) Добавьте соответствующий код в программу обработки прерывания Timer1 и программу обработки прерывания Timer2 в файл stm32l4_it.c.

Рекомендуемые: