MSP430G2553單片機(jī)培訓(xùn)_第1頁
MSP430G2553單片機(jī)培訓(xùn)_第2頁
MSP430G2553單片機(jī)培訓(xùn)_第3頁
MSP430G2553單片機(jī)培訓(xùn)_第4頁
MSP430G2553單片機(jī)培訓(xùn)_第5頁
已閱讀5頁,還剩231頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、德州學(xué)院物理與電子信息學(xué)院德州學(xué)院物理與電子信息學(xué)院內(nèi)容綱要內(nèi)容綱要uMSP430G2553MSP430G2553單片機(jī)概述單片機(jī)概述uMSP430 CMSP430 C程序設(shè)計(jì)程序設(shè)計(jì)u編程環(huán)境編程環(huán)境IAR,CCSIAR,CCSuMSP430G2553MSP430G2553內(nèi)部硬件資源內(nèi)部硬件資源u單片機(jī)簡單外圍器件使用單片機(jī)簡單外圍器件使用內(nèi)容綱要內(nèi)容綱要uMSP430G2553MSP430G2553單片機(jī)概述單片機(jī)概述uMSP430 CMSP430 C程序設(shè)計(jì)程序設(shè)計(jì)u編程環(huán)境編程環(huán)境IAR,CCSIAR,CCSuMSP430G2553MSP430G2553內(nèi)部硬件資源內(nèi)部硬件資源u單片

2、機(jī)簡單外圍器件使用單片機(jī)簡單外圍器件使用內(nèi)容綱要內(nèi)容綱要uMSP430G2553MSP430G2553單片機(jī)概述單片機(jī)概述uMSP430 CMSP430 C程序設(shè)計(jì)程序設(shè)計(jì)u編程環(huán)境編程環(huán)境IARIARuMSP430G2553MSP430G2553內(nèi)部硬件資源內(nèi)部硬件資源u單片機(jī)簡單外圍器件使用單片機(jī)簡單外圍器件使用MSP430系列單片機(jī)MSP430系列單片機(jī)是美國Texas Instruments (TI) 從1996年開始推向市場的一種16位RISC架構(gòu)、超低功耗的混合信號(hào)處理器。uMSP430G2553單片機(jī)概述單片機(jī)概述uMSP430G2553單片機(jī)概述單片機(jī)概述 MSP430X1XX

3、 系列 MSP430X2XX 系列(F2XX,G2XX) MSP430X3XX 系列 MSP430X4XX 系列(帶LCD驅(qū)動(dòng)) MSP430X5XX 系列 MSP430X6XX 系列(帶LCD驅(qū)動(dòng))(1) MSP430全系列產(chǎn)品全系列產(chǎn)品Device Type Memory TypeC = ROMF = FLASHFR = FRAMG = FLASH (Value Line 超值產(chǎn)品線 )L = No Nonvolatile MemorySpecialized ApplicationAFE = Analog Front EndBT = Pre-programmed with Bluetoot

4、hBQ = Contactless PowerCG = ROM MedicalFE = Flash Energy MeterFG = Flash MedicalFW = Flash Electronic Flow MeterSeries 1 Series = Up to 8 MHz2 Series = Up to 16 MHz3 Series = Legacy OTP4 Series = Up to 16 MHz w/ LCD5 Series = Up to 25 MHz6 Series = Up to 25 MHz w/ LCD0 = Low Voltage SeriesFeature Se

5、t Various Levels of Integration within a Series MSP430G2553,可以分拆為Processor Family(MSP),430MCU Platform(430),Device Type(G),Series(2),F(xiàn)eature Set(553) (2)MSP430結(jié)構(gòu)特點(diǎn)結(jié)構(gòu)特點(diǎn) 馮諾依曼結(jié)構(gòu)馮諾依曼結(jié)構(gòu) 16位尋址位尋址 所有的數(shù)據(jù)、所有的數(shù)據(jù)、 程序和內(nèi)部模程序和內(nèi)部模 塊公用相同的塊公用相同的 存儲(chǔ)空間存儲(chǔ)空間 多時(shí)鐘系統(tǒng)多時(shí)鐘系統(tǒng) JTAG調(diào)制技調(diào)制技 術(shù)術(shù) 在線編程在線編程(3) MSP430系列單片機(jī)的特點(diǎn)系列單片機(jī)的特點(diǎn)l 超

6、低功耗超低功耗l 強(qiáng)大的處理能力強(qiáng)大的處理能力l 高性能模擬技術(shù)及豐富的片上外圍模塊高性能模擬技術(shù)及豐富的片上外圍模塊l 系統(tǒng)工作穩(wěn)定系統(tǒng)工作穩(wěn)定l 方便高效的開發(fā)環(huán)境方便高效的開發(fā)環(huán)境uMSP430G2553單片機(jī)概述單片機(jī)概述超低功耗特例超低功耗特例特性特性1-超低功耗超低功耗ConsumerMeteringSensoringLeierdaMedical超低功耗應(yīng)用超低功耗應(yīng)用uMSP430G2553單片機(jī)概述單片機(jī)概述特性特性2-強(qiáng)大的處理能力強(qiáng)大的處理能力 16位單片機(jī)位單片機(jī) 精簡指令集精簡指令集 指令速度指令速度825MIPS 硬件乘法器硬件乘法器,DMA等等特性特性3-豐富的片上

7、外設(shè)豐富的片上外設(shè) 時(shí)鐘時(shí)鐘 端口端口 定時(shí)器定時(shí)器 比較器比較器 乘法器乘法器 AD,DA模塊模塊 硬件乘法器硬件乘法器,液晶驅(qū)動(dòng)液晶驅(qū)動(dòng),USB,OPA,DMA等等uMSP430G2553單片機(jī)概述單片機(jī)概述特性特性4-系統(tǒng)工作穩(wěn)定系統(tǒng)工作穩(wěn)定 工業(yè)級(jí)產(chǎn)品工業(yè)級(jí)產(chǎn)品 看門狗定時(shí)器看門狗定時(shí)器 電源管理模塊電源管理模塊特性特性5-方便高效的開發(fā)環(huán)境方便高效的開發(fā)環(huán)境 IAR Workbench, TI CCS等等JTAG調(diào)試接口調(diào)試接口 一體化的集成高效的開發(fā)環(huán)境一體化的集成高效的開發(fā)環(huán)境MSP430G2553uMSP430G2553單片機(jī)概述單片機(jī)概述LaunchPad 是一款適用于TI的

8、MSP430G2xx 系列產(chǎn)品的完整開發(fā)解決方案,可支持多達(dá)20 個(gè)引腳,提供板上Flash 仿真工具,以直接連接至PC 輕松進(jìn)行編程、調(diào)試和評(píng)估。uMSP430G2553單片機(jī)概述單片機(jī)概述片上仿真器模塊片上仿真器模塊6針針 eZ430 連接器連接器MSP430器件和插座器件和插座外置晶體接口外置晶體接口電源連接器電源連接器復(fù)位按鈕復(fù)位按鈕LED和跳線和跳線P1.0 & P1.6P1.3 按鈕按鈕芯片引出腳芯片引出腳USB 仿真器接口仿真器接口MSP430G2553 lanchpad各部分結(jié)構(gòu)各部分結(jié)構(gòu) MSP430系列功能框圖系列功能框圖低壓、低壓、電源復(fù)電源復(fù)位保護(hù)位保護(hù)比較捕比

