寫在前面:
本文章為《ARM Cortex-A7裸機開發篇》系列中的一篇,全系列總計11篇,筆者使用的開發平臺為華清遠見FS-MP1A開發板(STM32MP157開發板),
針對FS-MP1A開發板,除了Cortex-A7裸機開發篇外,還包括其他多系列教程,包括Cortex-M4開發篇、FreeRTOS篇、Linux基礎及應用開發篇、Linux系統移植篇、Linux驅動開發篇、硬體設計篇、人工智能機器視覺篇、Qt應用編程篇、Qt綜合專案實戰篇等,歡迎關注,更多stm32mp157開發教程及視頻,可加技術交流Q群459754978,感謝關注,
FS-MP1A開發板詳情介紹:https://item.taobao.com/item.htm?id=622457259672
Cortex-A7開發環境搭建
本章節主要介紹windows下的開發環境搭建,推薦使用win10 64bit系統進行安裝,我們將安裝以下軟體,
- Xshell 6(免費版)
- STM32CubeProgrammer
Xshell 6安裝
由于在后續的實驗中需要使用到串口除錯終端和ssh登陸Linux作業系統,因此需要 安裝一個 除錯工具 ,這里以xshell為例 ,讀者也可以根據自己的個人習慣選擇,
Xshell 6免費版安裝包可以從xshell官方網站https://www.netsarang.com/zh/通過郵件申請免費版本,也可以使用資料光碟中【華清遠見-FS-MP1A開發資料\01-工具軟體】的Xshell-6.0.0197p.exe安裝包進行安裝,

雙擊安裝包后會先檢查當前系統環境,如果系統依賴不滿足則會自動安裝缺失的部分,

環境安裝完成后將會出現如下界面

點擊“下一步”

點擊“我接收許可協議中的條款”

這里直接點擊“下一步”

選擇要安裝的默認目錄后點擊“下一步”

點擊“安裝”

安裝完成會出現如下界面

安裝完成后第一次啟動需要指定一個組態檔默認保存路徑,這里一般默認即可,

然后出現如下界面,由于是免費版本所以直接點擊“關閉”即可,

隨后會彈出如下界面,點擊“確定”

至此,xshell 6(免費版),就安裝成功了,
STM32CubeProgrammer安裝
STM32CubeProgrammer是STMicroelectronics的官方工具,用于在STM32平臺上的Flash設備中創建磁區并對各個磁區進行鏡像燒錄,
可以使用STM32CubeProgrammer來燒錄STM32 MPU板上支持的所以Flash設備,后續 鏡像燒錄將會用STM32CubeProgrammer工具進行eMMC和SDCsrd的鏡像更新,
STM32CubeProgrammer安裝包可以從xshell官方網站https://www.st.com/en/development-tools/stm32cubeprog.html通過郵件申請最新版本,也可以使用資料光碟中【華清遠見-FS-MP1A開發資料\01-工具軟體】的en.stm32cubeprog_v2-4-0.zip安裝包進行安裝,
首先需要將安裝包解壓,解壓完成后得到如下檔案,

雙擊“SetupSTM32CubeProgrammer-2.4.0.exe”允許安裝向導,

點擊“Next”

點擊“Next”

點擊“I accept the terms of this license agreement”

這里選擇安裝路徑,筆者可以自行指定,點擊Next之后會提示,將要創建一個安裝目錄,

勾選STM32TrustePackageCreator選項

Next之后會行程式安裝,

在安裝的程序中會彈出如下界面,安裝相關的驅動程式,
點擊“下一步”

程式將會自動安裝所需的驅動程式,安裝完成后會彈出如下界面,

點擊“完成”

切換到“STM32CubeProgrammer”界面后點擊“Next”,創建桌面快捷鍵,

安裝完成界面

出現上述界面后點擊“Done”,至此STM32CubeProgrammer就安裝完成了,
CORTEXA7相關工具安裝
- 安裝GCC編譯工具
雙擊【資料光碟\華清遠見-FS-MP1A開發資料-2020-11-06\01-工具軟體\Yagarto工具包】目錄下的yagarto-bu-2.21_gcc-4.6.2-c-c++_nl-1.19.0_gdb-7.3.1_eabi_20111119.exe進行安裝

點擊 Next

繼續點擊Next



點擊Install

點擊Next

點擊Finish,完成安裝
- 安裝Yagarto工具包
雙擊【資料光碟\華清遠見-FS-MP1A開發資料-2020-11-06\01-工具軟體\Yagarto工具包】目錄下的yagarto-tools-20100703-setup.exe進行安裝

點擊Next

點擊Next

點擊Next

選擇安裝路徑,然后點擊Next

點擊Install進行安裝


點擊Finish,完成安裝
- 安裝JRE
雙擊【資料光碟\華清遠見-FS-MP1A開發資料-2020-11-06\01-工具軟體】目錄下的檔案jre-6u7-windows-i586-p-s.exe進行安裝

點擊“接受”,程序可能需要一段時間

點擊“完成”即完成安裝
Eclipse for ARM 安裝與使用
選擇路徑:【資料光碟\華清遠見-FS-MP1A開發資料-2020-11-06\01-工具軟體\eclipse\ eclipse-cpp-helios-SR1-win32.zip】檔案解壓后,然后運行eclipse.exe檔案,
Eclipse for ARM是一個標準的視窗應用程式,可以單擊程式按鈕開始運行,打開后需先指定一個工程存放路徑,如圖所示,


第一次打開后出現這種界面,點擊“workbench”進入工程界面,可以彈出作業界面

創建一個C工程
進入主界面后,選擇“File、New、C Project”命令,Eclipse將打開一個標準對話框,輸入你新建工程的名字然后單擊“Finish”按鈕即可創建一個新的工程,

