基于TMS320F206 DSP的圖像采集卡設(shè)計方案
數(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è)計用于煤礦井下遠程多媒體低比特率通信監(jiān)控系統(tǒng)中,已取得初步進展, 這一應(yīng)用可以為TMS320F206用于圖像處理提供一種思路,從而為低比特率多媒體通信開辟一條廉價的途徑。