數字信號處理器(Digital Signal Processor,DSP)在圖形圖像處理、高精度測量控制、高性能儀器儀表等眾多領域得到越來越廣泛的應用,實際運用中,通常須將DSP采集處理后的數據傳送到PC機,然后進行存儲和處理。
T1公司的TMS320VC33微處理器具有性價比高,同時,該芯片的I/O電平、字長、運行速度、串口功能具有大多數DSP的共同特點。本文針對TMS320VC33與PC RS-232的通訊,分析三種具體的接口電路和軟件設計方法,實現高速DSP與低速設備的通訊:①通過TMS320VC33的通用I/O口實現通信電感器 設計;②通過TMS320VC33中可設置為通用I/O的串行引腳實現通信;③直接利用TMS320VC33的串口功能實現通信,在硬件和軟件設計的基礎上,完成相關試驗和調試,并達到預期的效果。
采用通用I/O口實現
PC的RS-232接口按照設定的固定波特率傳送,RS-232串行口進行通信采用三線式接法,即RX(數據接收)、TX(數據發送)、GND(地)三個引腳,PC機按幀格式發送、接收數據,一幀通常包括1位起始位(0電平)、5-8位數據位、1位(或無)校驗位、1位或1位半停止位(1電平),起始位表示數據傳送開始,數據位為低位在前、高位在后,停止位表示一幀數據結束。
TMS320VC33微處理器的串口幀格式沒有起始位和停止位,只有數據位,且數據位為高位在前、低位在后。利用TMS320VC33微處理器的通用I/O引腳實現串行通信時,須依據RS232的通信協議并結合DSP硬件資源編寫相應的DSP程序。
1.硬件設計
TMS320VC33微處理器共有10個引腳可配置為通用I/O口,其中XFO、XFl為專用的通用I/O口,通過軟件設計可實現XFO、XFl專用I/O口與RS232的串行通信,電路結構如圖1所示。
本文選用MAX3232E作為RS232C電平與TTL電平的轉換芯片,R1in、T1out為RS232C電平,R1out、T1in為TTL電平,TMS320VC33微處理器的INT2引腳為外部中斷腳,R10ut同時連接到INT2和XF0,即可利用傳輸的第一位觸發TMS320VC33微處理器的外部中斷。
2.軟件設計
貼片電感 假設系統已經完成初始化,數據接收流程如圖2所示,設傳輸速率為9600bit/s,一個起始位(0)、8位數據位、一個終止位(1)。數據傳輸時對起始位定時半位的時間,數據位第一位以后的定時周期設置為大電流電感一個位的時間,保證每一位數據都塑封電感在中間采樣,與傳統RS232串口傳輸方式不同,有利于降低傳輸的誤碼率。
數據電感生產廠家傳輸時,先判斷Rx是否為OAh,即判斷是不是傳輸起始位,若Rx=OAh,表明數據開始傳輸;接著判斷XF0管腳的狀態是否為O,若XF0=1,則數據傳輸錯誤,重新接收下一個數據;若XF=0,則表示數據開始正常傳輸;然后將Rx-1,同步刷新Rx中的內容,即Rx=Rx-1;同時,在TIMER0的周期寄存器和計數寄存器中存入定時整個位的時間常數,開定時器0的中斷,定時時間一到,程序進入TIMER0的中斷服務子程序,再判斷Rx是不是終止位,若Rx為終止位,則開始繼續接收新的數據,打開INT2,將TIMER0周期寄存器和計數寄存器中存放半位的時間參數;若Rx不是終止位,則繼續接收數據位,直到Rx接收到終止位。
數據發送程序與數據接收程序原理相同,此處略。
串口引腳作為通用I/O口實現
1.硬件設計
TMS320VC33微處理器的串口引腳也可作為通用I/O口,通過對I/0口的操作即可實現串行數據的接收和發送,將微處理器的數據接收引腳DR作為RS232的數據接收端,數據發送引腳DX作為RS232的數據發送端,電路結構如圖3所示,圖中MAX3232E的R2out與TMS320VC33微處理器的lNT1和DR相連。 大功率電感廠家 |大電流電感工廠