新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 深入理解MSP430單片機(jī)IO

深入理解MSP430單片機(jī)IO

作者: 時(shí)間:2013-12-02 來源:網(wǎng)絡(luò) 收藏

一、單片機(jī)的端口概述

P1~P6每組有8個(gè)I/O 口,P3,P4,P5,P6具有I/O,及其它片內(nèi)外設(shè)功能,每組具有4個(gè)寄存器。P1,P2除具有上述功能外還具有,每組具有7個(gè)寄存器。

二、PX端口

1. P1,P2端口

(1)PxDIR 輸入/輸出方向寄存器(x代表1,2)

相互獨(dú)立的八位分別定義了Px7~Px0,8個(gè)引腳的輸入輸出方向。

0 輸入模式,只能讀。

1 輸出模式,可讀可寫。

8為在PUC后都被復(fù)位及置為0.

Eg:P1DIR=0X0F;

這里0X0F為16進(jìn)制表示,對(duì)應(yīng)的二進(jìn)制為00001111,即將P1DIR的高4位置0,低4位置1,也就是將P1.7,P1.6,P1.5,P1.4(P1的高4位)設(shè)置為輸入模式將P1.3,P1.2,P1.1,P1.0(P1的低4位)設(shè)置為輸出模式。

(2)PxIN 輸入寄存器

每一位對(duì)應(yīng)一個(gè)輸入端口,如:第2位對(duì)應(yīng)Px.2,記錄著對(duì)應(yīng)位輸入的數(shù)據(jù),0還是1.輸入寄存器是只讀寄存器,用戶不能對(duì)它寫入,只能從中讀數(shù)據(jù)。

eg:

char a;

a=P1IN;

將P1輸入的數(shù)據(jù)賦給a,也可以讀取其中的一位或若干位。

eg: if((P1IN0X01)==1) a=b;

這句話的意思是如果P1IN得最低位為1,即P1.0輸入的是1,就將b賦給a;其中’’意思是按位求與運(yùn)算,即將P1IN中的8位數(shù)據(jù)和0x01按位求與運(yùn)算。

(3)PxOUT輸出寄存器

該寄存器為I/O端口的輸出緩沖寄存器,每一位對(duì)應(yīng)一個(gè)輸出端口,如:第2位對(duì)應(yīng)Px.2。用戶向?qū)?yīng)位寫入數(shù)據(jù),則對(duì)應(yīng)的端口就會(huì)輸出對(duì)應(yīng)的數(shù)據(jù)。

eg:

P1OUT=0X01;

將P1OUT的最低位置1,其它位置0,即P1.7, P1.6 P1.5 P1.4 P1.3 P1.2 P1.1輸出0, P1.0輸出1;

P1OUT=BIT0;

通過查閱單片機(jī)的頭文件我們可以知道BIT0就是0x01,說以這句話和上一句是等價(jià)的,之所以這樣寫,是為了使程序更易懂,更簡潔。

(4)PxIFG中斷標(biāo)志寄存器

0 表示沒有中斷請(qǐng)求

1 表示有中斷請(qǐng)求

中斷標(biāo)志PxIFG.0~ PxIFG.7共用一個(gè)中斷向量,屬于多源中斷。當(dāng)對(duì)應(yīng)的I/O口有上升沿或下降沿出現(xiàn)時(shí),對(duì)應(yīng)的標(biāo)志位會(huì)置位,如果中斷允許而且系統(tǒng)總中斷允許,則產(chǎn)生中斷,并執(zhí)行中斷處理程序。

注意:1. PxIFG.0~ PxIFG.7被置位后,不會(huì)自動(dòng)復(fù)位。必須用軟件判定哪一個(gè)I/O有中斷事件產(chǎn)生,并將相應(yīng)的標(biāo)志位復(fù)位。

2.外部中斷事件的事件必須保持不低于1.5倍的MCLK 時(shí)間,以保證中斷請(qǐng)求被接受,且使相應(yīng)的中斷標(biāo)志置位。

(5)PxIE中斷使能寄存器

0 禁止中斷

1 允許中斷

只有跳變才能引起中斷請(qǐng)求,而靜電平不能

(6)PxIES中斷觸發(fā)沿選擇寄存器

0 上升沿使相應(yīng)標(biāo)志位置位

1 下降沿使相應(yīng)標(biāo)志位置位

(7)PxSEL功能選擇寄存器

0 選擇引腳為I/O功能

1 選擇引腳為外圍模塊功能

單片機(jī)內(nèi)還有豐富的外圍模塊,這些模塊通常也需要和外界進(jìn)行通信,但是單片機(jī)的引腳有限,故采用P1和P2引腳復(fù)用的方法來實(shí)現(xiàn)。

Eg:

P5SEL |= 0x10; // P5.4 用作MCLK輸出

2. 端口P3,P4,P5,P6

(1)端口P3,P4,P5,P6除沒有外,其余功能和P1,P2相同,包括輸入輸出功能和外圍模塊功能。

(2)由于端口P3,P4,P5,P6沒有,所以它們沒有和中斷相關(guān)的寄存器,每組端口有4個(gè)寄存器分別為:PxDIR 輸入/輸出方向寄存器,PxIN 輸入寄存器,PxOUT輸入寄存器,PxSEL功能選擇寄存器。

三、端口COM和S

用來實(shí)現(xiàn)與液晶的直接接口,只有F4XX系列的單片機(jī)才有。



關(guān)鍵詞: MSP430 單片機(jī)IO 中斷能力

評(píng)論


相關(guān)推薦

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

關(guān)閉