訂閱
糾錯(cuò)
加入自媒體

基于Cortex-A9 LED匯編、C語(yǔ)言驅(qū)動(dòng)編寫

ARM系列文章合集如下:

《從0學(xué)arm合集》

0. 前言

一般我們購(gòu)買一個(gè)開發(fā)板,廠家都會(huì)給出對(duì)應(yīng)的電路圖文件,我們可以通過(guò)搜索對(duì)應(yīng)名稱來(lái)查找到對(duì)應(yīng)的外設(shè)。對(duì)于驅(qū)動(dòng)工程師來(lái)說(shuō),我們只需要知道外設(shè)與SOC交互的一些數(shù)據(jù)線和信號(hào)線即可。

用主控芯片控制這些外設(shè)的一般步驟:

看電路原理圖,弄明白主控芯片和外設(shè)是怎么連接的,對(duì)于驅(qū)動(dòng)工程師來(lái)說(shuō),主要是看外設(shè)的一些clk、數(shù)據(jù)引腳、控制引腳是如何連接的;外設(shè)一般都會(huì)連接到SOC的1個(gè)或者多個(gè)控制器上,比如i2c、spi、gpio等,有的是數(shù)據(jù)線有的是信號(hào)線,中斷線等;根據(jù)電路連接和需求對(duì)主控芯片進(jìn)行設(shè)置,往往對(duì)外設(shè)的設(shè)置都是通過(guò)寄存器操作實(shí)現(xiàn);書寫相應(yīng)代碼,實(shí)現(xiàn)功能,不同類型的外設(shè),代碼結(jié)構(gòu)也不盡相同,比如按鍵,我們既可以通過(guò)輪詢方式讀取按鍵信息,也可以通過(guò)中斷方式來(lái)讀取。

下面我們就以華清遠(yuǎn)見的fs4412開發(fā)板為例來(lái)看如何編寫led的裸機(jī)程序。SOC exynos 4412 datahseet 下載地址:

https://download.csdn.net/download/daocaokafei/12533438

一、LED燈電路圖

首先看下led電路圖:

LED電路圖該板子有4個(gè)LED,是發(fā)光二極管,有電流是為藍(lán)色;led都接了上拉電阻;三極管的基極接了SOC的某個(gè)GPIO引腳;比如GPX1_0,當(dāng)該引腳為高電平是,三極管pn結(jié)導(dǎo)通,于是LED3兩側(cè)就有了電勢(shì)差,LED3被點(diǎn)亮,如果該引腳為低電平,pn結(jié)截止,LED3兩側(cè)就沒有了電勢(shì)差,LED3熄滅。

下面是CPU核訪問GPIO控制器的數(shù)據(jù)通路:

AHB:高速總線APB Bridge:APB總線橋APB:外設(shè)總線,低速總線GPIO掛載在APB總線上

GPIO 與 SOC

由上圖可知,cpu要訪問GPIO的寄存器需要經(jīng)過(guò)的路徑。

1  2  3  4  下一頁(yè)>  
聲明: 本文由入駐維科號(hào)的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場(chǎng)。如有侵權(quán)或其他問題,請(qǐng)聯(lián)系舉報(bào)。

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

0條評(píng)論,0人參與

請(qǐng)輸入評(píng)論內(nèi)容...

請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字

您提交的評(píng)論過(guò)于頻繁,請(qǐng)輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無(wú)評(píng)論

暫無(wú)評(píng)論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號(hào)
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯(cuò)
x
*文字標(biāo)題:
*糾錯(cuò)內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號(hào)