51單片機控制引腳相關(guān)教程
在51單片機教程第1講中,我已經(jīng)說(shuō)過(guò),學(xué)單片機就是兩個(gè)內容,一個(gè)是學(xué)習控制單片機引腳,一個(gè)是學(xué)習單片機內部寄存器的配置。這一講,來(lái)學(xué)習如何控制51單片機的引腳。
本文引用地址:http://dyxdggzs.com/article/201808/385687.htm控制單片機的引腳,分為兩個(gè)知識點(diǎn),一個(gè)是怎么讓引腳單片機輸出高低電平,一個(gè)是怎么檢測接入到引腳上的電平是高還是低。我們有時(shí)候會(huì )聽(tīng)到這樣的話(huà): “此單片機有幾個(gè)IO口?”這里說(shuō)的IO口,就是輸入(input)輸出(output)接口。一般情況下,單片機的引腳當中,除了電源引腳和晶振引腳,其它的都是IO口。當我們控制單片機的引腳高低時(shí),我們把引腳當做輸出引腳;當我們需要檢測連接到單片機引腳上的電平時(shí),我們把引腳當做輸入引腳使用。
使引腳P1.5輸出高電平,可以這樣寫(xiě):
P1=0x20;
或者:
sbit XXX=P1^5;
XXX=1;
第一種寫(xiě)法,在20前面加0x,表示這是一個(gè)十六進(jìn)制數,把這個(gè)十六進(jìn)制數0x20寫(xiě)成二進(jìn)制數就是0010 0000,從左到右代表了P1.7~P1.0,我們發(fā)現,在P1.5的位置為1。
第二種寫(xiě)法,把P1.5命名為XXX,再給XXX寫(xiě)1,同樣可以使得P1.5=1,讓P1.5輸出高電平。
第一種寫(xiě)法直接操作P1寄存器,第二種寫(xiě)法叫做“位操作”。sbit是一個(gè)“偽關(guān)鍵字”,并不是c語(yǔ)言標準的關(guān)鍵字。這個(gè)偽關(guān)鍵字是專(zhuān)門(mén)為51單片機準備的,大家不用擔心,51單片機的偽關(guān)鍵字一共沒(méi)有幾個(gè)。
檢測P1.5引腳的電平高低,可以這樣寫(xiě):
if((P10x20)==0x20) // 如果是高電平
else // 如果是低電平
或者:
sbit XXX=P1^5;
if(XXX==1) // 如果是高電平
else // 如果是低電平
第一種寫(xiě)法依然是使用觀(guān)察P1寄存器。第二種寫(xiě)法依然是使用“位操作”。
評論