• 正文
  • 推薦器件
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

ELF 1技術(shù)貼 | 應(yīng)用層更改引腳復(fù)用的方法

2024/03/28
1373
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

嵌入式系統(tǒng)設(shè)計(jì)中,引腳復(fù)用功能通常是通過設(shè)備樹(Device Tree)預(yù)先配置設(shè)定的。出廠的設(shè)備樹中UART2_TX_DATA和UART2_RX_DATA兩個(gè)引腳被復(fù)用成了UART2功能,如果想要在不更換系統(tǒng)鏡像的情況下,將這兩個(gè)引腳的功能轉(zhuǎn)換為GPIO,并作為數(shù)字輸出(DO)引腳來控制高低電平信號,該如何實(shí)現(xiàn)呢?

下面我們將逐步解析如何在應(yīng)用層修改IOMUX復(fù)用寄存器,從而實(shí)現(xiàn)將上述兩個(gè)引腳重新復(fù)用為GPIO功能的操作。

在ElfBoard官方資料中的05-硬件資料5-2芯片數(shù)據(jù)手冊IMX6ULLARM手冊中找到這兩個(gè)引腳的MUX寄存器和PAD寄存器。UART2_TX_DATA和UART2_RX_DATA的MUX寄存器如下圖:

UART2_TX_DATA和UART2_RX_DATA的PAD寄存器如下圖:

可以直接使用memtool工具進(jìn)行修改。

鏈接:https://pan.baidu.com/s/10ixxhbwf4yGajS8SYUIATQ

提取碼:ju2x

(1)測試

在修改之前先進(jìn)行測試,直接在文件系統(tǒng)中,使用以下命令操作,通過萬用表測量發(fā)現(xiàn)不能成功輸出高低電平:

echo 20 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio20/direction
echo "1" > /sys/class/gpio/gpio20/value
echo "0" > /sys/class/gpio/gpio20/value

echo 21 > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio21/direction
echo "1" > /sys/class/gpio/gpio21/value
echo "0" > /sys/class/gpio/gpio21/value

(2)用memtool工具讀一下這兩個(gè)寄存器

因?yàn)檫@兩個(gè)寄存器是連續(xù)的,所以也可以使用這個(gè)命令直接讀兩個(gè)寄存器:

可以看出,這兩個(gè)MUX寄存器的值為0,以UART2_TX_DATA為例,通過下圖得知0表示復(fù)用成UART2功能:

同時(shí)也讀一下這兩個(gè)引腳的PAD寄存器:

可以看到讀出來的電氣參數(shù)跟設(shè)備樹中配置一致:

(3)現(xiàn)在使用memtool工具設(shè)置寄存器
設(shè)置這兩個(gè)引腳的MUX寄存器值為0x05,即復(fù)用成GPIO功能。

設(shè)置這兩個(gè)引腳的PAD寄存器值為0x10b0。

(4)測試驗(yàn)證

此時(shí),再去將這兩個(gè)引腳當(dāng)做GPIO去操作:

通過萬用表測量,能夠控制引腳高低電平的輸出。完成以上所有步驟后,即可實(shí)現(xiàn)應(yīng)用層對引腳復(fù)用功能的動(dòng)態(tài)調(diào)整。期待以上的指南能對各位小伙伴提供切實(shí)的幫助!

推薦器件

更多器件
器件型號 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊 ECAD模型 風(fēng)險(xiǎn)等級 參考價(jià)格 更多信息
HFBR-1412TZ 1 Foxconn Transmitter, 792nm Min, 865nm Max, 5Mbps, ST Connector, DIP, Panel Mount, Through Hole Mount, ROHS COMPLIANT PACKAGE
$24 查看
7M-12.000MAAJ-T 1 TXC Corporation Parallel - Fundamental Quartz Crystal, 12MHz Nom, ROHS COMPLIANT, SMD, 4 PIN

ECAD模型

下載ECAD模型
$0.86 查看
TLP185(GB,E(O 1 Toshiba America Electronic Components Optocoupler DC-IN 1-CH Transistor DC-OUT 4-Pin DIP SMD

ECAD模型

下載ECAD模型
$0.1 查看
飛凌嵌入式

飛凌嵌入式

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計(jì)和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團(tuán)隊(duì),在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務(wù)中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務(wù)網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應(yīng)用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機(jī)器人、環(huán)境監(jiān)測等諸多領(lǐng)域。

保定飛凌嵌入式技術(shù)有限公司,創(chuàng)建于2006年,是一家專注嵌入式核心控制系統(tǒng)研發(fā)、設(shè)計(jì)和生產(chǎn)的高新技術(shù)企業(yè),是國內(nèi)較早專業(yè)從事嵌入式技術(shù)的企業(yè)之一。 經(jīng)過十幾年的發(fā)展與積累,公司擁有業(yè)內(nèi)優(yōu)秀的軟硬件研發(fā)團(tuán)隊(duì),在北京及保定建立兩大研發(fā)基地,在蘇州、深圳設(shè)有華東、華南技術(shù)服務(wù)中心,并在北美、歐洲以及亞太等其他國家和地區(qū)擁有國際業(yè)務(wù)網(wǎng)絡(luò)。公司研發(fā)的智能設(shè)備核心平臺廣泛應(yīng)用于物聯(lián)網(wǎng)、工控、軌道交通、醫(yī)療、電力、商業(yè)電子、智能家居、安防、機(jī)器人、環(huán)境監(jiān)測等諸多領(lǐng)域。收起

查看更多

相關(guān)推薦