新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于EZ-USB 2100系列單片機的PCB探測系統開發

        基于EZ-USB 2100系列單片機的PCB探測系統開發

        作者: 時間:2012-02-03 來源:網絡 收藏

        1 引言

        本文引用地址:http://www.104case.com/article/172197.htm

        在進行反設計時,需要首先對電路板進行,得出所有元器件管腳之間的連接關系;接著再利用相應的軟件對結果進行分析處理,最終還原出的原理圖。假設電路板上有24.jpg 次。由于大規模上器件管腳眾多,因此完全依靠手工不僅效率低下,而且極易出錯。為了提高PCB探測的效率和準確性,本文提出了一種 2100的PCB探測的設計與實現方案。該有 個探測頭,分別連接到電路板的 個器件管腳上。在的控制下,自動的探測這個管腳間的連接關系;然后,系統依據探測選擇算法,選取下一組 個管腳進行探測,依此循環,直到所有的 個器件管腳均探測完畢。采用 2100進行,不僅易于實現探測設備和主機之間的高速通信,而且還為探測設備的功能擴展帶來了極大的便利。下文將首先分析 2100單片機的特點和技術優勢,然后給出該類型單片機的PCB探測系統的設計與實現方案。S3C2410 ARM9板800元 SOC平臺360元 豪華單片機開發系統498元 單片機學習板138 無線nRF-9E5模塊100元 51單片機試驗開發板238元 Genius NSP通用編程器260元 Mini ARM Debugger330元 LABTOOL-48UXP2800元 S3C2410 ARM9開發板800

        2 EZ-USB 2100系列單片機的特點

        EZ-USB 2100系列單片機由Cypress公司開發,片內集成了符合USB 1.1版規范的USB控制器和一個增強的8051內核。增強的8051內核運行速度為24MHz,并且一個總線周期中包含有4個時鐘周期,而標準8051 則包含12個時鐘周期。除了增強的8051內核,與傳統的8051單片機相比,EZ-USB 2100系列單片機還具有兩大優勢技術:1)通過USB總線實現與主機的高速數據傳輸;2)固件重配置功能。這兩項技術為應用開發提供了極大的方便性和靈活性,下面將具體分析在實際的開發過程中如何使用這兩項技術。

        2.1 EZ-USB 2100系列單片機與主機的通信

        EZ-USB 2100系列單片機內集成的USB控制器符合USB1.1版規范,可支持12Mbps高速數據傳輸。主機上的應用程序通過EZ-USB設備驅動程序和 EZ-USB單片機進行通信。Cypress提供了一個通用的設備驅動程序,用戶可以直接利用該通用設備驅動程序與EZ-USB單片機進行通信。

        首先,主機需要裝載該通用設備驅動程序。第一次使用某USB設備時可能需要手工安裝其驅動程序;此后,Windows會保存在注冊表中的相關信息,自動定位設備驅動程序。

        在裝載了通用設備驅動程序之后,應用程序首先通過調用Win32 API函數CreateFile()來取得訪問設備驅動程序的句柄:
        HANDLE DeviceHandle;
        DeviceHandle = CreateFile (“\.ezusb-0”, GENERIC_WRITE, FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL );

        然后,應用程序為CreateFile()函數返回的設備句柄設置I/O緩沖區,并通過調用Win32 API函數DeviceIoControl()來完成設備的讀、寫等操作:
        PVOID pvBuffer = NULL;
        DWORD nBytes = 0;
        PvBuffer = malloc (sizeof (Usb_Device_Descriptor ));
        BResult = DeviceIoControl ( DeviceHandle, //已經打開的設備句柄
        IOCTL_EZUSB_GET_DEVICE_DESCRIPTOR, //IO控制碼
        NULL, 0, pvBuffer, sizeof (Usb_Device_Descriptor),
        nBytes, NULL);

        對EZ-USB外設的操作是通過向DeviceIoControl函數傳遞相應的控制碼實現的。例如,要完成數據的塊讀(bulk read)和塊寫(bulk write)操作,可以分別向該函數傳遞IOCTL_EZUSB_BULK_READ 和IOCTL_EZUSB_BULK_WRITE控制碼。

        2.2 EZ-USB 2100系列單片機的固件重配置功能

        一個單片機系統的硬件電路設計完成之后,該單片機系統的特性和功能還可以通過更改單片機的軟件程序(即:固件)來加以改變。利用ROM來存儲固件則無法更改;而利用EPROM來存儲固件則會受到擦寫次數和成本的限制。而EZ-USB系列單片機片內集成的外部RAM可用于裝載固件,當設備與主機連接時,固件從主機裝載到RAM里執行,裝載不同的固件設備就呈現出不同的特性,從而達到軟配置目的。

        3 EZ-USB 2100系列單片機在開發PCB探測系統中的應用

        26.jpg

        3.1

        3.1硬件電路設計

        系統的硬件電路結構圖如圖1所示。k 個探測頭連接到由多個模擬開關組成的模擬開關

        25.jpg

        27.jpg

        3.2 系統功能擴充

        正如本文2.2節說明的,可以利用EZ-USB的重配置功能,對固件程序進行修改,以使得系統獲得新的功能。在開發PCB探測系統的過程中,我們發現需要對電路板上的電阻、電容和電感這些雙腳器件的取值進行測量。由于大規模電路板上這類器件數量龐大,手工采用萬用表或邏輯分析儀進行測量是一件非常繁瑣的工作。而利用EZ-USB的重配置功能則可以解決這一問題。采用與3.1節同樣的硬件電路,筆者另外設計了一套固件程序,用于電路板上電阻、電容和電感的類型判別及取值測定。

        28.jpg

        4 結語

        本文給出了一種EZ-USB 2100系列單片機的PCB探測電路的設計方案。該探測系統極大的提高了PCB反設計工作的效率。實際應用的結果表明該探測系統具有良好的探測完備性和準確性。

        參考文獻
        [1] Cypress Semiconductor Corporation, EZ-USB Series 2100[EB], 2002.
        [2] 吳從中, EZ-USB接口設備的軟配置技術[M], 微控制器與嵌入式系統.2003.12
        [3] 胡文靜, 基于EZ-USB芯片AN2131Q的USB接口設計, 湖南理工學院學報(自然科學版)



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 崇仁县| 海淀区| 资源县| 洱源县| 留坝县| 北碚区| 泰和县| 马尔康县| 泰兴市| 洛浦县| 揭阳市| 民乐县| 西丰县| 诏安县| 谢通门县| 宜春市| 青州市| 滨州市| 永嘉县| 侯马市| 东辽县| 梨树县| 太谷县| 湘西| 龙州县| 晋江市| 原平市| 乌鲁木齐县| 肇源县| 伊吾县| 丹棱县| 扶沟县| 武川县| 娄底市| 区。| 扎赉特旗| 洞口县| 镇沅| 巴林右旗| 汝南县| 河源市|