KC-101 51/AVR單片機(jī)最小系統(tǒng)核心板產(chǎn)品說(shuō)明
1、電源
Vcc:芯片電源,一般為+5V;
Vss:接地端。
2、時(shí)鐘
XTAL1和XTAL2:晶體振蕩電路反相輸入端和輸出端。當(dāng)使用內(nèi)部振蕩電路時(shí),需要外接晶振,常見有的4M、6M、11.0592M、12M等。當(dāng)使用外部振蕩輸入時(shí)XTAL1接地,XTAL2接外部振蕩脈沖輸入。
3、控制線
MCS-51單片機(jī)的控制線共有4根,其中3根是復(fù)用線,具有兩種功能。
(1)ALE/PROG:地址鎖存允許/編程脈沖。
ALE:正常使用時(shí)為ALE功能,主要用來(lái)鎖存P0口送出的8位地址。P0口一般分時(shí)傳送低8位地址和數(shù)據(jù)信號(hào),且均為二進(jìn)制數(shù)。區(qū)分是否是低8位數(shù)據(jù)信號(hào)還是地址信號(hào)就看ALE引腳。當(dāng)ALE信號(hào)有效時(shí),P0口傳送的是低8位地址信號(hào);當(dāng)ALE無(wú)效時(shí),P0口傳送的是8位數(shù)據(jù)信號(hào)。一般在ALE引腳的下降沿鎖定P0口傳送的內(nèi)容,即低8位地址信號(hào)。
當(dāng)CPU不執(zhí)行訪問(wèn)外部RAM指令(MOVX)時(shí),ALE以時(shí)鐘振蕩頻率1/6的固定頻率輸出,所以ALE信號(hào)也可以作為外部芯片的時(shí)鐘信號(hào)。但當(dāng)CPU執(zhí)行訪問(wèn)外部RAM(MOVX)時(shí),ALE將跳過(guò)一個(gè)ALE脈沖。
PROG:當(dāng)單片機(jī)在編程期間,該引腳輸入編程脈沖(由編程器提供)。
(2)PSEN:外部ROM讀選通信號(hào)。
當(dāng)單片機(jī)讀外部ROM時(shí),每個(gè)機(jī)器周期內(nèi)PSEN兩次有效輸出。PSEN就相當(dāng)于外部ROM芯片輸出允許的選通信號(hào)。但讀片內(nèi)ROM和讀片外RAM時(shí)無(wú)效。
(3)RST:復(fù)位引腳。
RST為單片機(jī)上電復(fù)位輸入端,只要在該引腳上連續(xù)保持兩個(gè)機(jī)器周期以上的高電平,單片機(jī)就可以實(shí)現(xiàn)復(fù)位操作,復(fù)位后程序從0000H處開始執(zhí)行。在一般應(yīng)用中可以用RC電路來(lái)實(shí)現(xiàn)單片機(jī)的上電復(fù)位,在一些工業(yè)控制等要求較高的場(chǎng)合一般用專用的看門狗芯片進(jìn)行復(fù)位及電源監(jiān)控,典型的RC上電復(fù)位電路如圖所示:
典型復(fù)位電路
(4)EA/VPP:內(nèi)外ROM選擇/EPROM編程電源。
EA:正常工作時(shí),EA為內(nèi)外ROM選擇端。MCS-51型單片機(jī)的尋址范圍為64KB,其中4K在片內(nèi),60K在片外,當(dāng)EA為高電平時(shí),先訪問(wèn)片內(nèi)ROM,當(dāng)程序長(zhǎng)度超過(guò)4K時(shí)將自動(dòng)轉(zhuǎn)向執(zhí)行外部ROM中的程序。當(dāng)EA為低電平時(shí)單片機(jī)只訪問(wèn)外部ROM,對(duì)老的8031單片機(jī)(因片內(nèi)沒(méi)有ROM),EA必須接地。目前的大部分單片機(jī)都自帶ROM,所以一般應(yīng)用中也將EA接高電平。
VPP:對(duì)于有內(nèi)部EPROM的單片機(jī),在片內(nèi)EPROM編程期間,此引腳用于施加編程電源。
4、I/O引腳
MCS-51單片機(jī)共有4個(gè)8位并行I/O端口,共32個(gè)可編程I/O引腳。四個(gè)I/O口各有各的功能,在一般情況下,P0專用于分時(shí)傳送低8位地址信號(hào)和8位數(shù)據(jù)信號(hào),P2口專用于傳送高8位地址信號(hào),P3口大部分時(shí)間用于第二功能。當(dāng)然所有I/O口都可以做為普通的輸入/輸出端口用。
實(shí)驗(yàn)例程:
例程功能:P0.0口的LED發(fā)光管閃動(dòng)實(shí)驗(yàn)。
01 #include reg51.h>
02
03 sbit LED = P0^0;
04
05 void Delay()
06 {
07 unsigned char i,j;
08 for(i=0;i255;i++)
09 for(j=0;j255;j++);
10 }
11
12 void main()
13 {
14 while(1)
15 {
16 LED = 0;
17 Delay();
18 LED = 1;
19 Delay();
20 }
21 }
代碼分析:
序號(hào)1:包含51單片機(jī)寄存器定義的頭文件
序號(hào)3:位定義LED為I/O口P0.0
序號(hào)5-10:一個(gè)延時(shí)函數(shù),具體延長(zhǎng)的時(shí)間和使用的晶體相關(guān)
序號(hào)7:定義兩個(gè)無(wú)符號(hào)變量i,j
序號(hào)8-9:通過(guò)i,j的自加嵌套循環(huán)執(zhí)行,達(dá)到延時(shí)目的
序號(hào)12-21:main函數(shù)
序號(hào)14:進(jìn)入主程序的while循環(huán)
序號(hào)16:點(diǎn)亮LED
序號(hào)17:調(diào)用延時(shí)程序
序號(hào)18:熄滅LED
序號(hào)19:調(diào)用延時(shí)程序
評(píng)論