20.2 C
London
Thứ Hai, Tháng 7 21, 2025
Trang chủMCUSTM32 cơ bảnSTM32 HAL driver với cảm biến nhịp tim MAX30100 sử dụng STM32CUBE...

STM32 HAL driver với cảm biến nhịp tim MAX30100 sử dụng STM32CUBE IDE

Cấu tạo và cách giao tiếp với cảm biến nhịp tim MAX30100

Cảm biến MAX30100 là một module đo nhịp tim và nồng độ oxy trong máu (SpO2). Nó tích hợp đèn LED hồng ngoại, đèn LED đỏ, một cảm biến quang học, và một thuật toán xử lý tín hiệu để đo nhịp tim và SpO2 chính xác.

Cảm biến này giao tiếp với vi điều khiển thông qua giao thức I2C, giúp việc kết nối và lập trình dễ dàng hơn.

Chuẩn bị thiết bị và cách kết nối

Phần cứng:

  • STM32F103C8T6 Bluepill
  • Module MAX30100
  • Màn hình I2C LCD1602
  • Dây kết nối (jumper)
  • Mạch nạp ST-Link V2

Phần mềm:

  • STM32CubeIDE (khuyên dùng phiên bản mới nhất)

Chương trình chính

Các cấu hình ban đầu bao gồm:

  • Cấu hình clock hệ thống
  • Cấu hình chân PB4, PB5 làm 2 chân giao tiếp I2C với cảm biến nhịp tim MAX30100
  • Cấu hình ngoại vi I2C2 sử dụng 2 chân PB10 – I2C2_SCL và PB11 – I2C2_SDA để giao tiếp với màn hình I2C LCD1602
  • Cấu hình ngoại vi UART2 sử dụng 2 chân PA2 – USART2_TX và PA3 – USART2_RX sử dụng để in dữ liệu lên máy tính (nếu cần)
  • Cấu hình các chân GPIO điều khiển led báo trạng thái và còi (nếu cần)

Các cấu hình ban đầu mình sẽ không trình bày rõ ràng ở đây, vui lòng bạn đọc tải xuống mã nguồn để biết thêm chi tiết..

Các thư viện cần sử dụng của dự án:

  • Thư viện phục vụ quá trình giao tiếp với cảm biến nhịp tim MAX30100: my_i2c.h (my_i2c.c) chứa các hàm để đọc và ghi với các thanh ghi của cảm biến nhịp tim MAX30100 để điều khiển và đọc dữ liệu thô.
  • Thư viện phục vụ quá trình tính toán và giải mã ra các giá trị về nhịp tim và SpO2: algorithm.h (algorithm.c), MAX30100.h (MAX30100.c), max30100_dsp.h (max30100_dsp.c).
  • Thư viện phục vụ giao tiếp I2C với màn hình I2C LCD1602: i2c-lcd.h (source i2c-lcd.c).
  • Thư viện chứa hàm in dữ liệu lên máy tính qua uart: debug.h (debug.c).
Cấu trúc file trong mã nguồn trên STM32CUBE IDE

Kết nối cảm biến nhịp tim MAX30100 với kit STM32F103 Blue Pill:

Sơ đồ đấu dây

Video thử nghiệm thực tế

Tải mã nguồn tại đây!

Đánh giá bài viết!
BÀI VIẾT LIÊN QUAN

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây

BÀI VIẾT NỔI BẬT