Mục lục:

STM32 "Blue Pill" Progmaming qua Arduino IDE & USB: 8 bước
STM32 "Blue Pill" Progmaming qua Arduino IDE & USB: 8 bước

Video: STM32 "Blue Pill" Progmaming qua Arduino IDE & USB: 8 bước

Video: STM32
Video: STM32 | Nạp Code Arduino Cho STM32F103C8T6 2024, Tháng mười một
Anonim
STM32
STM32

So sánh bảng nguyên mẫu chung STM32F (tức là Blue Pill) với phần đối ứng của nó là Arduino, dễ dàng thấy nó có nhiều tài nguyên hơn, điều này mở ra rất nhiều cơ hội mới cho các dự án IOT.

Những khuyết điểm là thiếu sự hỗ trợ cho nó. Thực ra không hẳn là thiếu hỗ trợ, nhưng nó quá tràn lan ở nhiều diễn đàn, blog và nhiều trang khác. Nhiều cái đã lỗi thời.

Tôi sẽ mô tả kinh nghiệm của mình để có được một bảng mạch đó không chỉ được cấu hình bởi Arduino IDE mà còn thông qua cổng kết nối USB được tích hợp sẵn.

Tôi cũng sẽ chỉ cho bạn cách tải lên Bootloader bằng ST-Link V2.

Bước 1: Các bộ phận:

Các bộ phận
Các bộ phận
Các bộ phận
Các bộ phận

Bạn sẽ cần một số bộ phận:

  1. Tất nhiên, điều đầu tiên bạn cần là một bo mạch nguyên mẫu ST32F103. "Blue Pill" là cách nó được biết xung quanh và bạn có thể mua nó với giá cả phải chăng ở nhiều cửa hàng Thương mại điện tử.
  2. Mô-đun ST-Link V2
  3. Bảng mạch bánh mì và cáp nhảy

Bước 2: Phần mềm bạn sẽ cần:

