国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn))

這篇具有很好參考價(jià)值的文章主要介紹了DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn))。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

1.匯編實(shí)現(xiàn)開(kāi)發(fā)板三盞燈點(diǎn)亮熄滅;

框圖分析:

DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn)),ARM,arm開(kāi)發(fā)


.text 
.global _start
_start: 
	/**********LED123點(diǎn)燈**************/

RCC_INIT:
	@1使能PE10 PF10 PE8
	@RCC..寄存器,E[4]=1 F[5]=1 0x50000a28
	ldr r0,=0x50000a28
	ldr r1,[r0]
	orr r1,r1,#(0x3 << 4)
	str r1,[r0]

LED1_INET:
	@2初始化LED1,PE10
	@a設(shè)置輸出模式 
	@GPIOx_moder寄存器 0x50006000 [21:20]=01
	ldr r0,=0x50006000
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	orr r1,r1,#(0x1 << 20)
	str r1,[r0]
	
	@b設(shè)置推挽輸出類型
	@GPIOx_OTYPER寄存器 0x50006004 [10]=0
	ldr r0,=0x50006004
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 10)
	str r1,[r0]
	
	@c設(shè)置輸出速率,低速
	@GPIOx_OSPEEDR寄存器 0x50006008 [21:20]=00 
	ldr r0,=0x50006008
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	str r1,[r0]
	
	@d設(shè)置禁止拉電阻
	@GPIOx_PUPDR寄存器 0x5000600c [21:20]=00
	ldr r0,=0x5000600c
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	str r1,[r0]
	
	@3初始化LED2 PF10
	@a設(shè)置輸出模式 
	@GPIOx_moder寄存器 0x50007000 [21:20]=01
	ldr r0,=0x50007000
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	orr r1,r1,#(0x1 << 20)
	str r1,[r0]
	
	@b設(shè)置推挽輸出類型
	@GPIOx_OTYPER寄存器 0x50007004 [10]=0
	ldr r0,=0x50007004
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 10)
	str r1,[r0]
	
	@c設(shè)置輸出速率,低速
	@GPIOx_OSPEEDR寄存器 0x50007008 [21:20]=00 
	ldr r0,=0x50007008
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	str r1,[r0]
	
	@d設(shè)置禁止拉電阻
	@GPIOx_PUPDR寄存器 0x5000700c [21:20]=00
	ldr r0,=0x5000700c
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 20)
	str r1,[r0]

	@4初始化LED3 PE8
	@a設(shè)置輸出模式 
	@GPIOx_moder寄存器 0x50006000 [17:16]=01
	ldr r0,=0x50006000
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 16)
	orr r1,r1,#(0x1 << 16)
	str r1,[r0]
	
	@b設(shè)置推挽輸出類型
	@GPIOx_OTYPER寄存器 0x50006004 [8]=0
	ldr r0,=0x50006004
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 8)
	str r1,[r0]
	
	@c設(shè)置輸出速率,低速
	@GPIOx_OSPEEDR寄存器 0x50006008 [17:16]=00 
	ldr r0,=0x50006008
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 16)
	str r1,[r0]
	
	@d設(shè)置禁止拉電阻
	@GPIOx_PUPDR寄存器 0x5000600c [17:16]=00
	ldr r0,=0x5000600c
	ldr r1,[r0]
	bic r1,r1,#(0x3 << 16)
	str r1,[r0]

loop:
	bl LED1_ON
	bl delay_1s
	bl LED2_ON
	bl delay_1s
	bl LED3_ON
	bl delay_1s

	bl LED1_OFF
	bl delay_1s
	bl LED2_OFF
	bl delay_1s
	bl LED3_OFF
	bl delay_1s
	b loop

LED1_ON:
	@5LED1點(diǎn)燈 PE10
	@設(shè)置引腳輸出高電平
	@GPIOx_ODR寄存器 0x50006014 [10]=1
	ldr r0,=0x50006014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc,lr
	
