《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 雙異步串口經AT89C2051與TMS320VC5402 HPI口通信的解決方案
雙異步串口經AT89C2051與TMS320VC5402 HPI口通信的解決方案
趙 俊 張朝陽 陳文正
摘要: 提出了兩個微機串口與DSP處理器(TMS320VC5402)HPI(Host Port Interface)口通信問題的解決方案,該方案采用單片機(AT89C2051)實現數據的串/并、并/串轉換,并控制DSP的HPI實現共享總線。給出了硬件連接電路和用FPGA作為總線仲裁器的設計思路,介紹HPI口的操作過程,單片機與微機串口之間通信的硬件設計方法。
Abstract:
Key words :

    摘  要: 提出了兩個微機串口與DSP處理器(TMS320VC5402)HPI(Host Port Interface)口通信問題的解決方案,該方案采用單片機(AT89C2051)實現數據的串/并、并/串轉換,并控制DSP的HPI實現共享總線。給出了硬件連接電路和用FPGA作為總線仲裁器的設計思路,介紹HPI口的操作過程,單片機與微機串口之間通信的硬件設計方法。 

    關鍵詞: DSP 單片機  HPI  串行通信  FPGA 

 

    本文所介紹的是我所正在研制的衛星CDMA接收機末端DSP與微機串口通信的接口電路。由于CDMA接收機支持兩個獨立CDMA信道的接收,并將兩路解調后的數據分別經串口送至不同的計算機做后續的處理,故接收機需要帶兩個RS232接口。 

    微機的異步串口與DSP處理器通信的方法通常有三種,第一種方法是采用異步通信芯片擴展串口,如用TI公司的TL16C550完成數據的串/并、并/串變換。由于TL16C550提供了豐富的控制管腳和應答信號,對其只需設置一些寄存器就可進行靈活的控制,故編程比較簡單,但對其數據的讀取或寫入則需要用到DSP的數據總線。第二種方法是將DSP的I/O口XF和,或者將DSP的McBSP口用軟件模擬成異步串口。用這種方法,雖然DSP與微機串口之間無需串/并變換器件,硬件構成十分簡單,但DSP的編程比較復雜,用I/O口線模擬串口需要占用兩個定時器資源,并且只有在DSP操作不繁忙的情況下這種方法才可行。第三種方法是用單片機實現數據的串/并、并/串轉換。與第一種方法相比較,這種方法增加了對單片機的編程,但單片機可以作為控制器操作DSP的HPI口,對DSP存儲器的數據收發可完全由單片機發起,DSP幾乎無需作任何操作,也無需用到數據總線。在DSP處理過程復雜、運算量大的情況下,這種方法特別有用。 

    在本系統中,我們采用的DSP處理器是高性能、低功耗的TMS320VC5402,用以實現系統的MAC層控制和數據的編、解碼工作,處理器的工作量很大。另外DSP數據總線需要與作為基帶處理器的FPGA芯片(APEXEP20K600E)交換數據,為避免引入額外的控制邏輯實現與數據總線復用,采用單片機控制HPI口的方法實現DSP與雙串口的通信??紤]到FPGA芯片的存在及節省成本,沒有采用價格貴且需用高級仿真器開發的雙串口單片機(如DS80C320),而是采用兩片AT89C2051,并借用物理層FPGA的冗余資源作為總線仲裁器來實現同樣的功能。 

