姓名:周崇杰? ?學(xué)號(hào):16040120059? ? 專業(yè):機(jī)械設(shè)計(jì)制造及其自動(dòng)化
轉(zhuǎn)載自:http://blog.csdn.net/jzj1993/article/details/39458387涨薪,有刪節(jié)
【嵌牛導(dǎo)讀】:我們每個(gè)人學(xué)單片機(jī)基本都是從開發(fā)板學(xué)起养筒,這樣學(xué)習(xí)起來比較方便簡(jiǎn)單,但是由于線路固定化惧所,不便于自己開發(fā)崖咨,這時(shí)候單片機(jī)最小系統(tǒng)就發(fā)揮巨大的作用。本文通過51單片機(jī)引腳的介紹來介紹最小系統(tǒng)的構(gòu)建油吭。
【嵌牛鼻子】:?jiǎn)纹瑱C(jī)最小系統(tǒng)
【嵌牛提問】:我們做項(xiàng)目開發(fā)的時(shí)候經(jīng)常需要單片機(jī)击蹲,單片機(jī)本身沒法正常工作署拟,他需要一些外圍電路組成最小系統(tǒng)才能工作,那這個(gè)最小系統(tǒng)如何實(shí)現(xiàn)呢歌豺?
【嵌牛正文】:
這里我們簡(jiǎn)單了解下51單片機(jī)的40個(gè)管腳具體的作用推穷。對(duì)于沒有接觸過復(fù)雜電子元器件的讀者來說,或許會(huì)感覺非常難类咧,但實(shí)際上完全不需要有畏懼心理馒铃。
按照集成電路的管腳識(shí)別方法,缺口朝上痕惋,逆時(shí)針轉(zhuǎn)一圈区宇,單片機(jī)的引腳編號(hào)從1到40,如圖所示值戳。圖中同時(shí)給出了各個(gè)管腳的名稱议谷。我們完全不需要刻意去記這些管腳順序和名稱,在需要的時(shí)候查一下就好了堕虹,如果用的比較多卧晓,后來自然就記住了。
按照?qǐng)D中的大括號(hào)的提示赴捞,我們把P0.0~P0.7這樣八個(gè)管腳稱為一組IO口逼裆,叫做P0,同樣有P1赦政、P2和P3胜宇。IO口(IO = Input / Output),顧名思義昼钻,就是輸入輸出接口掸屡,它是單片機(jī)與外界進(jìn)行信息交流的途徑。之后我們主要的學(xué)習(xí)內(nèi)容然评,也是圍繞IO口進(jìn)行的仅财。另外這32個(gè)IO口又有一些在括號(hào)中標(biāo)注的管腳名稱,叫做第二功能碗淌;第二功能在特定的情況下會(huì)被啟用盏求,沒有啟用第二功能時(shí),它們就只是起到IO口的作用亿眠。例如P3.0和P3.1又叫做RXD和TXD碎罚,它們有串口的作用,可以用來給單片機(jī)下載程序纳像,也可以用來和電腦進(jìn)行數(shù)據(jù)的收發(fā)荆烈,即串口通信。除32個(gè)IO口外,還有八個(gè)管腳:其中29~31號(hào)腳一般用得不多憔购,暫不做介紹宫峦;40腳VCC、20腳GND玫鸟、9號(hào)腳RST以及18导绷、19號(hào)腳XTAL1、XTAL2很快就會(huì)在下面的單片機(jī)最小系統(tǒng)中進(jìn)行詳細(xì)講解屎飘。
什么是單片機(jī)最小系統(tǒng)呢妥曲?最小系統(tǒng),就是指單片機(jī)能正常工作最簡(jiǎn)單的電路钦购。對(duì)51單片機(jī)來說檐盟,最小系統(tǒng)一般包括:電源、單片機(jī)肮雨、時(shí)鐘電路和復(fù)位電路遵堵。其電路圖如下:
現(xiàn)在向大家介紹下這些電路的作用。
電源電路:作為電子器件怨规,51單片機(jī)當(dāng)然少不了電源供電陌宿,它一般使用5V電源,我們可以從大家所熟悉的USB接口獲取5V電源波丰。在圖中壳坪,每個(gè)VCC符號(hào)都是共同連接在5V電源正極的;而所有的GND符號(hào)連接在一起掰烟,共同接到電源負(fù)極爽蝴。圖中之所以沒有把它們連接到一起,而是使用多個(gè)VCC和GND符號(hào)纫骑,是為了讓電路圖看起來更清晰簡(jiǎn)潔(VCC = Volt Current Condenser蝎亚,表示供電電壓;GND = Ground先馆,接地的意思发框,可以簡(jiǎn)單理解為連接到電源負(fù)極,并且我們以GND作為參考電壓煤墙,GND的電壓值始終為0V)梅惯。
特別注意,一定不要把單片機(jī)接到過高的電壓上仿野,或者將電源正負(fù)極接反铣减,很可能燒壞單片機(jī),甚至發(fā)生爆炸脚作。如果單片機(jī)是插在芯片插座上的葫哗,由于VCC和GND剛好在對(duì)稱的位置,插反了剛好會(huì)出現(xiàn)電源接反的情況,一定要注意避免劣针。
這里補(bǔ)充一點(diǎn)桨螺,如果需要知道一種芯片使用的電源電壓,通衬鸾眨可以查官方給出的芯片手冊(cè),后面會(huì)對(duì)芯片手冊(cè)進(jìn)行介紹魏烫。
時(shí)鐘電路:連接在引腳XTAL1辣苏、XTAL2和GND間的電路是時(shí)鐘電路(XTAL = External Crystal Oscillator,表示外接晶振)哄褒。前面的電源比較好理解稀蟋,但是什么是時(shí)鐘電路呢?它有什么用處呢呐赡?時(shí)鐘電路就像是人的心臟一樣退客,每時(shí)每刻不斷跳動(dòng)著,對(duì)于單片機(jī)來說是至關(guān)重要的链嘀。如同心臟給我們的身體不斷運(yùn)輸血液和氧氣萌狂,讓身體各種器官正常工作,而時(shí)鐘電路則是單片機(jī)內(nèi)部各部分電路正常工作的驅(qū)動(dòng)力怀泊。
時(shí)鐘電路由晶振和電容器組成茫藏。晶振是一種由石英制造的電子元件,在通電時(shí)霹琼,其表面會(huì)產(chǎn)生特定頻率的振蕩务傲,最后通過電路可以輸出一個(gè)頻率很穩(wěn)定的時(shí)鐘信號(hào),驅(qū)動(dòng)單片機(jī)工作枣申。我們?nèi)说男呐K每分鐘跳動(dòng)幾十到上百次售葡,而對(duì)于單片機(jī)來說,這實(shí)在太慢了忠藤。圖中的晶振頻率是12MHz(1MHz=1,000,000Hz)挟伙,正常工作起來,每秒鐘振蕩12,000,000次熄驼!實(shí)際上像寒,時(shí)鐘電路的晶振并非必須是12M,也可以是其他的瓜贾,但是要注意STC89C51這款單片機(jī)最高工作頻率不能超過80M(這個(gè)同樣可以通過芯片手冊(cè)查找)诺祸。實(shí)際上我們使用更多的是11.0592M的晶振,為什么是這樣奇怪的頻率呢祭芦?后面講到串口的時(shí)候相信讀者就能明白了筷笨。
時(shí)鐘電路還用到C2和C3兩個(gè)電容,如果不了解電容,可以找找常用電子元器件介紹的相關(guān)資料胃夏,這里不做介紹轴或。這兩個(gè)電容通常用瓷片電容,容量一般取30pF即可仰禀。
順便說一下照雁,如果自己設(shè)計(jì)時(shí)鐘電路,晶振和單片機(jī)之間的連線不要過長(zhǎng)答恶,這樣可能會(huì)導(dǎo)致電路不能正常工作(不能起振)饺蚊。
時(shí)鐘每產(chǎn)生一次振蕩的時(shí)間,叫做一個(gè)時(shí)鐘周期悬嗓;對(duì)于我們用的這款51單片機(jī)污呼,每12個(gè)時(shí)鐘周期,單片機(jī)執(zhí)行一步操作包竹,稱為一個(gè)機(jī)器周期(STC也推出了1T單片機(jī)燕酷,每1個(gè)時(shí)鐘周期就執(zhí)行一步操作)。如果是12M晶振周瞎,時(shí)鐘周期就是1/12 us苗缩,機(jī)器周期剛好是1 us。
大家應(yīng)該還記得前面說的上世紀(jì)古老龐大的計(jì)算機(jī)埃尼阿克吧堰氓,埃尼阿克一秒鐘能進(jìn)行5000次加法運(yùn)算挤渐,那在當(dāng)時(shí)已經(jīng)是相當(dāng)高的水平了。但是和我們的51單片機(jī)比起來双絮,實(shí)在是小巫見大巫浴麻。51單片機(jī)可以在一個(gè)機(jī)器周期里進(jìn)行一次加法運(yùn)算(即匯編指令A(yù)DD),用12M晶振囤攀,1秒鐘最多可以進(jìn)行一百萬次加法運(yùn)算软免,是埃尼阿克的200倍(不考慮數(shù)據(jù)在寄存器和內(nèi)存之間的移動(dòng))》倌樱看到這里膏萧,大家是不是在為自己能用上這么高科技的東西而竊喜呢?^_^
復(fù)位電路:圖中連接到RST引腳的那部分電路就是復(fù)位電路蝌衔,由電阻和電容組成榛泛。復(fù)位電路的作用,就是在剛通電的時(shí)候給單片機(jī)發(fā)出一個(gè)信號(hào)(對(duì)于51單片機(jī)噩斟,是連續(xù)至少兩個(gè)機(jī)器周期的高電平)曹锨,告訴單片機(jī)現(xiàn)在可以開始工作了。于是單片機(jī)就從初始狀態(tài)開始剃允,不厭其煩的執(zhí)行特定的程序沛简,直到斷電齐鲤,或者出現(xiàn)特殊情況導(dǎo)致程序終止。一般情況下椒楣,單片機(jī)正常工作時(shí)是不應(yīng)該出現(xiàn)程序執(zhí)行終止的情況的给郊,有關(guān)這個(gè)問題,后文講單片機(jī)程序特點(diǎn)時(shí)會(huì)說明捧灰。
復(fù)位電路的原理淆九,是上電時(shí)通過電阻給電容充電,讓電容連接到RST管腳的電壓毛俏,從5V變?yōu)?V吩屹,也就是高電平變?yōu)榈碗娖健k娮韬碗娙莸娜≈蹬《叮凑請(qǐng)D中給出的參考值即可,如果對(duì)模擬電路有了解免绿,也可以自行計(jì)算確定其取值唧席。
另外,圖中的EA/VPP管腳嘲驾,是訪問內(nèi)部或外部程序存儲(chǔ)器選擇信號(hào)和提供編程電壓的淌哟,一般用的不多。直接連接VCC就可以了辽故。
實(shí)際做實(shí)驗(yàn)的時(shí)候徒仓,我發(fā)現(xiàn)單片機(jī)不接復(fù)位電路,晶振上的兩個(gè)電容省去誊垢,一般也能工作掉弛。但是為了安全起見,有條件的情況下還是應(yīng)該把這些都接上喂走。我們需要嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度殃饿。
有了最小系統(tǒng),單片機(jī)就可以正常工作芋肠,不斷的執(zhí)行我們讓它執(zhí)行的程序了乎芳。單片機(jī)這種不怕苦不怕累的精神值得我們學(xué)習(xí)。