數字信號處理器DSP是數字信號處理理論與超大規模集成電路VLSI技術融合的結晶。目前DSP技術正廣泛地應用于通信、語音、圖像、航天航空、儀器儀表等領域,在推動當代信息處理數字化方面正發揮著越來越大的作用。 在利用電話線傳輸視頻圖像這一低比特率多媒體通信領域中,如果選用圖像處理的專用芯片,如SAA7110、8×8 3104VCP以及LSI公司的專用芯片等,或者選用具有高速運算性能的高檔DSP進行圖像處理,都會使產品價格大幅度標升。本文介紹的采用TI公司的低檔DSP芯片TMS320F206和視頻A/D芯片TLC5510的圖像采集卡,則為低比特率多媒體通信提供了一個廉價的解決方案。 1 TLC5510芯片和TMS320F206芯片簡介 1.1 TLC5510簡介 TLC5510是CMOS、8位、20MSPS模擬/字轉換器ADC,它利用了半閃速semiflash architerture結構。TLC5510用單5V電源供電,只消耗100mW的功率。它還有內部采樣和保持電路,高阻的并行輸出以及內部基準電阻。 與閃速轉換器flash converter相比,半閃速結構減少了功率損耗和芯片尺寸。通過在2步過程2-step-process中實現轉換,可大大減少比較器的數目。轉換數據的等待時間為2.5個時鐘周期。 無需外部基準電壓源和精密電阻,僅使用內部基準電阻和VDDA就可實現2V的滿量程轉換范圍。25℃時的線性度誤差為±0.75LSB,在整個溫度范圍內的線性度誤差最大值是±1LSB。25℃時的差分線性度誤差為±0.5LSB,在整個溫度范圍內的差分線性度誤差最大值是±0.75LSB。 1.2 TMS320F206簡介 TMS320F206是TI公司推出的一種DSP芯片,它是基于TMS320C5x之上的高速定點數字處理芯片,具有改進的哈佛結構并行分離的程序和數據總線、高性能CPU及高效的指令集等特點。其主要特性如下: CPU具有32位CALU、32位累加器、16×16位并行乘法器、三個移位寄存器、八個16位輔助寄存器。 存儲器具有224K字可尋址存儲空間、544字片內DRAM、4K字片內SRAM或32K字片內快閃存儲器。 指令速度為50ns、35ns及25ns單指令周期。 外圍電路有軟件可編程定時器、軟件可編程等待狀態發生器、片內鎖相環時鐘發生器、同步和異步系列串口。 2 硬件接口電路設計 2.1 TLC5510前端電路設計 TLC5510前端電路如圖1所示。 在電路中,模擬電源VDDA和數字電源VDDD相互獨立。VDDA與數字地AGND之間及VDDD與模擬地DGND之間都用4.7μF電容、0.1μF電容和鐵氧磁環去耦和消除電源的紋波。AGND與DGND分開,以避免數字信號給模擬信號帶來噪聲。放大后的視頻信號直接加在TLC5510的19腳。TLC5510的時鐘信號由TMS320F206的時鐘信號輸出腳CLKOIU1提供。 2.2 TLC5510 與TMS320F206接口電路設計 TLC5510與TMS320F206接口電路圖如圖2所示。 TLC5510數字地與TMS320F206的地相連。因TLC5510內部有數據輸出緩沖,所以TLC5510的腳?D1:D8?與TMS320F206腳?D0:D7?直接相連。TMS320F206的CLKOUTI腳通過一小電阻給TLC5510提供時鐘信號。TMS320F206管腳A11和為邏輯控制,當A11為邏輯高,為邏輯低時,TMS320F206就可從TLC5510讀取采樣數據。 2.3 TMS320F206與計算機串口通信 存入TMS320F206的圖像數據通過串口以9600 b/s的速率送入計算機,計算機將數據存到緩存區,然后通過像素點與圖像轉換程序在顯示器上顯示出來。 3 接口程序設計 3.1程序常量的初始化 (1) 設采樣數據存儲區的起始地址為0900h (2) 設采樣數為1000h (3) 設A/D地址為0800h 3.2 程序步驟 1 初始化TMS320F206 2 加載合適的ARn 3 選通TLC5510 4 讀取A/D轉換值 5 初始化UART 6 向UART 傳數 7 程序結束 3.3 具體程序 .title ″TLC5510 Interface″ .copy ″init.h″ .copy ″vector.h″ .text ADC_Addr .set 0800h ;設置TLC5510的地址 Mem_pointer .set 0900h ;設置采樣數據存儲區的 起始地址 Count .set 1000h ;設置采樣個數 start: lar ar2,#ADC_Addr lar ar3,#Mem_pointer lar ar4,#Count ? 開始A/D轉換 ldp #6h ;設置頁面指針使其指向 50h×6=0300h處 splk #Count,0h ;把采樣個數放入0300h Iar ar4,#0300h ;使AR4指向0300h mar ?,ar4 ;把AR$設為當前寄存器 rpt ?,ar3 ;設置RPTC寄存器后,把 AR3設為當前寄存器 in ?+,ADC_Addr,ar4 ;讀入并存儲A/D轉換 結果 ?通過UART向計算機傳輸數據 ?初始化UART口 clrc CNF ;把B0塊映射為數據空間 ldp #0h ;設置葉面指針使其指向0h處 setc INTM ;禁止所有中斷 splk #0ffffh,ifr ;清中斷 splk #0000h,60h out 60h,wsgr ;設置零等待 splk #0c180h,61h ;把 UART口復位 out 61h,aspcr ;允許I/O中斷 splk #0e180h,61h out 61h,aspcr ;打開I/O斷口 splk #4fffh,62h out 62h,iosr ;禁止自動波特率 splk #00082h,63h out 63h, brd ;設置波特率為9600 splk #20h,imr ;允許UART中斷 lar ar3,#0900h ;恢復 AR3 lar ar4,# Count-1 ;恢復AR4 mar ?,ar3 ;設置 AR3為當前寄存器 clrc intm ;打開中斷 uart1: setc xf ;把xf置1,開始傳數 mar ?,ar3 ;把AR3設為當前寄存器 out ?+,adtr ;傳出數據后,把AR3加1 wait: clrc xf ;關閉xf,停止傳數 mar ?,ar2 ;把AR3設為當前寄存器 in ?,0fff6h ;讀入IOSR寄存器的狀態 bit ?,4 ;檢測第12位是否為0 bcnd cont,tc ;如果為0?等待直到IOSR 的第12位為1 b wait skip: splk #0020h,ifr ;清中斷 clrc intm mar ?,ar4 ;傳輸個數減1 banz uart1,ar3 ;未傳完,則跳到UART1, 傳下一個數 ret ;返回 inpt1: ret inpt23: ret timer: ret uart: ret codtx: ret codrx: ret .end 我們將TLC5510與TMS320F206的接口設計用于煤礦井下遠程多媒體低比特率通信監控系統中,已取得初步進展, 這一應用可以為TMS320F206用于圖像處理提供一種思路,從而為低比特率多媒體通信開辟一條廉價的途徑。 |