9、較捕捉寄存捉寄存器器MSP430G2XX無無Port3uMSP430G2553單片機(jī)概述單片機(jī)概述 低電壓供電:低電壓供電:1.8V-3.6V 16MHz主頻,主頻,5種低功耗模式種低功耗模式 8輸入輸入10Bit 200Ksps ADC 兩個(gè)兩個(gè)16Bit TimerA USCI接口,支持接口,支持Uart,IrDA,SPI和和IIC功能功能 比較器比較器 16KB FLASH、512B RAMMSP430G2553主要特點(diǎn)主要特點(diǎn)MSP430G2553內(nèi)部資源內(nèi)部資源 三種可選擇系統(tǒng)時(shí)鐘三種可選擇系統(tǒng)時(shí)鐘 通用通用I/O 可獨(dú)立編程可獨(dú)立編程 可提供輸入、輸出與中斷(邊沿可選)的任意組合可

10、提供輸入、輸出與中斷(邊沿可選)的任意組合 所有尋址指令可對(duì)端口控制寄存器進(jìn)行讀所有尋址指令可對(duì)端口控制寄存器進(jìn)行讀/寫訪問寫訪問 每個(gè)每個(gè) I/O 具有一個(gè)可獨(dú)立編程的上拉具有一個(gè)可獨(dú)立編程的上拉/下拉電阻下拉電阻 某些器件某些器件/引腳具有觸摸按鍵模塊引腳具有觸摸按鍵模塊 (PinOsc)uMSP430G2553單片機(jī)概述單片機(jī)概述uMSP430G2553單片機(jī)概述單片機(jī)概述 16 位位 Timer_A2 2 個(gè)捕獲個(gè)捕獲/比較寄存器比較寄存器 豐富的中斷功能豐富的中斷功能 串行通信串行通信 支持支持 I2C 和和 SPI 的的 USI 支持支持 I2C、SPI 以及以及 UART 的的

11、USCI Comparator_A+ 可設(shè)定反相和同相輸入可設(shè)定反相和同相輸入 可選的可選的 RC 輸出濾波器輸出濾波器 可直接輸出至可直接輸出至 Timer_A2 捕獲輸入捕獲輸入 具有中斷能力具有中斷能力 8 通道通道/10 位位 200 ksps SAR ADC 8 個(gè)外部通道(取決于器件)個(gè)外部通道(取決于器件) 內(nèi)置電壓和溫度傳感器內(nèi)置電壓和溫度傳感器 可編程的參考電壓可編程的參考電壓 DTC可在無需可在無需 CPU 干預(yù)的情況下將結(jié)果發(fā)送至存儲(chǔ)器干預(yù)的情況下將結(jié)果發(fā)送至存儲(chǔ)器 具有中斷能力具有中斷能力 欠壓復(fù)位欠壓復(fù)位 可在上電和斷電期間提供正確的復(fù)位信號(hào)可在上電和斷電期間提供正確

12、的復(fù)位信號(hào) 功耗包含于功耗包含于MCU最低功耗時(shí)所消耗電流之中最低功耗時(shí)所消耗電流之中 WDT+ 看門狗定時(shí)器看門狗定時(shí)器 也可用作一個(gè)普通定時(shí)器也可用作一個(gè)普通定時(shí)器uMSP430G2553單片機(jī)概述單片機(jī)概述內(nèi)容綱要內(nèi)容綱要uMSP430G2553MSP430G2553單片機(jī)概述單片機(jī)概述uC C語言知識(shí)回顧語言知識(shí)回顧u編程環(huán)境編程環(huán)境IARIARuMSP430G2553MSP430G2553內(nèi)部硬件資源內(nèi)部硬件資源u單片機(jī)簡單外圍器件使用單片機(jī)簡單外圍器件使用程序結(jié)構(gòu)程序結(jié)構(gòu) 程序的執(zhí)行從main()函數(shù)開始,調(diào)用其他函數(shù)后返回主函數(shù)main(),最后在主函數(shù)中結(jié)束整個(gè)程序而不管函數(shù)的

13、排列順序如何。 main()/*主函數(shù)*/ 局部變量說明/*只在本函數(shù)引用*/ 執(zhí)行語句(包括函數(shù)調(diào)用語句) C語言語句規(guī)則語言語句規(guī)則 每一個(gè)必須先說明后引用,變量名英文大小寫有差別的; 每一個(gè)語句必須以;結(jié)尾 C語言的注釋用/*.*/表示 必須成對(duì)運(yùn)算符運(yùn)算符與與C C語言基本相同:語言基本相同:+ - + - * * / / (加(加 減減 乘乘 除)除) = = y) max=x;else max=y; 執(zhí)行上面語句時(shí),如執(zhí)行上面語句時(shí),如x大于大于y成立,則把成立,則把x送給最大值變送給最大值變量量max,如,如x大于大于y不成立,則把不成立,則把y送給最大值變量送給最大值變量max

14、。使。使max變量得到變量得到x、y中的大數(shù)。中的大數(shù)。(3)if (score=90) printf(“Your result is an An”);else if (score=80) printf(“Your result is an Bn”);else if (score=70) printf(“Your result is an Cn”);else if (score=60) printf(“Your result is an Dn”);else printf(“Your result is an En”); 執(zhí)行上面語句后,能夠根據(jù)分?jǐn)?shù)執(zhí)行上面語句后,能夠根據(jù)分?jǐn)?shù)score分別打出

15、分別打出A、B、C、D、E五個(gè)等級(jí)。五個(gè)等級(jí)。 switch/case語句語句 if語句通過嵌套可以實(shí)現(xiàn)多分支結(jié)構(gòu),但結(jié)構(gòu)復(fù)雜。語句通過嵌套可以實(shí)現(xiàn)多分支結(jié)構(gòu),但結(jié)構(gòu)復(fù)雜。switch是是C51中提供的專門處理多分支結(jié)構(gòu)的多分支中提供的專門處理多分支結(jié)構(gòu)的多分支選擇語句。它的格式如下:選擇語句。它的格式如下:switch (表達(dá)式)(表達(dá)式)case 常量表達(dá)式常量表達(dá)式1:語句語句1;break;case 常量表達(dá)式常量表達(dá)式2:語句語句2;break;case 常量表達(dá)式常量表達(dá)式n:語句語句n;break;default:語句語句n+1;說明如下:說明如下:(1)switch后面括號(hào)內(nèi)的

