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

正文內(nèi)容

基于單片機(jī)的乳化物干燥過(guò)程控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)(編輯修改稿)

2025-07-24 19:23 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 I/O口P2口緩沖器可接收輸
出4個(gè)TTL門電流當(dāng)P2口被寫“1”時(shí)其管腳被內(nèi)部上拉電阻拉高且作為輸
入。并因此作為輸入時(shí)P2口的管腳被外部拉低將輸出電流。這是由于內(nèi)部上
拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí)
P2口輸出地址的高八位。在給出地址“1”時(shí)它利用內(nèi)部上拉優(yōu)勢(shì)當(dāng)對(duì)外部八
位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí)P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH
編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。
P3口P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口可接收輸出4個(gè)TTL
門電流。當(dāng)P3口寫入“1”后它們被內(nèi)部上拉為高電平并用作輸入。作為輸入
由于外部下拉為低電平P3口將輸出電流ILL這是由于上拉的緣故。 P3口也
可作為AT89C51的一些特殊功能口如下表所示口管腳備選功能: RXD串
行輸入口、 TXD串行輸出口、 /INT0外部中斷0、 /INT1外
部中斷1
、 T0記時(shí)器0外部輸入、 T1記時(shí)器1外部輸入、 /WR
外部數(shù)據(jù)存儲(chǔ)器寫選通、 /RD外部數(shù)據(jù)存儲(chǔ)器讀選通P3口同時(shí)為閃
爍編程和編程校驗(yàn)接收一些控制信號(hào)。
RST復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí)要保持RST腳兩個(gè)機(jī)器周期的高電平
時(shí)間[10]。
ALE/PROG當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí)地址鎖存允許的輸出電平用于鎖存地址的
地位字節(jié)。在FLASH編程期間此引腳用于輸入編程脈沖。在平時(shí)ALE端以不變
的頻率周期輸出正脈沖信號(hào)此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸
出的脈沖或用于定時(shí)目的。然而要注意的是每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)
一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí) ALE只有在
執(zhí)行MOVXMOVC指令是ALE才起作用。另外該引腳被略微拉高。如果微處理器
在外部執(zhí)行狀態(tài)ALE禁止置位無(wú)效。
/PSEN外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間每個(gè)機(jī)
器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)這兩次有效的/PSEN信號(hào)將
不出現(xiàn)。 本頁(yè)完 第 17 頁(yè) 共 53 頁(yè) /EA/VPP當(dāng)/EA保持低電平時(shí)則在此期間外部程序存儲(chǔ)器0000HFFFFH
不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí)/EA將內(nèi)部鎖定為RESET當(dāng)/EA
端保持高電平時(shí)此間內(nèi)部程序存儲(chǔ)器。在FLASH編程期間此引腳也用于施加
12V編程電源VPP。

XTAL1反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。
XTAL2來(lái)自反向振蕩器的輸出。
振蕩器特性: XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大
器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)
器件XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器因此對(duì)
外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求但必須保證脈沖的高低電平要求的寬度。

