精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于S3C44B0X處理器和mClinux實現(xiàn)USB設(shè)備兩種模式的應(yīng)用設(shè)計

電子設(shè)計 ? 來源:電子設(shè)計應(yīng)用 ? 作者:閔華松,錢麗 ? 2021-05-22 17:40 ? 次閱讀

引言

目前,USB 設(shè)備產(chǎn)品的應(yīng)用非常廣泛,但市場上能夠提供Host/Slave兩種模式的USB控制芯片并不多,本系統(tǒng)采用CYPRESS公司的SL811HST芯片作為USB接口的控制芯片,實現(xiàn)Host/Slave兩種工作模式。

系統(tǒng)介紹

本系統(tǒng)是以三星公司的S3C44B0X為嵌入式處理器,mClinux操作系統(tǒng)的專用PDA,通過無線方式實現(xiàn)與上位機(jī)通信,同時也可通過USB接口直接控制USB打印機(jī)輸出。其中USB控制芯片采用CYPRESS公司的SL811HST芯片,它有兩種工作模式Host/Slave。模式的改變是由該芯片M/S腳的電平值決定,其值可以通過軟件設(shè)置來改變。當(dāng)置M/S腳為低電平時,它是Host模式,可以直接控制打印機(jī);當(dāng)置M/S腳為高電平時,它是Slave模式,可以下載PC的最新資料,同時可對PDA充電電池充電。

硬件設(shè)計

三星公司的S3C44B0X是一款專為手持設(shè)備和通用設(shè)備而設(shè)計的,16/32位RISC 結(jié)構(gòu)的嵌入式處理器。

CYPRESS公司的SL811HST是嵌入式的USB 主機(jī)或外設(shè)接口控制器。其基本功能如下:

1) 支持USB 1.1 的全速和低速設(shè)備;

2) 虛擬的外部總線,使得僅需占用和外接CPU 的1 根地址線A0,數(shù)據(jù)線為8位;

3) 16 個內(nèi)部寄存器,可以對USB Host 進(jìn)行充分的控制;內(nèi)部多達(dá)256 字節(jié)的RAM,為USB 傳輸建立了足夠的緩沖區(qū);

4) 操作電壓為3.3V,但是I/O 端口為5V Tolerant,因此可以自由地和5V 或3.3V 的CPU 系統(tǒng)連接;

5) 可接12MHz 或48MHz外置晶振,對其操作通過16個寄存器來完成。

GPE5是Host/Slave模式控制管腳,它同時同步控制USB接口的負(fù)載方式。GPE4口可以監(jiān)視USB接口上是否有主USB設(shè)備插入,如果有,VUSB為高電平;沒有則為低電平。GPE3口用于顯示USB設(shè)備是否處于就緒或相應(yīng)的Host/Slave模式工作狀態(tài)

軟件設(shè)計

在Linux操作系統(tǒng)中,驅(qū)動程序的加載方式為:

1) 將驅(qū)動程序作為可加載的模塊(Module),在系統(tǒng)超級用戶(Root)權(quán)限下使用insmod命令動態(tài)加載,使之成為系統(tǒng)核心的一部分。對于USB 設(shè)備而言,由于可熱插拔,一般采用模塊化的設(shè)備驅(qū)動程序。

2) 將設(shè)備驅(qū)動程序的源代碼加進(jìn)系統(tǒng)內(nèi)核,編譯移植到嵌入式系統(tǒng),系統(tǒng)啟動后將自動加載驅(qū)動。USB 協(xié)議棧程序一般采用這種方法加入內(nèi)核,進(jìn)而產(chǎn)生一個叫做“USB 核心”的子系統(tǒng)。這個子系統(tǒng)提供了許多數(shù)據(jù)結(jié)構(gòu)、宏定義、功能函數(shù)和應(yīng)用程序接口(API)來對硬件或設(shè)備進(jìn)行支持。

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

1) 在mClinux內(nèi)核的USB驅(qū)動目錄中添加如下三個文件:sl811h-usb.c 、sl811h.h、 sl811husb.h。這兩個頭文件中主要定義了一些關(guān)于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 Host 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中增加一個設(shè)備文件。因為USB設(shè)備主要都是通過快速串行通訊來讀寫數(shù)據(jù), 故一般作為字符設(shè)備。在/usr/local/src/uClinux-s3cev40/fs/devfs 下執(zhí)行:

mknod usb0 c 127 0

mknod usb1 c 127 1

4) 執(zhí)行make xconfig,用戶內(nèi)核設(shè)置選擇y。

5) 執(zhí)行make dep。

6) 執(zhí)行make。USB設(shè)備驅(qū)動程序被編譯進(jìn)mClinux內(nèi)核,包含在image.bin文件中。

在嵌入式系統(tǒng)啟動時,USB設(shè)備驅(qū)動就自動執(zhí)行了。

結(jié)語

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

責(zé)任編輯:gt

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

    關(guān)注

    68

    文章

    18927

    瀏覽量

    227231
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18817

    瀏覽量

    298553
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6545

    瀏覽量

    122743
