在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MSP430學(xué)習(xí)筆記——頭文件解析之看門狗

            MSP430學(xué)習(xí)筆記——頭文件解析之看門狗

            作者: 時(shí)間:2016-11-10 來(lái)源:網(wǎng)絡(luò) 收藏
            MSP430設(shè)定的方法方便,但前提是看懂頭文件定義,只有這樣才能更好的運(yùn)用。
            #define __MSP430_HAS_WDT__
            #define WDTCTL_ (0x0120u)
            DEFW( WDTCTL , WDTCTL_)
            這一段中讓人費(fèi)解的就是DEFW,百度可以知道它代表新版本對(duì)寄存器的定義。
            #define DEFCW(name, address) __no_init union
            {
            struct
            {
            volatile unsigned char name##_L;
            volatile unsigned char name##_H;
            };
            volatile unsigned short name;
            } @ address;
            這種定義也變得相對(duì)好理解。以上的這種union的定義,將一個(gè)16位的地址存儲(chǔ)空間分成2個(gè)8bits或者1個(gè)16位??梢詫?shí)現(xiàn)字訪問(wèn),也可以實(shí)現(xiàn)字節(jié)訪問(wèn)。
            WDTCL_代表的就是0X0120u這個(gè)地址,那么DEFW(WDTCTL,WDTCTL_)通過(guò)宏擴(kuò)展就可以理解為
            __no_init union
            {
            struct
            {
            volatile unsigned char WDTCTL_L;
            volatile unsigned char WDTCTL_H;
            };
            volatile unsigned short WDTCTL;
            } @0X0120u;
            這里指出:
            ① __no_init是IAR擴(kuò)展語(yǔ)法里面的一個(gè)擴(kuò)展關(guān)鍵字。作用是聲明一個(gè)non-volatile類型的內(nèi)存地址(Support non-valotile memory)。
            ② @是一種語(yǔ)法。那么它的作用很明顯就是將變量放置到對(duì)應(yīng)的地址中。使用@,一個(gè)變量可以明確的制定一個(gè)存儲(chǔ)地址。
            就是將WDTCTL變量存放在0X0120u地址中,如此一來(lái)就可以為每個(gè)寄存器進(jìn)行命名了,也就是說(shuō)可以實(shí)現(xiàn)每個(gè)寄存器對(duì)應(yīng)一個(gè)或者多個(gè)變量。
            #define WDTIS0 (0x0001u) 選擇時(shí)鐘源周期
            #define WDTIS1 (0x0002u)
            #define WDTSSEL (0x0004u) 時(shí)鐘源選擇(0SM+1A)
            #define WDTCNTCL (0x0008u) 清除WDTCNT
            #define WDTTMSEL (0x0010u) 0看門狗模式,1 定時(shí)器模式
            #define WDTNMI (0x0020u) 0:RST/NMI引腳復(fù)位端,1:RST/NMI引腳為邊沿觸發(fā)的非屏蔽中斷輸入
            #define WDTNMIES (0x0040u) 0為上升沿觸發(fā)NMI中斷,1為下降沿
            #define WDTHOLD (0x0080u) 0:WDT功能激活,1為時(shí)鐘禁止輸入并停止計(jì)數(shù)降低功耗
            #define WDTPW (0x5A00u) 口令
            WDT的定時(shí)時(shí)間
            WDTSSELWDTISx定時(shí)時(shí)間/ms
            IS1IS0
            0110.064Tsmclk*64
            0100.51Tsmclk*512
            1111.95Taclk*64
            0018.19Tsmclk*8192
            11015.63Taclk*512
            00032.77Tsmclk*64
            101250Taclk*8192
            1001000Taclk*32768
            口令 :#define WDTPW (0x5A00u)
            時(shí)鐘源選擇:WDTTMSEL 0為SMCLK 1為ACLK
            WDTCNTCL 該位為1,清除WDTCNT
            WDTIS1+WDTIS0
            0:計(jì)數(shù)次數(shù)32768 1:8192 2:512 3:64 結(jié)合時(shí)鐘源的選擇衍生出下面的定時(shí)器延時(shí)
            +++
            #define WDT_MDLY_32 (WDTPW+WDTTMSEL+WDTCNTCL )
            MOV #WDTPW+WDTTMSEL+WDTCNTCL ,&WDTCTL 定時(shí)32ms
            #define WDT_MDLY_8 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0 )
            #define WDT_MDLY_0_5 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1)
            #define WDT_MDLY_0_064 (WDTPW+WDTTMSEL+WDTCNTCL+WDTIS1+WDTIS0)
            #define WDT_ADLY_1000 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL)
            #define WDT_ADLY_250 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS0) #define WDT_ADLY_16 (WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1)
            #define WDT_ADLY_1_9 WDTPW+WDTTMSEL+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)
            #define WDT_MRST_32 (WDTPW+WDTCNTCL)
            #define WDT_MRST_8 (WDTPW+WDTCNTCL+WDTIS0)
            #define WDT_MRST_0_5 (WDTPW+WDTCNTCL+WDTIS1)
            #define WDT_MRST_0_064 (WDTPW+WDTCNTCL+WDTIS1+WDTIS0)
            #define WDT_ARST_1000 (WDTPW+WDTCNTCL+WDTSSEL)
            #define WDT_ARST_250 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS0)
            #define WDT_ARST_16 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS1)
            #define WDT_ARST_1_9 (WDTPW+WDTCNTCL+WDTSSEL+WDTIS1+WDTIS0)


            關(guān)鍵詞: MSP430頭文件看門

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