欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
msp430 學(xué)習經(jīng)驗總結

最近學(xué)習MSP430,把自己的一些經(jīng)驗分享下,這是我在網(wǎng)上發(fā)現的一篇很不錯的文章,歸納得很好,簡(jiǎn)潔明了。

1.MSP430開(kāi)發(fā)環(huán)境建立

 

1.安裝IAR dor msp430 軟件,軟件帶USB仿真器的驅動(dòng)。

2.插入USB仿真器,驅動(dòng)選擇安裝目錄的/drivers/TIUSBFET

3.建立一個(gè)工程,選擇"option"選項,設置

  a、選擇器件,在"General"項的"Target"標簽選擇目標器件

  b、選擇輸出仿真,在"Linker"項里的"Output"標簽,選擇輸出"Debug information for C-SPY",以輸出調試

     信息用于仿真。

  c、若選擇"Other",Output下拉框選擇"zax-m"即可以輸出hex文件用以燒錄,注意,此時(shí)仿真不了。

  d、選擇"Debugger"項的"Setup"標簽,"Driver"下拉框選擇"FET Debugger"

  e、選擇"FET Debugger"項的"Setup"標簽,"Connection"下拉框選擇"Texas Instrument USB-I"

4.仿真器的接口,從左到右分別為 " GND,RST,TEST,VCC"

 

 

2.IO口

數字輸入/輸出端口有下列特性:
□ 每個(gè)輸入/輸出位都可以獨立編程。
□ 允許任意組合輸入、輸出。
□ P1 和 P2 所有 8 個(gè)位都可以分別設置為中斷。
□ 可以獨立操作輸入和輸出數據寄存器。
□ 可以分別設置上拉或下拉電阻。

 

 在介紹這四個(gè)I/O口時(shí)提到了一個(gè)“上拉電阻”那么上拉電阻又是一個(gè)什么東東呢?他起什么作用呢?都說(shuō)了是電阻那當然就是一個(gè)電阻啦,當作為輸入時(shí),上拉電阻將其電位拉高,若輸入為低電平則可提供電流源;所以如果P0口如果作為輸入時(shí),處在高阻抗狀態(tài),只有外接一個(gè)上拉電阻才能有效。

 

 

(以下x為1表示P1,為2表示P2,如此類(lèi)推)

1.選擇引腳功能 -- PxSEL,PxSEL2

  PxSEL2        PxSEL      管腳功能
  0             0          用作IO口
  0             1          用作第一功能引腳
  1             0          保留,參考具體型號的手冊
  1             1          用作第二功能引腳

  設置引腳用作外設功能時(shí),芯片不會(huì )自動(dòng)設置該引腳輸入輸出方向,要根據該功能,用戶(hù)自己設置方向寄存器

  PxDIR。

2.選擇引腳輸入/輸出方向 -- PxDIR

  Bit = 0: 輸入
  Bit = 1: 輸出

3.選擇引腳是否使能上下拉電阻 -- PxREN

  Bit = 0: 不使能
  Bit = 1: 使能

4.輸出寄存器 -- PxOUT

  Bit = 0: 輸出低電平或者下拉
  Bit = 1: 輸出高電平或者上拉
5.管腳狀態(tài)寄存器 -- PxIN

  Bit = 0: 管腳當前為低
  Bit = 1: 管腳當前為高

 

 你說(shuō)的“第二功能”應該是指外圍模塊功能吧,用模塊就選“第二功能”,不用模塊就選“第一功能”。 可通過(guò)設置PxSEL寄存器進(jìn)行選擇,某位寫(xiě)“0”為I/O;寫(xiě)“1”為“第二功能”。 用到比較器(片內外圍模塊)時(shí)要設置為第二功能。 當然你如果是用片外的比較器,將其輸出的高低電平(1或0)送給MSP430,那就選“第一功能”。

http://zhidao.baidu.com/question/172451580.html?an=0&si=3

3.Base clock 模塊

