Tôi có bảng khám phá STM32F4 và lập trình viên ST-Link / V2 .
Tôi muốn sử dụng ST-Link của riêng tôi (không phải là nhúng) để lập trình và gỡ lỗi bảng.
Tôi nên kết nối ST-Link bên ngoài với bảng như thế nào?
Tôi có bảng khám phá STM32F4 và lập trình viên ST-Link / V2 .
Tôi muốn sử dụng ST-Link của riêng tôi (không phải là nhúng) để lập trình và gỡ lỗi bảng.
Tôi nên kết nối ST-Link bên ngoài với bảng như thế nào?
Câu trả lời:
Bạn sẽ cần cách ly vi điều khiển khỏi phần liên kết của bảng. Để làm điều này, chỉ cần loại bỏ các jumper trên các chân CN3.
Sau đó, để sử dụng liên kết ngoài của bạn, hãy thực hiện các kết nối sau với các tiêu đề pin vi điều khiển:
VAPP -> 3V / VDĐ
Không kết nối cáp USB
Lập trình nó trong chế độ SW.
Không chắc chắn lý do tại sao bạn muốn làm điều này, trừ khi bạn muốn sử dụng JTAG để lập trình thay thế. Nếu đó là trường hợp cho tôi biết và tôi sẽ cập nhật câu trả lời.
Như đã giải thích trong câu trả lời này , một số phiên bản gần đây của STM32F407G-DISC1 chứa phần sụn trong ST-Link / v2 trên bo mạch của họ, kéo F4 vào thiết lập lại trừ khi chúng được kết nối với thiết bị USB.
Tải xuống và cài đặt Tiện ích ST-LINK trên PC Windows.
Chọn ST-LINK | Cập nhật chương trình cơ sở | Kết nối thiết bị | Có >>>>
Phiên bản V2.J32.M22
được biết là hoạt động.
Tiếp theo, cấp nguồn cho bo mạch từ nguồn điện bên ngoài (chẳng hạn như bộ đổi nguồn AC sang USB). ST-Link / v2 bên ngoài không cung cấp năng lượng. Đừng cắm nó vào PC mà bạn đang lập trình hoặc bạn có thể vô tình thử sử dụng phiên bản trên bo mạch để lập trình từ đó.
Như được hiển thị trong câu trả lời của @ Sensor, hãy xóa hai bộ nhảy CN3 để cách ly chip F4 khỏi ST-Link / v2 trên bo mạch.
Đấu nối các kết nối sau giữa ST-Link / v2 bên ngoài và bảng KHÁM PHÁ theo hướng dẫn ST-Link / v2 .
PIN1 (VAPP) -> VDD
PIN7 (TMS_SWDIO) -> PA13
PIN9 (TCK_SWCLK) -> PA14
PIN15 (NRST) -> NRST
PIN20 (GND) -> GND
PIN15
không thực sự cần thiết khi lập trình từ Windows, nhưng nó được yêu cầu khi lập trình openocd
sử dụng stm32f4discovery.cfg
cấu hình mặc định .
Lệnh sau có thể được sử dụng để lập trình bằng nhánh chính mới nhất openocd
được cài đặt brew install --HEAD openocd
trên macOS.
$ openocd -f board/stm32f4discovery.cfg -c "program app.elf" -c reset -c shutdown