Arduino sẽ là bảng đầu tiên cho nhiều người yêu thích (bao gồm cả tôi) và các kỹ sư ngoài đó khi họ bắt đầu với điện tử. Tuy nhiên, khi chúng tôi bắt đầu xây dựng nhiều hơn và đào sâu hơn, chúng tôi sẽ sớm nhận ra rằng Arduino chưa sẵn sàng cho ngành công nghiệp và CPU 8-bit của nó với xung nhịp chậm đến mức nực cười, nó không cung cấp cho bạn đủ nước cho các dự án của mình. Tuy nhiên, hy vọng rằng chúng ta có Bảng phát triển STM32F103C8T6 STM32 mới (Blue Pill) trên thị trường hiện nay có thể dễ dàng vượt qua Arduino với CPU 32-bit và kiến trúc ARM Cortex M3. Một bí quyết khác ở đây là chúng ta có thể sử dụng cùng một IDE Arduino cũ để lập trình Bo mạch STM32 của mình. Vì vậy, trong hướng dẫn này, chúng ta hãy bắt đầu với STM32 để biết một chút kiến thức cơ bản về bo mạch này và nhấp nháy đèn LED trên bo mạch bằng Arduino IDE.
Ngoài bảng STM32 Blue được sử dụng trong hướng dẫn này, có nhiều bảng STM32 phổ biến khác như bảng STM32 Nucleo Development. Nếu bạn quan tâm, bạn cũng có thể xem bài đánh giá về bo mạch STM32 Nucleo 64 và nếu bạn muốn tìm hiểu cách sử dụng và lập trình chúng bằng STM32 CubeMX và True studio, bạn có thể xem hướng dẫn bắt đầu với STM32 Nucelo64.
Vật liệu thiết yếu
- STM32 - (BluePill) Ban phát triển (STM32F103C8T6)
- Lập trình viên FTDI
- Breadboard
- Kết nối dây
- Máy tính xách tay có Internet
Giới thiệu về bảng STM32 (Blue Pill)
Các board STM32 aka Blue Pill là một Ban Phát triển cho ARM Cortex M3 Vi điều khiển. Nó trông rất giống với Arduino Nano nhưng nó đóng gói khá mạnh mẽ. Bảng phát triển được hiển thị bên dưới.
Các bo mạch này cực kỳ rẻ so với các bo mạch Arduino chính thức và phần cứng cũng là mã nguồn mở. Bộ vi điều khiển trên cùng của nó là STM32F103C8T6 của STMicroelectronics. Ngoài Bộ vi điều khiển, bo mạch còn chứa hai bộ dao động tinh thể, một bộ là tinh thể 8MHz và bộ còn lại là tinh thể 32 KHz, có thể được sử dụng để điều khiển RTC bên trong (Đồng hồ thời gian thực). Do đó, MCU có thể hoạt động ở chế độ ngủ sâu, lý tưởng cho các ứng dụng hoạt động bằng pin.
Vì MCU hoạt động với 3.3V, bo mạch cũng chứa một IC điều chỉnh điện áp 5V đến 3.3V để cấp nguồn cho MCU. Mặc dù MCU hoạt động ở 3.3V nhưng hầu hết các chân GPIO của nó đều có khả năng chịu được 5V. Chân của MCU được kéo ra gọn gàng và được dán nhãn là chân tiêu đề. Ngoài ra còn có hai đèn LED trên bo mạch, một (màu đỏ) được sử dụng để chỉ báo nguồn và đèn còn lại (màu xanh lục) được kết nối với chân GPIO PC13. Nó cũng có hai chân tiêu đề có thể được sử dụng để chuyển đổi chế độ khởi động MCU giữa chế độ lập trình và chế độ vận hành, chúng ta sẽ tìm hiểu thêm về những chân này sau trong hướng dẫn này.
Bây giờ ít người có thể tự hỏi tại sao bảng này được gọi là "Blue Pill", thực sự tôi không biết. Có thể là vì bảng có màu xanh lam và có thể tăng hiệu suất cho các dự án của bạn mà ai đó đã nghĩ ra cái tên này trong đó. Đây chỉ là một giả định và tôi không có nguồn nào để sao lưu nó.
Thông số kỹ thuật STM32F103C8T6
Bộ vi điều khiển ARM Cortex M3 STM32F103C8 được sử dụng trong bảng thuốc viên Blue. Không giống như tên gọi, “Blue Pill”, tên bộ vi điều khiển STM32F103C8T6 có một ý nghĩa đằng sau nó.
- STM »là viết tắt của tên nhà sản xuất STMicroelectronics
- 32 »là viết tắt của kiến trúc ARM 32-bit
- F103 »là viết tắt để chỉ ra rằng kiến trúc ARM Cortex M3
- C »48 chân
- 8 »Bộ nhớ flash 64KB
- Loại gói T »là LQFP
- 6 »nhiệt độ hoạt động -40 ° C đến + 85 ° C
Bây giờ chúng ta hãy xem xét các thông số kỹ thuật của Vi điều khiển này.
Kiến trúc: 32-bit ARM Cortex M3
Điện áp hoạt động: 2.7V đến 3.6V
Tần số CPU: 72 MHz
Số chân GPIO: 37
Số chân PWM: 12
Chân đầu vào tương tự: 10 (12-bit)
USART thiết bị ngoại vi: 3
Thiết bị ngoại vi I2C: 2
Thiết bị ngoại vi SPI: 2
Có thể 2.0 Ngoại vi: 1
Bộ hẹn giờ: 3 (16-bit), 1 (PWM)
Bộ nhớ flash: 64KB
RAM: 20kB
Nếu bạn muốn biết