一、4個(gè)時(shí)鐘振蕩源

   1、LFXT1CLK:  外部晶振或時(shí)鐘1 低頻時(shí)鐘源 低頻模式:32768Hz 高頻模式:(400KHz-16MHz)

   2、XT2CLK:    外部晶振或時(shí)鐘2 高頻時(shí)鐘源(400KHz-16MHz)
   3、DCOCLK:    內部數字RC振蕩器,復位值1.1MHz
   4、VLOCLK:    內部低功耗振蕩器 12KHz

   注:MSP430x20xx: LFXT1 不支持 HF 模式, XT2 不支持, ROSC 不支持.

 

二、3個(gè)系統時(shí)鐘

   1、ACLK:  輔助時(shí)鐘

      復位:  LFXT1CLK的LF模式,內部電容6pF

      分頻:  1/2/4/8

      時(shí)鐘源:LFXT1CLK/VLOCLK.

      用途:  獨立外設,一般用于低速外設

   2、MCLK:  主時(shí)鐘

      復位:  DCOCLK,1.1MHz

      分頻:  1/2/4/8

      時(shí)鐘源:LFXT1CLK/VLOCLK/XT2CLK/DCOCLK

      用途:  CPU,系統

   3、SMCLK: 子系統時(shí)鐘

      復位:  DCOCLK,1.1MHz

      分頻:  1/2/4/8

      時(shí)鐘源:LFXT1CLK/VLOCLK/XT2CLK/DCOCLK

      用途:  獨立外設,一般用于高速外設

 

三、寄存器

   1、DCOCTL:DCO控制寄存器(讀寫(xiě))

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

      DCOx:定義8種頻率之一,可分段調節DCOCLK的頻率,相鄰兩種頻率相差10%。而頻率又注入直流發(fā)生器

            的電流定義。

      MODx: 位調節器選擇。這幾位決定在 32 個(gè) DCOCLK 周期內插入高1段頻率 fDCO+1的次數。當

             DCOX=7,已為最高段頻率,此時(shí)不能用MODx作為頻率調整。

 

   2、BCSCTL1:基礎時(shí)鐘系統控制寄存器1

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

     XT2OFF:是否關(guān)閉XT2

             0:打開(kāi)XT2 ,1:關(guān)閉XT2

     XTS:   XT2模式選擇

             0:LF mode (低頻模式) ,1:HF mode (高頻模式)

     DIVA:  ACLK的分頻選擇 0-3 對應 1/2/4/8 分頻

     RSELx: 選擇DCO中16種標稱(chēng)的頻率,實(shí)際對應16個(gè)內部電阻

             0-15 對應的頻率 從 低到高,當 DCOR=1 時(shí),表示選用外接電阻,所以RSELx無(wú)效

  

   3、BCSCTL2:基礎時(shí)鐘系統控制寄存器2

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

      SELMx:選擇MCLK的時(shí)鐘源

             0:DCOCLK

             1:DCOCLK

             2:當 XT2 振蕩器在片內時(shí)采用 XT2CLK。當 XT2 振蕩器不在片內時(shí)采用 LFXT1CLK 或 VLOCLK

             3:LFXT1CLK 或 VLOCLK

      DIVMx: MCLK的分頻選擇 0-3 對應 1/2/4/8 分頻

      SELS: 選擇SMCLK的時(shí)鐘源

             0:DCOCLK
             1:當 XT2 振蕩器存在時(shí)選用 XT2CLK,當 XT2 振蕩器不存在時(shí)采用 LFXT1CLK 或 VLOCLK

      DIVSx: SMCLK的分頻選擇 0-3 對應 1/2/4/8 分頻

      DCOR:  0:DCOCLK使用內部電阻、 1:DCOCLK使用外接電阻

 

   4、BCSCTL3:基礎時(shí)鐘系統控制寄存器3

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

     XT2Sx:XT2范圍選擇

            0:0.4-1MHz 晶體或振蕩器

            1:1-3MHz 晶體或振蕩器

            2:3-16MHz 晶體或振蕩器

            3:0.4-16MHz外部數字時(shí)鐘源

     LFXT1Sx: 低頻時(shí)鐘選擇和 LFXT1 范圍選擇。當 XTS=0 時(shí)在 LFXT1 和 VLO之間選擇。當 XTS=1 時(shí)選

               擇 LFXT1 的頻率范圍。

            0:LFXT1上的 32768Hz 晶體

            1:保留

            2:VLOCLK(MSP430X21X1 器件上保留)

            3:外部數字時(shí)鐘信源

     XCAPx:振蕩器電容選擇。這些位選擇當 XTS=0 時(shí)用于 LFXT1 的有效電容。

            0:1pF

            1:6pF

            2:10pF

            3:12.5pF

     XT2OF:XT2振蕩器是否失效 
            0:有效,正在工作
            1:無(wú)效,未正常工作 
     LFXT1OF:LFXT1振蕩器是否失效 
            0:有效,正在工作
            1:無(wú)效,未正常工作 

 

   5、IE1:中斷使能寄存器 1

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

      OFIE:振蕩器失效中斷使能。該位使 OFIFG 中斷使能。由于 IE1 的其它位
            用于其它模塊,因此采用 BIS.B 或 BIC.B 指令來(lái)設置或清零該位比
            用 MOV.B 或 CLR.B 更合適。

 

   6、IFG1:中斷標志寄存器 1

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

      OFIFG:振蕩器失效中斷標志。由于 IFG1 的其它位用于其它模塊,因此
             采用  BIS.B  或  BIC.B  指令來(lái)設置或清零該位比用  MOV.B  或
             CLR.B 更合適。

             0:沒(méi)有未被響應的中斷

             1:有未被響應的中斷

 

