




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第六章 TMS320C24x片內(nèi)外設(shè),6.1 模擬/數(shù)字轉(zhuǎn)換(ADC) 6.2 串行通信接口(SCI) 6.3 串行外設(shè)接口(SPI) 6.4 事件管理模塊(EV),6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),6.1.1 雙10位A/D轉(zhuǎn)換原理 在C24X系列器件中,配置了一個(gè)雙十位模擬數(shù)字轉(zhuǎn)換器模塊(ADC)。使用這個(gè)片內(nèi)轉(zhuǎn)換器,用戶不必要在片外擴(kuò)展同類器件,就可以方便地把電壓、電流等模擬信號(hào)輸入到片內(nèi)供CPU內(nèi)核進(jìn)行處理。 C24X的ADC模塊是一個(gè)帶有內(nèi)部采樣/保持電路的10位串行電容轉(zhuǎn)換器。片內(nèi)具有兩個(gè)獨(dú)立的模擬數(shù)字轉(zhuǎn)換單元,以F240為例,每個(gè)單元有8個(gè)模擬輸入通道,合計(jì)16個(gè)通道。 圖6-1
2、是ADC模塊的內(nèi)部功能框圖。,圖6-1 ADC模塊的內(nèi)部功能框圖,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),1. ADC引腳說明 該模塊有21個(gè)相關(guān)引腳: VREFHI:小于或等于5VDC的基準(zhǔn)電壓輸入腳的正端。 VREFLO:小于或等于5VDC的基準(zhǔn)電壓輸入腳的負(fù)端。 VCCA:模擬5VDC電源正。 VSSA:模擬5VDC電源地。 需要注意的是,模擬電源引線應(yīng)盡可能短,并采取必要的減噪技術(shù),以獲得比較精確的轉(zhuǎn)換。 External(I/O) start pin:外部啟動(dòng)ADC轉(zhuǎn)換引腳。 ADCIN0-ADCIN15:模擬信號(hào)輸入引腳。,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),2. ADC操作模式 ADC模
3、塊具有以下功能: 1)可以同時(shí)對(duì)兩個(gè)不同單元內(nèi)的兩個(gè)輸入通道進(jìn)行轉(zhuǎn)換。 2)每個(gè)單元可以單獨(dú)或連續(xù)采樣、保持和轉(zhuǎn)換。 3)每個(gè)單元使用一個(gè)二級(jí)FIFO結(jié)果寄存器來儲(chǔ)存轉(zhuǎn)換結(jié)果值,如果第三次轉(zhuǎn)換時(shí),前兩次結(jié)果還沒有被讀取,則第一次轉(zhuǎn)換的結(jié)果會(huì)丟失。 4)轉(zhuǎn)換操作可由軟件指令、外部引腳信號(hào)跳變、通用定時(shí)器的定時(shí)/比較輸出和捕獲引腳上的跳變等事件來啟動(dòng)。 5)ADC的控制寄存器是可投影的(帶緩存)。即任何時(shí)候可以更新控制寄存器而不影響當(dāng)前操作,新值將被送入緩存寄存器,工作寄存器將在當(dāng)前操作完成后,才載入緩存寄存器的新值。 6)每次轉(zhuǎn)換結(jié)束后,將設(shè)置中斷標(biāo)志。如果該中斷未被屏蔽且被使能,將產(chǎn)生中斷請(qǐng)求
4、。,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),3. 模擬信號(hào)采樣/轉(zhuǎn)換 每個(gè)ADC的采樣/轉(zhuǎn)換需要6個(gè)ADC時(shí)鐘周期,為了保證轉(zhuǎn)換精度,需要6個(gè)模擬數(shù)字轉(zhuǎn)換預(yù)定標(biāo)周期,最短時(shí)間為6us。預(yù)定標(biāo)值要滿足以下公式: SYSCLK時(shí)鐘周期x預(yù)定標(biāo)值x66us 預(yù)定標(biāo)值由ADC控制寄存器ADCTRL2的其中三位決定,如下表:,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),4. 數(shù)字量輸出 下面公式近似給出了轉(zhuǎn)換結(jié)果:,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),6.1.2 雙10位A/D轉(zhuǎn)換器編程 1. ADC寄存器 ADC模塊共有4個(gè)16位控制寄存器用于ADC模塊的控制: ADCTRL1:模擬數(shù)字轉(zhuǎn)換控制寄存器1。映射到7032
5、h。 ADCTRL2:模擬數(shù)字轉(zhuǎn)換控制寄存器2。映射到7034h。 ADCFIFO1:模擬數(shù)字轉(zhuǎn)換單元1的兩級(jí)FIFO結(jié)果寄存器。映射到7036h。 ADCFIFO2:模擬數(shù)字轉(zhuǎn)換單元2的兩級(jí)FIFO結(jié)果寄存器。映射到7038h。,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),(1)ADCTRL1的作用與配置 ADCTRL1主要用于控制模擬數(shù)字轉(zhuǎn)換的啟動(dòng)、轉(zhuǎn)換的使能/禁止、中斷使能與禁止以及轉(zhuǎn)換的結(jié)束。下圖給出了其位布置:,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),(2)ADCRTL2的作用與配置 該寄存器的作用是設(shè)置模擬數(shù)字轉(zhuǎn)換模塊輸入時(shí)鐘的預(yù)定標(biāo)因子、轉(zhuǎn)換模式、仿真操作,并顯示了模擬數(shù)字轉(zhuǎn)換模塊的FIFO結(jié)果
6、寄存器的狀態(tài)。下圖是其位布置圖:,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),(3)ADCFIFO1、ADCFIFO2的作用與配置 模擬數(shù)字轉(zhuǎn)換模塊的轉(zhuǎn)換結(jié)果寄存器事實(shí)上是一個(gè)2級(jí)先入先出堆棧,用來包含10位轉(zhuǎn)換結(jié)果。它們是只讀寄存器,復(fù)位時(shí)這些寄存器被清零。下圖是其位排列:,位號(hào)15-6 :D9-D0保存10位轉(zhuǎn)換結(jié)果。 位號(hào) 5-0:0保留,讀操作時(shí)返回0。,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),關(guān)于這幾個(gè)寄存器, 需要說明的是: 1)操作前一定要用ADC1CHSEL、ADC2CHSEL選擇要轉(zhuǎn)換的通道。 2)如果需要由軟件立即啟動(dòng)轉(zhuǎn)換,則設(shè)置ADCIMSTART為1;如果需要事件管理器同步啟動(dòng),則設(shè)置
7、ADCEVSOC為1;如果需要外部引腳信號(hào)(即外部引腳ADCSOC/IOPCO)同步啟動(dòng),則設(shè)置ADCEXTSOC為1。 3)讀取結(jié)果前要測(cè)試轉(zhuǎn)換是否完成(檢測(cè)ADCEOC)及結(jié)果寄存器的狀態(tài)(檢測(cè)ADCFIFOx),以免出錯(cuò)。同時(shí)注意結(jié)果放在結(jié)果寄存器的高十位。 4)當(dāng)ADCCONRUN設(shè)置為1,即連續(xù)運(yùn)行時(shí),無須啟動(dòng)信號(hào)ADCSOC。此時(shí),系統(tǒng)連續(xù)快速對(duì)輸入信號(hào)進(jìn)行轉(zhuǎn)換。,6.1 模擬/數(shù)字轉(zhuǎn)換(ADC),2. ADC初始化編程 ADC初始化編程只需對(duì)兩個(gè)ADC控制寄存器編程即可,如: ADCTRL1 .set 07032h ADCTRL2 .set 07034h .text LDP #2
8、24 SPLK #1000100100000000B,ADCTRL1 SPLK #0000000000000101B,ADCTRL2,6.2 串行通信接口(SCI),SCI接口模塊:實(shí)現(xiàn)與其它外設(shè)之間的異步串行數(shù)據(jù)通信。波特率可編程。 SCI的發(fā)送器與接收器都是雙緩沖的。各自有工作使能和中斷控制??晒ぷ饔谌p工模式。 該模塊是一個(gè)8位片內(nèi)外設(shè),通過DSP的16位外部數(shù)據(jù)總線的低8位與外部設(shè)備通信,讀高8位的值不確定,寫高8位無效。,6.2 串行通信接口(SCI),6.2.1 SCI模塊結(jié)構(gòu)概述 SCI結(jié)構(gòu)主要包括:(1)發(fā)送器-TX。SCITXBUF-發(fā)送數(shù)據(jù)緩沖寄存器,存發(fā)送數(shù)據(jù)。TXSHF
9、發(fā)送移位寄存器,每次1位送到SCITXD引腳。(2)接收器-RX。RXSHF接收移位寄存器,每次1位將SCIRXD引腳上的數(shù)據(jù)移入。SCIRXBUF-接收數(shù)據(jù)緩沖寄存器,存RXSHF接收到數(shù)據(jù)。(3)一個(gè)可編程的波特率發(fā)生器。(4)控制和狀態(tài)寄存器(映射在數(shù)據(jù)存儲(chǔ)器區(qū))。內(nèi)部結(jié)構(gòu)如圖6.4所示。 (1)兩個(gè)I/O引腳:SCIRXD與SCITXD (2)一個(gè)16位的波特率選擇寄存器可編程,可得到65536種的不同速率。 (3)1-8位的可編程數(shù)據(jù)位。 (4)長(zhǎng)度為1位或2位的可編程停止位。,圖6.4 SCI內(nèi)部結(jié)構(gòu)框圖,6.2 串行通信接口(SCI),(5)內(nèi)部產(chǎn)生的串行時(shí)鐘。 (6)四個(gè)錯(cuò)誤的
10、檢測(cè)標(biāo)志: 奇偶性錯(cuò)誤、超限錯(cuò)誤、幀錯(cuò)誤、間斷檢測(cè) (7)兩種喚醒多處理器模式: 空閑線喚醒、位尋址喚醒 (8)半雙工或全雙工。 (9)雙緩沖接收和發(fā)送功能。 (10)發(fā)送和接收操作均可通過中斷或查詢進(jìn)行。 (11)非歸零格式(NRZ)。,6.2 串行通信接口(SCI),SCI波特率計(jì)算 內(nèi)部產(chǎn)生的串行時(shí)鐘由系統(tǒng)時(shí)鐘頻率CLKOUT和兩個(gè)波特率選擇寄存器決定。SCI使用16位的波特率選擇寄存器來選擇65536種不同的串行時(shí)鐘頻率中的一種。 SCI波特率選擇寄存器為SCIHBAUD(高字節(jié))和SCILBAUD(低字節(jié)),連一起形成16位的波特率值BRR。,6.2 串行通信接口(SCI),SCI波
11、特率可以使用如下的公式計(jì)算。 上式適用于1BRR65535的情況,如果BRR0,則波特率的計(jì)算公式如下:,6.2 串行通信接口(SCI),在實(shí)際異步串行通信中,常取一些典型的波特率值,表6.2給出了欲取這些典型值時(shí),SCI的BRR的值、SCI波特率實(shí)際值(BAUD)及誤差。,表6.2系統(tǒng)時(shí)鐘頻率與SCI的BRR及SCI波特率關(guān)系,6.2 串行通信接口(SCI),可編程的數(shù)據(jù)格式 串行通信接口可的數(shù)據(jù)無論是接收還是發(fā)送都采用NRZ(非歸零)格式,NRZ包括以下組成部分: 1個(gè)起始位 1-8個(gè)數(shù)據(jù)位. 1個(gè)或無奇偶校驗(yàn)位 1-2個(gè)停止位 1個(gè)從數(shù)據(jù)中識(shí)別地址的附加位(僅用于地址模式) 基本單位為一
12、個(gè)字符,其長(zhǎng)度為1-8位。 數(shù)據(jù)的每個(gè)字符格式化為1個(gè)起始位,1-2個(gè)停止位和可選的奇偶校驗(yàn)位和地址位,如圖6.5所示。,6.2 串行通信接口(SCI),圖6.5 SCI數(shù)據(jù)幀格式,6.2 串行通信接口(SCI),多處理器異步通信模式 SCI提供了與許多外設(shè)的UART通信模式。異步模式需要兩條線與標(biāo)準(zhǔn)設(shè)備接口,如使用RS-232C格式的終端和打印機(jī)等。 SCI有兩種多處理器協(xié)議: (1)空閑線路多處理器模式。 (2)地址位多處理器模式。 這些協(xié)議允許在多個(gè)處理器之間進(jìn)行有效的數(shù)據(jù)傳 輸。,6.2 串行通信接口(SCI),6.2.2 SCI多處理器通信 1. 概述 多處理器通信中一條串行線上只能
13、有一個(gè)信息源,即只能有一個(gè)講者。 地址字節(jié) 信息源發(fā)送的數(shù)據(jù)塊的第一個(gè)字節(jié)為一地址字節(jié),它被所有的接收器讀取,但只有地址正確的接收器才能被緊隨地址字節(jié)后面的數(shù)據(jù)字節(jié)中斷,地址不正確的接收器不被中斷,直到下一個(gè)地址字節(jié)。 SLEEP位 串行線路上的所有處理器將它們的串行通信接口的SLEEP位(SClCTL1.2)設(shè)置為1,僅在檢測(cè)到地址字節(jié)時(shí)才被中斷。當(dāng)一個(gè)處理器讀取到的一個(gè)數(shù)據(jù)塊地址與本器件地址相一致時(shí),用戶程序必須清除SLEEP位來確保串行通信接口在收到每個(gè)數(shù)據(jù)字節(jié)時(shí)產(chǎn)生一個(gè)中斷。盡管當(dāng)SLEEP位為1時(shí),接收器仍能工作,但它不會(huì)使RXRDY、RXINT或任何接收錯(cuò)誤狀態(tài)位設(shè)置為1,除非檢測(cè)
14、到地址字節(jié),且接收到的幀的地址位是1。 SLEEP位必須由用戶軟件改變。,6.2 串行通信接口(SCI),識(shí)別地址字節(jié) 處理器根據(jù)多處理器的模式來識(shí)別一個(gè)地址字節(jié),例如: 空閑線模式在地址字節(jié)前留有一段靜空間。該模式?jīng)]有一個(gè)附加的地址數(shù)據(jù)位,在處理包含多于10個(gè)字節(jié)的數(shù)據(jù)塊的情況下,其效率比地址位模式更高。 地址位模式為每個(gè)字節(jié)增加一個(gè)附加位(地址位)來從數(shù)據(jù)中識(shí)別地址。該模式在處理多個(gè)小數(shù)據(jù)塊時(shí)更有效。與空閑線模式不一樣,因?yàn)樗跀?shù)據(jù)塊之間不需要等待。但在大數(shù)據(jù)塊傳輸中效率不如空閑線模式。 控制SCI Tx和Rx特性 多處理器的模式可通過ADDRIDLE MODE位(SCICCR.3)來設(shè)置
15、。 兩種模式都使用TXWAKE位(SCICTL1.3)、RXWAKE位(SCIRXST.1)和SLEEP標(biāo)志位(SCICTL1.3)來控制串行通信接口發(fā)送器和接收器的工作狀態(tài)。,6.2 串行通信接口(SCI),接收過程:在兩種多處理器模式中,接收過程如下: (1)在接收一個(gè)地址塊時(shí),串行通信接口喚醒并請(qǐng)求一個(gè)中斷(中斷必須被使能)。它讀取地址塊的第一幀數(shù)據(jù),其中包括目的地址。 (2)通過中斷和檢查程序引入的地址進(jìn)入一個(gè)軟件服務(wù)程序,并且該地址字節(jié)與保存在內(nèi)存中的本器件地址再次進(jìn)行校對(duì)。 (3)如果檢查表明此塊是DSP控制器的地址,則CPU清除SLEEP位并讀塊的其余部分,如果不是,則退出軟件子
16、程序,SLEEP位設(shè)置為1,直到下一個(gè)地址塊開始才接收中斷。,6.2 串行通信接口(SCI),2. 空閑線多處理器模式 ADDRIDLE MODE0,數(shù)據(jù)塊被塊間的時(shí)間間隔分開,該時(shí)間間隔比塊中數(shù)據(jù)幀之間的時(shí)間間隔要長(zhǎng)。一幀后的空閑時(shí)間(十個(gè)或更多的高電平位)表明了一個(gè)新塊的開始,單個(gè)位的時(shí)間可以由波特率值算出。,6.2 串行通信接口(SCI),3. 地址位多處理器模式 ADDR/IDLE MODE位1,每幀中有一附加的地址位緊跟在最后一個(gè)數(shù)據(jù)位后。在數(shù)據(jù)塊的第一幀中,地址位設(shè)為1,而在其它所有的幀中置成0??臻e周期的時(shí)間是不相連的。,6.2 串行通信接口(SCI),6.2.3 SCI接收和發(fā)
17、送時(shí)序及中斷 SCI通信模式 接收器在接收到一個(gè)有效的起始位后開始工作。一個(gè)有效的起始位由4個(gè)連續(xù)的內(nèi)部SCICLK周期的零位來識(shí)別。如果任何一個(gè)位都不為0,則處理器重新啟動(dòng)并開始尋找另一個(gè)起始位。 對(duì)于起始位后的位,處理器通過在其中間進(jìn)行三次采樣來判定其位值。采樣點(diǎn)位于第4、5、6個(gè)SCICLK周期。如果三次采樣有兩次為某值,則判定為該值。,6.2 串行通信接口(SCI),SCI接收時(shí)序,6.2 串行通信接口(SCI),SCI發(fā)送時(shí)序,6.2 串行通信接口(SCI),SCI中斷 SCI的接收器和發(fā)送器可以由中斷控制,SCICTL2寄存器中有一個(gè)標(biāo)志位(TXRDY)表示有效的中斷條件,SCIR
18、XST寄存器有兩個(gè)中斷標(biāo)志位(RXRDY和BRKDT)和接收錯(cuò)誤標(biāo)志位(RX ERROR),其中RX ERROR是FE、OE和PE條件的邏輯或。發(fā)送器和接收器有各自的中斷使能位。 當(dāng)中斷被屏蔽時(shí),不會(huì)產(chǎn)生中斷,但條件標(biāo)志位仍有效,該位反映了發(fā)送和接收的狀態(tài),可用于查詢方式。 串行通信接口(SCl)的發(fā)送器和接收器有自己獨(dú)立的外設(shè)中斷向量。 外設(shè)中斷請(qǐng)求可使用高優(yōu)先級(jí)或低優(yōu)先級(jí),中斷優(yōu)先級(jí)由SCIPRI寄存器中相應(yīng)的位來控制。當(dāng)接收和發(fā)送中斷都設(shè)置為相同的優(yōu)先級(jí)時(shí),接收中斷往往具有更高的優(yōu)先級(jí),這樣可以減少接收超時(shí)錯(cuò)誤。,6.2 串行通信接口(SCI),如果RXBK INT ENA位(SCICT
19、L2.1)置1,則當(dāng)發(fā)生以下事件之一就產(chǎn)生一次接收中斷: (1)SCI接收到一個(gè)完整的幀并將RXSHF寄存器中的內(nèi)容傳送到SCIRXBUF寄存器,該操作會(huì)置位RXRDY(SCIRXST.6),并初始化中斷。 (2)間斷檢測(cè)條件發(fā)生(在一個(gè)丟失的停止位之后,SCIRXD引腳保持10個(gè)周期的低電平)。該操作會(huì)設(shè)置BRKDT標(biāo)志位,并初始化中斷。 如果TX INT ENA位(SCICTL2.0)置位,當(dāng)SCITXBUF寄存器中的數(shù)據(jù)傳送到TXSHF寄存器時(shí),將產(chǎn)生一個(gè)發(fā)送中斷請(qǐng)求,用以表示CPU可以寫數(shù)據(jù)到SCITXBUF寄存器中,該操作會(huì)置位TXRDY標(biāo)志SCICTL2.7,并初始化一個(gè)中斷。,6
20、.2 串行通信接口(SCI),6.2.4 SCI編程 1. SCI寄存器 SCI共有11個(gè)可訪問寄存器,占用數(shù)據(jù)存儲(chǔ)空間7050H-705FH單元。 (1)SCI通信控制寄存器(SCICCR)-7050H,6.2 串行通信接口(SCI),(2)SCI控制寄存器1(SCICTL1)-7051H,(3)SCI波特率選擇寄存器(SCIHBAUD, SCILBAUD)-7052H和7053H,6.2 串行通信接口(SCI),(4)SCI控制寄存器2(SCICTL2)-7054H,(5)SCI接收狀態(tài)寄存器(SCIRXST)-7055H,6.2 串行通信接口(SCI),(6)SCI接收數(shù)據(jù)緩沖寄存器(S
21、CIRXEMU,SCIRXBUF)-7056H和7057H,(7)SCI發(fā)送數(shù)據(jù)緩沖寄存器(SCITXBUF)-7059H,6.2 串行通信接口(SCI),(8)SCI端口控制寄存器2(SCIPC2)-705EH,(9)SCI優(yōu)先級(jí)控制寄存器(SCIPRI)-705FH,6.2 串行通信接口(SCI),2. 編程舉例(略),6.3 串行外設(shè)接口(SPI),SPI:高速同步串行輸入/輸出端口,傳送速率可編程 應(yīng)用:外部移位寄存器、D/A、A/D、串行EEPROM、LED顯示驅(qū)動(dòng)器等外部設(shè)備進(jìn)行擴(kuò)展。 6.3.1 SPI模塊結(jié)構(gòu)概述 SPI模塊的硬件結(jié)構(gòu)如圖6.18所示。 1. SPI引腳 4個(gè)外
22、部引腳,以下引腳都可用作數(shù)字I/O引腳。 SPISIMOSPI從輸入、主輸出 SPISOMISPI主輸入、從輸出 SPICLK SPI時(shí)鐘 SPISTESPI選通引腳,圖6.18 SPI模塊框圖,6.3 串行外設(shè)接口(SPI),有五個(gè)控制位用于初始化串行外設(shè)接口的中斷: SPI中斷使能位:SPI INT ENA (SPICTL.0); SPI中斷標(biāo)志位:SPI INT FLAG(SPISTS.6); SPI超限中斷使能位:OVERRUN INT ENA(SPICTL.4); SPI接收器超限中斷標(biāo)志位:RECEIVER OVERRUN FLAG(SPISTS.7) SPI中斷優(yōu)先級(jí)選擇位:SP
23、I PRIORITY(SPIPRI.6)。,6.3 串行外設(shè)接口(SPI),3. SPI數(shù)據(jù)傳送及數(shù)據(jù)格式 SPI通信時(shí),要發(fā)送的數(shù)據(jù)從SPIDAT寄存器的MSB依次移出,接收的數(shù)據(jù)則從SPIDAT的LSB依次移入。 SPI數(shù)據(jù)字符位數(shù)(1-16位)由SPICCR.3-0指定。 當(dāng)寫入SPIDAT或SPITXBUF時(shí),數(shù)據(jù)必須是左對(duì)齊的。 數(shù)據(jù)從SPIRXBUF讀回時(shí)是右對(duì)齊的。,6.3 串行外設(shè)接口(SPI),4. 主從模式 下圖是SPI用于兩個(gè)控制器(一個(gè)主控制器和一個(gè)從控制器)通信的典型連接方式。,6.3 串行外設(shè)接口(SPI),SPI可工作于主模式或從模式。 SPICTL.2位-MAS
24、TER/SLAVE用來選擇操作模式和SPICLK的源。 (1)主模式 將Master的數(shù)據(jù)傳送給Slave,數(shù)據(jù)傳送完畢,申請(qǐng)中斷。 (2)從模式 將Slave的數(shù)據(jù)傳送給Master,數(shù)據(jù)傳送完畢,申請(qǐng)中斷。,6.3 串行外設(shè)接口(SPI),由圖知,SPI有兩種工作模式:主模式和從模式,操作模式由SPICTL.2(MASTER/SLAVE位)決定。 數(shù)據(jù)的發(fā)送方式有三種: (1)主控制器發(fā)送數(shù)據(jù),從控制器發(fā)送偽數(shù)據(jù); (2)主控制器發(fā)送數(shù)據(jù),從控制器發(fā)送數(shù)據(jù); (3)主控制器發(fā)送偽數(shù)據(jù),從控制器發(fā)送數(shù)據(jù)。 主控制器控制SPICLK信號(hào),通過發(fā)出SPICLK信號(hào)啟動(dòng)數(shù)據(jù)發(fā)送,從控制器則通過檢測(cè)
25、SPICLK信號(hào)接收數(shù)據(jù)。 一個(gè)主控制器可以連接多個(gè)從控制器,但是一次只允許一個(gè)從控制器給主控制器發(fā)送數(shù)據(jù),6.3 串行外設(shè)接口(SPI),5. 波特率和時(shí)鐘 SPI模塊支持125種不同的波特率和4種不同的時(shí)鐘模式。SPI最大波特率為CLKOUT頻率的四分之一。 (1)波特率 SPI波特率取決于CLKOUT和SPIBRR的值。 對(duì)于SPIBRR=3-127 SPI波特率=CLKOUT/(SPIBRR+1) 對(duì)于SPIBRR=0-2 SPI波特率=CLKOUT/4 SPI最大波特率=CLKOUT/4=10MHz,6.3 串行外設(shè)接口(SPI),(2)SPI時(shí)鐘 SPI有四種時(shí)鐘模式,由CLOCK
26、 POLARITY和CLOCK PHASE位控制。 CLOCK POLARITY位:選擇時(shí)鐘的有效沿是上升沿還是下降沿; CLOCK PHASE位:選擇是否有半個(gè)時(shí)鐘周期的延時(shí)。 下降沿,無延時(shí):SPI在時(shí)鐘下降沿發(fā)送數(shù)據(jù),在時(shí)鐘的上升沿接收數(shù)據(jù); 下降沿,有延時(shí):SPI在時(shí)鐘下降沿前半個(gè)周期發(fā)送數(shù)據(jù),在時(shí)鐘的下降沿接收數(shù)據(jù); 上升沿,無延時(shí):SPI在時(shí)鐘上升沿發(fā)送數(shù)據(jù),在下降沿接收數(shù)據(jù); 上升沿,有延時(shí):SPI在時(shí)鐘上升沿前半個(gè)周期發(fā)送數(shù)據(jù),在上升沿接收數(shù)據(jù)。 4種時(shí)鐘模式如圖所示。,6.3 串行外設(shè)接口(SPI),SPI的復(fù)位和初始化 系統(tǒng)復(fù)位使SPI引腳功能被選定為通用輸入,要對(duì)SPI的
27、配置,需做以下工作: 設(shè)置SPI SW RESET位(SPICCR.7)的值為0,強(qiáng)制SPI復(fù)位; 初始化SPI的配置、格式、波特率和引腳功能為期望值; 設(shè)置SPI SW RESET位為1,從復(fù)位狀態(tài)釋放SPI; 向SPIDAT或SPITXBUF寫數(shù)據(jù); 數(shù)據(jù)發(fā)送完成后(SPISTS.6=1),讀取SPIRXBUF以確定接收的數(shù)據(jù)。,6.3 串行外設(shè)接口(SPI),6.3.2 SPI編程 1. SPI寄存器 SPI模塊共有10個(gè)寄存器用于控制該模塊的操作,他們占用數(shù)據(jù)存儲(chǔ)器空間的7040H704EH: (1)SPI配置控制寄存器SPICCR地址7040h,6.3 串行外設(shè)接口(SPI),(2)
28、SPI操作控制寄存器SPICTL 7041h (3)SPI狀態(tài)寄存器SPISTS地址7042h,6.3 串行外設(shè)接口(SPI),(4)SPI波特率寄存器SPIBRR地址7044h (5)SPI接收數(shù)據(jù)緩沖器:仿真緩沖寄存器SPIEMU7046h和輸入緩沖器SPIBUF 7047h,6.3 串行外設(shè)接口(SPI),(6)SPI串行數(shù)據(jù)寄存器SPIDAT7049h (7)SPI端口控制寄存器1(SPIPC1)地址704Dh,6.3 串行外設(shè)接口(SPI),(8)SPI端口控制寄存器2(SPIPC2)地址704Eh (9)SPI優(yōu)先級(jí)控制寄存器SPI PRI地址704FH,6.3 串行外設(shè)接口(SP
29、I),2. 編程序舉例(略),6.4 事件管理模塊(EV),事件管理器(EV)模塊為控制系統(tǒng)(運(yùn)動(dòng)控制和電機(jī)控制)的開發(fā)提供了強(qiáng)大功能。 事件管理器模塊EV主要包含: 3個(gè)通用定時(shí)器 、3個(gè)全比較單元、3個(gè)簡(jiǎn)單比較單元、PWM電路 、4個(gè)捕獲單元 、2個(gè)正交編碼QEP電路 、事件管理器模塊中斷控制電路 等。,6.4 事件管理模塊(EV),6.4.1 事件管理模塊EV概述 1. EV引腳介紹 事件管理器模塊EV的結(jié)構(gòu)如圖6.30所示,與事件管理器相關(guān)的引腳如表6.6。 要注意的是,所有輸入引腳信號(hào)至少要保持兩個(gè)CPU時(shí)鐘的上升沿,才能被EV模塊識(shí)別,所以輸入信號(hào)必須至少保持兩個(gè)時(shí)鐘周期。,6.4
30、 事件管理模塊(EV),2. EV寄存器 EV模塊一共有64個(gè)映射局部數(shù)據(jù)存儲(chǔ)單元,用于其控制、狀態(tài)存儲(chǔ)器,地址為7400h-743Fh。,6.4 事件管理模塊(EV),3. EV中斷 事件管理器(EV)模塊共有三組中斷信號(hào),分別對(duì)應(yīng)于CPU的三個(gè)中斷輸入:INT2、INT3、INT4。這三組中斷各有自己獨(dú)立的中斷標(biāo)志寄存器:EVIFRA、EVIFRB、EVIFRC,中斷向量寄存器:EVIVRA、EVIVRB、EVIVRC,和中斷屏蔽寄存器:EVIMRA、EVIMRB、EVIMRC。 標(biāo)志置位與否,與中斷是否屏蔽無關(guān)。屏蔽寄存器在對(duì)應(yīng)位為1時(shí),中斷被開放,為0被屏蔽。只有當(dāng)屏蔽寄存器的對(duì)應(yīng)位為
31、1,且標(biāo)志位被置位為1(表示已經(jīng)有中斷請(qǐng)求),CPU才響應(yīng)中斷。 標(biāo)志位的復(fù)位有兩種方式: 1)中斷被響應(yīng),用戶軟件讀取該組的中斷向量寄存器。 2)軟件改寫中斷標(biāo)志寄存器。,6.4 事件管理模塊(EV),下表為中斷控制邏輯使用的寄存器,6.4 事件管理模塊(EV),6.4.2 通用定時(shí)器 1. 概述 事件管理器(EV)模塊中有3個(gè)通用定時(shí)器(GPT)。在實(shí)際應(yīng)用中,這些定時(shí)器能產(chǎn)生用如下用途的信號(hào): 1)系統(tǒng)中需要的計(jì)數(shù)信號(hào)。 2)離散控制系統(tǒng)的采樣周期。 3)QEP電路的時(shí)基。 4)捕獲單元的時(shí)基。 5)比較單元的時(shí)基等。 通用定時(shí)器的結(jié)構(gòu)框圖如圖6.40所示。,6.4 事件管理模塊(EV)
32、,(1)通用定時(shí)器輸入輸出 GPT的輸入信號(hào): 它可接受如下輸入信號(hào),這些信號(hào)主要是GPT運(yùn)行所需要的時(shí)鐘: 直接來自CPU內(nèi)部的時(shí)鐘CPUCLK。 外部時(shí)鐘輸入TMKCLK,最大頻率為CPUCLK的1/4。 定時(shí)器的方向輸入信號(hào)TMKDIR。 復(fù)位信號(hào)RESET。 GPT2、GPT3可以組成一個(gè)32位定時(shí)器,這時(shí),GPT2的溢出作為GPT3的輸入信號(hào)。GPT和QEP電路一起使用時(shí),QEP產(chǎn)生GPT需要的時(shí)鐘和方向信號(hào)。,6.4 事件管理模塊(EV),GPT的輸出信號(hào) 根據(jù)不同的控制寄存器設(shè)置,GPT可以產(chǎn)生如下輸出信號(hào)。 通用定時(shí)器比較/PWM輸出信號(hào),由引腳TxPWM/TxCMP輸出。 至
33、模擬/數(shù)字轉(zhuǎn)換模塊ADC的模數(shù)轉(zhuǎn)換啟動(dòng)信號(hào)。 至本身比較邏輯或全/單比較單元的下溢、上溢、比較匹配和周期匹配信號(hào)。 計(jì)數(shù)方向指示位。,6.4 事件管理模塊(EV),(2)寄存器 GPT的控制寄存器有四個(gè),TxCON(x=1、2、3)和GPTCON,前者用于三個(gè)定時(shí)器的獨(dú)立控制,后者用于GPT模塊的整體控制。 (一)TxCON TxCON決定了各定時(shí)器的自身操作方式,映射到局部數(shù)據(jù)存儲(chǔ)器的7404h、7408h、740Ch。其位布置如下圖。,6.4 事件管理模塊(EV),(二)GPTCON GPTCON決定了所有各定時(shí)器的相關(guān)操作方式,該寄存器被映射到局部數(shù)據(jù)存儲(chǔ)器的7400h。其位布置如下圖。
34、,6.4 事件管理模塊(EV),2. 通用定時(shí)器計(jì)數(shù)模式 每個(gè)通用定時(shí)器有6個(gè)可選擇的計(jì)數(shù)模式: 1)停止/保持模式。 2)單增計(jì)數(shù)模式。 3)連續(xù)增計(jì)數(shù)模式。 4)定向增/減計(jì)數(shù)模式。 5)單增/減計(jì)數(shù)模式。 6)連續(xù)增/減計(jì)數(shù)模式。 (一)停止/保持模式 該狀態(tài)下,GPT停止計(jì)數(shù)操作且保持當(dāng)前狀態(tài)。此時(shí),定時(shí)器/計(jì)數(shù)器、比較輸出、預(yù)定標(biāo)計(jì)數(shù)器都保持不變。,6.4 事件管理模塊(EV),(二)單增計(jì)數(shù)模式 單增計(jì)數(shù)模式下,GPT內(nèi)部計(jì)數(shù)器對(duì)定標(biāo)后的時(shí)鐘輸入進(jìn)行計(jì)數(shù),直到計(jì)數(shù)器寄存器(TxCNT)的值與周期寄存器(TxPR)的值匹配。隨后,將完成如下操作: 1)下一個(gè)時(shí)鐘的上升沿,GPT將計(jì)數(shù)
35、器復(fù)位為0。 2)復(fù)位定時(shí)器計(jì)數(shù)操作使能位(TxCON/Bit6),禁止計(jì)數(shù)器的后續(xù)操作。 3)計(jì)數(shù)器復(fù)位時(shí)鐘的下降沿,置位周期中斷標(biāo)志。 4)計(jì)數(shù)器復(fù)位后的下一個(gè)時(shí)鐘的下降沿,置位下溢中斷標(biāo)志。 用戶可以通過設(shè)置TxCON的定時(shí)器使能位來重新啟動(dòng)GPT的計(jì)數(shù)操作。,6.4 事件管理模塊(EV),單增計(jì)數(shù)模式圖,6.4 事件管理模塊(EV),周期中斷信號(hào)、下溢中斷信號(hào)等均可以被設(shè)置用來啟動(dòng)ADC轉(zhuǎn)換。 如果TxCNT的初始值(0000-FFFFh)小于周期寄存器的值,則向上計(jì)數(shù)到匹配為止;如果初始值大于周期寄存器的值,則向上計(jì)數(shù)到FFFFh,然后回零,再向上計(jì)數(shù)到和周期寄存器的值匹配。 向上計(jì)
36、數(shù)到FFFF時(shí),通用定時(shí)器的上溢標(biāo)志將在兩個(gè)CPU時(shí)鐘周期后被設(shè)置。 在該模式下,GPTCON的計(jì)數(shù)方向指示位為1。外部或內(nèi)部CPU時(shí)鐘都可以被用做定時(shí)器輸入時(shí)鐘。TMRDIR引腳上的輸入信號(hào)將被通用定時(shí)器忽略。,6.4 事件管理模塊(EV),(三)連續(xù)增計(jì)數(shù)模式 這個(gè)模式下,GPT對(duì)定標(biāo)后的輸入脈沖進(jìn)行計(jì)數(shù),TxCNT和周期寄存器TxPR的值匹配后,自動(dòng)清零。然后,隔一個(gè)定標(biāo)時(shí)鐘周期,再重新開始計(jì)數(shù),如此連續(xù)循環(huán)。 達(dá)到匹配值時(shí),將進(jìn)行如下操作: 1)下一個(gè)時(shí)鐘的上升沿,GPT將計(jì)數(shù)器復(fù)位為0。 2)計(jì)數(shù)器復(fù)位時(shí)鐘的下降沿,置位周期中斷標(biāo)志。 3)計(jì)數(shù)器復(fù)位后下一個(gè)時(shí)鐘的下降沿,置位下溢中斷
37、標(biāo)志。 4)計(jì)數(shù)器復(fù)位后下一個(gè)時(shí)鐘的上升沿,重新從0開始計(jì)數(shù)。 計(jì)數(shù)器時(shí)序圖見下圖。,6.4 事件管理模塊(EV),連續(xù)增計(jì)數(shù)模式圖,6.4 事件管理模塊(EV),除了第一個(gè)周期外,以后的每個(gè)周期等于TxPR+1個(gè)定標(biāo)時(shí)鐘周期。 如果TxCNT的初始值(0000-FFFFh)小于周期寄存器的值,則向上計(jì)數(shù)到匹配再?gòu)牧汩_始計(jì)數(shù);如果初始值大于周期寄存器的值,則向上計(jì)數(shù)到FFFFh,然后回零,再向上計(jì)數(shù)。實(shí)際上,除了連續(xù)循環(huán)計(jì)數(shù)外,周期、下溢、上溢中斷等標(biāo)志的設(shè)置和相關(guān)動(dòng)作,都由各自的匹配事件產(chǎn)生,和單增計(jì)數(shù)模式是一樣的。 在該模式下,GPTCON的計(jì)數(shù)方向指示位為1。外部或內(nèi)部CPU時(shí)鐘都可以被
38、用做定時(shí)器輸入時(shí)鐘。TMRDIR引腳上的輸入信號(hào)將被通用定時(shí)器忽略。,6.4 事件管理模塊(EV),(四)定向增/減計(jì)數(shù)模式 這種方式一般用于計(jì)數(shù)器1和3。此時(shí),TMRDIR引腳上的電平用于決定計(jì)數(shù)方向。高電平為增計(jì)數(shù),低電平為減計(jì)數(shù)。 初始值可以是0000-FFFFh的任何值。具體計(jì)數(shù)方法分如下幾種情況: 1當(dāng)TxCNT初始值小于TxPR時(shí): 1)當(dāng)TMRDIR為低電平時(shí),向下計(jì)數(shù)到0。只要TMRDIR維持低電平,TxCNT將維持0不變。 2)當(dāng)TMRDIR為高電平時(shí),向上計(jì)數(shù)到和TxPR匹配。只要TMRDIR維持高電平,TxCNT將維持匹配值不變。,6.4 事件管理模塊(EV),2當(dāng)TxC
39、NT初始值等于TxPR時(shí): 1)當(dāng)TMRDIR為低電平時(shí),向下計(jì)數(shù)到0。只要TMRDIR維持低電平,TxCNT將維持0不變。 2)當(dāng)TMRDIR為高電平時(shí),只要TMRDIR維持高電平,TxCNT將維持匹配值不變。 3當(dāng)TxCNT初始值大于TxPR時(shí): 1)當(dāng)TMRDIR為低電平時(shí),向下計(jì)數(shù)到匹配值,然后繼續(xù)計(jì)數(shù)到0。只要TMRDIR維持低電平,TxCNT將維持0不變。 2)當(dāng)TMRDIR為高電平時(shí),向上計(jì)數(shù)到FFFFh。只要TMRDIR維持高電平,TxCNT將維持FFFFh不變。 該模式的周期、下溢、上溢中斷等標(biāo)志的設(shè)置和相關(guān)動(dòng)作,都由各自的匹配事件產(chǎn)生,和單增計(jì)數(shù)模式是一樣的。 定時(shí)器時(shí)鐘可
40、以使用內(nèi)部或外部時(shí)鐘,TMRDIR的電平則決定了計(jì)數(shù)器的方向。,6.4 事件管理模塊(EV),定向增/減計(jì)數(shù)模式(預(yù)定標(biāo)因子=1,TxPR=3)圖,6.4 事件管理模塊(EV),(五)單增/減計(jì)數(shù)模式 在該計(jì)數(shù)模式下,通用定時(shí)器/計(jì)數(shù)器對(duì)定標(biāo)后的時(shí)鐘脈沖進(jìn)行計(jì)數(shù),首先增計(jì)數(shù)到匹配值,然后改變計(jì)數(shù)方向,減計(jì)數(shù)到0為止。此時(shí),完成一個(gè)計(jì)數(shù)周期,并做如下操作: 1)復(fù)位定時(shí)器使能位(TxCON/Bit6)來禁止繼續(xù)操作。 2)復(fù)位預(yù)定標(biāo)因子。 3)停止計(jì)數(shù)并保持當(dāng)前狀態(tài)。 如果TxCNR的初值小于TxPR的值,則先增計(jì)數(shù)到匹配值,再減計(jì)數(shù)到零。如初始值等于匹配值,則直接減計(jì)數(shù)到0。如初始值大于匹配值
41、,則先計(jì)數(shù)到FFFFh,然后回零,再增計(jì)數(shù)到匹配值,再反向減計(jì)數(shù)到零。,6.4 事件管理模塊(EV),單增/減計(jì)數(shù)模式(TxPR=3)圖,6.4 事件管理模塊(EV),該模式的周期、下溢、上溢中斷等標(biāo)志的設(shè)置和相關(guān)動(dòng)作,都由各自的匹配事件產(chǎn)生,和單增計(jì)數(shù)模式是一樣的。但要注意,此模式下的周期匹配事件是在計(jì)數(shù)周期中間過程中發(fā)生的,和前幾種方式有區(qū)別。 用戶可以通過寫1到使能位(TxCON/Bit6)來重新啟動(dòng)計(jì)數(shù)過程。 當(dāng)計(jì)數(shù)方向?yàn)樵鰰r(shí),GPTCON的方向指示位為1,方向?yàn)闇p時(shí),指示位為0。外部TMRDIR被忽略。外部時(shí)鐘或內(nèi)部CPU時(shí)鐘都可以用做定時(shí)器的時(shí)鐘輸入。,6.4 事件管理模塊(EV)
42、,(六)連續(xù)增/減計(jì)數(shù)模式 這種模式下,每當(dāng)計(jì)數(shù)器復(fù)位為零時(shí),將重復(fù)單增/減計(jì)數(shù)模式下的操作;無須任何硬件或用戶程序的干預(yù),就能進(jìn)行連續(xù)周期性計(jì)數(shù)。 如果TxCNR的初值小于TxPR的值,則先增計(jì)數(shù)到匹配值,再減計(jì)數(shù)到零,然后循環(huán)計(jì)數(shù)。如初始值等于匹配值,則直接減計(jì)數(shù)到0,再繼續(xù)循環(huán)。如初始值大于匹配值,則先計(jì)數(shù)到FFFFh,然后回零,再循環(huán)計(jì)數(shù)。 該模式的周期、下溢、上溢中斷等標(biāo)志的設(shè)置和相關(guān)動(dòng)作,都由各自的匹配事件產(chǎn)生,和單增計(jì)數(shù)模式是一樣的。 當(dāng)計(jì)數(shù)方向?yàn)樵鰰r(shí),GPTCON的方向指示位為1,方向?yàn)闇p時(shí),指示位為0。外部TMRDIR被忽略。外部時(shí)鐘或內(nèi)部CPU時(shí)鐘都可以用做定時(shí)器的時(shí)鐘輸入
43、。,6.4 事件管理模塊(EV),連續(xù)增/減計(jì)數(shù)模式圖,6.4 事件管理模塊(EV),3. 通用定時(shí)器的比較操作 各通用定時(shí)器都有一個(gè)比較寄存器TxCMPR和一個(gè)比較/PWM引腳TxPWM/TxCMP,定時(shí)器的值總是和對(duì)應(yīng)TxCMPR的值相比較,當(dāng)兩者相等時(shí),就發(fā)生比較匹配事件。 通過將TxCON/Bit1設(shè)置為1,可以使能定時(shí)器的比較操作。出現(xiàn)比較匹配事件時(shí),將進(jìn)行如下操作: 1)2個(gè)CPU時(shí)鐘周期后,定時(shí)器比較中斷標(biāo)志被設(shè)置。 2)如果通用定時(shí)器不處于定向增減操作模式,1個(gè)CPU時(shí)鐘周期后,根據(jù)GPTCON中位的配置情況,對(duì)應(yīng)比較/PWM輸出引腳發(fā)生信號(hào)跳變。 3)如果已經(jīng)使能定時(shí)器比較中
44、斷標(biāo)志位來啟動(dòng)ADC轉(zhuǎn)換,則當(dāng)該標(biāo)志被置位時(shí),同時(shí)產(chǎn)生AD轉(zhuǎn)換所需要的啟動(dòng)信號(hào)。 4)如定時(shí)器比較中斷未被屏蔽,且沒有優(yōu)先級(jí)更高的中斷被掛起,則比較中斷標(biāo)志產(chǎn)生的中斷請(qǐng)求將被送到DSP內(nèi)核。 如果比較操作被禁止,對(duì)應(yīng)比較/PWM輸出處于高阻態(tài),上述動(dòng)作也不會(huì)發(fā)生。,6.4 事件管理模塊(EV),非對(duì)稱波形的輸出 GPT處于單增或連續(xù)增計(jì)數(shù)模式時(shí),在比較/PWM輸出引腳上產(chǎn)生非對(duì)稱波形。如果引腳高電平有效,引腳信號(hào)的變化順序是: 1計(jì)數(shù)開始前,輸出為0。 2信號(hào)保持不變,直到比較匹配事件發(fā)生。 3發(fā)生比較匹配事件時(shí),引腳產(chǎn)生電平跳變。 4信號(hào)保持不變,直到該計(jì)數(shù)周期結(jié)束。 5如果下一個(gè)計(jì)數(shù)周期的
45、比較寄存器值不是0,則發(fā)生周期匹配事件后的那個(gè)周期結(jié)束時(shí),信號(hào)復(fù)位為0。如下圖。 關(guān)于比較寄存器的值,還有如下三種特殊情況: 1)如計(jì)數(shù)周期開始時(shí),比較值為0,則在整個(gè)計(jì)數(shù)周期內(nèi),引腳一直為1(高)。,6.4 事件管理模塊(EV),2)如果比較值大于周期寄存器的值,則整個(gè)計(jì)數(shù)周期都維持為0。TxCMPRTxPR時(shí),則無此脈沖輸出。 3)如果比較值等于周期寄存器的值,則在周期結(jié)束前的最后一個(gè)計(jì)數(shù)脈沖內(nèi)輸出一個(gè)計(jì)數(shù)時(shí)鐘脈沖。 下圖為連續(xù)增計(jì)數(shù)模式的GPT比較/PWM輸出圖。,6.4 事件管理模塊(EV),對(duì)稱波形的輸出 GPT處于單增/減或連續(xù)增/減計(jì)數(shù)模式時(shí),在比較/PWM輸出引腳上產(chǎn)生對(duì)稱波形
46、。如果引腳高電平有效,引腳信號(hào)的變化順序是: 1計(jì)數(shù)開始前,輸出為0。 2信號(hào)保持不變,直到比較匹配事件發(fā)生。 3發(fā)生比較匹配事件時(shí),引腳產(chǎn)生電平跳變。 4信號(hào)保持不變,直到第二次比較匹配事件發(fā)生。 5第二次比較匹配事件發(fā)生時(shí),引腳信號(hào)產(chǎn)生反向跳變。 6信號(hào)保持不變,直到該計(jì)數(shù)周期結(jié)束。,6.4 事件管理模塊(EV),第一次匹配指增計(jì)數(shù)期間(前半周期),第二次匹配指減計(jì)數(shù)期間(后半周期)。 關(guān)于比較寄存器的值,還有如下幾種特殊情況(正邏輯): 1)如周期開始時(shí),比較值為0,輸出將被置1,直到下次比較匹配事件發(fā)生。 2)如果因比較匹配事件導(dǎo)致輸出從0到1跳變后,后半個(gè)周期內(nèi)比較值為0,則輸出信號(hào)
47、將保持1,直到該計(jì)數(shù)周期結(jié)束。 3)如果輸出在下一計(jì)數(shù)周期到來時(shí)保持高電平,而新周期比較值為0,則繼續(xù)保持1不變(1-1);如果下一個(gè)計(jì)數(shù)周期的比較寄存器值不是0,則該計(jì)數(shù)周期結(jié)束時(shí),信號(hào)復(fù)位為0(1-0)。 4)如果前半周期比較值大于或等于周期寄存器的值,則信號(hào)將不跳變。但如下半周期發(fā)生周期匹配事件,則輸出電平仍然發(fā)生跳變。,6.4 事件管理模塊(EV),總結(jié)一下,實(shí)際上這個(gè)PWM對(duì)稱輸出的規(guī)律就是: 1)標(biāo)準(zhǔn)的PWM對(duì)稱波形應(yīng)在增/減計(jì)數(shù)的對(duì)應(yīng)前后半周各發(fā)生一次匹配事件,每次發(fā)生匹配事件,信號(hào)將跳變。此時(shí)無論前后半周,都有0TxPR,則視為沒有匹配條件,信號(hào)將不跳變。,連續(xù)增/減計(jì)數(shù)模式的
48、GPT比較/PWM輸出圖,6.4 事件管理模塊(EV),定向增/減計(jì)數(shù)模式下的比較輸出 該方式下,比較/PWM輸出引腳不會(huì)發(fā)生任何變化,但比較中斷系統(tǒng)依然有效。 通用定時(shí)器的復(fù)位狀態(tài) 通用定時(shí)器在發(fā)生任意復(fù)位操作時(shí),其狀態(tài)變化如下: GPTCON的計(jì)數(shù)方向指示位被置1。 除了計(jì)數(shù)方向指示位外,控制寄存器TxCON、GPTCON其余各位均被置0。 通用定時(shí)器操作被禁止。 所有定時(shí)器中斷標(biāo)志位被復(fù)位為0。 所有定時(shí)器中斷屏蔽位被復(fù)位為0,即中斷被屏蔽。 所有比較/PWM輸出引腳被設(shè)置為高阻態(tài)。,6.4 事件管理模塊(EV),6.4.3 比較單元 EV模塊有三個(gè)全比較單元、三個(gè)簡(jiǎn)單比較單元。每個(gè)全比
49、較單元有2個(gè)比較/PWM輸出引腳,每個(gè)簡(jiǎn)單比較單元有1個(gè)比較/PWM輸出引腳。 1. 簡(jiǎn)單比較單元 簡(jiǎn)單比較單元時(shí)鐘由通用定時(shí)器1或2提供。 3個(gè)單比較單元包括: 1)3個(gè)可讀寫的16位比較寄存器(SCMPRx,x=1、2、3),各帶有一個(gè)投影寄存器。,6.4 事件管理模塊(EV),2)1個(gè)可讀寫的比較控制寄存器COMCON,所有比較寄存器共享。 3)1個(gè)16位單比較動(dòng)作控制寄存器SACTR,帶1個(gè)投影寄存器。 4)3個(gè)對(duì)稱/非對(duì)稱波形發(fā)生器。 5)3個(gè)比較/PWM(3態(tài))輸出引腳PWMy/CMPy(y=7、8、9),極性可編程。 6)比較、中斷和輸出控制邏輯。 下面是簡(jiǎn)單比較單元邏輯框圖:,
50、簡(jiǎn)單比較單元結(jié)構(gòu)框圖,6.4 事件管理模塊(EV),3個(gè)比較單元的操作與通用定時(shí)器類似,存在區(qū)別如下: 1)簡(jiǎn)單比較單元的時(shí)鐘輸入來源于定時(shí)器1或2。 2)簡(jiǎn)單比較單元的工作特性由自身的控制寄存器COMCON、SACTR控制。 簡(jiǎn)單比較單元時(shí)序波形與通用定時(shí)器相同,出現(xiàn)匹配事件時(shí),也將設(shè)置中斷標(biāo)志,并申請(qǐng)中斷。實(shí)際上,就是T1CNT、T2CNT的值和SCMPx進(jìn)行比較操作。,6.4 事件管理模塊(EV),2. 全比較單元 (一)結(jié)構(gòu) 3個(gè)全比較單元包括: 1)3個(gè)可讀寫的16位比較寄存器(CMPRx,x=1、2、3),各帶一個(gè)投影寄存器。 2)1個(gè)可讀寫的比較控制寄存器COMCON,所有比較寄
51、存器共享。 3)1個(gè)16位全比較動(dòng)作控制寄存器ACTR,帶1個(gè)投影寄存器。 4)6個(gè)比較/PWM(3態(tài))輸出腳PWMy/CMPy(y=1、2、3、4、5、6),極性可編程。 5)控制、中斷和輸出控制邏輯。 下圖是全比較單元邏輯框圖:,全比較單元結(jié)構(gòu)框圖,6.4 事件管理模塊(EV),(二)全比較單元的控制 (1)全比較單元時(shí)鐘由通用定時(shí)器1提供。 (2)通用定時(shí)器可處于任何工作模式,定向增減方式時(shí),比較輸出不發(fā)生變化。 (3)所需要的輸入信號(hào)有: 1)控制寄存器的控制信號(hào)。 2)來自于通用定時(shí)器1的計(jì)數(shù)信號(hào)、下溢信號(hào)和周期匹配信號(hào)。 3)復(fù)位信號(hào)。 (4)COMCON寄存器也控制全比較單元,它
52、還受自身的控制寄存器ACTR控制。,6.4 事件管理模塊(EV),(三)全比較單元的兩種工作模式 通過設(shè)置COMCON,可以規(guī)定全比較單元工作于如下兩種模式。 (1)比較模式 當(dāng)COMCON中全比較操作被使能,且比較模式被選中時(shí),通用定時(shí)器的計(jì)數(shù)器就不斷地和全比較單元的比較寄存器進(jìn)行比較。當(dāng)發(fā)生匹配時(shí),進(jìn)行如下操作: 1)兩個(gè)輸出腳根據(jù)ACTR的設(shè)置發(fā)生電平跳變。該引腳有四種狀態(tài):保持、復(fù)位(低)、置位(高)、比較匹配觸發(fā)。 2)設(shè)置全比較單元的中斷標(biāo)志。過程與通用定時(shí)器類似。 (2)PWM模式 全比較單元被設(shè)置為PWM模式時(shí),類似于通用定時(shí)器的比較操作,引腳上將產(chǎn)生PWM輸出。區(qū)別是: 1)
53、全比較單元使用自身的控制寄存器。 2)輸出波形受內(nèi)部死區(qū)單元和空間矢量PWM邏輯電路的改變。,6.4 事件管理模塊(EV),(四)全比較單元的使用設(shè)置步驟 為了實(shí)現(xiàn)全比較單元的操作,用戶可以按如下步驟設(shè)置: 1)設(shè)置T1PR,給出計(jì)數(shù)周期。 2)設(shè)置ACTR,確認(rèn)輸出邏輯等。 3)初始化CMPRx,設(shè)置比較值。 4)設(shè)置COMCON。 5)設(shè)置T1CON,規(guī)定T1的工作模式。 X24X有一個(gè)問題:COMCON通常要被寫操作兩次,才能保證PWM輸出的正確性。 可以看到,所有比較單元都不能獨(dú)立工作,需要和通用定時(shí)器配合操作。,6.4 事件管理模塊(EV),3. 比較單元控制寄存器 比較單元有COM
54、CON、ACTR、SACTR等控制寄存器。 (一)比較控制寄存器COMCON(工作方式、使能、重載條件)-7411H,6.4 事件管理模塊(EV),(二)全比較動(dòng)作控制寄存器ACTR(空間矢量、輸出邏輯)-7413H,(三)單比較動(dòng)作控制寄存器SACTR(輸出邏輯)-7414H,6.4 事件管理模塊(EV),6.4.4 與全比較單元相關(guān)的PWM電路 PWM控制是電動(dòng)機(jī)運(yùn)動(dòng)控制應(yīng)用中,廣泛使用的技術(shù)。與全比較單元相關(guān)的PWM電路可在極大的減少CPU或用戶干預(yù)的情況下,產(chǎn)生帶有可編程死區(qū)和輸出極性的6個(gè)PWM脈沖輸出。 PWM電路主要包括如下部分: 非對(duì)稱/對(duì)稱波形發(fā)生器。 可編程死區(qū)單元(DBU
55、)。 輸出邏輯。 空間矢量PWM狀態(tài)機(jī)。 與全比較單元相關(guān)的波形產(chǎn)生受T1CON、COMCON、ACTR和DBTCON等寄存器的控制。,PWM電路結(jié)構(gòu)框圖,6.4 事件管理模塊(EV),1. 死區(qū)單元 死區(qū)單元是針對(duì)全比較單元的PWM工作模式而設(shè)置的。 如下圖,死區(qū)單元用于形成PWM死區(qū),這個(gè)死區(qū)是可編程的。它包含如下部分: 1個(gè)用戶可讀寫的16位死區(qū)定時(shí)器控制寄存器DBTCON。 1個(gè)輸入時(shí)鐘預(yù)定標(biāo)器。 采用CPU時(shí)鐘輸入。 內(nèi)部3個(gè)8位減計(jì)數(shù)器。 控制、比較邏輯。,6.4 事件管理模塊(EV),(1)死區(qū)定時(shí)器控制寄存器DBTCON -7415H,位15-8 DBT7一DBT0:規(guī)定了3個(gè)
56、8位死區(qū)定時(shí)器的周期值。 位7 EDBT3:死區(qū)定時(shí)器3使能位(對(duì)應(yīng)PWM5和PWM6)。 位6 EDBT2:死區(qū)定時(shí)器2使能位(對(duì)應(yīng)PWM3和PWM4)。 位5 EDBT1:死區(qū)定時(shí)器1使能位(對(duì)應(yīng)PWM1和PWM2)。 位4-3 DBTPS1-DBTPS0:死區(qū)定時(shí)器的預(yù)定標(biāo)因子。 位2-0: 保留。,6.4 事件管理模塊(EV),(2)死區(qū)的產(chǎn)生 一個(gè)全比較單元在處于比較模式時(shí),死區(qū)功能將被禁止。 死區(qū)單元的輸入信號(hào)是PH1、PH2、PH3,分別來自全比較單元的非對(duì)稱/對(duì)稱波形發(fā)生器和矢量狀態(tài)機(jī);其輸出是DTPH1/DTPH1_、DTPH2/DTPH2_、DTPH3/DTPH3_,與PH
57、1、PH2、PH3分別對(duì)應(yīng)。 當(dāng)死區(qū)功能未被使能時(shí),每個(gè)單元的兩個(gè)輸出信號(hào)完全相同;當(dāng)被使能后,則2個(gè)信號(hào)的跳變點(diǎn)不再相同,而是具有一段時(shí)間間隔,該間隔稱為“死區(qū)”。 死區(qū)的時(shí)間長(zhǎng)度由控制寄存器DBTCON決定,假定其15-8位是m,預(yù)定標(biāo)因子4-3位是1/p,則:死區(qū)長(zhǎng)度=pxm個(gè)時(shí)鐘周期。,6.4 事件管理模塊(EV),2. 輸出邏輯 比較單元的輸出引腳PWMx/CMPx的邏輯規(guī)律如下: (一)單比較單元 對(duì)單比較單元來講,控制寄存器SACTR規(guī)定了它的極性: 強(qiáng)制高:輸出一直為高; 強(qiáng)制低:輸出一直為低; 高有效:即正邏輯; 低有效:即負(fù)邏輯。 (二)全比較單元 對(duì)全比較單元來講,控制寄
58、存器ACTR決定了它的極性。 (1)當(dāng)處于比較模式時(shí),分為: 置位:即置為高電平; 復(fù)位:即置為低電平; 保持:輸出保持不變; 觸發(fā):正常輸出狀態(tài)。 (2)處于PWM模式時(shí),有: 強(qiáng)制高:輸出一直為高; 強(qiáng)制低:輸出一直為低; 高有效:即正邏輯; 低有效:即負(fù)邏輯。 (三)輸出高阻態(tài) 當(dāng)發(fā)生如下事件時(shí),輸出處于高阻態(tài): COMCON的位8(單比較使能)、9(全比較使能)被清零; 當(dāng)PDPINT中斷產(chǎn)生并未被屏蔽時(shí); 任何復(fù)位事件發(fā)生。,6.4 事件管理模塊(EV),3. 比較單元和PWM電路中PWM波形總結(jié) (1)PWM信號(hào) PWM是一組具有特定載波周期和頻率,但寬度可以調(diào)節(jié)的脈沖序列。為了對(duì)每周期內(nèi)的脈沖寬度進(jìn)行調(diào)節(jié),需要有另一列具有需要值的調(diào)制信號(hào)。 PWM信號(hào)廣泛用于電動(dòng)機(jī)的控制,該信號(hào)可以用來控制驅(qū)動(dòng)功率器件的開閉時(shí)間,從而實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的驅(qū)動(dòng)特性可調(diào)節(jié)。,6.4 事件管理模塊(EV),(2)EV的PWM輸出 DSP的PWM信號(hào)產(chǎn)生,是通過定時(shí)器和比較器來產(chǎn)生的。一般方法是: 使定時(shí)器工作在連續(xù)增或連續(xù)增減方式; 對(duì)定時(shí)器給出一個(gè)合適的周期值,作為載波周期; 給出一個(gè)合適的比較值,作為調(diào)節(jié)信號(hào),通過調(diào)節(jié)增、減計(jì)數(shù)過程中的比較匹配點(diǎn),控制脈沖寬度。 通常,全比較單元的6個(gè)輸出,可以產(chǎn)生6組死區(qū)可編程的驅(qū)動(dòng)信號(hào),用于控制三相電機(jī)的驅(qū)動(dòng)。由于DSP的可編程特性,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)殖污水現(xiàn)場(chǎng)管理制度
- 回收食品登記管理制度
- 培訓(xùn)課程置換管理制度
- 公司巡邏人員管理制度
- 基層醫(yī)生培訓(xùn)管理制度
- 單位用車申請(qǐng)管理制度
- 培訓(xùn)學(xué)校校車管理制度
- 勞務(wù)資金支付管理制度
- 小區(qū)過道安全管理制度
- 公司借支預(yù)支管理制度
- 2025年海南省中考模擬語(yǔ)文試題(含答案)
- 交通設(shè)計(jì)(Traffic Design)知到智慧樹章節(jié)測(cè)試課后答案2024年秋同濟(jì)大學(xué)
- 2025年日歷表(A4版含農(nóng)歷可編輯)
- MOOC 大學(xué)物理-力學(xué)、電磁學(xué)-重慶大學(xué) 中國(guó)大學(xué)慕課答案
- 傳媒公司合作合同
- 測(cè)量-極坐標(biāo)法講義
- 思想道德與法治課件:第六章 第一節(jié) 社會(huì)主義法律的特征和運(yùn)行
- 五年級(jí)數(shù)學(xué)下冊(cè)測(cè)試題(高清打印版)
- 露天礦采坑邊坡穩(wěn)定性評(píng)價(jià)報(bào)告
- 初中畢業(yè)典禮畢業(yè)季博士帽藍(lán)色創(chuàng)意PPT模板
- 南京郵電大學(xué)綜合評(píng)價(jià)招生綜合素質(zhì)測(cè)試題總結(jié)
評(píng)論
0/150
提交評(píng)論