16、表達(dá)式,可以是整型或字符型表后面括號(hào)內(nèi)的表達(dá)式,可以是整型或字符型表達(dá)式。達(dá)式。(2)當(dāng)該表達(dá)式的值與某一當(dāng)該表達(dá)式的值與某一“case”后面的常量表達(dá)式的值后面的常量表達(dá)式的值相等時(shí),就執(zhí)行該相等時(shí),就執(zhí)行該“case”后面的語句,然后遇到后面的語句,然后遇到break語句語句退出退出switch語句。若表達(dá)式的值與所有語句。若表達(dá)式的值與所有case后的常量表達(dá)式后的常量表達(dá)式的值都不相同,則執(zhí)行的值都不相同,則執(zhí)行default后面的語句,然后退出后面的語句,然后退出switch結(jié)構(gòu)。結(jié)構(gòu)。(3)每一個(gè)每一個(gè)case常量表達(dá)式的值必須不同否則會(huì)出現(xiàn)自相常量表達(dá)式的值必須不同否則會(huì)出現(xiàn)自相

17、矛盾的現(xiàn)象。矛盾的現(xiàn)象。(4)case語句和語句和default語句的出現(xiàn)次序?qū)?zhí)行過程沒有影語句的出現(xiàn)次序?qū)?zhí)行過程沒有影響。響。(5)每個(gè)每個(gè)case語句后面可以有語句后面可以有“break”,也可以沒有。有,也可以沒有。有break語句,執(zhí)行到語句,執(zhí)行到break則退出則退出switch結(jié)構(gòu),若沒有,則會(huì)結(jié)構(gòu),若沒有,則會(huì)順次執(zhí)行后面的語句,直到遇到順次執(zhí)行后面的語句,直到遇到break或結(jié)束?;蚪Y(jié)束。(6)每一個(gè)每一個(gè)case語句后面可以帶一個(gè)語句,也可以帶多個(gè)語句后面可以帶一個(gè)語句,也可以帶多個(gè)語句,還可以不帶。語句可以用花括號(hào)括起,也可以不括。語句,還可以不帶。語句可以用花括號(hào)括

18、起,也可以不括。(7)多個(gè)多個(gè)case可以共用一組執(zhí)行語句??梢怨灿靡唤M執(zhí)行語句。while語句語句 while語句在語句在C51中用于實(shí)現(xiàn)當(dāng)型循環(huán)結(jié)構(gòu),它的中用于實(shí)現(xiàn)當(dāng)型循環(huán)結(jié)構(gòu),它的格式如下:格式如下: while(表達(dá)式)(表達(dá)式) 語句;語句; /*循環(huán)體循環(huán)體*/ while語句后面的表達(dá)式是能否循環(huán)的條件,后語句后面的表達(dá)式是能否循環(huán)的條件,后面的語句是循環(huán)體。當(dāng)表達(dá)式為非面的語句是循環(huán)體。當(dāng)表達(dá)式為非0(真)時(shí),就重復(fù)(真)時(shí),就重復(fù)執(zhí)行循環(huán)體內(nèi)的語句;當(dāng)表達(dá)式為執(zhí)行循環(huán)體內(nèi)的語句;當(dāng)表達(dá)式為0(假),則中止(假),則中止while循環(huán),程序?qū)?zhí)行循環(huán)結(jié)構(gòu)之外的下一條語句。循環(huán),

19、程序?qū)?zhí)行循環(huán)結(jié)構(gòu)之外的下一條語句。 它的特點(diǎn)是:先判斷條件,后執(zhí)行循環(huán)體。在循環(huán)它的特點(diǎn)是:先判斷條件,后執(zhí)行循環(huán)體。在循環(huán)體中對(duì)條件進(jìn)行改變,然后再判斷條件,如條件成立,體中對(duì)條件進(jìn)行改變,然后再判斷條件,如條件成立,則再執(zhí)行循環(huán)體,如條件不成立,則退出循環(huán)。如條件則再執(zhí)行循環(huán)體,如條件不成立,則退出循環(huán)。如條件第一次就不成立,則循環(huán)體一次也不執(zhí)行。第一次就不成立,則循環(huán)體一次也不執(zhí)行。 do while語句語句 do while語句在語句在C51中用于實(shí)現(xiàn)直到型循環(huán)結(jié)構(gòu),中用于實(shí)現(xiàn)直到型循環(huán)結(jié)構(gòu),它的格式如下:它的格式如下: do 語句;語句; /*循環(huán)體循環(huán)體*/ while(表達(dá)式)

20、;(表達(dá)式); 它的特點(diǎn)是:先執(zhí)行循環(huán)體中的語句,后判斷表它的特點(diǎn)是:先執(zhí)行循環(huán)體中的語句,后判斷表達(dá)式。如表達(dá)式成立(真),則再執(zhí)行循環(huán)體,然后達(dá)式。如表達(dá)式成立(真),則再執(zhí)行循環(huán)體,然后又判斷,直到有表達(dá)式不成立(假)時(shí),退出循環(huán),又判斷,直到有表達(dá)式不成立(假)時(shí),退出循環(huán),執(zhí)行執(zhí)行do while結(jié)構(gòu)的下一條語句。結(jié)構(gòu)的下一條語句。do while語句在執(zhí)語句在執(zhí)行時(shí),循環(huán)體內(nèi)的語句至少會(huì)被執(zhí)行一次。行時(shí),循環(huán)體內(nèi)的語句至少會(huì)被執(zhí)行一次。for(表達(dá)式(表達(dá)式1;表達(dá)式;表達(dá)式2;表達(dá)式;表達(dá)式3)語句;語句; /*循環(huán)體循環(huán)體*/for語句后面帶三個(gè)表達(dá)式,它的執(zhí)行過程如下:語句后

21、面帶三個(gè)表達(dá)式,它的執(zhí)行過程如下:(1)先求解表達(dá)式)先求解表達(dá)式1的值。的值。(2)求解表達(dá)式)求解表達(dá)式2的值,如表達(dá)式的值,如表達(dá)式2的值為真,則執(zhí)行循環(huán)的值為真,則執(zhí)行循環(huán)休中的語句,然后執(zhí)行下一步(休中的語句,然后執(zhí)行下一步(3)的操作,如表達(dá)式)的操作,如表達(dá)式2的值的值為假,則結(jié)束為假,則結(jié)束for循環(huán),轉(zhuǎn)到最后一步。循環(huán),轉(zhuǎn)到最后一步。(3)若表達(dá)式)若表達(dá)式2的值為真,則執(zhí)行完循環(huán)體中的語句后,的值為真,則執(zhí)行完循環(huán)體中的語句后,求解表達(dá)式求解表達(dá)式3,然后轉(zhuǎn)到第四步。,然后轉(zhuǎn)到第四步。(4)轉(zhuǎn)到()轉(zhuǎn)到(2)繼續(xù)執(zhí)行。)繼續(xù)執(zhí)行。(5)退出)退出for循環(huán),執(zhí)行下面的一條語

