STC89C51單片機學習板是一款基于8位單片機處理芯片STC89C51RC的系統(tǒng)。
stc89c51原理
STC89C51RC是采用8051核的ISP(In System Programming)在系統(tǒng)可編程芯片,最高工作時鐘頻率為80MHz,片內含4K Bytes的可反復擦寫1000次的Flash只讀程序存儲器,器件兼容標準MCS-51指令系統(tǒng)及80C51引腳結構,芯片內集成了通用8位中央處理器和ISP Flash存儲單元,具有在系統(tǒng)可編程(ISP)特性,配合PC端的控制程序即可將用戶的程序代碼下載進單片機內部,省去了購買通用編程器,而且速度更快。STC89C51RC系列單片機是單時鐘/機器周期(1T)的兼容8051 內核單片機,是高速/ 低功耗的新一代8051 單片機,全新的流水線/精簡指令集結構,內部集成MAX810 專用復位電路。
stc89c51特點
(1)增強型1T 流水線/精簡指令集結構8051 CPU
(2)(5V單片機)/ 2.0V-3.8V (3V 單片機
(3)時鐘頻率0~35MHz,相當于普通8051 的0~420MHz.實際工作頻率可達48MHz.
(4)用戶應用程序空間12K / 10K / 8K / 6K / 4K / 2K字節(jié)
(5)片上集成512 字節(jié)RAM
(6)通用I/O 口(27/23個),復位后為:準雙向口/ 弱上拉(普通8051 傳統(tǒng)I/O 口)
可設置成四種模式:準雙向口/ 弱上拉,推挽/ 強上拉,僅為輸入/高阻,開漏
每個I/O 口驅動能力均可達到20mA,但整個芯片最大不得超過55mA
(7)ISP(在系統(tǒng)可編程)/IAP(在應用可編程),無需專用編程器
可通過串口(P3.0/P3.1)直接下載用戶程序,數秒即可完成一片
(8)EEPROM 功能
(9)看門狗
(10)內部集成MAX810 專用復位電路(外部晶體20M 以下時,可省外部復位電路)
(11)時鐘源:外部高精度晶體/ 時鐘,內部R/C 振蕩器。用戶在下載用戶程序時,可選擇是使用內部R/C 振蕩器還是外部晶體/ 時鐘。常溫下內部R/C 振蕩器頻率為:5.2MHz ~6.8MHz。精度要求不高時,可選擇使用內部時鐘,因為有溫漂,請選4MHz ~8MHz
(12)有2個16 位定時器/ 計數器
(13)外部中斷2 路,下降沿中斷或低電平觸發(fā)中斷,Power Down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒
(14)PWM( 4 路)/ P C A(可編程計數器陣列),也可用來再實現4個定時器或4個外部中斷(上升沿中斷/ 下降沿中斷均可支持)
(15)STC89Cc516AD具有ADC功能。10 位精度ADC,共8 路
(16)通用異步串行口(UART)
(17)SPI同步通信口,主模式/ 從模式
(18)工作溫度范圍:0 -75℃/ -40 -+85℃
(19)封裝:PDIP-28,SOP-28,PDIP-20,SOP-20,PLCC-32,TSSOP-20(超小封裝,定貨)
STC89C51引腳及參數
主要性能:
與MCS-51單片機產品兼容 、8K字節(jié)在系統(tǒng)可編程Flash存儲器、 1000次擦寫周期、全靜態(tài)操作:0Hz~33Hz 、三級加密程序存儲器 、 32個可編程I/O口線、三個16位定時器/計數器八個中斷源、全雙工UART串行通道、 低功耗空閑和掉電模式 、掉電后中斷可喚醒 、看門狗定時器 、雙數據指針、掉電標識符 。
功能特性描述
STC89C52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲器。使用高密度非易失性存儲器技術制造,與工業(yè)80C51 產品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在線系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。 STC89C52具有以下標準功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門狗定時器,2 個數據指針,三個16 位 定時器/計數器,一個6向量2級中斷結構,全雙工串行口,片內晶振及時鐘電路。另外,STC89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。8 位微控制器 8K字節(jié)在系統(tǒng)可編程 Flash
P0 口:P0口是一個8位漏極開路的雙向I/O口。作為輸出口,每位能驅動8個TTL邏輯電平。對P0端口寫“1”時,引腳用作高阻抗輸入。
當訪問外部程序和數據存儲器時,P0口也被作為低8位地址/數據復用。在這種模式下, P0具有內部上拉電阻。
在flash編程時,P0口也用來接收指令字節(jié);在程序校驗時,輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。
P1 口:P1 口是一個具有內部上拉電阻的8 位雙向I/O 口,p1 輸出緩沖器能驅動4 個 TTL 邏輯電平。對P1 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。
此外,P1.0和P1.2分別作定時器/計數器2的外部計數輸入(P1.0/T2)和時器/計數器2 的觸發(fā)輸入(P1.1/T2EX),具體如下表所示。 在flash編程和校驗時,P1口接收低8位地址字節(jié)。
引腳號第二功能
P1.0 T2(定時器/計數器T2的外部計數輸入),時鐘輸出
P1.1 T2EX(定時器/計數器T2的捕捉/重載觸發(fā)信號和方向控制)
P1.5 MOSI(在線系統(tǒng)編程用)
P1.6 MISO(在線系統(tǒng)編程用)
P1.7 SCK(在線系統(tǒng)編程用)
P2 口:P2 口是一個具有內部上拉電阻的8 位雙向I/O 口,P2 輸出緩沖器能驅動4 個 TTL 邏輯電平。對P2 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。
在訪問外部程序存儲器或用16位地址讀取外部數據存儲器(例如執(zhí)行MOVX @DPTR) 時,P2 口送出高八位地址。在這種應用中,P2 口使用很強的內部上拉發(fā)送1。在使用 8位地址(如MOVX @RI)訪問外部數據存儲器時,P2口輸出P2鎖存器的內容。在flash編程和校驗時,P2口也接收高8位地址字節(jié)和一些控制信號。
P3 口:P3 口是一個具有內部上拉電阻的8 位雙向I/O 口,p2 輸出緩沖器能驅動4 個 TTL 邏輯電平。對P3 端口寫“1”時,內部上拉電阻把端口拉高,此時可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內部電阻的原因,將輸出電流(IIL)。 P3口亦作為STC89C52特殊功能(第二功能)使用,如下表所示。在flash編程和校驗時,P3口也接收一些控制信號。
端口引腳 第二功能
P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 INTO(外中斷0)
P3.3 INT1(外中斷1)
P3.4 TO(定時/計數器0)
P3.5 T1(定時/計數器1)
P3.6 WR(外部數據存儲器寫選通)
P3.7 RD(外部數據存儲器讀選通)
此外,P3口還接收一些用于FLASH閃存編程和程序校驗的控制信號。
RST——復位輸入。當振蕩器工作時,RST引腳出現兩個機器周期以上高電平將是單片機復位。
ALE/PROG——當訪問外部程序存儲器或數據存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當訪問外部數據存儲器時將跳過一個ALE脈沖。
對FLASH存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。
如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序時,應設置ALE禁止位無效。
PSEN——程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當STC89C52由外部程序存儲器取指令(或數據)時,每個機器周期兩次PSEN有效,即輸出兩個脈沖,在此期間,當訪問外部數據存儲器,將跳過兩次PSEN信號。
EA/VPP——外部訪問允許,欲使CPU僅訪問外部程序存儲器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復位時內部會鎖存EA端狀態(tài)。
如EA端為高電平(接Vcc端),CPU則執(zhí)行內部程序存儲器的指令。
FLASH存儲器編程時,該引腳加上+12V的編程允許電源Vpp,當然這必須是該器件是使用12V編程電壓Vpp。