用稳压管保护单片机引脚_零基础入门单片机(2)学会控制IO引脚你就入门啦
【一】單片機(jī)引腳介紹
1.電源引腳
●VSS:接地。
●VCC:外接5V電源。
2.外接晶振引腳
●XTAL1:當(dāng)單片機(jī)使用內(nèi)部振蕩電路時,接外部晶體的一端和微調(diào)電容。當(dāng)單片機(jī)采用外部時鐘信號時,此引腳接地。
●XTAL2:當(dāng)單片機(jī)使用內(nèi)部振蕩電路時,接外部晶體的一端和微調(diào)電容。當(dāng)單片機(jī)采用外部時鐘信號時,用來輸入時鐘脈沖。
3.控制引腳
●RST/VPD:復(fù)位信號輸入端,高電平有效。當(dāng)此引腳保持兩個機(jī)器周期的高電平時,進(jìn)行復(fù)位操作。該引腳的第二功能是備用電源。
●ALE/PROG:地址鎖存允許信號端。當(dāng)MCS-51單片機(jī)上電后,ALE引腳不斷向外輸出振蕩器頻率fosc 1/6的正脈沖信號。此引腳具有第二功能PROG,其作為對帶有片內(nèi)可編程ROM單片機(jī)進(jìn)行固化程序?qū)懭氩僮鲿r的編程脈沖輸入端。
●EA/VPP:外部程序存儲器地址允許輸入端。當(dāng)EA引腳接高電平時,CPU先訪問片內(nèi)程序存儲器并執(zhí)行其中的指令,然后再訪問外部程序存儲器。當(dāng)EA引腳接低電平時,CPU只訪問外部程序存儲器并執(zhí)行其中的指令,此時并不管該單片機(jī)是否具有片內(nèi)程序存儲器。該引腳的第二功能是作為對 EPROM 型單片機(jī)進(jìn)行編程時的編程電源。
●PSEN:程序存儲允許輸出信號端。在訪問片外程序存儲器時,該引腳輸出負(fù)脈沖作為讀片外存儲器的選通信號。在CPU從外部程序存儲器取指令期間,PSEN信號在每個機(jī)器周期中兩次有效。
4.輸入/輸出引腳
●P0口:8位漏極開路型雙向I/O口,能驅(qū)動8個LS TTL負(fù)載。當(dāng)訪問外部存儲器時,分時傳送低字節(jié)和數(shù)據(jù)。
●P1口:帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,能驅(qū)動4個LS TTL負(fù)載。
●P2口:帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,能驅(qū)動4個LS TTL負(fù)載。當(dāng)訪問外部存儲器時,輸出高8位地址。
●P3口:帶有內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O口,能驅(qū)動4個LS TTL負(fù)載。此外還具有第二功能,見表2.5。
【2】C51的程序結(jié)構(gòu)
C51的程序也是由各個函數(shù)組成的。其中最重要的是main()函數(shù),它也是必須存在的一個函數(shù)。作為程序的入口,程序每次執(zhí)行均從main()函數(shù)開始,每次調(diào)用完其他函數(shù)后都將返回到main()函數(shù),而當(dāng)執(zhí)行完main()函數(shù)中的所有代碼后,結(jié)束整個程序。整個過程并不關(guān)心函數(shù)的排列順序。
一個函數(shù)一般由兩部分組成:函數(shù)說明部分和函數(shù)體部分。
函數(shù)說明部分包括函數(shù)名、函數(shù)類型、函數(shù)屬性、函數(shù)參數(shù)。函數(shù)名后緊跟一個圓括號(),函數(shù)參數(shù)列于其中。一個函數(shù)也可以沒有參數(shù)。
在函數(shù)說明部分后邊緊跟的就是函數(shù)體部分。函數(shù)體的全部內(nèi)容在一個大括號 {} 中,其中還包括變量說明和執(zhí)行代碼,函數(shù)運行時依次執(zhí)行其中的代碼。
一個標(biāo)準(zhǔn)的C51函數(shù)的格式如下所示。
函數(shù)類型 函數(shù)名(函數(shù)參數(shù)表)
{
變量說明部分;
執(zhí)行代碼部分;
}
下面是一個C51函數(shù)的實際例子,該函數(shù)的功能為完成一次加法運算。
int fun plus(int A,int B)
{
int result;
result=A+B;
return(result);
}
對于用戶來說,C51函數(shù)可以使用標(biāo)準(zhǔn)庫函數(shù),或者自定義函數(shù)。
標(biāo)準(zhǔn)庫函數(shù)在C51庫文件中已經(jīng)定義好,并在相關(guān)的頭文件中也已加以說明,用戶只需要直接調(diào)用即可。
自定義函數(shù)是用戶根據(jù)自己的需要自己定義并調(diào)用的一類函數(shù)。
下邊是一個完整的C51程序結(jié)構(gòu)例子。
#對于用戶來說,只需要將兩個LED的正極接高電平,串聯(lián)一個電阻后分別連接到MCS-51單片機(jī)的P1^0和P1^1引腳,利用上述代碼即可實現(xiàn)LED交替閃爍的效果。
這是個很小的成功的C51程序,可以看到,它清楚地包括頭文件和程序主題。頭文件中包含了硬件信息,并給外部模塊提供可使用的函數(shù)和變量說明。程序代碼中sbit P1.0=P1^0的P1^0便是在頭文件reg52.h定義的。該程序函數(shù)包括main()函數(shù)和自定義子函數(shù)delay()。在main()函數(shù)運行過程中曾多次調(diào)用子函數(shù)實現(xiàn)延時功能,這樣,LED的閃爍不至于快到人肉眼無法分辨的程度。
該程序?qū)?yīng)的單片機(jī)電路如圖4.1所示。
利用Keil來進(jìn)行MCS-51單片機(jī)C51程序的開發(fā),通常使用項目來進(jìn)行管理。
項目一般分為兩大塊:C文件塊和頭部文件塊。將不同功能寫在不同的C文件中,依靠項目的管理,最后將所有文件連接,從而得到可以刻錄的HEX文件或BIN文件。在所有這些C文件中,有且只有一個main()函數(shù),頭文件將各個C文件互相連接。
圖4.1 LED交替閃爍單片機(jī)電路圖【3】Proteus8.6模擬仿真
proteus 常用元件中英文對照表RES 電阻
CRYSTAL 晶振
CAP 電容
DIODE 二極管
BUZZER 蜂鳴器
AND 與門
OR 或門
NOT 非門
NAND 與非門
NOR 或非門
NPN NPN 三極管
MOTOR 馬達(dá)起風(fēng)了:用Proteus8.6學(xué)單片機(jī)系列(1)工程建立?zhuanlan.zhihu.com51單片機(jī)(1)學(xué)會控制引腳你就入門啦?mp.weixin.qq.com
總結(jié)
以上是生活随笔為你收集整理的用稳压管保护单片机引脚_零基础入门单片机(2)学会控制IO引脚你就入门啦的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 对联如何贴
- 下一篇: powerbuilder判断复选框是否选