Phần mềm bạn sẽ cần
Phần mềm bạn sẽ cần
Phần mềm bạn sẽ cần
Phần mềm bạn sẽ cần
Phần mềm bạn sẽ cần
Phần mềm bạn sẽ cần
  1. Trước hết, Arduino IDE. Nếu bạn chưa tải xuống, đây là liên kết: https://www.arduino.cc/en/Main/Software. Tôi kiểm tra hướng dẫn này với phiên bản 1.8.11, 1.8.12 và phiên bản ứng dụng, chỉ hoạt động cho Windows 8 và 10. Tôi sẽ không đề cập đến cài đặt phần mềm này, khi có nhiều thông tin về cách thực hiện.
  2. Từ trang STM, bạn sẽ cần phần mềm bên dưới. Cần tạo một tài khoản:

    1. Trình điều khiển Windows ST-Link V2:
    2. STM32-Link Utility (https://my.st.com/content/my_st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/stsw-link004.html).
  3. Sau đó, đã đến lúc tải xuống Boot loader. Đây là những gì sẽ cho phép Blue Pill kết nối với USB máy tính. Đây là liên kết đến đây:

Lưu ý rằng bạn cũng sẽ cần thêm bo mạch vào Arduino IDE. Tôi sẽ giải thích chi tiết làm thế nào để làm điều này.

Bước 3: Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh

Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh
Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh
Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh
Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh
Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh
Bảng nguyên mẫu chung STM32F103, Thuốc màu xanh

Bây giờ là một lời giải thích ngắn gọn về bảng nguyên mẫu STM32F103, được biết bởi "Blue Pill".

Đây là phần cứng mã nguồn mở, trông giống như Arduino Nano (kích thước gần như tương tự). Bạn có thể tìm thấy nhiều sản xuất khác nhau, nhưng chúng tuân theo sơ đồ rất chặt chẽ, ngay cả các vấn đề.

Bạn có thể hỏi: Nếu nó trông giống như Arduino Nano, tại sao tôi nên chuyển sang một phần cứng khác?

Câu trả lời là đơn giản. Như tôi đã nói, nếu dự án của bạn cần bộ điều khiển Faster Micro, với nhiều GPIO hơn (tổng cộng là 33), nhiều đầu vào ADC hơn và / hoặc chính xác hơn (10 đầu vào x độ phân giải 12 Bit), nhiều đầu ra tương tự hơn (15), nhiều giao diện truyền thông hơn, v.v.; đây là bộ điều khiển vi mô mà bạn có thể cần.

Bên trên có sơ đồ chân ra và sơ đồ.

Bây giờ, một số lời khuyên:

  1. Đây là bộ điều khiển vi mô 3V3. Mặc dù một số chân cắm có khả năng đàn hồi 5V, tôi khuyên bạn nên giữ các phụ kiện ở mức cao trong 3V3, nếu không, bạn có thể sử dụng Blue Pill cho mình.
  2. Pin của PA11 và PA12 không khả dụng khi chúng chịu trách nhiệm giao tiếp USB.
  3. Nói về USB, bạn sẽ thấy nhiều trang web và blog thông báo Blue Pill có giá trị điện trở kéo lên sai trong các cổng của nó. Theo đó, chúng nói chung là 10KΩ thay vì 4, 7KΩ, điều này có thể gây ra sự cố kết nối USB. Thành thật mà nói, tôi có 3 bảng và tôi chưa bao giờ gặp vấn đề khi kết nối bất kỳ bảng nào trong số đó trong bất kỳ máy tính xách tay nào. Vì vậy, tôi khuyên bạn chỉ nên làm việc trên nó nếu bạn thực sự gặp sự cố khi kết nối USB với máy tính của mình. Cuối cùng tôi tìm thấy một bản vẽ mạch là giá trị điện trở này thực sự là 10KΩ. Xem hình…. Solution được hàn một điện trở 1,5KΩ hoặc 1,8KΩ giữa chân PA12 và 5V vcc.
  4. Nhìn kỹ vào sơ đồ cũng có thể thấy không có bảo vệ giữa đường cấp nguồn 5V và USB 5V. BE CẨN THẬN HOẶC CHỈ tránh sử dụng nhiều nguồn cấp điện. Bạn có thể làm hỏng cổng USB máy tính của mình, nếu có lẽ bạn sử dụng nguồn điện 5V bên ngoài có nghĩa là khi bo mạch đang kết nối với USB.

Bước 4: Bộ chuyển đổi USB ST LINK V2

Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2
Bộ chuyển đổi USB ST LINK V2

ST LINK V2 là bộ chuyển đổi USB sang SWD, được thiết kế cho các tác vụ gỡ lỗi và lập trình.

Nếu bạn có ý định làm việc với chip STM32 một cách nghiêm túc, bạn sẽ cần công cụ này. Nó cho phép bạn giao tiếp với chip trực tiếp thông qua đầu nối SWB.

Có rất nhiều blog và trang web hướng dẫn cách tải bằng bộ chuyển đổi USB sang TTL, nhưng tôi không thể tìm thấy bất kỳ trang nào bằng cách sử dụng công cụ này để tải bộ tải khởi động.

Điều này cũng cho phép lập trình Blue Pill với bộ nạp khởi động gốc bằng phần mềm STM32Cube Programmer (có thể tôi sẽ tạo một hướng dẫn cho việc này trong tương lai).

Để cài đặt ổ đĩa Windows, hãy làm theo các bước sau:

  1. Giải nén tệp đã tải xuống
  2. Chạy "stlink_winusb_install.bat với tư cách Quản trị viên
  3. Nhấn phím sau khi kết thúc.
  4. Kết nối ST-Link V2 với bất kỳ USB máy tính khả dụng nào.

Hãy nhớ rằng: Thao tác này sẽ cài đặt Thiết bị USB, KHÔNG phải cổng comm.

Bước 5: Thời gian bắt đầu công việc thực sự: Đang tải STM32Duino Boot Loader

Thời gian bắt đầu công việc thực sự: Đang tải STM32Duino Boot Loader
Thời gian bắt đầu công việc thực sự: Đang tải STM32Duino Boot Loader
Thời gian để bắt đầu công việc thực sự: Đang tải STM32Duino Boot Loader
Thời gian để bắt đầu công việc thực sự: Đang tải STM32Duino Boot Loader

Điều đầu tiên trước tiên: hãy kết nối ST-Link với Blue Pill. Điều này rất đơn giản, một khi ST pin out được dán nhãn trên vỏ của nó.

Đầu nối SWD ST-Link Blue Pill

pin2- SWDIO pin2- SWIO (hoặc IO trong một số bo mạch)

pin3- GND pin4- GND

pin6- SWCLKpin3- SWCLK (hoặc chỉ CLK)

pin7- 3.3V pin1- 3V3

Chân ra của ST-Link V2 có nhãn rõ ràng trên thân của nó.

Chạy phần mềm "STM32 ST-Link Utility" (bạn có thể đã cài đặt trong máy tính của mình).

Ngay sau khi phần mềm tải, nó sẽ lấy tất cả dữ liệu trong bộ nhớ Boot0. Nếu không, hãy nhấp vào "Kết nối với thiết bị", phích cắm của ổ cắm có biểu tượng bu lông. Nó cũng sẽ lấy rất nhiều thông tin về chip STM32.

tải tệp nhị phân rất đơn giản:

  1. Di chuyển jumper "Boot0" đến vị trí "1"
  2. Nhấp vào "Nhị phân"
  3. Chọn tệp Bootloader (.bin)
  4. Tại menu, nhấp vào "Mục tiêu" và "Chương trình".

Điều này sẽ cho phép tải Boot0 với Bootloader mới.

  1. Trả jumper "Boot0" về vị trí "0"
  2. Nhấn nút đặt lại.

LƯU Ý: Bạn sẽ không bao giờ cần phải di chuyển jumper Boot0 nữa đến vị trí "1" để tải các chương trình được tạo trong Arduino IDE.

Bước 6: Thời gian giao dịch với Arduino IDE

Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE

Bạn có thể nhận thấy sau khi tải "generic_boot20_pc13.bin", cổng USB Blue Pill của bạn sẽ được Trình Quản Lý Thiết Bị của máy tính nhận dạng là "Maple Serial (COMx)".

Để chuẩn bị cho bạn Arduino IDE đối phó với STM32, hãy làm theo các bước bên dưới:

Bước 7: Thời gian giao dịch với Arduino IDE

Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE
Đã đến lúc giao dịch với Arduino IDE

Bây giờ bạn có thể nhận thấy, khi kết nối cổng USB của bạn với máy tính, nó sẽ được nhận dạng là "Maple Serial (COMx)".

Bây giờ, hãy chuẩn bị Arduino IDE để lập trình STM32. Mở Arduino IDE, nếu chưa mở:

  1. Đi tới trình đơn Tệp và chọn "Tùy chọn". Thao tác này sẽ mở cửa sổ Tùy chọn.
  2. Nhấp vào biểu tượng hình vuông đôi gần hộp văn bản "Url trình quản lý bảng bổ sung".
  3. Inside Text Box, sao chép và dán các liên kết bên dưới, mỗi liên kết một dòng: https://dan.drown.org/stm32duino/package_STM32duino_index.jsonhttps://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.jsonBạn sẽ cần cả hai bảng thiết lập trong các liên kết đó.
  4. Bây giờ vào menu "Tools" và chọn "Board Manager". Thao tác này sẽ mở Cửa sổ "Quản lý Hội đồng quản trị".
  5. Đảm bảo "Tất cả" được chọn trong "Loại" và trong hộp văn bản loại "STM32F1"
  6. Cài đặt cả hai tùy chọn xuất hiện.

Bước 8: "Gran Finale"

Các
Các

Bây giờ, bạn có thể nhập mã của mình và biên dịch nó.

Kết nối "Blue Pill" của bạn và đặt cấu hình như trong hình. Đảm bảo chọn đúng cổng.

Vì vậy, bây giờ nó đã sẵn sàng để tải mã lên "Blue Pill".

Tôi hy vọng nó sẽ giúp bạn!

Đề xuất: