<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于Linux的MISC類設(shè)備AD7859L的驅(qū)動(dòng)程序開發(fā)

          基于Linux的MISC類設(shè)備AD7859L的驅(qū)動(dòng)程序開發(fā)

          作者: 時(shí)間:2010-11-02 來源:網(wǎng)絡(luò) 收藏

            1 引言

          本文引用地址:http://www.ex-cimer.com/article/151386.htm

            在嵌入式系統(tǒng)中ARM微核的嵌入式處理器已經(jīng)成為市場(chǎng)主流。隨著ARM技術(shù)的廣泛應(yīng)用,建立面向ARM構(gòu)架的嵌入式操作系統(tǒng)成為測(cè)量行業(yè)的熱點(diǎn)問題。在LINUX操作系統(tǒng)中添加新的外部時(shí),只需為其添加對(duì)應(yīng)的程序即可。介紹另一種程序的編寫方式,即采用。其實(shí)質(zhì)也是一個(gè)字符。可將用戶各種不同的設(shè)備類型合成到一種類型中,共用一個(gè)主設(shè)備號(hào),通過不同的次設(shè)備號(hào)和設(shè)備節(jié)點(diǎn)名來區(qū)分??煞奖愎芾磉@些驅(qū)動(dòng)模塊。字符型的驅(qū)動(dòng)設(shè)備模塊在掛載時(shí)都要分配主設(shè)備號(hào)、次設(shè)備號(hào)和創(chuàng)建設(shè)備節(jié)點(diǎn)名,在卸載驅(qū)動(dòng)設(shè)備時(shí)還必須同時(shí)刪掉設(shè)備節(jié)點(diǎn)名。通過采用類設(shè)備,在掛載設(shè)備驅(qū)動(dòng)時(shí)無(wú)須再用到mknod命令分配主設(shè)備號(hào)、次設(shè)備號(hào)和創(chuàng)建設(shè)備節(jié)點(diǎn)名,在insmodl掛載之后,只須mdev—s就能自動(dòng)裝配/dev目錄下的設(shè)備文件。

            2 的引腳功能描述和寄存器

            的引腳功能描述如表1所示。

            

          AD7859L的引腳功能描述 www.elecfans.com


            包含一個(gè)控制寄存器,A/D轉(zhuǎn)換輸出寄存器,狀態(tài)寄存器,測(cè)試寄存器和10位校正寄存器。控制寄存器只能寫入,A/D轉(zhuǎn)換輸出寄存器和狀態(tài)寄存器只能讀取,測(cè)試寄存器和校正寄存器是可讀可寫的。

            向AD7859L寫入數(shù)據(jù)時(shí),數(shù)據(jù)寬度必須是16位。16位數(shù)據(jù)寫入AD7859L時(shí),既可作為一個(gè)16位字,也可作為2個(gè)8位字節(jié),取決于引腳W/B上的邏輯電平。當(dāng)W/B接高電平時(shí),16位數(shù)據(jù)從DB0傳輸?shù)紻Bl5,DB0為最低位,DBl5為最高位。當(dāng)W/B接低電平時(shí),引腳DB8/HBEN作為高字節(jié)使能,2個(gè)8位字節(jié)的數(shù)據(jù)從DB0傳輸?shù)紻B7,DB0為最低位,DB7為最高位。當(dāng)以2個(gè)8位字節(jié)寫入數(shù)據(jù)時(shí),必須先寫低字節(jié),再寫高字節(jié)。16位數(shù)據(jù)的最高2位ADDRl、ADDR0,通過編碼決定訪問哪一個(gè)寄存器,后面的14位數(shù)據(jù)寫入該寄存器。表2為編碼分布。

            讀寄存器時(shí)必須先設(shè)置控制寄存器的DB6和DB7位,即RDSLTO和RDSLTl。這2位通過編碼決定訪問哪一個(gè)寄存器。上電時(shí)這2位初始值是00,因此讀取操作訪問的寄存器是A/D轉(zhuǎn)換輸出寄存器。同寫寄存器一樣,字模式或者字節(jié)模式均可以。當(dāng)以字節(jié)模式讀校正寄存器時(shí),必須先讀低字節(jié)。

            3 AD7859L驅(qū)動(dòng)程序

            操作系統(tǒng)一般提供設(shè)備驅(qū)動(dòng)程序完成對(duì)特定硬件的控制,以建立應(yīng)用程序和設(shè)備之間的抽象接口,而不是應(yīng)用程序直接操作硬件。設(shè)備驅(qū)動(dòng)程序?qū)嶋H上是操作硬件的軟件,是內(nèi)核中具有最高特權(quán)級(jí)的、駐留內(nèi)存的、可共享的底層硬件處理例程。

            采用類設(shè)備來添加AD7859L驅(qū)動(dòng)。AD7859L的結(jié)構(gòu)體定義語(yǔ)句如下:

            

          AD7859L的結(jié)構(gòu)體定義語(yǔ)句 www.elecfans.com linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          上一頁(yè) 1 2 3 4 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();