久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Linux-2.6.16的高速模數轉換器AD7859L的應用

基于Linux-2.6.16的高速模數轉換器AD7859L的應用

作者: 時間:2009-03-18 來源:網絡 收藏

3.1 平臺資源
在2.6內核中將每個設備的資源用結構platform_device描述,該結構體在/include/linux/platform_device.h中定義。驅動的平臺資源如下。在文件/arch/arm/roach―s3c2410/devs.c中添加下述結構體。


該宏定義在map.h文件中。第二組描述了設備的中斷向量號。flags描述資源類型,設備驅動會根據flags來獲取相應的資源信息。在結構體static struct platform_device*smdk2410_devices[]__initdata添加上述s3c_device_ad7859adc平臺資源。該結構體在/arch/arm/mach―s3c2410/mach―smdk2410.C文件中定義。
3.2 MISC類設備
的結構體內創建一個miscdevice類型設備驅動的結構體指針,增添一個misc類型設備。該結構體在/include/miscdevice.h中定義。


在AD7859L驅動的probe函數中調用misc_register(stmctmiscdevice*misc)函數,對misc類設備注冊,這個函數會為內核注冊一個misc類型設備,如果minor被設置為MISCDYNAMIC_MINOR,系統會動態的為該設備分配一個次設備號,用以區分其他的設備。不同類型的設備調用的設備注冊和注銷函數有所不同。misc類設備的注銷函數為misc_deregister(struct miscdevice}misc)。成功均返回零,否則返回一個錯誤代碼。


3.3
測試的程序相對簡單,利用open函數打開設備文件,通過ioctl函數設置AD7859L的各個采樣參數,包括選擇哪幾路通道進行采樣,采樣的時間間隔,采樣的方式等等。利用read函數讀取緩沖區數據,在程序退出時調用close函數關閉設備文件。

4 結語
AD7859L是一款、低功耗的,在測量行業有著很廣闊的前景。隨著大家對Linux的認可,嵌入式Linux會被越來越多的人所接受。通過介紹在Linux下以MISC類設備方式開發AD7859L的設備驅動程序,讓大家更清楚的理解MISC類型設備的操作方法。

linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