成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專(zhuān)欄INFORMATION COLUMN

基于STM32的匯編程序

RancherLabs / 2078人閱讀

摘要:編寫(xiě)匯編程序編譯并調(diào)試程序編譯程序右鍵工程點(diǎn)擊,或點(diǎn)擊紅色小方框標(biāo)記出的魔法棒在下勾選以創(chuàng)建文件或點(diǎn)擊,我們可以觀察到文件的生成在下勾選因?yàn)槲覀冞@里僅使用軟件仿真,勾選。更改項(xiàng)為和項(xiàng)為,用于設(shè)置支持的軟硬件仿真。

1.KEIL的下載及安裝

1.1 mdk531的下載

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

1.2 mdk531的安裝

解壓壓縮包后以管理員身份運(yùn)行mdk531.exe

點(diǎn)擊Next

勾選同意后,點(diǎn)擊Next

選擇好安裝目錄后點(diǎn)擊Next

雙擊一下文件,安裝STM32庫(kù)

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

之后會(huì)出現(xiàn)以下界面,復(fù)制紅框中的CID碼

解壓keygen壓縮包后,雙擊打開(kāi)

第一步Target選擇ARM,第二步將License Management中復(fù)制的CID碼粘貼到注冊(cè)機(jī)中的CID框中,第三步點(diǎn)擊Generate,第四步將框中出現(xiàn)的Code碼復(fù)制到License Management窗口中的New License ID Code中,然后點(diǎn)擊Add LIC即可激活到2032。

2 基于STM32編寫(xiě)匯編程序

2.1 在Keil中新建工程

點(diǎn)擊Project——>New uVision Project創(chuàng)建一個(gè)新工程

選擇保存路徑,最好每個(gè)工程都新建一個(gè)文件夾,命名文件后點(diǎn)擊保存

在以下界面中選擇自己對(duì)應(yīng)的芯片

點(diǎn)擊OK后會(huì)自動(dòng)彈出以下窗口,勾選CMSIS中的CORE和Device中的Startup即可

2.2 添加源文件

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

因?yàn)槲覀兪菂R編文件,所以選擇.s結(jié)尾的Asm File,然后輸入文件名后點(diǎn)擊添加即可。

編寫(xiě)匯編程序

 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 編譯并調(diào)試程序

Ctrl+F7編譯程序

右鍵工程點(diǎn)擊Options for Target ‘Target1’,或點(diǎn)擊紅色小方框標(biāo)記出的魔法棒

在Output下勾選Create HEX File以創(chuàng)建HEX文件

F7或點(diǎn)擊Build,我們可以觀察到hex文件的生成

在Debug下勾選Use Simulator(因?yàn)槲覀冞@里僅使用軟件仿真),勾選Run to main()。更改Dialog DLL項(xiàng)為DARMSTM.DLL和TARMSTM.DLL;parameter項(xiàng)為-pSTM32F103C8,用于設(shè)置支持STM32F103C8的軟硬件仿真。

點(diǎn)擊Start/Stop Debug Session開(kāi)始調(diào)試

在調(diào)試界面下設(shè)置斷點(diǎn)進(jìn)行動(dòng)態(tài)調(diào)試,我們?cè)贛OV R3, #13處設(shè)置斷點(diǎn)

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

取消斷點(diǎn),我們可以看見(jiàn)R0—R3,R5—R8都發(fā)生了變化

2.4 HEX文件分析

打開(kāi)生成的hex文件

:020000040800F2

第一個(gè)字節(jié) 0x02表示本行數(shù)據(jù)的長(zhǎng)度;
第二、三個(gè)字節(jié) 0x00 0x00表示本行數(shù)據(jù)的起始地址;
第四個(gè)字節(jié) 0x04表示數(shù)據(jù)類(lèi)型,數(shù)據(jù)類(lèi)型有:0x00、0x01、0x02、0x03、0x04、0x05。
后面是數(shù)據(jù)字節(jié)0x08和0x00
最后一個(gè)字節(jié) 0xF2為校驗(yàn)和。