四、DCO頻率

 學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=33 height=33>

4種頻率經(jīng)校準精度為±1%

 4. 定時(shí)器TA

 

一、時(shí)鐘源

    1、時(shí)鐘源:ACLK/SMCLK 外部TACLK/INCLK

    2、分頻:1/2/4/8 當 (注:TACLR 置位時(shí),分頻器復位)

 

二、計數模式

     通過(guò)設置MCx可以設置定時(shí)器的計數模式

    

    1、停止模式:停止計數

    2、單調增模式:定時(shí)器循環(huán)地從0增加到TACCR0值

       周期      :TACCR0

       CCIFG     :Timer計到TACCR0值時(shí)觸發(fā)

       TAIFG     :Timer計到0時(shí)觸發(fā)

    3、連續模式  :定時(shí)器循環(huán)從0連續增加到0xFFFF

       周期      :0x10000

       TAIFG     :Timer計到0時(shí)觸發(fā)

    4、增減模式  :定時(shí)器增計數到TACCR0 再從 TACCR0 減計數到 0

       周期      :TACCR0值的2倍

       CCIFG     :Timer計到TACCR0值時(shí)觸發(fā)

       TAIFG     :Timer計到0時(shí)觸發(fā)

 

三、定時(shí)器A TACCRx 比較模式 (用于輸出和產(chǎn)生定時(shí)中斷)

    1、設置:CAP=0選擇比較

    2、輸出信號:比較模式用于選擇 PWM 輸出信號或在特定的時(shí)間間隔中斷。當 TAR 計數

    到 TACCRx 的值時(shí):

       a、中斷標志 CCIFG=1; 
       b、內部信號 EQUx=1; 
       c、EQUx 根據輸出模式來(lái)影響輸出信號 
       d、輸入信號 CCI 鎖存到 SCCI

       每個(gè)捕獲比較模塊包含一個(gè)輸出單元。輸出單元用于產(chǎn)生如 PWM 這樣的信號。每個(gè)輸出單元可以根據

       EQU0 和 EQUx 產(chǎn)生 8 種模式的信號。

      

    3、中斷

       TimerA 有 2 個(gè)中斷向量: 
       a、TACCR0 CCIFG 的 TACCR0 中斷向量

       b、所有其他 CCIFG 和 TAIFG 的 TAIV 中斷向量
          在捕獲模式下,當一個(gè)定時(shí)器的值捕獲到相應的 TACCRx 寄存器時(shí),  CCIFG 標志置位。
          在比較模式下,如果 TAR 計數到相應的 TACCRx 值時(shí),CCIFG 標志置位。軟件可以清除或置
          位任何一個(gè) CCIFG 標志。當響應的 CCIE 和 GIE 置位時(shí), CCIFG 標志就會(huì )產(chǎn)生一個(gè)中斷。

       c、TACCR0 CCIFG  標志擁有定時(shí)器 A 的最高中斷優(yōu)先級,并有一個(gè)專(zhuān)用的中斷向量,

          當進(jìn)入 TACCR0 中斷后,TACCR0 CCIFG 標志自動(dòng)復位。

       d、TACCR1 CCIFG, TACCR2 CCIFG,  和 TAIFG 標志共用一個(gè)中斷向量。中斷向量寄存器 TAIV
          用于確定它們中的哪個(gè)要求響應中斷。最高優(yōu)先級的中斷在 TAIV 寄存器中產(chǎn)生一個(gè)數字(見(jiàn)
          寄存器說(shuō)明),這個(gè)數字是規定的數字,可以在程序中識別并自動(dòng)進(jìn)入相應的子程序。禁止定時(shí)
          器 A 中斷不會(huì )影響 TAIV 的值。 
          對 TAIV 的讀寫(xiě)會(huì )自動(dòng)復位最高優(yōu)先級的掛起中斷標志。如果另一個(gè)中斷標志置位,在結
          束原先的中斷響應后會(huì ),該中斷響應立即發(fā)生。例如,當中斷服務(wù)子程序訪(fǎng)問(wèn) TAIV 時(shí),如果
          TACCR1 和 TACCR2 CCIFG 標志位置位,TACCR1 CCIFG 自動(dòng)復位。在中斷服務(wù)子程序的 RETI
          命令執行后,TACCR2 CCIFG 標志會(huì )產(chǎn)生另一個(gè)中斷。

 

