【正文】
串口傳送可以同步也可以異步。 單片機(jī)可利用外圍設(shè)備中最基本的用于一般用途的 I/O 接口,每個 I/O 接口既可作為輸入端又可作為輸出端,每個 I/O 接口的功能取決與程序初始化階段對數(shù)據(jù)方位寄存器相應(yīng)位進(jìn)行置一和清零操作,通過 CPU 指令對數(shù)據(jù)寄存器相應(yīng)位進(jìn)行置一和清零來置一和清零輸出端口,同樣輸入端口邏輯位也可以通過 CPU 指令訪問。為了解決實(shí)際問題,一個單片機(jī)不僅包括 CPU,程序和數(shù)據(jù)存儲器,另外,它必須含有通過 CPU 訪問外部信息的硬件。我們已經(jīng)了解到微機(jī)中,信號以離散的位形式表示。在微機(jī)電路中使用的信號幾乎總是太小而不能被直接地連到“外部世界”,因而必須用某種形式將其轉(zhuǎn)換成更適宜的形式。該子程序依次送出信息給輸出器件,產(chǎn)生相應(yīng)的電信號,由 DAC 轉(zhuǎn)換成模擬形式。輸出接口采用相似的形式,明顯的差別在于信息流的方向相反;是從程序到外部世界。如果傳感器輸出不是連續(xù)變化的,就不需模擬 數(shù)字轉(zhuǎn)換。任一接口的功能都可分為以某種形式進(jìn)行數(shù)據(jù)庫變換的一些操作,所以外部和內(nèi)部形式的轉(zhuǎn)換是由許多步驟完成的。微機(jī)接口實(shí)現(xiàn)兩種信息形式的交換。 (032H) = 05H 聲明為 5 編程電壓。 (031H) = 51H 聲明為 89C51 單片機(jī)。于聲明該器件的廠商、號和編程電壓。 圖 211 編程電路 圖 222 校驗(yàn)電路 : 利用控制信號的正確組合 (表 6)并保持 ALE/PROG 引腳 10ms 的低電平脈沖 寬度即可將 EPROM 陣列 (4k 字節(jié) )和三個加密位整片擦除 ,代碼陣列在片擦除操作中將任何非空單元寫入” 1” ,這步驟需在編程之前進(jìn)行。程序校驗(yàn):如果加密位 LB、 LB2 沒有進(jìn)行編程,則代碼數(shù) 據(jù)可通過地址和數(shù)據(jù)線讀回原編寫的數(shù)據(jù),采用下圖的電路,程序存儲器的地址由 P1 口和 P2 口的 — 輸入,數(shù)據(jù)由 P0 口讀出, P20 和 、 的控制信號見表 6, PSEN 保持低電平, ALE、 EA 和 RST 保持高電平。編程完成后, 變?yōu)楦唠娖奖硎緶?zhǔn)備就緒狀態(tài)。寫周期開始后,可在任意時刻進(jìn)行數(shù)據(jù)查詢。改變編程單元的地址和寫入的數(shù)據(jù),重復(fù) 1— 5 步驟,知道全部文件編程結(jié)束。在高電壓編程方式時,將 EA/Vpp 端加上 +12v 編 程電壓。編程時,可采用 4— 20MHz 的時鐘振蕩器, 89C51 編程方法如下:在地址線上加上要編程單元的地址信號在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。 89C51 的程序存儲器陣列是采用字節(jié)寫入方式編程的,每次寫入一個字符,要對整個芯片的 EPROM 程序存儲器寫入一個非空字節(jié),必須使用片擦除的方法將整個存儲器的內(nèi)容清楚。掉電模式: 在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi) RAM 和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。這種情況下,外部時鐘脈沖接到 XTAL1 端,即內(nèi)部時鐘發(fā)生器的輸入端 XTAL2 則懸空。 10Pf。對電容 C C2 雖沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性, 如果使用石英晶體,我們推薦電容使用 30Pf177。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖 5。 XTAL2:振蕩器反相放大器的輸出端。 XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。 Flash 存儲器編程時,該引腳加上 +12v 的編程允許電源 Vpp,當(dāng)然這必須是該器件使用 12v 編程電壓 Vpp。需注意的是:如果加密位 LB1 被編程,復(fù)位時內(nèi)部會鎖存 EA 端狀態(tài)。 EA/VPP:外部訪問允許。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,這兩次有效的 PSEN 信號不出現(xiàn)。 該位置位后,只有一條 MOVX 和 MOVC 指令 ALE 才會被激活。對 Flash 存儲器編程期間,該引腳還用于輸入編程脈沖( PROG)。即使不訪問外部存儲器, ALE 仍以時鐘振蕩頻率的 1/6 輸出 固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。 RST:復(fù)位輸入。 P3 口還接收一些用于 Flash 閃速存儲器編程和程序校驗(yàn)的控制信號。對端口寫“ 1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。 在訪問外部程序存儲器或 16 位四肢的外部數(shù)據(jù)存儲器(例如執(zhí)行 MOVX DPTR指令)時, P2 口送出高 8 位地址數(shù)據(jù),在訪問 8 位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX RI 指令)時, P2 口線上的內(nèi)容(也即特殊功能寄存器( SFR)區(qū)中R2 寄存器的內(nèi)容),在整個訪問期間不改變。對端口寫“ 1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時可作輸入口。 作為輸入口使用時,因?yàn)閮?nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出一個電流( IIL)。 P1 口: P1 是一個帶內(nèi)部上拉電阻的 8 位雙向 I/O 口, P1 的輸出緩沖級可驅(qū) 動(吸收或輸出電流) 4 個 TTL 邏輯門電路。在 Flash 編程時, P0 口接受指令字節(jié),而在程序校驗(yàn)時,輸出指令字節(jié),校驗(yàn)時,要求外接上拉電阻。作為輸出口用時,每位能吸收電流的方式驅(qū)動 8 個 TTL 邏輯門電路,對端口寫“ 1”可作為高阻抗輸入端用。 GND:地 圖 121 AT89C51 方框圖 空閑方式體制 CPU 的工作,但允許 RAM,定時 /計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。 AT89C51提供以下標(biāo)準(zhǔn)功能: 4k 字節(jié) FLASH 閃速存儲器 , 128 字節(jié)內(nèi)部 RAM, 32 個 I/O 口線, 2 個16 位定時 /計(jì)數(shù)器,一個 5 向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。這種系統(tǒng)的驗(yàn)證處理可以被分解為三個主要部分。為了緩和這些問題,在最壞的環(huán)境和電壓條件下對這些單片機(jī)進(jìn)行無論在部件級別還是系統(tǒng)級別上的綜合測試是必需的。重新設(shè)計(jì)的費(fèi)用可以高達(dá) 500K 美元 ,如果產(chǎn)品族享有同樣內(nèi)核或外圍設(shè)計(jì)缺陷的話,費(fèi)用會更高。擁有操作不可預(yù)測的設(shè)備的經(jīng)濟(jì)和法律風(fēng)險是很高的。AT89C51 尤其很好適用于得益于它的處理速度和增強(qiáng)型片上外圍功能集,諸如:汽車動力控制,車輛動態(tài)懸掛,反鎖制動和穩(wěn)定性控制應(yīng)用。商業(yè)應(yīng)用包括調(diào)制解調(diào)器,電動機(jī)控制系統(tǒng),打印機(jī),影印機(jī),空調(diào)控制系統(tǒng),磁盤驅(qū)動器和醫(yī)療設(shè)備。 介紹 8 位 AT89C51 CHMOS 工藝單片機(jī)被設(shè)計(jì)用于處理高速計(jì)算和快速輸入 /輸出。開發(fā)的這種環(huán)境連接了AT89C51。 Intel 平臺工程部門開發(fā)了一種面向?qū)ο蟮挠糜隍?yàn)證它的 AT89C51 汽車單片機(jī)多線性測試環(huán)境。然而,這些關(guān)鍵應(yīng)用領(lǐng)域也要求這些單片機(jī)高度可靠。 this digital form is most useful when the microputer is to be connected to equipment which can only be switched on or off, where each bit might represent the state of a switch or actuator. To solve realworld problems, a microcontroller must have more than just a CPU, a program, and a data memory. In addition, it must contain hardware allowing the CPU to access information from the outside world. Once the CPU gathers information and processes the data, it must also be able to effect change on some portion of the outside world. These hardware devices, called peripherals, are the CPU’s window to the outside. The most basic form of peripheral available on microcontrollers is the general purpose I70 port. Each of the I/O pins can be used as either an input or an output. The function of each pin is determined by setting or clearing corresponding bits in a corresponding data direction register during the initialization stage of a program. Each output pin may be driven to either a logic one or a logic zero by using CPU instructions to pin may be viewed (or read.) by the CPU using program instructions. Some type of serial unit is included on microcontrollers to allow the CPU to municate bitserially with external devices. Using a bit serial format instead of bitparallel format requires fewer I/O pins to perform the munication function, which makes it less expensive, but slower. Serial transmissions are performed either synchronously or asynchronously. AT89C51 的概況 1 AT89C51 應(yīng)用 單片機(jī)廣泛應(yīng)用于商業(yè):諸如調(diào)制解調(diào)器,電動機(jī)控制系統(tǒng),空調(diào)控制系統(tǒng),汽車發(fā)動機(jī)和其他一些領(lǐng)域。 The General Situation of AT89C51 Chapter 1 The application of AT89C51 Microcontroll