數(shù)據(jù)類(lèi)型如下:
00: Data Rrecord 用來(lái)記錄數(shù)據(jù),HEX文件的大部分記錄都是數(shù)據(jù)記錄
01: End of File Record 用來(lái)標(biāo)識(shí)文件結(jié)束,放在文件的最后,標(biāo)識(shí)HEX文件的結(jié)尾
02: Extended Segment Address Record 用來(lái)標(biāo)識(shí)擴(kuò)展段地址的記錄
03: Start Segment Address Record 開(kāi)始段地址記錄
04: Extended Linear Address Record 用來(lái)標(biāo)識(shí)擴(kuò)展線性地址的記錄
05:Start Linear Address Record 開(kāi)始線性地址記錄

3 總結(jié)

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

4 參考文獻(xiàn)

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

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/121611.html

相關(guān)文章

  • 基于MDK創(chuàng)建STM32匯編語(yǔ)言工程——上機(jī)實(shí)驗(yàn)一(9527)

    摘要:設(shè)置下面的項(xiàng)為和項(xiàng)為,用于設(shè)置支持的軟硬件仿真。如有錯(cuò)誤,請(qǐng)斧正。參考文獻(xiàn)基于創(chuàng)建匯編語(yǔ)言工程并分析 文章目錄 1新建工程2配置環(huán)境3測(cè)試代碼4分析生成的H...

    joy968 評(píng)論0 收藏0
  • 基于STM32Cube MX開(kāi)發(fā)TencentOS-Tiny軟件包

    摘要:基于開(kāi)發(fā)的軟件包導(dǎo)師汪禮超學(xué)員崔林威摘要騰訊物聯(lián)網(wǎng)操作系統(tǒng)是騰訊面向物聯(lián)網(wǎng)領(lǐng)域開(kāi)發(fā)的實(shí)時(shí)操作系統(tǒng),具有低功耗,低資源占用,模塊化,可裁剪等特性。圖中斷函數(shù)處理進(jìn)行生成工程配置,按如下界面進(jìn)行配置,最后點(diǎn)擊,并點(diǎn)擊。 ...

    shiyang6017 評(píng)論0 收藏0
  • STM32入門(mén)學(xué)習(xí)經(jīng)驗(yàn)總結(jié)

    摘要:嚴(yán)格地說(shuō),應(yīng)該是模仿實(shí)驗(yàn)。為什么覺(jué)得無(wú)從下手,看資料沒(méi)有頭緒經(jīng)驗(yàn)總結(jié)看資料需要計(jì)劃耐心和速度這里所謂的資料包括書(shū)籍文檔。建議有報(bào)銷(xiāo)條件的同學(xué)自己設(shè)計(jì)一塊板子學(xué)習(xí)。無(wú)法報(bào)銷(xiāo)的同學(xué),可以選購(gòu)一款開(kāi)發(fā)板學(xué)習(xí)。 STM32系列基于專(zhuān)為要求高性能、低成本、低功耗的嵌入式應(yīng)用專(zhuān)門(mén)設(shè)計(jì)的ARMCortex...

    biaoxiaoduan 評(píng)論0 收藏0
  • 基于STM32平臺(tái)數(shù)字溫度顯示器系統(tǒng)設(shè)計(jì)

    摘要:帶中文字庫(kù)的是一種具有位位并行線或線串行多種接口方式,內(nèi)部含有國(guó)標(biāo)一級(jí)二級(jí)簡(jiǎn)體中文字庫(kù)的點(diǎn)陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標(biāo)準(zhǔn)的協(xié)議,完整的協(xié)議棧。以最低成本提供最大實(shí)用性,為功能嵌入其他系統(tǒng)提供無(wú)限可能。 項(xiàng)目簡(jiǎn)介 開(kāi)發(fā)環(huán)境: Keil5.14,CubeMX6.0.1,主...

    villainhr 評(píng)論0 收藏0
  • 單片機(jī)入門(mén)指南

    摘要:?jiǎn)纹瑱C(jī)入門(mén)指南本文基于常神文章基礎(chǔ)上將單片機(jī)入門(mén)部分進(jìn)行細(xì)化盡可能細(xì)節(jié)做到可實(shí)施性先引用一下常神的文章首先假設(shè)大家已經(jīng)對(duì)高中物理的電路部分有所了解。單片機(jī),如,是一種根據(jù)程序控制引腳高低電平的可編程器件,有些場(chǎng)合又將這種行為稱(chēng)作嵌入式。 ...

    nevermind 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

RancherLabs

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<