飲料自動(dòng)售賣機(jī)設(shè)計(jì)含開題及8張CAD圖
飲料自動(dòng)售賣機(jī)設(shè)計(jì)含開題及8張CAD圖,飲料,自動(dòng),售賣,設(shè)計(jì),開題,cad
譯文報(bào)告用紙
AT89S51是美國ATMEL公司生產(chǎn)的一款高性能、低功耗的CMOS8位單片機(jī),片內(nèi)的Flash只讀程序存儲(chǔ)器容量為4 bytes,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),能夠兼容8051指令系統(tǒng)和引腳。它匯集Flash程序存儲(chǔ)器既可在線編程又能用傳統(tǒng)的方式編程及通用8位微處理器于單片機(jī)芯片中。ATMEL公司功能強(qiáng)大、價(jià)格低廉的AT89S51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場合,可靈活應(yīng)用于各種控制領(lǐng)域。
主要性能參數(shù):
u 與MCS-51產(chǎn)品指令完全兼容
u 4K字節(jié)在線系統(tǒng)編程(ISP)Flash閃存
u 1000次擦寫周期
u 4.0-5.5V的工作電壓范圍
u 全靜態(tài)工作模式:0HZ-33MHZ
u 三級(jí)程序加密鎖
u 128 x 8字節(jié)內(nèi)部RAM
u 32個(gè)可編程I/O接口
u 2個(gè)16位置定時(shí)/計(jì)數(shù)器
u 6個(gè)中斷源
u 全雙工串行UART通道
u 低功耗空閑和掉電模式
u 中斷可從空閑模式喚醒系統(tǒng)
u 看門狗(WRT)及雙數(shù)據(jù)指針
u 掉電標(biāo)識(shí)和快速編輯特性
u 靈活的在線系統(tǒng)編程
功能特性概述:
AT89S51提供以下標(biāo)準(zhǔn)功能:4K字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線,看門狗(WTR),兩個(gè)數(shù)據(jù)指針,兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量兩級(jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí)AT89S51可降至0HZ的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的運(yùn)作,但允許RAM、定時(shí)/計(jì)數(shù)器、串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他一切部件工作,直到下一個(gè)硬件復(fù)位。
引腳功能說明:
VCC:電源電壓
GND:接地端
P0口:P0口是一組8位開路型漏極雙向I/O口。作為輸出口用時(shí),每位能驅(qū)動(dòng)8個(gè)TTL邏輯門電路,對(duì)端口寫 “1”可作為高阻抗輸入端用。
在訪問外部數(shù)據(jù)存儲(chǔ)器或者程序存儲(chǔ)器時(shí),這組端口分時(shí)轉(zhuǎn)換地址的低8位和數(shù)據(jù)總線復(fù)用,訪問期間內(nèi)部上拉電阻被激活。
在Flash編程時(shí)P0口接收指令字節(jié),而在程序校驗(yàn)時(shí)輸出指令字節(jié)并要求外接上拉電阻。
P1口:P1口時(shí)一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部上拉電阻把端口拉到高電平,此時(shí)可以作為輸入口。因?yàn)榇嬖趦?nèi)部上拉電阻,P1口作為輸入口使用時(shí),某個(gè)引腳被外部信號(hào)拉到低電平會(huì)輸出一個(gè)電流IIL_
Flash編程和編程校驗(yàn)期間,P1接收低8位地址。
P2口:P2時(shí)一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)端口寫“1”,通過內(nèi)部的上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電路。
在訪問外部程序存儲(chǔ)器或者16位地址的外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲(chǔ)器(如執(zhí)行MOVX @Ri指令)時(shí),P2口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中P2寄存器的內(nèi)容),在整個(gè)訪問期間不會(huì)改變。
Flash編程或者校驗(yàn)時(shí),P2也接收高位地址和其他控制信號(hào)。
P3口:P3口時(shí)一組帶內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)(吸收或輸出電流)4個(gè)TTL邏輯門電路。對(duì)P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可以作為輸入端口。作為輸入端時(shí),被外部信號(hào)拉低的P3口將用上拉電阻輸出電流IIL。
P3口除了作為一般的I/O口線外,更重要的用途時(shí)它的第二功能,如下表所示:
P3口還接收一些用于Flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。
RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上的高電平將使得單片機(jī)復(fù)位。WDT溢出將使得該引腳輸出高電平,設(shè)置SFR AUXR 的DISRTO位(地址8EH)可打開或者關(guān)閉該功能。DISRTO位缺省為RESET輸出高電平打開狀態(tài)。
ALE/:當(dāng)訪問外部程序存儲(chǔ)器或者數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲(chǔ)器,ALE仍然以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或者用于定時(shí)目的。要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。
對(duì)Flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖()。
如有必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后只有MOVX和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳會(huì)被稍微拉高,單元執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無效。
:程序存儲(chǔ)允許()輸出的時(shí)外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89S51由外部程序存儲(chǔ)器取指令(或者數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次有效,即輸出兩個(gè)脈沖。當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),沒有兩次有效的信號(hào)。
EA/VPP:外部訪問允許。欲使得CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端必須保持低電平(接地)。需要注意的是,如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。
如果EA端時(shí)高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。
Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程電壓VPP。
XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。
XTAL2:振蕩器反相放大器的輸出端。
特殊功能寄存器:
特殊功能寄存器內(nèi)部空間分布如下表所示:
這些地址并沒有全部占用,沒有占用的地址也不可以使用,讀這些地址將會(huì)得到一個(gè)不確定的數(shù)值。而寫這些地址單元也將得不到預(yù)期的結(jié)果。
表1 AT89S51特殊功能寄存器分布圖及復(fù)位值
不要用軟件方式訪問這些未定義的單元,這些單元時(shí)留作以后產(chǎn)品擴(kuò)展之用,復(fù)位后這些新的位將置為0.
中斷寄存器:各個(gè)中斷允許控制位于IE寄存器,5個(gè)中斷源的中斷優(yōu)先級(jí)控制位位于IP寄存器中。
表2 AUXR輔助寄存器
雙時(shí)鐘指針寄存器:
為更加方便地訪問內(nèi)部和外部數(shù)據(jù)存儲(chǔ)器,AT89S51有兩個(gè)16位數(shù)據(jù)指針寄存器:DP0位于SFR(特殊功能寄存器)區(qū)塊中的地址82H、83H和DP1位于地址84H、85H,當(dāng)SFR中的位DPS=0選擇DP0,而當(dāng)DPS=1則選擇DP1。用戶應(yīng)在訪問相應(yīng)的數(shù)據(jù)指針寄存器前初始化DPS。
電源空閑標(biāo)志:電源空閑標(biāo)志(POF)在特殊功能寄存器SFR中PCON的第4位(PCN.4),電源打開時(shí)POF置“1”,它可由軟件設(shè)置睡眠狀態(tài)并不為復(fù)位所影響。
存儲(chǔ)器結(jié)構(gòu):MCS-51單片機(jī)內(nèi)核采用了程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器空間分開的結(jié)構(gòu),都具有64KB的外部程序和數(shù)據(jù)的尋址空間。
程序存儲(chǔ)器:如果EA引腳接地(GND),全部程序均執(zhí)行外部存儲(chǔ)器。在AT89S51中,如果EA接到VCC(電源+),程序首先執(zhí)行地址從0000H-0FFFH(4KB)內(nèi)部程序存儲(chǔ)器,再執(zhí)行地址為1000H-FFFFH(60KB)的外部程序存儲(chǔ)器。
數(shù)據(jù)存儲(chǔ)器:AT89S51有128字節(jié)的內(nèi)部RAM,這128字節(jié)可利用直接或者間接尋址方式進(jìn)行訪問,堆棧操作可以利用間接尋址方式進(jìn)行,128字節(jié)均可設(shè)置位堆棧區(qū)空間。
看門狗定時(shí)器(WDT):WDT為了解決CPU程序運(yùn)行時(shí)可能進(jìn)入混亂或者死循環(huán)而設(shè)置,它由一個(gè)14Bit計(jì)數(shù)器和看門狗復(fù)位SFR(WDTRST)構(gòu)成。外部復(fù)位時(shí),WDT默認(rèn)為關(guān)閉狀態(tài),要打開WDT,用戶必須按順序把01EH和0E1H寫到WDTRST寄存器(SFR地址為0A6H),一旦啟動(dòng)了WDT,它會(huì)隨晶體振蕩器在每個(gè)機(jī)器周期計(jì)數(shù),除硬件復(fù)位或WDT溢出復(fù)位外沒有其他方法關(guān)閉WDT,當(dāng)WDT溢出,將使RST引腳輸出高電平的復(fù)位脈沖。
使用看門狗(WDT):打開WDT需按次序?qū)?1EH和0E1H到WDTRST寄存器(SFR的地址為0A6H),當(dāng)WDT打開后,需要一定的時(shí)間寫01EH和0E1H到WDTRST寄存器以避免WDT技術(shù)溢出。14位WDT計(jì)數(shù)器計(jì)數(shù)達(dá)到3FFFFH,WDT將溢出并使得器件復(fù)位。WDT打開時(shí),它會(huì)隨著晶體振蕩器在每個(gè)機(jī)器周期計(jì)數(shù),這意味著用戶必須在小于每個(gè)3FFFH機(jī)器周期內(nèi)復(fù)位WDT,也即寫01EH和0E1H到WDTRST寄存器。WDTRST是只寫寄存器,WDT計(jì)數(shù)器既不可以讀也不可以寫,當(dāng)WDT溢出時(shí),通常將使得RST引腳輸出高電平的復(fù)位脈沖。復(fù)位脈沖持續(xù)時(shí)間為98xTOSC,而TOSC=1/FOSC(晶體振蕩頻率)。為使得WDT工作最優(yōu)化,必須在合適的程序代碼時(shí)間段周期地復(fù)位WDT防止WDT溢出。
掉電和空閑時(shí)的WDT:掉電時(shí)期,晶體振蕩停止,WDT也停止。掉電模式下,用戶不能再復(fù)位WDT。有兩種方法可以退掉掉電模式:硬件復(fù)位或通過激活外部中斷。當(dāng)硬件復(fù)位退出電模式時(shí),處理WDT可像通常的上電復(fù)位一樣。當(dāng)由中斷退出掉電模式則有所不同,中斷低電平狀態(tài)持續(xù)到晶體振蕩穩(wěn)定,當(dāng)中斷電平變?yōu)楦呒错憫?yīng)中斷服務(wù)。位防止中斷誤復(fù)位,當(dāng)器件復(fù)位,中斷引腳為低時(shí),WDT并未開始給計(jì)數(shù),直到中斷引腳為高為止。這為在掉電模式下的中斷執(zhí)行中斷服務(wù)程序而設(shè)置。
為保證WDT在退出掉電模式時(shí)極端情況下不溢出,最好在進(jìn)入掉電模式前復(fù)位WDT。
在進(jìn)入空閑模式前,WDT打開時(shí)WDT是否計(jì)數(shù)由SFR中的AUXR的WDIDLE位決定IDLE期間(位WDIDLE=0)默認(rèn)狀態(tài)是繼續(xù)計(jì)數(shù)。為防止AT89S51從空閑模式中復(fù)位,用戶應(yīng)周期性設(shè)置定時(shí)器,重新進(jìn)入空閑模式。、
當(dāng)WDIDLE被復(fù)位,在空閑模式中WDT將停止計(jì)數(shù),直到從空閑(IDLE)模式中重新開始計(jì)數(shù)。
UART一通用異步通信口:AT85S51的UART操作與AT89C51一樣,有關(guān)更詳細(xì)的資料請(qǐng)參考ATMEL公司的網(wǎng)站(www.atmel.com),從主頁選擇“products”-----“8051-Architecture Flash Microcontroller”-----“product Overview”。
定時(shí)器0和定時(shí)器1:AT89S51的定時(shí)器0和定時(shí)器1操作于ATC51一樣,有關(guān)更詳細(xì)的資料請(qǐng)參考ATMEL公司的網(wǎng)站(www.atmel.com),從主頁選擇“Products”——“8951-Architecture Flash Microcontroller”——“Product Overview”。
中斷:AT89s51共有5個(gè)中斷向量:兩個(gè)外部中斷(INT0和INT1),2個(gè)定時(shí)中斷(Timer0和Timer1)和一個(gè)串行中斷。這些中斷如圖1.
這些中斷源各自的禁止和使能位參見特殊功能寄存器的IE。IE也包括總中斷控制位EA,EA清零將關(guān)閉所有中斷。
值得注意的時(shí)表4中的IE.6和IE.5沒有定義,用戶不用訪問這些位它被保留為以后的AT89產(chǎn)品作為擴(kuò)展之用。
定時(shí)器0和定時(shí)器1的中斷標(biāo)志TF0和TF1,它時(shí)定時(shí)器溢出時(shí)候的S5P2時(shí)序周期被置位,該標(biāo)志保留到下個(gè)時(shí)序周期。
表4:中斷控制寄存器
圖1:中斷源方框圖
晶體振蕩器的特性:
AT89S51中由一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別時(shí)該放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外石英晶體或陶瓷振蕩器一起構(gòu)成自激振蕩器,振蕩電路參見圖5.
外接石英晶體(或陶瓷振蕩器)及電容C1、C2接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容C1、C2雖然沒有十分嚴(yán)格的要求,但電容量的大小會(huì)輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度及溫度的穩(wěn)定性如果使用石英晶體,我們推薦使用30pF+10F,而如果使用陶瓷諧振器建議選擇40pF+10F。
用戶也可以采用外部時(shí)鐘。采用外部時(shí)鐘的電路如圖5右圖所示。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2懸空。
由于外部時(shí)鐘信號(hào)時(shí)通過一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品計(jì)數(shù)條件的要求。
圖2 晶體接線圖和外接時(shí)鐘線路圖:
空閑節(jié)電模式:在空閑工作模式狀態(tài),CPU保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍然保持激活狀態(tài),這種方式由軟件產(chǎn)生,片內(nèi)RAM和所有特殊功能寄存器的內(nèi)容保持不變??臻e模式可由任何允許的中斷請(qǐng)求或硬件復(fù)位終止。
需要注意的是,當(dāng)由硬件復(fù)位來終止空閑模式時(shí),CPU通常是從激活空閑模式那條指令的下一條指令開始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘周期)有效,在這種情況下,內(nèi)部禁止CPU訪問片內(nèi)RAM,而允許訪問其他端口。為了避免在復(fù)位結(jié)束時(shí)可能對(duì)端口產(chǎn)生意外寫入,激活空閑模式的那條指令后一條指令不應(yīng)是一條對(duì)端口或外部存儲(chǔ)器的寫入指令。
掉電模式:在掉電模式下,振蕩器停止工作,進(jìn)如掉電模式的指令時(shí)最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。退出掉電模式的方法時(shí)硬件復(fù)位或由處于使能狀態(tài)的外中斷INT0和INT1激活。復(fù)位后將重新定義全部的特殊功能寄存器但不改變RAM中的內(nèi)容,在Vcc恢復(fù)到正常工作電平前,復(fù)位應(yīng)無效,且必須保持一定時(shí)間按以使振蕩器重啟并穩(wěn)定工作。
表5 空閑和掉電期間外部引腳狀態(tài):
程序存儲(chǔ)器的加密:AT89S51可使用對(duì)芯片上的3個(gè)加密位LB1、LB2、LB3進(jìn)行編程(P)或不編程(U)來得到如下表所示的功能:
加密位保護(hù)功能表: 注:表中的U——表示未編程,P——表示編程
當(dāng)加密位LB1被編程時(shí),在復(fù)位期間,EA端的邏輯電平被采樣并鎖存,如果單片機(jī)上電后一直沒有復(fù)位,則鎖存其來的初始值時(shí)一個(gè)隨機(jī)數(shù),且這個(gè)隨機(jī)數(shù)會(huì)一直保存到真正復(fù)位為止。為使單片機(jī)能正常工作,被鎖存的EA電平值必須與該引腳當(dāng)前的邏輯電平一致。此外,加密位只能通過整片擦除的方法清除。
Flash閃速存儲(chǔ)器的并行編程:AT89S51單片機(jī)內(nèi)部有4k字節(jié)的可快速編程的Flash存儲(chǔ)陣列。編程方法可通過傳統(tǒng)的EPROM編程器使用高電壓(+12v)和協(xié)調(diào)的控制信號(hào)進(jìn)行編程。
AT89S51的代碼是逐一字節(jié)進(jìn)行編程的。
編程方法:編程前,須按照編程模式表和圖13、圖14所示設(shè)置好地址、數(shù)據(jù)及控制信號(hào),AT89S51編程方法如下:
1. 在地址線上加上要編程單元的地址信號(hào)
2. 在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)
3. 激活相應(yīng)的控制信號(hào)
4. 將EA/Vpp端加上+12編程電壓。
5. 每對(duì)Flash存儲(chǔ)陣列寫入一個(gè)字節(jié)或每寫入一個(gè)程序加密位,加上一個(gè)ALE/編程脈沖。每個(gè)字節(jié)寫入周期是自身定時(shí)的,大多數(shù)約為50uS。改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)1——5步驟,直到全部文件編程結(jié)束。
數(shù)據(jù)查詢:AT89S51單片機(jī)用數(shù)據(jù)查詢方式來檢測一個(gè)寫周期是否結(jié)束,在一個(gè)寫周期中,如需讀取最后寫入的哪個(gè)字節(jié),則讀出的數(shù)據(jù)最高位(P0.7)是原來寫入字節(jié)最高位的反碼。寫周期完成后,有效的數(shù)據(jù)就會(huì)出現(xiàn)在所有輸出端上,此時(shí),可進(jìn)入下一個(gè)字節(jié)的寫周期,寫周期開始后,可在任意時(shí)刻進(jìn)行數(shù)據(jù)查詢。
Ready/:字節(jié)編程的進(jìn)度要通過“RDY/BSY”輸出信號(hào)監(jiān)測,編程期間,ALE變?yōu)楦唠娖健癏”后P3.0端電平被拉低,表示正在編程狀態(tài)(忙狀態(tài))。編程完成后,可在任意時(shí)刻進(jìn)行數(shù)據(jù)查詢。
程序校驗(yàn):如果加密位LB1、LB2沒有進(jìn)行編程,則代碼數(shù)據(jù)可通過地址和數(shù)據(jù)線讀回原編寫的數(shù)據(jù),各加密位也可通過直接回讀進(jìn)行校驗(yàn)。
讀片內(nèi)簽名字節(jié):AT89S51單片機(jī)內(nèi)由3個(gè)簽名字節(jié),地址為000H、100H和200H。用于聲明該器件的廠商和型號(hào)等信息,讀簽名字節(jié)的過程和正常校驗(yàn)相仿,只需將P3.6和P3.7保持低電平,返回值意義如下:
(000H)=1EH 聲明產(chǎn)品由ATMEL公司制造。
(100H)=51H聲明為AT89S51單片機(jī)
(200H)=06H
芯片的擦除:在并行編程模式,利用控制信號(hào)的正確組合并保持ALE/引腳200ns——500ns的低電平脈沖寬度即可完成擦除操作。
在串行編程模式,芯片擦除操作是利用擦除指令進(jìn)行的。在這種方式,擦除周期時(shí)自身定時(shí)的,大約位500MS。
擦除期間,用串行方式讀任何地址數(shù)據(jù),返回值均為00H。
Flash閃速存儲(chǔ)器的串行編程:將RST接到Vcc,程序代碼存儲(chǔ)器陣列可通過串行ISP接口進(jìn)行編程,串行接口包含SCK線、MOSI(輸出)線。將RST拉高后,在其他操作前必須發(fā)出編程使能指令,編程前需要將芯片擦除。
芯片擦除則將存儲(chǔ)代碼陣列全寫位FFH。
外部系統(tǒng)時(shí)鐘信號(hào)需接到XTAL端或者在XTAL1和XTAL2接上晶體振蕩器。最高的串行時(shí)鐘(SCK)不超過1/16晶體時(shí)鐘,當(dāng)晶體為33MHZ時(shí),最大SCK頻率為2MHZ。
Flash閃速存儲(chǔ)器的串行編程方法:對(duì)AT89S51的串行編程次序推薦使用以下方法:
1. 上電次序:將電源家在Vcc和GND引腳,RST置為”H”,如果XTAL1和XTAL2接上晶體或者在XTAL1接上3-33MHZ的時(shí)鐘頻率,等候10MS。
2. 將編程使能指令發(fā)送到MOSI(Pin1.5),編程時(shí)鐘接至SCK(pin1.7),次頻率需小于晶體時(shí)鐘頻率的1/16.
3. 代碼陣列的編程可選字節(jié)模式或者頁模式。寫周期時(shí)自身定時(shí)的,一般不大于0.5ms(5v電壓時(shí))。
4. 任意代碼單元均可MISO(pin1.6)和讀指令選擇相應(yīng)的地址回讀數(shù)據(jù)進(jìn)行校驗(yàn)。
5. 編程結(jié)束應(yīng)將RST置為“L”以結(jié)束操作。
6. 斷電次序:如果需要的話,按這個(gè)方法斷電,加入沒有使用晶體,將XTAL置為低,RST置為低,關(guān)斷Vcc。
數(shù)據(jù)校驗(yàn):數(shù)據(jù)校驗(yàn)也可在串行模式下進(jìn)行,在這個(gè)模式,在一個(gè)寫周期中,通過輸出引腳MISO串行回讀一個(gè)字節(jié)數(shù)據(jù)的最高位將為最后寫入字節(jié)的反碼。
串行指令編程設(shè)置:串行編程指令設(shè)置為一個(gè)4字節(jié)的協(xié)議,參見表8.
并行編程接口:采用控制信號(hào)的正確組合可對(duì)Flash閃速存儲(chǔ)陣列中的每一代碼字節(jié)進(jìn)行寫入和存儲(chǔ)器的整片擦除,寫操作周期是自身定時(shí)的,初始化后它將會(huì)自動(dòng)定時(shí)到操作完成。
更多的有關(guān)ATMEL系列單片機(jī)的編程計(jì)數(shù)請(qǐng)聯(lián)系相應(yīng)的編程器供應(yīng)商以獲取最新的軟件版本。
表7 Flash編程模式:
注:1.芯片擦除每一脈沖為200ns—500ns。
2.寫代碼數(shù)據(jù)每一脈沖為200ns—500ns。
3.寫加密位每一脈沖為200ns—500ns。
4.編程期間P3.0引腳輸出RDY/信號(hào)。
5.“X”不需要理會(huì)。
圖4 Flash存儲(chǔ)器編程(并口模式) 圖5 Flash存儲(chǔ)器校驗(yàn)(并口模式)
Flash編程和校驗(yàn)特性(并行模式):
圖6 Flash編程和校驗(yàn)波形(并行模式)
Flash存儲(chǔ)器的串行下載:
Flash編程和校驗(yàn)波形(串行模式):
表8 串行編程指令:
注:1.當(dāng)LB3和LB4加密位已編程時(shí)則不可讀簽名字節(jié)。
2.B1=0 B2=0,方式1,無加密保護(hù)
B1=0 B2=1,方式2,加密位LB1 各個(gè)加密位在方式4執(zhí)行前需按順序逐一操作
B1=1 B2=0,方式3,加密位LB2
B1=1 B2=1,方式4,加密位LB3
復(fù)位信號(hào)為”H”后,建立數(shù)據(jù)前使SCK為低電平至少64個(gè)系統(tǒng)時(shí)鐘周期,復(fù)位脈沖時(shí)必須的。SCK時(shí)鐘頻率不得大于XTAL1時(shí)鐘的1/16.
在頁讀/寫模式,數(shù)據(jù)總是從地址00開始直到255.命令字節(jié)后緊跟著高4位地址,全部數(shù)據(jù)單元256字節(jié)會(huì)逐一進(jìn)行讀/寫,此時(shí)下個(gè)指令將準(zhǔn)備譯碼。
串行編程特性:
圖9 串行編程時(shí)序
極限參數(shù):
注:這些參數(shù)是器件的極限參數(shù),使用條件必須在上述列表范圍以內(nèi),如果超出上述條件,器件就不能得到安全保證甚至可能造成永久性破壞。
DC參數(shù):
注:以下參數(shù)測試條件:在TA=40°C—85°C,Vcc=4.0v—5.5v
注: 1.在穩(wěn)定狀態(tài)(無輸出)條件下,Iol有以下限制:每一引腳最大Iol為10mA,每一8位端口p0為26mA,P1、P2、P3為15mA。 全部輸出引腳最大Iol為71mA。
2.掉電模式的最小Vcc為2v。
AC特性:
在以下工作條件測得:P0、ALE/PROG和PSEN負(fù)載容抗為100pF,其他端口負(fù)載容抗為80PF。
外部程序和數(shù)據(jù)存儲(chǔ)器特性:
外部程序存儲(chǔ)器讀周期:
外部數(shù)據(jù)存儲(chǔ)器讀周期:
外部程序存儲(chǔ)器寫周期:
外部數(shù)據(jù)存儲(chǔ)器寫周期:
外部時(shí)鐘驅(qū)動(dòng)時(shí)序:
串行口時(shí)序:
在Vcc=4.0v—5.5v,負(fù)載電容為80pF條件下:
上位寄存器時(shí)序波形:
AC測試輸入/輸出波形;
注:AC輸入測試在Vcc-0.5v邏輯1及0.45v為邏輯0,時(shí)序測試在VIH為最小是和VIL為最大測量。
浮空波形:
注:在浮空狀態(tài),端口引腳在負(fù)載出現(xiàn)100mv電壓變化時(shí)即為浮空,也即當(dāng)一個(gè)端口電壓從VOH到VOL變化時(shí)出現(xiàn)100mv電壓時(shí)浮空狀態(tài)。
產(chǎn)品信息:
封裝形式:
[1] S. P. Amarasinghe, J. M. Anderson, M. S. Lam, and C.-W.Tseng, “An overview of the SUIF compiler for scalable parallel machines,” Proceedings of the Seventh SIAM Conference onParallel Processing for Scientific Compiler, San Francisco, 1995.
[2] S. Amarasinghe et.al., “Hot compilers for future hot chips,” presented at Hot Chips VII, Stanford, CA, 1995.
[3] D. W. Anderson, F. J. Sparacio, and R. M. Tomasulo, “The IBM System/360 model 91: Machine philosophy and instruction-handling,” IBM Journal of Research and Development, vol. 11, pp. 8–24, 1967.
22
收藏
編號(hào):15442709
類型:共享資源
大?。?span id="xn3dh3t" class="font-tahoma">6.33MB
格式:ZIP
上傳時(shí)間:2020-08-10
40
積分
- 關(guān) 鍵 詞:
-
飲料
自動(dòng)
售賣
設(shè)計(jì)
開題
cad
- 資源描述:
-
飲料自動(dòng)售賣機(jī)設(shè)計(jì)含開題及8張CAD圖,飲料,自動(dòng),售賣,設(shè)計(jì),開題,cad
展開閱讀全文
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學(xué)習(xí)交流,未經(jīng)上傳用戶書面授權(quán),請(qǐng)勿作他用。