創建成功后,會在工程作業界面中有你創建的工程名,之后添加工程必要檔案,
- 新建一個Makefile檔案
選擇“File、New、Other”命令,在彈出的對話框New中的“General”下單擊File,然后單擊Next,選擇所要指定的工程后,在檔案名文本框中輸入檔案名Makefile,然后單擊“Finish”按鈕,


- 新建一個腳本檔案
選擇“File、New、Other”命令,在彈出的對話框New中的“General”下單擊File,然后單擊Next,選擇所要指定的工程后,在檔案名文本框中輸入檔案名STM32MP1.init,然后單擊“Finish”按鈕,

- 新建一個鏈接腳本檔案
選擇“File、New、Other”命令,在彈出的對話框New中的“General”下單擊File,然后單擊Next,選擇所要指定的工程后,在檔案名文本框中輸入檔案名led.lds,然后單擊“Finish”按鈕,

- 新建一個匯編源檔案
選擇“File、New、Other”命令,在彈出的對話框New中的“General”下單擊File,然后單擊Next,選擇所要指定的工程后,在檔案名文本框中輸入檔案名led_light.S,然后單擊“Finish”按鈕,

- 新建一個main檔案
選擇“File、New、Other”命令,在彈出的對話框New中的“General”下單擊File,然后單擊Next,選擇所要指定的工程后,在檔案名文本框中輸入檔案名main.c,然后單擊“Finish”按鈕,

至此工程及所需檔案已經基本創建完成,為了能夠實作工程的相關功能,還必須在對應檔案中添加相應的代碼,在這一步時,你可以參考已有工程的檔案,
所有檔案編譯完成后,保存檔案,創建好的工程如圖所示

點擊如下圖所示的編譯圖示進行編譯

編譯完成后顯示結果如圖所示,表示編譯沒有問題

此時工程下所有檔案如下

匯入一個已有工程
本文提供了相關專案實驗原始碼,在實驗中可以直接匯入相應工程即可,
1. 打開 打開 Eclipse 開發工具,在Project Explorer 中添加 LED 工程
(注意:工程要放在英文路徑下 ,不能有中文路徑 )
拷貝【 資料光碟\華清遠見-FS-MP1A開發資料-2020-11-06\02-程式原始碼\03-ARM體系結構與介面技術\Cortex-A7\c_led】 到 eclipse 作業目錄下,
如:C:\Users\FSARSIGHT-IOT-01\Desktop\eclipse-example目錄,
(注意:如果從光碟介質直接拷貝出來的目錄可能會出現檔案有只讀屬性的情況,建議查看檔案夾的只讀屬性是否選中,確保在未勾選的狀態下)

如圖所示,在 Project Explorer 視窗中右擊滑鼠,選擇“Import…”,如下圖所示

選擇“Import…”后,出現如下圖所示的視窗,選中“Existing Projects Into Workpace”然
后點擊“Next”

選擇“Next”后出現如下視窗,點擊“Browse…”后出現“瀏覽檔案夾”視窗,在“瀏覽檔案
夾”視窗中選中實驗“c_led”后點擊“確定”

點擊“確定”后出現如下視窗,直接點擊“Finish”即可,

添加成功后可以在“ Project Explorer ”中看到“c_led”工程成功匯入,


工程成功匯入后,如暫時不使用該工程時我們可以Close project,下次使用時再Open project(同時只能有一個工程是打開的),該工程相關配置不變,

openOCD使用
由于在后續的實驗中需要使用到openOCD除錯軟體,可以從資料光碟中【華清遠見-FS-MP1A開發資料-2020-11-06\01-工具軟體】下載OpenOCD-STM32MP1.zip壓縮包,進行解壓后,進入bin目錄下,按住Shift鍵,右擊滑鼠,如圖所示

點擊“在此處打開Powershell視窗”選項,然后可以出現如下視窗

Eclipse Debug除錯
準備完畢,在Eclipse進行Debug除錯時,在window PowerShell視窗中輸入如下指令
.\openocd.exe -s .\scripts\ -f board\stm32mp15x_fsmp1a.cfg
點擊回車,顯示結果如下

打開Xshell 6軟體后,連接MP1,如圖所示


此時按一下開發板復位鍵,在倒計時到0之前按下回車,最終顯示界面如下

在Eclipse 中首先進行Debug除錯配置,點擊
![]()
按鈕,然后選擇“Debug Configurations..”,點擊,然后出現如下界面

然后雙擊“Zylin Embedded debug(Native)”,可以出現所創建的工程,配置如下

在紅框內選擇所建工程中生成的elf檔案


配置完成后點擊Apply,然后再點擊Debug,會出現如下提示框

點擊Yes,然后進入Debug除錯界面,如圖所示

點擊
![]()
按鈕,程式開始運行,首次會卡住在main處,然后再次點擊
![]()
按鈕,程式全速運行,此時可以發現LED燈正常閃爍,

當點擊
![]()
按鈕后,程式結束運行,如圖所示


當退出Debug界面時,選中上圖紅框中內容,按下Del鍵洗掉掉,此一步主要防止出現不知名錯誤,
另外,在測驗時,由于沒有關閉看門狗,程式運行32秒后,會自動進行復位,
硬體平臺:華清遠見FS-MP1A開發板(STM32MP157)
部分開發教程下載:加QQ群459754978,群檔案里有,
部分視頻課程收看:華清遠見研發中心的個人空間_嗶哩嗶哩_Bilibili
淘寶購買鏈接:https://item.taobao.com/item.htm?id=622457259672
手機淘寶分享碼:復制本行文字打開手淘?T4FPXn3YYJ2?
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/323396.html
標籤:其他
上一篇:?openGauss資料庫原始碼決議系列文章—— 物件權限管理?
下一篇:last_name
