資料介紹
1 引言
隨著信息技術和計算機技術的飛速發展,DSP技術也正以日新月異的速度應用到國民經濟的各個領域。
TMS320LF240X系列DSP是美國德州儀器(TI)公司推出的一款16位定點數字信號處理器,它采用程序總線、數據總線分別獨立并具有多條總線的哈佛結構體系,其數據和程序有各自獨立的存儲空間,這樣的結構使數據吞吐率有很大提高;芯片內部包含多個處理單元;16×16位硬件乘法器;廣泛采用深度流水線技術,以及特有的DSP指令,使得取址、譯碼和處理可同時進行,從而減少了指令執行時間,增強了DSP的處理能力;具有強大的內部事件管理器、10位A/D采樣功能、I/O端口等豐富的外設接口。因此 DSP適用于高速、實時性的數據處理應用系統。
對于某一控制任務可能需要多個DSP相互合作完成或DSP作為主控制器來控制其他外圍器件,這樣DSP就需要和其他控制器頻繁交換數據,此時,我們可以通過SPI口進行器件之間的高速數據交換,這種通信方式比起通過串行通訊接口(SCI)速度提高了近一倍。
2. SPI串行外設接口
DSP的串行外設接口(SPI)是一個高速同步串行輸入/輸出(I/O)口,它能使可編程長度(1“16位)的串行位流以可編程的位傳輸速率輸入或輸出器件。SPI口主要 通過4根線來完成通信,即:時鐘線(SPICLK),主機輸出/從機輸入線(SPISIMO),主機輸入/從機輸出線(SPISOMI),SPI從發送使能 。它主要用于主從式系統中,一個主控制器可以帶動幾個從器件,或者一個主控制器可以和幾個其他控制器構成多機系統,從器件的時鐘是由主機給出,主機通過從發送使能信號來使同一時刻只有一個從器件和主機交換數據。從器件只有在主機發送命令時才向主機傳送數據。
由于SPI接口是串行傳輸數據,所以要求通信兩端的時序必須匹配。TMS320LF2407的SPI接口有4種時序,由芯片的SPICLK寄存器的4種時鐘模式確定。這4種模式規定同步移出和移入數據位與時鐘上/下觸發沿及相位是否延遲的關系。
模式0――上升沿觸發無延時:上升沿發送數據,緊接的下降沿接收數據。
模式1――上升沿觸發有延時:上升沿前半個周期和緊接的下降沿之間發送數據,上升沿接收數據。
模式2――下降沿觸發無延時:下降沿發送數據,緊接的上升沿接收數據。
模式3――下降沿觸發有延時:下降沿前半個周期和緊接的上升沿之間發送數據,下降沿接收數據。
DSP可以根據系統中與之通信的芯片的具體特點來選擇一個工作模式。
3. 硬件電路設計
語音模塊的硬件電路設計必須保證語音信號輸出的實時性,這里我們采用TI DSP系列的TMS320LF2407(以下簡稱2407),它高達30MIPS的處理能力足以滿足語音的實時要求。語音采集和輸出芯片采用的是TLC320AD50C(以下簡稱AD50),它是一款單5V電源供電、16位A/D和D/A高分辨率的可編程信號轉換器。語音信號實時處理系統的主要功能是將話音通過MIC輸入,然后經過差分放大、模擬帶通濾波后,輸入AD50,經采樣,將數據再送入DSP中進行處理,最后再將處理完的語音數據經DAC,放大輸出,最后驅動喇叭發聲。
AD50是差分器件,從MIC輸入的信號Vaudio經集成運放后變為差分輸入2N*Vaudio,在對模擬信號進行數據采集以前,需要經過帶通濾波器濾除帶外雜波。由于話音的頻率一般在3400Hz以下,而工頻干擾一般為50Hz左右。所以設計了通帶范圍為300Hz~3400Hz的帶通濾波器。該濾波器由兩級二階低通、兩級二階高通級聯組成,采用多級反饋形式,具有巴特沃斯(butterworth)帶內平坦的特性,這樣可保證300~3400Hz的語音信號不失真地通過濾波器,不僅濾除帶外的低頻信號,以減少帶外工頻等分量的干擾,還將濾除帶外的高次諧波,減少由于采樣引起的混疊失真。
設計中AD50的功能實現是通過對其內部的4個寄存器進行編程來完成的,對這4個寄存器的訪問與其他一些接口電路有所不同,它不是通過地址線選通寄存器,而是通過串行輸入口(DIN)在二次通信的時刻將控制字輸入到AD50中,對4個寄存器進行初始化。通過這種串行接口的初始化,可以達到對AD50進行編程的目的,可編程的功能還包括:復位、掉電、通信協議、信號采樣率、增益控制等。
AD50和DSP交換數據時,數據流和控制流在串行線上一位一位的傳輸,我們通過分時復用傳輸線即一次串行通信和請求二次串行通信的方法來分辨是數據流還是控制流。使一次通信時DIN端口輸入的16bit數據的LSB位為高,這樣在特定模式下就發出了二次通信的請求。在二次通信過程中,16位控制字DIN引腳輸入到AD50中來,對它的4個寄存器進行寫操作,從而實現AD50的各個可編程控制。 基于SPI串行外設接口的特點,在硬件電路設計時考慮到采用的語音處理芯片AD50和2407的時序,配置AD50為主動模式,2407的SPI為從動模式。AD50的基準時序信號MCLK由DSP的系統時鐘輸出CLKOUT提供,AD50通過內部的PLL分頻器將MCLK信號變成SCLK信號,SCLK信號即控制著串行數據流中字符內部位與位之間的定時關系。由于AD50不是標準的串行外設接口,根據 SPICLK端在從動方式下正常工作所需接收的信號波形,將AD50的FS引腳經非門引出,和SCLK相與,它們輸出的時序信號和SPI的SPICLK端相連以達到控制兩者時序同步的目的。
由于AD50是SPI通信接口的主動器件,為了更好地控制AD50,可將DSP的任意一個沒有用到的通用I/O端口作為AD50的使能口,和AD50的PWDOWN端口相連,通過這個通用I/O口來控制AD50的啟動和關閉。SPI的使能端SPISTE所要求的使能信號可以由AD50的FSD端口獲得,通過對AD50的軟件初始化,將FSD輸出的使能信號略提前于一次通信的第一位數據的傳送時刻,即可以實現在AD50和SPI傳輸數據的前一時刻將SPI使能。
4.軟件設計
當系統要對語音信號進行處理時,首先要正確地初始化SPI和AD50。由于AD50屬于DSP的外圍器件,且不是標準的通信串口,所以不能象SPI一樣通過直接向各寄存器置入初始化值而完成,而必須在AD50的二次通信時將原來置于SPI輸出緩沖寄存器里的值,通過串行傳輸線送入AD50的串行輸入端,以完成對AD50的初始化。
SPI初始化如下:
LDP #DP_PF2
LACL MCRB
OR #003CH
;配置SPI各個引腳為特殊功能方式
LDP #DP_PF1
SPLK #000FH,SPICCR
;配置SPI寄存器允許初始化,16位數據輸出
SPLK #0003H,SPICTL
;從動方式,時鐘方式為無延時的上升沿
SPLK #0002H,SPIBRR
;SPI波特率為10MHz (根據采樣率確定波特率)
SPLK #008FH,SPICCR
;初始化結束,并關閉初始化使能位
在初始化AD50過程中,首先向AD50的DIN端口發送0000H,確保第二次向AD50發送字符時,AD50處于一次通信,然后發送一個0001引發二次通信,再分四次把命令字寫入AD50,程序如下:
SPLK #0000H,SPIDAT
NOP
XMIT_RDY0:
;確保第二次向AD50發送字符時,AD50處于一次通信
BIT SPISTS,BIT6 ;等待數據
BCND XMIT_RDY1,NTC ;發送完
NOP
LACL SPIRXBUF
NOP
SPLK #0001H,SPIDAT ;開始初始化寄存器2
XMIT_RDY1:
BIT SPISTS,BIT6 ;等待數據
BCND XMIT_RDY1,NTC
;發送完,完成對AD的二次通信請求
NOP
LACL SPIRXBUF
NOP
SPLK #0210H,SPIDAT
;正式初始化寄存器2,(16 BIT ADC MODE )
XMIT_RDY1_1:
BIT SPISTS,BIT6
;等待數據
BCND XMIT_RDY1_1,NTC
;發送完,完成對寄存器2的初始化
NOP
LACL SPIRXBUF
SPI將它要發送的數據放在SPIDAT(一個移位寄存器)內,當SPI的使能引腳SPISTE變低,且SPICLK時鐘到來時,SPI便將SPIDAT內的數據通過移位的方式移出該寄存器,同時也以移位的方式將AD50發送的串行數據移入該寄存器。接收完后,SPI將接收到的數據復制到接收緩沖器SPIRXBUF,并將中斷標志位置為1。DSP可以通過查詢的方式不斷查詢這個位,當其變為1時,即表明一次數據傳輸已經結束,此時可以去處理這個數據。
DSP對語音信號進行處理時,可依據需要設計一些濾波器對其進行濾波處理,如FIR、IIR、FFT等。采用以上的硬件電路設計使得濾波器的頻率可調,大大擴展了該語音處理模塊的應用范圍
?
隨著信息技術和計算機技術的飛速發展,DSP技術也正以日新月異的速度應用到國民經濟的各個領域。
TMS320LF240X系列DSP是美國德州儀器(TI)公司推出的一款16位定點數字信號處理器,它采用程序總線、數據總線分別獨立并具有多條總線的哈佛結構體系,其數據和程序有各自獨立的存儲空間,這樣的結構使數據吞吐率有很大提高;芯片內部包含多個處理單元;16×16位硬件乘法器;廣泛采用深度流水線技術,以及特有的DSP指令,使得取址、譯碼和處理可同時進行,從而減少了指令執行時間,增強了DSP的處理能力;具有強大的內部事件管理器、10位A/D采樣功能、I/O端口等豐富的外設接口。因此 DSP適用于高速、實時性的數據處理應用系統。
對于某一控制任務可能需要多個DSP相互合作完成或DSP作為主控制器來控制其他外圍器件,這樣DSP就需要和其他控制器頻繁交換數據,此時,我們可以通過SPI口進行器件之間的高速數據交換,這種通信方式比起通過串行通訊接口(SCI)速度提高了近一倍。
2. SPI串行外設接口
DSP的串行外設接口(SPI)是一個高速同步串行輸入/輸出(I/O)口,它能使可編程長度(1“16位)的串行位流以可編程的位傳輸速率輸入或輸出器件。SPI口主要 通過4根線來完成通信,即:時鐘線(SPICLK),主機輸出/從機輸入線(SPISIMO),主機輸入/從機輸出線(SPISOMI),SPI從發送使能 。它主要用于主從式系統中,一個主控制器可以帶動幾個從器件,或者一個主控制器可以和幾個其他控制器構成多機系統,從器件的時鐘是由主機給出,主機通過從發送使能信號來使同一時刻只有一個從器件和主機交換數據。從器件只有在主機發送命令時才向主機傳送數據。
由于SPI接口是串行傳輸數據,所以要求通信兩端的時序必須匹配。TMS320LF2407的SPI接口有4種時序,由芯片的SPICLK寄存器的4種時鐘模式確定。這4種模式規定同步移出和移入數據位與時鐘上/下觸發沿及相位是否延遲的關系。
模式0――上升沿觸發無延時:上升沿發送數據,緊接的下降沿接收數據。
模式1――上升沿觸發有延時:上升沿前半個周期和緊接的下降沿之間發送數據,上升沿接收數據。
模式2――下降沿觸發無延時:下降沿發送數據,緊接的上升沿接收數據。
模式3――下降沿觸發有延時:下降沿前半個周期和緊接的上升沿之間發送數據,下降沿接收數據。
DSP可以根據系統中與之通信的芯片的具體特點來選擇一個工作模式。
3. 硬件電路設計
語音模塊的硬件電路設計必須保證語音信號輸出的實時性,這里我們采用TI DSP系列的TMS320LF2407(以下簡稱2407),它高達30MIPS的處理能力足以滿足語音的實時要求。語音采集和輸出芯片采用的是TLC320AD50C(以下簡稱AD50),它是一款單5V電源供電、16位A/D和D/A高分辨率的可編程信號轉換器。語音信號實時處理系統的主要功能是將話音通過MIC輸入,然后經過差分放大、模擬帶通濾波后,輸入AD50,經采樣,將數據再送入DSP中進行處理,最后再將處理完的語音數據經DAC,放大輸出,最后驅動喇叭發聲。
AD50是差分器件,從MIC輸入的信號Vaudio經集成運放后變為差分輸入2N*Vaudio,在對模擬信號進行數據采集以前,需要經過帶通濾波器濾除帶外雜波。由于話音的頻率一般在3400Hz以下,而工頻干擾一般為50Hz左右。所以設計了通帶范圍為300Hz~3400Hz的帶通濾波器。該濾波器由兩級二階低通、兩級二階高通級聯組成,采用多級反饋形式,具有巴特沃斯(butterworth)帶內平坦的特性,這樣可保證300~3400Hz的語音信號不失真地通過濾波器,不僅濾除帶外的低頻信號,以減少帶外工頻等分量的干擾,還將濾除帶外的高次諧波,減少由于采樣引起的混疊失真。
設計中AD50的功能實現是通過對其內部的4個寄存器進行編程來完成的,對這4個寄存器的訪問與其他一些接口電路有所不同,它不是通過地址線選通寄存器,而是通過串行輸入口(DIN)在二次通信的時刻將控制字輸入到AD50中,對4個寄存器進行初始化。通過這種串行接口的初始化,可以達到對AD50進行編程的目的,可編程的功能還包括:復位、掉電、通信協議、信號采樣率、增益控制等。
AD50和DSP交換數據時,數據流和控制流在串行線上一位一位的傳輸,我們通過分時復用傳輸線即一次串行通信和請求二次串行通信的方法來分辨是數據流還是控制流。使一次通信時DIN端口輸入的16bit數據的LSB位為高,這樣在特定模式下就發出了二次通信的請求。在二次通信過程中,16位控制字DIN引腳輸入到AD50中來,對它的4個寄存器進行寫操作,從而實現AD50的各個可編程控制。 基于SPI串行外設接口的特點,在硬件電路設計時考慮到采用的語音處理芯片AD50和2407的時序,配置AD50為主動模式,2407的SPI為從動模式。AD50的基準時序信號MCLK由DSP的系統時鐘輸出CLKOUT提供,AD50通過內部的PLL分頻器將MCLK信號變成SCLK信號,SCLK信號即控制著串行數據流中字符內部位與位之間的定時關系。由于AD50不是標準的串行外設接口,根據 SPICLK端在從動方式下正常工作所需接收的信號波形,將AD50的FS引腳經非門引出,和SCLK相與,它們輸出的時序信號和SPI的SPICLK端相連以達到控制兩者時序同步的目的。
由于AD50是SPI通信接口的主動器件,為了更好地控制AD50,可將DSP的任意一個沒有用到的通用I/O端口作為AD50的使能口,和AD50的PWDOWN端口相連,通過這個通用I/O口來控制AD50的啟動和關閉。SPI的使能端SPISTE所要求的使能信號可以由AD50的FSD端口獲得,通過對AD50的軟件初始化,將FSD輸出的使能信號略提前于一次通信的第一位數據的傳送時刻,即可以實現在AD50和SPI傳輸數據的前一時刻將SPI使能。
4.軟件設計
當系統要對語音信號進行處理時,首先要正確地初始化SPI和AD50。由于AD50屬于DSP的外圍器件,且不是標準的通信串口,所以不能象SPI一樣通過直接向各寄存器置入初始化值而完成,而必須在AD50的二次通信時將原來置于SPI輸出緩沖寄存器里的值,通過串行傳輸線送入AD50的串行輸入端,以完成對AD50的初始化。
SPI初始化如下:
LDP #DP_PF2
LACL MCRB
OR #003CH
;配置SPI各個引腳為特殊功能方式
LDP #DP_PF1
SPLK #000FH,SPICCR
;配置SPI寄存器允許初始化,16位數據輸出
SPLK #0003H,SPICTL
;從動方式,時鐘方式為無延時的上升沿
SPLK #0002H,SPIBRR
;SPI波特率為10MHz (根據采樣率確定波特率)
SPLK #008FH,SPICCR
;初始化結束,并關閉初始化使能位
在初始化AD50過程中,首先向AD50的DIN端口發送0000H,確保第二次向AD50發送字符時,AD50處于一次通信,然后發送一個0001引發二次通信,再分四次把命令字寫入AD50,程序如下:
SPLK #0000H,SPIDAT
NOP
XMIT_RDY0:
;確保第二次向AD50發送字符時,AD50處于一次通信
BIT SPISTS,BIT6 ;等待數據
BCND XMIT_RDY1,NTC ;發送完
NOP
LACL SPIRXBUF
NOP
SPLK #0001H,SPIDAT ;開始初始化寄存器2
XMIT_RDY1:
BIT SPISTS,BIT6 ;等待數據
BCND XMIT_RDY1,NTC
;發送完,完成對AD的二次通信請求
NOP
LACL SPIRXBUF
NOP
SPLK #0210H,SPIDAT
;正式初始化寄存器2,(16 BIT ADC MODE )
XMIT_RDY1_1:
BIT SPISTS,BIT6
;等待數據
BCND XMIT_RDY1_1,NTC
;發送完,完成對寄存器2的初始化
NOP
LACL SPIRXBUF
SPI將它要發送的數據放在SPIDAT(一個移位寄存器)內,當SPI的使能引腳SPISTE變低,且SPICLK時鐘到來時,SPI便將SPIDAT內的數據通過移位的方式移出該寄存器,同時也以移位的方式將AD50發送的串行數據移入該寄存器。接收完后,SPI將接收到的數據復制到接收緩沖器SPIRXBUF,并將中斷標志位置為1。DSP可以通過查詢的方式不斷查詢這個位,當其變為1時,即表明一次數據傳輸已經結束,此時可以去處理這個數據。
DSP對語音信號進行處理時,可依據需要設計一些濾波器對其進行濾波處理,如FIR、IIR、FFT等。采用以上的硬件電路設計使得濾波器的頻率可調,大大擴展了該語音處理模塊的應用范圍
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 基于DSP TMS320LF2407的溫度控制系統 8次下載
- 基于TMS320LF2407 DSP的開關磁阻電機 14次下載
- tms320lf2407 16次下載
- TMS320LF2407的復位問題分析 13次下載
- TMS320LF2407芯片數字逆變控制器的建模與仿真 16次下載
- 基于TMS320LF2407的電力暫態信號采集系統 9次下載
- 基于TMS320LF2407的控制電路 13次下載
- 基于TMS320LF2407的模糊控制直流調速系統 3次下載
- 基于TMS320LF2407的永磁同步電機控制 17次下載
- 基于TMS320LF2407控制器的實時多任務系統研究 15次下載
- 基于TMS320LF2407的模糊控制直流調速系統 5次下載
- 基于TMS320LF2407的步進電機控制系統 4次下載
- 基于TMS320LF2407的SVPWM變頻調速控制 3次下載
- TMS320LF2407 DSP結構、原理及應用實驗指導書
- 內嵌CAN控制器的TMS320LF2407 的CAN通信實例
- 基于DSP實現異步串行數據通訊系統的應用設計 2405次閱讀
- 基于TMS320LF2407 DSP芯片實現機車蓄電池充電系統的設計 1579次閱讀
- 基于TMS320LF2407型DSP實現電動汽車內實時通訊的CAN總線通訊技術方案 991次閱讀
- CAN集散式電源控制系統通信實現設計 1048次閱讀
- 基于DSP芯片TMS320LF2407控制的數字開關電源綜述 5582次閱讀
- 三大電機控制方案之DSP篇(1):TMS320F28335 5.5w次閱讀
- 基于TMS320LF2407A控制SED1335液晶顯示方案 2781次閱讀
- 基于DSP的模塊化教育機器人硬件系統方案 2140次閱讀
- 基于SVPWM算法的變頻調速系統設計方案 4800次閱讀
- 基于DSP的自適應濾波器的設計方案 8236次閱讀
- 基于DSP的智能電源系統設計 5347次閱讀
- TMS320LF2407A實現教育機器人硬件平臺 1738次閱讀
- 基于DSP芯片TMS320LF2407的天然氣發動機控制系統 1478次閱讀
- 基于TI DSP系統的心電監護儀系統設計 1385次閱讀
- TMS320LF2407 DSP控制器的串行通信設計 2217次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多