Tải xuống chương trình 
Tải xuống DAP-LINK 
Chú ý!!!
Trong hệ điều hành Windows 11 nếu đã cài đặt phần mềm STlink, DAPLink có thể sẽ không nhận diện được!!!
Nếu sử dụng DAP-Link hoặc STlink, khuyên bạn nên dùng một loại duy nhất!!
Kết nối DAP-LINK 

Khi đã kết nối xong sẽ trông như thế này:

Cài đặt và tải xuống KeilMDK 

Như vậy sẽ thấy, chương trình đã được tải vào board. Tự động reset để thực thi.
Tải xuống ST-LINK-V2 
Chú ý!!!
Trong hệ điều hành Windows 11 nếu đã cài đặt phần mềm STlink, DAPLink có thể sẽ không nhận diện được!!!
Nếu sử dụng DAPLink hoặc STlink, khuyên bạn nên dùng một loại duy nhất!!
Tải driver ST-Link 
Địa chỉ tải xuống chính thức: https://www.st.com/zh/development-tools/stsw-link009.html#get-software
Những người không có tài khoản có thể đăng ký một cái

Giải nén tập tin vào thư mục:

Sau đó nhấp đúp để chạy

Chỉ cần chạy từng bước một thôi

Hướng dẫn kết nối STLink và board mạch phát triển 

Cài đặt và tải xuống KeilMDK 

Chương trình sẽ được tải xuống và chạy xong, vì chúng ta đã chọn Reset and Run.
Lưu ý: Trên trang Packing, cần bỏ chọn mục Enable, nếu không sau khi nạp chương trình xong sẽ không tự động reset và chạy!!!
Tải xuống ST-LINK-V3MINIE 
ST-LINK-V3 có nhiều phiên bản, hướng dẫn này sử dụng phiên bản MINIE. Hướng dẫn người dùng:
Chú ý!!!
Trong hệ điều hành Windows 11 nếu đã cài đặt phần mềm STlink, DAPLink có thể sẽ không nhận diện được!!!
Nếu sử dụng DAP hoặc STlink, khuyên bạn nên dùng một loại duy nhất!!
Tải driver ST-Link 
Địa chỉ tải xuống chính thức: https://www.st.com/zh/development-tools/stsw-link009.html#get-software
Những người không có tài khoản có thể đăng ký một cái

Giải nén tập tin vào thư mục:

Sau đó nhấp đúp để chạy

Chỉ cần chạy từng bước một thôi

Hướng dẫn kết nối giữa STLink V3-MINIE và board mạch phát triển 

Chú ý: Mạch VCC này không cung cấp nguồn cho bảng phát triển, cần kết nối nguồn Type-C riêng biệt. > VCC ở đây chỉ dùng để kiểm tra điện áp chân, ST-Link-V3NIMIE sẽ tự động điều chỉnh điện áp, tuyệt đối không cắm VCC vào 5V0!!
Cài đặt và tải xuống KeilMDK 

Chương trình sẽ được tải xuống và chạy xong, vì chúng ta đã chọn Reset and Run.
Chương trình ghi bằng cổng Serial 
Cài đặt STM32CubeProgrammer 
STM32CubeProgrammer là phần mềm chính thức của ST, có thể tải xuống trực tiếp qua cổng serial.
Chúng tôi giải nén các tệp bên trong rồi nhấp đôi vào để chạy.
Xuất hiện giao diện này, nhấp Next liên tục




Chọn vị trí cài đặt



Chờ cài đặt





Hoàn thành cài đặt

Cài đặt driver CH340 
Tải driver:
Giải nén thư mục, sau đó nhấn chuột phải chọn chạy với tư cách quản trị viên.

Sau khi chạy sẽ xuất hiện một cửa sổ, nhấn cài đặt. Nhấn vào cái trên cùng nhé

Khi cửa sổ này xuất hiện, điều đó có nghĩa là việc cài đặt đã hoàn tất. Lúc này, chỉ cần nhấn OK để đóng cửa sổ phần mềm.

