国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

RK3399之預(yù)留I2C4引腳接口

發(fā)布時(shí)間:2022-7-22 16:37    發(fā)布者:繁花之語
關(guān)鍵詞: 嵌入式 , 單片機(jī) , ARM
小編將通過本篇文章為大家列舉和說明如何使用I2C4掛載at24c08(EEPROM)芯片。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




修改結(jié)果

1、修改kernel/arch/arm64/boot/dts/rockchip/OK3399.dts,添加修改如下:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




2、摘除at24c08模塊上的上拉電阻,飛線使用1.8V給模塊供電,接入I2C4_SCL和I2C4_SDA。




修改思路

我們要添加一個(gè)I2C設(shè)備的思路為:在設(shè)備樹中添加描述->在設(shè)備樹描述中添加對應(yīng)設(shè)備驅(qū)動->設(shè)備驅(qū)動添加到內(nèi)核




按照思路,首先要在設(shè)備樹I2C4節(jié)點(diǎn)下添加at24c08的設(shè)備信息。在kernel/arch/arm64/boot/dts/rockchip/OK3399-C.dts文件,找到I2C4節(jié)點(diǎn)如下:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




目前是disabled的狀態(tài),并且沒有任何設(shè)備信息。添加設(shè)備信息如下:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




如上圖,通過設(shè)備樹告訴內(nèi)核,I2C4開始使用,并且掛載了一個(gè)EEPROM設(shè)備,名字叫at24c08@50,其使用的驅(qū)動是compatible=“”;




那么我們現(xiàn)在缺少這個(gè)驅(qū)動,一般的I2C設(shè)備所使用的驅(qū)動文件對應(yīng)的I2C廠家會提供,如果廠家說不需要驅(qū)動等,其實(shí)不是指的真的“不需要”驅(qū)動,而是他們的設(shè)備是可以使用通用驅(qū)動的。




本文中的設(shè)備就是這樣,與廠家溝通后表示沒有驅(qū)動文件。那么直接在內(nèi)核目錄下查找eeprom、at24這樣的字眼,找找看有沒有對應(yīng)的通用驅(qū)動文件。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




可見有kernel/drivers/misc/eeprom/at24.c文件。




查看其內(nèi)容是如何匹配使用這個(gè)驅(qū)動的,正常來說驅(qū)動文件中應(yīng)該預(yù)留了.compatible= *** 作為設(shè)備樹調(diào)用該驅(qū)動的接口,只要在設(shè)備樹描述里的compatible與 驅(qū)動文件中的.compatible中描述的一致,就會匹配成功了。




但是這個(gè)at24.c中并沒有.compatible,只有一個(gè)at24_ids如下其中有”24c08”:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




對比同目錄的at25.c文件就有.compatible沒有ids。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




ids中描述的也是和.compatible一樣,是設(shè)備樹用來識別匹配使用的,其中的三種識別匹配條件感興趣的可以深追一下。因與本文無關(guān),不再贅述。所以找到了對應(yīng)的驅(qū)動文件,返回設(shè)備樹添加描述。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




現(xiàn)在這樣是告訴了內(nèi)核我要使用I2C4,我的I2C4下有個(gè)EEPROM設(shè)備,使用的是“24c08”驅(qū)動,但是還沒有將”24c08”這個(gè)文件給到內(nèi)核,那么接下來的目的就是把驅(qū)動編進(jìn)內(nèi)核。




在kernel目錄下運(yùn)行makemenuconfig,搜索at24,如下:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




按下數(shù)字1,自動跳轉(zhuǎn)到對應(yīng)選項(xiàng),按下y選中,保存退出。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




因?yàn)閙akemenuconfig修改的是.config文件,而編譯腳本中每次都會重新生成.config文件,所以為了讓修改生效,修改編譯腳本,使其不重新生成.config文件,如下:






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




