




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第十章SPI與模擬量轉(zhuǎn)換主要內(nèi)容SPI的基本工作原理GP32的SPI模塊編程基礎(chǔ)A/D和D/A轉(zhuǎn)換的基本問(wèn)題MC908GP32內(nèi)部A/D轉(zhuǎn)換模塊GP32MCUA/D轉(zhuǎn)換編程實(shí)例*利用SPI進(jìn)行高位擴(kuò)A/D展接口*利用SPI進(jìn)行高位擴(kuò)D/A展接口*擴(kuò)展實(shí)現(xiàn)D/A轉(zhuǎn)換*常用傳感器及采樣電路簡(jiǎn)介
《嵌入式技術(shù)基礎(chǔ)與實(shí)踐》10.1SPI的基本工作原理10.1.1SPI的主要特性
①全雙工。 ②主、從工作方式。 ③發(fā)送和接收的數(shù)據(jù)寄存器相互獨(dú)立從而實(shí)現(xiàn)雙緩存操作。 ④主機(jī)可以設(shè)定4種工作頻率(最大可達(dá)總線頻率的二分之一)。 ⑤從機(jī)最大工作頻率等于總線頻率。 ⑥發(fā)送結(jié)束、接收結(jié)束、工作方式錯(cuò)誤和溢出錯(cuò)誤四種中斷標(biāo)志。 ⑦一個(gè)主控MCU和幾個(gè)從控MCU相互連接。 ⑧幾個(gè)MCU相互連接構(gòu)成一個(gè)多主機(jī)系統(tǒng)。 ⑨一個(gè)主控MCU和一個(gè)或多個(gè)從屬外設(shè)相互連接。10.1.2SPI的數(shù)據(jù)傳輸
利用SPI進(jìn)行MCU之間的數(shù)據(jù)傳輸時(shí),主機(jī)的程序控制著數(shù)據(jù)傳輸,從機(jī)的程序配合主機(jī)工作,完成傳輸過(guò)程。圖10-1是SPI的主-從連接示意圖。具體工作過(guò)程:
從主機(jī)CPU發(fā)出啟動(dòng)傳輸信號(hào)開(kāi)始,此時(shí)要傳送的數(shù)據(jù)裝入8位移位寄存器,同時(shí)產(chǎn)生8個(gè)時(shí)鐘信號(hào)從SPSCK引腳依次送出;在SPSCK信號(hào)的控制下,主機(jī)中8位移位寄存器中的數(shù)據(jù)依次從MOSI引腳送出,到從機(jī)的MOSI引腳送入它的8位移位寄存器;在此過(guò)程中,從機(jī)的數(shù)據(jù)也通過(guò)MISO引腳到主機(jī)中。圖10-1SPI全雙工主-從連接
移位寄存器移位寄存器MISOMISO主MCUMOSI
MOSI波特率發(fā)生器從MCUSPSCKSPSCK10.1.3SPI模塊的時(shí)序圖10-3CPHA=0,CPOL=1時(shí)的數(shù)據(jù)/時(shí)鐘時(shí)序圖
SPSCK周期CPOL=1MOSIFROMMASTERMISOFROMSLAVE信號(hào)捕捉點(diǎn)10.1.3SPI模塊的時(shí)序圖10-4CPHA=1,CPOL=0時(shí)的數(shù)據(jù)/時(shí)鐘時(shí)序圖SPSCK周期CPOL=0MOSIFROMMASTERMISOFROMSLAVE信號(hào)捕捉點(diǎn)10.1.3SPI模塊的時(shí)序圖10-5CPHA=1,CPOL=1時(shí)的數(shù)據(jù)/時(shí)鐘時(shí)序圖
SPSCK周期CPOL=1MOSIFROMASTERMISOFROMSLAVE信號(hào)捕捉點(diǎn)10.2.2SPI模塊的寄存器
SPI模塊有3個(gè)寄存器:數(shù)據(jù)寄存器SPDR,控制寄存器SPCR,狀態(tài)和控制寄存器SPSCR。(1)數(shù)據(jù)寄存器SPDR(SPIDataRegister)
SPDR由兩個(gè)獨(dú)立的數(shù)據(jù)寄存器組成:只能寫入的發(fā)送數(shù)據(jù)寄存器和只能讀出的接收數(shù)據(jù)寄存器,它們共用一個(gè)地址$0012。寫入時(shí),為要發(fā)送的8位數(shù)據(jù),記為:T7~T0;讀出時(shí),為接收的8位數(shù)據(jù),記為:R7~R0。(2)控制寄存器SPCR(SPIControlRegister)
SPCR復(fù)位時(shí)寫一次,以后不再對(duì)其寫入,不再更改對(duì)SPI的設(shè)置,地址是$0010,各位定義:SPI接收中斷允許位
DMA選擇位
SPI發(fā)送中斷允許位
SPI允許位
SPI線或模式位
時(shí)鐘相位位
時(shí)鐘極性選擇位
SPI主機(jī)位
數(shù)據(jù)位D7D6D5D4D3D2D1D0定義SPRIEDMASSPMSTRCPOLCPHASPWOMSPESPTIE復(fù)位001010003.SPI狀態(tài)和控制寄存器SPSCR(SPIStatusandControlRegister)
SPSCR的地址:$0011,定義為:SPI的波特率=CGMOUT/(2xBD)。上式中:CGMOUT為時(shí)鐘產(chǎn)生模塊CGM的基準(zhǔn)時(shí)鐘輸出。BD是分頻系數(shù),由SPR1、SPR0位決定:SPR1、SPR0=00011011BD=2832128SPI接收器滿標(biāo)志位
錯(cuò)誤中斷允許位
SPI波特率選擇位
模式錯(cuò)誤標(biāo)志允許位
SPI發(fā)送器空標(biāo)志位
模式錯(cuò)誤標(biāo)志位
溢出標(biāo)志位數(shù)據(jù)位D7D6D5D4D3D2D1D0定義SPRFERRIEOVRFMODFSPTEMODFENSPR1SPR0復(fù)位0000100010.3A/D和D/A轉(zhuǎn)換的基本問(wèn)題1A/D轉(zhuǎn)換
A/D轉(zhuǎn)換模塊(AnalogToDigitalConvertModule),即模數(shù)轉(zhuǎn)換,是將電壓信號(hào)轉(zhuǎn)換為對(duì)應(yīng)的數(shù)字信號(hào)。 進(jìn)行A/D轉(zhuǎn)換的基本問(wèn)題:(1)采樣精度數(shù)字量變化一個(gè)最小量時(shí)模擬信號(hào)的變化量,即采樣位數(shù)。(2)采樣速率完成一次A/D采樣所要花費(fèi)的時(shí)間。(3)濾波對(duì)采樣的數(shù)據(jù)進(jìn)行篩選去掉誤差較大的毛刺。(4)物理量回歸把A/D采樣值與實(shí)際物理量對(duì)應(yīng)起來(lái)。
2D/A轉(zhuǎn)換(1)D/A轉(zhuǎn)換器的轉(zhuǎn)換精度有兩種衡量方法
分辨率:D/A轉(zhuǎn)換器在理論上可達(dá)到的精度。其定義,電路所能分辨的最小輸出電壓VLSB(輸入的n位數(shù)字代碼最低有效位LSB為1,其余都為0)與最大輸出電壓Vm(此時(shí)輸入數(shù)字代碼所有各位全為1)之比。轉(zhuǎn)換誤差:D/A轉(zhuǎn)換器實(shí)際上能達(dá)到的轉(zhuǎn)換精度。轉(zhuǎn)換誤差可用輸出電壓滿度值的百分?jǐn)?shù)表示,也可以用LSB的倍數(shù)來(lái)表示。
(2)D/A轉(zhuǎn)換器的轉(zhuǎn)換速度有兩種衡量方法建立時(shí)間tset是在輸入數(shù)字量各位由全0變?yōu)槿?或由全1變?yōu)槿?時(shí),輸出電壓達(dá)到某一規(guī)定值(例如取1/2LSB或滿度值的0.01%)所需要的時(shí)間。轉(zhuǎn)換速率SR是在大信號(hào)工作時(shí),即輸入數(shù)字量的各位由全0變?yōu)槿?或由全1變?yōu)?時(shí),輸出電壓uo的變化率。D/A轉(zhuǎn)換器完成一次轉(zhuǎn)換所需的時(shí)間應(yīng)包括建立時(shí)間tset和輸出電壓uo的上升或下降時(shí)間,即最大轉(zhuǎn)換時(shí)間為:TTRmax=tset+Vomax/SR上式中Vomax是輸出模擬電壓的最大值。
10.4.1GP32A/D轉(zhuǎn)換模塊寄存器2.A/D轉(zhuǎn)換數(shù)據(jù)寄存器ADR(Analog-to-DigitalDataRegister)
ADR存放A/D轉(zhuǎn)換的8位結(jié)果,每次A/D轉(zhuǎn)換結(jié)束更新該寄存器。編程從該寄存器讀取A/D轉(zhuǎn)換結(jié)果。該寄存器地址為:$003D,為只讀寄存器,復(fù)位時(shí)為$00。10.4.1GP32A/D轉(zhuǎn)換模塊寄存器3.A/D轉(zhuǎn)換輸入時(shí)鐘寄存器ADCLK(Analog-to-DigitalInputClockRegister)
該寄存器決定A/D轉(zhuǎn)換的時(shí)鐘頻率來(lái)源、分頻系數(shù)值,芯片內(nèi)的A/D轉(zhuǎn)換器要求ADC時(shí)鐘頻率為1MHz左右。ADCLK的地址是:$003E.定義為:
ADC時(shí)鐘分頻系數(shù)選擇位
ADC輸入時(shí)鐘源選擇位
未用
數(shù)據(jù)位D7D6D5D4D3D2D1D0定義ADIV2ADIV1ADIV0ADICLK----復(fù)位0001111110.4.2A/D轉(zhuǎn)換模塊的基本編程方法(1)A/D轉(zhuǎn)換初始化
對(duì)ADCLK寫入控制字節(jié),決定時(shí)鐘輸入源是內(nèi)部總線還是外部晶振,決定分頻系數(shù)等。
(2)啟動(dòng)A/D轉(zhuǎn)換
對(duì)ADSCR寫入控制字節(jié),選取要轉(zhuǎn)換的通道、決定轉(zhuǎn)換結(jié)束數(shù)據(jù)獲取的方式、設(shè)置是連續(xù)轉(zhuǎn)換還是一次轉(zhuǎn)換等。
(3)獲A/D轉(zhuǎn)換結(jié)果
若是中斷方式,在A/D中斷程序中取得,若是查詢方式,通過(guò)ADSCR的第7位(COCO位)取得,當(dāng)COCO=1時(shí)可從ADR中取數(shù)。
10.5.1A/D轉(zhuǎn)換08C語(yǔ)言編程實(shí)例(1)A/D轉(zhuǎn)換有關(guān)C語(yǔ)言子函數(shù)(1)A/D轉(zhuǎn)換有關(guān)C語(yǔ)言子函數(shù)(1)A/D轉(zhuǎn)換有關(guān)C語(yǔ)言子函數(shù)10.5.2A/D轉(zhuǎn)換匯編語(yǔ)言編程實(shí)例(1)A/D轉(zhuǎn)換有關(guān)子程序(2)A/D轉(zhuǎn)換測(cè)試程序匯編主程序*10.6高位A/D轉(zhuǎn)換接口10.6.1A/D芯片TCL2543概述1.TLC2543的引腳說(shuō)明圖10-8TLC2543的封裝管腳
(3)轉(zhuǎn)換過(guò)程
上電后,片選CS必須從高到低,才能開(kāi)始一次工作周期,此時(shí)EOC為高,輸入數(shù)據(jù)寄存器被置0,輸出數(shù)據(jù)寄存器內(nèi)容是隨機(jī)的。開(kāi)始時(shí),片選CS為高,I/OCLOCK、DATAINPUT被禁止,DATAOUT呈高阻態(tài),EOC為高。使CS變低,I/OCLOCK、DATAINPUT使能,DATAOUT脫離高阻態(tài)。12個(gè)時(shí)鐘信號(hào)從I/OCLOCK端依次加入,控制字從DATAINPUT一位一位地在時(shí)鐘信號(hào)的上升沿時(shí)被送入TLC2543(高位先送入),同時(shí)上一周期轉(zhuǎn)換的A/D數(shù)據(jù),即輸出數(shù)據(jù)寄存器中的數(shù)據(jù)從DATAOUT一位一位地移出。TLC2543收到第4個(gè)時(shí)鐘信號(hào)后,通道號(hào)也已收到,因此,此時(shí)TLC2543開(kāi)始對(duì)選定通道的模擬量進(jìn)行采樣,并保持到第12個(gè)時(shí)鐘的下降沿。在第12個(gè)時(shí)鐘下降沿,EOC變低,開(kāi)始對(duì)本次采樣的模擬量進(jìn)行A/D轉(zhuǎn)換,轉(zhuǎn)換時(shí)間約需10μs,轉(zhuǎn)換完成EOC變高,轉(zhuǎn)換的數(shù)據(jù)在輸出數(shù)據(jù)寄存器中,待下一個(gè)工作周期輸出。此后,可以進(jìn)行新的工作周期。3.TLC2543與MCU的接口方法
TLC2543與微處理器芯片的接口部分有五個(gè)引腳,分別是:時(shí)鐘輸入(I/OCLOCK)、串行控制字輸入(DATAINPUT)、片選輸入(CS)、A/D轉(zhuǎn)換串行數(shù)據(jù)輸出(DATAOUTPUT)、轉(zhuǎn)換結(jié)束電平輸出(EOC)。經(jīng)分析TLC2543的工作時(shí)序,可以通過(guò)軟件估計(jì)轉(zhuǎn)換結(jié)束,免去EOC接線。TLC2543與具有SPI或相同接口能力的MCU可以直接連接,對(duì)于沒(méi)有SPI接口的MCU可以通過(guò)軟件編程合成SPI操作。10.6.2SPI模塊與TLC2543的接口擴(kuò)展1.?dāng)U展電路設(shè)計(jì)MC68HC908GP32PTC0MISOMOSISPSCKPTC1PTC2TLC2543(第0片)AIN0CS∶DATAOUT∶DATAINPUT∶I/OCLOCKAIN10模擬量輸入∶∶∶TLC2543(第1片)AIN0CS∶DATAOUT∶DATAINPUT∶I/OCLOCKAIN10∶∶∶TLC2543(第2片)AIN0CS∶DATAOUT∶DATAINPUT∶I/OCLOCKAIN10∶∶∶圖10-7基于SPI的A/D轉(zhuǎn)換擴(kuò)展電路10.6.2SPI模塊與TLC2543的接口擴(kuò)展2.編程方法
基于上述電路的A/D采集子程序
3.應(yīng)用舉例
利用上述子程序?qū)崿F(xiàn)33路A/D數(shù)據(jù)的采集,并進(jìn)行平均值濾波。每一路取16次求平均。*10.7擴(kuò)展實(shí)現(xiàn)D/A轉(zhuǎn)換10.7.1D/A芯片TLV5608概述1.TLV5608的引腳說(shuō)明
TLV5608有20根引腳,分布參見(jiàn)圖10-8。圖10-8TLV5608的封裝管腳
2.TLV5608的控制寄存器(1)控制寄存器0(CTRL0)PD-低功耗驅(qū)動(dòng):PD=0時(shí),正常模式;PD=1時(shí),低功耗。DO-數(shù)字輸出使能:DO=1時(shí),DOUT引腳輸出傳送的數(shù)據(jù)。IM-輸入模式:IM=0時(shí),直接輸出二進(jìn)制數(shù)據(jù);IM=1時(shí),兩次不足后輸出。D11……D5D4D3D2D1D0x……xPDDOxxIM2.TLV5608的控制寄存器(2)控制寄存器1(CTRL1)PXY=1時(shí),DACXY低功耗;SXY=1時(shí),DACXY快速傳輸;SXY=1時(shí),DACXY低速傳輸。D11…D8D7D6D5D4D3D2D1D0x…xPGHPEFPCDPABSGHSEFSCDSAB3.TLV5608工作原理
TLV5608的16位數(shù)據(jù)由兩部分組成:通道控制位(D15~D12)和數(shù)據(jù)位(D11~D0)。如下所示。通道控制位(D15~D12即A3~A0),決定數(shù)據(jù)輸出到哪個(gè)通道。當(dāng)A3~A0=0x0000~0x0111時(shí)對(duì)應(yīng)通道DACA~DACH;當(dāng)A3~A0=0x1000選擇寄存器CTRL0;當(dāng)A3~A0=0x1001選擇寄存器CTRL1,其他取值這里不作介紹。
在μCMode(MODE接高電平)下傳送數(shù)據(jù)時(shí),首先,F(xiàn)S引腳打高電平,把要傳送的數(shù)據(jù)發(fā)送到數(shù)據(jù)線上;然后,給FS引腳低電平,F(xiàn)S的下降沿開(kāi)始,在SCLK的每個(gè)下降沿使數(shù)據(jù)一位接一位的移入內(nèi)部數(shù)據(jù)寄存器(從高位開(kāi)始)。在傳送了16位數(shù)據(jù)后或者FS的上升沿到達(dá)后,移位寄存器的內(nèi)容送至DAC鎖存器。D15D14D13D12D11……D2D1D0
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國(guó)生料花生仁數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年中國(guó)塑料燒杯市場(chǎng)分析及競(jìng)爭(zhēng)策略研究報(bào)告
- 2025年中國(guó)噴油器密封性試驗(yàn)臺(tái)市場(chǎng)調(diào)查研究報(bào)告
- 2025━2030年玉堂富貴圖行業(yè)深度研究報(bào)告
- 2025-2035年全球及中國(guó)淡味啤酒行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及發(fā)展前景研究報(bào)告
- 2025年微伽重力儀合作協(xié)議書
- 2025年CDMA蜂窩移動(dòng)通信系統(tǒng)項(xiàng)目發(fā)展計(jì)劃
- 2025年快速搜索定位儀項(xiàng)目合作計(jì)劃書
- 藥學(xué)護(hù)理培訓(xùn)課件
- 近視眼預(yù)防教案
- 混凝土灌注樁質(zhì)量平行檢查記錄(鋼筋籠)
- 結(jié)直腸癌醫(yī)學(xué)課件全面版
- 化工行業(yè)關(guān)鍵裝置、重點(diǎn)部位檔案
- 鐵路旁站監(jiān)理記錄表(樁基)
- 4.4 數(shù)學(xué)歸納法課件-高二下學(xué)期數(shù)學(xué)人教A版(2019)選擇性必修第二冊(cè)
- 幼兒繪本故事:波西和皮普大怪獸
- 譯林版五年級(jí)英語(yǔ)下冊(cè) Unit 5 第2課時(shí) 教學(xué)課件PPT小學(xué)公開(kāi)課
- 全套電子課件:混凝土結(jié)構(gòu)設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)英文教學(xué)課件:chapter2 Array
- 新版PEP小學(xué)英語(yǔ)3-6年級(jí)單詞表(共14頁(yè))
評(píng)論
0/150
提交評(píng)論