天天看點

單片機的硬體結構        1,引腳圖   2,存儲器    3,時鐘,時序,複位等。    4,中斷系統   5,通信  6,定時器/計數器

           快要期末考試了,最近臨時抱個佛腳,學了學單片機,感覺很簡單,可能是因為以前的微機原理和80X86彙編有點兒基礎的原因吧。

         單片機的内容主要分為兩部分:硬體部分和軟體部分。硬體部分就是單片機的硬體構成,包括:引腳圖,存儲器(ROM和RAM),時鐘,并行口,定時器/計數器,串行口。 其中,考的最多的,就是這裡面最簡單的引腳圖和存儲器,和計算波特率了,看看書 AND  做點兒題,也就OK啦~

單片機的硬體結構        1,引腳圖   2,存儲器    3,時鐘,時序,複位等。    4,中斷系統   5,通信  6,定時器/計數器

                  感覺這個圖很基礎。MSC-51單片機(老師是以這個類型的單片機為例講的),一共有40條引腳,我宿舍還有這樣的晶片,看起來像個長滿腳的大蜘蛛。雖然看起來有很多條,一條一條記住顯然是非常不現實的。是以就得找個規律了:首先看P0口到P3口,這一共有4個口,每個口又8條腿,一共是32條腿。然後是接電源的VCC和VSS,加上外界晶振的第18條腿和第19條腿,Let' count。。現在有36條腿了。剩下的四條是:一個複位的引腳和3個控制的引腳。複位引腳用來Reset,剩下是EA(片外程式存儲器選通端),ALE(位址鎖存有效信号輸出端),PSEN(片外程式存儲器讀選通端),這3個引腳都跟片外程式存儲器有關。

         這樣,很輕松的就了解了40條引腳。

            存儲器分為ROM(程式存儲器)跟RAM(資料存儲器),可以從名字推斷他們的功能。

       ROM是程式存儲器,主要是存儲程式用的,也就是用來存放指令,在ROM裡面,有一段很特别的存儲區,是用來存放中斷源的中斷位址的,當程式運作時,如果一旦出現中斷,則PC就會跳到這個位址,開始執行中斷程式,執行完之後再傳回。在第二代語言中,例如彙編,都是不存在事件驅動這些概念的,引起某個響應,隻能靠中斷。另外,在ROM使用時,還要注意使用的是内部ROM還是外部ROM,還是都有,這個要先看EA引腳是低電平還是高電平,如果是高電平,則程式存儲器編制的時候,先從内部ROM開始,當内部ROM編址完成之後,再到外部ROM。當EA是低電平時,就比較簡單了,這個時候隻使用外部ROM,不用内部的。

    RAM部分:8051内部的RAM很小,隻有256個單元,但是感覺這256個單元的内容卻很多啊。。。

      在内部RAM的低128個單元裡面,有:R0-R7這8個寄存器,和位尋址區,使用者RAM.這個沒什麼可說的,但是要注意的是,位尋址去的位址是:20H-2FH的。

      在高128個單元裡面,内容就比較豐富了,因為這裡有21個特殊功能寄存器。這個是非常非常常用的。在單片機的指令系統中,很多指令都跟這些東西有關系。

                這個地方的東西感覺用的很少,主要的就是複位後,各個寄存器的狀态:其中,P0-P3都是FFH,(SP)=07H,其他的都是0.

       中斷系統主要是用來分時操作,實時處理和故障處理的。與中斷有關的寄存器有:中斷源寄存器TCON和SCON,中斷運作控制寄存器IE和中斷優先級控制寄存器IP。首先,中斷程式要執行,必須先打開一個門,這個門是通向中斷程式的,如果這個門關着,那麼,無論什麼樣的中斷,都是不能響應的,這裡,這個門是IE(中斷允許控制寄存器)。至于中斷在何時響應,就要靠TCON和SCON來控制了。但是,這樣還是有問題,如果兩個中斷在同一時刻響應,怎麼辦呢?這個還是用老辦法來解決,給各個中斷設定優先級,先響應高優先級的,這個就要靠IP控制了。這樣看來,中斷還是挺全面的,在程式運作過程中,各種可能的情況都考慮到了。

       在硬體結構裡面,最不熟悉的就是用來通信的并口和序列槽了。對他們的了解僅僅限于知道他們是用來通信的。跪求大神指導啊~~

          一看這個名字就知道這兩個東西肯定是用來定時或者是計數用的。

      在定時器和計數器的使用中,涉及到兩個寄存器:TMON和TCON。

      其中,TMON主要作用是:門控,設定工作方式(工四種工作方式),選擇定時功能還是計數功能用的。而TCON則是用來控制工作的。

           這裡有點兒麻煩的是4種工作方式中,計數值的計算,不過也就四個公式,實在記不住,就抄下來吧~

     PS:學習是有方法的,正在探索中。。。