




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第12章 51內(nèi)核單片機(jī)LPC935入門P89LPC933/934/935/936是具有51內(nèi)核的單片機(jī),指令執(zhí)行速度6倍于標(biāo)準(zhǔn)51單片機(jī),廣泛使用在需要減少芯片數(shù)量、電路板空間和系統(tǒng)成本的設(shè)計(jì)中。 P89LPC93x單片機(jī)共有4個(gè)型號,分別是P89LPC933/934/935/936,雖然他們都是28腳封裝,但內(nèi)部資源不相同, 器件代碼存儲(chǔ)器扇區(qū)容量ADC1ADC0CCU數(shù)據(jù)存儲(chǔ)器P89LPC9334kB1kB有P89LPC9348kB1kB有P89LPC9358kB1kB有有有有P89LPC93616kB2kB有有有作者:夏路易電子工業(yè)出版社所有12.1 LPC935單片機(jī)簡介1. LPC
2、935單片機(jī)主要特點(diǎn)(1)8kB可字節(jié)擦除的Flash程序存儲(chǔ)器。(2)256字節(jié)RAM數(shù)據(jù)存儲(chǔ)器。LPC935還包括一個(gè)512字節(jié)的附加片內(nèi)RAM。(2)512字節(jié)片內(nèi)用戶數(shù)據(jù)E2PROM存儲(chǔ)區(qū),可用來存放用戶設(shè)置參數(shù)等。(3)2個(gè)4路輸入的8位A/D轉(zhuǎn)換器/DAC輸出。2個(gè)模擬比較器,可選擇輸入引腳和參考電壓源。(4)2個(gè)16位定時(shí)/計(jì)數(shù)器(每一個(gè)定時(shí)器均可設(shè)置為溢出時(shí)觸發(fā)相應(yīng)端口輸出或作為PWM輸出),1個(gè)可用作實(shí)時(shí)時(shí)鐘的23位計(jì)數(shù)器的系統(tǒng)定時(shí)器。(5)增強(qiáng)型UART。具有波特率發(fā)生器、間隔檢測、幀錯(cuò)誤檢測、自動(dòng)地址檢測功能;(6)400kHz頻率的I2C總線通信端口和SPI通信端口。(
3、7)捕獲/比較單元(CCU)提供PWM,輸入捕獲和輸出比較功能。(8)選擇片內(nèi)高精度RC振蕩器時(shí)不需要外接晶體。可選擇RC振蕩器選項(xiàng)并且其頻率可進(jìn)行很好的調(diào)節(jié)。(9)電源VDD(也可用VCC表示)電壓范圍為2.43.6V。I/O口可承受5V電壓(可上拉或驅(qū)動(dòng)到5.5V)。(10)最少有23個(gè)I/O口,當(dāng)選擇片內(nèi)振蕩器和片內(nèi)復(fù)位時(shí),I/O口可高達(dá)26個(gè)。 作者:夏路易電子工業(yè)出版社所有2. 封裝 該系列采用PLCC28和TSSOP28封裝,尺寸非常小,常用封裝形式為TSSOP28, 作者:夏路易電子工業(yè)出版社所有(1)PORT0(P0.0P0.7):P0口是輸出類型可定義的8位I/O 口,在上電
4、復(fù)位時(shí),P0口配置為僅為輸入模式。P0口可以設(shè)定為開漏、準(zhǔn)雙向、推挽或是僅輸入模式,其中準(zhǔn)雙向與標(biāo)準(zhǔn)51單片機(jī)用法相同,每一個(gè)引腳均可單獨(dú)設(shè)定。P0口還具有鍵盤輸入中斷功能。所有引腳都具有施密特觸發(fā)輸入。(2)PORT1(P1.0P1.7):P1是一個(gè)8位I/O口。在上電復(fù)位時(shí),P1配置為僅為輸入模式。P1口可由用戶定為開漏、準(zhǔn)雙向、推挽或是僅輸入模式,每一位均可單獨(dú)設(shè)定。注意P1.2-P1.3作為輸出時(shí)為開漏。P1.5為僅為輸入模式。所有引腳都具有施密特觸發(fā)輸入。 作者:夏路易電子工業(yè)出版社所有PORT2(P2.0P2.7):P2是8位I/O口,在上電復(fù)位時(shí),P2配置為僅為輸入模式。P2口可
5、設(shè)定為開漏、推挽、準(zhǔn)雙向或是僅為輸入模式,每一位均可單獨(dú)設(shè)定。所有引腳都具有施密特觸發(fā)輸入。PORT3(P3.0P3.1):P3是一個(gè)2位I/O口,在上電復(fù)位時(shí),P3口配置為僅為輸入模式。P3口可設(shè)定為開漏、推挽、準(zhǔn)雙向或是僅為輸入模式,每一個(gè)引腳均可單獨(dú)設(shè)定。所有引腳都具有施密特觸發(fā)輸入。作者:夏路易電子工業(yè)出版社所有VSS:地線0V,電平參考點(diǎn)。VDD: 電源,單片機(jī)正常操作模式、空閑模式和掉電模式時(shí)的工作電源。有關(guān)引腳的一些說明:I/O引腳可以根據(jù)需要配置成準(zhǔn)雙向、推挽、輸入和開漏四種形式,設(shè)計(jì)系統(tǒng)時(shí)應(yīng)該根據(jù)需要設(shè)計(jì)單片機(jī)外圍電路。若是不使用外部復(fù)位引腳P1.5,則外部復(fù)位引腳可用作輸入
6、引腳;若是使用內(nèi)部RC振蕩器作為時(shí)鐘源,則時(shí)鐘引腳P3.0與P3.1可作為一般I/O使用。作者:夏路易電子工業(yè)出版社所有該單片機(jī)比51單片機(jī)多出如下功能:(1)模數(shù)和數(shù)模模塊、模擬比較器模塊,使該單片機(jī)具有模擬量處理功能。(2)SPI、I2C模塊使該單片機(jī)有與3線、2線通信接口芯片的通信能力。(3)捕獲、比較CCU模塊使該單片機(jī)有捕獲與比較功能,可以測量脈沖信號的周期與輸出PWM脈沖。(4)實(shí)時(shí)時(shí)鐘RTC模塊,可以產(chǎn)生系統(tǒng)時(shí)鐘源。(5)鍵盤中斷功能使該單片機(jī)可以不增加外部芯片的情況下實(shí)現(xiàn)鍵盤中斷功能。(6)增強(qiáng)型UART使產(chǎn)生波特率更準(zhǔn)確。(7)內(nèi)部RC振蕩器使時(shí)鐘要求不嚴(yán)格的系統(tǒng)設(shè)計(jì)中的外圍
7、元件更少。(8)內(nèi)部E2PROM使保存數(shù)據(jù)、參數(shù)、設(shè)置更容易。(9)定時(shí)器除具有工作模式0、1、2、3外,還有工作模式6,在工作模式6可以實(shí)現(xiàn)PWM功能。 作者:夏路易電子工業(yè)出版社所有與51單片機(jī)的差別還有:(1)特殊功能寄存器LPC935的特殊寄存器與標(biāo)準(zhǔn)51單片機(jī)兼容(具有相同的地址),但是LPC935的特殊寄存器比標(biāo)準(zhǔn)51多,這是因?yàn)長PC935單片機(jī)具有更多的內(nèi)部模塊。(2)引腳模式多,除準(zhǔn)雙向模式外,還有僅輸入、推挽和開漏模式,因此需要兩個(gè)寄存器定義引腳模式,較51單片機(jī)的引腳使用復(fù)雜。(3)CPU時(shí)鐘、復(fù)位引腳、看門狗、掉電檢測、啟動(dòng)狀態(tài)位等是由用戶配置字UCFG1設(shè)置的,該配置
8、字在FLASH存儲(chǔ)器中,需要在用戶程序運(yùn)行前單獨(dú)配置。(4)進(jìn)入ISP的方式與一般51單片機(jī)不同,需要采用3脈沖、幀檢測或直接跳入等方式進(jìn)入ISP。 作者:夏路易電子工業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有5. 存儲(chǔ)器組織作者:夏路易電子工業(yè)出版社所有(1)DATA00H-7FH:128字節(jié)的內(nèi)部數(shù)據(jù)存儲(chǔ)器,可以直接或是間接存取,堆棧常放在該區(qū)中。(2)IDATA00H-FFH:256字節(jié)的間接數(shù)據(jù)存儲(chǔ)器,包含DATA區(qū)的128字節(jié),可以使用間接存取指令存取。(3)SFR只能直接存取的CPU寄存器、外圍控制和狀態(tài)寄存器。(4)XDATA外部數(shù)據(jù)或輔助RAM,容量為512字節(jié),該存儲(chǔ)器空間類
9、似于51單片機(jī)使用MOVX指令存取的64k存儲(chǔ)空間。(5)CODE代碼存儲(chǔ)空間,尋址范圍為64k。(5)E2PROM通過SFR存取的512字節(jié)的數(shù)據(jù)存儲(chǔ)器,可以在斷電后保存數(shù)據(jù)不丟失。作者:夏路易電子工業(yè)出版社所有6. 特殊功能寄存器單片機(jī)中所有模塊的功能、工作方式等都是由特殊功能寄存器控制的,學(xué)習(xí)單片機(jī)的第一步就是學(xué)習(xí)各個(gè)模塊的工作原理與如何設(shè)置特殊功能寄存器。LPC935單片機(jī)約有120個(gè)寄存器,比51單片機(jī)(21個(gè))多很多,下面介紹各個(gè)內(nèi)部模塊的原理與其相關(guān)的寄存器各位定義。作者:夏路易電子工業(yè)出版社所有12.2 時(shí)鐘作者:夏路易電子工業(yè)出版社所有(1)外時(shí)鐘(2)石英晶體振蕩器(分為高
10、(4M18MHz)、中(100k4MHz)和低頻(20100kHz)(3)內(nèi)部RC振蕩器時(shí)鐘RCCLK7.373MHz 。(4)內(nèi)部看門狗振蕩器(400kHz+30% -20%)作者:夏路易電子工業(yè)出版社所有OSCCLK經(jīng)過分頻模塊DIVM后產(chǎn)生如下時(shí)鐘:(1)CCLKCCLK是CPU時(shí)鐘,是時(shí)鐘分頻器DIVM的輸出。每個(gè)機(jī)器周期包含2個(gè)CCLK周期,大多數(shù)指令執(zhí)行時(shí)間為1到2個(gè)機(jī)器周期(2或4個(gè)CCLK周期)。CCLK還是ADC0、ADC1和RTC的時(shí)鐘。(2)用于不同外圍器件的時(shí)鐘PCLK,頻率為CCLK/2。PCLK是定時(shí)器0、定時(shí)器1、I2C、SPI、UART、CCU、WDT模塊的時(shí)鐘
11、源,其中WDT時(shí)鐘源可以是內(nèi)部看門狗振蕩器或是PCLK。RTC時(shí)鐘源可以是PLCK或是石英晶體振蕩器。作者:夏路易電子工業(yè)出版社所有2. RC振蕩器LPC935單片機(jī)具有輸出頻率為7.373MHz的內(nèi)部RC振蕩器,其輸出頻率可由一個(gè)頻率調(diào)準(zhǔn)寄存器TRIM進(jìn)行調(diào)整。在復(fù)位時(shí),TRIM寄存器的值初始化為出廠時(shí)預(yù)設(shè)置值以將振蕩器頻率調(diào)整為7.373MHz,1%。若是不需要精確的時(shí)鐘頻率,則可以使用RC振蕩器向CPU和內(nèi)部模塊提供時(shí)鐘。若是需要精確定時(shí)則需要外接石英晶體,若是沒有特殊要求,晶體頻率應(yīng)該選擇容易產(chǎn)生串行通信波特率的頻率,例如11.0592MHz。 位76543210符號RCCLKENCL
12、KTRIM.5TRIM.4TRIM.3TRIM.2TRIM.1TRIM.0復(fù)位00(位5:0)復(fù)位后,為工廠設(shè)置參數(shù)(位0:5)TRIM5TRIM0:用于調(diào)整RC振蕩器頻率值。復(fù)位后,恢復(fù)出廠值。(位6)RCCLK:該位置1,CPU采用內(nèi)部RC振蕩器。(位7)ENCLK:該位置1,若不使用石英晶體,從XTAL2引腳輸出頻率為CCLK/2的時(shí)鐘。作者:夏路易電子工業(yè)出版社所有3. 看門狗時(shí)鐘看門狗采用獨(dú)立的振蕩器,工作頻率為400kHz,該振蕩器輸出可以作為CPU時(shí)鐘,在不需要高時(shí)鐘頻率的情況下節(jié)省功率。4. 時(shí)鐘喚醒延遲該芯片內(nèi)部有喚醒定時(shí)器,用于等待時(shí)鐘穩(wěn)定,對于石英晶體振蕩器,延遲時(shí)間為9
13、92個(gè)時(shí)鐘周期加60100s;對于內(nèi)部RC振蕩器或是看門狗振蕩器,延遲時(shí)間為224個(gè)時(shí)鐘周期加60100s。5. DIVM寄存器OSCCLK信號與CPU之間設(shè)置有分頻器,可以對OSCCLK頻率分頻,通過設(shè)置分頻寄存器DIVM(地址95H),可以得到最大為510倍的分頻比,分頻公式如下:CCLK頻率= fosc/(2N)這里N是DIVM的值。fosc是OSCCLK的頻率,N取值范圍為0255,當(dāng)N為0,CCLK=fosc。DIVM的值可以在用戶程序中隨時(shí)設(shè)置而無需中斷程序運(yùn)行。 作者:夏路易電子工業(yè)出版社所有12.3 復(fù)位該單片機(jī)的復(fù)位源如下:(1)外引腳復(fù)位(如果用戶配置字UCFG1中RTE為
14、1)(2)上電檢測。(3)掉電檢測。(4)看門狗定時(shí)器。(5)軟件復(fù)位。(6)UART打斷檢測復(fù)位。對于每一個(gè)復(fù)位源,在復(fù)位寄存器RSTSRC中都有一個(gè)標(biāo)志位,用戶可以讀該寄存器已檢查是哪個(gè)復(fù)位源產(chǎn)生的復(fù)位,而且各標(biāo)志位可以軟件寫0復(fù)位。作者:夏路易電子工業(yè)出版社所有位76543210符號BOFPOFR_BKR_WDR_SFR_EX復(fù)位xx110000其中:(位0)R_EX:外部復(fù)位標(biāo)志(位1)R_SF: 軟件復(fù)位標(biāo)志(位2)R_WD:看門狗定時(shí)器復(fù)位標(biāo)志(位3)R_BK:幀打斷檢測復(fù)位(位4)POF:上電復(fù)位標(biāo)志(位5)BOF:掉電復(fù)位作者:夏路易電子工業(yè)出版社所有復(fù)位向量:該單片機(jī)復(fù)位后取
15、指地址可以是地址0000h,或是啟動(dòng)地址(執(zhí)行ISP程序的地址),啟動(dòng)地址由啟動(dòng)向量作為高字節(jié),與低字節(jié)為00h組合而成。從啟動(dòng)地址取指的情況為:(1)UART打斷復(fù)位。(2)啟動(dòng)狀態(tài)位(BOOTSTAT.0)為1。(3)器件使用復(fù)位3脈沖方式進(jìn)入ISP模式。作者:夏路易電子工業(yè)出版社所有12.4中斷LPC935具有4個(gè)優(yōu)先級、15個(gè)中斷源。任何一個(gè)中斷源均可通過對中斷使能寄存器IEN0和IEN1中相應(yīng)的位置位或清零,實(shí)現(xiàn)單獨(dú)使能或禁能。IEN0中還包含了一個(gè)全局使能位EA,它可使能所有的中斷。中斷優(yōu)先寄存器IP0,IP0H,IP1,IP1H用于設(shè)置每個(gè)中斷源的中斷優(yōu)先級,就是說每個(gè)中斷都由I
16、Px 和IPxH(x0,1)寄存器中的兩個(gè)位控制,這樣可將其分配到4個(gè)優(yōu)先級中的任意一個(gè)。正在執(zhí)行的中斷服務(wù)程序可響應(yīng)更高級的中斷,但不能響應(yīng)同優(yōu)先級或低級的另一個(gè)中斷。最高級中斷服務(wù)程序不響應(yīng)其它任何中斷。如果2個(gè)不同中斷優(yōu)先級的中斷源同時(shí)申請中斷時(shí),響應(yīng)較高優(yōu)先級的中斷申請。如果2個(gè)同優(yōu)先級的中斷源在指令周期開始同時(shí)申請中斷,那么內(nèi)部查詢序列確定響應(yīng)哪一個(gè)中斷請求。中斷服務(wù)函數(shù)的一般寫法:void timer0 (void) interrupt 1 /定時(shí)器0中斷void UART_ISR(void) interrupt 4 /UART中斷void ADC_isr() interrupt
17、14 /ADC中斷void CMP_ISR() interrupt 8 /比較器中斷 作者:夏路易電子工業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有12.5 I/O口1. I/O引腳配置在LPC935單片機(jī)的I/O口中,P1.5(RST)只能作為輸入口,無法進(jìn)行配置,P1.2(SCL/T0)和P1.3(SDA/ INT0 )只能配置為輸入或開漏輸出,除此之外,其他所有的I/O引腳均可由用戶程序配置成4種I/O類型:準(zhǔn)雙向口(標(biāo)準(zhǔn)51端口輸出)、推挽、開漏輸出或輸入。 PnM1PnM2引腳模式00準(zhǔn)雙向01推挽10僅輸入(高阻)11開漏作者:夏路易電子工業(yè)出版社所有2. 準(zhǔn)雙向準(zhǔn)雙向口電路如圖所示
18、。準(zhǔn)雙向口具有輸出和輸入功能。因?yàn)闇?zhǔn)雙向口輸出邏輯高電平時(shí)驅(qū)動(dòng)能力很弱,允許外部電路將其拉低。當(dāng)引腳輸出為低電平時(shí),它的驅(qū)動(dòng)能力很強(qiáng),可灌入較大的電流。 作者:夏路易電子工業(yè)出版社所有 3. 開漏輸出當(dāng)輸出口線鎖存器為0時(shí),開漏輸出斷開所有的上拉晶體管,僅驅(qū)動(dòng)端口的下部晶體管。若要輸出邏輯高電平,必須有外部上拉電阻到VDD。 作者:夏路易電子工業(yè)出版社所有4. 僅輸入僅輸入口是帶有干擾抑制電路的施密特觸發(fā)輸入,只是輸入,沒有輸出功能。作者:夏路易電子工業(yè)出版社所有5. 推挽輸出推挽輸出配置的下拉結(jié)構(gòu)與開漏輸出以及準(zhǔn)雙向口的下拉結(jié)構(gòu)相同,但當(dāng)鎖存器為1時(shí)提供持續(xù)的強(qiáng)上拉。推挽模式一般用于輸出口需
19、要輸出更大拉電流的情況。推挽引腳帶有一個(gè)具有干擾抑制電路的施密特觸發(fā)輸入。 作者:夏路易電子工業(yè)出版社所有 6. P0口和模擬比較器功能 LPC935內(nèi)部集成了兩個(gè)模擬比較器。為了得到好的模擬比較性能并降低功耗,用于模擬功能的引腳必須同時(shí)禁止數(shù)字輸入和輸出功能,把引腳設(shè)置成僅為輸入可以禁止數(shù)字輸出功能,而數(shù)字輸入功能可通過數(shù)字輸入禁能寄存器PT0AD禁止。 作者:夏路易電子工業(yè)出版社所有7. 關(guān)于I/O引腳的一些說明(1)上電后,該單片機(jī)的所有的引腳都是僅為輸入模式。(2)上電后,該單片機(jī)的所有的引腳(除P1.5引腳外),可以用軟件配置引腳模式。(3)引腳P1.5只能是輸入,P1.2和P1,3
20、可以配置成開漏或是僅輸入。(4)由極限參數(shù)表,每個(gè)LPC935的輸出引腳都可提供灌、拉電流(20mA)驅(qū)動(dòng)LED燈。但是每個(gè)端口的輸出電流總和不能超過規(guī)定的最大電流(100mA)。 VDD為3.6V時(shí)的推挽輸出高電平時(shí)的電壓與電流關(guān)系曲線。 作者:夏路易電子工業(yè)出版社所有12.6 定時(shí)器0/1 LPC935有兩個(gè)與51單片機(jī)兼容的定時(shí)/計(jì)數(shù)器,都可配置為定時(shí)器或事件計(jì)數(shù)器。另外增加了定時(shí)器溢出時(shí)Tx引腳自動(dòng)翻轉(zhuǎn)的功能。 用作定時(shí)器時(shí),每經(jīng)過一個(gè)PCLK,計(jì)數(shù)器值加1。用作計(jì)數(shù)器時(shí),外部輸入引腳(T0或T1)上每發(fā)生一次1到0的跳變(下降沿)時(shí)計(jì)數(shù)器加1。使用該功能時(shí),每個(gè)機(jī)器周期對外部輸入采樣
21、一次。當(dāng)某一機(jī)器周期時(shí)引腳電平為高,而下一機(jī)器周期時(shí)引腳電平為低時(shí),計(jì)數(shù)器加1,其值在檢測到跳變后的下一個(gè)機(jī)器周期被更新。由于檢測1到0的跳變需要花費(fèi)4個(gè)CPU時(shí)鐘,所以計(jì)數(shù)頻率最大值為CPU時(shí)鐘頻率CCLK的1/4。對外部輸入信號的占空比并無限制,但信號必須至少保持一個(gè)完整的機(jī)器周期。這樣可以保證輸入電平信號在其改變之前至少被采樣一次。 作者:夏路易電子工業(yè)出版社所有1. 工作模式寄存器TMOD 位76543210符號T1GATET1C/TT1M1T1M0T0GATET0C/TT0M1T0M0復(fù)位00000000(位1、0)T0M1、T0M0:定時(shí)器0的工作模式選擇。這些位和TAMOD寄存器
22、的T0M2位一起來決定定時(shí)器0的工作模式。(位2)T0C/T:定時(shí)器0的定時(shí)或計(jì)數(shù)功能選擇。該位清0時(shí),定時(shí)器0用作定時(shí)功能(從CCLK輸入脈沖);該位置1時(shí),定時(shí)器0用作計(jì)數(shù)功能(從T0腳輸入脈沖)。(位3)T0GATE:定時(shí)器0的門控位。該位被置1時(shí),僅當(dāng)INT0腳為高電平且TR0控制位被置1時(shí)使能定時(shí)器0;該位被清0時(shí),TR0控制位被置1時(shí)使能定時(shí)器0。(位4、5)T1M1、T1M0:定時(shí)器1的工作模式選擇。這些位和TAMOD寄存器的T1M2位一起來決定定時(shí)器1的工作模式。(位6)T1C/T:定時(shí)器1的定時(shí)或計(jì)數(shù)功能選擇。該位清0時(shí),定時(shí)器1用作定時(shí)功能(從CCLK輸入脈沖);該位置1時(shí)
23、,定時(shí)器1用作計(jì)數(shù)功能(從T1腳輸入脈沖)。(位7)T1GATE:定時(shí)器1的門控位。該位被置1時(shí),僅當(dāng)INT1腳為高電平且TR1控制位被置1時(shí)使能定時(shí)器1;該位被清0時(shí),TR1控制位被置1時(shí)使能定時(shí)器1。 作者:夏路易電子工業(yè)出版社所有2. 定時(shí)器輔助模式寄存器該輔助模式寄存器TAMOD與模式寄存器TMOD共同決定時(shí)器模式。 位76543210符號T1M2T0M2復(fù)位xxx0 xxx0(位0)TnM2:該位與TnM1、TnM0三位共同決定定時(shí)器模式,定時(shí)器模式位TnM2:0選擇的模式如下:0008048單片機(jī)的定時(shí)器模式,“TLn”用作5位預(yù)分頻器(模式0)。00116位定時(shí)器/計(jì)數(shù)器“THn
24、”和“TLn”級聯(lián);無預(yù)分頻器(模式1)。0108位自動(dòng)重裝定時(shí)器/計(jì)數(shù)器。溢出時(shí)THn的內(nèi)容裝入TLn(模式2)。011該模式下定時(shí)器0用作2個(gè)8位的定時(shí)器/計(jì)數(shù)器。TL0用作一個(gè)8位的定時(shí)器/計(jì)數(shù)器,由標(biāo)準(zhǔn)定時(shí)器0控制位來控制。TH0只可用作一個(gè)8位的定時(shí)器,由定時(shí)器1的控制位來控制。該模式下定時(shí)器1關(guān)閉(模式3)。100保留。用戶不要配置成該模式。101保留。用戶不要配置成該模式。110PWM模式。111保留。用戶不要配置成該模式。 作者:夏路易電子工業(yè)出版社所有3. 溢出觸發(fā)功能定時(shí)器0/1的工作模式0、1、2、3與標(biāo)準(zhǔn)51單片機(jī)基本相同,但是增加了溢出觸發(fā)輸出功能。作者:夏路易電子工
25、業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有4. 模式6這時(shí)定時(shí)器0/1的計(jì)數(shù)周期為256個(gè)時(shí)鐘,并輸出PWM,與模式2有相同之處。TFn(n0和1,分別對應(yīng)定時(shí)器0和1)由硬件置位和清零;TFn從低到高跳變時(shí),使能中斷,TFn也可由軟件清零。TFn的低電平寬度為THn的值,必須在1254之間,TFn的高電平寬度為256THn。THn=00H,Tn引腳被強(qiáng)制為高電平;THn=FFH,Tn引腳被強(qiáng)制為低電平。作者:夏路易電子工業(yè)出版社所有5. LPC935單片機(jī)的附加特性AUXR1寄存器包含了幾個(gè)特殊用途的控制位。 位76543210符號CLKLPEBRRENT1ENT0SRST0DPS復(fù)位000
26、000 x0(位0)DPS:數(shù)據(jù)指針選擇。選擇兩個(gè)數(shù)據(jù)指針中的一個(gè)。(位1)-:未用。允許設(shè)置成“1”(位2)0:該位包含一個(gè)硬件0。這樣就允許通過將AUXR1加1來使DPS位翻轉(zhuǎn)而不影響該寄存器的其它位。(位3)SRST:軟件復(fù)位。當(dāng)SRST通過軟件置位時(shí), LPC935就像硬件復(fù)位一樣復(fù)位。(位4)ENT0:置位時(shí),定時(shí)器0溢出使P1.2引腳翻轉(zhuǎn)。輸出頻率是定時(shí)器0溢出速率的一半。(位5)ENT1:置位時(shí),定時(shí)器1溢出使P0.7引腳翻轉(zhuǎn)。輸出頻率是定時(shí)器1溢出速率的一半。(位6)EBRR:UART間隔檢測復(fù)位使能。如果該位為1,UART間隔檢測將導(dǎo)致芯片復(fù)位并使器件強(qiáng)制進(jìn)入ISP模式。(位
27、7)CLKLP:時(shí)鐘低功耗選擇。置位時(shí)降低時(shí)鐘電路的功耗。當(dāng)時(shí)鐘頻率為8MHz或以下時(shí)可置位該位。復(fù)位后該位清零,支持時(shí)鐘頻率高達(dá)12MHz的操作。作者:夏路易電子工業(yè)出版社所有12.7 串行通信模塊LPC935具有一個(gè)與標(biāo)準(zhǔn)51單片機(jī)兼容的增強(qiáng)型串行(UART)模塊。但有不同之處:(1)LPC935的UART模塊具有獨(dú)立的波特率發(fā)生器。波特率可以由時(shí)鐘PCLK(常數(shù)分頻)、定時(shí)器1溢出或者獨(dú)立的波特率發(fā)生器產(chǎn)生。(2)LPC935的UART模塊增加了幀錯(cuò)誤檢測、間隔檢測、自動(dòng)地址識別、可選的雙緩沖以及幾個(gè)中斷選項(xiàng)。(3)由于波特率產(chǎn)生器產(chǎn)生的波特率與晶體頻率關(guān)系不大,又不占用定時(shí)器1,所以編
28、程中應(yīng)該使用波特率產(chǎn)生器產(chǎn)生波特率。作者:夏路易電子工業(yè)出版社所有2. UART模塊工作模式UART模塊有4種工作模式:(1)模式0串行數(shù)據(jù)通過RxD引腳進(jìn)入與輸出。TxD引腳輸出移位時(shí)鐘。每次發(fā)送或接收都為8位,LSB(最低位)在前。波特率固定為CPU時(shí)鐘頻率的1/16。在時(shí)鐘脈沖的上升沿,數(shù)據(jù)輸出或輸入。(2)模式1TxD引腳發(fā)送,RxD引腳接收,數(shù)據(jù)格式為10位:1 個(gè)起始位(邏輯0),8個(gè)數(shù)據(jù)位(LSB在前)以及1個(gè)停止位(邏輯1)。當(dāng)接收數(shù)據(jù)時(shí),停止位保存于特殊功能寄存器SCON的RB8中。該模式的波特率可變,由定時(shí)器1溢出速率或波特率發(fā)生器決定。作者:夏路易電子工業(yè)出版社所有(3)
29、模式2TxD引腳發(fā)送,RxD引腳接收,數(shù)據(jù)格式為11位:1個(gè)起始位(邏輯0),8個(gè)數(shù)據(jù)位(LSB在前),可編程的第9位及1個(gè)停止位(邏輯1)。發(fā)送數(shù)據(jù)時(shí),第9位(SCON中的TB8位)可置為0或1。例如可將奇偶位(PSW寄存器中的P位)放入TB8。接收數(shù)據(jù)時(shí),第9位數(shù)據(jù)存入寄存器SCON的RB8位,而停止位不會(huì)被保存。波特率可編程為CCLK頻率的1/16或1/32,由寄存器PCON內(nèi)SMOD1位決定。由于波特率固定,因此該模式很少使用。(4)模式3TxD腳發(fā)送,RxD腳接收,每次數(shù)據(jù)為11位:1個(gè)起始位(邏輯0),8個(gè)數(shù)據(jù)位(LSB在前),1個(gè)可編程的第9位及1個(gè)停止位(邏輯1)。模式3與模式
30、2的差別是模式3的波特率可變,由定時(shí)器1溢出率或波特率發(fā)生器決定。作者:夏路易電子工業(yè)出版社所有3. 波特率產(chǎn)生 LPC935的UART模塊具有一個(gè)獨(dú)立的波特率發(fā)生器。波特率取決于對BRGR1和BRGR0預(yù)先編程的值。BRGCON寄存器中SBRGS位,可以確定UART模塊使用定時(shí)器1或者波特率產(chǎn)生器產(chǎn)生波特率。 波特率來源 BRGCON1:0 決定定時(shí)器1或者波特率發(fā)生器輸出產(chǎn)生波特率。 SMOD1(PCON.7) 該位置位時(shí),基于PCLK的定時(shí)器T1溢出頻率被2分頻后作為通信波特率。獨(dú)立的波特率發(fā)生器使用CCLK作為時(shí)鐘源。 設(shè)置BRGR1和BRGR0只能在BRGCON寄存器的BRGEN位為
31、0時(shí),波特率SFR寄存器BRGR1和BRGR0的值才可以變更。 作者:夏路易電子工業(yè)出版社所有SCON.7(SM0)SCON.6(SM1)PCON.7(SMOD1)BRGCON.1(SBRGS)UART接收/發(fā)送波特率工作模式00 xxCCLK/16模式00100CCLK/(256-TH1)64模式110CCLK/(256-TH1)32x1CCLK/(BRGR1, BRGR0)+16)100 xCCLK/32模式21xCCLK/161100CCLK/(256-TH1)64模式310CCLK/(256-TH1)32x1CCLK/(BRGR1, BRGR0)+16)作者:夏路易電子工業(yè)出版社所有波
32、特率發(fā)生器控制寄存器BRGCON 位76543210符號SBRGSBRGEN復(fù)位xxxxxx00(位0)BRGEN:波特率發(fā)生器使能。只有當(dāng)BRGEN為0時(shí),才可對寄存器BRGR1和BRGR0進(jìn)行寫操作。(位1)SBRGS:選擇波特率發(fā)生器用于產(chǎn)生UART模式1和3的波特率 作者:夏路易電子工業(yè)出版社所有 5. 串行口控制寄存器 位76543210符號SM0/FESM1SM2RENTB8RB8TIRI復(fù)位xxxxxx00(位0)RI:接收中斷標(biāo)志。在模式0,第8位接收完成時(shí)由硬件置1。在模式1,在接收停止位的中間時(shí)刻由硬件置1。在模式2或3,如果SMOD0=0,在接近第9位(位8)的中間時(shí)刻置
33、1;如果SMOD0=1,在接近停止位的中間時(shí)刻置1。該位必須通過軟件清零。(位1)TI:發(fā)送中斷標(biāo)志。在模式0,在第8位數(shù)據(jù)發(fā)送結(jié)束時(shí)由硬件置1。在其它發(fā)送模式中,在發(fā)送停止位時(shí)由硬件置1。該位必須通過軟件清零。(位2)RB8:模式2和3中是接收到的第9位數(shù)據(jù),在模式1中(SM2必須為0),RB8是接收到的停止位。在模式0中,RB8未定義。(位3)TB8:模式2和3中將要發(fā)送的第9位數(shù)據(jù),可以根據(jù)需要由軟件置位或清零。(位4)REN:使能串行接收。由軟件置1以使能接收。軟件清零則禁止接收。(位5)SM2:使能模式2或3中的多機(jī)通信功能。在模式2或3中,如果SM2=1而且接收到的第9位數(shù)據(jù)(RB
34、8)為0時(shí),則RI不會(huì)被激活。在模式0中,SM2應(yīng)當(dāng)為0。在模式1中,SM2必須為0。(位6)SM1:和SM0位共同定義串行口操作模式。(位7)SM0/FE:該位的用途由PCON寄存器中的SMOD0決定。如果SMOD0=0,該位為SM0,和SM1一起定義串口模式; 如果SMOD0=1,該位作為FE(幀錯(cuò)誤)。 作者:夏路易電子工業(yè)出版社所有模式SM0 SM1說明波特率模式00 0移位寄存器CCLK/16(任何復(fù)位時(shí)的默認(rèn)模式)模式10 18 位UART可由波特率發(fā)生器產(chǎn)生模式21 09 位UARTCCLK/32或CCLK/16模式31 19 位UART可由波特率發(fā)生器產(chǎn)生作者:夏路易電子工業(yè)出
35、版社所有6. 串行口狀態(tài)寄存器串行口狀態(tài)寄存器SSTAT 位76543210符號DBMODINTLOCIDISDBISELFEBROESTINT復(fù)位xxxxxx00(位0)STINT:狀態(tài)中斷使能位。該位置1時(shí),F(xiàn)E,BR或OE可產(chǎn)生中斷。這些中斷與RI(CIDIS=1時(shí))或組合TI/RI(CIDIS=0時(shí))共用中斷向量(向量地址0023h)。該位清零時(shí),F(xiàn)E,BR,OE不產(chǎn)生中斷。FE,BR或OE位通常和RI一起使用,不管STINT的狀態(tài)如何,RI都將產(chǎn)生中斷。注意:如果EBRR(AUXR1.6)置位,BR可導(dǎo)致間隔檢測復(fù)位。(位1)OE:當(dāng)接收緩沖區(qū)有數(shù)據(jù),又接收到一個(gè)新字符的第8位時(shí),則
36、溢出錯(cuò)誤標(biāo)志OE將置位。該位通過軟件清零。(位2)BR:間隔(打斷)檢測標(biāo)志。當(dāng)連續(xù)檢測到11位都為低電平時(shí)表明檢測到一個(gè)間隔。該位通過軟件清零。間隔(打斷)檢測是UART模塊檢測到連續(xù)11個(gè)位的低電平,則狀態(tài)寄存器SSTAT中的BR標(biāo)志位置位,BR由軟件或是單片機(jī)復(fù)位時(shí)清0。間隔檢測常用于復(fù)位單片機(jī)或是強(qiáng)迫單片機(jī)進(jìn)入ISP模式。(位3)FE:幀錯(cuò)誤標(biāo)志。在幀結(jié)束時(shí)沒有收到有效的停止位時(shí),該標(biāo)志置位。通過軟件清零。作者:夏路易電子工業(yè)出版社所有(位4)DBISEL:雙緩沖發(fā)送中斷選擇位。該位在雙緩沖使能時(shí)控制中斷產(chǎn)生的次數(shù)。當(dāng)該位置位時(shí),每向SBUF寫入字符時(shí),就產(chǎn)生一個(gè)發(fā)送中斷;在最后一個(gè)字
37、符發(fā)送的停止位開始(INTLO=0)或結(jié)束(INTLO=1)時(shí)再產(chǎn)生一次發(fā)送中斷(即緩沖區(qū)已空)。最后這次中斷可用于指示所有發(fā)送操作已完成。當(dāng)該位為0時(shí),每向SBUF寫入一個(gè)字符只產(chǎn)生一次發(fā)送中斷。在雙緩沖被禁止時(shí),該位必須為0。除了第一個(gè)寫入的字符(SBUF為空時(shí))之外,所有發(fā)送中斷的時(shí)間都由INTLO決定。當(dāng)寫入第一個(gè)字符時(shí),SBUF立即產(chǎn)生發(fā)送中斷。(位5)CIDIS:組合中斷禁止。該位置位時(shí)Rx和Tx中斷各自獨(dú)立。該位清零時(shí)選擇Tx/Rx組合中斷(與標(biāo)準(zhǔn)51單片機(jī)的UART相同)。(位6)INTLO:發(fā)送產(chǎn)生中斷的位置。0:在停止位開始時(shí)產(chǎn)生Tx中斷;1:在停止位結(jié)束時(shí)產(chǎn)生Tx中斷。模
38、式0時(shí)該位必須為0。注意:在使用單緩沖時(shí),如果在停止位結(jié)束時(shí)產(chǎn)生Tx中斷,在下一個(gè)起始位之前將存在一個(gè)間隙。(位7)DBMOD:雙緩沖模式。該位置位時(shí)使能雙緩沖。在UART工作模式0時(shí)該位必須為0。為了和現(xiàn)有的標(biāo)準(zhǔn)51單片機(jī)兼容,該位復(fù)位時(shí)為0禁止雙緩沖。作者:夏路易電子工業(yè)出版社所有12.8 用戶配置字、引導(dǎo)向量與狀態(tài)位1. 用戶配置字節(jié)(UCFG1)LPC935的用戶配置字必須在上電時(shí)定義,因?yàn)樗麄儽4嬖贔LASH中,在用戶程序中不可設(shè)置。一般在編程時(shí)配置,就是使單片機(jī)進(jìn)入ISP,然后通過編程軟件進(jìn)行配置,用戶配置字節(jié)UCFG1格式如下: 位76543210符號WDTERPEBOEWDSE
39、FOSC2FOSC1FOSC0未編程01100011(位2:0)FOSC2:0:CPU時(shí)鐘振蕩器類型選擇, FOSC2:0說明111從XTAL1引腳輸入的外部時(shí)鐘100看門狗振蕩器,400kHz(+20%,30%誤差)011內(nèi)部RC振蕩器,頻率為7.3728MHz010低頻晶體20kHz100kHz001中頻晶體100kHz4MHz000高頻晶體4MHz18MHz作者:夏路易電子工業(yè)出版社所有位3)保留。(位4)WDSE:看門狗安全使能位。(位5)BOE:掉電檢測使能(位6)RPE:復(fù)位腳使能,當(dāng)置1時(shí),使能P1.5腳的外復(fù)位功能;清0時(shí),P1.5可作為輸入口使用。注意:在上電過程中,RPE選
40、項(xiàng)無效,該引腳總是作為復(fù)位輸入引腳。(位7)WDTE:看門狗定時(shí)器復(fù)位使能位,置位時(shí)使能看門狗定時(shí)器的復(fù)位。WDTE與WDSE共同配置看門狗功能:WDTE=0,WDSE=x,則看門狗不產(chǎn)生復(fù)位,而看門狗定時(shí)器可作為內(nèi)部定時(shí)器,而且可以產(chǎn)生中斷。WDTE=1,WDSE=0,使能看門狗復(fù)位,可以設(shè)置WDCLK位選擇看門狗時(shí)鐘源。WDTE=1,WDSE=1,使能看門狗復(fù)位,并具有如下特征:(1)強(qiáng)迫WDCLK=1,看門狗使用看門狗時(shí)鐘振蕩器。(2)WDCON和WDL寄存器只允許寫一次。(3)強(qiáng)迫WDRUN為1。 作者:夏路易電子工業(yè)出版社所有2. 引導(dǎo)向量(BOOTVEC) LPC935包含兩個(gè)特殊
41、的Flash單元:引導(dǎo)向量和引導(dǎo)狀態(tài)位。引導(dǎo)向量保存在引導(dǎo)向量寄存器(BOOTVEC)中 位76543210符號BOOTV4BOOTV3BOOTV2BOOTV1BOOTV0出廠默認(rèn)00011111 BOOTV0:4是引導(dǎo)向量。如果選擇引導(dǎo)向量作為復(fù)位地址,LPC935復(fù)位后從引導(dǎo)向量處開始執(zhí)程序,引導(dǎo)向量以BOOTVEC作為地址高字節(jié),00h作為地址低字節(jié)。一般情況下,不要修改引導(dǎo)向量。 作者:夏路易電子工業(yè)出版社所有器件引導(dǎo)向量ISP程序進(jìn)入地址ISP代碼地址范圍引導(dǎo)扇區(qū)地址LPC9351FH1F00H1E00H1FFFH1C00H1FFFHLPC9363FH3F00H3E00H3FFFH3
42、C00H3FFFH3. 狀態(tài)位BOOTSTAT 位76543210符號DCCPCWPAWPBSB出廠默認(rèn)00000001(位0)BSB:引導(dǎo)狀態(tài)位。如果該位編程為1,LPC935復(fù)位后將一直從引導(dǎo)向量處(BOOTVEC 作為地址高字節(jié),00h作為地址低字節(jié))開始執(zhí)行程序。(位5)AWP:激活寫保護(hù)位。該位清零時(shí),內(nèi)部寫使能標(biāo)志強(qiáng)制置位,這時(shí)寫Flash存儲(chǔ)器總是使能。(位6)CWP:配置寫保護(hù)位。保護(hù)用戶可編程配置字節(jié)(UCFG1,BOOTVEC和BOOTSTAT),防止無意寫動(dòng)作的產(chǎn)生。如果該位為1,將禁止這些配置字節(jié)寄存器的寫操作。如果該位為0,使能這些寄存器的寫操作。(位7)DCCP:禁
43、能清除配置保護(hù)命令。如果該位為1,清除配置保護(hù)(CCP)命令在ISP或IAP模式下被禁止,但它仍可用于ICP或并行編程模式。如果該位為0,CCP命令在所有編程模式下都可使用。 作者:夏路易電子工業(yè)出版社所有用戶配置字、引導(dǎo)向量和狀態(tài)位的設(shè)置對單片機(jī)的工作影響很大,因?yàn)樗麄兛梢圆粌H可以配置單片機(jī)的基本操作,還可以選擇CPU時(shí)鐘、選擇ISP程序的進(jìn)入點(diǎn)和是否執(zhí)行ISP程序。用戶配置字、引導(dǎo)向量和狀態(tài)位可以用ICP方式改寫,但是需要注意在某種情況下,寫入不適當(dāng)?shù)呐渲米帧⒁龑?dǎo)向量和狀態(tài)位也可以使單片機(jī)不能進(jìn)行ICP操作(相當(dāng)于芯片損壞),所以一定要保證寫入單片機(jī)允許寫入的用戶配置字、引導(dǎo)向量和狀態(tài)位。
44、另外若是使用ISP編程操作時(shí),還要保證寫入單片機(jī)的用戶配置字、引導(dǎo)向量和狀態(tài)位可以使單片機(jī)進(jìn)入ISP工作模式。作者:夏路易電子工業(yè)出版社所有12.9 LPC935單片機(jī)中的其他模塊簡介本節(jié)簡要介紹LPC935單片機(jī)中的AD轉(zhuǎn)換、模擬比較、鍵盤中斷、實(shí)時(shí)時(shí)鐘、I2C接口、串行外圍總線SPI、捕獲比較單元CCU、數(shù)據(jù)存儲(chǔ)器E2PROM模塊,詳細(xì)資料請參考文獻(xiàn)18。1. AD轉(zhuǎn)換LPC935含有2個(gè)共享控制邏輯的8位、4路逐次逼近式模數(shù)轉(zhuǎn)換模塊。每個(gè)A/D轉(zhuǎn)換器由一個(gè)4輸入選擇器、比較器、數(shù)模轉(zhuǎn)換器和逐次比較寄存器組成。輸入的模擬信號進(jìn)入選擇器,通過選擇器的選擇,輸出到采樣-保持電路,為比較器提供一
45、個(gè)輸入信號??刂七壿嬤B同逐次逼近式寄存器(SAR)來驅(qū)動(dòng)一個(gè)數(shù)模轉(zhuǎn)換器,為比較器提供另外一個(gè)模擬輸入,比較器的輸出又送到SAR。SAR輸出轉(zhuǎn)換結(jié)果到轉(zhuǎn)換結(jié)果寄存器和數(shù)模轉(zhuǎn)換器。該A/D轉(zhuǎn)換器具有如下特征:(1)兩個(gè)具有共享控制邏輯的8位、4通道選擇輸入,逐次比較AD轉(zhuǎn)換器。(2)每個(gè)AD具有4個(gè)轉(zhuǎn)換結(jié)果寄存器。(3)具有6種轉(zhuǎn)換模式:(4)具有4個(gè)轉(zhuǎn)換啟動(dòng)模式:(5)在AD時(shí)鐘為3.3MHz時(shí),8位轉(zhuǎn)換時(shí)間接近3.9s。(6)可以通過中斷和查詢方式獲取轉(zhuǎn)換完成時(shí)刻。(7)具有邊界限制中斷,以檢測轉(zhuǎn)換數(shù)值是否超限。(8)每個(gè)AD轉(zhuǎn)換器中的DAC引腳直接輸出到引腳,因此在不進(jìn)行AD轉(zhuǎn)換的情況下,實(shí)
46、現(xiàn)DAC轉(zhuǎn)換。(9)A/D轉(zhuǎn)換要求其內(nèi)部時(shí)鐘源的頻率范圍為500kHz3.3MHz。具有內(nèi)部時(shí)鐘分頻器。(10)可以關(guān)閉AD,以減少功耗。作者:夏路易電子工業(yè)出版社所有2模擬比較器LPC935有2個(gè)可以配置成為不同工作模式的模擬比較器。當(dāng)正相輸入(二個(gè)可選擇引腳之一)電壓大于反相輸入時(shí)(可選擇外部引腳輸入?yún)⒖茧妷夯騼?nèi)部參考電壓),輸出信號為“1”(可從寄存器讀出或輸出到引腳),反之則輸出為“0”。通過配置,比較器輸出值發(fā)生改變時(shí)可以產(chǎn)生中斷 該比較器功能如下:(1)具有8種輸入、輸出信號的配置方式。(2)內(nèi)部參考電壓VREF為1.23V10%。(3)比較器輸入和參考電壓引腳還可作為I/O口使用
47、。當(dāng)用作I/O口時(shí)這些引腳輸入電壓最大值為5V。而當(dāng)用作比較器輸入信號時(shí)的最大電壓值為4V。(4)當(dāng)比較器輸出狀態(tài)改變時(shí)中斷標(biāo)志位置位,此標(biāo)志位可通過軟件查詢或用于產(chǎn)生一個(gè)中斷。作者:夏路易電子工業(yè)出版社所有3. 鍵盤中斷鍵盤中斷就是當(dāng)P0口的輸入數(shù)據(jù)等于或不等于某預(yù)置數(shù)據(jù)時(shí)產(chǎn)生一個(gè)中斷。該功能常用于總線地址識別或?qū)︽I盤的識別。該功能由如下寄存器實(shí)現(xiàn):(1)鍵盤中斷屏蔽寄存器(KBMASK)用于定義連接到P0口的輸入引腳。(2)鍵盤模式寄存器(KBPATN)用于定義與P0口引腳輸入數(shù)據(jù)相比較的數(shù)據(jù)。(3)鍵盤中斷控制寄存器(KBCON),當(dāng)鍵盤中斷功能有效且條件匹配時(shí),鍵盤中斷控制寄存器(KB
48、CON)中的鍵盤中斷標(biāo)志置位。如果使能中斷,則產(chǎn)生鍵盤中斷。鍵盤中斷控制寄存器(KBCON)還可以定義比較方式:等于或不等于。如果用戶設(shè)置KBPATN=0FFH和比較方式為不相等時(shí),這樣由KBMASK寄存器使能的任何連接到P0口引腳的按鍵按下(為低電平),都將使中斷標(biāo)志位置位并產(chǎn)生中斷(如果使能中斷)。該中斷可用于將CPU從空閑模式或掉電模式中喚醒。為了置位中斷標(biāo)志,P0口輸入信號的保持時(shí)間必須長于6個(gè)CCLK。 作者:夏路易電子工業(yè)出版社所有4. 實(shí)時(shí)時(shí)鐘RTCLPC935的實(shí)時(shí)時(shí)鐘(RTC)是一個(gè)23位的遞減計(jì)數(shù)器。該計(jì)數(shù)器的時(shí)鐘源可以是CPU時(shí)鐘(CCLK)或是晶體振蕩器,如果晶體振蕩器
49、作為CPU時(shí)鐘源,則RTC必須使用CCLK作為它的時(shí)鐘源。 作者:夏路易電子工業(yè)出版社所有5. 串行外圍總線SPILPC935具有SPI接口模塊。SPI是一種全雙工、高速、同步的通信總線,有兩種操作模式:主模式和從模式。在主模式或從模式中均支持高達(dá)3Mbit/s的速率。SPI接口通信需要4個(gè)引腳:SPI時(shí)鐘引腳SPICLK;主出從入引腳MOSI;主入從出引腳MISO;從機(jī)選擇引腳SS。 作者:夏路易電子工業(yè)出版社所有6. 數(shù)據(jù)存儲(chǔ)器E2PROMLPC935具有保存數(shù)據(jù)的512個(gè)字節(jié)片內(nèi)數(shù)據(jù)E2PROM。通過三個(gè)特殊寄存器,用戶可以字節(jié)讀、字節(jié)寫以及可擦除(通過行填充和扇區(qū)填充):E2PROM的
50、操作模式:字節(jié)模式:一次讀、寫一個(gè)字節(jié)數(shù)據(jù),數(shù)據(jù)存放在數(shù)據(jù)寄存器(DEEDAT)。而地址在地址寄存器(DEEADR)中。每次寫操作需要大約4ms的時(shí)間。讀操作在地址寫入地址寄存器后的3個(gè)機(jī)器周期內(nèi)完成。作者:夏路易電子工業(yè)出版社所有7. I2C接口I2C(IIC)接口通過I2C總線通信。I2C數(shù)據(jù)引腳為P1.3/SDA,時(shí)鐘引腳為P1.2/SCL,這些引腳與輸入濾波器、輸出級共同組成數(shù)據(jù)與時(shí)鐘的輸入與輸出電路。 圖12-21 典型的I2C接口接線1. LPC935的I2C總線主要特性如下:(1)主、從機(jī)之間雙向數(shù)據(jù)傳送。(2)多主機(jī)總線(無中央主機(jī))。(3)具有仲裁機(jī)制,可以避免多主機(jī)通信時(shí),
51、總線上數(shù)據(jù)沖突。(4)串行時(shí)鐘同步功能,可以使得不同位速率的器件可以通過一條串行總線進(jìn)行通信,還可作為握手機(jī)制,用于掛起和恢復(fù)串行傳輸。 作者:夏路易電子工業(yè)出版社所有8. 捕獲/比較單元CCU單元主要實(shí)現(xiàn)數(shù)據(jù)捕獲與脈寬調(diào)制。其中數(shù)據(jù)捕獲用于測量脈沖周期,而脈寬調(diào)制用于直流電機(jī)驅(qū)動(dòng)與逆變。CCU單元特性如下:(1)溢出時(shí)可以16位重裝的16位定時(shí)器。(2)時(shí)鐘(CCUCLK)源可選,可對時(shí)鐘源在1到1024間的任何整數(shù)進(jìn)行預(yù)分頻。(3)4個(gè)極性可選擇的比較/PWM輸出。(4)對稱/非對稱PWM輸出。 (5)7個(gè)使用同一個(gè)中斷向量的中斷(1個(gè)溢出、2個(gè)捕獲和4個(gè)比較)。通過映像寄存器進(jìn)行安全的1
52、6位讀寫。(6)帶有事件計(jì)數(shù)器和數(shù)字噪聲濾波器的2路捕獲輸入。(7)具有鎖相環(huán)PLL,該鎖相環(huán)在輸入時(shí)鐘信號為0.5MHz到1MHz之間時(shí),輸出16MHz到32MHz的頻率,因此可以使PWM模塊提供1016位分辨率的PWM頻率。 作者:夏路易電子工業(yè)出版社所有12.10 設(shè)計(jì)基于LPC935單片機(jī)的最小系統(tǒng)設(shè)計(jì)LPC935單片機(jī)的最小系統(tǒng),就是設(shè)計(jì)單片機(jī)的外圍電路,因?yàn)檫@些電路連接單片機(jī)的引腳,所以應(yīng)該熟悉單片機(jī)的引腳以及一些必要的功能。一般情況下,需要知道單片機(jī)的引腳、復(fù)位、時(shí)鐘、編程、電源以及一些配置信息,這些信息來自本章12.112.8節(jié),更詳細(xì)的來自LPC935單片機(jī)的數(shù)據(jù)手冊(見參考
53、文獻(xiàn)346)。作者:夏路易電子工業(yè)出版社所有12.10.1 LPC935單片機(jī)的編程1. 在電路編程LPC935單片機(jī)在電路編程(ICP)的過程中需要用到5個(gè)引腳:PCL,PDA,Reset,VDD(電源,常用符號為VCC)及Vss(地線)。ICP與在系統(tǒng)編程(ISP,In System Programming)不同,因?yàn)镮CP可完全由單片機(jī)內(nèi)部硬件完成,不需要引導(dǎo)程序。 ICP是一種串行編程方式,其通過一根時(shí)鐘線(PCL)與一根數(shù)據(jù)線(PDA)串行傳輸編程指令及數(shù)據(jù)。ICP方式在應(yīng)用中有以下優(yōu)點(diǎn): 在開發(fā)過程中,不需將芯片從系統(tǒng)板上取下,即可實(shí)現(xiàn)重新編程。 不占用程序存儲(chǔ)空間(ISP需要占用
54、一定空間駐留ISP服務(wù)程序)。 不受串口的影響。 ICP編程器接口與單片機(jī)系統(tǒng)的連接如圖所示。作者:夏路易電子工業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有2. 在系統(tǒng)編程 LPC935單片機(jī)具有在系統(tǒng)編程(ISP,In System Programming)能力,實(shí)現(xiàn)ISP編程是依靠在出廠時(shí)預(yù)置的一段啟動(dòng)代碼,這段代碼存儲(chǔ)在LPC935代碼空間高端512B地址處,這段代碼提供了設(shè)備底層操作代碼(執(zhí)行如擦除、編程等操作)和串口通信之間的接口。如果用戶需要使用ISP編程模式,則必須注意,千萬不要擦除或覆蓋包含ISP預(yù)置代碼的那個(gè)扇區(qū)(LPC935單片機(jī)中的扇區(qū)地址是1C00H-1FFFH),ISP
55、代碼地址范圍為1E00H1FFFH)。復(fù)位后,LPC935檢查用戶配置字中狀態(tài)位BSB的內(nèi)容。如果為0,則轉(zhuǎn)去0000H地址開始執(zhí)行程序。這是用戶應(yīng)用代碼的正常起始地址。如果狀態(tài)位不為0,則將引導(dǎo)向量BOOTV0:4的值1F作為程序計(jì)數(shù)器的高字節(jié),低字節(jié)固定為00H。作者:夏路易電子工業(yè)出版社所有(1)3脈沖法:3脈沖法就是在LPC935上電后,在復(fù)位引腳RST/P1.5產(chǎn)生3個(gè)連續(xù)的脈沖,使LPC935進(jìn)入ISP狀態(tài)。為使LPC935進(jìn)入ISP,需要PC機(jī)上運(yùn)行的編程軟件可以通過串口發(fā)出LPC935復(fù)位引腳需要的3個(gè)脈沖,上電與復(fù)位引腳三脈沖之間的時(shí)序關(guān)系如下圖所示。圖中:tVR50us;1
56、ustRH1us。作者:夏路易電子工業(yè)出版社所有(2)直接跳入法LPC935的ISP模式的預(yù)置啟動(dòng)向量為1FH,也就是ISP駐留代碼首地址為1F00H,要進(jìn)入ISP,直接調(diào)用1F00H處的代碼就可以了。在用戶C代碼中,程序通過函數(shù)指針的方式就可以調(diào)用ISP駐留代碼(即進(jìn)入ISP模式),例如在用戶程序中增加一個(gè)按鈕判斷語句,如果當(dāng)該按鈕按下時(shí),就跳到1F00H處執(zhí)行ISP代碼,與PC機(jī)運(yùn)行的編程軟件通信,一旦通信成功,LPC935就進(jìn)入了ISP狀態(tài)。 直接跳入法也需要PC機(jī)運(yùn)行編程軟件,以及PC機(jī)與PC935芯片之間的電平變換電路。(3)幀間隔檢測法在UART通信中,當(dāng)連續(xù)檢測到11個(gè)位都為低電
57、平時(shí),則認(rèn)為檢測到一個(gè)間隔,并置位狀態(tài)寄存器(SSTAT)中的間隔檢測標(biāo)志BR。由于間隔條件同樣滿足幀錯(cuò)誤條件,因此檢測到間隔時(shí)也會(huì)報(bào)告幀錯(cuò)誤。一旦檢測到間隔條件,UART將進(jìn)入空閑模式并一直保持,直至接收到停止位。間隔檢測還可使器件進(jìn)入ISP模式。首先LPC935芯片在用戶程序中初始化幀間隔檢測代碼,隨后PC機(jī)發(fā)送幀間隔信號,使LPC935芯片檢測到間隔信號后進(jìn)入ISP服務(wù)程序,并自動(dòng)檢測ISP波特率,實(shí)現(xiàn)ISP功能。 作者:夏路易電子工業(yè)出版社所有6. LPC935單片機(jī)的極限使用條件(1)每個(gè)I/O口的最大高電平輸出電流IOH(I/O)=20mA。(2)每個(gè)I/O口的最大低電平輸出電流I
58、OL(I/O)=20mA。(3)最大I/O總電流II/O(tot)(max)=100mA。(4)任何引腳電壓相對于VDD的最大電壓3.5V。7. LPC935單片機(jī)的直流特性(1)在3.6V電源電壓下,正常工作模式下的最大電源電流18mA。(2)所有端口,除高阻以外的各種模式,在輸出電流為20mA時(shí)的輸出低電壓最大1V,在輸出電流為3.2mA時(shí)的輸出低電壓最大0.3V。(3)所有端口的準(zhǔn)雙向模式,在輸出電流為20A時(shí)的輸出高電平電壓最小VDD-0.3V;在推挽模式下輸出電流為3.2mA時(shí)的輸出高電平電壓最小VDD-0.7V。 作者:夏路易電子工業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有作者:夏
59、路易電子工業(yè)出版社所有作者:夏路易電子工業(yè)出版社所有12.11 51內(nèi)核單片機(jī)LPC935的C程序例題 12.11.1 LPC935單片機(jī)C程序基本例題 例題12-1 使LPC935單片機(jī)引腳P06連接的LED燈閃爍,引腳P06設(shè)置為推挽輸出模式。源程序如下:#includereg932.h /頭文件#define uchar unsigned char /定義uchar為unsigned charsbit led=P06; /定義led為引腳P06void delay(void) /延時(shí)函數(shù)uchar x,y,z; for(x=0;x5;x+) for(y=0;y255;y+) for(z=
60、0;z255;z+); void main(void) /主程序P0M1=0 x00; /設(shè)置P0.6為推挽輸出方式P0M2=0 x40; /0 x40=0100 0000 while(1) delay(); /調(diào)用延時(shí)函數(shù) led=led; /led取反,使LED等閃爍 作者:夏路易電子工業(yè)出版社所有例題12-2 在LPC935單片機(jī)的P2口連接LED燈,并使熄滅的LED燈左移或是右移。源程序如下:#include void delay (unsigned int cnt) /延時(shí)函數(shù)while (-cnt); void main() /主函數(shù)unsigned char i;P2M1 = 0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度分手情侶分手后共同債務(wù)減免及豁免協(xié)議
- 2025年度跨境電商平臺(tái)股份轉(zhuǎn)讓協(xié)議模板
- 2025年板材行業(yè)市場調(diào)研與預(yù)測合同
- 二零二五年度鋼結(jié)構(gòu)施工現(xiàn)場安全管理與安全責(zé)任協(xié)議
- 貨車承運(yùn)合同范本
- 二零二五年度貸款合同簽訂流程與貸款政策調(diào)整應(yīng)對策略
- 2025年中國全能肥市場調(diào)查研究報(bào)告
- 中國冶金石灰市場發(fā)展?fàn)顩r與投資前景方向預(yù)測報(bào)告2025-2030年
- 2025至2031年中國香辣腸行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國運(yùn)輸帶粘補(bǔ)劑行業(yè)投資前景及策略咨詢研究報(bào)告
- 2024年度年福建省考評員考試題庫附答案(基礎(chǔ)題)
- 基于PLC智能家居控制系統(tǒng)設(shè)計(jì)
- (2024年)神經(jīng)內(nèi)科科室應(yīng)急全新預(yù)案x
- 《起重機(jī)械安全評估規(guī)范》編制說明(征求意見稿)
- 廣州小學(xué)英語單詞分類識記表-注音版
- 人教版PEP五年級數(shù)學(xué)下冊教案(全冊 完整)
- 窗簾工程方案
- 2024年醫(yī)學(xué)高級職稱-全科醫(yī)學(xué)(醫(yī)學(xué)高級)筆試歷年真題薈萃含答案
- 國防動(dòng)員建設(shè)總體規(guī)劃方案
- 教案檢查總結(jié)及整改措施
- 商品流通學(xué)課件
評論
0/150
提交評論