四、TimerA的捕獲模式

    1、設置:CAP=1選擇捕獲, CCISx位設置捕獲的信號源,CMx位選擇捕獲的沿,上升,下降,或上升下降都

             捕獲。

    2、如果一個(gè)第二次捕獲在第一次捕獲的值被讀取之前發(fā)生,捕獲比較寄存器就會(huì )產(chǎn)生一個(gè)溢出邏輯,COV

       位在此時(shí)置位,如圖 8-11,COV 位必須軟件清除。

 

五、寄存器

   1、TACTL:TimerA控制寄存器

    學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=30 height=30>

      TASSELx:TA時(shí)鐘源選擇

            0:TACLK;1:ACLK;2:SMCLK;3:INCLK

      IDx:    輸入分頻,分時(shí)鐘源分頻再輸入TimerA

            0/1/2/3:1/2/4/8 分頻

      MCx:    模式控制

            0:停止定時(shí)器;1:增模式,定時(shí)器計數到TACCR0;

            2:連續模式,定時(shí)器計數到0xFFFF;3:增減模式,0->TACCR0->0

      TACLR:  定時(shí)器清零位。該位置位會(huì )復位 TAR,時(shí)鐘分頻和計數方向。TACLR位會(huì )自動(dòng)復位并讀出值為0

      TAIE:   TA 中斷允許。該位允許 TAIFG 中斷請求
            0:中斷禁止;1:中斷允許

      TAIFG:  TA中斷標記

            0:無(wú)中斷掛起;1:中斷掛起

 

   2、TAR:TimerA計數寄存器

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=30 height=30>

  

   3、TACCTLx:捕獲比較控制寄存器

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=30 height=30>

      CMx:捕獲模式

           0:不捕獲 ;1:上升沿捕獲;2:下降沿捕獲 ;3:上升和下降沿都捕獲

      CCISx:捕獲比較選擇,該位選擇 TACCRx 的輸入信號

           0:CCIxA;1:CCIxB;2:GND;3:VCC

      SCS:同步捕獲源,該位用于將捕獲通信和時(shí)鐘同步
           0:異步捕獲;1:同步捕獲

      SCCI:同步的捕獲/比較輸入,所選擇的 CCI 輸入信號由 EQUx 信號鎖存,并可通過(guò)該位讀取

      CAP:捕獲模式

           0:比較模式;1:捕獲模式

      OUTMODx:輸出模式位。由于在模式 2,3,6 和 7 下 EQUx= EQU0,因此這些模式對 TACCR0 無(wú)效

           0:OUT  位的值;1:置位;2:翻轉/復位;3:置位/復位 
           4:翻轉;5:復位;6:翻轉/置位;7:復位/置位

      CCIE:捕獲比較中斷允許位,該位允許相應的 CCIFG 標志中斷請求
           0:中斷禁止;1:中斷允許

      CCI:捕獲比較輸入。所選擇的輸入信號可以通過(guò)該位讀取

      OUT:對于輸出模式 0,該位直接控制輸出狀態(tài)
           0:輸出低電平;1:輸出高電平

      COV:捕獲溢出位。該位表示一個(gè)捕獲溢出發(fā)生。COV 必須由軟件復位。

           0:沒(méi)有捕獲溢出發(fā)生;1:有捕獲溢出發(fā)生

      CCIFG:捕獲比較中斷標志位

           0:沒(méi)有中斷掛起;1:有中斷掛起

 

   4、TAIV:TimerA中斷向量寄存器

       學(xué)習經(jīng)驗總結】" alt="[轉載]【msp430 學(xué)習經(jīng)驗總結】" width=30 height=30>

      寄存器的值:

      0:無(wú)中斷掛起;

      2:捕獲比較1 TACCR1 CCIFG;

      4:捕獲比較2 TACCR2 CCIFG;

      0xA:定時(shí)器溢出 TAIFG

 

