TLINK用于STM32板子上
1)仿真器要先插在供電的板子上
2)安裝完后檢查電腦設備有沒顯示STLINK dongle
【STLINK驅動安裝失敗】:
1.試試這個版本的驅動:https://pan.baidu.com/s/1xSmiHrk-Jd9dKY-xqvHFMA
2.上一步不行的話禁止驅動數字簽名驗證后再去按章驅動:
(WIN10) https://jingyan.baidu.com/article/624e74594dbc8d34e8ba5aa6.html
(WIN7) https://jingyan.baidu.com/article/3d69c5518ca3fdf0cf02d7c9.html
分析點:
1)在設備管理器里找到帶!號的STLINK,然后點右鍵的更新驅動,
手動找到這個驅動的文件夾,然后讓系統自己找驅動文件,驅動就可以了
2)如果還是不行,那真是系統兼容性問題了。
一般來說,安裝光盤提供的兩個之一(根據64/32位系統選擇),就可以了。
如果實在不行,換臺電腦試試,或者重裝系統了
【STLINK仿真器使用問題】
STLINK仿真器上面四個口SWIM適用于STM8,下面20pin口適用于STM32
如果STM32使用SWD模式,要接對應下面紅色方框的四個口
這個STLINK仿真器是不支持供電的,板子要獨立供電使用
經常有人說接三根線就好,不用接VDD,這樣是無法讀取設備芯片信息的
1腳的VDD作為輸入端,是不帶電的,需要接板子上的VDD和3.3V 引腳才能正常工作
而19腳是有帶電的,遇到不能讀取設備芯片信息的
也可以將1和19腳用杜邦線短接做特殊的處理
不要糾結為什么別的STLINK仿真器接三根線就可以,而這個不行
每個仿真器的使用方法都是有所不同,要根據具體情況來分析
<script src="https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/tt_player/tt.player.js?v=20160723"></script>
一、前言
??近期整理了這些 ST的開發板。每塊電路板上包含有一個板載調試器,STLINK。將這板載開發器去下,可以用于之后其他實驗板的調試。這些調試器都包含有一個 F103單片機,下面單獨測試一下這些開發板的使用。
??在ST網站給出了這種開發板的詳細資料。用戶手冊給出了介紹了開發板使用方法。電路板上包括有一個六芯的插座,可以通過它對電路板進行程序下載更新。下面使用其中四條線,連接到昨天制作的測試電路板上。
??電路板上的芯片為 STM32F373,通過探針夾子與 ST Link連接。這個電路板可以通過 JLINK 中的 SWD 模式進行程序下載。現在測試 STLink的下載功能。
??首先測試 ST Utility 軟件,它可以通過 STLINK 與 電路板建立聯系,并正確識別單片機信號,讀取內部程序中的數據。執行芯片擦除功能,芯片被正確擦除了。下面測試下載程序功能。可以看到此時,下載程序報錯。具體原因不詳。
??直接手工編輯內存FLASH數據,可以看到在起始位置 0 的情況下,無法修改內存FLASH。將地址修改到 0x0800 0000,這次修改FLASH內容,可以正確修改存儲了。
??因此,猜測剛才下載程序出錯的原因,是因為編譯生成 單片機程序的格式為 HEX 文件,它的起始地址是從 0x0開始的,所以無法下載到單片機中 。
??下面再測試 STM32 Cube Programmer 程序,它同樣可以正確通過 STLINK 連接到測試電路板上的單片機。但是仍然無法將單片機的HEX程序下載到開發板中。是否也是因為讀取的 HEX 文件的起始位置是0,而不是 0x0800 0000 的原因呢?
??本文記錄了使用 NUCLEO板載STLINK 對 單片機進行程序下載過程中遇到的問題。能夠正確連接到單片機以及對芯片進行擦除。但無法下載 單片機的 HEX 文件。不知道誰知道真正的原因是什么?
參考資料
[1]
Development boards: https://os.mbed.com/platforms/?q=&Mbed+OS+support=Mbed+OS+2
[2]
STM32 Nucleo Boards: https://www.st.com/en/evaluation-tools/stm32-nucleo-boards.html