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

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

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

基于DSP芯片實現(xiàn)異步串行通信系統(tǒng)的軟硬件設(shè)計

電子設(shè)計 ? 來源:信息化研究 ? 作者:齊崇英,陳西宏, ? 2021-06-21 11:28 ? 次閱讀

作者:齊崇英,陳西宏,蘇紅潮

1 引言

TMS320C3x DSP是目前國內(nèi)應(yīng)用比較廣泛的DSP芯片之一,它提供了可與外部串行設(shè)備通信的串行接口,支持8/16/24/32位數(shù)據(jù)交換,為設(shè)計A/D、D/A接口電路提供了很大的靈活性。然而,當(dāng)DSP系統(tǒng)和PC機進(jìn)行通信時,如何設(shè)計合理的接口電路和通信軟件,將DSP處理后的數(shù)據(jù)實時準(zhǔn)確地傳輸給PC機,同時使PC機實時有效地控制DSP,成為DSP系統(tǒng)設(shè)計中的重要一環(huán)。本文采用異步串行通信(Universal Asychronous Receiverand Transmitter,UART),較好地解決了DSP和PC機通信這一問題。

2 TMS320C3x簡介

TMS320C3x(以下簡稱C3x)是TI(TexasInstruments)公司生產(chǎn)的第三代產(chǎn)品,也是第一代浮點DSP芯片,包括C30、C31、C32和C33四種,是TMS320系列中性能價格比較高的一種浮點DSP芯片,具有32位的浮點精度,總共有三套總線,即程序總線、數(shù)據(jù)總線和DMA總線,取指、讀寫數(shù)據(jù)以及DMA操作可并行進(jìn)行,可以尋址16M字的空間。其中C31是C30的簡化和改進(jìn)型,它去掉了擴展總線和一個串口,降低了芯片的成本,并且在硬件上增加了一個非常有用的功能,即程序引導(dǎo)功能(Bootloader),使其程序可以從低速EPROM、PROM或串行口裝入到系統(tǒng)的高速RAM中全速運行 。C32和C33是C31的進(jìn)一步簡化和改進(jìn),其中C32片內(nèi)RAM減為512字,以降低成本。C33片內(nèi)RAM為34K ,需3.3V電源。

3DSP系統(tǒng)結(jié)構(gòu)框圖

圖1為整個DSP系統(tǒng)的硬件框圖。

poYBAGDQCW2ATpo6AACoKShKQ6I534.png

其中,TLC32044是TI公司生產(chǎn)的話帶模數(shù)接口芯片(簡稱AIC)TLC32040系列中的一種,它集A/D、D/A于一體,具有兩個模擬輸入口和一個模擬輸出口,最高采樣頻率為19.2kHz。MC6850為Motorola公司生產(chǎn)的異步串行接口芯片(UART),它可以進(jìn)行8位或9位數(shù)據(jù)的發(fā)送和接收,并可選擇÷1、÷16、÷64三種不同的時鐘模式。DSP通過對MC6850的控制寄存器初始化來設(shè)置異步通信協(xié)議,然后MC6850對DSP的并行數(shù)據(jù)和PC機的串行數(shù)據(jù)按照協(xié)議進(jìn)行并串轉(zhuǎn)換。MAX232芯片進(jìn)行TTL電平和RS-232電平之間的轉(zhuǎn)換。外部信號經(jīng)A/D轉(zhuǎn)換進(jìn)入DSP,DSP對其進(jìn)行處理后,經(jīng)UART送入PC機,由PC機對數(shù)據(jù)進(jìn)行處理和存儲。同時,PC機將控制信號或待發(fā)數(shù)據(jù)經(jīng)UART送入DSP,對DSP實施控制或經(jīng)DSP處理后送入D/A,經(jīng)低通濾波后還原為模擬信號。

4DSP系統(tǒng)通信軟件

傳輸時,發(fā)送雙方應(yīng)按照共同遵循的協(xié)議進(jìn)行初始化。通信協(xié)議采用起止式異步通信協(xié)議,下面分別是DSP對MC6850和上層PC機軟件對串行口初始化操作的源程序代碼。

4.1 MC6850異步串口通信程序設(shè)計

