如果linux中已經(jīng)提供了驅(qū)動(dòng),并且在/dev/目錄下已經(jīng)提供了相應(yīng)的設(shè)備文件節(jié)點(diǎn)。那么可以和串口一樣直接打開設(shè)置讀寫。如果內(nèi)核中有驅(qū)動(dòng),但是沒有生成設(shè)備文件節(jié)點(diǎn),那么只要知道設(shè)備的主次設(shè)備號(hào),可以使用mknode建立設(shè)備文件節(jié)點(diǎn),然后直接來使用。如果沒有驅(qū)動(dòng)就需要自己添加設(shè)備驅(qū)動(dòng)了。這個(gè)也分兩種情況,看你外設(shè)怎么和你的板子連接的。如果接到板子上的spi控制器上,可以直接編寫通過控制器來控制外設(shè)的驅(qū)動(dòng),這種情況一般生產(chǎn)主控芯片的廠家都已經(jīng)提供了驅(qū)動(dòng)。如果沒有接到spi控制器上,而是通過gpio連接的外設(shè),你編寫的驅(qū)動(dòng)就需要自己來模擬spi協(xié)議來控制外設(shè)。
桐鄉(xiāng)網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站從2013年開始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
系統(tǒng)不適配。Linux,全稱GNULinux,是一種免費(fèi)使用和自由傳播的類UNIX操作系統(tǒng)。Linux不支持SPIflash命令執(zhí)行,系統(tǒng)不適配,需要在SPIflash上啟動(dòng)系統(tǒng),需要對Uboot和系統(tǒng)鏡像做些適配,在linux啟動(dòng)腳本里掛載spiflash分區(qū),進(jìn)行測試。
內(nèi)核版本2.6.30。編進(jìn)內(nèi)核的SPI驅(qū)動(dòng),通過看代碼我明白了,大致過程是這樣:
1、先創(chuàng)建一個(gè)spi_board_info結(jié)構(gòu)描述spi設(shè)備信息,調(diào)用spi_register_board_info將這個(gè)結(jié)構(gòu)添加到board_list中。
2、然后調(diào)用spi_register_master注冊SPI控制器驅(qū)動(dòng),此時(shí)會(huì)調(diào)用scan_boardinfo掃描board_list,根據(jù)spi_board_info調(diào)用spi_new_device生成spi_device結(jié)構(gòu),用spi_add_device添加設(shè)備。
3、調(diào)用spi_register_driver注冊spi_driver,通過與device匹配驅(qū)動(dòng)設(shè)備。
網(wǎng)站欄目:linux+spi+命令 spin函數(shù) linux
網(wǎng)站地址:http://vcdvsql.cn/article18/hpgddp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、、企業(yè)網(wǎng)站制作、標(biāo)簽優(yōu)化、靜態(tài)網(wǎng)站、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)