【正文】
(031H)=51H聲明為 at89s52單片機。編程完成后, 。 2.在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。 程序加密位 保護類型 LB1 LB2 LB3 1 U U U 沒有程序保護功能 2 P U U 禁止從外部程序存儲器中執(zhí)行 MOVC 指令讀取內(nèi)部程序存儲器的內(nèi)容 3 P P U 除上表功能外,還禁止程序校驗 4 P P P 除以上功能外,同時禁止外部執(zhí)行 當 加密位 LB1 被編程時,在復(fù)位期間, EA 端的邏輯電平被采樣并鎖存,如果單片機上電后一直沒有復(fù)位,則鎖存起的初始值是一個隨機數(shù),且這個隨機數(shù)會一直保持到真正復(fù)位為止??臻e模式可由任何允許的中斷請求或硬件復(fù)位終止。 外接 石英晶體 (或陶瓷諧振器 )及電容 C C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。 如 EA端為高電平 (接 VCC 端 ), CPU則執(zhí)行內(nèi)部程序存儲器中的指令。此外,該引腳會被微弱拉高,單片機執(zhí)行外部程序 時,將跳過兩次 PROG 信號。當振蕩器工作時, RST 引腳出現(xiàn)兩個機器周期以上高電平將使單片機復(fù)位。P3 口: P3 時一組倒有內(nèi)部上拉電阻的 8 位雙向 I/O 口。 Flash變成和程序校驗時, P1接收低 8位地址。作為輸出口用時,每位能吸收電流的方式驅(qū)動 8 個 TTL 邏輯門電路,對 端口 P0寫 “1”時,可作為高阻抗輸入端用。 功能特性概述 AT89s52提供以下標準功能: 8K 字節(jié) Flash閃速存儲 器, 256字節(jié)內(nèi)部 RAM,32個 I/O 口線, 3個 16位定時 /計數(shù)器,一個 6向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。Port 2: Port 2 is an 8bit bidirectional I/O port with internal pullups. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high by the internal pullups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current ( IIL )because of the internal pullups. Port 2 emits the highorder address byte during fetches from external program memory and during accesses to external data memory that use 16bit addresses (MOVX DPTR). In this application, Port 2 uses strong internal pullups when emitting 1s. During accesses to external data memory that use 8bit addresses (MOVX RI), Port 2 emits the contents of the P2 Special Function Register. Port 2 also receives the highorder address bits and some control signals during Flash programming and verification. GND: Ground. EA /VPP: External Access Enable. EA must be strapped to GND in order to enable the device to fetch code from external program memory locations starting at 0000H up to FFFFH. Note, however, that if lock bit 1 is programmed, EA will be internally latched on reset. EA should be strapped to VCC for internal program executions. This pin also receives the 12volt programming enable voltage ( VPP ) during Flash programming when 12volt programming is selected. VCC: 電源電壓 對端口寫 “1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸出口。在 訪問 8位地址的外部數(shù)據(jù)存儲器 (例如執(zhí)行 MOVX◎ RI指令 )時, P2口輸出 P2鎖存器的內(nèi)容。 表 2 P3 口第二功能 端口引腳 第二功能 RXD (串行輸入口 ) TXD(串行輸出口) 外中斷 0 外中斷 1 T0(定時/計數(shù)器 0) T1(定時/計數(shù)器 1) 外部數(shù)據(jù)存儲器寫選通 外部數(shù)據(jù)存儲器讀選通 此外, P3口還接收一些用于 Flash閃速存儲器編程和程序校驗的控制信號。 對 Flash存儲器編程期間,該引腳還用于輸入編程脈沖 (PROG )。EA /VPP:外部訪問允許。XTAL2: 振蕩器反相放大器的輸出端。 由于外部時鐘信號是通過一個 2 分頻觸發(fā)器后作為內(nèi)部時鐘信號 的,所以對外部時鐘信號的占空比沒有特殊要求,但最小高電平持續(xù)時間和最大的低電平持續(xù)時間應(yīng)符合產(chǎn)品技術(shù)要求。 空閑和掉電模式外部引腳狀態(tài): 模式 程序存儲器 ALE ^PSEN PORT0 PORT1 PORT2 PORT3 空閑模式 內(nèi)部 1 1 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 空閑模式 外部 1 1 浮空 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 掉電模式 內(nèi)部 0 0 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 掉電模式 外部 0 0 浮空 數(shù)據(jù) 數(shù)據(jù) 數(shù)據(jù) 掉電模式: 在掉電模式下,震蕩器停止工作,進入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi) RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。 AT89S52單片機中,有些屬于低電壓編程方式,而有些則是高電平編程方式,用戶可從芯片上的型號和讀取芯片內(nèi)的簽名字節(jié)獲得該信息,見下表。 數(shù)據(jù)查詢: at89s52 單片機用數(shù)據(jù)查詢方式來檢測一個寫周期是否結(jié)束,在一個寫周期中,如需要讀取最后寫入的那個字節(jié),則讀出的數(shù)據(jù)的最高位 ()是原來寫入字節(jié)最高位的反碼。 讀片內(nèi)簽名字節(jié): at89s52單片機內(nèi)有 3個簽名字節(jié),地址為 030H、 031H和032H。 編程接口: 采用控制信號的正確組合可對 FLASH閃速存儲陣列中的每一代碼字節(jié)進行寫入和存儲器的整片擦除,寫操作周期是自身定時的,初始化后它將自動定時到操作完成。證實加密位的完成通過觀察它們的特點和能力。 5.每對 FLASH 存儲陣列寫入一個字節(jié)或每寫入一個程 序加密位,加上一個ALE/^PROG 編程脈沖,改變編程單元的地址和寫入的數(shù)據(jù),重復(fù) 1—5 步驟,直到全部文件編程結(jié)束。 FLASH 閃速存儲器的編程: AT89s52 單片機內(nèi)部有 4K 字節(jié)的 FLASH PEROM,這個 FLASH 存儲陣列出廠時已處于擦除狀態(tài) (即所有存儲單元的內(nèi)容均為 FFH),用戶隨時可對其進行編程。其二是通過硬件復(fù)位也可將空閑工作模式終止,需要注意的是,當由硬件復(fù)位來終止空閑模式時, CPU 通常是從激活空閑模式那條指令的下一條指令開始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個機器周期 (24 個時鐘周期 )有效,在這種情況下,內(nèi)部禁止 CPU 訪問片內(nèi)RAM,而允許訪問其它端口。采用外部時鐘的電路如圖 5右所示。XTAL1: 振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。在此期間,當訪問外部數(shù)據(jù)存儲器,將跳過兩次 PSEN 信號。一般情況下, ALE 仍以時鐘振蕩頻率的 1/6輸出固定的脈沖信號,因此它可對外輸出時鐘或用于定時目的。此時,被外部拉低的 P3口將用上拉電阻輸出電流。對端口 P2寫 “1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口,作輸入口使用時,因為內(nèi)部存在上拉電阻,某個引腳被外部信