芯片擦除整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組
合并保持ALE管腳處于低電平10ms 來(lái)完成。在芯片擦操作中代碼陣列全被寫
“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前該操作必須被執(zhí)行。 此外AT89C51
設(shè)有穩(wěn)態(tài)邏輯可以在低到零頻率的條件下靜態(tài)邏輯支持兩種軟件可選的掉電模
式。在閑置模式下CPU停止工作。但RAM定時(shí)器計(jì)數(shù)器串口和中斷系統(tǒng)仍
在工作。在掉電模式下保存RAM的內(nèi)容并且凍結(jié)振蕩器禁止所用其他芯片功能
直到下一個(gè)硬件復(fù)位為止。 串口通訊 單片機(jī)的結(jié)構(gòu)和特殊寄存器這是你編寫
軟件的關(guān)鍵。至于串口通信需要用到那些特殊功能寄存器呢它們是SCONTCON
TMODSCON等各代表什么含義呢SBUF數(shù)據(jù)緩沖寄存器這是一個(gè)可以直接尋址
的串行口專用寄存器。有朋友這樣問(wèn)起過(guò)“為何在串行口收發(fā)中都只是使用到同
一個(gè)寄存器SBUF而不是收發(fā)各用一個(gè)寄存器。”實(shí)際上SBUF 包含了兩個(gè)獨(dú)立的
寄存器一個(gè)是發(fā)送寄存另一個(gè)是接收寄存器但它們都共同使用同一個(gè)尋址地
址99H。CPU 在讀SBUF 時(shí)會(huì)指到接收寄存器在寫時(shí)會(huì)指到發(fā)送寄存器而且
接收寄存器是雙緩沖寄存器這樣可以避免接收中斷沒有及時(shí)的被響應(yīng)數(shù)據(jù)沒有
被取走下一幀數(shù)據(jù)已到來(lái)而造成的數(shù)據(jù)重疊問(wèn)題。發(fā)送器則不需要用到雙緩沖
一般情況下我們?cè)趯懓l(fā)送程序時(shí)也不必用到發(fā)送中斷去外理發(fā)送數(shù)據(jù)。操作SBUF
寄存器的方法則很簡(jiǎn)單只要把這個(gè)99H 地址用關(guān)鍵字sfr定義為一個(gè)變量就可以
對(duì)其進(jìn)行讀寫操作了如sfr SBUF = 0x99。當(dāng)然你也可以用其它的名稱。通常在
等頭文件中已對(duì)其做了定義只要用include 第 18 頁(yè) 共 53 頁(yè) 就可以了。SCON串行口控制寄存器通常在芯片或設(shè)備中為了監(jiān)視或控制接口狀態(tài)
都會(huì)引用到接口控制寄存器。SCON 就是51芯片的串行口控制寄存器。它的尋址地
址是98H是一個(gè)可以位尋址的寄存器作用就是監(jiān)視和控制51芯片串行口的工作
狀態(tài)。51 芯片的串口可以工作在幾個(gè)不同的工作模式下其工作模式的設(shè)置就是
使用SCON 寄存器。它的各個(gè)位的具體定義如下串行口工作模式設(shè)置位這樣兩
位可以對(duì)應(yīng)進(jìn)行四種模式的設(shè)置。串行口工作模式設(shè)置SM0 、SMSMREN 、
TB8 、RBTI、RI 、SM0、SM1。
在這里只說(shuō)明最常用的模式1其它的模式也就一一略過(guò)有興趣的朋友可以
找相關(guān)的硬件資料查看。表中的fosc 代表振蕩器的頻率也就是晶振的頻率。UART
為(Universal Asynchronous Receiver的英文縮寫。
SM2 在模式模式3 中為多處理機(jī)通信使能位。在模式0 中要求該位為0。
REM 為允許接收位REM 置1 時(shí)串口允許接收置0 時(shí)禁止接收。REM 是由
軟件置位或清零。, 都和上位機(jī)相連
在軟件上有串口中斷處理程序當(dāng)要求在處理某個(gè)子程序時(shí)不允許串口被上位機(jī)來(lái)
的控制字符產(chǎn)生中斷那么可以在這個(gè)子程序的開始處加入REM=0 來(lái)禁止接收
在子程序結(jié)束處加入REM=1 再次打開串口接收。大家也可以用上面的實(shí)際源碼加
入REM=0 來(lái)進(jìn)行實(shí)驗(yàn)。
TB8 發(fā)送數(shù)據(jù)位8在模式2 和3 是要發(fā)送的第9 位。該位可以用軟件根據(jù)
需要置位或清除通常這位在通信協(xié)議中做奇偶位在多處理機(jī)通信中這一位則用
于表示是地址幀還是數(shù)據(jù)幀[11]。
RB8 接收數(shù)據(jù)位8
在模式2 和3 是已接收數(shù)據(jù)的第9 位。該位可能是奇偶
位地址/數(shù)據(jù)標(biāo)識(shí)位。在模式0 中RB8 為保留位沒有被使用。在模式1 中當(dāng)
SM2=0RB8 是已接收數(shù)據(jù)的停止位。
TI 發(fā)送中斷標(biāo)識(shí)位。在模式0發(fā)送完第8 位數(shù)據(jù)時(shí)由硬件置位。其它模
式中則是在發(fā)送停止位之初由硬件置位。TI 置位后申請(qǐng)中斷CPU 響應(yīng)中斷
后發(fā)送下一幀數(shù)據(jù)。在任何模式下TI 都必須由軟件來(lái)清除也就是說(shuō)在數(shù)據(jù)
寫入到SBUF 后硬件發(fā)送數(shù)據(jù)中斷響應(yīng)如中斷打開這時(shí)TI=1表明發(fā)送
已完成TI 不會(huì)由硬件清除所以這時(shí)必須用軟件對(duì)其清零。
RI 接收中斷標(biāo)識(shí)位。在模式0接收第8 位結(jié)束時(shí)由硬件置位。 第 19 頁(yè) 共 53 頁(yè) 中則是在接收停止位的半中間由硬件置位。RI=1申請(qǐng)中斷要求CPU 取走數(shù)
據(jù)。但在模式1 中SM2=1時(shí)當(dāng)未收到有效的停止位則不會(huì)對(duì)RI 置位。同樣
RI 也必須要靠軟件清除。常用的串口模式1 是傳輸10 個(gè)位的1 位起始位為0,8
位數(shù)據(jù)位低位在先1 位停止位為1。它的波特率是可變的其速率是取決于定
時(shí)器1 或定時(shí)器2 的定時(shí)值溢出速率。AT89C51 和AT89C2051 等51 系列芯片
只有兩個(gè)定時(shí)器定時(shí)器0 和定時(shí)器1而定時(shí)器2是89C52 系列芯片才有的[12]。
波特率在使用串口做通訊時(shí)一個(gè)很重要的參數(shù)就是波特率只有上下位機(jī)的
波特率一樣時(shí)才可以進(jìn)行正常通訊。波特率是指串行端口每秒內(nèi)可以傳輸?shù)牟ㄌ匚?br />數(shù)。有一些初學(xué)的朋友認(rèn)為波特率是指每秒傳輸?shù)淖止?jié)數(shù)如標(biāo)準(zhǔn)9600 會(huì)被誤認(rèn)
為每秒種可以傳送9600個(gè)字節(jié)而實(shí)際上它是指每秒可以傳送9600 個(gè)二進(jìn)位
而一個(gè)字節(jié)要8 個(gè)二進(jìn)位如用串口模式1 來(lái)傳輸那么加上起始位和停止位每
個(gè)數(shù)據(jù)字節(jié)就要占用10 個(gè)二進(jìn)位9600 波特率用模式1 傳輸時(shí)每秒傳輸?shù)淖?br />節(jié)數(shù)是9600247。10960 字節(jié)。51 芯片的串口工作模式0的波特率是固定的為
fosc/12以一個(gè)12M 的晶振來(lái)計(jì)算那么它的波特率可以達(dá)到1M。模式2 的波
特率是固定在fosc/64 或fosc/32具體用那一種就取決于PCON 寄存器中的SMOD
位如SMOD 為0波特率為focs/64,SMOD為1波特率為focs/32。模式1和模
式3 的波特率是可變的取決于定時(shí)器1 或252芯片的溢出速率。那么我們
怎么去計(jì)算這兩個(gè)模 式的波特率設(shè)置時(shí)相關(guān)的寄存器的值呢可以用以下的公式
去計(jì)算
波特率2SMOD247。32定時(shí)器1 溢出速率
上式中如設(shè)置了PCON 寄存器中的SMOD 位為1 時(shí)就可以把波特率提升2 倍。
通常會(huì)使用定時(shí)器1 工作在定時(shí)器工作模式2 下這時(shí)定時(shí)值中的TL1 做為計(jì)數(shù)
TH1 做為自動(dòng)重裝值 這個(gè)定時(shí)模式下定時(shí)器溢出后TH1 的值會(huì)自動(dòng)裝載到
TL1再次開始計(jì)數(shù)這樣可以不用軟件去干預(yù)使得定時(shí)更準(zhǔn)確。在這個(gè)定時(shí)模
式2 下定時(shí)器1 溢出速率的計(jì)算公式如下
溢出速率計(jì)數(shù)速率/(256TH1)
上式中的“計(jì)數(shù)速率”與所使用的晶體振蕩器頻率有關(guān)在51 芯片中定時(shí)器
啟動(dòng)后會(huì)在每一個(gè)機(jī)器周期使定時(shí)寄存器TH 的值增加一一個(gè)機(jī)器周期等于十二
個(gè)振蕩周期所以可以得知51 芯片的計(jì)數(shù)速率為晶體振蕩器頻率的1/12 第 20 頁(yè) 共 53 頁(yè) 12M 的晶振用在51 芯片上那么51 的計(jì)數(shù)速率就為1M。 晶體
是為了得到標(biāo)準(zhǔn)的無(wú)誤差的波特率那么為何呢計(jì)算一下就知道了。如我們要得
到9600 的波特率 和12M定時(shí)器1 為模式2SMOD 設(shè)為1
分別看看那所要求的TH1 為何值代入公式
9600(2247。32)(()/(256TH1))
TH1250
9600(2247。32)((12M/12)/(256TH1))
TH1≈