22、句。循環(huán),執(zhí)行下面的一條語句。 在在for循環(huán)中,一般表達(dá)式循環(huán)中,一般表達(dá)式1為初值表達(dá)式,用于給循環(huán)為初值表達(dá)式,用于給循環(huán)變量賦初值;表達(dá)式變量賦初值;表達(dá)式2為條件表達(dá)式,對(duì)循環(huán)變量進(jìn)行判斷;為條件表達(dá)式,對(duì)循環(huán)變量進(jìn)行判斷;表達(dá)式表達(dá)式3為循環(huán)變量更新表達(dá)式,用于對(duì)循環(huán)變量的值進(jìn)行更為循環(huán)變量更新表達(dá)式,用于對(duì)循環(huán)變量的值進(jìn)行更新,使循環(huán)變量能不滿足條件而退出循環(huán)。新,使循環(huán)變量能不滿足條件而退出循環(huán)。4.7.6 for語句語句 在一個(gè)循環(huán)的循環(huán)體中允許又包含一個(gè)完整的循環(huán)在一個(gè)循環(huán)的循環(huán)體中允許又包含一個(gè)完整的循環(huán)結(jié)構(gòu),這種結(jié)構(gòu)稱為循環(huán)的嵌套。外面的循環(huán)稱為外循結(jié)構(gòu),這種結(jié)構(gòu)稱為循

23、環(huán)的嵌套。外面的循環(huán)稱為外循環(huán),里面的循環(huán)稱為內(nèi)循環(huán),如果在內(nèi)循環(huán)的循環(huán)體內(nèi)環(huán),里面的循環(huán)稱為內(nèi)循環(huán),如果在內(nèi)循環(huán)的循環(huán)體內(nèi)又包含循環(huán)結(jié)構(gòu),就構(gòu)成了多重循環(huán)。在又包含循環(huán)結(jié)構(gòu),就構(gòu)成了多重循環(huán)。在C51中,允許中,允許三種循環(huán)結(jié)構(gòu)相互嵌套。三種循環(huán)結(jié)構(gòu)相互嵌套?!纠纠?8】用嵌套結(jié)構(gòu)構(gòu)造一個(gè)延時(shí)程序。】用嵌套結(jié)構(gòu)構(gòu)造一個(gè)延時(shí)程序。void delay(unsigned int x)unsigned char j;while(x-)for (j=0;jNewWorkspace命令,然后開啟一命令,然后開啟一個(gè)空白工作區(qū)窗口個(gè)空白工作區(qū)窗口u編程環(huán)境編程環(huán)境IAR(2) 選擇主菜單選擇主菜單Pr

24、ojectCreate New Project, 彈出生成新項(xiàng)目窗口中我們選擇彈出生成新項(xiàng)目窗口中我們選擇Empty project。選擇保存路徑后,點(diǎn)擊保存選擇保存路徑后,點(diǎn)擊保存新工程建立完畢新工程建立完畢u編程環(huán)境編程環(huán)境IAR3.3.加入文件加入文件u編程環(huán)境編程環(huán)境IAR可以建立一個(gè)空白的文件可以建立一個(gè)空白的文件寫好代碼后,選擇主菜單的寫好代碼后,選擇主菜單的File SaveFile Save命令命令文件名可以自己起,但后面一定要加文件名可以自己起,但后面一定要加 ”.c” ,保存為,保存為C文件文件 u編程環(huán)境編程環(huán)境IAR右擊工程名,將寫好的程序添加進(jìn)去右擊工程名,將寫好的程

25、序添加進(jìn)去AddAdd Files選好后點(diǎn)擊打開對(duì)于剛存好的程序,例如例子中的main.c,也可以用AddAdd“main.c”添加入工程。 如果工程很龐大,需要添加的文件很多??梢杂肁ddAdd Group,加入新的組,將加入的文件分組管理。將工程建好后,往往需要先進(jìn)行設(shè)置,才能正常的使用將工程建好后,往往需要先進(jìn)行設(shè)置,才能正常的使用 右擊工程名,點(diǎn)擊右擊工程名,點(diǎn)擊OptionOptionu編程環(huán)境編程環(huán)境IAR4.工程設(shè)置工程設(shè)置u編程環(huán)境編程環(huán)境IAR首先是在首先是在General OptionGeneral Option中修改中修改Device Device u編程環(huán)境編程環(huán)境IA

26、Ru編程環(huán)境編程環(huán)境IAR然后在然后在Debugger中修改中修改Driver Simulator是用軟件仿真FET Debugger是用Jtag調(diào)試u編程環(huán)境編程環(huán)境IAR接下來在接下來在FET DebuggerFET Debugger中修改中修改ConnectionConnection第一項(xiàng)是TI的USB-Jtag 可以用U口調(diào)試第二項(xiàng)是普通的Jtag,要用到計(jì)算機(jī)的并口調(diào)試第三項(xiàng)是J-link,在新版本的IAR EW430中沒有這一項(xiàng)u編程環(huán)境編程環(huán)境IAR5 程序的調(diào)試程序的調(diào)試添加好文件后,應(yīng)該在工程下看到 選擇需要調(diào)試的文件,如main.c選擇(Compile)按鈕,對(duì)main.c

27、進(jìn)行編譯第一次編譯是需要保存Workspace Files 改好文件名和路徑后點(diǎn)“保存” u編程環(huán)境編程環(huán)境IAR底下會(huì)出現(xiàn)底下會(huì)出現(xiàn)BuildBuild信息窗口信息窗口如果是如果是Done. 0 error(s), 0 warning(s)Done. 0 error(s), 0 warning(s)就可以點(diǎn)擊就可以點(diǎn)擊(makemake)u編程環(huán)境編程環(huán)境IAR如果在信息窗口顯示沒有錯(cuò)誤,就可以點(diǎn)擊進(jìn)行調(diào)試,若已經(jīng)用下載器和開發(fā)板相連,此時(shí)程序就能燒入芯片進(jìn)入調(diào)試界面(Debug)編程環(huán)境編程環(huán)境CCSu編程環(huán)境編程環(huán)境IAR,CCSCCS(Code Composer Studio)是TI公

28、司研發(fā)的一款具有環(huán)境配置、源文件編輯、程序調(diào)試、跟蹤和分析等功能的集成開發(fā)環(huán)境,能夠幫助用戶在一個(gè)軟件環(huán)境下完成編輯、編譯、鏈接、調(diào)試和數(shù)據(jù)分析等工作。CCSv5.1為CCS軟件的最新版本,功能更強(qiáng)大、性能更穩(wěn)定、可用性更高,是MSP430軟件開發(fā)的理想工具。1、利用、利用CCS導(dǎo)入已有工程導(dǎo)入已有工程 u編程環(huán)境編程環(huán)境IAR,CCSu編程環(huán)境編程環(huán)境IAR,CCS2、利用、利用CCS新建工程新建工程(1)首先打開)首先打開CCSv5.1并確定工作區(qū)間,然后選擇并確定工作區(qū)間,然后選擇File-New-CCS Project彈出對(duì)話框。彈出對(duì)話框。(2)在)在Project name中輸入新

29、建工程的名稱,在此輸入中輸入新建工程的名稱,在此輸入myccs1。(3)在)在Output type中有兩個(gè)選項(xiàng):中有兩個(gè)選項(xiàng):Executable和和Static library,前者為構(gòu)建一個(gè)完整的可執(zhí)行程序,后者為靜態(tài)庫。在此保留:前者為構(gòu)建一個(gè)完整的可執(zhí)行程序,后者為靜態(tài)庫。在此保留:Executable。(4)在)在Device部分選擇器件的型號(hào)部分選擇器件的型號(hào):在此在此Family選擇選擇MSP430;Variant選擇選擇MSP430G5XX family,芯片選擇,芯片選擇MSP430G2553;Connection保持默認(rèn)。保持默認(rèn)。(5)選擇空工程,然后單擊)選擇空工程,