1 TMS320VC5402 HPI口結構

    TMS320VC5402上的HPI口是增強型的8bit主機接口( Enhanced 8 bit host port interface),專門用于與主機進行通信,通過它主機可以訪問TMS320VC5402片內16K的RAM空間。這一接口由一個8bit的雙向數據總線和不同的控制管腳組成,能夠支持按高、低字節傳送16bit數據。TMS320VC5402提供三個跟HPI操作相關的寄存器——地址寄存器HPIA、數據寄存器HPID和控制寄存器HPIC。TMS320VC5402只能訪問控制寄存器,而主機則對這三個寄存器都可以訪問。主機欲隨機訪問TMS320VC5402的片內RAM,需要先發送一個16bit地址到HPI地址寄存器(HPIA),然后通過數據寄存器(HPID)訪問該地址所指向的存儲單元。主機欲連續訪問一段RAM空間,則要先送該段的首地址到HPIA,然后以地址自動加一的方式訪問,即主機每訪問一個存儲單元后HPIA自動指向下—個單元。 

    HPI接口還提供了中斷邏輯同主機進行軟件握手。主機可通過對控制寄存器HPIC的第二位(DSPINT)置1中斷DSP芯片;DSP芯片可通過對HPIC的第三位(HINT)置1中斷主機,此時HPI的引腳被置為低電平,從而向主機發出中斷請求;主機還可設置HPIC的位HINT為1使腳回到高電平,從而清除中斷信號。 

    下面給出HPI口相關管腳說明: 

    HD0~HD7是8位雙向數據線,與單片機P1口相連,用于交換數據。 

    HCNTL1/0的組合用于選擇主機所訪問的HPI寄存器,00表明主機訪問HPIC;10表明訪問HPIA;01和11均表明訪問HPID,但01還表明同時啟用HPIA自動增長的功能。 

    16bit數據傳送時,HBIL為0表示傳送的是第一字節,為1表明傳送的是第二字節,其中高8位在第幾個字節由HPIC中的BOB位決定。 

    

    HPI提供兩種鎖存方式,一種是由(主機地址鎖存信號)的下降沿鎖存各控制信號;另一種是由后三者共同完成,任何一個的下降沿鎖存各控制信號。我們采用第二種方式,控制信號的鎖存由的低跳變來完成。該鎖存信號還指示了一次HPI口操作過程的開始。 

    HRDY為HPI準備好指示。 

    為DSP向主機發出中斷的引腳。 

    HPIENA為HPI使能控制信號,高電平使能HPI操作。 

2 單片機的I/O口分配、連線和程序設計 

2.1 單片機I/O口分配

    在本系統中,考慮到板子的面積,選擇了體積小的AT89C2051單片機,并省去了P0和P2口,增加了一個精密的模擬比較器,P1.0和P1.1除了作為I/O口(需外部電阻上拉)外,還同時作為比較器的正負極輸入,而P3.6則專門用作比較器輸出。因此AT89C2051提供了15根雙向I/O口線,除去P3.0和P3.1用作異步串口和P1.0~P1.7用作與HPI口數據總線通信外,還有5根I/O口線可用。由于還需要控制HPI口的各控制信號和與DSP的握手信號,剩下的5根I/O口線顯然不夠,所以還在FPGA里設計一鎖存器,把P1口用作控制/數據復用口。具體的I/O口信號分配如下: 

    P1.0~P1.7接HPI口的數據線HD0~HD7。當作控制信號復用時, 

    P1.0接FPGA內鎖存器的鎖存信號; 

    P1.1經FPGA鎖存,控制HCNTL0; 

    P1.2經FPGA鎖存,控制HCNTL1; 

    P1.3經FPGA鎖存,控制HBIL; 

    P1.4經FPGA鎖存,控制

    P3.2接HPI的

    P3.3接HPI的XF; 

    P3.4接HPI的HRDY; 

    P3.5為單片機請求發送信號,接FPGA的P3.5; 

    P3.7經FPGA控制鎖存HPI的各控制信號

    圖1給出了HPI接口與兩片AT89C2051之間的連接圖。 

 

 

