單片機(jī)實(shí)現(xiàn)干簧管計數(shù)器的實(shí)驗(yàn)
在本實(shí)驗(yàn)中,要設(shè)計一個干簧管計數(shù)器,并用數(shù)碼管來顯示。在本例中,還要接觸單片機(jī)一個重要的功能“中斷”。
干簧管是干式舌簧管的簡稱,是一種有觸點(diǎn)的無源電子開關(guān)元件,具有結(jié)構(gòu)簡單,體積小便于控制等優(yōu)點(diǎn),其外殼一般是一根密封的玻璃營,管中裝有兩個鐵質(zhì)的彈性簧片電板,還灌有一種叫金屬銠的惰性氣體。下圖是它的結(jié)構(gòu)示意圖。
平時,玻璃管中的兩個由特殊材料制成的簧片是分開的。
當(dāng)有磁性物質(zhì)靠近玻璃管時,在磁場磁力線的作用下,管內(nèi)的兩個簧片被磁化而互相吸引接觸,簧片就會吸合在一起,使結(jié)點(diǎn)所接的電路連通。外磁力消失后,兩個簧片由于本身的彈性而分開,線路也就斷開了。因此,作為一種利用磁場信號來控制的線路開關(guān)器件,干簧管可以作為傳感器用,用于計數(shù),限位等,同時還被廣泛使用于各種通信設(shè)備中。在實(shí)際運(yùn)用中,通常用永久磁鐵控制這兩根金屬片的接通與否,所以又被稱為“磁控管”。
下圖是干簧管狀態(tài)讀入電路,當(dāng)磁鐵靠近干簧管時,相當(dāng)于按鍵按下,單片機(jī)P3.2口為OV,邏輯“0”:當(dāng)磁鐵拿走時,相當(dāng)于按鍵抬鍵,P3.2為+5V,邏輯“1”。
我們要做的實(shí)驗(yàn)就是記錄磁鐵靠近干簧管的次數(shù),也就是P3.2口由“1”變成“0”的次數(shù)。在寫程序之前先介紹單片機(jī)中斷的概念。
舉個例子,如果我們有很多工作要做,偏偏有一個重要的客人要來,而且不知道來的具體時間,我們該怎么辦?沒錯,我們先做工作,客人來了放下工作先接待,等客人走了接著做剛才放下的工作。
單片機(jī)的中斷系統(tǒng)也是這樣,中斷請求來臨時,單片機(jī)從當(dāng)前運(yùn)行的程序中跳出,直接運(yùn)行中斷服務(wù)程序,運(yùn)行完中斷服務(wù)程序后,再回到剛才程序中斷的地方接著運(yùn)行。
在本實(shí)驗(yàn)的電路設(shè)計中,用P3.2口讀取干簧管的狀態(tài),單片機(jī)的P3.2口有一個重要的功能,它是外部中斷0的接入口。經(jīng)過初始化,當(dāng)P3.2口的狀態(tài)從“1”變到“0”時就會觸發(fā)外部中斷0,程序會自動跳到我們寫好的中斷服務(wù)程序,執(zhí)行完中斷服務(wù)程序后,再回到剛才主程序中斷的地方繼續(xù)執(zhí)行主程序。程序如下:
#include
//存儲數(shù)碼管顯示碼的一維數(shù)組
unsignedcharShowCode[]=(Oxc0,Oxf9,Oxa4,OxbO,Ox99,Ox92,Ox82,Oxf8,Ox80,Ox90):
//主程序
voiDMAin(void){unsignedchari….
磁控管相關(guān)文章:磁控管原理
塵埃粒子計數(shù)器相關(guān)文章:塵埃粒子計數(shù)器原理
評論