在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > GDB RSP協(xié)議與USB通信在嵌入式調(diào)試系統(tǒng)中的應(yīng)用

            GDB RSP協(xié)議與USB通信在嵌入式調(diào)試系統(tǒng)中的應(yīng)用

            作者: 時(shí)間:2013-11-14 來源:網(wǎng)絡(luò) 收藏

            EZ-USB FX2的前身是EZ-USB,其芯片固件也是存儲在主機(jī)上而不是芯片內(nèi)部,顯著特點(diǎn)是代碼容易升級。芯片結(jié)構(gòu)也與EZ-USB類似,主要包括USB2.0收發(fā)器、串行接口引擎、增強(qiáng)型8051、16 KB的RAM、4 KB的FIFO存儲器、I/O口、數(shù)據(jù)總線、地址總線和通用可編程接口GPIF.

              采用Cypress EZ-USB FX2芯片進(jìn)行傳輸性能穩(wěn)定,其硬件性能可以進(jìn)行靈活配置。該芯片的特點(diǎn)在于:

             ?。?)USB2.0單芯片解決方案,包括USB2.0收發(fā)器,串行接口引擎(SIE)和增強(qiáng)型51內(nèi)核??伞败浥渲谩盧AM,大小為16 K,可取代傳統(tǒng)51的RAM和ROM,程序可以通過USB口下載或者通過外部EEPROM裝載,同時(shí)也支持外界存儲設(shè)備。

             ?。?)通用可編程接口GPIF.GPIF是FX2一個(gè)重要技術(shù),可設(shè)置為主從模式,主從模式下可對外部FIFO、存儲器、ATA接口設(shè)備進(jìn)行高速讀寫操作,從模式下外部主控器(如DSP,MCU)可把GPIF端口當(dāng)做FIFO進(jìn)行高速讀寫操作;支持與外設(shè)通過并行8位或者16位總線傳輸;支持通過GPIF編程工具編程,靈活產(chǎn)生各種波形。支持多CTL輸出和RDY輸入。

              (3)增強(qiáng)工業(yè)級8051內(nèi)核:支持48 MHz時(shí)鐘;4個(gè)時(shí)鐘指令周期,在時(shí)鐘為48 MHz時(shí),單指令執(zhí)行時(shí)間為83.3 ns;兩個(gè)UART;三個(gè)TIMER;多中斷系統(tǒng);多數(shù)據(jù)指針。

              

              3 研究與實(shí)現(xiàn)

               技術(shù)在中主要由三部分組成:EZ-USB FX2芯片功能開發(fā)、RSP Server與的RSP通信、RSP Server與EZUSBFX2芯片的USB數(shù)據(jù)交互。在進(jìn)行功能開發(fā)之前,我們需要將EZ-USB FX2的開發(fā)包安裝到PC機(jī)上,該開發(fā)包主要包括了EZ-USB FX2芯片的USB驅(qū)動(dòng)、EZ-USB FX2進(jìn)行USB開發(fā)所需的鏈接庫和相關(guān)頭文件、增強(qiáng)型8051單片機(jī)開發(fā)所需的頭文件等開發(fā)要件。

              3.1 EZ-USB FX2芯片USB通信功能開發(fā)

              為了簡化固件編程,Cypress提供了固件編程框架,開發(fā)人員只需要在此基礎(chǔ)上添加少量代碼就可以完成固件編程。固件編程框架已經(jīng)將USB標(biāo)準(zhǔn)請求和USB電源管理包括進(jìn)去了,并且提供了任務(wù)調(diào)度函數(shù),只需要在這任務(wù)調(diào)度函數(shù)中添加部分代碼就完成了固件編程。

              上電復(fù)位時(shí),固件先初始化一些全局變量,接著調(diào)用初始化函數(shù)TD_Init(),初始化設(shè)備到?jīng)]有配置的狀態(tài)和打開中斷,循環(huán)1 s后重新枚舉,直到端點(diǎn)0接收到SETUP包退出循環(huán),進(jìn)入循環(huán)語句while,執(zhí)行任務(wù)函數(shù),函數(shù)包括:

             ?。?)TD_POLL()用戶任務(wù)調(diào)度函數(shù);

              (2)如果發(fā)現(xiàn)USB設(shè)備請求,則執(zhí)行對應(yīng)的USB請求;

              ( 3 ) 如果發(fā)現(xiàn)U S B 空閑置位, 則調(diào)用TD_Suspend()這個(gè)掛起函數(shù),調(diào)用成功則內(nèi)核掛起,直到出現(xiàn)USB遠(yuǎn)程喚醒信號,調(diào)用TD_Resume(),內(nèi)核喚醒重新進(jìn)入while循環(huán)。

              3.2 PC端USB通信開發(fā)

              PC端USB通信的開發(fā)主要由三部分組成:設(shè)置要讀寫的內(nèi)存空間地址、讀內(nèi)存地址空間、寫內(nèi)存地址空間。這三個(gè)功能主要由3個(gè)函數(shù)來實(shí)現(xiàn):voidSetAddr(DWORD addr)、int ReadReg(ULONGaddr, ULONG *val)、int WriteReg(ULONG addr,ULONG data)。

              3.2.1 void SetAddr(DWORD addr)函數(shù)的實(shí)現(xiàn)

              SetAddr函數(shù)的實(shí)現(xiàn)過程可以由圖4來表示。

              

              3.2.2 int ReadReg(ULONG addr, ULONG *val)函數(shù)的實(shí)現(xiàn)

              考慮到調(diào)試器要頻繁讀取DS P 內(nèi)核寄存器及相關(guān)的內(nèi)存地址空間內(nèi)容, 因此USB采用異步通信的方式來完成讀取功能, P C 端的RSP Se r v e r 通過啟動(dòng)傳送線程實(shí)現(xiàn)數(shù)據(jù)的異步傳輸。R e a d R e g 函數(shù)的實(shí)現(xiàn)流程如圖5 所示。

              3.2.3 int WriteReg(ULONG addr, ULONG data)函數(shù)的實(shí)現(xiàn)

              在調(diào)試過程中,通常寫寄存器的操作由程序員在調(diào)試過程中手動(dòng)實(shí)現(xiàn),USB通信量相比較于讀操作要小得多,因此本采用簡單的Write函數(shù)操作來實(shí)現(xiàn)DSP內(nèi)存地址空間的寫操作,其實(shí)現(xiàn)流程如圖6所示。

            數(shù)字通信相關(guān)文章:數(shù)字通信原理


            通信相關(guān)文章:通信原理




            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