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