上面的計(jì)算可以看出使用12M 晶體的時(shí)候計(jì)算出來(lái)的TH1 不為整數(shù)而TH1 的
值只能取整數(shù)這樣它就會(huì)有一定的誤差存在不能產(chǎn)生精確的9600 波特率。當(dāng)然
一定的誤差是可以在使用中被接受的 的晶體振蕩器也會(huì)因晶
體本身所存在的誤差使波特率產(chǎn)生誤差但晶體本身的誤差對(duì)波特率的影響是十分
之小的可以忽略不計(jì)[13]。
所以選用AT89C51單片機(jī)是很好的選擇。
74HC245芯片的選定
74HC245是總線驅(qū)動(dòng)器典型的TTL型三態(tài)緩沖門電路。
由于單片機(jī)等CPU的數(shù)據(jù)地址控制總線端口都有一定的負(fù)載能力如果負(fù)
載超過(guò)其負(fù)載能力一般應(yīng)加驅(qū)動(dòng)器。雙向數(shù)據(jù)8位總線接口加強(qiáng)驅(qū)動(dòng)能力。另
外也可以使用74HC244等其他電路74HC244比74HC245多了鎖存器。
它的實(shí)物圖如下

圖33 芯片74HC245實(shí)物圖
74HC245的作用信號(hào)功率放大它在本設(shè)計(jì)中起到信號(hào)功率放大的作用
同時(shí)也為單片機(jī)在大負(fù)荷時(shí)能夠增大單片機(jī)的驅(qū)動(dòng)能力 第 21 頁(yè) 共 53 頁(yè) 處理信號(hào)等問(wèn)題[14]。
它的管腳圖如下:

