編寫mipsel mt7620 Led驅動(一)

2022-04-29 11:21:13 字數 1037 閱讀 1492

1.看原理圖中知晶元上66引腳控制乙個led

2.在datasheet中找出gpio pin

4.控制gpio的暫存器偏移位址是

,起始位址是

,但這個起始位址是實體地址,因此還要確定相應的虛擬位址(這個可以根據mips手冊或者核心源**去查到),本屌絲在核心源**中查詢到虛擬位址為:0xb0000000;(注下圖為核心源**rt_mmap.h中定義)

5.從分析

中知道此暫存器位址的每一位控制著不同的pin腳的gpio模式,那麼本屌絲又去檢視datasheet知:gpio#68(即68引腳)對應gpio控制暫存器的「rgmii2_gpio_mode」,如下圖:

,因此檢視」21. gpiomode: gpio purpose select (offset: 0x0060)「知道該暫存器位址的第10位控制著」rgmii2_gpio_mode」,如下圖:

從那麼有以上1~5這五能夠確定: 怎樣設定pin:68 gpio模式.

6.那麼怎麼把資料輸送到pin68引腳呢?檢視「programmingguid 中的programmable i/o」

:知pin68對應的暫存器基位址register descriptions (base: 0x1000_0600)對應虛擬位址為 #define ralink_pio_base         0xb0000600,偏移位址0x70

檢視此暫存器位址對應的各位知:共32位每一位分別對應40~71引腳,那麼68引腳對應(68-40)即28

7.分析知還需要設定68引腳的方向:

LED燈驅動的編寫

led燈驅動的編寫 一 原理圖 led2 gpx2 7 led3 gpx1 0 led4 gpf3 4 led5 gpf3 5 輸出 0滅 1亮 二 晶元手冊 gpx2con 0x11000c40 31 28 0x1 gpx2dat 0x11000c44 7 0 1 gpx1con 0x11000c...

十 編寫LED驅動程式

結合前面介紹的linux字元驅動編寫的流程 申請裝置號 裝置註冊 生成裝置節點 開始對led驅動進行編寫。編寫驅動的流程 檢視原理圖以及資料手冊 核心尋找相似驅動進行開發,有時從零開始 字元驅動編寫以及實現功能,方便呼叫 編譯核心或者insmod載入 測試驅動。檢視原理圖以及資料手冊 如下圖 從圖中...

乙個LED驅動的編寫

include include include include include include include include include include include define gpm4con 0x110002e0 volatile unsigned long baseaddr 0 位址...