STM32 là dòng vi điều khiển trên nền tảng lõi ARM Cortex, chính vì đặt điểm này đang mang lại cho STM32 một số đặt điểm nổi bật về: Sự tinh vi, sự an toàn, tính bảo mật, phát triển phần mềm, Performance và Access, ngoài ra một ưu điểm vượt trội so với các hãng khác đó chỉnh là giá thành.
Bộ sách hướng dẫn học STM32 dành cho người bắt đầu, kiến thức tập trung vào những phần căn bản cần quan trọng và cần phải biết. Bộ sách gồm 2 quyền, quyền 1 gồm có 10 chương – quyển 2 gồm 11 chương. Nội dung tăng dần về mức độ khó | Kiến thức của 2 tập là liên tục và có tính hệ thống nên người học nên sở hữu đầy đủ 2 tập
Tập 1 gồm có 10 chương (Từ chương 1 – 10)
Tập 2 gồm có 11 chương (Từ chương 11-21)


Nội dung sách tập 1 và tập 2
- Chương 1: Giới thiệu các thiết bị chính sẽ xuất hiện trong cuốn sách này.
- Chương 2: sẽ hướng dẫn các bước cài đặt phần mềm cần thiết. Khi đã thực hiện qua các bước đơn giản, nhàm chán nhưng cần thiết thì làm các dự án sẽ de74 dàng hơn.
- Chương 3: Cung cấp thông tin quan trọng về các tùy chọn cấp nguồn. Hướng dẫn các tùy chọn quyền truy cập và sau đó áp dụng trình lập trình ST-Link V2 để thăm dò thiết bị.
- Chương 4: Tiện ích st-flash và lập trình thiết bị bằng chương trình liên kết nhỏ, một chương trình Flash khác với chương trình được cung cấp cùng với thiết bị. Thú vị hơn, API GPOP libopencm3 sẽ được thảo luận và chương trình liên kết nhỏ sẽ được kiểm tra chi tiết. Điều này giải thích cấu hình GPIO và hoạt động của nó.
- Chương 5: Chương trình Flash sẽ chạy dưới FreeRTOS như một nhiệm vụ. Cách cấu hình tốc độ xung nhịp CPU sao cho không cần cấp một xung RC mặc định. Một chức năng móc tùy chọn để giải quyết sự kiện tràn ngăn xếp được minh họa. Cấu hình và quy ước của FreeRTOS đã được đề cập đến.
- Chương 6: Trình bày công thức chung cho việc cấu hình và kích hoạt USART ở chế độ không đồng bộ. Điều này cho phép Blue Pill gửi dữ liệu đến máy tính để bàn để gỡ lỗi hoặc bất kỳ báo cáo nào khác. Đồng thời thể hiện các nhiệm vụ FreeRTOS và hàng đợi tin nhắn được cung cấp. Cách tiếp cận này chia các bên gửi và nhận của ứng dụng thành nhiệm vụ riêng của chúng.
- Chương 7: Hướng dẫn cách một giao diện USB được xây dựng giữa STM32 và máy tính xách tay / PC. Bản demo nhấn mạnh một số cơ sở FreeRTOS, như nhiệm vụ và hàng đợi tin nhắn. Có các nhiệm vụ thực thi riêng và truyền thông liên công việc an toàn giúp đơn giản hóa việc phát triển ứng dụng.
- Chương 8: Giao thức SPI và cách áp dụng nó trên STM32 trong FreeRTOS bằng cách sử dụng libopencm3.
- Chương 9: Giới thiệu tính năng tải lên Intel Hex để code chương trình.
- Chương 10: Khám phá cấu hình và sử dụng đồng hồ thời gian thực. Cách thiết lập EXTI17 cho phép thiết lập thay đổi tín hiệu GPIO ngắt.
- Chương 11: Chương này giúp chuẩn bị tốt cho làm việc I2C.
- Chương 12: Trong chương này, SPI được áp dụng cho vấn đề thực tế của việc điều khiển một màn hình OLED. Khái niệm về AFIO cho gia đình STM32 cũng được áp dụng trong chương này chứng minh làm thế nào SPI1 có thể có chân I / O của nó chuyển đến chân khác nhau.
- Chương 13: Chương này được xây dựng dựa trên phần mềm được phát triển trong Chương 12, thêm bộ điều khiển DMA để quản lý việc truyền dữ liệu đến thiết bị OLED.
- Chương 14: Chương này cung cấp môi trường đơn giản để bắt đầu sử dụng ADC.
- Chương 15: Tổng quan về hệ thống cây đồng hồ đã được trình bày, bắt đầu bằng nguồn đồng hồ chính: HSI và HSE cho đồng hồ hệ thống và HSE, LSE và LSI cho thời gian thực đồng hồ. Đồng hồ LSI cũng được sử dụng bởi bộ đếm thời gian watchdog.
- Chương 16: Áp dụng bộ đếm thời gian phần cứng cho nhiệm vụ tạo đầu ra tín hiệu PWM thích hợp cho việc điều khiển động cơ servo RC. Ưu điểm của việc sử dụng bộ đếm thời gian phần cứng là ít hoặc không hỗ trợ phần mềm khi nó được cấu hình để chạy, để thay đổi độ rộng xung hoặc chu kỳ của một bản cập nhật nhỏ cho bộ hẹn giờ. Đồng hồ phần cứng cũng cung cấp độ chính xác cao hơn vì chúng không bị chậm trễ phần mềm.
- Chương 17: Chương này sẽ trình bày cách bộ đếm thời gian STM32 được sử dụng để đo độ rộng xung và khoảng thời gian của tín hiệu một cách dễ dàng.
- Chương 18: Khi đèn tín hiệu nhấp nháy, mắt người nhìn thấy chúng gần như là liên tục chứ không phải là nhấp nhấy. Vậy chúng được được làm bằng cách nào? Và điều gì xảy ra nếu cần độ chính xác cao hơn cho ứng dụng điều khiển nhà máy? Chương này sẽ trình bày chi tiết hai câu hỏi trên.
- Chương 19: Trình bày một số cách viết code C đơn giản bằng cách đặt API ứng dụng CAN bus trong mô-đun canmsgs.c và canmsgs.h, nhiệm vụ viết ứng dụng trở nên dễ dàng hơn. Và một số ứng dụng của CAN BUS.
- Chương 20: Chuẩn bị để tạo các dự án STM32 tự thực hiện bằng cách sử dụng FreeRTOS.
- Chương 21: Trình bày các thiết bị thành viên khác có các thiết bị ngoại vi bổ sung trong gia đình STM32, như DAC (bộ chuyển đổi digitalto-analog), để đặt tên một thiết bị, một thiết bị trong gia đình STM32F407, Core407V, STM32F4.