????????實(shí)現(xiàn)效果將LDE2到LED5依次點(diǎn)亮再依次熄滅。點(diǎn)亮LED燈就像我們接觸編程語(yǔ)言的第一天輸出一個(gè)"hello world"一樣,這是一個(gè)最基礎(chǔ)的入門(mén)操作。這里我們以點(diǎn)亮LED2的過(guò)程進(jìn)行詳細(xì)講解,因其他LED燈的點(diǎn)亮過(guò)程都是一樣的,所以就不做一一介紹了。
1、首先第一步我們需要在開(kāi)發(fā)板上找到LDE燈的位置,再LED燈的旁邊會(huì)標(biāo)注有此硬件元件的名稱(chēng),圖中我們可以看出LED2的名稱(chēng)就叫LED2。
2、打開(kāi)LED2所在的開(kāi)發(fā)板手冊(cè)查詢LED2接到核心板的什么位置,肉眼查詢的化過(guò)于麻煩,所以我們可以直接對(duì)關(guān)鍵字LED2進(jìn)行搜索,搜索到的結(jié)果會(huì)以深色顯示,從LED2的位置順沿向左看,最左端的CHG_COK就是LED2在核心板上所接的管腳。
?3、通過(guò)CHG_COK查詢查詢相應(yīng)管腳的寄存器(LED的狀態(tài)都是通過(guò)操作相應(yīng)寄存器實(shí)現(xiàn)的),將CHG_COK復(fù)制下來(lái)打開(kāi)核心板手冊(cè),同樣進(jìn)行搜索操作。從CHG_COK順沿向左看就可以找到LED2所對(duì)應(yīng)的寄存器GPX2_7,此時(shí)的工作已經(jīng)完成一半了是不是覺(jué)得很簡(jiǎn)單。
?4、配置GPX2_7狀態(tài)寄存器,此時(shí)我們需要打開(kāi)用戶手冊(cè)對(duì)GPX2_7寄存器的相關(guān)信息進(jìn)行查詢,打開(kāi)用戶手冊(cè)直接搜索GPX2CON[7],以下就是GPX2_7寄存器的相應(yīng)信息。由下圖我們需要提取以下信息:基地址、偏移地址、負(fù)責(zé)相應(yīng)狀態(tài)的比特位。
基地址:Base Addrrss:0x110000
偏移地址:0x0c40
? ? ? ? 需要操作的地址=基地址+偏移地址,所以就是0x11000c40,負(fù)責(zé)相應(yīng)狀態(tài)的比特位的值:圖中顯示了該寄存器相應(yīng)的比特位是28到31位,在后面的Descriptiony一欄中是所需配置的狀態(tài),我們需要的是將寄存器配置為使出狀態(tài),所以將28到31比特位配置成0x2就行了。
?
?????????首先先將寄存器的28到31比特位清零LED2CON &(~(0xf<<28)),然后 |(0x1<<28)位將28到31位置為ox2。
?5、配置GPX2DAT數(shù)據(jù)寄存器為高電平。
????????對(duì)地址的操作同上,但是此時(shí)的問(wèn)題就是在不知道的前提下我們無(wú)法判斷是給寄存器的0到7為中的哪一位配置成高電平可以點(diǎn)亮LED燈,所以現(xiàn)在有兩種辦法解決:1.咨詢上游商家? 2.一位一位去測(cè)試。在這我們就不去測(cè)試了憑借經(jīng)驗(yàn)LED2需要將第7個(gè)比特位置為1就可以點(diǎn)亮,相反如果將其置為0就會(huì)熄滅,到此我們就完成了對(duì)LED2的點(diǎn)亮和關(guān)閉操作。
?5、其他燈的操作同理,整個(gè)代碼如下
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-409559.html
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-409559.html
到了這里,關(guān)于ARM入門(mén)(實(shí)現(xiàn)LED流水燈)超簡(jiǎn)單的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!