国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

基于STM32的匯編程序

RancherLabs / 1966人閱讀

摘要:編寫匯編程序編譯并調試程序編譯程序右鍵工程點擊,或點擊紅色小方框標記出的魔法棒在下勾選以創建文件或點擊,我們可以觀察到文件的生成在下勾選因為我們這里僅使用軟件仿真,勾選。更改項為和項為,用于設置支持的軟硬件仿真。

1.KEIL的下載及安裝

1.1 mdk531的下載

鏈接:https://pan.baidu.com/s/1uiPGz_5Gorv0wOsAGUQsvg
提取碼:3an4

1.2 mdk531的安裝

解壓壓縮包后以管理員身份運行mdk531.exe

點擊Next

勾選同意后,點擊Next

選擇好安裝目錄后點擊Next

雙擊一下文件,安裝STM32庫

安裝好后,我們可以激活它,以管理員身份運行Keil uVision5(注意一定要用管理員身份運行,否則無法激活),點擊File中的License Management

之后會出現以下界面,復制紅框中的CID碼

解壓keygen壓縮包后,雙擊打開

第一步Target選擇ARM,第二步將License Management中復制的CID碼粘貼到注冊機中的CID框中,第三步點擊Generate,第四步將框中出現的Code碼復制到License Management窗口中的New License ID Code中,然后點擊Add LIC即可激活到2032。

2 基于STM32編寫匯編程序

2.1 在Keil中新建工程

點擊Project——>New uVision Project創建一個新工程

選擇保存路徑,最好每個工程都新建一個文件夾,命名文件后點擊保存

在以下界面中選擇自己對應的芯片

點擊OK后會自動彈出以下窗口,勾選CMSIS中的CORE和Device中的Startup即可

2.2 添加源文件

在新建好的工程中找到Source Group 1后右鍵,然后點擊Add New Item to Group Source Group 1…

因為我們是匯編文件,所以選擇.s結尾的Asm File,然后輸入文件名后點擊添加即可。

編寫匯編程序

 AREA MYDATA, DATA	 AREA MYCODE, CODE	ENTRY	EXPORT __main__main	MOV R0, #10	MOV R1, #11	MOV R2, #12	MOV R3, #13	;LDR R0, =func01	BL	func01	;LDR R1, =func02	BL	func02		BL 	func03	LDR LR, =func01	LDR PC, =func03	B .		func01	MOV R5, #05	BX LR	func02	MOV R6, #06	BX LR	func03	MOV R7, #07	MOV R8, #08		BX LR		END

2.3 編譯并調試程序

Ctrl+F7編譯程序

右鍵工程點擊Options for Target ‘Target1’,或點擊紅色小方框標記出的魔法棒

在Output下勾選Create HEX File以創建HEX文件

F7或點擊Build,我們可以觀察到hex文件的生成

在Debug下勾選Use Simulator(因為我們這里僅使用軟件仿真),勾選Run to main()。更改Dialog DLL項為DARMSTM.DLL和TARMSTM.DLL;parameter項為-pSTM32F103C8,用于設置支持STM32F103C8的軟硬件仿真。

點擊Start/Stop Debug Session開始調試

在調試界面下設置斷點進行動態調試,我們在MOV R3, #13處設置斷點

點擊Run(F5)運行,我們可以看到R0,R1,R2都發生了改變,而R3仍為0。

取消斷點,我們可以看見R0—R3,R5—R8都發生了變化

2.4 HEX文件分析

打開生成的hex文件

:020000040800F2

第一個字節 0x02表示本行數據的長度;
第二、三個字節 0x00 0x00表示本行數據的起始地址;
第四個字節 0x04表示數據類型,數據類型有:0x00、0x01、0x02、0x03、0x04、0x05。
后面是數據字節0x08和0x00
最后一個字節 0xF2為校驗和。

數據類型如下:
00: Data Rrecord 用來記錄數據,HEX文件的大部分記錄都是數據記錄
01: End of File Record 用來標識文件結束,放在文件的最后,標識HEX文件的結尾
02: Extended Segment Address Record 用來標識擴展段地址的記錄
03: Start Segment Address Record 開始段地址記錄
04: Extended Linear Address Record 用來標識擴展線性地址的記錄
05:Start Linear Address Record 開始線性地址記錄

3 總結

本文講述了keil中進行的軟件仿真,雖然過程簡單,卻也遇到不少問題,好在都順利解決了。如有不足,歡迎指出!

4 參考文獻

https://blog.csdn.net/qq_45237293/article/details/111825193?spm=1001.2014.3001.5501
https://blog.csdn.net/qlexcel/article/details/5494909

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/121611.html

相關文章

  • 基于MDK創建STM32匯編語言工程——上機實驗一(9527)

    摘要:設置下面的項為和項為,用于設置支持的軟硬件仿真。如有錯誤,請斧正。參考文獻基于創建匯編語言工程并分析 文章目錄 1新建工程2配置環境3測試代碼4分析生成的H...

    joy968 評論0 收藏0
  • 基于STM32Cube MX開發TencentOS-Tiny軟件包

    摘要:基于開發的軟件包導師汪禮超學員崔林威摘要騰訊物聯網操作系統是騰訊面向物聯網領域開發的實時操作系統,具有低功耗,低資源占用,模塊化,可裁剪等特性。圖中斷函數處理進行生成工程配置,按如下界面進行配置,最后點擊,并點擊。 ...

    shiyang6017 評論0 收藏0
  • STM32入門學習經驗總結

    摘要:嚴格地說,應該是模仿實驗。為什么覺得無從下手,看資料沒有頭緒經驗總結看資料需要計劃耐心和速度這里所謂的資料包括書籍文檔。建議有報銷條件的同學自己設計一塊板子學習。無法報銷的同學,可以選購一款開發板學習。 STM32系列基于專為要求高性能、低成本、低功耗的嵌入式應用專門設計的ARMCortex...

    biaoxiaoduan 評論0 收藏0
  • 基于STM32平臺數字溫度顯示器系統設計

    摘要:帶中文字庫的是一種具有位位并行線或線串行多種接口方式,內部含有國標一級二級簡體中文字庫的點陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標準的協議,完整的協議棧。以最低成本提供最大實用性,為功能嵌入其他系統提供無限可能。 項目簡介 開發環境: Keil5.14,CubeMX6.0.1,主...

    villainhr 評論0 收藏0
  • 單片機入門指南

    摘要:單片機入門指南本文基于常神文章基礎上將單片機入門部分進行細化盡可能細節做到可實施性先引用一下常神的文章首先假設大家已經對高中物理的電路部分有所了解。單片機,如,是一種根據程序控制引腳高低電平的可編程器件,有些場合又將這種行為稱作嵌入式。 ...

    nevermind 評論0 收藏0

發表評論

0條評論

RancherLabs

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<