【正文】
選的節(jié)電工作模式。做輸出口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流( Iil) . Flash編程和程序校驗期間, P1 接受低 8 位地址。對 P3口寫入 “1”時,他們被內部上拉電阻拉高并可作為輸出口。 對 flash存儲器編程期間,該引腳還用于輸入編程脈沖( ^PROG)。需注意的是 。對外接電容 C C2 雖然沒有十分嚴格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用 30PF+10PF,而如使用陶瓷諧振器 建議選擇 40PF+10PF。程序會首先響應中斷,進入中斷服務程序,執(zhí)行完中斷服務程序并僅隨終端返回指令,下一條要執(zhí)行的指令就是使單片機進入空閑模式那條指令后面的一條指令。 FLASH 閃速存儲器的編程 AT89C51 單片機內部有 4K 字節(jié)的 FLASH PEROM,這個 FLASH 存儲陣 列出廠時已處于擦除狀態(tài)(即所有存儲單元的內容均為 FFH),用戶隨時可對其進行編程。 5. 每對 FLASH 存儲陣列寫入一個字節(jié)或每寫入一個程序加密位,加上一個 ALE/^PROG 編程脈沖,改變編程單元的地址和寫入的數(shù)據(jù),重復 1—5 步驟,直到全部文件編程結束。證實加密位的完成通過觀察它們的特點和能力。 編程接口:采用控制信號的正確組合可對 FLASH 閃速存儲陣列中的每一代碼字節(jié)進行寫入和存儲器的整片擦除,寫操作周期是自身定時的,初始化后它將自動定時到操作完成。 讀片內簽名字節(jié): AT89C51 單片機內有 3 個簽名字節(jié),地址為 030H、 031H和 032H。 數(shù)據(jù)查詢: AT89C51 單片機用數(shù) 據(jù)查詢方式來檢測一個寫周期是否結束,在一個寫周期中,如需要讀取最后寫入的那個字節(jié),則讀出的數(shù)據(jù)的最高位( )是原來寫入字節(jié)最高位的反碼。 AT89C51 單片機中,有些屬于低電壓編程方式,而有些則是高電平編程方式,用戶可從芯片上的型號和讀取芯片內的簽名字節(jié)獲得該信息 。為了避免可能對端口產(chǎn)生以第 5 頁 ( 共 15 頁 ) 外寫入,激活空閑模式的那條指令后一條指令不應該是一條對端口或外部存儲器的寫入指令。這種情況下,外部時鐘脈沖接到 XTAL1 端,即內部時鐘發(fā)生器的輸入端, XTAL2 則懸空。 如 EA 端為高電平(接 VCC 端), CPU 則執(zhí)行內部程序存儲器中的指令。該外置位后,只要一條 MOVX 和 MOVC 指令 ALE 才會被激活。 P3 口除了作為一般的 I/O 口線外,更重要的用途是它的第二功能,如下表所示: 端口引腳 第二功能 第 3 頁 ( 共 15 頁 ) P3 口還接收一 些用于 flash 閃速存儲器編程和程序校驗的控制信號。對端口寫 “1”, 通過內部地山拉電阻把端口拉到高電平,此時可作為輸出口,作輸出口使用時,因為內部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流( Iil)。掉電方式保存 RAM 中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一第 2 頁 ( 共 15 頁 ) 個硬件復位??臻e方式停止 CPU的工作,但允許 RAM,定時/計數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。 P2 口: P2 是一個帶有內部上拉電阻的 8 位雙向 I/O 口, P2 的輸出緩沖級可驅動(吸收或輸出電流) 4 個 TTL邏輯門電路。做輸出端時,被外部拉低的 P3 口將用上拉電阻輸出電流( Iil)。 如有不要,可通過對特殊功能寄存器( SFR)區(qū)中的 8EH 單元的 D0 位置位,可禁止 ALE 操作。 如果加密位 LB1被編程,復位時內部會鎖存 EA 端狀態(tài)。 用戶也可以采用外部時鐘。其二是通過硬件復位也可將空閑工作模式終止,需要注意的是,當由硬件復位來終止空閑模式時, CPU通常是從激活空閑模式那條指令的下一條指令開始繼續(xù)執(zhí)行程序的,要完成內部復位操作,硬件復位脈沖要保持兩個機器周期( 24 個時鐘周期)有效,在這種情況下,內部禁止 CPU 訪問片內 RAM,而允許訪問其它端 口。編程接口可接收高電平( +12V)或低電平( VCC)的允許編程信號,低電平編程模式適合于用戶再線編程系統(tǒng),而高電平編程模式可與通用 EPROM編程器兼容。每個字節(jié)寫入周期是自身定時地,通常約為 。 芯片擦除:利用控制信號的正確組合并保持 ALE/^PROG 引腳 10ms 的低電平脈沖寬度即可將 PEROM 陣列( 4k字節(jié))整片擦除,代碼陣列在擦除操作中將任何非空單元寫入 “1”,這步驟需要再編程之前進行。AT89C51 MCU Introduction 第 8 頁(共 15 頁) AT89C51 MCU Introduction Description The AT89C51 is a lowpower, highperformance CMOS 8bit microputer with 4K bytes of Flash Programmable and Erasable Read Only Memory (PEROM) and 128 bytes RAM. The device is manufactured using Atmel’s high density nonvolatile memory technology and is patible with the industry standard MCS51? instruction set and pinout. The chip bines a versatile 8bit CPU with Flash on a monolithic chip, the Atmel AT89C51 is a powerful microputer which provides a highly flexible and cost effective solution to many embedded control applications. Features ? Compatible with MCS51? Products ? 4K Bytes of InSystem Reprogrammable Flash Memory ? Endurance: 1,000 Write/Erase Cycles ? Fully Static Operation: 0 Hz to 24 MHz ? ThreeLevel Program Memory Lock ? 128 x 8Bit Internal RAM ? 32 Programmable I/O Lines ? Two 16Bit Timer/Counters ? Six Interrupt Sources ? Programmable Serial Channel ? Low Power Idle and Power Down Modes The AT89C51 provides the following standard features: 4K bytes of Flash, 128 bytes of RAM, 32 I/O lines, two 16bit timer/counters, a five vector twolevel interrupt architecture, a full duplex serial port, onchip oscillator and clock circuitry. In addition, the AT89C51 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port and interrupt system to continue functioning. The Power Down Mode saves the RAM contents but freezes the oscillator AT89C51 MCU Introduction 第 9 頁(共 15 頁) disabling all other chip functions until the next hardware reset. Pin Description VCC Supply voltage. GND Ground. Port 0:Port 0 is an 8bit open drain bi