對(duì)于一款MCU而言,工具鏈的好壞將成為其市場(chǎng)表現(xiàn)的關(guān)鍵之一。使用工具鏈開發(fā)程序,工具鏈的功能完備性、界面友好性等因素將會(huì)直接影響用戶的使用體驗(yàn),再者,芯片性能的發(fā)揮,也很大程度依賴于編譯器的性能。
為了讓用戶應(yīng)用MCU完成應(yīng)用系統(tǒng)方案的設(shè)計(jì)及驗(yàn)證,MCU廠商一般有兩種方式提供支持:一是MCU廠商通過自身研發(fā),提供全套平臺(tái)工具,二是客戶尋求第三方通用工具(如IAR等)支持。
極海半導(dǎo)體根據(jù)自身產(chǎn)品特色及應(yīng)用領(lǐng)域要求,自主研發(fā)建成了一套完整的軟硬件開發(fā)工具,可幫助用戶縮短產(chǎn)品開發(fā)周期、提高產(chǎn)品穩(wěn)定性,為客戶在完成MCU應(yīng)用開發(fā)工作的過程提供強(qiáng)有力的支持。
Geehy 工具鏈教程
> 準(zhǔn)備工作
> 硬件準(zhǔn)備
> Geehy-Link
> APM32 PROG
> USB轉(zhuǎn)TTL模塊
> APM32F0/1/4系列MCU 開發(fā)板
> 軟件準(zhǔn)備
> Keil uVision5(建議5.25以上版本)
> IAR EW for Arm 9.20.2
> APM32 PROG
> ISP Multiport Programmer
> DFUProgrammer
> APM32F0/1/4系列MCU SDK
> 以上Geehy相關(guān)的軟件均可在Geehy資料下載獲?。╗APM32微控制器 (geehy.com)](https://geehy.com/support/apm32))
· 1 Geehy-Link 使用教程
Geehy-LINK是一款仿真器和編程器一體化的開發(fā)工具,可以在Keil、IAR等集成開發(fā)環(huán)境下對(duì)APM32全系列MCU產(chǎn)品進(jìn)行在線調(diào)試仿真。支持全速運(yùn)行、單步調(diào)試、斷點(diǎn)設(shè)置等各種調(diào)試方式。使用USB線連接電腦,連接成功后,設(shè)備管理器上會(huì)出現(xiàn):Geehy DAP USB Device ,如下圖
· 1.1 Keil MDK 下 配置Geehy-Link調(diào)試器
· 1.1.1 Pack支持安裝
目標(biāo)環(huán)境下需提前準(zhǔn)備好Keil uVision5(建議5.25以上版本)環(huán)境,安裝需要調(diào)試的APM32F0/1/4系列MCU 的Pack,安裝方法(以APM32F407芯片為例)如下:
打開下載好的“APM32F4xx_SDK_V1.1Package”下的Pack。
安裝Pack(左鍵雙擊即可)至Keil的Pack安裝目錄(一般為默認(rèn)路徑即可)。
等待安裝完畢。
1.1.2 配置Geehy-Link調(diào)試器
打開工程文件
“APM32F4xx_SDK_V1.1ExamplesSysTickSysTick_TimeBaseProjectMDKSysTick_TimeBase.uvprojx”后選擇“Options for Target”選項(xiàng)卡
在“Debug”選項(xiàng)下載選擇仿真器為“CMSIS-DAP Debugger”后選擇“Setting”。
在“CMSIS-DAP Cortex-M Driver Setup”界面選擇“Geehy CMSIS-DAP”(舊版本為“Apex CMSIS-DAP”)后點(diǎn)擊“OK”。仿真器到此配置結(jié)束。
· 2 APM32PROG 使用教程
· 2.1 APM32PROG 軟件上位機(jī)
下載好上位機(jī)軟件 Apex-APM32-Setup.msi 后進(jìn)行安裝(安裝界面省略),打開軟件后連接APM32PROG,連接成功后上位機(jī)會(huì)讀取當(dāng)前APM32PROG的固件版本,如下圖中最底部的紅框。若當(dāng)前APM32PROG的固件版本低于最新版本將會(huì)有更新固件版本信息提示。
整個(gè)APM32PROG 上位機(jī)的功能區(qū)域分為文件打開區(qū)域、配置區(qū)域(含序列號(hào)配置、配置寫入)、離線或在線操作區(qū)域。APM32PROG配合上位機(jī)可以實(shí)現(xiàn)對(duì)目標(biāo)MCU進(jìn)行編程,讀取,加解密等許多功能。下面以APM32F003F6P6為例介紹一下APM32PROG的離線下載及在線讀取MCU的方法。其他功能讀者可以此類推,根據(jù)軟件幫助及使用說明書進(jìn)行探索。
2.2 APM32PROG 離線編程
我們的芯片選型為APM32F003F6P6,該芯片僅支持SWD調(diào)試,我們的 APM32PROG配置如下圖。
選擇需要下載的hex(或bin)文件,
1.Product-Series APM32F003
2.Product-Type APM32F003F6P6
此時(shí)APM32PROG 上位機(jī)會(huì)彈出配置選項(xiàng)字節(jié)的窗口,有配置MCU選項(xiàng)字節(jié)需求的讀者可以使用該功能,本次離線燒錄暫未使用該功能,此處省略。
3.External-Power 選擇 Power ON
4.Comm-Protocol 選擇 SWD
5.BaseAddress 設(shè)置為 0x00000000
6.Operation-Mode 選擇 Program
Serial-Number無需求暫時(shí)不配置。設(shè)置完以上配置后點(diǎn)擊“Write-Config”,將配置寫入至APM32PROG。然后點(diǎn)擊“DownLoad(Offline)”下載程序至APM32PROG。此時(shí)配置信息及程序已下載至APM32PROG,接下來僅需為APM32PROG供電后連接目標(biāo)芯片,然后點(diǎn)擊燒錄啟動(dòng)按鈕,等待燒錄提示燈變綠色即可完成離線燒錄工作。
2.3 APM32PROG 在線讀取
APM32PROG不僅可以完成對(duì)目標(biāo)MCU的離線操作,還可以對(duì)MCU進(jìn)行在線讀取或其他操作。本小節(jié)將以APM32F003F6PU為例,讀取我們上一節(jié)燒錄的程序。
參數(shù)配置如前2.2小結(jié),在讀取的設(shè)置界面
1.StartAddress 設(shè)置為 0x00000000
2.Length(Bytes) 設(shè)置為 0x00008000
最后選擇的操作為“Read(Online)”(APM32PROG需連接目標(biāo)MCU與PC)即可讀取目標(biāo)目標(biāo)MCU的起始地址為0x00000000,大小為0x8000 Bytes的內(nèi)容。
等待讀取進(jìn)度條。
讀取成功后彈出數(shù)據(jù)窗格界面,可點(diǎn)擊“Save”按鈕對(duì)讀出的數(shù)據(jù)進(jìn)行保存。
3 APM32 ISP Multiport Programmer DFUProgrammer
3.1 關(guān)于 APM32 MCU的BootLoader
APM32F0/1/4與APM32E1系列MCU在出廠時(shí)都內(nèi)置了一段BootLoader程序與系統(tǒng)存儲(chǔ)區(qū)域,以方便用戶通過ISP的方式對(duì)MCU進(jìn)行程序下載、選項(xiàng)字節(jié)編程等操作。其中各芯片的BootLoader對(duì)支持升級(jí)的通信方式有所不同。
本小結(jié)將對(duì)常用的USART、USB的PC端工具使用進(jìn)行較為基礎(chǔ)的芯片連接、編程的使用方法進(jìn)行介紹,更多內(nèi)容歡迎至Geehy官網(wǎng)或技術(shù)支持工程師獲取。
3.2 APM32 ISP Multiport Programmer
本小結(jié)將以APM32F103VBT6芯片為例,介紹 APM32 ISP Multiport Programmer 的基礎(chǔ)功能--芯片編程與擦除。該軟件可在Geehy官網(wǎng)獲取(https://geehy.com/support/apm32?id=252)。
3.2.1 連接MCU前準(zhǔn)備工作
由于 APM32 ISP Multiport Programmer與MCU通信方式是USART,所以這里我們需要使用USB轉(zhuǎn)TTL模塊將PC于MCU進(jìn)行連接。接線方式如下。
完成接線后需安裝相應(yīng)的USB轉(zhuǎn)TTL模塊的驅(qū)動(dòng)。驅(qū)動(dòng)安裝正常后會(huì)在“設(shè)備管理器”中看到有相應(yīng)的“USB Serial Port”端口。
3.2.2 APM32 ISP Multiport Programmer 連接MCU
如3.1 小節(jié)的表格,APM32F103VBT6進(jìn)入BootLoader需要將“Boot0接0、Boot1接1”(跳帽重新連接前MCU已上電情況下,需復(fù)位MCU)。完成所有的接線操作后打開安裝好的APM32 ISP Multiport Programmer(安裝過程略過)。
APM32 ISP Multiport Programmer連接MCU的一般過程如下,
1.點(diǎn)擊 主界面下的加號(hào) Add New Window 得到設(shè)置窗口
2.在設(shè)置窗口的COM下選擇對(duì)應(yīng)的系統(tǒng)USB Serial Port 我這里是COM3
3.在設(shè)置窗口的Bandrate下設(shè)置需要的波特率,我這里設(shè)置為 115200
4.在設(shè)置窗口的Timeout下設(shè)置連接超時(shí)時(shí)間,我這里設(shè)置為 2
5.最點(diǎn)擊Setting下的Connect按鈕完成對(duì)目標(biāo)MCU的連接
連接成功后會(huì)在同一個(gè)界面顯示當(dāng)前連接芯片的信息,與可操作的一些選項(xiàng)。
3.2.3 APM32 ISP Multiport Programmer 下載程序
在3.2.2節(jié),成功連接APM32F103VBT6芯片后,我們可以看到可操作項(xiàng)有許多,如:Erase Setting下可以選擇對(duì)芯片進(jìn)行全擦還是區(qū)域擦除。在Download File可以選擇下載的文件,在Write Option Byte可選擇對(duì)選項(xiàng)字節(jié)進(jìn)行操作,在Download Setting可選擇下載后的一些操作。
這里我們選擇對(duì)APM32F103VBT6進(jìn)行程序下載,采取全擦,選項(xiàng)字節(jié)不操作,下載后校驗(yàn)并執(zhí)行程序。相關(guān)的設(shè)置界面如下所示。
完成以上選項(xiàng)勾選后點(diǎn)擊“Execute”執(zhí)行我們的設(shè)置。等待進(jìn)度條走條完畢,我們可以在“Execute Result”窗口查看我們的操作log。
3.3 DFUProgrammer
該軟件功能與APM32 ISP Multiport Programmer基本類似,只不過是其支持使用USB作為升級(jí)外設(shè)的MCU的軟件。本小結(jié)將以APM32F407IGMINIBOARD演示DFUProgrammer的芯片程序讀取功能。
3.3.1 連接MCU前準(zhǔn)備工作
其安裝包可以在Geehy官網(wǎng)獲取(https://geehy.com/support/apm32?id=315),里面包括了軟件的安裝說明。
驅(qū)動(dòng)正確安裝后,將APM32F407IGMINIBOARD“Boot0接0、Boot1接1”(跳帽重新連接前MCU已上電情況下,需復(fù)位MCU)。使用USB線纜連接PC與開發(fā)板。此時(shí)我們會(huì)在設(shè)備管理器上看到在“通用串行總線控制器”下看到“APM32 Bootloader”設(shè)備。
3.3.2 DFUProgrammer 連接MCU
打開DFUProgrammer軟件,若此時(shí)電腦已經(jīng)連接好一個(gè)“APM32 Bootloader”設(shè)備,初始界面如下所示,若未找到設(shè)備點(diǎn)擊“搜索設(shè)備”按鈕即可搜索設(shè)備。點(diǎn)擊“連接設(shè)備”按鈕即可連接目標(biāo)MCU。
目標(biāo)MCU連接成功后,我們可以在log界面看到相應(yīng)的提示信息。
3.3.3 DFUProgrammer 讀取程序
點(diǎn)擊左側(cè)的“讀取芯片”按鈕來到芯片內(nèi)容讀取界面,在該界面可設(shè)置讀取的芯片內(nèi)容及大小,點(diǎn)擊“讀取芯片”按鈕可讀取相應(yīng)的數(shù)據(jù),點(diǎn)擊“保存數(shù)據(jù)”按鈕可保存數(shù)據(jù)至PC.
數(shù)據(jù)保存成功后可在log窗口得到數(shù)據(jù)保存成功信息。
至此程序讀取操作完成。
來源:Geehy極海半導(dǎo)體
審核編輯:湯梓紅
-
mcu
+關(guān)注
關(guān)注
146文章
16885瀏覽量
349914 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
4895瀏覽量
97056 -
開發(fā)程序
+關(guān)注
關(guān)注
0文章
4瀏覽量
1451 -
開發(fā)工具鏈
+關(guān)注
關(guān)注
0文章
12瀏覽量
1581
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論