5.MSP430中斷嵌套機制

 

(1)430默認的是關(guān)閉中斷嵌套的,除非你在一個(gè)中斷程序中再次開(kāi)總中斷EINT。

(2)當進(jìn)入中斷程序時(shí),只要不在中斷中再次開(kāi)中斷,剛總中斷是關(guān)閉的,此時(shí)來(lái)中斷不管是比當前中斷的優(yōu)先級高還是低都不執行。

(3)若在中斷A中開(kāi)了總中斷,剛可以響應后來(lái)的中斷B(不管B的優(yōu)先級比A高還是低),B執行完現繼續執行。注意:進(jìn)入中斷B生總中斷同樣也會(huì )關(guān)閉,如果B中斷程序執行時(shí)需響應中斷C,則此時(shí)也要開(kāi)總中斷,若不需響應中斷,則不用開(kāi)中斷,B執行完后中跳出中斷程序進(jìn)入A程序時(shí),總中斷會(huì )自動(dòng)打開(kāi)。

(4)若在中斷中開(kāi)了總中斷,后來(lái)的中斷同時(shí)有多個(gè),則會(huì )按優(yōu)先級來(lái)執行,即中斷優(yōu)先級只有在多個(gè)中斷同時(shí)到來(lái)才起做用!中斷服務(wù)不執行搶先原則。

(5)對于單源中斷,只要響應中斷,系統硬件自動(dòng)清中斷標志位,對于TA/TB定時(shí)器的比較/捕獲中斷,只要訪(fǎng)問(wèn)TAIV/TBIV,標志位倍被自動(dòng)清除;對于多源中斷要手動(dòng)清標志位,比如P1/P2口中斷,要手工清除相應的標志,如果在這種中斷用“EINT();”開(kāi)中斷,而在打開(kāi)中斷前沒(méi)有清標志,就會(huì )有相同的中斷不斷嵌入,而導致堆棧溢出引起復位,所以在這類(lèi)中斷必須先清標志現打開(kāi)中斷開(kāi)關(guān)。

 

