Thí nghiệm nhấp nháy LED trên STM32 sử dụng GPIO
1. Chuẩn bị phần cứng:
1 bo mạch STM32F103C8T6 tối thiểu
1 bộ ghi ST-LINK V2
Tuỳ chọn dây nối DuPont
LED tích hợp - chân GPIOC13
2. Hàm delay (Delay.h)
Xem mã nguồn
#ifndef _DELAY_H_
#define _DELAY_H_
#include "stm32f10x.h" // Device header
void delayMicroseconds(uint32_t us);
void delayMilliseconds(uint32_t ms);
void de ...
Đăng vào ngày 19 tháng 7 lúc 10:56
Hướng dẫn Phát triển GPIO và Pinctrl trên Linux
Tổng quan
Tài liệu này cung cấp hướng dẫn chi tiết về cách sử dụng các giao diện GPIO (General Purpose Input/Output) và Pinctrl (Pin Controller) trong nhân Linux. Người đọc sẽ nắm vững các phương pháp lập trình để cấu hình, yêu cầu và quản lý các chân GPIO.
Phạm vi áp dụng
Phiên bản Kernel
Tệp trình điều khiển
Linux-4.9 trở lên
pinctrl- ...
Đăng vào ngày 18 tháng 7 lúc 15:15
Phát triển ngoại vi MCU từ nguyên lý đến thực thi thực tế
Trong phát triển nhúng, các ngoại vi cốt lõi của MCU đóng vai trò cầu nối giữa phần cứng và phần mềm. Dù là điều khiển động cơ trong hệ thống công nghiệp hay giao tiếp cảm biến trên thiết bị IoT, đều phụ thuộc vào việc lập trình sâu cho các module như GPIO, UART, I2C. Bài viết này tổng hợp kinh nghiệm thực tế từ nền tảng STM32 (lõi Cortex-M) v ...
Đăng vào ngày 16 tháng 7 lúc 05:33
Sử dụng các hàm GPIO trong Linux Kernel
Tham khảo: https://lwn.net/Articles/532714/
Trong kernel Linux, mỗi GPIO trong hệ thống được biểu diễn bằng một số nguyên không dấu đơn giản. Thông thường, một bo mạch có hàng trăm chân GPIO.
GPIO phải được phân bổ trước khi sử dụng, mặc dù hiện tại việc này không được thực thi bắt buộc. Hàm phân bổ cơ bản là:
int phan_bo_gpio(unsigned int ...
Đăng vào ngày 13 tháng 7 lúc 06:20
Phát triển Driver Phần cứng với Python
Phát triển Driver Phần cứng với Python
Giới thiệu
Trong bối cảnh hệ thống nhúng và IoT phát triển mạnh mẽ như hiện nay, vai trò của các driver phần cứng ngày càng trở nên quan trọng. Truyền thống, việc phát triển driver phần cứng thường được thực hiện bằng ngôn ngữ C, tuy nhiên với sự phổ biến của Python, ngày càng nhiều lập trình viên bắt đầu ...
Đăng vào ngày 5 tháng 7 lúc 01:37
GPIO STM32 - Các Chế Độ Xuất/Nhập và Thực Hành LED/Button
I. Bốn Chế Độ Xuất GPIO
GPIO (General-Purpose Input/Output) có 8 chế độ hoạt động, trong đó có 4 chế độ xuất và 4 chế độ nhập.
Chế độ xuất cho phép điều khiển mức điện áp trên chân (cao/thấp) bằng cách ghi giá trị 0 hoặc 1.
Chế độ nhập cho phép đọc trạng thái điện áp đầu vào của chân.
Xuất thường (General Purpose Output): Điều khiển bởi CPU. ...
Đăng vào ngày 21 tháng 6 lúc 10:08
Hệ thống con pinctrl và gpio
1. Hệ thống con pinctrl
1.1 Hệ thống con pinctrl là gì?
Trước hết, hãy xem lại cách khởi tạo GPIO dùng cho LED:
① Sửa đổi device tree, thêm node tương ứng, trong đó trọng tâm là đặt thuộc tính reg, reg bao gồm các thanh ghi liên quan đến GPIO.
② Lấy địa chỉ của các thanh ghi GPIOI_MODER, GPIOI_OTYPER, GPIOI_OSPEEDR, GPIOI_PUPDR và GPIOI_BSRR từ ...
Đăng vào ngày 18 tháng 6 lúc 03:44
Cấu hình và Gỡ lỗi Nguồn Thức Dậy của ESP32-S3
Hiểu sâu về cơ chế thức dậy: Từ nguyên lý phần cứng đến tối ưu thực tế
Khi thiết kế thiết bị IoT, nhiều kỹ sư gặp tình trạng: thiết bị không thức dậy như kỳ vọng hoặc thức dậy liên tục làm hao pin. Nguyên nhân thường nằm ở việc chưa nắm rõ cơ chế quản lý nguồn của ESP32-S3.
RTC Domain - Trái tim của chế độ tiết kiệm điện
ESP32-S3 có 2 vùng ...
Đăng vào ngày 13 tháng 6 lúc 18:59