30、然后單擊Finish完成新工程的創(chuàng)建。完成新工程的創(chuàng)建。(6)創(chuàng)建的工程將顯示在)創(chuàng)建的工程將顯示在Project Explorer中,如圖中,如圖2.12所示。所示。 u編程環(huán)境編程環(huán)境IAR,CCS(7)新建.h文件:在工程名上右鍵點(diǎn)擊,選擇New-Header File得到如下對(duì)話框。(8)新建.c文件:在工程名上右鍵單擊,選擇New-source file得到如下對(duì)話框。若已用其它編程軟件(例如若已用其它編程軟件(例如IAR),完成了整個(gè)工程的開),完成了整個(gè)工程的開發(fā),該工程無法直接移植入發(fā),該工程無法直接移植入CCS,但可以通過在,但可以通過在CCSv5中新建工程,并根據(jù)步驟(中新

31、建工程,并根據(jù)步驟(7)、()、(8)和()和(9)新建或?qū)В┬陆ɑ驅(qū)胍延腥胍延?h和和.c文件,從而完成整個(gè)工程的移植。文件,從而完成整個(gè)工程的移植。(9)導(dǎo)入已有.h或.c文件:在工程名上右鍵單擊,選擇Add Files得到如下對(duì)話框。 u編程環(huán)境編程環(huán)境IAR,CCS3、利用、利用CCS調(diào)試工程調(diào)試工程(1)在開始調(diào)試之前,有必要確認(rèn)目標(biāo)配置文件是否已經(jīng)創(chuàng)建并配置正確。 (2)啟動(dòng)調(diào)試器 :選擇:選擇Project-Build Project,編譯,編譯目標(biāo)工程。目標(biāo)工程。 表示編譯沒有錯(cuò)誤產(chǎn)生,可以進(jìn)行下載調(diào)試;如果程序有錯(cuò)誤,將會(huì)在Problems窗口顯示,根據(jù)顯示的錯(cuò)誤修改程序,

32、并重新編譯,直到無錯(cuò)誤提示。(3)單擊綠色的)單擊綠色的Debug 按鈕按鈕 進(jìn)行下載調(diào)試進(jìn)行下載調(diào)試 調(diào)試窗口程序窗口控制臺(tái)窗口變量、觀察及寄存器窗口u編程環(huán)境編程環(huán)境IAR,CCS內(nèi)容綱要內(nèi)容綱要uMSP430G2553MSP430G2553單片機(jī)概述單片機(jī)概述uC C語言知識(shí)回顧語言知識(shí)回顧u編程環(huán)境編程環(huán)境IARIARuMSP430G2553MSP430G2553內(nèi)部硬件資源內(nèi)部硬件資源u單片機(jī)簡單外圍器件使用單片機(jī)簡單外圍器件使用系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)

33、計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘系統(tǒng)時(shí)鐘MSP430G2MSP430G2系列單片機(jī)的時(shí)鐘系統(tǒng)需要支持系統(tǒng)低功耗系列單片機(jī)的時(shí)鐘系統(tǒng)需要支持系統(tǒng)低功耗運(yùn)行的需要。通過對(duì)三個(gè)內(nèi)部時(shí)鐘信號(hào)的運(yùn)用,用戶可運(yùn)行的需要。通過對(duì)三個(gè)內(nèi)部時(shí)鐘信號(hào)的運(yùn)用,用戶可很容易的選擇功耗最低,效率最高的系統(tǒng)時(shí)鐘方案。很容易的選擇功耗最低,效率最高的系統(tǒng)時(shí)鐘方案。MSP430G2553MSP430G2553系列單片機(jī)的時(shí)鐘系統(tǒng),包括系列單片機(jī)的時(shí)鐘系統(tǒng),包括2-42-4個(gè)時(shí)鐘源,個(gè)時(shí)鐘源,可以為外設(shè)和可以為外設(shè)和CPUCPU提供提供3 3個(gè)系統(tǒng)時(shí)鐘個(gè)系統(tǒng)時(shí)鐘外

34、接晶振外接晶振32768HZ無無LFXT1CLK:外接低頻或高頻振蕩器,如手表晶 振,頻率發(fā)生器,外部時(shí)鐘源(400kHz 至16MHz). XT2CLK: 外接高頻晶振,范圍在400kHz至 16MHz DCOCLK: 內(nèi)部時(shí)鐘震蕩 VLOCLK: 內(nèi)部低頻低功耗晶振,標(biāo)準(zhǔn)頻率 是12kHz n時(shí)鐘源時(shí)鐘源MSP430G2553而言:LFXT1不支持HF模式,無XT2,不支持ROSCACLK:輔助時(shí)鐘:輔助時(shí)鐘 ACLK可被軟件配置成從可被軟件配置成從LFXT1CLK或或VLOCLK輸入震蕩輸入震蕩ACLK可以被可以被1,2,4,8分頻。分頻。ACLK可以被選用作為外可以被選用作為外圍模塊的

35、時(shí)鐘輸入圍模塊的時(shí)鐘輸入。 n系統(tǒng)時(shí)鐘系統(tǒng)時(shí)鐘MCLK:主時(shí)鐘:主時(shí)鐘 主時(shí)鐘可以從主時(shí)鐘可以從LFXT1CLK或或VLOCLK,XT2CLK或或DCOCLK輸入輸入MCLK用在用在CPU系統(tǒng)之中。系統(tǒng)之中。 SMCLK:輔助主時(shí)鐘:輔助主時(shí)鐘 SMCLK可被選擇從可被選擇從LFXT1CLK,VLOCLK,XT2CLK或或DCOCLK輸入。輸入。SMCLK可以被可以被1,2,4,8分頻。分頻。SMCLK可被選用為外圍模塊的時(shí)鐘??杀贿x用為外圍模塊的時(shí)鐘。 用戶可選擇三種時(shí)鐘信號(hào),用戶可選擇三種時(shí)鐘信號(hào),ACLK,MCLK和和SMCLK。 ACLK主要使用在一些速度不高的外設(shè),以實(shí)現(xiàn)低功耗主要使

36、用在一些速度不高的外設(shè),以實(shí)現(xiàn)低功耗 SMCLK可從可從DCO或外部引入主要滿足高速外設(shè)的使用或外部引入主要滿足高速外設(shè)的使用 MCLK主要向主要向CPU提供時(shí)鐘。提供時(shí)鐘。 一般情況下一般情況下MCLK頻率最高,頻率最高,ACLK頻率最低。頻率最低。 n系統(tǒng)時(shí)鐘控制寄存器系統(tǒng)時(shí)鐘控制寄存器如何進(jìn)行時(shí)鐘的選擇呢?如何進(jìn)行時(shí)鐘的選擇呢?uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源控制寄存器:控制寄存器: DCOCTL,BCSCTL1,BCSCTL2,BCSCTL3 通過設(shè)置控制寄存器控制寄存器就可獲得相應(yīng)的系統(tǒng)時(shí)鐘uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源 DCOCTL 用來控