圖34 74HC245的管腳
它的引腳的定義
第1腳DIR為輸入輸出端口轉(zhuǎn)換用DIR=“1”高電平時(shí)信號(hào)由“A”端輸入“B”
端輸出DIR=“0”低電平時(shí)信號(hào)由“B”端輸入“A”端輸出。

第2~9腳“A”信號(hào)輸入輸出端A1=B、A8=B8A1與B1是一組如果DIR=
“1”O(jiān)E=“0”則A1輸入B1輸出其它類同。如果DIR=“0”O(jiān)E=“0”則B1輸入
A1輸出其它類同。
第11~18腳“B”信號(hào)輸入輸出端功能與“A”端一樣不再描述。
第19腳OE使能端若該腳為“1”A/B端的信號(hào)將不導(dǎo)通只有為“0”時(shí)A/B
端才被啟用該腳也就是起到開關(guān)的作用。
第10腳GND電源地。
第20腳VCC電源正極。
溫度采集硬件的選擇
圖35 是DS18B20 數(shù)字溫度傳感器的元件圖本頁(yè)完 第 22 頁(yè) 共 53 頁(yè)
圖35 DS18B20 數(shù)字溫度傳感器
DS18B20數(shù)字溫度傳感器芯片具有耐磨耐碰體積小使用方便封裝形式多
樣適用于各種狹小空間設(shè)備數(shù)字測(cè)溫和控制領(lǐng)域。
技術(shù)性能描述
DS18B20的主要特性
1、適應(yīng)電壓范圍更寬電壓范圍在寄生電源方式下可由數(shù) 據(jù)線
供電
2、獨(dú)特的單線
點(diǎn)擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1