設(shè)備和CPU連接方式
1)gpio連接設(shè)備 (LED按鍵)
2)ram-like 會(huì)使用到數(shù)據(jù)線,地址線,控制線
nand DDRAM DM9000
3)協(xié)議類型接口
i2c spi usb uart
按照總線設(shè)備來完成AT24C02的驅(qū)動(dòng)程序
1,總線i2c 總線也是設(shè)備 該設(shè)備也應(yīng)該實(shí)現(xiàn)驅(qū)動(dòng)程序 ,該驅(qū)動(dòng)程序完成的功能就是按照 i2c協(xié)議的要求收發(fā)數(shù)據(jù)i2c_transfer(...)??
i2c驅(qū)動(dòng)怎么寫的也就是怎么實(shí)現(xiàn)的?。┱业絠2c控制器的驅(qū)動(dòng)程序
make menuconfig 路徑是driver/i2c/busses/ 變量:CONFIG XX XXXX 在Makefile中找變量在找.o然后對(duì)應(yīng)他的.c文件 通過程序可看出i2c控制器(總線)是通過platform虛擬總線寫的, 在找下自己寫的i2c設(shè)備驅(qū)動(dòng)的調(diào)用會(huì)用到它么?如i2c_transfer中怎么用msg的
在函數(shù)中只有return=adap->algo->master_xfer(adap,msgs,num) 能發(fā)現(xiàn)它是s3c24xx_i2c_algorithm中的成員 .masrter_xfer = s324xx_i2c_xfer, 又因i2c->adap.algo = &s3c24xx_i2c_algorithm,可以懷疑以前我們找出來的是正確的,其中一個(gè)方法可以改改我們找到那個(gè).c文件中的該函數(shù)中加點(diǎn)打印信息即可驗(yàn)證他是否我們的猜想一致。這樣找到了CPU中i2c控制器的驅(qū)動(dòng)程序:i2c_s3c2410.c
2.設(shè)備
在2.6.35內(nèi)核中實(shí)例化i2c的設(shè)備有4種方式 i2c_new_device???
設(shè)備怎么添加進(jìn)去的?
i2cclient怎么來的?
首先定義了下上次我們說的數(shù)組之后注冊(cè)了下i2c_register_board_info內(nèi)核怎么自動(dòng)給我們添加i2c_client? 在2c_register_board_info中他放在devinfo->bard_info = *info然后
list_add_tail(....&__i2c_board_list); 真正使用這鏈表的只有i2c_scan_static_board_info(。。)在干嘛呢??list_for_each_entry取出鏈表中的元素在i2c_new_device
哪塊會(huì)調(diào)用2c_scan_static_board_info i2x_register_adapter調(diào)用它了,這個(gè)函數(shù)是實(shí)例化,哪里會(huì)使用它?i2c_add_numbered_adapter
內(nèi)核中實(shí)現(xiàn)i2c控制器驅(qū)動(dòng),想內(nèi)核中注冊(cè)了ada_
內(nèi)核中注冊(cè)adapter時(shí),同時(shí)完成掃描靜態(tài)鏈表,看是否有設(shè)備掛在該adapter(i2c控制器)上,如果存在的話,會(huì)根據(jù)該設(shè)備的信息(“at24c02”,0x50)來完成i2c_client的實(shí)例化并注冊(cè),
3.設(shè)備驅(qū)動(dòng)(略)
如果我們自己寫怎么寫這個(gè)控制器??1)看CPU的芯片手冊(cè)的i2c的章節(jié) 怎么操作I2CCON,I2CDAT,I2CDS寄存器
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)頁(yè)題目:i2c驅(qū)動(dòng)(二)core分析-創(chuàng)新互聯(lián)
文章分享:http://chinadenli.net/article44/dgjhee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、微信公眾號(hào)、電子商務(wù)、小程序開發(fā)、網(wǎng)站內(nèi)鏈、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容