LED2_ON:
	@6LED2點(diǎn)燈 PF10
	@設(shè)置引腳輸出高電平
	@GPIOx_ODR寄存器 0x50007014 [10]=1
	ldr r0,=0x50007014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc,lr

LED3_ON:
	@7LED3點(diǎn)燈 PE8
	@設(shè)置引腳輸出高電平
	@GPIOx_ODR寄存器 0x50006014 [8]=1
	ldr r0,=0x50006014
	ldr r1,[r0]
	orr r1,r1,#(0x1 << 8)
	str r1,[r0]
	mov pc,lr

LED1_OFF:
	@8LED1關(guān)燈 PE8
	@設(shè)置引腳輸出低電平
	@GPIOx_ODR寄存器 0x50006014 [10]=0
	ldr r0,=0x50006014
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc,lr

LED2_OFF:
	@9LED2關(guān)燈 PF10
	@設(shè)置引腳輸出低電平
	@GPIOx_ODR寄存器 0x50007014 [10]=0
	ldr r0,=0x50007014
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 10)
	str r1,[r0]
	mov pc,lr

LED3_OFF:
	@10LED3關(guān)燈 PE8
	@設(shè)置引腳輸出低電平
	@GPIOx_ODR寄存器 0x50006014 [8]=0
	ldr r0,=0x50006014
	ldr r1,[r0]
	bic r1,r1,#(0x1 << 8)
	str r1,[r0]
	mov pc,lr
	
@ 大概1s的延時(shí)函數(shù)
delay_1s:
	mov r3, #0x10000000
	mm:
	cmp r3, #0
	subne r3, r3, #1
	bne mm
	mov pc, lr

.end
結(jié)果:(我的板LD1壞了,所以不亮)?

DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn)),ARM,arm開(kāi)發(fā)

2.今日思維導(dǎo)圖;

DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn)),ARM,arm開(kāi)發(fā)文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-653157.html

