新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式系統中USB控制的Host/Slave模式的應用

        嵌入式系統中USB控制的Host/Slave模式的應用

        作者: 時間:2013-10-26 來源:網絡 收藏

        本系統就是采用第二種方式加載USB驅動的。由于本系統的包來自于英蓓特公司的包,因此節省了很多工作,具體編譯過程如下:

        1) 在內核的USB驅動目錄中添加如下三個文件:sl811h-usb.c 、sl811h.h、 sl811husb.h。這兩個頭文件中主要定義了一些關于811HS/T寄存器的宏。

        2) 編輯/uclinux-s3cev40/linux-2.4.x/drivers/usb/config.in文件。

        首先在config.in文件開頭添加如下語句:

        dep_tristate 'Support for USB' CONFIG_USB $CONFIG_PCI

        if [ "$CONFIG_USB" = "y" -o? "$CONFIG_USB" = "m" ]; then

        ?? bool '? USB verbose debug messages' CONFIG_USB_DEBUG

        comment 'Miscellaneous USB options'

        ?? bool '? Preliminary USB device filesystem' CONFIG_ USB_DEVICEFS

        ?? if [ "$CONFIG_ EXPERIMENTAL" = "y" ]; then

        ????? bool '? Enforce USB bandwidth allocation (EXPERIMENTAL)' CONFIG_USB_BANDWIDTH

        ?? else

        ??? define_bool CONFIG_USB_ BANDWIDTH n

        ?? fi

        ?? bool '? Long timeout for slow-responding devices (some MGE Ellipse UPSes)' CONFIG_USB_ LONG_TIMEOUT

        fi

        然后在makefile文件中添加

        ifeq ($(CONFIG_USB_ DEBUG),y)

        ?????? L_OBJS+=sl811h-usb.o

        endif

        最后在/uclinux-s3cev40/linux-2.4.x/drivers/usb/sl811h_usb.c文件中添加如下代碼:

        #ifdef CONFIG_USB_DEBUG

        ?????? #define DEBUG

        #else

        ?????? #undef DEBUG

        #endif

        #SL811HS/T----- USB Controller driver

        INCLUDEDIR = /usr/src/linux/include

        CFLAGS = -D__KERNEL__ -DMODULE -O -Wall -

        static -I$(INCLUDEDIR)

        VER = $(shell awk -F" '/REL/ {print $$2}'

        $(INCLUDEDIR)/linux/version.h)

        all:sl811h-usb.o

        sl811h-usb.o:sl811h-usb.csl811h-usb.hsl811h.h

        gcc sl811h-usb.c -c $(CFLAGS)

        # End this file

        3) 在/usr/local/src/uClinux-s3cev40/fs/dev中增加一個設備文件。因為USB設備主要都是通過快速串行通訊來讀寫數據, 故一般作為字符設備。在/usr/local/src/uClinux-s3cev40/fs/devfs 下執行:

        mknod usb0 c 127 0

        mknod usb1 c 127 1

        4) 執行make xconfig,用戶內核設置選擇y。

        5) 執行make dep。

        6) 執行make。USB設備驅動程序被編譯進內核,包含在image.bin文件中。

        在嵌入式系統啟動時,USB設備驅動就自動執行了。


        結語

        本設計以mClinux嵌入式操作系統為平臺,充分發揮了SL811HST芯片的/Slave兩種模式的作用,使其在實際使用中非常方便。隨著嵌入式USB設備/的研發,USB設備的使用會更加普及。

        晶振相關文章:晶振原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 大同县| 德州市| 娄底市| 五指山市| 宝应县| 高平市| 阿鲁科尔沁旗| 高要市| 报价| 武鸣县| 沅江市| 嘉鱼县| 锡林浩特市| 荔浦县| 尤溪县| 吉林省| 景洪市| 海林市| 彩票| 龙海市| 贵定县| 静乐县| 白城市| 武冈市| 白水县| 龙海市| 三都| 如东县| 仪征市| 星子县| 孝昌县| 涟源市| 安远县| 桐城市| 将乐县| 根河市| 水富县| 巴青县| 宝丰县| 利津县| 喀喇|