2.2 單片機程序設計要點

    上面講到,P3.5作為單片機的發送請求信號,當無數據發送時為高電平,當為低電平時則表示單片機想要發送數據,向總線仲裁器申請使用總線,總線仲裁器判斷當前誰可以使用總線,然后通過外中斷0中斷DSP處理器,同時通過口告知DSP當前可以使用總線的單片機,最終由DSP通過XF管腳集中控制單片機的總線使用權。單片機在獲取總線使用權并發送完數據后,向HPI的控制寄存器的DSPINT位寫1,用中斷通知DSP。在單片機需接收數據時,DSP首先設置XF腳,選擇由哪個單片機接收,然后設置腳為低,通過中斷告知單片機進行接收。單片機從HPI口接收時也應置P3.5為低,以便保持總線仲裁器的單片機選擇信號與XF腳一致。 

    在對單片機編程時需要注意以下幾點:(1)由于兩個單片機共享總線,為保證相互之間不會干擾,沒有使用總線的單片機P1口必須處于高阻態。根據P1口的內部結構,單片機不使用總線時,往P1口寫入0xFF即可達到這一目的。(2)由于P1口作為控制/數據信號復用口,故編程時,對每次HPI口操作,先在P1口送出控制信號,接著設置P1.0產生低→高的跳變,把控制HPI口的P1.1~P1.4信號鎖存到FPGA內部的鎖存器,這時P1口才能作為數據端口,在P3.7產生一低跳變后,發起一次數據傳遞。(3)編程時,應防止單片機被同時要求對HPI口進行收、發操作。這可以依據實際情況,靈活地進行處理,限于篇幅,不再贅述。 

3 總線仲裁器的設計

    總線仲裁器的功能主要是根據單片機P3.5的總線請求信號,選擇當前可以使用總線的單片機,仲裁器的設計需做到單片機能夠公平競爭總線使用權。在兩個單片機競爭總線的情況下,用一個簡單的狀態機即可達到目的。狀態機state僅有兩個狀態S0和S1,P3.5為高電平時,不申請總線,狀態機保持原狀態;P3.5為低電平時,則根據當前請求總線的單片機,狀態機轉換到相應的狀態。如單片機同時申請使用總線,則保持當前的狀態不變。下面給出狀態轉換表(S0表示選擇單片機1,S1表示選擇單片機2): 

    state,   MCU1_P3.5,   MCU2_P3.5     => state; 

     S0,        0,           x          =>  S0; 

     S0,        1,           0          =>  S1; 

     S0,        1,           1          =>  S0; 

     S1,        x,           0          =>  S1; 

     S1,        0,           1          =>  S0; 

     S1,        1,           1          =>  S1; 

    當狀態機有狀態變換時,用FPGA產生一個脈寬約為1μs的低電平脈沖。這一信號接DSP外中斷腳,用于中斷DSP,并且將狀態機的當前狀態通過腳告知DSP,指明正在請求使用總線的單片機。 

    此外,如前所述,FPGA內部還設置一鎖存器,由P1.0的高跳變將P1口送出的HPI口控制信號鎖存。至于控制的兩個P3.7信號,在FPGA內部只需將兩信號相與即可。 

4 單片機與微機串口的硬件連線

    在IBM PC/XT微機系統中,其串口符合RS-232C接口標準。為提高抗干擾能力,RS-232C標準采用負邏輯,低電平在-5V~-15V之間(通常用-12V表示)為邏輯“1”,高電平在+5V~+15V之間(通常用+12V表示)為邏輯“0”。上述電平稱為EIA電平,它與TTL電平和CMOS電平不同。為了使AT89C2051能與微機進行串行通信,可以利用MAX232完成RS-232C電平與TTL電平的相互轉換。圖2給出了硬件連線圖。 

 

 

    單片機程序在完成對串口的工作模式和波特率設置等初始化過程后,即可開始與串口通信。通信方式有查詢方式和中斷方式兩種。由于查詢方式需CPU不斷查詢標志位,程序效率不高,故在單片機操作比較繁忙時通常采用中斷方式,具體的編程應用這里不再介紹。

    介紹了通過FPGA芯片作為總線仲裁器,實現微機雙串口各自通過AT89C2051與DSP HPI口通信的設計方法。該電路與采用專用芯片的電路相比,并不顯得復雜,比較實用。由于與DSP存儲器之間的數據交換完全由單片機發起,DSP就可以從數據的傳遞中解脫出來,去完成更復雜的控制和運算。實踐證明,這一電路能很好地達到我們的設計要求,在異步數據傳輸速率為9600bps情況下,可以可靠地實現微機雙串口與DSP之間的通信。 

