0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

英創(chuàng)信息技術EM9280 Linux下AD驅動的應用介紹

英創(chuàng)信息技術 ? 來源:英創(chuàng)信息技術 ? 作者:英創(chuàng)信息技術 ? 2020-01-16 09:32 ? 次閱讀

1、Linux驅動程序調用方法概述

在Linux環(huán)境中,通過驅動程序來操作相應硬件接口,對于應用程序來說就是打開特定文件名稱的文件,然后通過常規(guī)的對文件讀寫或控制的方法,來實現(xiàn)對硬件接口的訪問。在嵌入式系統(tǒng)中,對硬件的讀寫通常采用ioctl函數(shù)的形式,其典型的流程如下:

流程 實現(xiàn)功能 實現(xiàn)函數(shù) 備注
第一步 打開文件 fd = open(devname, …); 特定設備文件名稱
第二步 訪問接口

rc = ioctl(fd, cmd, …);

rc = read(fd, buf, size);

rc = write(fd, buf, size);

可能調用多次,多種cmd
第三步 關閉文件 close(fd); 不再操作,則關閉

其中ioctl(…)的基本定義為:

int ioctl(int fd, int cmd, unsigned long arg);
輸入參數(shù) fd: 為打開文件獲得的文件描述符
cmd: 操作命令碼,在EM9280_drivers.h頭文件中以定義
arg: 需要傳遞的參數(shù)指針,不同的命令必須嚴格匹配相應的參數(shù)類型
返回值 = 0: 調用成功
= EBADF: 非法文件描述符
= EFAULT: arg指向不可訪問的內存空間
= EINVAL: 非法的cmd或arg參數(shù)
= ENOTTY: 文件描述符未指向特殊的字符設備

2、EM9280 AD驅動的應用

EM9280共有2路低速的模擬AD通道AIN1和AIN2,輸入量程為0 – 3.6V,AD分辨率12-bit。所謂低速通道,表示這兩個通道只能用于外部的直流或慢變化類型的信號。除此之外,EM9280還可提供對輸入的+5V電源電壓、+3.3V電源電壓以及核心CPU基片溫度的監(jiān)測。

EM9280 AD驅動是以模塊(module)形式提供給客戶,相應的驅動文件放在根文件系統(tǒng)中:/lib/modules/2.6.35.3/em9280_ad.ko,EM9280 AD驅動所對應的設備文件名稱為“/dev/em9280_ad”。

首先需要加載em9280_ad驅動:
#>insmod /lib/ modules/2.6.35.3/em9280_ad.ko

然后應用程序可打開AD驅動程序對應的設備文件“/dev/em9280_ad”,可多次調用read( )來讀取各類數(shù)據(jù)。read( )函數(shù)需要帶上如下結構數(shù)據(jù):

struct daq_info
{
unsigned int cmd; // 命令碼 = 0, 1, 2, ....
unsigned int data; // 返回的AD數(shù)據(jù)
char unit[16]; // 返回的單位字串: 'mV', 'Kalvin'等
} ;

其中cmd參數(shù)用于定義AD通道:
0 ---- AD采集通道1
1 ---- AD采集通道2
2 ---- +5V電源電壓
3 ---- +3.3V電源電壓
6 ---- 核心CPU基片溫度

注意返回的溫度參數(shù)均為開氏溫度,轉換成攝氏溫度,大致減去273即可。在此基礎上,應用程序的典型代碼如下:

int main(int argc, char** argv)
{
int fd;
int i1, rc;
int nChIndex;
struct daq_info ad;
printf('Driver em9280_ad test v1.0\n');
nChIndex = 1;
if(argc > 1)
{
nChIndex = atoi( argv[1] );
}
fd = open('/dev/em9280_ad', O_RDWR);
printf('open file = %d\n', fd);
if( fd<0 )
{
return -1;
}
ad.cmd = nChIndex;
for( i1=0; i1<20; i1++)
{
rc = read(fd, (void*)&ad, sizeof(ad) );
printf( 'nValue = %d (%s)\n', ad.data, ad.unit );
sleep(1);
}
close(fd);
printf('close file\n');
return 0;
}


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式系統(tǒng)

    關注

    41

    文章

    3613

    瀏覽量

    129622
  • Linux
    +關注

    關注

    87

    文章

    11332

    瀏覽量

    210024