KeilMDK Cài đặt 

Sau khi biên dịch xong, chúng tôi nhận thấy có thêm một tệp HEX trong thư mục Objects.
Tệp này chính là tệp chúng tôi sẽ lập trình.

Bảng Đấu Dây UART cho STM32F407 Trên Trời 
Chúng tôi muốn sử dụng kết nối UART để tải xuống cần một Module USB sang TTL. Bạn có thể mua loại phù hợp theo ý muốn.

| Mô-đun USB sang TTL【Chân cắm】 | Bảng mạch phát triển STM32F407【Chân cắm】 | 
|---|---|
| 5V | 5V | 
| GND | GND | 
| TXD | U1R | 
| RXD | U1T | 
Ghi đĩa 
Mở phần mềm STM32CubeProgrammer, thiết lập các cấu hình của phần mềm:
Chọn cổng COM dựa trên USB-to-TTL của bạn, nếu thực sự không biết có thể vào Quản lý thiết bị, cắm hoặc rút USB-to-TTL để xem cổng COM nào xuất hiện.
⚠ Cảnh báo
Dưới đây sai rồi, nhớ không tích chọn 【Skip flash erase before programming】!!

Chọn tập tin HEX
⚠ Cảnh báo
Cái dưới sai rồi, nhớ đừng tích vào 【Skip flash erase before programming】!!

Bắt đầu vào chế độ nâng cấp. Đầu tiên giữ chặt BOOT0 không thả ra, sau đó nhấn lại để vào chế độ nâng cấp.
Lưu ý: BOOT0 phải được thả ra sau khi thả RESET.

Sau đó chúng ta nhấn Connect để kết nối với bo mạch phát triển
Nếu kết nối thất bại, hãy thử nhiều lần

Kết nối thành công hiển thị:
⚠ Cảnh báo
Phía dưới sai rồi, nhớ không tích vào 【Skip flash erase before programming】!!

Chúng tôi nhấp vào Bắt đầu ghi
⚠Cảnh báo
Phía dưới sai rồi, nhớ đừng chọn 【Skip flash erase before programming】!!

Lúc này chương trình sẽ tự động chạy trên bảng mạch, vì chúng ta đã chọn Chạy sau khi lập trình!
Nạp chương trình qua USB 
Chúng ta vẫn sử dụng phần mềm STM32CubeProgrammer. Việc cài đặt phần mềm đã được trình bày trong phần trước, những ai chưa cài đặt có thể xem lại.
Kết nối bảng mạch phát triển 
Trước tiên, hãy kết nối bảng mạch phát triển với máy tính bằng dây type-C.

KeilMDK Cài đặt 

Sau khi biên dịch xong, chúng tôi phát hiện trong thư mục Objects xuất hiện thêm một tệp HEX.
Tệp này chính là tệp chúng tôi sẽ lập trình.

Thiết đặt STM32CubeProgrammer 
Chúng tôi mở phần mềm và cài đặt phần mềm như thế này:
⚠ Cảnh báo
Đã viết sai ở phần dưới, nhớ đừng chọn 【Skip flash erase before programming】!!

Ghi đĩa 
Bắt đầu vào chế độ cập nhật. Đầu tiên giữ nút BOOT0 không bỏ tay ra, sau đó nhấn thêm lần nữa Nút RESET để vào chế độ nâng cấp.
Lưu ý: BOOT0 phải được thả ra sau khi thả RESET.

Nhấn nút làm mới, sau đó chọn USB1:


Chúng ta nhấn Kết nối để kết nối với bảng phát triển

Kết nối thành công:

Chúng tôi chọn tệp HEX

Nhấn vào Bắt đầu
⚠ Cảnh báo
Dưới đây sai rồi, nhớ không tích chọn 【Skip flash erase before programming】!!

Lúc này, chương trình sẽ tự động chạy trên bảng mạch vì chúng ta đã chọn Chạy sau khi lập trình!