37、制以獲得用來控制以獲得DCOCLKuMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源調(diào)制器將fDCO和fDCO+1進(jìn)行混頻,產(chǎn)生一個(gè)在fDCO和fDCO+1之間的頻率。調(diào)制器在32個(gè)DCOCLK周期之內(nèi),對(duì)fDCO和fDCO+1進(jìn)行混頻,當(dāng)MODx=0時(shí)調(diào)制器關(guān)閉。 DCOx:DCO頻率選擇, 這些位可以在由RSELx決定的八個(gè)離散的DCO頻率中選擇。 MODx:調(diào)制系數(shù)這個(gè)系數(shù)決定在32個(gè)周期中fDCO+1占多少,fDCO占多少。 BCSCTL1uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源XT2OFF: 0 XT2開啟 1 XT2如果不被用作MCLK和SMCLK則關(guān)閉 XTS: 0

38、 低頻模式 1 高頻模式 DIVAx: ACLK分頻控制 00 /1 01 /2 10 /4 11 /8 RSELx: DCO頻率范圍選擇,RSELx=0時(shí)頻率最低, 當(dāng)DCOR=1時(shí)RSEL3被忽略。 uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源 BCSCTL2SELMx: MCLK頻率選擇 00 DCOCLK 01 DCOCLK 10 XT2如果出現(xiàn)在片上則是XT2CLK, 當(dāng)XT2不出現(xiàn)在片上則選擇 LFXT1CLK或VLOCLK 11 LFXT1CLK或VLOCLK DIVM: MCLK分頻 00 /1 01 /2 10 /4 11 /8 uMSP430G2553單片機(jī)內(nèi)部資源

39、單片機(jī)內(nèi)部資源SELS: SMCLK頻率選擇頻率選擇 0 DCOCLK 1 片上若有片上若有XT2則選擇則選擇XT2CLK,若沒有,若沒有XT2則選擇則選擇 VLOCLK或或XT2 DIVSx: SMCLK的分頻的分頻 00 /1 01 /2 10 /4 11 /8 DCOR: DCO震蕩電阻選擇震蕩電阻選擇 0 內(nèi)部電阻內(nèi)部電阻 1 外部電阻外部電阻 BCSCTL3XT2Sx: XT2范圍選擇 00 0.41MHz晶振或振蕩器 01 13MHz晶振或振蕩器 10 316MHz晶振或振蕩器 11 外部0.416MHz振蕩器 XCAPx: 內(nèi)部電容選擇 00 1pF 01 6pF 10 10pF

40、 11 12.5pF XT2OF: XT2錯(cuò)誤標(biāo)示位 0 無錯(cuò)誤 1 有錯(cuò)誤 LFXT1OF: LFXT1錯(cuò)誤 0 無錯(cuò)誤 1 有錯(cuò)誤 LFXT1Sx: 低頻時(shí)鐘選擇和LFXT1范圍選擇。當(dāng)XTS=0時(shí)這些位在LFXT1和VLO之選擇,當(dāng)XTS=1時(shí)選擇LFXT1的頻率范圍 XTS=0時(shí) 00 LFXT1的32768Hz晶振 01 保留 10 VLOCLK(僅在MSP430F21x1中有) 11 外部數(shù)字時(shí)鐘源 XTS=1時(shí) 00 0.4MHz1MHz晶振或振蕩器 01 1MHz3MHz晶振或振蕩器 10 316MHz晶振或振蕩器 11 0.416MHz振蕩器 uMSP430G2553單片機(jī)內(nèi)

41、部資源單片機(jī)內(nèi)部資源n系統(tǒng)時(shí)鐘的配置步驟系統(tǒng)時(shí)鐘的配置步驟時(shí)鐘源的配置時(shí)鐘源共3個(gè), LFXT1CLK,VLOCLK, DCOCLKLFXT1CLK:需要選擇其低頻或是高頻模式(G2553僅支持低頻),需要選擇其外接的震蕩器或時(shí)鐘源;或是選擇使用的是LFXT1CLK或是VLOCLK用到的控制寄存器為: BCSCTL1的的XTS和和BCSCTL3的的LFXT1SxuMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源DCOCLK:需要配置是否使用外接電阻(G2553不支持),是否關(guān)閉(低功耗模式中講解),頻率范圍(大),頻率值(?。?,調(diào)制器BCSCTL1中的中的DCR和和RSELx, DCOCTL

42、中的中的DCOx和和MODxuMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源 為方便使用MSP4302553.h中提供了校準(zhǔn)的DCOCLK(1M,8M,12M,16 M)#define CALDCO_16MHZ_ (0 x10F8u) /* DCOCTL Calibration Data for 16MHz */READ_ONLY DEFC( CALDCO_16MHZ , CALDCO_16MHZ_)#define CALBC1_16MHZ_ (0 x10F9u) /* BCSCTL1 Calibration Data for 16MHz */READ_ONLY DEFC( CALBC1_

43、16MHZ , CALBC1_16MHZ_)#define CALDCO_12MHZ_ (0 x10FAu) /* DCOCTL Calibration Data for 12MHz */READ_ONLY DEFC( CALDCO_12MHZ , CALDCO_12MHZ_)#define CALBC1_12MHZ_ (0 x10FBu) /* BCSCTL1 Calibration Data for 12MHz */READ_ONLY DEFC( CALBC1_12MHZ , CALBC1_12MHZ_)#define CALDCO_8MHZ_ (0 x10FCu) /* DCOCTL C

44、alibration Data for 8MHz */READ_ONLY DEFC( CALDCO_8MHZ , CALDCO_8MHZ_)#define CALBC1_8MHZ_ (0 x10FDu) /* BCSCTL1 Calibration Data for 8MHz */READ_ONLY DEFC( CALBC1_8MHZ , CALBC1_8MHZ_)#define CALDCO_1MHZ_ (0 x10FEu) /* DCOCTL Calibration Data for 1MHz */READ_ONLY DEFC( CALDCO_1MHZ , CALDCO_1MHZ_)系統(tǒng)時(shí)

45、鐘的配置系統(tǒng)時(shí)鐘的配置時(shí)鐘源的選擇:時(shí)鐘源的選擇: LFXT1CLK,VLOCLK, DCOCLK分頻選擇分頻選擇以MCLK為例:(1)選擇時(shí)鐘源 LFXT1CLK,VLOCLK, DCOCLKBCSCTL2SELMx: MCLK頻率選擇 00 DCOCLK 01 DCOCLK 10 XT2如果出現(xiàn)在片上則是XT2CLK, 當(dāng)XT2不出現(xiàn)在片上則選擇 LFXT1CLK或 VLOCLK 11 LFXT1CLK或VLOCLK 當(dāng)XTS=0時(shí)這些位在LFXT1和VLO之選擇,XTS=0時(shí) (LFXT1Sx)00 LFXT1的32768Hz晶振 01 保留 10 VLOCLK(僅在MSP430F21x

46、1中有) 11 外部數(shù)字時(shí)鐘源 BCSCTL32)選擇分頻BCSCTL2DIVM: MCLK分頻 00 /1 ; 01 /2 ; 10 /4 ;11 /8 自己計(jì)算每一個(gè)系統(tǒng)時(shí)鐘可提供的時(shí)鐘值,以便編程時(shí)使用uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源MSP430 低功耗模式低功耗模式MSP430 具有一種運(yùn)行模式及5 種可利用軟件來選擇的低功耗

