freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于89c51單片機(jī)倉庫溫濕度的監(jiān)測系統(tǒng)的設(shè)計(jì)(編輯修改稿)

2025-07-25 00:28 本頁面
 

【文章內(nèi)容簡介】 問外部程序存儲器或16 位四肢的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @DPTR指令)時(shí),P2 口送出高8 位地址數(shù)據(jù),在訪問8 位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX @ RI 指令)時(shí),P2 口線上的內(nèi)容(也即特殊功能寄存器(SFR)區(qū)中R2 寄存器的內(nèi)容),在整個(gè)訪問期間不改變。Flash 編程和程序校驗(yàn)時(shí),P2 也接收高位地址和其他控制信號。P3 口:P3 是一個(gè)帶有內(nèi)部上拉電阻的8 位雙向I/O 口,P3 的輸出緩沖級可驅(qū)動(dòng)(吸收或輸出電流)4 個(gè)TTL 邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作為輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會輸出一個(gè)電流(IIL)。P3 口還接收一些用于Flash 閃速存儲器編程和程序校驗(yàn)的控制信號。RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST 引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8 位字節(jié)。即使不訪問外部存儲器,ALE 仍以時(shí)鐘振蕩頻率的1/6 輸出固定的正脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí)將跳過一個(gè)ALE 脈沖。對Flash 存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH 單元D0 位置位,可禁止ALE 操作。該位置位后,只有一條MOVX 和MOVC 指令A(yù)LE 才會被激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE 無效。PSEN:程序存儲允許輸出是外部程序存儲器的讀選通型號,當(dāng)89C51 由外部存儲器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN 有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,這兩次有效的PSEN 信號不出現(xiàn)。EA/VPP:外部訪問允許。欲使CPU 僅訪問外部程序存儲器(地址為0000H—FFFFH),EA 端必須保持低電平(接地)。需注意的是:如果加密位LB1 被編程,復(fù)位時(shí)內(nèi)部會鎖存EA 端狀態(tài)。如EA 端為高電平(接Vcc 端),CPU 則執(zhí)行內(nèi)部程序存儲器中的指令。Flash 存儲器編程時(shí),該引腳加上+12v 的編程允許電源Vpp,當(dāng)然這必須是該器件使用12v 編程電壓Vpp。XTAL1:振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生器的輸入端。XTAL2:振蕩器反相放大器的輸出端。89C51 中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1 和XTAL2分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反饋元件的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見圖5。外接石英晶體或陶瓷諧振器及電容CC2 接在放大器的反饋回路中構(gòu)成并聯(lián)振蕩電路。對電容CC2 雖沒有十分嚴(yán)格的要求,但電容容量的大小會輕微影響振蕩頻率的高低、振蕩器工作的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30Pf177。10 Pf,而如使用陶瓷諧振器建議選擇40Pf177。10Pf。用戶也可以采用外部時(shí)鐘。這種情況下,外部時(shí)鐘脈沖接到XTAL1 端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端XTAL2 則懸空。掉電模式:在掉電模式下,振蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM 和特殊功能寄存器的內(nèi)容在終止掉電模式前被凍結(jié)。推出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能寄存器但不改變RAM 中的內(nèi)容,在Vcc 恢復(fù)到正常工作電平前,復(fù)位應(yīng)無效,且必須保持一定時(shí)間以使振蕩器重啟動(dòng)并穩(wěn)定工作。89C51 的程序存儲器陣列是采用字節(jié)寫入方式編程的,每次寫入一個(gè)字符,要對整個(gè)芯片的EPROM 程序存儲器寫入一個(gè)非空字節(jié),必須使用片擦除的方法將整個(gè)存儲器的內(nèi)容清楚。三、編程方法編程前,設(shè)置好地址、數(shù)據(jù)及控制信號,編程單元的地址加在P1 口和P2 —(11 位地址范圍為0000H——0FFFH),數(shù)據(jù)從P0口輸入,、 、 的電平設(shè)置見表6,PSEB 為低電平,RST保持高電平,EA/Vpp 引腳是編程電源的輸入端,按要求加上編程電壓,ALE/PROG引腳輸入編程脈沖(負(fù)脈沖)。編程時(shí),可采用4—20MHz 的時(shí)鐘振蕩器,89C51 編程方法如下:在地址線上加上要編程單元的地址信號在數(shù)據(jù)線上加上要寫入的數(shù)據(jù)字節(jié)。激活相應(yīng)的控制信號。在高電壓編程方式時(shí),將EA/Vpp 端加上+12v 編程電壓。每對Flash 存儲陣列寫入一個(gè)字節(jié)或每寫入一個(gè)程序加密位,加上一個(gè)ALE/PROG 編程脈沖。改變編程單元的地址和寫入的數(shù)據(jù),重復(fù)1—5 步驟,知道全部文件編程結(jié)束。每個(gè)字節(jié)寫入周期是自身定時(shí)的。數(shù)據(jù)查詢89C51 單片機(jī)用數(shù)據(jù)查詢方式來檢測一個(gè)寫周期是否結(jié)束,在一個(gè)寫周期中,如需要讀取最后寫入的那個(gè)字節(jié),則讀出的數(shù)據(jù)的最高位()是原來寫入字節(jié)的最高位的反碼。寫周期開始后,可在任意時(shí)刻進(jìn)行數(shù)據(jù)查詢。Ready/Busy:字節(jié)編程的進(jìn)度可通過Ready/Busy 輸出信號檢測,編程期間,ALE 變?yōu)楦唠娖健癏”(Ready/Busy)端被拉低,表示正在編程狀態(tài)(忙狀態(tài))。編程完成后, 變?yōu)楦唠娖奖硎緶?zhǔn)備就緒狀態(tài)。程序校驗(yàn):如果加密位LB、LB2 沒有進(jìn)行編程,則代碼數(shù)據(jù)可通過地址和數(shù)據(jù)線讀回原編寫的數(shù)據(jù),采用下圖的電路,程序存儲器的地址由P1 口和P2 — 輸入,數(shù)據(jù)由P0 口讀出,PSEN 保持低電平,ALE、EA 和RST 保持高電平。校驗(yàn)時(shí),P0 口必須接上10k 左右的上拉電阻。圖317 編程電路 圖318 校驗(yàn)電路芯片擦除:利用控制信號的正確組合并保持ALE/PROG 引腳10ms 的低電平脈沖寬度即可將EPROM 陣列(4k 字節(jié))和三個(gè)加密位整片擦除,代碼陣列在片擦除操作中將任何非空單元寫入”1”,這步驟需在編程之前進(jìn)行。讀片內(nèi)簽名字節(jié):89C51 單片機(jī)內(nèi)有3 個(gè)簽名字節(jié),地址為030H、031H 和032H。于聲明該器件的廠商、號和編程電壓。讀簽名字節(jié)的過程和單元030H、031H 和032H的正常校驗(yàn)相仿, 保持低電平,返回值意義如下:(030H) = 1EH 聲明產(chǎn)品由ATMEL 公司制造。(031H) = 51H 聲明為89C51 單片機(jī)。(032H) = FFH 聲明為12V 編程電壓。(032H) = 05H 聲明為5 編程電壓。編程接口:采用控制信號的正確組合可對Flash 閃速存儲陣列中的每一代碼字節(jié)進(jìn)行寫入和存儲器的整片擦除,寫操作周期是自身定時(shí)的,初始化后它將自動(dòng)定時(shí)到操作完成。微機(jī)接口實(shí)現(xiàn)兩種信息形式的交換。在計(jì)算機(jī)之外,由電子系統(tǒng)所處理的信息以一種物理信號形式存在,但在程序中,它是用數(shù)字表示的。任一接口的功能都可分為以某種形式進(jìn)行數(shù)據(jù)庫變換的一些操作,所以外部和內(nèi)部形式的轉(zhuǎn)換是由許多步驟完成的。模擬數(shù)字轉(zhuǎn)換器(ADC)用來將連續(xù)變化信號變成相應(yīng)的數(shù)字量,這數(shù)字量可是可能性的二進(jìn)制數(shù)值中的一固定值。如果傳感器輸出不是連續(xù)變化的,就不需模擬數(shù)字轉(zhuǎn)換。這種情況下,信號調(diào)理單元必須將輸入信號變換成為另一信號,也可直接與接口的下一部分,即微計(jì)算機(jī)本身的輸入輸出單元相連接。輸出接口采用相似的形式,明顯的差別在于信息流的方向相反;是從程序到外部世界。這種情況下,程序可稱為輸出程序,它監(jiān)督接口的操作并完成數(shù)字模擬轉(zhuǎn)換器(DAC)所需數(shù)字的標(biāo)定。該子程序依次送出信息給輸出器件,產(chǎn)生相應(yīng)的電信號,由DAC 轉(zhuǎn)換成模擬形式。最后,信號經(jīng)調(diào)理(通常是放大)以形成適應(yīng)于執(zhí)行器操作的形式。在微機(jī)電路中使用的信號幾乎總是太小而不能被直接地連到“外部世界”,因而必須用某種形式將其轉(zhuǎn)換成更適宜的形式。接口電路部分的設(shè)計(jì)是使用微機(jī)的工程師所面臨最重要的任務(wù)之一。我們已經(jīng)了解到微機(jī)中,信號以離散的位形式表示。當(dāng)微機(jī)要與只有打開或關(guān)閉操作的設(shè)備相連時(shí),這種數(shù)字形式是最有用的,這里每一位都可表示一開關(guān)或執(zhí)行器的狀態(tài)。為了解決實(shí)際問題,一個(gè)單片機(jī)不僅包括CPU,程序和數(shù)據(jù)存儲器,另外,它必須含有通過CPU 訪問外部信息的硬件。一旦CPU 收集到數(shù)據(jù)信息和流程,它必須能夠改變外部領(lǐng)域的一部分,這些硬件設(shè)備稱作外圍設(shè)備,它們是CPU 通往外部的窗口。單片機(jī)可利用外圍設(shè)備中最基本的用于一般用途的I/O 接口,每個(gè)I/O 接口既可作為輸入端又可作為輸出端,每個(gè)I/O 接口的功能取決與程序初始化階段對數(shù)據(jù)方位寄存器相應(yīng)位進(jìn)行置一和清零操作,通過CPU 指令對數(shù)據(jù)寄存器相應(yīng)位進(jìn)行置一和清零來置一和清零輸出端口,同樣輸入端口邏輯位也可以通過CPU 指令訪問。一些類型的串行口單元允許CPU 與外部設(shè)備進(jìn)行串口通信,用串口位代替平行位進(jìn)行通信需要少許的I/O 口,這樣使通信費(fèi)用降低但速度也相對慢些。串口傳送可以同步也可以異步。 工作方式它的工作方式可以分做復(fù)位,掉電和低功耗方式等。一、 復(fù)位方式當(dāng)MCS5l系列單片機(jī)的復(fù)位引腳RST(全稱RESET)出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。如果RST持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。 根據(jù)應(yīng)用的要求,復(fù)位操作通常有兩種基本形式:上電復(fù)位和上電或開關(guān)復(fù)位。上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位操作。常用的上電復(fù)位電路如圖 (318a)中左圖所示。圖中電容C1和電阻R1對電源十5V來說構(gòu)成微分電路。上電后,保持RST一段高電平時(shí)間,由于單片機(jī)內(nèi)的等效電阻的作用,不用圖中電阻R1,也能達(dá)到上電復(fù)位的操作功能,如圖 (319a)中所示。上電或開關(guān)復(fù)位要求電源接通后,單片機(jī)自動(dòng)復(fù)位,并且在單片機(jī)運(yùn)行期間,用開關(guān)操作也能使單片機(jī)復(fù)位。常用的上電或開關(guān)復(fù)位電路如圖 (319b)所示。上電后,由于電容C3的充電和反相門的作用,使RST持續(xù)一段時(shí)間的高電平。當(dāng)單片機(jī)已在運(yùn)行當(dāng)中時(shí),按下復(fù)位鍵K后松開,也能使RST為一段時(shí)間的高電平,從而實(shí)現(xiàn)上電或開關(guān)復(fù)位的操作。 根據(jù)實(shí)際操作的經(jīng)驗(yàn),下面給出這兩種復(fù)位電路的電容、電阻參考值。 圖319 單片機(jī)的復(fù)位電路 圖(318a)中:Cl=1030uF,R1=1kO 圖(318b)中:C:=1uF,Rl=lkO,R2=10kO 二、掉電和低功耗方式人們往往在程序運(yùn)行中系統(tǒng)發(fā)生掉電的故障,使RAM和寄存器中的數(shù)據(jù)內(nèi)容丟失,使人們丟失珍貴的數(shù)據(jù)而束手無策,AT89C51有掉電保護(hù),是先把有用的數(shù)據(jù)保存,再用備用電源進(jìn)行供電。 數(shù)據(jù)存儲器的掉電保護(hù)單片機(jī)系統(tǒng)內(nèi)的RAM數(shù)據(jù)是非常容易丟失的,特別是一些珍貴的科研數(shù)據(jù),一旦丟失后果不堪設(shè)想,因此掉電保護(hù)是必須要做的,一旦電源發(fā)生掉電現(xiàn)象,在掉電的瞬間系統(tǒng)能自動(dòng)保護(hù)RAM中的數(shù)據(jù)和系統(tǒng)的運(yùn)行狀態(tài),當(dāng)電源恢復(fù)正常供電后能恢復(fù)到掉電前的工作狀態(tài)。 系統(tǒng)時(shí)鐘的設(shè)計(jì)時(shí)鐘電路是用來產(chǎn)生AT89C51單片機(jī)工作時(shí)所必須的時(shí)鐘信號,AT89C51本身就是一個(gè)復(fù)雜的同步時(shí)序電路,為保證工作方式的實(shí)現(xiàn),AT89C51在唯一的時(shí)鐘信號的控制下嚴(yán)格的按時(shí)序執(zhí)行指令進(jìn)行工作 ,時(shí)鐘的頻率影響單片機(jī)的速度和穩(wěn)定性。通常時(shí)鐘由于兩種形式:內(nèi)部時(shí)鐘和外部時(shí)鐘。我們系統(tǒng)采用內(nèi)部時(shí)鐘方式來為系統(tǒng)提供時(shí)鐘信號,如圖320。AT89C51內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反向放大器,該放大器的輸入輸出引腳為XTAL1和XTAL2,它們跨接在晶體振蕩器和用于微調(diào)的電容,便構(gòu)成了一個(gè)自激勵(lì)振蕩器電路中的CC2的選擇在30PF左右,但電容太小會影響振蕩的頻率、穩(wěn)定性和快速性?!?2MHZ之間,頻率越高單片機(jī)的速度就越快,但對存儲器速度要求就高。為了提高穩(wěn)定性我們采用溫度穩(wěn)定性好的NPO電容,采用的晶振頻率為12MHZ。 圖320 系統(tǒng)時(shí)鐘 顯示與報(bào)警的設(shè)計(jì) 顯示電路 在單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)中,一般都是把鍵盤和顯示器放在一起考慮。本設(shè)計(jì)是利用AT89C51的串行口實(shí)現(xiàn)鍵盤/顯示器接口。 當(dāng)AT89C51的串行口未作它用時(shí),使用AT89C51的串行口來外擴(kuò)鍵盤/顯示器。應(yīng)用AT89C51的串行口方式0的輸出方式,在串行口外接移位寄存器74LS164,構(gòu)成鍵盤/顯示器接口,其硬件接口電路如圖321所示:圖321 鍵盤及顯示與主機(jī)的硬件連接圖中的4個(gè)74LS164:74LS164(0)~74LS164(3)作為8位段碼輸出口,74LS164的QA~QH作為鍵輸入線。這種靜態(tài)顯示方式亮度大,很容易作到顯示不閃爍。靜態(tài)顯示的優(yōu)點(diǎn)是CPU不必頻繁的為顯示服務(wù),因而主程序可不必掃描顯示器,軟件設(shè)計(jì)比較簡單,從而使單片機(jī)有更多的時(shí)間處理其他事務(wù)。 報(bào)警電路在微型計(jì)算機(jī)控制系統(tǒng)中,為了安全生產(chǎn),對于一些重要的參數(shù)或系統(tǒng)部位,都設(shè)有緊急狀態(tài)報(bào)警系統(tǒng),以便提醒操作人員注意,或采取緊急措施。其方法就是把計(jì)算機(jī)采集的數(shù)據(jù)或記過計(jì)算機(jī)進(jìn)行數(shù)據(jù)處理、數(shù)字濾波,標(biāo)度變換之后,與該參數(shù)上下限給定值進(jìn)行比較,如果高于上限值(或低于下限值)則進(jìn)行報(bào)警,否則就作為采樣的正常值,進(jìn)行顯示和控制。本設(shè)計(jì)采用峰鳴音報(bào)警電路。峰鳴音報(bào)警接口電路的設(shè)計(jì)只需購買市售的壓電式蜂鳴器,然后通過MCS51的1根口線經(jīng)驅(qū)動(dòng)器驅(qū)動(dòng)蜂鳴音發(fā)聲。壓電式蜂鳴器約需10mA的驅(qū)動(dòng)電流,可以使用TTL系列集成電路7406或7407低電平驅(qū)動(dòng),也可以用一個(gè)晶體三極管驅(qū)動(dòng)。在圖中?!?”時(shí),晶體管導(dǎo)通,壓電蜂鳴器兩端獲得約+5V電壓而鳴叫;“0”時(shí),三極管截止,蜂鳴器停止發(fā)聲。 圖322是一個(gè)簡單的使用三極管驅(qū)動(dòng)的峰鳴音報(bào)警電路: 圖322 三極管驅(qū)動(dòng)的峰鳴音報(bào)警電路本設(shè)計(jì)是為在溫濕度測量中對溫濕度的上下限超出是的提示報(bào)警,但溫濕度過限時(shí),本系統(tǒng)開始工作。第4章 軟件設(shè)計(jì)溫度控制主程序的設(shè)計(jì)應(yīng)考慮以下問題:(1)鍵盤掃描、鍵碼識別和溫度顯示;(2)溫濕度采樣,數(shù)字濾波;(3)越限報(bào)警和處理;(5)溫度標(biāo)度轉(zhuǎn)換。通常,符合上述功能的溫度控制程序由主程序和T0中斷服務(wù)程序兩部分組成。在該軟件系統(tǒng)中,定時(shí)器T0為工作方
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1