參考文獻

1 TMS320C54x DSP Enhanced Peripherals,TI Reference Set,Volume 5(spru302).Texas Instrument,June,1999:4-1~4-36 

2 MAX232,MAX232I DUAL EIA-232 DRIVER/RECEIVER.Texas Instrument,1998 

3 TMS320VC5402 Fixed-Point Digital Signal Processor(sprs079d). Texas Instrument, January 2000 

4 AT89C2051,8-Bit Microcontroller with 2K Bytes FLASH.Atmel, 1997 

5 蔡美琴,張為民.MCS-51系列單片機系統及其應用.北京:高等教育出版社,1992

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲精品乱码久久久久久| 久久全球大尺度高清视频| 欧美精品国产精品日韩精品| 久久人人爽爽爽人久久久| 欧美11—12娇小xxxx| 夜夜爽夜夜爽精品视频| 好男人免费精品视频| 99精品热视频只有精品10| 久久亚洲综合色一区二区三区| 久久久之久亚州精品露出| 尤物精品在线| 欧美国产在线电影| 免费国产一区二区| 亚洲小说区图片区| 一区二区三区日韩欧美| 欧美大片91| 午夜亚洲影视| 老鸭窝91久久精品色噜噜导演| 国内精品久久久久久久影视蜜臀| 久久国产福利| 欧美日产在线观看| 国产精品视频第一区| 国产精品亚洲综合色区韩国| 国产精品盗摄一区二区三区| 亚洲精品美女久久7777777| 国产永久精品大片wwwapp| 亚洲国产精品国自产拍av秋霞| 国内精品模特av私拍在线观看| 欧美日本在线| 欧美系列亚洲系列| 亚洲午夜视频在线观看| 激情av一区| 欧美日韩三级| 亚洲国产成人porn| 欧美日韩1区2区3区| 亚洲精品国产精品乱码不99按摩| 国产婷婷成人久久av免费高清| 国产欧美日韩麻豆91| 亚洲高清视频中文字幕| 欧美在线看片| 欧美激情精品久久久久| 亚洲欧美另类中文字幕| 在线视频你懂得一区二区三区| 欧美精品日韩综合在线| 欧美日韩xxxxx| 亚洲愉拍自拍另类高清精品| 国产欧美三级| 在线成人www免费观看视频| 国产日韩精品一区| 国产真实乱子伦精品视频| 欧美日韩亚洲一区在线观看| 国产亚洲制服色| 美女爽到呻吟久久久久| 久久久久久伊人| 免费亚洲婷婷| 欧美va天堂va视频va在线| 欧美色偷偷大香| 国产精品免费网站在线观看| 欧美高清自拍一区| 欧美韩国日本一区| 久久久久9999亚洲精品| 亚洲视频999| 亚洲最新视频在线| 国产精品免费网站| 欧美日韩在线一区| 亚洲视频在线一区观看| 午夜国产精品影院在线观看| 欧美专区在线观看一区| 好看不卡的中文字幕| 亚洲国产高清aⅴ视频| 国产在线播放一区二区三区| 9久草视频在线视频精品| 久久另类ts人妖一区二区| 亚洲国产va精品久久久不卡综合| 六月婷婷久久| 99国产精品99久久久久久粉嫩| 精品动漫一区| 亚洲视频在线观看三级| 亚洲看片网站| 欧美日韩免费在线| 中文av字幕一区| 美女精品在线观看| 国产精品成人观看视频国产奇米| 激情欧美一区| 欧美三级午夜理伦三级中文幕| 性欧美大战久久久久久久久| 久久国产精品72免费观看| 国产亚洲欧美在线| 欧美久久久久久久久| 亚洲欧洲一二三| 亚洲欧美日本视频在线观看| 欧美大秀在线观看| 亚洲高清av| 亚洲高清视频一区二区| 午夜欧美电影在线观看| 国产精品magnet| 国产精品免费网站在线观看| 在线观看亚洲a| 亚洲国产人成综合网站| 亚洲深夜av| 99视频一区二区| 国产欧美日韩亚洲一区二区三区| 欧美—级高清免费播放| 一区二区三区产品免费精品久久75| 欧美日韩午夜精品| 1000部国产精品成人观看| 欧美成人激情在线| 美日韩精品视频| 日韩亚洲欧美在线观看| 韩日欧美一区| 亚洲欧美日韩在线一区| 国产亚洲成av人片在线观看桃| 欧美激情在线狂野欧美精品| 国产色爱av资源综合区| 亚洲福利视频三区| 久久久精品2019中文字幕神马| 久久综合精品国产一区二区三区| 国产专区欧美精品| 欧美激情无毛| 亚洲欧美日韩国产一区二区| 欧美二区乱c少妇| 一区二区欧美日韩| 在线日韩欧美视频| 亚洲午夜成aⅴ人片| 亚洲午夜免费视频| 亚洲一区二区三区中文字幕| 亚洲激情专区| 欧美一区亚洲一区| 欧美成人一区二区三区片免费| 91久久精品国产91性色| 一区在线视频观看| 欧美视频一区| 欧美激情一区二区三区全黄| 老牛国产精品一区的观看方式| 欧美大片免费观看| 亚洲国产一区二区精品专区| 久久精品一区二区| 一区在线播放视频| 美乳少妇欧美精品| 99精品国产福利在线观看免费| 在线成人黄色| 韩日视频一区| 米奇777超碰欧美日韩亚洲| 国产精品尤物福利片在线观看| 欧美怡红院视频一区二区三区| 国产精品二区二区三区| 欧美日韩久久精品| 老司机免费视频一区二区三区| 18成人免费观看视频| 国产精品成人一区二区三区吃奶| 老司机成人网| 激情五月综合色婷婷一区二区| 麻豆国产va免费精品高清在线| 国产精品分类| 欧美色偷偷大香| 欧美在线视频不卡| 国产欧美一区二区三区在线老狼| 午夜久久黄色| 欧美精品一区二区三区在线看午夜| 午夜在线电影亚洲一区| 亚洲国产一区二区视频| 日韩午夜av| 欧美成ee人免费视频| 久久婷婷久久一区二区三区| 国产精品久久久久一区| 国产午夜精品久久久久久久| 狠狠色狠狠色综合日日小说| 欧美精品久久一区| 欧美激情精品| av不卡在线观看| 榴莲视频成人在线观看| 久久久久国产一区二区三区| 一区二区免费看| 国产亚洲精品久久久久婷婷瑜伽| 亚洲三级免费| 一本一本久久a久久精品综合麻豆| 欧美福利一区二区| 精品动漫一区二区| 在线观看91久久久久久| 在线视频精品| 亚洲国产合集| 亚洲一区www| 久久国产精品高清| 好吊日精品视频| 麻豆精品视频在线观看| 国产午夜精品麻豆| 亚洲国产裸拍裸体视频在线观看乱了| 亚洲精品欧美极品| 一色屋精品视频在线看| 亚洲第一精品夜夜躁人人爽| 亚洲人成艺术| 极品少妇一区二区| 国产视频不卡| 亚洲精品国产精品国自产在线| 99在线精品视频在线观看| 亚洲欧美清纯在线制服| 国产伦精品一区二区三区视频孕妇| 在线播放日韩专区| 欧美日本在线一区| 老司机精品视频网站| 欧美一二三视频| 欧美永久精品| 国产精品老女人精品视频| 欧美日韩国产综合一区二区| 亚洲欧美激情精品一区二区| 亚洲视频999| 亚洲专区一区二区三区| 亚洲午夜精品久久| 一区二区精品在线观看| 亚洲美女av网站| 日韩一级黄色av| 这里只有精品在线播放| 一区二区国产在线观看| 久久在精品线影院精品国产| 韩日午夜在线资源一区二区| 亚洲综合精品一区二区| 久久精品国产99国产精品澳门| 一本色道久久99精品综合| 久久国产主播精品| 国产日产欧产精品推荐色| 欧美在线欧美在线| 欧美日韩一区二区三区四区五区| 一区二区三区在线观看视频| 日韩手机在线导航| 1000部国产精品成人观看| 亚洲综合欧美| 可以免费看不卡的av网站| 久久精品夜色噜噜亚洲a∨| 在线免费日韩片| 韩国欧美国产1区| 免费短视频成人日韩| 美女日韩欧美| 免费毛片一区二区三区久久久| 欧美日韩国产三区| 久久夜精品va视频免费观看| 久久99伊人| 午夜在线视频观看日韩17c| 国产欧美亚洲日本| 亚洲欧美激情在线视频| 狠狠色丁香婷综合久久| 在线综合亚洲欧美在线视频| 久久精品论坛| 国语自产偷拍精品视频偷| 一本色道久久加勒比88综合| 最新国产精品拍自在线播放| 久久精品国产免费观看| 狠狠色丁香久久综合频道| 久久精品国产亚洲精品| 国产精品影音先锋| 亚洲少妇中出一区| 欧美日韩美女| 先锋影音网一区二区| 久久精品首页| 蜜桃久久av一区| 国产欧美高清| 欧美+亚洲+精品+三区| 国产日韩在线一区二区三区| 欧美在线关看| 亚欧美中日韩视频| 久热精品视频在线免费观看| 久久国产精品一区二区三区四区| 1024亚洲| 欧美色网一区二区| 欧美成人国产一区二区| 另类尿喷潮videofree| 欧美精品一区三区| 国产精品黄视频| 亚洲欧美在线网| 欧美日本一区二区视频在线观看| 国产精品久久国产三级国电话系列| 国产一区二区三区在线观看免费| 欧美三级午夜理伦三级中文幕| 亚洲欧美日韩一区二区| 欧美一级视频免费在线观看| 国产精品国产三级国产aⅴ浪潮| 亚洲欧美中文日韩在线| 亚洲精品视频在线播放| 精品999网站| 国产精品无人区| 亚洲夫妻自拍| 影音欧美亚洲| 亚洲一区免费在线观看| 欧美三级乱人伦电影| 亚洲欧洲一区二区天堂久久| 午夜国产精品视频免费体验区| 国产亚洲一级高清| 黄色av一区| 欧美日韩妖精视频| 黄色一区二区三区四区| 国产精品对白刺激久久久| 亚洲永久免费精品| 亚洲午夜羞羞片| 91久久精品国产| 久久夜色精品国产噜噜av| 久久综合色8888| 一区二区三区在线免费观看| 午夜一级在线看亚洲| 红桃视频一区| 久久成人人人人精品欧| 欧美日本中文| 欧美激情视频在线免费观看 欧美视频免费一| 欧美日本韩国一区二区三区| 亚洲一区二区在线免费观看视频| 在线观看成人av| 亚洲丰满在线| 亚洲片国产一区一级在线观看| 亚洲区免费影片| 欧美日韩一区视频| 欧美精品麻豆| 午夜精品影院在线观看| 亚洲图片在线| 欧美另类亚洲| 国产日韩在线看| 精品88久久久久88久久久| 国产精品视频久久久| 伊人久久大香线蕉综合热线| 国模吧视频一区| 欧美日韩成人一区二区三区| 亚洲国产天堂久久综合| 亚洲一级一区| 亚洲精品视频在线播放| 日韩视频一区二区| 亚洲二区视频| 国产精品久久国产愉拍| 美女黄毛**国产精品啪啪| 欧美日韩在线大尺度| 欧美专区第一页| 亚洲一区bb|