6.關(guān)于MSP430中斷機制--我的理解

因DC的邀請寫(xiě)一個(gè)有關(guān)中斷的東東,我也接觸430不久只能以自己的心得體會(huì )更大家分享,若有紕漏懇請見(jiàn)諒。MSP430用戶(hù)手冊上有的中斷介紹我就不贅述了,大家可以看User Guider.我講的主要是書(shū)上沒(méi)有的,或者是點(diǎn)的不透的。希望對大家有用。

1.中斷嵌套,優(yōu)先級
430總中斷的控制位是狀態(tài)寄存器內的GIE位(該位在SR寄存器內),該位在復位狀態(tài)下,所有的可屏蔽中斷都不會(huì )發(fā)生響應??善帘沃袛嘤址譃閱沃袛嘣春投嘀袛嘣吹?。單中斷源的一般響應了中斷服務(wù)程序中斷標志位就自動(dòng)清零,而多中斷源的則要求查詢(xún)某個(gè)寄存器后中斷標志位才會(huì )清零。由于大多數人接觸的第一款單片機通常是51,51單片機CPU在響應低優(yōu)先級的中斷程序過(guò)程中若有更高優(yōu)先級的中斷發(fā)生,單片機就會(huì )去執行高優(yōu)先級,這個(gè)過(guò)程已經(jīng)產(chǎn)生了中斷嵌套。而430單片機則不同,如果在響應低優(yōu)先級中斷服務(wù)程序的時(shí)候,即使來(lái)了更高優(yōu)先級的中斷服務(wù)請求,430也會(huì )置之不理,直至低優(yōu)先級中斷服務(wù)程序執行完畢,才會(huì )去響應高優(yōu)先級中斷。這是因為430在響應中斷程序的時(shí)候,總中斷GIE是復位狀態(tài)的,如果要產(chǎn)生類(lèi)似51的中斷嵌套,只能在中斷函數內再次置位GIE位。

2.定時(shí)器TA
TimerA有2個(gè)中斷向量。TIMERA0,TIMERA1
TIMERA0只針對CCR0的計數溢出
TIMERA1再查詢(xún)TAIV后可知道是CCR1,還是CCR2,亦或TAIFG引起的,至于TAIFG是什么情況下置位的,則要看TA工作的模式
具體看用戶(hù)手冊。還有一點(diǎn)TA本身有PWM輸出功能,無(wú)須借用中斷功能。在這個(gè)問(wèn)題上經(jīng)常出現應用彎路的是如何結合TA和AD實(shí)行定時(shí)采樣的問(wèn)題,很多人都是在TA中斷里打開(kāi)AD這樣來(lái)做。這是不適宜的,因為430 的ADC10,ADC12(SD16不熟悉,沒(méi)發(fā)言權)模塊均有脈沖采樣模式和擴展采樣模式。只要選擇AD是由TA觸發(fā)采樣,然后把TA設置成PWM輸出模式,當然輸出PWM波的都是特殊功能腳,但是在這里它是不需要輸出的,所以引腳設置不必理會(huì )。值得關(guān)心的就是PWM的頻率,也就是你AD的采樣率。

