DSP的SPI口和串行EEPROM在變頻器中的應用
1 引言
本文引用地址:http://dyxdggzs.com/article/152505.htm變頻器的開(kāi)發(fā)中我們選用TMS320F240芯片做主CPU,TMS320F240系列是美國TI公司于1997年推出的,專(zhuān)為數字電機控制和其它控制應用系統而設計的16位定點(diǎn)數字信號處理器。它將數字信號處理的高速運算功能與面向電機的強大控制能力結合在一起,成為中低端變頻器理想的主控芯片。F240片內外設包括雙10位A/D轉換器,帶有鎖相環(huán)PLL時(shí)鐘模塊,帶中斷的看門(mén)狗定時(shí)器模塊,串行通信接口SCI及串行外設接口SPI,另外,還集成了一個(gè)事件管理模塊EVM。因此,TMS320F240基本能滿(mǎn)足筆者變頻器設計的要求。
變頻器有幾百甚至上千個(gè)參數,這些參數值都要求系統斷電后不能丟失,在設計中我們選用非易失性存儲器EEPROM保存數據。每次上電時(shí),從EEPROM中讀取上次參數的設定值,以保證變頻器運行狀態(tài)的連續性,同樣每次斷電時(shí),也要保存變頻器此次運行的參數設定情況,以便開(kāi)機時(shí)讀取。本文闡述了變頻器開(kāi)發(fā)中F240擴展EEPROM(X5168)的設計思路和實(shí)現過(guò)程。
2 對TMS320F240的串行外設接口(SPI)的說(shuō)明
TMS320F240的串行外設接口(SPI)模塊是一個(gè)高速同步串行輸入/輸出端口,它允許F240控制器和片外外設或其他控制器進(jìn)行串行通信,在通信過(guò)程中,SPI能夠以任意給定的傳輸速率對具有可編成長(cháng)度(1-8位)的串行比特流進(jìn)行收發(fā)。該模塊也是一個(gè)8位外設,它直接掛在16位的片內外設總線(xiàn)上,因此,外設總線(xiàn)的高8位讀寫(xiě)訪(fǎng)問(wèn)對該模塊是沒(méi)有意義的。
SPI模塊的特性如下:
?。?) 4個(gè)外部引腳。SPISOM I為SPI從輸出/主輸入引腳;SPISIMO為SPI從輸入/主輸出引腳;SPISTE為SPI從發(fā)送使能引腳;SPICLK為SPI串行時(shí)鐘引腳。
?。?) 兩種工作方式,即主模式(Master)和從模式(Slave)。
?。?) 數據字長(cháng)。1-8個(gè)數據位。
?。?) 可同時(shí)接收和發(fā)送數據,發(fā)送和接收操作可通過(guò)中斷或查詢(xún)方法來(lái)完成。
?。?) 波特率,l25種可編程的波特率,下列兩個(gè)公式給出了計算SPI的波特率的方法:
1. 當SPIBRR=3-127時(shí),SPI波特率=系統時(shí)鐘頻率/(SPI寄存器的值+1);
2. 當SPIBRR=0、1、2時(shí),SPI波特率=系統時(shí)鐘頻率/4;
?。?) 4種時(shí)鐘方案,由時(shí)鐘極性位(SPICCR寄存器的位6)和時(shí)鐘相位位(SPICTL寄存器的位3)進(jìn)行設置,包括:
1. 無(wú)延時(shí)下降沿有效:串行外設接口在SPICLK 信號下降沿發(fā)送數據,而在SPICLK 信號上升沿接收數據;
2. 有延時(shí)下降沿有效:串行外設接口在SPICLK 信號下降沿之前的半個(gè)周期時(shí)發(fā)送數據,而在SPICLK 信號下降沿接收數據;
3. 無(wú)延時(shí)上升沿有效:串行外設接口在SPICLK 信號上升沿發(fā)送數據,而在SPICLK 信號下降沿接收數據;
4. 有延時(shí)上升沿有效:串行外設接口在SPICLK 信號上升沿之前的半個(gè)周期時(shí)發(fā)送數據, 在SPICLK 信號上升沿接收數據。
3 對X5168的說(shuō)明
DSP處理速度比較快,且本設計需要保存的數據量大,筆者選擇了XICOR公司的帶16Kb SPI EEPROM 的CPU監視器X5168。器件把四種常用的功能:上電復位、看門(mén)狗定時(shí)器、電源電壓監控和塊鎖存保護的串行EEPROM 存儲器集成在一個(gè)封裝之內,這種組合降低了系統成本,減少了電路板空間,增加了可靠性。
評論