收藏 人收藏

    評論

    相關推薦

    中科曙光入選2024年江蘇省信息技術應用創(chuàng)新優(yōu)秀解決方案名單

    近日,中科曙光南京研究院申報的《高端計算與分布式存儲一體化解決方案》(稱“方案”),成功入選“2024年江蘇省信息技術應用創(chuàng)新優(yōu)秀解決方案”名單。
    的頭像 發(fā)表于 01-08 09:41 ?163次閱讀

    飛騰助力首屆教育信息技術應用創(chuàng)新大賽圓滿落幕

    近日,由中國教育技術協(xié)會主辦,教育部教育管理信息中心教育信創(chuàng)實驗室、公安部第三研究所、中國電子工業(yè)標準化技術協(xié)會信創(chuàng)工委會支持,北京航空航天
    的頭像 發(fā)表于 12-24 09:57 ?172次閱讀

    有方科技參編的信息技術團體標準發(fā)布

    近日,有方科技參編的《信息技術產品供應鏈成熟度 共性指標 第1部分:企業(yè)背景評價》《信息技術產品供應鏈成熟度 共性指標 第2部分:技術掌控評價》《信息技術產品供應鏈成熟度 共性指標 第
    的頭像 發(fā)表于 12-23 10:44 ?187次閱讀

    龍芯中科助力2024首屆教育信息技術應用創(chuàng)新大賽成功舉辦

    近日,2024首屆教育信息技術應用創(chuàng)新大賽在北京航空航天大學成功舉辦。本次大賽由中國教育技術協(xié)會主辦,教育信創(chuàng)實驗室、公安部第三研究所、中國電子工業(yè)標準化技術協(xié)會信
    的頭像 發(fā)表于 12-19 17:02 ?263次閱讀

    拓維信息參與牽頭組建!長沙新一代信息技術產教聯(lián)合體正式獲批

    的長沙新一代信息技術產教聯(lián)合體成功獲批,為長沙市信息技術產業(yè)發(fā)展注入了新的活力。圖/《2024年長沙市市級市域產教聯(lián)合體名單》長沙新一代信息技術產教聯(lián)合體將依托龍頭企
    的頭像 發(fā)表于 12-07 01:06 ?447次閱讀
    拓維<b class='flag-5'>信息</b>參與牽頭組建!長沙新一代<b class='flag-5'>信息技術</b>產教聯(lián)合體正式獲批

    中科創(chuàng)達榮獲2024年軟件和信息技術服務優(yōu)秀企業(yè)

    及前百家企業(yè)”名單。中科創(chuàng)達憑借非凡的技術實力與持續(xù)的創(chuàng)新能力,成功入選“2024年度軟件和信息技術服務競爭力百強企業(yè)”以及“2024年軟件和信息技術服務優(yōu)秀企業(yè)”。
    的頭像 發(fā)表于 10-30 11:44 ?523次閱讀

    易智瑞榮獲“信息技術應用創(chuàng)新工作委員會技術活動單位”

    易智瑞公司以創(chuàng)新作為企業(yè)發(fā)展的內核,技術上的每一次突破,都將賦予產品符合當下市場需求和技術環(huán)境的特定能力。在2024年11月5-6日召開的“2024地理信息技術創(chuàng)新大會”上,將全面
    的頭像 發(fā)表于 10-11 10:41 ?473次閱讀
    易智瑞榮獲“<b class='flag-5'>信息技術</b>應用創(chuàng)新工作委員會<b class='flag-5'>技術</b>活動單位”

    創(chuàng)國產化背景的工控主板發(fā)展現(xiàn)狀

    創(chuàng),是信息技術應用創(chuàng)新產業(yè)的簡稱,于2016年“信創(chuàng)工委會”(信息技術應用創(chuàng)新工作委員會)提出,目的就是要推動我們國內軟硬件關鍵技術的研發(fā)
    的頭像 發(fā)表于 09-21 16:15 ?463次閱讀

    梯度科技入選2023年信息技術應用創(chuàng)新解決方案名單

    日前,工業(yè)和信息化部網絡安全產業(yè)發(fā)展中心(工業(yè)和信息化部信息中心)在天津舉辦2024信息技術應用創(chuàng)新發(fā)展大會暨解決方案應用推廣大會。會上正式公布了2023年
    的頭像 發(fā)表于 09-09 16:29 ?459次閱讀

    龍芯中科成功舉辦拉薩市信息技術創(chuàng)新應用工作交流會

    日前,由北京援藏指揮部指導,龍芯中科技術股份有限公司主辦的“信息技術創(chuàng)新應用工作交流會——芯動百城西藏站”成功舉辦。北京援藏指揮部領導,西藏自治區(qū)經信廳、專通局、密碼管理局等機關單位領導
    的頭像 發(fā)表于 08-21 11:32 ?610次閱讀

    龍芯中科突破“卡脖子”難題,構建新型信息技術體系

    胡偉武強調,在Wintel和AA體系主導全球電子產業(yè)的環(huán)境,中國需建立獨立于X86和ARM的第三套信息技術體系和產業(yè)生態(tài),解決關鍵技術被封鎖的困境,加速形成新質生產力,從而創(chuàng)造新的競爭優(yōu)勢。
    的頭像 發(fā)表于 05-20 16:12 ?624次閱讀

    龍芯中科三項信創(chuàng)方案入圍工信部2023年信息技術應用創(chuàng)新應用示范案例名單

    近日,工業(yè)和信息化部通報了2023年信息技術應用創(chuàng)新解決方案征集遴選結果,本次共評選出典型解決方案173個、應用示范案例83個、單項創(chuàng)新案例64個。
    的頭像 發(fā)表于 03-07 16:45 ?984次閱讀
    龍芯中科三項信<b class='flag-5'>創(chuàng)</b>方案入圍工信部2023年<b class='flag-5'>信息技術</b>應用創(chuàng)新應用示范案例名單

    RX78M組 EtherCAT ETG.5003示例程序固件信息技術

    電子發(fā)燒友網站提供《RX78M組 EtherCAT ETG.5003示例程序固件信息技術.pdf》資料免費下載
    發(fā)表于 02-21 14:22 ?1次下載
    RX78M組  EtherCAT ETG.5003示例程序固件<b class='flag-5'>信息技術</b>

    軟通動力與捷創(chuàng)技術簽訂戰(zhàn)略合作協(xié)議

    近日,軟通動力信息技術(集團)股份有限公司(以下簡稱“軟通動力”)與寧波捷創(chuàng)技術股份有限公司(以下簡稱“捷創(chuàng)技術”)正式簽訂戰(zhàn)略合作協(xié)議,并
    的頭像 發(fā)表于 02-03 16:35 ?1142次閱讀

    如何使用linuxgdb來調試python程序

    如何使用linuxgdb來調試python程序? 在Linux,可以使用GDB(GNU調試器)來調試Python程序。GDB是一個強大的調試工具,可以幫助開發(fā)者診斷和修復程序中的錯
    的頭像 發(fā)表于 01-31 10:41 ?2697次閱讀