47、操作模式。一個(gè)中斷事件能夠?qū)⑵骷娜我坏凸哪J絾拘选⑻幚碚?qǐng)求、并在接收到來自中斷程序的返回信號(hào)時(shí)恢復(fù)至低功耗模式或被激活。uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源如果如果MSP430處于低功耗工作模式,當(dāng)可屏蔽中斷和非可屏蔽中斷處于低功耗工作模式,當(dāng)可屏蔽中斷和非可屏蔽中斷源產(chǎn)生時(shí),會(huì)喚醒源產(chǎn)生時(shí),會(huì)喚醒CPU進(jìn)入中斷處理程序,如下的操作將由硬件來進(jìn)入中斷處理程序,如下的操作將由硬件來完成:完成:1)入棧保護(hù)當(dāng)前)入棧保護(hù)當(dāng)前PC指針寄存器。指針寄存器。2)入棧保護(hù)當(dāng)前)入棧保

48、護(hù)當(dāng)前SR狀態(tài)寄存器。狀態(tài)寄存器。3)清零)清零SR狀態(tài)寄存器(置狀態(tài)寄存器(置GIE = 0, 屏蔽可屏蔽中斷,并結(jié)束低屏蔽可屏蔽中斷,并結(jié)束低功耗模式,功耗模式,CPU切換到切換到Active模式)。模式)。4)從中斷向量表中取出中斷向量到)從中斷向量表中取出中斷向量到PC指針寄存器。指針寄存器。5)跳轉(zhuǎn)到中斷服務(wù)程序開始執(zhí)行。)跳轉(zhuǎn)到中斷服務(wù)程序開始執(zhí)行。6)中斷執(zhí)行完畢后執(zhí)行)中斷執(zhí)行完畢后執(zhí)行RETI返回指令。返回指令。7)出?;謴?fù))出棧恢復(fù)SR狀態(tài)寄存器和狀態(tài)寄存器和PC指針寄存器的值。指針寄存器的值。8)CPU恢復(fù)到原來的低功耗模式。恢復(fù)到原來的低功耗模式。注意:如果在注意:如果

49、在CPU返回原先低功耗模式時(shí)改變低功耗的模式,需返回原先低功耗模式時(shí)改變低功耗的模式,需要在中斷處理程序中修改堆棧中的要在中斷處理程序中修改堆棧中的SR控制位的值。控制位的值。uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口看門狗定時(shí)計(jì)數(shù)器A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信輸入輸出口(輸入輸出口(IO口)口)uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源本單片機(jī)對(duì)應(yīng)的IO共16個(gè)口,P1.0P1.7;P2.0P2.7 既可以是通用的IO口,也可

50、以是復(fù)用功能。 引腳功能說明uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源引腳功能說明IO口的寄存器有:方向選擇寄存器PxDIR,輸出寄存器PxOUT,輸入寄存器PxIN,IO口內(nèi)部上拉或下拉電阻使能寄存器PxREN, IO口功能選擇寄存器PxSEL和PxSEL2,IO口中斷使能寄存器PxIE,中斷沿選擇寄存器PxIES,IO口中斷標(biāo)志寄存器PxIFG。 PxDIR寄存器用于設(shè)置每一位的寄存器用于設(shè)置每一位的IO口方向口方向 :0=輸入輸入 1=輸出。輸出。PxDIR寄存器在復(fù)位的過程中會(huì)被清零,沒有被設(shè)置的寄存器在復(fù)位的過程中會(huì)被清零

51、,沒有被設(shè)置的IO口口方向均為輸入狀態(tài)。注意,將未用的方向均為輸入狀態(tài)。注意,將未用的IO口置為輸出可減小漏口置為輸出可減小漏電流。電流。 對(duì)于所有已經(jīng)設(shè)成輸出的對(duì)于所有已經(jīng)設(shè)成輸出的IO口可通過口可通過PxOUT寄存器設(shè)置其輸寄存器設(shè)置其輸出電平;出電平;對(duì)于所有已經(jīng)被設(shè)成輸入的對(duì)于所有已經(jīng)被設(shè)成輸入的IO口,可通過口,可通過PxIN寄存器讀回其寄存器讀回其輸入電平。輸入電平。 PxREN寄存器用于設(shè)置是否使用上拉電阻,寄存器用于設(shè)置是否使用上拉電阻,1為使能,此時(shí)與為使能,此時(shí)與PxOUT聯(lián)合設(shè)置是上拉還是下拉聯(lián)合設(shè)置是上拉還是下拉 1為上拉,為上拉,0為下拉為下拉uMSP430G2553

52、單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源PxSEL寄存器用于設(shè)置通用寄存器用于設(shè)置通用IO口或是復(fù)用功能,口或是復(fù)用功能, 0=普通普通IO口,口, 1=第二功能第二功能 ;并與;并與PxSEL2一起對(duì)第二功能進(jìn)行選擇設(shè)置一起對(duì)第二功能進(jìn)行選擇設(shè)置uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源IO口中斷:口中斷:IO口中斷使能寄存器PxIE,中斷沿選擇寄存器PxIES,IO口中斷標(biāo)志寄存器PxI

53、FG。P1口、P2口總共16個(gè)IO口均能引發(fā)中斷。 PxIE用于設(shè)置每一位IO口的中斷允許:0=不允許 1=允許 PxIES用于選擇每一個(gè)IO口的中斷觸發(fā)沿:0=上升沿 1=下降沿 在使用IO口中斷之前,需要先將IO口設(shè)置為輸入狀態(tài),并允許該位IO中斷,再通過PxIES寄存器選擇上升沿觸發(fā)還是下降沿觸發(fā)。 uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源PxIFG是IO口中斷標(biāo)志寄存器:0=中斷標(biāo)志不成立,1=中斷條件曾經(jīng)成立;無論中斷是否被允許,也無論是否可以執(zhí)行中斷服務(wù)程序,只要對(duì)應(yīng)IO口滿足中斷條件,PxIFG中相應(yīng)位都會(huì)立即置1并保持,只能通過軟件人工清除。在MSP430系列單片機(jī)

