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

正文內(nèi)容

基于51單片機(jī)的五篇論文(編輯修改稿)

2025-07-25 01:47 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 因發(fā)熱而燒毀,但不能正常工作。DS18B20 采用 3 腳 PR—35 封裝或8腳 SOIC 封裝,其內(nèi)部結(jié)構(gòu)框圖如圖 所示。64 位 ROM 的位結(jié)構(gòu)如圖 所示。開(kāi)始 8 位是產(chǎn)品類(lèi)型的編號(hào),接著是每個(gè)器件的唯一的序號(hào),共有 48 位,最后 8 位是前面 56 位的 CRC 檢驗(yàn)碼,這也是多個(gè) DS18B20 可以采用一線進(jìn)行通信的原因。非易失性溫度報(bào)警觸發(fā)器 TH 和 TL,可通過(guò)軟件寫(xiě)入戶報(bào)警上下限。DS18B20 溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)調(diào)整暫存 RAM 和一個(gè)易失性的可電擦除的EERAM。高速暫存 RAM 的結(jié)構(gòu)為 8 字節(jié)存儲(chǔ)器,結(jié)構(gòu)如圖 所示。頭 2 個(gè)字節(jié)包含測(cè)得的溫度信息,第 3 和第 4 節(jié)是 TH 和 TL 的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第 5 個(gè)字節(jié)為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20 工作時(shí)按此寄存器中的分辨率將溫度轉(zhuǎn)換為相應(yīng)64 位ROM 和單線接口圖 內(nèi)部結(jié)構(gòu)圖存儲(chǔ)器與控制邏輯高速緩存溫度傳感器高溫觸發(fā)器 TH低溫觸發(fā)器 TL配置寄存器8 位 CRC 發(fā)生器 I/OCVDD8 位檢驗(yàn) CRC 48 位序列號(hào) 8 位工廠代碼(10H) MSB LSB MSB LSB MSB LSB 圖 64 位 ROM 結(jié)構(gòu)圖溫度 LSB溫度 MSBTH 用戶字節(jié) 1TL 用戶字節(jié) 2 TH 用戶字節(jié) 1配置寄存器 TL 用戶字節(jié) 2保留保留保留CRC1 字節(jié)2 字節(jié)3 字節(jié)4 字節(jié)5 字節(jié)6 字節(jié)7 字節(jié)8 字節(jié)9 字節(jié)圖 高速暫存 RAM 結(jié)構(gòu)圖精度的數(shù)值。該字節(jié)各位的定義如圖 所示。低 5 位一直 1,M 是測(cè)試模式位,用于設(shè)置DS18B20 在工作模式還是在測(cè)試模式。在 DS18B20 出廠時(shí)該位被設(shè)置為 0,用戶不要去改動(dòng),R1 和R0 決定溫度轉(zhuǎn)換的精度位數(shù),即用來(lái)設(shè)置分辨率,定義方法見(jiàn)表 。由表 可見(jiàn),DS18B20 溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且設(shè)定的分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間就越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存 RAM 的第 8 字節(jié)保留未用,表現(xiàn)為全邏輯 1。第 9 字節(jié)讀出前面所有 8 字節(jié)的CRC 碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng) DS18B20 接收到溫度轉(zhuǎn)換命令后,開(kāi)始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以 16 位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第 2 字節(jié)。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),EEROM讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以 176。C/LSB 形式表示。溫度值格式如圖 所示。TM R1 R0 1 1 1 1 1圖 配置寄存器表 DS18B20 分辨率的定義規(guī)定R1 R0 分辨率/位 測(cè)量最大轉(zhuǎn)換時(shí)間/ms0 0 9 0 1 10 1 0 11 3751 1 12 750表 DS18B20 溫度與測(cè)得值對(duì)應(yīng)表溫度/ 176。C 二進(jìn)制表示 十六進(jìn)制表示+125 0000 0111 1101 0000 07D0H+85 0000 0101 0101 0000 0550H+ 0000 0001 1001 0001 0191H+ 0000 0000 1010 0010 00A2H+ 0000 0000 0000 1000 0008H0 0000 0000 0000 0000 0000H 1111 1111 1111 1000 FFF8H 1111 1111 0101 1110 FF5EH 1111 1110 0110 1111 FE6FH55 1111 1100 1001 0000 FC90H23 22 21 20 21 22 23 24S S S S S S6 S5 S4 圖 溫度數(shù)字值格式LS 字節(jié)MS 字節(jié)預(yù)置計(jì)數(shù)器 1 減法計(jì)數(shù)器1低溫度系數(shù)振蕩器減到 0減法計(jì)數(shù)器 2預(yù)置溫度寄存器減到 0高溫度系數(shù)振蕩器斜率累加器計(jì)數(shù)比較器增加圖 DS18B20 測(cè)溫原理圖停止當(dāng)符號(hào)位 S=0 時(shí),表現(xiàn)測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制,當(dāng)符號(hào)位S=1 時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼再計(jì)算十進(jìn)制值。表 是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。DS18B20 完成溫度轉(zhuǎn)換后,把測(cè)得的溫度值與 RAM 中的 TH、TL 字節(jié)內(nèi)容作比較。若 TTH 或TTL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只DS18B20 同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。在 64 位 ROM 的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(CRC) 。主機(jī)根據(jù) ROM 的前 56 位來(lái)計(jì)算CRC 值,并和存入 DS18B20 的 CRC 作比較,以判斷主機(jī)收到的 ROM 數(shù)據(jù)是否正確。DS18B20 的測(cè)溫原理如圖 所示。圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2 的脈沖輸入。圖中還隱含著計(jì)數(shù)門(mén),當(dāng)計(jì)算門(mén)打開(kāi)時(shí),DS18B20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門(mén)的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將55176。C 所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器 溫度寄存器中,減法計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在55176。C 所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器 1 對(duì)低溫系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器 1 的預(yù)置值減到 0時(shí),溫度寄存的值將加 1,減法計(jì)數(shù)器 1 的預(yù)置值將重新被裝入,減法計(jì)數(shù)器 1 重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。圖 中的斜率累加器用于補(bǔ)償和修正測(cè)溫過(guò)程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門(mén)未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值達(dá)到被測(cè)溫度值。另外,由于 DS18B20 單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)隙概念,因此讀寫(xiě)時(shí)序很重要。系統(tǒng)對(duì) DS18B20 的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化 DS18B20(發(fā)復(fù)位脈沖) 發(fā)ROM 功能指令 發(fā)存儲(chǔ)器操作命令 處理數(shù)據(jù)。 DS18B20 與單片機(jī)的接口電路DS18B20 可以采用兩種方式供電,一種是采用電源供電方式,此時(shí) DS18B20 的 1 腳接地,2 腳作為引線,3 腳接電源。另一種是寄生電源供電方式。單片機(jī)端口接單線總線,為保證在有效的DS18B20 時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè) MOSFET 管來(lái)完成對(duì)總線的上拉。當(dāng) DS18B20 處于寫(xiě)存儲(chǔ)器操作和溫度 A/D 轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為 10us。采用寄生電源供電方式時(shí) VDD和 GND 端均接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 顯示電路的設(shè)計(jì)顯示部分采用普通的共陽(yáng)數(shù)碼管顯示,采用動(dòng)態(tài)掃描,以減少硬件電路??紤]到第一次掃描17 位數(shù)碼管顯示時(shí)會(huì)出現(xiàn)閃爍情況,設(shè)計(jì)時(shí) 17 個(gè)數(shù)碼管分 3 排同時(shí)掃描。第一排 8 個(gè)數(shù)碼管分別為千年、百年、十年、年、十月、月、十日、日,第二排 7 個(gè)數(shù)碼管分別為十時(shí)、時(shí)、十分、分、十秒、秒,第三排 3 個(gè)數(shù)碼管分別為星期、溫度(兩位)顯示。顯示時(shí)采用串行口輸出段碼,用 1片 74LS164 來(lái)驅(qū)動(dòng) 3 排數(shù)碼管,這樣掃描一次只需 7ms。表 74LS164 特性表操作模式 輸 入 輸 出復(fù) 位 MR A B Q0 Q1~Q7L L Q0~Q6H L L L Q0~Q6H L H L Q0~Q6H H L L Q0~Q6移 位H H H H Q0~Q674LS164 內(nèi)部為 8 個(gè) D 觸發(fā)器,用以實(shí)現(xiàn)數(shù)據(jù)的串行移位,74LS164 特性見(jiàn)表 。單片機(jī)以串口方式 0(移位寄存器方式)輸出數(shù)據(jù),3 片 74LS164 作為 3 排共陽(yáng)數(shù)碼管的串/并轉(zhuǎn)換顯示接口。74LS164 為 TTl 單向 8 位移位寄存器,可實(shí)現(xiàn)串行輸入,并行輸出。其中 A、B(第 2 腳)為串行數(shù)據(jù)輸入端,2 個(gè)引腳按邏輯“與”運(yùn)算規(guī)律輸入信號(hào),共一個(gè)輸入信號(hào)時(shí)可并接,共同作為輸入腳。CP(第 8 腳)為時(shí)鐘輸入端,可連接到串行口的 TXD 端。每一個(gè)時(shí)鐘信號(hào)的上升沿加到 CP端時(shí),移位寄存器移一位。8 個(gè)時(shí)鐘脈沖過(guò)后,8 位二進(jìn)制數(shù)全部移入 74LS164 中。MR 腳(第 9 腳)為復(fù)位端,當(dāng)該腳為低電平時(shí),移位寄存器各位復(fù) 0;只有當(dāng)它高電平時(shí),時(shí)鐘脈沖才起作用。Q1~Q8(第 3~6 和 10~13 引腳)并行輸出端分別接數(shù)碼管的 h~a(因?yàn)榇趶牡臀婚_(kāi)始傳送)各段對(duì)應(yīng)的引腳上。在給出了 8 個(gè)脈沖后,最先進(jìn)入 74LS164 的第一個(gè)字節(jié)數(shù)據(jù)到達(dá)了最高位。再來(lái)1 個(gè)脈沖,第 1 個(gè)脈沖就會(huì)從最高位移出,進(jìn)入下個(gè) 74LS164 的第 1 位。3 片 74LS164 首尾相串,而時(shí)鐘端則接在一起。這樣,當(dāng)輸入 8 個(gè)脈沖時(shí),從單片機(jī) RXD 端輸出的第 1 字節(jié)數(shù)據(jù)就進(jìn)入了第1 片 74LS164 中,而當(dāng)?shù)?2 個(gè) 8 個(gè)脈沖到來(lái)后,第 1 字節(jié)數(shù)據(jù)就進(jìn)入了第 2 片 74LS164,而隨后的第 2 字節(jié)的數(shù)據(jù)則進(jìn)入了第 1 片 74LS164。這樣,當(dāng)?shù)?3 個(gè) 8 個(gè)脈沖完成后,首次送出的數(shù)據(jù)被送到了最下面的 164(第 3 片)中,其它數(shù)據(jù)依次出現(xiàn)在第二和第一片 74LS164 中,實(shí)現(xiàn)了數(shù)據(jù)在74LS164 中的串行輸入、并行輸出。在方式 0 狀態(tài)下,串行口為同步移位寄存器方式,其波特率是固定的,為 fosc/12。數(shù)據(jù)由RXD()端輸入或輸出,同步移位脈沖由 TXD()端輸出。發(fā)送、接收數(shù)據(jù)時(shí)低位在先。所以根據(jù)提供的硬件電路圖,在編寫(xiě)程序時(shí),查共陽(yáng)數(shù)碼管的段碼的二進(jìn)制數(shù)據(jù)應(yīng)該將正常的共陽(yáng)數(shù)據(jù)管 0~9 的二進(jìn)制值按位反序排序,如原來(lái)的二進(jìn)制為 11000000(C0H) ,要改為 00000011(03H) ,就能使數(shù)碼管正常顯示。 鍵盤(pán)接口的設(shè)計(jì)由于按鍵只有 5 個(gè),用普通按鈕接 10K 上拉電阻,用查詢法完成讀鍵功能。5 系統(tǒng)程序的設(shè)計(jì) 陽(yáng)歷程序設(shè)計(jì)因?yàn)槭褂昧藭r(shí)鐘芯片 DS1302,陽(yáng)歷程序只需從 DS1302 各寄存器中讀出年、周、月、日、[小]時(shí)、分、秒等數(shù)據(jù),再處理即可。在首次對(duì) DS1302 進(jìn)行操作之前,必須對(duì)它進(jìn)行初始化,然后從DS1302 中讀出數(shù)據(jù),再經(jīng)過(guò)處理后,送給顯示緩沖單元。陽(yáng)歷程序流程圖見(jiàn)圖 所示。初始化 13021302 開(kāi)始振蕩從 1302 中讀出年、周、月、日、[小]時(shí)、分、秒開(kāi) 始讀出的數(shù)據(jù)都為BCD 碼,將其高低位分離送顯示緩沖單元圖 陽(yáng)歷程序流程 時(shí)間調(diào)整程序設(shè)計(jì)調(diào)整時(shí)間用 5 個(gè)調(diào)整按鈕,1 個(gè)作為移位、控制用,2 個(gè)作為加和減用,還有 2 個(gè)作為鬧鐘調(diào)整使用,分別定義為控制按鈕、加按鈕、減按鈕、鬧鐘加按紐、鬧鐘減按紐。在調(diào)整時(shí)間過(guò)程中,要調(diào)整的位與別的位應(yīng)該有區(qū)別。所以增加了閃爍功能,即調(diào)整的位一直在閃爍,直到調(diào)整下一位。閃爍原理就是,讓要調(diào)整的一位每隔一定時(shí)間熄滅一次,比如說(shuō) 50ms。利用定時(shí)器計(jì)時(shí),當(dāng)達(dá)到50ms 溢出時(shí),就送給該位熄滅符,在下一次溢出時(shí),再送正常顯示的值,不斷交替,直到調(diào)整該位結(jié)束。此時(shí)送正常顯示值給該位,再進(jìn)入下一位調(diào)整閃爍程序。時(shí)間調(diào)整程序流程圖如圖 所示。 溫度程序設(shè)計(jì)系統(tǒng)程序主要包括主程序、讀出溫度子程序、溫度轉(zhuǎn)換命令子程序、計(jì)算溫度子程序、顯示數(shù)據(jù)刷新子程序等等。 主程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理 DS18B20 的測(cè)量溫度值,溫度測(cè)量每1s 進(jìn)行一次。其程序流程圖見(jiàn) 。 讀出溫度子程序主要功能是讀出 RAM 中的 9 字節(jié),在讀出時(shí)需進(jìn)行 CRC 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫(xiě)。其程序流程圖如圖 所示。 溫度轉(zhuǎn)換命令子程序溫度轉(zhuǎn)換子程序主要是發(fā)溫度轉(zhuǎn)換開(kāi)始命令,當(dāng)采用 12 位分辨率時(shí)轉(zhuǎn)換時(shí)間約為 750ms,在本程序設(shè)計(jì)中采用 1s 顯示程序延時(shí)法等待轉(zhuǎn)換的完成。溫度轉(zhuǎn)換命令子程序流程圖如圖 所示。等待按鍵程序減鍵有效年減 1控制鍵有效,進(jìn)入年調(diào)整程序員加鍵有效年加 1等待按鍵程序減鍵有效日減 1控制鍵有效,進(jìn)入日調(diào)整程序員加鍵有效日加 1等待按鍵程序減鍵有效[小] 時(shí)減 1控制鍵有效,進(jìn)入[小]時(shí)調(diào)整程序員加鍵有效[小] 時(shí)加 1等待按鍵程序減鍵有效月減 1控制鍵有效,進(jìn)入月調(diào)整程序員加鍵有效月加 1等待按鍵程序減鍵有效星期減 1控制鍵有效,進(jìn)入星期調(diào)整程序員加鍵有效星期加 1等待按鍵程序減鍵有效分減 1控制鍵有效,進(jìn)入分調(diào)整程序員加鍵有效分加 1控制鍵有效,跳出時(shí)間調(diào)整程序,進(jìn)入主循環(huán)程序圖 時(shí)間調(diào)整程序程序流程圖  初始化調(diào)用顯示子程序1S 到?初次上電?讀出溫度值溫度計(jì)算處理顯
點(diǎn)擊復(fù)制文檔內(nèi)容
物理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1