加電之后,6850處于閉鎖狀態(tài),以避免輸出錯誤的發(fā)送。使用前,必須通過程序?qū)⒖刂萍拇嫫鞯腃R0和CR1置“1”,以進(jìn)行主復(fù)位,使其從閉鎖狀態(tài)釋放。然后就可以對控制寄存器編程,以確定6850的時鐘分頻、數(shù)據(jù)格式和發(fā)送與接收控制功能等。以下是在Code Composer集成開發(fā)環(huán)境下,用C語言實現(xiàn)對6850的初始化設(shè)置和發(fā)送數(shù)據(jù)程序。

pYYBAGDQCWWAMfRVAAFNkitk8D8943.png

4.2PC機通信程序設(shè)計

在VC++6.0環(huán)境下,利用PC機進(jìn)行串口通信的常用方法有兩種:(1)調(diào)用Windows API(Application Program Interface)函數(shù);(2)使用ActiveX的MSComm控件。第一種方法需聲明及調(diào)用許多API函數(shù),十分煩瑣。故本文采用第二種方法。

PC機通信的具體實現(xiàn)過程如下:

第一步,啟動VC++6.0,新建一個基于對話框的應(yīng)用程序TxRx。

第二步,在對話框中插入串口控件,增加新的靜態(tài)文本、編輯框和按鈕控件,并為它們添加相應(yīng)的變量。其屬性如下:

poYBAGDQCSWAPOOMAAC0V3jEBEA070.png

其次,需要初始化串口參數(shù),在OnInitiDialog()函數(shù)中TODO語句后加入以下代碼:

poYBAGDQCTOAXv30AADufKbyPuU942.png

//先預(yù)讀緩沖區(qū)以清除殘留數(shù)據(jù)

接著,為發(fā)送按鈕IDC-TRSMITT添加消息處理函數(shù)OnTransmitt(),內(nèi)容如下:

poYBAGDQCUWAMtkIAAC0Fnf6UZs484.png

下面舉例說明如何在Transmitt()函數(shù)中實現(xiàn)發(fā)送一幀數(shù)據(jù)。

pYYBAGDQCV2AEqYwAAGHZRlO32g519.png

5結(jié)束語

以上是DSP與PC機之間異步串行通信的軟硬件解決方案,目前此方案已應(yīng)用于短波通信智能終端數(shù)據(jù)傳輸系統(tǒng)中,運行穩(wěn)定,通信性能良好,較好地解決了DSP和PC機的通信問題。

責(zé)任編輯:gt

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

    關(guān)注

    553

    文章

    7998

    瀏覽量

    348899
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50812

    瀏覽量

    423574
  • 通信系統(tǒng)
    +關(guān)注

    關(guān)注

    6

    文章

    1190

    瀏覽量

    53348