到了這里,關(guān)于DAY3,ARM(LED點(diǎn)燈實(shí)驗(yàn))的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ARM day2、day3 匯編

    ARM day2、day3 匯編

    @ 注釋 # 注釋(放在行首表示注釋一行) /*? ? */ 注釋 #+數(shù)字 立即數(shù) : 一種標(biāo)號(hào)(比如main:? ? ? ? loop:) .text? ? ? ? .end+換行 固定格式 ARM指令構(gòu)成 ARM 指令包含操作碼和一些其他的信息,只剩下8 位存放數(shù)據(jù) 具體來(lái)說(shuō),一個(gè) ARM 指令通常由以下部分組成: 操作碼(Opcode)

    2024年01月19日
    瀏覽(25)
  • day3 ARM寄存器組織

    day3 ARM寄存器組織

    目錄 寄存器 ?ARM寄存器 專用寄存器 CPSR寄存器 概念: 寄存器是處理器內(nèi)部的存儲(chǔ)器,沒(méi)有地址; 作用: 一般用于暫時(shí)存放參與運(yùn)算的數(shù)據(jù)和運(yùn)算結(jié)果; 分類: 包括通用寄存器、專用寄存器、控制寄存器; ? 注:在某個(gè)特定模式下只能使用當(dāng)前模式下寄存器,一個(gè)模式下

    2024年02月08日
    瀏覽(28)
  • ARM--day7(cortex_M4核LED實(shí)驗(yàn)流程、異常源、異常處理模式、異常向量表、異常處理流程、軟中斷編程、cortex_A7核中斷實(shí)驗(yàn))
  • ARM day9 (按鍵中斷控制led亮滅)

    ARM day9 (按鍵中斷控制led亮滅)

    ?保存現(xiàn)場(chǎng) 異常的處理流程,保存現(xiàn)場(chǎng)會(huì)做哪些事情(四大步三小步) ----CPU自動(dòng)完成 1.保存CPSR寄存器中的值,到SPSR_mode寄存器中 2.修改CPSR寄存器對(duì)應(yīng)的位 ????????1修改CPSR寄存器對(duì)應(yīng)的狀態(tài)位(T位) ????????2根據(jù)需要,禁止相應(yīng)中斷位(I位 / F位) ????????3修改CPSR寄存

    2024年02月13日
    瀏覽(23)
  • 【arm實(shí)驗(yàn)1】GPIO實(shí)驗(yàn)-LED燈的流水亮滅
  • ARM day8 key1/2/3&led

    ARM day8 key1/2/3&led

    key_led.h key_led.c main.c do_irq.c ?

    2024年02月15日
    瀏覽(17)
  • 驅(qū)動(dòng)開(kāi)發(fā) day3 (模塊化驅(qū)動(dòng)啟動(dòng)led,蜂鳴器,風(fēng)扇,震動(dòng)馬達(dá))

    驅(qū)動(dòng)開(kāi)發(fā) day3 (模塊化驅(qū)動(dòng)啟動(dòng)led,蜂鳴器,風(fēng)扇,震動(dòng)馬達(dá))

    模塊化驅(qū)動(dòng)啟動(dòng)led,蜂鳴器,風(fēng)扇,震動(dòng)馬達(dá)并加上Makefile 封裝模塊化驅(qū)動(dòng),可自由安裝卸載驅(qū)動(dòng),便于驅(qū)動(dòng)更新(附圖) 1.安裝模塊驅(qū)動(dòng)同時(shí)初始化各個(gè)設(shè)備并使能 2.該驅(qū)動(dòng)會(huì)自動(dòng)創(chuàng)建驅(qū)動(dòng)節(jié)點(diǎn). 3.通過(guò)c函數(shù)程序輸入控制各個(gè)設(shè)備 4.卸載模塊驅(qū)動(dòng) //編譯驅(qū)動(dòng)(注意Makefile的編譯到移植

    2024年02月16日
    瀏覽(24)
  • arm點(diǎn)燈

    arm點(diǎn)燈

    2. ?

    2024年02月16日
    瀏覽(17)
  • ARM架構(gòu)(寄存器點(diǎn)燈)

    ARM架構(gòu)(寄存器點(diǎn)燈)

    本篇文章我們來(lái)講解一下如何使用寄存器點(diǎn)亮一個(gè)LED燈,一般對(duì)于新人來(lái)說(shuō)都是使用HAL庫(kù)或者標(biāo)準(zhǔn)庫(kù)來(lái)操作的,但是學(xué)習(xí)寄存器有助于我們了解更加深入的知識(shí),這加會(huì)提高我們對(duì)ARM架構(gòu)的理解。 首先第一步我們需要先找到LED的原理圖,確定對(duì)應(yīng)的引腳,然后知道是高電平點(diǎn)

    2024年02月15日
    瀏覽(27)
  • 【理解ARM架構(gòu)】不同方式點(diǎn)燈 | ARM架構(gòu)簡(jiǎn)介 | 常見(jiàn)匯編指令 | C與匯編

    【理解ARM架構(gòu)】不同方式點(diǎn)燈 | ARM架構(gòu)簡(jiǎn)介 | 常見(jiàn)匯編指令 | C與匯編

    ??作者:一只大喵咪1201 ??專欄:《理解ARM架構(gòu)》 ??格言: 你只管努力,剩下的交給時(shí)間! 在學(xué)習(xí)C語(yǔ)言的時(shí)候,我們會(huì)寫個(gè) Hello World 程序來(lái)入門,當(dāng)我們寫ARM程序,也該有一個(gè)簡(jiǎn)單的程序引領(lǐng)我們?nèi)腴T,這個(gè)程序就是點(diǎn)亮LED。 查看原理圖,確定控制LED的引腳: 如上圖是

    2024年02月05日
    瀏覽(17)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包