Mục lục:

Hoạt ảnh trên LCD 16x2 I2c SỬ DỤNG STM32 Nucleo: 4 bước
Hoạt ảnh trên LCD 16x2 I2c SỬ DỤNG STM32 Nucleo: 4 bước

Video: Hoạt ảnh trên LCD 16x2 I2c SỬ DỤNG STM32 Nucleo: 4 bước

Video: Hoạt ảnh trên LCD 16x2 I2c SỬ DỤNG STM32 Nucleo: 4 bước
Video: STM32F103C8T6 - Giao tiếp I2C LCD - Thư viện Standard - Giải thích chi tiết 2024, Tháng bảy
Anonim
Image
Image

Xin chào các bạn, đây là bài hướng dẫn minh họa cách tạo hoạt ảnh tùy chỉnh trên màn hình LCD 16x2 i2c. Có rất ít thứ cần thiết cho dự án, vì vậy nếu bạn có quyền truy cập vào mã, bạn có thể hoàn thành nó trong 1 giờ.

Sau khi làm theo hướng dẫn này, bạn sẽ có thể thiết kế hoạt ảnh tùy chỉnh của riêng mình trên vi điều khiển.

ĐIỆN TỬ CẦN THIẾT CHO DỰ ÁN: -

1) Bảng STM32L476RG Nucelo

2) LCD 16x2 i2c

3) Dây nhảy

PHẦN MỀM CẦN THIẾT: -

1) STM32cubemx

2) Keil uVision5

Kết nối: Kết nối PB6 với I2C-SCK và I2C-SDA với chân PB7 của bảng nucleo.

Bước 1: Mở STM32Cubemx và Thực hiện Cài đặt Tương ứng với Hình ảnh Đính kèm

Mở STM32Cubemx và Đặt Cài đặt Tương ứng với Hình ảnh Đính kèm
Mở STM32Cubemx và Đặt Cài đặt Tương ứng với Hình ảnh Đính kèm
Mở STM32Cubemx và Đặt Cài đặt Tương ứng với Hình ảnh Đính kèm
Mở STM32Cubemx và Đặt Cài đặt Tương ứng với Hình ảnh Đính kèm

1) Sau khi chọn STM32L476RG làm vi điều khiển trong STM32CUBE chọn giao diện I2C1 làm i2c.

2) Đặt giá trị đồng hồ thành giá trị lớn nhất (80Mhz)

3) Sau đó, chọn Timer1 và Timer2 và sau đó khởi tạo các giá trị của nó như được đưa ra trong phần sau của hướng dẫn.

4) Chọn ngắt cập nhật Timer1 và ngắt toàn cục Timer2 trong cài đặt NVIC.

5) Tạo mã cho Dự án trong Keil 5.

Bước 2: Tạo hình ảnh tùy chỉnh cần thiết và thêm mã của nó trong tệp Custom_char.h

Tạo hình ảnh tùy chỉnh cần thiết và thêm mã của nó trong tệp Custom_char.h
Tạo hình ảnh tùy chỉnh cần thiết và thêm mã của nó trong tệp Custom_char.h
Tạo hình ảnh tùy chỉnh cần thiết và thêm mã của nó trong tệp Custom_char.h
Tạo hình ảnh tùy chỉnh cần thiết và thêm mã của nó trong tệp Custom_char.h

1) Mỗi vị trí trong màn hình LCD 16x2 có thể được chia thành 32 phân đoạn, mỗi phân đoạn bao gồm 5x8 pixel.

2) Bạn có thể trực quan hóa hình ảnh và ranh giới của nó trên phân đoạn và đại diện cho từng phần của phân đoạn với giá trị 1 nếu vị trí trên phân đoạn là một phần của hình ảnh, nếu không, hãy gán nó dưới dạng giá trị 0, cung cấp giá trị cho mỗi hàng như được hiển thị trong đính kèm bức ảnh.

3) Đặt giá trị đó từ bước 2 vào tệp custom_char.h được cung cấp trong mã đính kèm.

Bước 3: Thêm mã liên quan trong Keil 5

Thêm mã có liên quan trong Keil 5
Thêm mã có liên quan trong Keil 5
Thêm mã có liên quan trong Keil 5
Thêm mã có liên quan trong Keil 5
Thêm mã có liên quan trong Keil 5
Thêm mã có liên quan trong Keil 5

1) Viết lệnh để khởi động Timer1 và Timer2 trong tệp main.c. Timer 1 được sử dụng để xóa màn hình LCD và Timer2 được sử dụng để hiển thị hình ảnh.

2) Ghi giá trị cho các giá trị Prescalar và Autoreload cho Timer1 và Timer2 trong tệp main.c giống nhau cho cả hai bộ định thời.

3) Thêm mã có liên quan trong quy trình ngắt Timer1 và quy trình ngắt Timer2 trong tệp stm32l4_it.c.

Đề xuất: