動手,做一個STM32下載器

       記得當年第一次入手STM32時,是衆籌回來的,帶一鍵下載電路(ISP燒錄)的學習板:keil編譯後生成HEX文件,然後使用USB數據線,通過另一個軟件mcuisp燒錄到芯片中。軟件中還要設置兩個高低電平,當時啥也不會,也沒朋友玩這個,只能跟着教程一點點試錯一點點摸索。用這種傻乎乎的操作差不多大半年後,無意間在野火的教程上知道了一個事物:下載器!!  在keil裏點擊就能直接下載,這不神了麼?!驚喜得像發現自己有了特異功能!


1:2017年,x寶買的第二個下載器

也記不清用過多少個下載器/仿真器了,但很記得買的第二個下載器(第1個喫灰了),因爲被折磨了很久,上圖:

  • 左上角寫的是: 驅動,不用另找,在keil/ARM/stlink
  • 右邊標註的是swd接線的引腳。

當時買回來後,按書上的教程一步步接上線,準備開心地燒錄下載了。

誰知道反覆搗弄大半天也沒成功過,看了N多教程才發現:好像要安裝驅動!多菜的當年~~。

網上找了各種驅動,各種沒反應。那時,沒啥經驗,根本分不清問題在哪:驅動?引腳?設備?軟件設置?無從下手,不斷地上網找同樣的案例,枯燥地一個人對着設備一遍又一遍操作碰運氣~~


2:2018年 發現了技小新的 CMSIS-DAP

2018年的時候,技小新出了個開源的下載器:CMSIS DAP,  根據ARM開源項目做的, 用了一段時間,確實是很方便很穩定。

  • 透明的外殼,小巧簡單;
  • 不用安裝驅動,插上就能用;
  • SWD方式接口,三線就能下載
  • 支持corter-m架構所有芯片,stm32只是其中一小員。

更重要的是,技新網把軟件和硬件都開源了,原理圖和代碼都放到網上供愛好都下載。下載處如下:

技新網—CMSIS DAP資料 下載


3、2019年 抄板我的第一個下載器

用了一年多,就開始心癢癢的,想根據資料打板一個自己的下載器。

工作之餘根據技小新的原理圖,作了部分修改,開始慢慢地造自己的武器了。

這個是裸板的第一版,5cm*1.9cm, 自己打板做的,好不好看不重要了,用着心裏舒服,哈~

期間,打過第二版和第三板,也嘗試過使用更高性價比的GD芯片和HK芯片,不過沒成功,最後迴歸stm32f103。

發一下資料,資料中的是精簡和完善後的第三版,壓縮包裏有原理圖、PCB生產文件、代碼,都是直接可用。

CMSIS DAP 裸版第三版資料下載: 原理圖、PCB生產文件、代碼


4、2019年末 下載器進化

硬件調試要往電腦插各種數據線、各種設備,之前因爲買的桌面USB集線器用得不順手,自己做了一個,年末的時候,不斷有種想法,打算把集線器和下載器結合在一起,這樣可以把我們的桌面開發環境整理很簡潔一些。

見網上軟件工程師的桌面可以擺個花盤,但硬件工程師的桌面....其實給我一個獨立房間還不是亂哄哄的,我們就不埋怨桌子小了。

 

  • 把CMSIS DAP升級更換成DAPLink了,有了拖拽燒錄功能,這功能試用後,感覺然並卵。
  • 之前裸板下載器被精簡的虛擬串口,這版本回來上陣了,畢竟是比硬件串口更方便的。
  • 七口集線器(FE2.1), 其中的1口連接了DAPLink,所以只能引出6個U口,但也足夠日常使用了
  • 引出兩個5V電源輸出 接口(紅色),兩個3.3V電源輸出接口(藍色),方便爲開發板供電。
  • 有兩個usb micro b輸入接口,左邊的是數據線接口,並能提500ma電流,開發板調試一般足夠。
  • 另一個micro b接口,可以使用平時的手機充電器插入,這樣能提供1A~2A電流,調試10寸顯示屏也沒壓力了。

5、2020年1月,桌面款下載器完善

使用了幾天,感覺挺實用的,不過使用稍長一點的杜邦線時,下載不太穩定,應該是數據干擾了,然後,又根據使用情況作出更多的調整:

  • 不喜歡使用手機充電器供電,希望電源被更自由地控制 ,就增加了5430, 輸出常用的5V,3A大電流;
  • 移除了3.3V輸出, 因爲自己的調試中的板子都是5V供電,而且是三個同時調試,全換上了5V,。
  • 更換了三個按鍵的位置(復位、固件升級),和防塵有機板不衝突了,之前沒考慮到。
  • 軟件上和硬件配合,修改了幾個地方,使其在三四十釐米長的杜邦線上穩定地實現三線連接,並自動軟復位。

上面這個,是第五版了,上午收到電路板後立馬焊元件,上電、燒固件,運行妥妥的。哈~~

擺上了自己的私夥工具,桌面更條理了,甜甜的滿足感,嘻~~

當然也有代價的:打板第一個下載器,邊用邊完善,到現在第五版,老實說,燒點銀子事小,誤了工作進度才事大,自我批評!!


6、2020年中,打算添加電壓、電流監察顯示功能

近日,又心癢了,想加入顯示屏,監察每個U口的電壓、電流.

還在構思個新想法,調試STM32, 要不停地使用串口輸出監控數據至上位機,然後在Keil和上位機間不斷切換,太煩了, 能不能在桌面下載器的基礎上,加個10寸屏,串口數據直接在10寸屏裏顯示, 就不用在電腦裏切換上位機了(2020.4.18)

(不斷更新中......)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章