54、中,P1口和P2口的8個(gè)中斷各共用了一個(gè)中斷入口,因此該寄存器另一重要作用在于判斷是哪一位IO產(chǎn)生了中斷。 uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源注意,在退出中斷前,一定要人工清除中斷標(biāo)志,否則該中斷會(huì)注意,在退出中斷前,一定要人工清除中斷標(biāo)志,否則該中斷會(huì)不停被執(zhí)行。不停被執(zhí)行。類似的原理,類似的原理,即使即使IO口沒有出現(xiàn)中斷條件,人工向口沒有出現(xiàn)中斷條件,人工向PxIFG寄存器寄存器寫寫“1”,也會(huì)引發(fā)中斷,也會(huì)引發(fā)中斷。更改中斷沿選擇寄存器也相當(dāng)于跳變,也會(huì)引發(fā)中斷。所以,更更改中斷沿選擇寄存器也相當(dāng)于跳變,也會(huì)引發(fā)中斷。所以,更改改PxIES寄存器應(yīng)該在關(guān)閉中斷后進(jìn)行,

55、并且在打開中斷后及時(shí)清寄存器應(yīng)該在關(guān)閉中斷后進(jìn)行,并且在打開中斷后及時(shí)清除中斷標(biāo)示位。除中斷標(biāo)示位。 uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源編程實(shí)例: 使LaunchPad上的LED燈閃爍#include msp430g2553.hvoid main() WDTCTL = WDTPW + WDTHOLD; BCSCTL2=DIVM_2+ SELM_1; DCOCTL=CALDCO_16MHZ; BCSCTL1|=CALBC1_16MHZ; P1DIR|=BIT6; P1SEL=0 x00; P1OUT=0 x00; while(1) P1OUT|=BIT6; _delay_cyc

56、les(10000); P1OUT&=BIT6; _delay_cycles(10000); 系統(tǒng)時(shí)鐘低功耗模式IO口定時(shí)計(jì)數(shù)器看門狗A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源系統(tǒng)時(shí)鐘低功耗模式IO口定時(shí)計(jì)數(shù)器定時(shí)計(jì)數(shù)器看門狗看門狗A轉(zhuǎn)換器比較器中斷系統(tǒng)串行通信uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源定時(shí)定時(shí)/計(jì)數(shù)器計(jì)數(shù)器帶有一個(gè)16位定時(shí)/計(jì)數(shù)器TIMER_A,用以精確定時(shí)或計(jì)數(shù)。在普通計(jì)數(shù)器的基礎(chǔ)上還添加了3路捕獲比較模塊,能夠在無需CPU的干預(yù)的情況下自動(dòng)根據(jù)觸發(fā)條件捕獲定時(shí)器的計(jì)數(shù)值或自動(dòng)產(chǎn)生輸出波形。 功能有:定時(shí)功能有:定

57、時(shí)/計(jì)數(shù)(計(jì)數(shù)(1個(gè)),比較個(gè)),比較/捕獲(捕獲(3個(gè))個(gè))uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源定時(shí)定時(shí)/計(jì)數(shù)器部分:輸入的時(shí)鐘源具有計(jì)數(shù)器部分:輸入的時(shí)鐘源具有4種選擇,所選定的時(shí)種選擇,所選定的時(shí)鐘源又可以鐘源又可以1、2、4或或8分頻作為計(jì)數(shù)頻率,分頻作為計(jì)數(shù)頻率,Timer_A可可以通過選擇以通過選擇4種工作模式靈活的完成定時(shí)種工作模式靈活的完成定時(shí)/計(jì)數(shù)功能計(jì)數(shù)功能 捕獲捕獲/比較器:用于捕獲事件發(fā)生的時(shí)間或產(chǎn)生時(shí)間間隔,比較器:用于捕獲事件發(fā)生的時(shí)間或產(chǎn)生時(shí)間間隔,捕獲比較功能的引入主要是為了提高捕獲比較功能的引入主要是為了提高I/O 端口處理事務(wù)端口處理事務(wù)的能

58、力和速度。每個(gè)捕獲的能力和速度。每個(gè)捕獲/比較器的結(jié)構(gòu)完全相同,輸入和輸比較器的結(jié)構(gòu)完全相同,輸入和輸出都決定于各自所帶的控制寄存器的控制字,捕獲出都決定于各自所帶的控制寄存器的控制字,捕獲/比較器相比較器相互之間工作完全獨(dú)立?;ブg工作完全獨(dú)立。 輸出單元:具有可選的輸出單元:具有可選的8種輸出模式,用于產(chǎn)生用戶需種輸出模式,用于產(chǎn)生用戶需要的輸出信號(hào)。支持要的輸出信號(hào)。支持PWMuMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源全部關(guān)于定時(shí)器及其操作的控制位都包含在TACTL中TAR :16位計(jì)數(shù)器該單元就是執(zhí)行計(jì)數(shù)的單元,是計(jì)數(shù)器的主體TACCTLx:捕獲/比較模塊的控制字TACCRx

59、 :捕獲/比較寄存器,在捕獲/比較模塊中,可讀可寫。TAIV:保存中斷向量uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源1、定時(shí)、定時(shí)/計(jì)數(shù)工作模式計(jì)數(shù)工作模式時(shí)鐘源選擇,分頻選擇,初始值設(shè)定,計(jì)數(shù)模式全部關(guān)于定時(shí)器及其操作的控制位都包含在TACTL中uMSP430G2553單片機(jī)內(nèi)部資源單片機(jī)內(nèi)部資源若選擇若選擇TACLK作為,定時(shí)器實(shí)際上成為計(jì)數(shù)器,累積從作為,定時(shí)器實(shí)際上成為計(jì)數(shù)器,累積從TACLK管腳上輸入的脈沖,上升沿計(jì)數(shù)。管腳上輸入的脈沖,上升沿計(jì)數(shù)。若選擇若選擇TACLK取反作為時(shí)鐘源,取反作為時(shí)鐘源,TACLK的下降沿計(jì)數(shù)。的下降沿計(jì)數(shù)。 uMSP430G2553單片機(jī)內(nèi)

60、部資源單片機(jī)內(nèi)部資源停止模式:停止模式: 用于定時(shí)器暫停,并不發(fā)生復(fù)位,所有寄用于定時(shí)器暫停,并不發(fā)生復(fù)位,所有寄存器現(xiàn)行的內(nèi)容在停止模式結(jié)束后都可用。當(dāng)定時(shí)器存器現(xiàn)行的內(nèi)容在停止模式結(jié)束后都可用。當(dāng)定時(shí)器暫停后重新計(jì)數(shù)時(shí),計(jì)數(shù)器將從暫停時(shí)的值開始以暫暫停后重新計(jì)數(shù)時(shí),計(jì)數(shù)器將從暫停時(shí)的值開始以暫停前的計(jì)數(shù)方向計(jì)數(shù)。停前的計(jì)數(shù)方向計(jì)數(shù)。例如,停止模式前,例如,停止模式前,Timer_A工作于增工作于增/減計(jì)數(shù)模式并且處于減計(jì)數(shù)模式并且處于下降計(jì)數(shù)方向,停止模式后,下降計(jì)數(shù)方向,停止模式后,Timer_仍然工作于增仍然工作于增/減計(jì)數(shù)模減計(jì)數(shù)模式,從暫停前的狀態(tài)開始繼續(xù)沿著下降方向開始計(jì)數(shù)。式,從暫停前的狀態(tài)開

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論