51單片機知識重點匯總一
主要性能:
與MCS-51單片機產(chǎn)品兼容 、8K字節(jié)在系統(tǒng)可編程Flash存儲器、 1000次擦寫周期、全靜態(tài)操作:0Hz~33Hz 、三級加密程序存儲器 、 32個可編程I/O口線、三個16位定時器/計數(shù)器八個中斷源、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時器 、雙數(shù)據(jù)指針、掉電標識符 。
一、STC89C51單片機外部引腳簡介
電源及時鐘引腳:Vcc(40腳)、GND(20腳)、XTAL1(19腳)、XTAL2(18腳)。
Vcc、GND——單片機電源引腳,不同的型號單片機接入對應電壓電源,常壓為+5V,低壓為+3.3V。
XTAL1、XTAL2——外接時鐘引腳。XTAL1為片內(nèi)震蕩電路的輸入端,XTAL2為片內(nèi)震蕩電路的輸出端。8051的時鐘有兩種方式,一種是片內(nèi)時鐘震蕩方式,需要在這兩個腳外接石英晶體和震蕩電容,震蕩電容的值一般取10p~30p;另一種是外部時鐘方式,將XTAL1接地,外部時鐘信號從XTAL2腳輸入。
編程控制引腳。如RST(復位)、PSEN(29腳)、ALE/PROG(30腳)、EA/Vpp(31腳)。
RST(9腳)——單片機復位引腳。當輸入連續(xù)兩個機器周期以上高點平時有效,用來完成單片機的復位初始化操作,復位后程序計數(shù)器PC=0000H,單片機從程序儲存器的0000H單元讀取第一條指令碼。即單片機從頭開始執(zhí)行程序。
PSEN(29腳)—— 程序存儲器允許輸出控制端。讀取外部程序存儲器時PSEN低電平有效,以實現(xiàn)外部程序存儲器單元的讀操作(了解即可)。
ALE/PROG(30腳)—— 在單片機擴展外部RAM時,ALE用于控制把P0口的輸出低8位地址送鎖存器鎖存器來,以實現(xiàn)地位地址和數(shù)據(jù)的隔離。(了解即可)。
EA/Vpp(31腳)—— EA接高電平時,單片機讀取內(nèi)部程序存儲器。當擴展有外部ROM時,當讀取完內(nèi)部ROM后自動讀取外部ROM。EA接低電平時,單片機直接讀取外部ROM。
I/O口引腳 —— P0口、P1口、P2口、P3口。
P0口(39-32腳)——雙向8位I/O口,每個口可獨立控制,沒有上拉電阻,為高阻態(tài),所以不能正常的輸出高低電平,因此該組IO口在使用時務必要接上拉電阻,一般選10千歐。
P1口(1-8腳)——準雙向8位IO口,每個口可獨立控制,內(nèi)帶上拉電阻,這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向IO口。之所以稱它為準雙向,是因為該口在作為輸入使用前,要先向該口進行寫1操作,然后單片機內(nèi)部才可正確的讀出外部信號,也就是要使其先有個“準”備的過程,所以說才是準雙向接口。
P2口(21-28腳)—— 準雙向8位I/O口,每個口可獨立控制,內(nèi)帶上拉電阻,與P1口相似。
P3口(10-17腳)——準雙向8位IO口,每個口可獨立控制,內(nèi)帶上拉電阻。作為第一功能可以當做普通I/O口,與P1口相似。P3口可做第二功能使用。參照下表:
二、電平特性
單片機的輸入輸出電平為TTL電平,其中高電平為+5V,低電平為0V。計算機串口為RS-232電平,其中高電平為-12V,低電平為+12V。注意,RS-232為負邏輯電平。
三、單片機的幾個周期介紹
(1)時鐘周期。也稱為震蕩周期,定義為時鐘頻率的倒數(shù)(可以這樣來理解,時鐘周期就是單片機外接晶振的倒數(shù),
如12MHz的晶振,它的時鐘周期就是1/12us)它是單片機中最基本的、最小的時間單位;在一個時鐘周期內(nèi),CPU僅完成一個最基本的動作。對于某個單片機來講,若采用了1MHz的時鐘頻率,則時鐘周期就是1us;若采用4MHz
的時鐘頻率,則時鐘周期就是250us。由于時鐘脈沖是CPU的基本脈沖,它控制著CPU的工作節(jié)奏(使CPU的每一步都統(tǒng)一到它的步調(diào)上來)。顯然,對同一種單片機,時鐘頻率越高,單片機的工作速度就越快。但是,由于不同的單片機內(nèi)部硬件電路和電氣結構不完全相同,所以其所需的時鐘頻率范圍也不一定相同。我們使用的STC89C系列的時鐘范圍約在1MHz~40MHz。
(2)狀態(tài)周期。它是時鐘周期的兩倍。
(3)機器周期。單片機的基本操作周期,在一個操作周期內(nèi),單片機完成一項基本操作,如取指令、存儲器讀/寫等。它由12個時鐘周期(6個狀態(tài)周期)組成。
(4)指令周期。它是指CPU執(zhí)行一條指令所需要的時間。一般一個指令周期含有1~4個機器周期。
四、移位操作
左移。C51操作符為“<<”,最低位補零右移。同上
循環(huán)左移,最高位移入最低位,其他依次向左移一位。
這套本來是為零基礎的學員錄制的,后面感覺這塊教程已經(jīng)泛濫,干脆分享出來了。
五、數(shù)碼管顯示原理
電路方面有共陰極和共陽極之分,讓數(shù)碼管顯示不同的數(shù)字就是先定義一個保存16進制數(shù)的數(shù)組,然后在程序中把這個16進制數(shù)賦值給相應的引腳。
六、中斷概念
51單片機一共有6個中斷源
INT0——外部中斷0
INT1——外部中斷1
T0/1/2——計時器/定時器中斷,由計數(shù)器滿回零引起。
T1/R1——串行口中斷,串行端完成一幀字符發(fā)送/接收后引起。
七、單片機的定時器中斷
51單片機內(nèi)部共有兩個16位可編程的定時器/計數(shù)器,即定時器T0和定時器T1。它們既有定時功能又有計數(shù)功能。定時器/計數(shù)器的實質(zhì)是加1計數(shù)器(16位),由高8位和底8位兩個寄存器組成,TMOD寄存器是定時器/計數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0,T1的啟動和停止以及設置溢出標志。
加一計數(shù)器的輸入計數(shù)脈沖有兩個來源,一個是由系統(tǒng)的時鐘振蕩器輸出脈沖經(jīng)12分頻后送來;另一個是T0或T1引腳輸入的外部脈沖源。如果定時器/計數(shù)器工作在定時模式,則表示時間已到;如果工作在計數(shù)模式,則表示計數(shù)值已經(jīng)滿了。
定時器初始化過程如下:
①對TMOD賦值,以確定T0和T1的工作方式
②計算初值,并將初值寫入TH0、TL0或TH1、TL1中。
③中斷方式時,則對IE賦值,開放中斷。
④使TR0或TR1置位,啟動定時器/計數(shù)器定時或計數(shù)
八、并行與串行基本通信方式
1、并行通信方式:將數(shù)據(jù)字節(jié)的各位用多條數(shù)據(jù)線同時進行傳輸,每位數(shù)據(jù)都需要一條傳輸線。
2、串行通信方式:串行通信是將數(shù)據(jù)字節(jié)分成一位一位的形式在一條傳輸線上逐個的傳輸,此時只需要一條數(shù)據(jù)線
3、異步串行通信方式:指通信的接收與發(fā)送設備使用各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。其特點是:不要求發(fā)送雙方時鐘嚴格一致,容易實現(xiàn),設備開銷小,但每個字符要附加2~3位,用于起始位、校驗位、停止位,各幀之間還有間隔,因此傳輸效率不高。在單片機與單片機之間,單片機與計算機之間通信時,通常采用異步串行通信方式。
4、同步串行通信方式:同步通信時要建立發(fā)送方時鐘對接收方時鐘的直接控制,使雙方完全達到同步。
評論