3.看門(mén)狗復位
看門(mén)狗有2種工作模式:定時(shí)器 ,看門(mén)狗
定時(shí)器工作模式下WDTIFG在響應中斷服務(wù)程序有標志位自動(dòng)復位,而在看門(mén)狗模式下,該標志位只能軟件清零。但是怎么判斷復位是由于WDT工作在看門(mén)狗模式下的定時(shí)溢出引起的,還是看門(mén)狗寫(xiě)密鑰錯誤引起的呢?………………………………
答案是沒(méi)有方法,至少我沒(méi)見(jiàn)過(guò)有什么方法,也沒(méi)見(jiàn)過(guò)周邊的人有什么方法。若有人知道方法謝謝分享。
4.經(jīng)常有人會(huì )問(wèn)這個(gè)語(yǔ)句的MOV.B  #LPM0,0(SP)的作用。假如你在進(jìn)入中斷函數之前,430是在LPM0下待機,若要求執行完中斷函數之后進(jìn)入LPM3待機,在中斷函數里寫(xiě)MOV.B  #LPM3,SR是無(wú)效的。因為在進(jìn)入中斷時(shí)430會(huì )把PC,SR壓棧,( SR內保存著(zhù)低功耗模式的設置)即使你寫(xiě)了MOV.B  #LPM3,SR,在退出中斷出棧時(shí)SR會(huì )被重新設置成低功耗0,要達到這樣的目的,只能更改堆棧內SR的設置:MOV.B  #LPM0,0(SP)。

5中斷向量:
430的中斷向量是FFE0H—FFFFH,一共32個(gè)字節也就是FLASH的最后一段,430的FLASH有大有小,但是最后地址肯定是FFFFH(大FLASH超過(guò)64K的除外)所以它們的起始地址是不一樣的,而一般IAR默認編譯都是把程序放在FLASH開(kāi)始的位置(不包括信息段)。
有個(gè)值得弄清楚的問(wèn)題是:什么是中斷向量?中斷向量實(shí)際就是保存中斷函數入口地址的存儲單元空間。就像FFFEH+FFFFH這2個(gè)字節是復位中斷向量,那么它存儲的就是主函數在FLASH內的起始地址,假如主函數保存在以0x1100為起始地址的FLASH塊內,那么你會(huì )發(fā)現FFFFH 內保存的是0x11, FFFE內保存的是0x00.其他什么TimerA,ADC12,所有的都一樣。只是你每次寫(xiě)的程序長(cháng)短不一,中斷函數放的位置不一樣。IAR編譯器都會(huì )給你定好,然后在你用JTAG燒寫(xiě)程序的時(shí)候,把這個(gè)地址,燒寫(xiě)到相應的中斷向量。因為中斷函數所處地址可以由用戶(hù)自定義,也可以讓IAR自動(dòng)編譯,所以這個(gè)地址除了源代碼開(kāi)發(fā)人員知道,其他人是不知道的,BSL就是應用這32個(gè)字節的中斷向量?jì)鹊膬热莸奶厥庑栽O置的密碼。但是有幾個(gè)東西在430是不變的,就是觸發(fā)中斷的條件滿(mǎn)足后,它到哪個(gè)地方去尋址中斷服務(wù)函數的入口地址,是TI 在做430時(shí)就固化好,定死的。比方說(shuō)上電復位的時(shí)候,它知道去FFFE,FFFF單元找地址,而不去FFE0,FFE2找地址,這個(gè)映射關(guān)系是430固化不變的??捎械臅r(shí)候你就是需要改變“中斷向量”,這怎么辦?430FLASH程序自升級里有時(shí)就會(huì )碰到這個(gè)問(wèn)題,方法是在430原來(lái)默認的中斷向量表內做一個(gè)跳轉操作,同樣以上電復位為例:
ORG  0x2345
PowerReset: mov.w  &0xFCFE,PC
…………………………
…………………………
ORG  0xFFFE
DW   PowerReset
這樣的話(huà)0xFCFE就相當是0xFFFE的映射了。這個(gè)在430程序自升級的TI應用報告里就有。
有點(diǎn)晚,就到這里。有新的內容的話(huà),我會(huì )添加。希望大家能夠喜歡。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
MSP430的時(shí)鐘系統
MSP430系統時(shí)鐘寄存器詳解
MSP430的時(shí)鐘周期 機器周期 指令周期
【MSP430時(shí)鐘】MSP430 5438時(shí)鐘系統介紹
MSP430的時(shí)鐘問(wèn)題
求探討:MSP430內部ADC12采樣時(shí)鐘與轉換時(shí)鐘區別? (amoBBS 阿莫電子論壇)
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久