新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 帶你了解TI的DSP入門(mén)芯片TMS320F28335

帶你了解TI的DSP入門(mén)芯片TMS320F28335

作者: 時(shí)間:2012-08-21 來(lái)源:網(wǎng)絡(luò) 收藏

  XINTF是所提供的一個(gè)非復(fù)用異步總線,用來(lái)完成外部異步器件的擴(kuò)展。XINTF可以映射外設(shè)到3個(gè)固定的內(nèi)存映射區(qū)域,當(dāng)外部資源掛接到某個(gè)區(qū)域時(shí),則需要通過(guò)XINTF的一個(gè)片選信號(hào)來(lái)進(jìn)行外部資源的選定。

  CY7C1011CV33-12ZSXE是一個(gè)CMOS的靜態(tài)RAM存儲(chǔ)器,其容量大小為64 kB,16位數(shù)據(jù)寬度。圖2是外圍SRAM擴(kuò)展電路連接圖。

  

  如圖2所示,本系統(tǒng)選用ZONE7區(qū)域作為RAM的外圍擴(kuò)展。DSC通過(guò)其XZCS7管腳向片外SRAM發(fā)送片選信號(hào)。WE信號(hào)用來(lái)控制DSC對(duì)片外SRAM的讀寫(xiě),當(dāng)DSC的XWEo管腳為低電平,則DSC對(duì)片外RAM進(jìn)行讀寫(xiě)操作;XWEo為高電平,同時(shí)DSC的XRD管腳為低電平,則為讀操作。

  1.3.2 EEPROM擴(kuò)展

  考慮到系統(tǒng)在加電后,需要對(duì)一些設(shè)備的狀態(tài)進(jìn)行一些初始化,而這些初始化的數(shù)據(jù)在設(shè)備運(yùn)轉(zhuǎn)時(shí)又需要不斷改變。因此,在設(shè)備運(yùn)轉(zhuǎn)過(guò)程中,實(shí)時(shí)將數(shù)據(jù)加以保存,以至于設(shè)備斷電后數(shù)據(jù)依舊存在。本系統(tǒng)利用的SPI接口外擴(kuò)了一個(gè)EEPROM保存設(shè)備運(yùn)轉(zhuǎn)時(shí)實(shí)時(shí)獲取的初始化數(shù)據(jù)。本系統(tǒng)選用Atmel公司的AT25160集成。該的容量為2 kB,其寬度為8位數(shù)據(jù)寬度。模塊電路如圖3所示。

  

  如圖3所示,DSC通過(guò)SPISTEA管腳發(fā)送片選信號(hào)選中EEPROM,通過(guò)SPICLKA管腳發(fā)送SPI傳輸時(shí)鐘,而數(shù)據(jù)的寫(xiě)入和讀出則分別通過(guò)SPIS-IMOA和SPISOMIA管腳完成。EEPROM中的HOLD管腳用來(lái)暫停與主設(shè)備間串行數(shù)據(jù)傳輸,WP管腳則用來(lái)進(jìn)行對(duì)EEPROM的寫(xiě)保護(hù),如果其為低電平,則主機(jī)無(wú)法向其寫(xiě)人數(shù)據(jù)。系統(tǒng)對(duì)兩管腳輸入高電平,保證EEPROM在讀寫(xiě)操作過(guò)程中一直可以進(jìn)行而不被中斷。

  1.3.3 SCI上位機(jī)通信接口

  為了實(shí)現(xiàn)上位機(jī)同DSC異步的通信和數(shù)據(jù)傳輸,本系統(tǒng)利用所提供的SCI接口來(lái)完成所需要求。SCI是一個(gè)2線的異步串行端口,即常說(shuō)的UART。其數(shù)據(jù)的收發(fā)支持全雙工通信,內(nèi)部收發(fā)均有一個(gè)16級(jí)的FIFO來(lái)緩存數(shù)據(jù)。為了保證數(shù)據(jù)可靠,SCI提供奇偶校驗(yàn),數(shù)據(jù)溢出檢測(cè)等操作。SCI接口輸出信號(hào)的電平是LV—TTL電氣標(biāo)準(zhǔn),通過(guò)RS232收發(fā)轉(zhuǎn)換器加以驅(qū)動(dòng),獲得RS232電氣標(biāo)準(zhǔn)的信號(hào),以便上位機(jī)接收。

 1.4 模擬電路設(shè)計(jì)

  模擬部分電路主要是以ADC為中心的應(yīng)用電路。其主要實(shí)現(xiàn)模擬信號(hào)的處理,采集等工作。其中核心部分為AD轉(zhuǎn)換。

  AD轉(zhuǎn)換部分,主要是通過(guò)數(shù)字采樣來(lái)完成模擬信號(hào)到數(shù)字信號(hào)的轉(zhuǎn)變。本系統(tǒng)選用的ADC是美國(guó)模擬電氣公司的AD7656。模數(shù)轉(zhuǎn)換芯片AD7656是高集成度、6通道6 bit逐次逼近(SAR)型ADC,內(nèi)含1個(gè)2.5 V基準(zhǔn)電壓和基準(zhǔn)緩沖器。該器件的功耗比最接近的同類雙極性ADC降低了60%。AD7656在每通道250kb·s-1采樣速率下的精度是同類產(chǎn)品的兩倍。可以由引腳和軟件選擇模擬電壓范圍:10 V或5 V;模擬電源電壓范圍為4.75~5.25 V,因而大范圍的工作電壓使其無(wú)需電平轉(zhuǎn)換等其他措施便可以直接與DSC相連;提供有并行和串行接口??梢怨ぷ髟?40~85℃。標(biāo)準(zhǔn)模式5 V供電,250 kb·s-1時(shí)的功耗為140 mW,待機(jī)時(shí)僅為100μW?;趇COMS技術(shù)制造的AD7656可以滿足工業(yè)領(lǐng)域?qū)Ψ直媛省⒍嗤ǖ?、轉(zhuǎn)換速率和功耗等方面的較高要求。

  AD7656支持和DSC的并口、串口數(shù)據(jù)傳輸,通過(guò)SER/PAR SEL管腳的高低電平的選擇,來(lái)控制采樣后數(shù)字信號(hào)的傳輸方式。當(dāng)其為高電平,則使用串行傳輸方式,反之則使用并行傳輸方式。本系統(tǒng)選用并行傳輸方式。在具體的轉(zhuǎn)換過(guò)程中,每片AD7656內(nèi)部的6條采樣通路可以分為A、B、C共3組,其中每組通路包含2路通路。3組通路可以同時(shí)采樣,也可以單獨(dú)采樣,而每組內(nèi)的兩條通路同時(shí)采樣。管腳CONVSTA,CONVSTB,CONVSTC分別用來(lái)對(duì)A、B、C采樣通路進(jìn)行控制。當(dāng)一個(gè)上升沿電平到達(dá)任一管腳,則該管腳對(duì)應(yīng)模數(shù)轉(zhuǎn)換的2路通路被啟動(dòng),開(kāi)始完成模數(shù)轉(zhuǎn)換。當(dāng)把三管腳連接,3組采樣通路,即所有的6條采樣通路同時(shí)采樣。系統(tǒng)選用3組通路同時(shí)采樣。

  當(dāng)DSC連接有多片ADC時(shí),則需要通過(guò)CS片選管腳來(lái)進(jìn)行ADC的選擇。當(dāng)采樣開(kāi)始,BUSY管腳將從低電平變?yōu)楦唠娖?,在整個(gè)采樣的過(guò)程中,BUSY一直保持高電平,當(dāng)采樣結(jié)束,BUSY則從高電平變?yōu)榈碗娖?,此時(shí)DSC就可以開(kāi)始讀取數(shù)據(jù)。本系統(tǒng)則利用該管腳作為DSC外部中斷源的輸入管腳。當(dāng)BUSY上電平由高變低,則通知DSC產(chǎn)生中斷,來(lái)進(jìn)行數(shù)據(jù)的讀取。

  本系統(tǒng)選用2片AD7656完成12路數(shù)據(jù)采樣,通過(guò)DSC的XINTF ZONE6把ADC設(shè)備映射到DSC上,進(jìn)行數(shù)據(jù)傳輸。通過(guò)地址譯碼和邏輯控制實(shí)現(xiàn)2片ADC同DSC的連接。具體結(jié)構(gòu)如圖4所示。

  

  圖4中左下角為邏輯部分,通過(guò)DSC的地址線BA17和BA18完成對(duì)ADC的選擇??梢缘玫紸DC0和ADC1在DSC中的地址映射為0x180000和0x1400 00。而外部輸入40 kHz的時(shí)鐘,作為ADC的采樣頻率。兩個(gè)ADC對(duì)應(yīng)DSC的同一個(gè)中斷,當(dāng)任意一片ADC采樣完畢,都會(huì)引起DSC的中斷,從而進(jìn)行采樣數(shù)據(jù)的讀取。

  2.系統(tǒng)軟件設(shè)計(jì)

  如前所述,整個(gè)信號(hào)處理板一共有12路模擬信號(hào)通路,通過(guò)傳感器接收到12路模擬信號(hào)。2片AD7656把12路模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)傳送給TMS320F28335,在TMS320F28335中對(duì)這些采集到的數(shù)據(jù)做相應(yīng)處理后通過(guò)SCI傳送給上位機(jī)。同時(shí)對(duì)有必要保存的數(shù)據(jù)通過(guò)SPI接口保存到EEPROM中。整個(gè)采集、通信過(guò)程由上位機(jī)發(fā)送相關(guān)的命令來(lái)加以控制。程序的流程如圖5所示。

  

  在主函數(shù)中,程序首先完成相應(yīng)模塊的初始化,設(shè)定好CPU運(yùn)行的時(shí)鐘,選定好各個(gè)模塊的工作模式,然后讀取EEPROM中的設(shè)備初始化數(shù)據(jù),后進(jìn)行入等待狀態(tài)。此時(shí)CPU等待ADC采樣的數(shù)據(jù),當(dāng)ADC采樣過(guò)程結(jié)束,則進(jìn)入ADC中斷響應(yīng)函數(shù),在此函數(shù)中,主要完成數(shù)據(jù)的讀取,對(duì)于小信號(hào),通過(guò)程控放大器放大其幅值,然后存儲(chǔ)到自定義的緩存區(qū)中。兩個(gè)串口工作方式均由上位機(jī)發(fā)送命令,從而觸發(fā)SCI的串口收中斷服務(wù)函數(shù)。然后在中斷服務(wù)函數(shù)中完成對(duì)應(yīng)命令要求。系統(tǒng)選用串口1完成采集數(shù)據(jù)向上位機(jī)的傳輸,串口0完成向EEPROM發(fā)送需保存的數(shù)據(jù)和一些相關(guān)操作。而SCI0和SCI1分別對(duì)應(yīng)DSC外設(shè)中斷的INT9.1和INT9.3,外部中斷XINT1對(duì)應(yīng)INT1.4。程序設(shè)置兩個(gè)串口的傳輸速率均為38.4 kb·s-1。

  在設(shè)備工作時(shí),由于SCI1的中斷源是上位機(jī)的命令發(fā)送,系統(tǒng)規(guī)定上位機(jī)每20ms發(fā)送一個(gè)數(shù)據(jù)接受命令,因此SCI1的中斷響應(yīng)周期為td= 20 ms。而由于采樣率為40 kHz,因此ADC的中斷服務(wù)函數(shù)響應(yīng)周期為0.025 ms。系統(tǒng)規(guī)定采集一組數(shù)據(jù)的個(gè)數(shù)為50,那么采集一組數(shù)據(jù)的時(shí)間即為tc=1.25 ms,所以在一次SCI1中斷過(guò)程中,ADC會(huì)采集16組數(shù)據(jù)??紤]到串口傳輸?shù)牟ㄌ芈蕿?8.4kb·s-1,因此傳送一個(gè)16位的數(shù)據(jù)時(shí)間為tt=0.417 ms。而一組數(shù)據(jù)采集時(shí)間加上串口數(shù)據(jù)傳輸?shù)臅r(shí)間為tc+tt=1.667 ms《  4 結(jié)束語(yǔ)

  所設(shè)計(jì)的信號(hào)處理板以TMS320F28335為核心處理器,利用AD7656完成模擬信號(hào)采樣的功能硬件平臺(tái)。TMS320F28335片內(nèi)集成了豐富的外圍資源,通過(guò)驅(qū)動(dòng)軟件的配置和硬件系統(tǒng)的設(shè)計(jì),可以方便、高效地完成大量數(shù)字信號(hào)的處理和運(yùn)算。AD7656的6路模擬信號(hào)采集和16位高精度的模擬信號(hào)采樣,較好地完成了模擬信號(hào)的數(shù)字化轉(zhuǎn)換,減少了模擬信號(hào)采樣的失真。實(shí)驗(yàn)證明,信號(hào)處理板所采集到的數(shù)字信號(hào)的誤差值約為1.37 mV,可達(dá)14位的采樣精度。

c++相關(guān)文章:c++教程


模數(shù)轉(zhuǎn)換器相關(guān)文章:模數(shù)轉(zhuǎn)換器工作原理


脈寬調(diào)制相關(guān)文章:脈寬調(diào)制原理
鎖相環(huán)相關(guān)文章:鎖相環(huán)原理

上一頁(yè) 1 2 3 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