GPIO接口的讀操作_第1頁(yè)
GPIO接口的讀操作_第2頁(yè)
GPIO接口的讀操作_第3頁(yè)
GPIO接口的讀操作_第4頁(yè)
GPIO接口的讀操作_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

嵌入式技術(shù)應(yīng)用GPIO接口的讀操作模塊三:嵌入式網(wǎng)關(guān)之驅(qū)動(dòng)程序編寫學(xué)習(xí)目標(biāo)一、編寫gpioread_driver驅(qū)動(dòng)程序二、編寫gpioread_test測(cè)試程序三、測(cè)試程序和驅(qū)動(dòng)程序gpioread的Makefile四、測(cè)試程序和驅(qū)動(dòng)程序gpioread的使用一、編寫gpioread_driver驅(qū)動(dòng)程序1.1GPIO口讀操作

GPIO口的讀取是讀取了相應(yīng)管腳在相應(yīng)位上的數(shù)據(jù),比如要讀取GPG14引腳的高電平狀態(tài),使用如下語(yǔ)句。

讀取到的數(shù)用二進(jìn)制表示就是0100000000000000,也就是第14位為1,其它位為0,用十六進(jìn)制表示,讀到的數(shù)據(jù)為0x4000,而不是1。1.2

gpioread_driver.c源碼分析

見(jiàn)gpioread_driver.c,可以使用gedit打開(kāi)。下面我們來(lái)看看有關(guān)GPIOs3c2410_gpio_getpin(S3C2410_GPG14);口讀取操作的語(yǔ)句。二、編寫gpioread_test測(cè)試程序見(jiàn)gpioread_test.c,可以使用gedit打開(kāi)。gpioread_test測(cè)試程序的staticssize_tdemo_read(structfile*filp,char*buffer,size_tcount,loff_t*ppos){intresult=0;//用于存放GPG14口讀到的電平狀態(tài)//讀取GPG14口的電平狀態(tài)

result=s3c2410_gpio_getpin(S3C2410_GPG14);//將GPG14口讀到的數(shù)返回給應(yīng)用程序

copy_to_user(buffer,&result,2);

return2;//返回讀取的字節(jié)數(shù)2}核心語(yǔ)句如下所示。intmain(){intfd;intresult;

fd=open("/dev/gpioread_driver",O_RDWR);if(fd<0){//如果打開(kāi)設(shè)備文件失敗,打印出失敗信息

printf("/dev/gpioread_driveropenfail!\n");return-1;}

read(fd,&result,2);//調(diào)用驅(qū)動(dòng)里的read()函數(shù)

printf("Resultis0x%x!\n",result);三、測(cè)試程序和驅(qū)動(dòng)程序gpioread的Makefile

見(jiàn)Makefile,可以使用gedit打開(kāi)。四、測(cè)試程序和驅(qū)動(dòng)程序gpioread的使用4.1編譯驅(qū)動(dòng)和測(cè)試程序4.2下載驅(qū)動(dòng)和測(cè)試程序使用SecureCRT或Minicom下載,詳見(jiàn)前面下載驅(qū)動(dòng)的內(nèi)容。

close(fd);//關(guān)閉設(shè)備文件

return0;}#make4.3加載驅(qū)動(dòng)和添加設(shè)備節(jié)點(diǎn)用insmod加載驅(qū)動(dòng)時(shí)顯示:其中252是系統(tǒng)為gpioread_driver驅(qū)動(dòng)分配的主設(shè)備號(hào)。再使用mknod為gpioread_driver驅(qū)動(dòng)添加設(shè)備節(jié)點(diǎn),而其中252和0分別為gpioread_driver設(shè)備節(jié)點(diǎn)的主設(shè)備號(hào)和次設(shè)備號(hào)。這時(shí)輸入ls/dev命令便可看到gpioread_driver設(shè)備節(jié)點(diǎn)。4.4運(yùn)行測(cè)試程序/dev/gpioread_driver252#mknod/dev/gpioread_drive

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論