收藏 人收藏

    評論

    相關(guān)推薦

    基于S3C44B0X的WAVE音頻文件播放

    采用S3C44B0X內(nèi)置IIS總線和音頻數(shù)模轉(zhuǎn)換芯片CS4334,本文搭建了以二者為核心的工作平臺,并詳細(xì)討論了基于此平臺實現(xiàn)播放WAVE音頻文件的方法.由于S3C44B0X及CS4334模塊具有較強的通用性
    發(fā)表于 11-09 17:08 ?1658次閱讀
    基于<b class='flag-5'>S3C44B0X</b>的WAVE音頻文件播放

    基于S3C44B0X處理器實現(xiàn)運動系統(tǒng)電流信號采集電路的設(shè)計

    本文首先以三星公司的S3C44B0X處理器為核心芯片,設(shè)計電流信號采集電路,然后介紹了非線性能量故障診斷算法。最后以X-Y運動平臺為實驗對象,驗證該算法的有效性。
    的頭像 發(fā)表于 03-24 16:23 ?6356次閱讀
    基于<b class='flag-5'>S3C44B0X</b>微<b class='flag-5'>處理器</b><b class='flag-5'>實現(xiàn)</b>運動系統(tǒng)電流信號采集電路的設(shè)計

    怎么實現(xiàn)基于S3C44B0X和M12模塊的GPS接收終端的設(shè)計?

    本文介紹一以目前比較流行的基于ARM7架構(gòu)的嵌入式處理器S3C44B0X和Motorola的M12模塊的GPS數(shù)據(jù)接收終端的設(shè)計。
    發(fā)表于 05-12 06:14

    怎么實現(xiàn)基于S3C44B0X的嵌入式Socket通信設(shè)計?

    本文給出一適合于中/低端應(yīng)用的通信平臺設(shè)計方案,它可支持Ethernet網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸,并且具有RS232? RS485? USB等接口?文中圍繞嵌入式uClinux環(huán)境設(shè)計了基于嵌入式通信微處理器
    發(fā)表于 05-27 06:59

    S3C44B0X pdf

    S3C44B0X p
    發(fā)表于 06-27 09:37 ?76次下載

    s3c44b0x中文資料,s3c44b0x中文數(shù)據(jù)手冊

    S3C44B0X 中文數(shù)據(jù)手冊...........................................................116 IIC 總線接口
    發(fā)表于 06-27 09:40 ?152次下載

    S3C44B0X的培訓(xùn)資料及源代碼程序

    S3C44B0X的培
    發(fā)表于 12-25 22:08 ?37次下載
    <b class='flag-5'>S3C44B0X</b>的培訓(xùn)資料及源代碼程序

    基于S3C44B0X處理器的JFFS2件系統(tǒng)的實現(xiàn)

    基于S3C44B0X處理器的JFFS2件系統(tǒng)的實現(xiàn)
    發(fā)表于 03-28 09:50 ?16次下載

    基于S3C44B0X 的uClinux的移植

    S3C44B0X 作為一款以ARM7TDMI 為內(nèi)核的微處理器,正日益受到廣泛的應(yīng)用;uClinux作為一運行于沒有MMU 的嵌入式微處理器的Linux 衍生操作系統(tǒng),也廣泛應(yīng)用于嵌
    發(fā)表于 05-15 15:40 ?14次下載

    μC/OS-Ⅱ在S3C44B0X上的移植

    本文簡介了一實時多任務(wù)內(nèi)核μC/OS-Ⅱ。并根據(jù)S3C44B0X 芯片的硬件特性,給出了一把μC/OS-Ⅱ移植到
    發(fā)表于 08-31 11:46 ?18次下載

    基于S3C44B0X處理器的VxWorks中斷設(shè)計

    通過基于立宇泰S3C44B0X 開發(fā)板的BSP 移植調(diào)試,闡述了VxWorks 的異常中斷處理機(jī)制,實現(xiàn)了VxWorks 基于S3C44B0X 處理
    發(fā)表于 09-03 11:25 ?17次下載

    S3C44B0X中文手冊 pdf

    S3C44B0X中文數(shù)據(jù) 三星的S3C44B0X 16/32位RISC處理器被設(shè)計來為手持設(shè)
    發(fā)表于 02-10 12:07 ?254次下載

    S3C44B0X datasheet, RISC MICRO

    S3C44B0X d
    發(fā)表于 03-09 09:47 ?35次下載

    處理器S3C44B0X音頻文件播放

    處理器S3C44B0X音頻文件播放 S3C44B0X是三星公司針對嵌入式系統(tǒng)推出高性價比微處理器,它是基于ARM7TDMI內(nèi)核的16/32位RISC
    發(fā)表于 03-16 11:46 ?756次閱讀
    微<b class='flag-5'>處理器</b><b class='flag-5'>S3C44B0X</b>音頻文件播放

    S3C44B0X原理圖

    S3C44B0X原理圖:
    發(fā)表于 09-14 15:28 ?167次下載
    <b class='flag-5'>S3C44B0X</b>原理圖