將生成.config文件的命令注釋掉,編譯內(nèi)核,這樣就將”24c08”給到內(nèi)核,也通過設(shè)備樹告訴內(nèi)核,I2C4下有個(gè)EEPROM設(shè)備要用“24c08”。




到此,我們的常規(guī)添加設(shè)備思路就已經(jīng)完成了:在設(shè)備樹中添加描述->設(shè)備樹描述對應(yīng)設(shè)備驅(qū)動->設(shè)備驅(qū)動添加到內(nèi)核




接下來就是編譯內(nèi)核,燒寫boot鏡像到開發(fā)板,使用i2ctool的命令進(jìn)行查看,這里也不贅述i2ctool命令的具體使用方法。使用命令:i2cdetect-l 、i2cdetect-y 4。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




對應(yīng)的地址已經(jīng)被驅(qū)動注冊,但是沒有生成devices下的I2C4設(shè)備,說明模塊可能沒有正常工作,查看模塊相關(guān)信息。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)









[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)









[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




模塊自帶I2C4上拉電阻,因?yàn)镺K3399-C底板上也帶有上拉電阻如下圖,并且是1.8V上拉,為了電平匹配,不修改底板的狀態(tài)下,使用1.8V為基準(zhǔn),將模塊帶有的上拉電阻摘除,使用1.8V配置。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




再次修改設(shè)備樹,添加上時(shí)鐘描述和設(shè)備地址描述。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




編譯后,燒寫內(nèi)核,燒寫完畢啟動開發(fā)板。






[backcolor=rgba(18, 18, 18, 0.5)]​




編輯




添加圖片注釋,不超過 140 字(可選)




識別到I2C4下的設(shè)備,然后進(jìn)行讀寫測試即可,如下命令:

echo"hello my world" > /sys/bus/i2c/devices/1-0050/eepromcat/sys/bus/i2c/devices/4-0050/eeprom





[backcolor=rgba(18, 18, 18, 0.5)]​




編輯切換為居中




添加圖片注釋,不超過 140 字(可選)




至此一個(gè)新的I2C EEPROM設(shè)備添加成功,對I2C設(shè)備的讀寫操作也可以通過開發(fā)板中帶有的i2ctool相關(guān)命令操作。https://forlinx.com/


本文地址:http://m.qingdxww.cn/thread-796625-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 利用SAM E54 Xplained Pro評估工具包演示CAN轉(zhuǎn)USB橋接器以及基于CAN的主機(jī)和自舉程序應(yīng)用程序
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产免费小视频在线观看 | 在线观看男女男免费视频 | 国产三级小视频在线观看 | 亚洲一区免费视频 | 久青草香蕉精品视频在线 | 日韩视频精品 | 亚洲精品欧美日韩 | 岛国视频在线 | 在线观看国产剧情麻豆精品 | 视频一区 中文字幕 | 日产精品一卡2卡三卡4卡乱码 | 侠盗高飞在线观看免费完整版 | 中文字幕在线视频播放 | 色一区二区 | 妇乱子伦激情 | 婷婷成人亚洲 | 中文字幕天堂久久精品 | 青青草网站在线观看 | 一级毛片免费毛片一级毛片免费 | 日韩欧美视频在线一区二区 | 国产亚洲欧美一区 | 亚洲国产日韩a在线亚洲 | 99久久精品费精品国产一区二区 | 国产福利在线高清导航大全 | 一二三区在线观看 | 免费在线观看黄色的网站 | 花季传媒免费 | 国产精品9999久久久久 | 精品123区 | 免看一级a毛片一片成人不卡 | 日本高清在线观看视频www | 国产一级做a爰片久久毛片男 | 九九精品在线观看 | 久久亚洲精中文字幕冲田杏梨 | 色噜噜噜噜噜 | 日韩黄a级成人毛片 | 久久久久久久一精品 | 在线亚洲日产一区二区 | 青草娱乐极品免费视频 | 这里只有精品免费视频 | 国产在线观看青草视频 |