收藏 人收藏

    評論

    相關(guān)推薦

    利用異步通信芯片TL16C750實現(xiàn)DSP與PC機的高速串行

    利用異步通信芯片TL16C750實現(xiàn)DSP與PC機的高速串行通[hide][/hide]
    發(fā)表于 06-17 09:49

    支持過程級動態(tài)軟硬件劃分的RSoC設(shè)計與實現(xiàn)

    系統(tǒng)(RSoC),提出了一種過程級硬件透明編程模型,給出了過程級的硬件封裝方案;在分析軟硬件過程根本區(qū)別的基礎(chǔ)上,針對硬件過程開發(fā)了專門的管
    發(fā)表于 05-28 13:40

    DSP與PC機串行通信接口硬件設(shè)計

    過程中,需要為它提供一個人機接口或上層控制接口,以便于觀察控制效果或傳遞必要的控制信息。因此,實現(xiàn)tms320f240與pc之間串行通信接口的設(shè)計方法,具有較高的實用價值。串行
    發(fā)表于 06-12 05:00

    怎么實現(xiàn)動感系統(tǒng)的總體構(gòu)想及其軟硬件設(shè)計?

    新型車輛模擬駕駛訓(xùn)練系統(tǒng)的組成及工作原理是什么怎么實現(xiàn)動感系統(tǒng)的總體構(gòu)想及其軟硬件設(shè)計?
    發(fā)表于 05-12 06:15

    如何去實現(xiàn)RCC系統(tǒng)時鐘的軟硬件設(shè)計呢

    RCC時鐘樹是由哪些部分組成的?如何去實現(xiàn)RCC系統(tǒng)時鐘的軟硬件設(shè)計呢?
    發(fā)表于 11-10 07:20

    DSP芯片TMS320F206異步串行口的應(yīng)用

    在TMS320F206多處理器和主從機應(yīng)用系統(tǒng)中,可以通過異步串行口實現(xiàn)DSP芯片之間或DSP
    發(fā)表于 04-23 16:06 ?43次下載

    基于DSP的電源控制系統(tǒng)軟硬件開發(fā)

    介紹了一種基于DSP 的逆變電源控制系統(tǒng),詳細(xì)闡述了系統(tǒng)組成結(jié)構(gòu)和軟硬件設(shè)計。該系統(tǒng)采用TMS320F2812 作為主控制器,最大程度的減少
    發(fā)表于 07-30 10:23 ?37次下載

    多路異步串行通信系統(tǒng)在光纖陀螺組合中的設(shè)計與實現(xiàn)

    DSP在與多個外設(shè)進(jìn)行通信時,需要擴展異步串行通信接口。以TMS320C6711為例,采用ST16C554
    發(fā)表于 03-11 13:22 ?821次閱讀
    多路<b class='flag-5'>異步</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>系統(tǒng)</b>在光纖陀螺組合中的設(shè)計與<b class='flag-5'>實現(xiàn)</b>

    TMS320C3x DSP和PC機的異步串行通信設(shè)計

    【摘 要】在簡要介紹TMS320C3x系列芯片的基礎(chǔ)上,主要介紹了在數(shù)字信號處理系統(tǒng)中,DSP與上位PC機異步串行
    發(fā)表于 05-21 21:38 ?1141次閱讀
    TMS320C3x <b class='flag-5'>DSP</b>和PC機的<b class='flag-5'>異步</b><b class='flag-5'>串行</b><b class='flag-5'>通信</b>設(shè)計

    基于DSP串行通信在變頻調(diào)速系統(tǒng)中的應(yīng)用

    基于DSP串行通信在變頻調(diào)速系統(tǒng)中的應(yīng)用 介紹了基于專用DSP芯片ADMC328的
    發(fā)表于 10-17 11:29 ?782次閱讀
    基于<b class='flag-5'>DSP</b>的<b class='flag-5'>串行</b><b class='flag-5'>通信</b>在變頻調(diào)速<b class='flag-5'>系統(tǒng)</b>中的應(yīng)用

    基于TL16C752B的DSP通用異步串行接口設(shè)計

    摘要:介紹了浮點DSP處理器TMS320C33和異步串行接口協(xié)議芯片TL16C752B的特點,分析了其接口信號及時序?;趶?fù)雜可編程邏輯器件(CPLD)設(shè)計了
    發(fā)表于 02-24 22:42 ?98次下載

    基于DSP的OLED顯示器軟硬件設(shè)計及實現(xiàn)

    給出了一種基于DSP控制的OLED顯示屏設(shè)計方案。首先針對高速率DSP與慢外設(shè)OLED讀寫數(shù)據(jù)時序的不匹配,提出了一種更為經(jīng)濟實用的軟硬件處理方案。其次針對便攜式系統(tǒng)顯示信息量大,
    發(fā)表于 04-17 15:59 ?86次下載

    基于USB的串行通信軟硬件設(shè)計

    本文是基于USB的串行通信軟硬件設(shè)計的詳細(xì)介紹
    發(fā)表于 10-17 17:38 ?127次下載
    基于USB的<b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>軟硬件</b>設(shè)計

    USB的串行通信軟硬件設(shè)計

    USB的串行通信軟硬件設(shè)計
    發(fā)表于 09-04 10:08 ?14次下載
    USB的<b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>軟硬件</b>設(shè)計

    基于FPGA芯片軟硬件平臺的使用

    基于FPGA芯片軟硬件平臺的使用
    發(fā)表于 07-01 09:35 ?20次下載