在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,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首頁 > 嵌入式系統(tǒng) > 設計應用 > 按鍵程序 PORT中斷程序

            按鍵程序 PORT中斷程序

            作者: 時間:2016-11-25 來源:網(wǎng)絡 收藏

            備注1:

            1、假如你的按鍵處理事件非常短,不做延時處理可能會判斷有幾次按鍵按下的可能!
            按鍵也為機械接觸開關,正常情況下,按一次按鍵,在按下瞬間,可能會有很多毛刺出現(xiàn),就會有很多低平出現(xiàn),所以要延時確認,即使沒有這種情況,也要做延時處理,這樣做是去干擾!正常情況下一個干擾脈沖也不可能會長達10-20MS.所以去干擾去抖動還是很有必要的。而這點時間對一個按鍵按下并不影響效果!

            2、易出錯的地方:

            P1IES=0x01或 P1IES=1 易被當成 P1IES=0xFF 。 P1IES=0x01僅設置了P1.0

            相關資料:

            MSP430的端口有P1、P2、P3、P4、P5、P6、S和COM(型號不同,包含的端口也不僅相同,如MSP430X11X系列只有P1,P2端口,而MSP430X4XX系列則包含全部上述端口),它們都可以直接用于輸入/輸出。MSP430系統(tǒng)中沒有專門的輸入/輸出指令,輸入/輸出操作通過傳送指令來實現(xiàn)。端口P1`P6的每一位都可以獨立用于輸入/輸出,即具有位尋址功能。常見的鍵盤接口可以直接用端口進行模擬,用查詢或者中斷方式控制。由于MSP430的端口只有數(shù)據(jù)口,沒有狀態(tài)口或控制口,在實際應用中,如在查詢式輸入/輸出傳送時,可以用端口的某一位或者幾位來傳送狀態(tài)信息,通過查詢對應位的狀態(tài)來確定外設是否處于“準備好”狀態(tài)。

            端口的功能。(1)P1,P2端口: I/O,中斷功能,其他片內(nèi)外設功能如定時器、比較器;(2)P3,P4P5P6端口:I/O,其他片內(nèi)外設功能如SPI、UART模式,A/D轉換等;(3)S,COM端口:I/O,驅動液晶。

            MSP430各端口具有豐富的控制寄存器供用戶實現(xiàn)相應的操作。其中P1,P2具有7個寄存器,P3~P6具有4個寄存器。通過設置寄存器我們可以實現(xiàn):(1)每個I/O位獨立編程;(2)任意組合輸入,輸出和中斷;(3)P1,P2所有8個位全部可以用作外部中斷處理;(4)可以使用所以指令對寄存器操作;(5)可以按字節(jié)輸入、輸出,也可按位進行操作。

            端口P1,P2的功能可以通過它們的7個控制寄存器來實現(xiàn)。這里,Px代表P1或P2。

            (1)PxDIR:輸入/輸出方向寄存器。 8位相互獨立,可以分別定義8個引腳的輸入/輸出方向。8位再PUC后都被復位。使用輸入/輸出功能時,應該先定義端口的方向。作為輸入時只能讀,作為輸出時,可讀可寫。0:輸入模式;1:輸出模式。如:P1DIR|=BIT4; //P1.4輸出 ,P2DIR=0XF0; //高4位輸出,低4位輸入。

            (2)PXIN:輸入寄存器,為只讀寄存器。用戶不能對它進行寫入,只能通過讀取其寄存器的內(nèi)容來知道I/O口的輸入信號。所以其引腳的方向要選為輸入。如再鍵盤鍵盤掃描程序中經(jīng)常要讀取行線或者列線的端口寄存器值來判斷案件情況。例如:unsigned char key;

            P1DIR&=~BIT4; //P1.4輸入

            ……

            key=P1IN&0X10; //輸出端口P1.4的值

            ……

            (3)PXOUT:輸出寄存器。該寄存器為I/O端口的輸出緩沖寄存器,再讀取時輸出緩存的內(nèi)容與引腳方向定義無關。改變方向寄存器的內(nèi)容,輸出緩存的內(nèi)容不受影響。如:PIOUT|=0X01; //P1.0輸出1 , PIOUT&=~0X01; //P1.0輸出0 。

            (4)PXIFG:中斷標志寄存器。他的8個標志位標志相應引腳是否有中斷請求有待處理。0:無中斷請求, 1:有中斷請求。其中斷標志分別為PXIFG.0~PXIFG.7。應該注意的是:PXIFG.0~PXIFG.7共用一個中斷向量,為多源中斷。當任一事件引起的中斷進行處理時,PXIFG.0~PXIFG.7不會自動復位,必須由軟件來判斷是對哪一個事件,并將相應的標志復位。另外,外部中斷事件的時間必須保持不低于1.5倍的MCLK時間,以保證中斷請求被接受,且使相應中斷標志位置位。

            (5)PXIES:中斷觸發(fā)沿選擇寄存器。如果允許PX口的某個引腳中斷,還需定義該引腳的中斷觸發(fā)方式。0:上升沿觸發(fā)使相應標志置位,1:下降沿觸發(fā)相應標志置位。如:MOV.B #07H, &P1IES ;p1低3位下降沿觸發(fā)中斷。

            (6)PXIE:中斷使能寄存器。PX口的每一個引腳都有一位用以控制該引腳是否允許中斷。0:禁止中斷,1:允許中斷。MOV.B #0E0H, &P2IE ;P2高3位允許中斷。

            (7)PXSEL:功能選擇寄存器。P1,P2兩端口還具有其他片內(nèi)外設功能,將這些功能與芯片外的聯(lián)系通過復用P1,P2引腳的方式來實現(xiàn)。PXSEL用來選擇引腳的I/O端口功能與外圍模塊功能。0:選擇引腳為I/O端口,1:選擇引腳為外圍模塊功能。如:P1SEL|=0X10; //P1.4為外圍模塊功能。

            端口P3、P4、P5、P6沒有中斷能力,其余功能同PI,P2。除掉端口P1,P2與中斷相關的3個寄存器,端口P3,P4,P5,P6的4個寄存器(用法同P1,P2)分別為PXDIR,PXIN,PXOUT,PXSEL可供用戶使用。

            端口COM和S,他們實現(xiàn)與液晶片的直接接口。COM為液晶片的公共端,S為液晶片的段碼端。液晶片輸出端也可經(jīng)軟件配置為數(shù)字輸出端口。


            上一頁 1 2 下一頁

            評論


            技術專區(qū)

            關閉