




已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第一部分溫度的顯示與控制系統(tǒng)設(shè)計(jì)摘要本設(shè)計(jì)通過51單片機(jī)控制DS18B20芯片采集溫度,并對(duì)采集溫度進(jìn)行分析,隨后51單片機(jī)對(duì)不同溫度范圍進(jìn)行判斷并做出相應(yīng)的措施,以此實(shí)現(xiàn)了一個(gè)溫度檢測(cè)與控制系統(tǒng),本設(shè)計(jì)的一個(gè)創(chuàng)新就是可以通過矩陣鍵盤對(duì)所需正常溫度進(jìn)行自由設(shè)置,增加本設(shè)計(jì)系統(tǒng)的靈活性。此外,本設(shè)計(jì)都是采用C語言編寫的。仿真軟件PROTEUS與KEILVISION2開發(fā)環(huán)境介紹11、PR0TEUS軟件介紹(一)、該軟件的特點(diǎn)1、全部滿足我們提出的單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn),并在同類產(chǎn)品中具有明顯的優(yōu)勢(shì)。2、具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。3、目前支持的單片機(jī)類型有68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。支持大量的存儲(chǔ)器和外圍芯片。總之,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大,是其他任何一款軟件不能相比的。(二)、ISIS智能原理圖輸入系統(tǒng)ISIS是PREOTEUS系統(tǒng)的中心,具有控制原理圖畫圖的超強(qiáng)的設(shè)計(jì)環(huán)境。ISIS有以下特性1、出版質(zhì)量的原理圖ISIS提供給用戶圖形外觀,包括線寬、填充類型、字符等的全部控制,使用尸能夠生成如雜志上看到的精美的原理圖,畫完圖可以以圖形文件輸出,畫圖的外形由風(fēng)格模板定義。2、良好的用戶界面ISIS有一個(gè)無連線方式,用戶只需單擊元件的引腳或者先前布好的線,就能實(shí)現(xiàn)布線此外,擺放、編輯、移動(dòng)和刪除操作能夠直接用鼠標(biāo)實(shí)現(xiàn)無需去單擊菜單或圖標(biāo)。3自動(dòng)走線只要單擊想要連接的兩個(gè)引腳,就能簡單地實(shí)現(xiàn)走線。在特殊的位置需要布線時(shí),使用者只需在中間的角落單擊。自動(dòng)走線也能在元件移動(dòng)的時(shí)候操作,自動(dòng)解決相應(yīng)連線。節(jié)點(diǎn)能夠自動(dòng)布置和移除。既節(jié)約了時(shí)間,又避免了其他可能的錯(cuò)誤。4層次設(shè)計(jì)ISIS支持層次圖設(shè)計(jì),模塊可畫成標(biāo)準(zhǔn)元件,特殊的元件能夠定義為通過電路圖表示的模塊,能夠任意設(shè)定層次,模塊可畫成標(biāo)準(zhǔn)元件,在使用中可放置和刪除端口的子電路模塊。5、總線支持ISIS提供的不僅是一根總線,還能用總線引腳定義元件和子電路。因此,一個(gè)連線在處理器和存儲(chǔ)器之間的32位的處理器總線可以用單一的線表示,節(jié)省繪圖的時(shí)間和空間。6元件庫ISIS的元件庫包含8000個(gè)元件,有標(biāo)準(zhǔn)符號(hào)、三極管、二極管、熱離子管、TTLCMOS、ECL、微處理器,以及存儲(chǔ)器元件、PLD、模擬IC和運(yùn)算放大器。7可視封裝工具原理圖和PCB庫元件的匹配是由封裝工具簡化的。在原理圖部分的引腳旁邊將顯示PCB的封裝,并允許每個(gè)引腳名對(duì)應(yīng)文本和圖形的引腳號(hào)碼。8復(fù)合元件ISIS的元件庫表達(dá)方式有很多種,無論是單個(gè)元件、同態(tài)復(fù)合元件、異態(tài)復(fù)合元件,還是連接器,都可以在原理圖上以獨(dú)立引腳來表達(dá),不用所有線都連到一個(gè)獨(dú)立元件上。9、元件特性設(shè)計(jì)中的每個(gè)元件都有一定數(shù)日的屬性或特性。某些特性控制軟件的特定功能如PCB封裝或仿真用戶也可以添加自己的特性。一旦庫建立,就能提供默認(rèn)值及特性定義。特性定義提供大量的特性描述,當(dāng)修改元件時(shí),將顯示在編輯區(qū)域內(nèi)。10、報(bào)告ISIS支持許多第三方網(wǎng)表格式,因此能為其他軟件所使使用設(shè)置元件清單后可以添加用戶所需的元件屬性,也可設(shè)置屬性列以挑選一定數(shù)目的屬性。ERC報(bào)告可列出可能的連線錯(cuò)誤,如末連接的輸入、矛盾的輸出及未標(biāo)注的網(wǎng)絡(luò)標(biāo)號(hào)。(三)、PROTEUS6PROFESSIONAL界面簡介安裝完P(guān)ROTEUS后,運(yùn)行ISIS6PROFESSIONAL,會(huì)出現(xiàn)以下窗口界面1原理圖編輯窗口(THEEDITINGWINDOW)顧名思義,它是用來繪制原理圖的。藍(lán)色方框內(nèi)為可編輯區(qū),元件要放到它里面。注意,這個(gè)窗口是沒有滾動(dòng)條的,你可用預(yù)覽窗口來改變?cè)韴D的可視范圍。2預(yù)覽窗口(THEOVERVIEWWINDOW)它可顯示兩個(gè)內(nèi)容,一個(gè)是當(dāng)你在元件列表中選擇一個(gè)元件時(shí),它會(huì)顯示該元件的預(yù)覽圖;另一個(gè)是,當(dāng)你的鼠標(biāo)焦點(diǎn)落在原理圖編輯窗口時(shí)(即放置元件到原理圖編輯窗口后或在原理圖編輯窗口中點(diǎn)擊鼠標(biāo)后),它會(huì)顯示整張?jiān)韴D的縮略圖,并會(huì)顯示一個(gè)綠色的方框,綠色的方框里面的內(nèi)容就是當(dāng)前原理圖窗口中顯示的內(nèi)容,因此,你可用鼠標(biāo)在它上面點(diǎn)擊來改變綠色的方框的位置,從而改變?cè)韴D的可視范圍。3模型選擇工具欄(MODESELECTORTOOLBAR)主要模型(MAINMODES)1選擇元件(COMPONENTS)(默認(rèn)選擇的)2放置連接點(diǎn)3放置標(biāo)簽(用總線時(shí)會(huì)用到)4放置文本5用于繪制總線6用于放置子電路7用于即時(shí)編輯元件參數(shù)(先單擊該圖標(biāo)再單擊要修改的元件配件(GADGETS)1終端接口(TERMINALS)有VCC、地、輸出、輸入等接口2器件引腳用于繪制各種引腳3仿真圖表(GRAPH)用于各種分析,如NOISEANALYSIS4錄音機(jī)5信號(hào)發(fā)生器(GENERATORS)6電壓探針使用仿真圖表時(shí)要用到7電流探針使用仿真圖表時(shí)要用到8虛擬儀表有示波器等2D圖形(2DGRAPHICS)1畫各種直線2畫各種方框3畫各種圓4畫各種圓弧5畫各種多邊形6畫各種文本7畫符號(hào)8畫原點(diǎn)等4元件列表(THEOBJECTSELECTOR)用于挑選元件(COMPONENTS)、終端接口(TERMINALS)、信號(hào)發(fā)生器(GENERATORS)、仿真圖表(GRAPH)等。舉例,當(dāng)你選擇“元件(COMPONENTS)”,單擊“P”按鈕會(huì)打開挑選元件對(duì)話框,選擇了一個(gè)元件后(單擊了“OK”后),該元件會(huì)在元件列表中顯示,以后要用到該元件時(shí),只需在元件列表中選擇即可。5方向工具欄(ORIENTATIONTOOLBAR)旋轉(zhuǎn)旋轉(zhuǎn)角度只能是90的整數(shù)倍。翻轉(zhuǎn)完成水平翻轉(zhuǎn)和垂直翻轉(zhuǎn)。使用方法先右鍵單擊元件,再點(diǎn)擊(左擊)相應(yīng)的旋轉(zhuǎn)圖標(biāo)6仿真工具欄仿真控制按鈕1運(yùn)行2單步運(yùn)行3暫停4停止(四)、操作簡介1、繪制原理圖繪制原理圖要在原理圖編輯窗口中的藍(lán)色方框內(nèi)完成。原理圖編輯窗口的操作是不同于常用的WINDOWS應(yīng)用程序的,正確的操作是用左鍵放置元件;右鍵選擇元件;雙擊右鍵刪除元件;右鍵拖選多個(gè)元件;先右鍵后左鍵編輯元件屬性;先右鍵后左鍵拖動(dòng)元件;連線用左鍵,刪除用右鍵;改連接線先右擊連線,再左鍵拖動(dòng);中鍵放縮原理圖。2、定制自己的元件有三個(gè)個(gè)實(shí)現(xiàn)途徑,一是用PROTEUSVSMSDK開發(fā)仿真模型,并制作元件;另一個(gè)是在已有的元件基礎(chǔ)上進(jìn)行改造,比如把元件改為BUS接口的;還有一個(gè)是利用已制作好(別人的)的元件,我們可以到網(wǎng)上下載一些新元件并把它們添加到自己的元件庫里面。由于我沒有PROTEUSVSMSDK,所以我只介紹后兩個(gè)。3、SUBCIRCUITS應(yīng)用用一個(gè)子電路可以把部分電路封裝起來,這樣可以節(jié)省原理圖窗口的空間。12、KEILVISION2軟件介紹KEIL軟件是目前最流行開發(fā)MCS51系列單片機(jī)的軟件。KEIL提供包括C編譯器、宏匯編、連接器、庫管理和一個(gè)功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個(gè)集成開發(fā)環(huán)境VISIION2將這些部分組合在一起。KEILUVISION2是德國KEILSOFTWARE公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),使用接近于傳統(tǒng)C語言的語法來開發(fā),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢(shì),因而易學(xué)易用,而且大大的提高了工作效率和項(xiàng)目開發(fā)周期,他還能嵌入?yún)R編,您可以在關(guān)鍵的位置嵌入,使程序達(dá)到接近于匯編的工作效率。KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開發(fā)提供了C語言環(huán)境,同時(shí)保留了匯編代碼高效,快速的特點(diǎn)。C51編譯器的功能不斷增強(qiáng),使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到UVISION2的集成開發(fā)環(huán)境中,這個(gè)集成開發(fā)環(huán)境包含編譯器,匯編器,實(shí)時(shí)操作系統(tǒng),項(xiàng)目管理器,調(diào)試器。UVISION2IDE可為它們提供單一而靈活的開發(fā)環(huán)境。KEILC51軟件提供豐富的庫函數(shù)和功能強(qiáng)大的集成開發(fā)調(diào)試工具,全WINDOWS界面,使您能在很短的時(shí)間內(nèi)就能學(xué)會(huì)使用KEILC51來開發(fā)您的單片機(jī)應(yīng)用程序。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KEILC51生成的目標(biāo)代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語言的優(yōu)勢(shì)。二、設(shè)計(jì)基本原理本設(shè)計(jì)通過51單片機(jī)對(duì)DS18B20和LCD1602兩款外設(shè)芯片進(jìn)行驅(qū)動(dòng)與控制,以此來實(shí)現(xiàn)系統(tǒng)功能。、51單片機(jī)原理及管教功能1、簡介89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲(chǔ)器(FPEROMFLASHPROGRAMMABLEANDERASABLEREADONLYMEMORY)的低電壓、高性能CMOS8位微處理器,俗稱單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除100次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。2、結(jié)構(gòu)特點(diǎn)8位CPU;片內(nèi)振蕩器和時(shí)鐘電路;32根I/O線;外部存貯器尋址范圍ROM、RAM64K;2個(gè)16位的定時(shí)器/計(jì)數(shù)器;5個(gè)中斷源,兩個(gè)中斷優(yōu)先級(jí);全雙工串行口;布爾處理器;3、管腳說明VCC供電電壓。GND接地。P0口P0口為一個(gè)8位漏級(jí)開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被定義為數(shù)據(jù)/89C51引腳圖地址的低八位。在FIASH編程時(shí),P0口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。P1口P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為低八位地址接收。P2口P2口為一個(gè)內(nèi)部上拉電阻的8位雙向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的一些特殊功能口,如下表所示口管腳備選功能P30RXD(串行輸入口)P31TXD(串行輸出口)P32/INT0(外部中斷0)P33/INT1(外部中斷1)P34T0(記時(shí)器0外部輸入)P35T1(記時(shí)器1外部輸入)P36/WR(外部數(shù)據(jù)存儲(chǔ)器寫選通)P37/RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。RST復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。ALE/PROG當(dāng)訪問外部存儲(chǔ)器時(shí),地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時(shí),ALE端以不變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此它可用作對(duì)外部輸出的脈沖或用于定時(shí)目的。然而要注意的是每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí),ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。/PSEN外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。/EA/VPP當(dāng)/EA保持低電平時(shí),則在此期間為外部程序存儲(chǔ)器(0000HFFFFH),不管是否有內(nèi)部程序存儲(chǔ)器讀取外部ROM數(shù)據(jù)。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),單片機(jī)讀取內(nèi)部程序存儲(chǔ)器。(擴(kuò)展有外部ROM時(shí)讀取完內(nèi)部ROM后自動(dòng)讀取外部ROM)。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。XTAL1反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。XTAL2來自反向振蕩器的輸出。、DS18B20芯片讀寫原理1、特性獨(dú)特的一線接口,只需要一條口線通信,簡化了分布式溫度傳感應(yīng)用無需外部元件可用數(shù)據(jù)總線供電,電壓范圍為30V至55V無需備用電源測(cè)量溫度范圍為55C至125華氏相當(dāng)于是67F到257華氏度10C至85C范圍內(nèi)精度為05C。溫度傳感器可編程的分辨率為912位溫度轉(zhuǎn)換為12位數(shù)字格式最大值為750毫秒用戶可定義的非易失性溫度報(bào)警設(shè)置應(yīng)用范圍包括恒溫控制,工業(yè)系統(tǒng),消費(fèi)電子產(chǎn)品溫度計(jì),或任何熱敏感系統(tǒng)。2、引腳定義1、DQ為數(shù)字信號(hào)輸入/輸出端;2、GND為電源地;3、VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。3、DS18B20工作原理DS18B20的讀寫時(shí)序和測(cè)溫原理與DS1820相同,只是得到的溫度值的位數(shù)因分辨率不同而不同,且溫度轉(zhuǎn)換時(shí)的延時(shí)時(shí)間由2S減為750MS。低溫度系數(shù)晶振的振蕩頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給計(jì)數(shù)器1。高溫度系數(shù)晶振隨溫度變化其振蕩率明顯改變,所產(chǎn)生的信號(hào)作為計(jì)數(shù)器2的脈沖輸入。計(jì)數(shù)器1和溫度寄存器被預(yù)置在55所對(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重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到計(jì)數(shù)器2計(jì)數(shù)到0時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測(cè)溫度。斜率累加器用于補(bǔ)償和修正測(cè)溫過程中的非線性,其輸出用于修正計(jì)數(shù)器1的預(yù)置值。4、DS18B20有4個(gè)主要的數(shù)據(jù)部件光刻ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是開始8位(28H)是產(chǎn)品類型標(biāo)號(hào),接著的48位是該DS18B20自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRCX8X5X41)。光刻ROM的作用是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的。DS18B20中的溫度傳感器可完成對(duì)溫度的測(cè)量,以12位轉(zhuǎn)化為例用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以00625/LSB形式表達(dá),其中S為符號(hào)位。表1DS18B20溫度值格式表這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測(cè)得的溫度大于0,這5位為0,只要將測(cè)到的數(shù)值乘于00625即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘于00625即可得到實(shí)際溫度。例如125的數(shù)字輸出為07D0H,250625的數(shù)字輸出為0191H,250625的數(shù)字輸出為FF6FH,55的數(shù)字輸出為FC90H。表2DS18B20溫度數(shù)據(jù)表(3)DS18B20溫度傳感器的存儲(chǔ)器DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的EEPRAM,后者存放高溫度和低溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。(4)配置寄存器該字節(jié)各位的意義如下表3配置寄存器結(jié)構(gòu)TMR1R011111低五位一直都是“1“,TM是測(cè)試模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式。在DS18B20出廠時(shí)該位被設(shè)置為0,用戶不要去改動(dòng)。R1和R0用來設(shè)置分辨率,如下表所示(DS18B20出廠時(shí)被設(shè)置為12位)表4溫度分辨率設(shè)置表R1R0分辨率溫度最大轉(zhuǎn)換時(shí)間009位9375MS0110位1875MS1011位375MS1112位750MS4、高速暫存存儲(chǔ)器高速暫存存儲(chǔ)器由9個(gè)字節(jié)組成,其分配如表5所示。當(dāng)溫度轉(zhuǎn)換命令發(fā)布后,經(jīng)轉(zhuǎn)換所得的溫度值以二字節(jié)補(bǔ)碼形式存放在高速暫存存儲(chǔ)器的第0和第1個(gè)字節(jié)。單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前,高位在后,數(shù)據(jù)格式如表1所示。對(duì)應(yīng)的溫度計(jì)算當(dāng)符號(hào)位S0時(shí),直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)S1時(shí),先將補(bǔ)碼變?yōu)樵a,再計(jì)算十進(jìn)制值。表2是對(duì)應(yīng)的一部分溫度值。第九個(gè)字節(jié)是冗余檢驗(yàn)字節(jié)。表5DS18B20暫存寄存器分布寄存器內(nèi)容字節(jié)地址溫度值低位(LSBYTE)0溫度值高位(MSBYTE)1高溫限值(TH)2低溫限值(TL)3配置寄存器4保留5保留6保留7CRC校驗(yàn)值8根據(jù)DS18B20的通訊協(xié)議,主機(jī)(單片機(jī))控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過三個(gè)步驟每一次讀寫之前都要對(duì)DS18B20進(jìn)行復(fù)位操作,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,當(dāng)DS18B20收到信號(hào)后等待1660微秒左右,后發(fā)出60240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。表6ROM指令表指令約定代碼功能讀ROM33H讀DS1820溫度傳感器ROM中的編碼(即64位地址)符合ROM55H發(fā)出此命令之后,接著發(fā)出64位ROM編碼,訪問單總線上與該編碼相對(duì)應(yīng)的DS1820使之作出響應(yīng),為下一步對(duì)該DS1820的讀寫作準(zhǔn)備。搜索ROM0FOH用于確定掛接在同一總線上DS1820的個(gè)數(shù)和識(shí)別64位ROM地址。為操作各器件作好準(zhǔn)備。跳過ROM0CCH忽略64位ROM地址,直接向DS1820發(fā)溫度變換命令。適用于單片工作。告警搜索命令0ECH執(zhí)行后只有溫度超過設(shè)定值上限或下限的片子才做出響應(yīng)。表6RAM指令表指令約定代碼功能溫度變換44H啟動(dòng)DS1820進(jìn)行溫度轉(zhuǎn)換,12位轉(zhuǎn)換時(shí)最長為750MS(9位為9375MS)。結(jié)果存入內(nèi)部9字節(jié)RAM中。讀暫存器0BEH讀內(nèi)部RAM中9字節(jié)的內(nèi)容寫暫存器4EH發(fā)出向內(nèi)部RAM的3、4字節(jié)寫上、下限溫度數(shù)據(jù)命令,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù)。復(fù)制暫存器48H將RAM中第3、4字節(jié)的內(nèi)容復(fù)制到EEPROM中。重調(diào)EEPROM0B8H將EEPROM中內(nèi)容恢復(fù)到RAM中的第3、4字節(jié)。讀供電方式0B4H讀DS1820的供電模式。寄生供電時(shí)DS1820發(fā)送“0”,外接電源供電DS1820發(fā)送“1”。(三)、1602LCD特性5V電壓,對(duì)比度可調(diào)內(nèi)含復(fù)位電路提供各種控制命令,如清屏、字符閃爍、光標(biāo)閃爍、顯示移位等多種功能有80字節(jié)顯示數(shù)據(jù)存儲(chǔ)器DDRAM內(nèi)建有160個(gè)5X7點(diǎn)陣的字型的字符發(fā)生器CGROM8個(gè)可由用戶自定義的5X7的字符發(fā)生器CGRAM字符型LCD1602通常有14條引腳線或16條引腳線的LCD,多出來的2條線是背光電源線VCC15腳和地線GND16腳圖3、1602各引腳的定義HD44780內(nèi)置了DDRAM(顯示數(shù)據(jù)存儲(chǔ)RAM)、CGROM(字符存儲(chǔ)ROM)和CGRAM(用戶自定義RAM)。DDRAM就是顯示數(shù)據(jù)RAM,用來寄存待顯示的字符代碼。共80個(gè)字節(jié),其地址和屏幕的對(duì)應(yīng)關(guān)系如下表也就是說想要在LCD1602屏幕的第一行第一列顯示一個(gè)“A”字,就要向DDRAM的00H地址寫入“A”的代碼就行了。但具體的寫入是要按LCD模塊的指令格式來進(jìn)行的,后面我會(huì)講到的。一行有40個(gè)地址在1602中我們就用前16個(gè)就行了。第二行也一樣用前16個(gè)地址。對(duì)應(yīng)如下DDRAM地址與顯示位置的對(duì)應(yīng)關(guān)系1602液晶模塊內(nèi)部的字符發(fā)生存儲(chǔ)器(CGROM已經(jīng)存儲(chǔ)了160個(gè)不同的點(diǎn)陣字符圖形,如下表所示,這些字符有阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號(hào)、和日文假名等,每一個(gè)字符都有一個(gè)固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時(shí)模塊把地址41H中的點(diǎn)陣字符圖形顯示出來,我們就能看到字母“A”圖4、1602字符表上表中的字符代碼與我們PC中的字符代碼是基本一致的。因此我們?cè)谙駾DRAM寫C51字符代碼程序時(shí)甚至可以直接用P1A這樣的方法。PC在編譯時(shí)就把“A”先轉(zhuǎn)為41H代碼了。字符代碼0X000X0F為用戶自定義的字符圖形RAM對(duì)于5X8點(diǎn)陣的字符,可以存放8組,就是CGRAM了。對(duì)DDRAM的內(nèi)容和地址操作,HD44780的指令集及其設(shè)置說明,共有11條指令基本操作時(shí)序讀狀態(tài)輸入RSL,RWH,EH輸出DB0DB7狀態(tài)字寫指令輸入RSL,RWL,E下降沿脈沖,DB0DB7指令碼輸出無讀數(shù)據(jù)輸入RSH,RWH,EH輸出DB0DB7數(shù)據(jù)寫數(shù)據(jù)輸入RSH,RWL,E下降沿脈沖,DB0DB7數(shù)據(jù)輸出無1清屏指令功能清除液晶顯示器,即將DDRAM的內(nèi)容全部填入“空白”的字符碼20H光標(biāo)歸位,即將光標(biāo)撤回液晶顯示屏的左上方將地址計(jì)數(shù)器AC的值設(shè)為0。2光標(biāo)歸位指令功能把光標(biāo)撤回到顯示器的左上方把地址計(jì)數(shù)器AC的值設(shè)置為0保持DDRAM的內(nèi)容不變3輸入模式設(shè)置指令功能設(shè)定每次寫入1位數(shù)據(jù)后光標(biāo)的移位方向,并且設(shè)定每次寫入的一個(gè)字符是否移動(dòng)。參數(shù)設(shè)定的情況如下所示位名設(shè)置I/D0寫入新數(shù)據(jù)后光標(biāo)左移1寫入新數(shù)據(jù)后光標(biāo)右移S0寫入新數(shù)據(jù)后顯示屏不移動(dòng)1寫入新數(shù)據(jù)后顯示屏整體右移1個(gè)字4顯示開關(guān)控制指令功能控制顯示器開/關(guān)、光標(biāo)顯示/關(guān)閉以及光標(biāo)是否閃爍。參數(shù)設(shè)定的情況如下位名設(shè)置D0顯示功能關(guān)1顯示功能開C0無光標(biāo)1有光標(biāo)B0光標(biāo)不閃爍1光標(biāo)閃爍5設(shè)定顯示屏或光標(biāo)移動(dòng)方向指令功能使光標(biāo)移位或使整個(gè)顯示屏幕移位。參數(shù)設(shè)定的情況如下S/CR/L設(shè)定情況00光標(biāo)左移1格,且AC值減101光標(biāo)右移1格,且AC值加110顯示器上字符全部左移一格,但光標(biāo)不動(dòng)11顯示器上字符全部右移一格,但光標(biāo)不動(dòng)6功能設(shè)定指令功能設(shè)定數(shù)據(jù)總線位數(shù)、顯示的行數(shù)及字型。參數(shù)設(shè)定的情況如下位名設(shè)置DL0數(shù)據(jù)總線為4位1數(shù)據(jù)總線為8位N0顯示1行1顯示2行F057點(diǎn)陣/每字符1510點(diǎn)陣/每字符7設(shè)定CGRAM地址指令功能設(shè)定下一個(gè)要存入數(shù)據(jù)的CGRAM的地址。8設(shè)定DDRAM地址指令功能設(shè)定下一個(gè)要存入數(shù)據(jù)的CGRAM的地址。注意這里我們送地址的時(shí)候應(yīng)該是0X80ADDRESS,這也是前面說到寫地址命令的時(shí)候要加上0X80的原因9讀取忙信號(hào)或AC地址指令功能讀取忙碌信號(hào)BF的內(nèi)容,BF1表示液晶顯示器忙,暫時(shí)無法接收單片機(jī)送來的數(shù)據(jù)或指令當(dāng)BF0時(shí),液晶顯示器可以接收單片機(jī)送來的數(shù)據(jù)或指令讀取地址計(jì)數(shù)器AC的內(nèi)容。10數(shù)據(jù)寫入DDRAM或CGRAM指令功能將字符碼寫入DDRAM,以使液晶顯示屏顯示出相對(duì)應(yīng)的字符將用戶自己設(shè)計(jì)的圖形存入CGRAM。11從CGRAM或DDRAM讀出數(shù)據(jù)的指令功能讀取DDRAM或CGRAM中的內(nèi)容。基本操作時(shí)序讀狀態(tài)輸入RSL,RWH,EH輸出DB0DB7狀態(tài)字寫指令輸入RSL,RWL,E下降沿脈沖,DB0DB7指令碼輸出無讀數(shù)據(jù)輸入RSH,RWH,EH輸出DB0DB7數(shù)據(jù)寫數(shù)據(jù)輸入RSH,RWL,E下降沿脈沖,DB0DB7數(shù)據(jù)輸出無三、實(shí)訓(xùn)成果系統(tǒng)設(shè)計(jì)原理圖(2)、流程圖開始是否設(shè)置正常溫度范圍采用溫度否初始化或者已設(shè)置范圍是設(shè)置最大溫度值MAX設(shè)置最小溫度值MIN采集當(dāng)前溫度NUM并在LCD顯示NUMMAX電機(jī)轉(zhuǎn)動(dòng)、高溫?zé)羰情W爍、蜂鳴器報(bào)警否NUMINCLUDE/包含_NOP_函數(shù)定義的頭文件DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTUCHARCODEDIGIT“0123456789“/定義字符數(shù)組顯示數(shù)字及正負(fù)號(hào)UCHARCODETABLE1“CURRENTTEMPERATURE“UCHARCODETABLE2“CENT“UCHARCODETABLE3“HIGH“UCHARCODETABLE4“LOW“SBITLCDENP07/定義LCD使能位SBITLCDRSP06/定義LCD的RS位SBITMOTORP30/定義電機(jī)驅(qū)動(dòng)位SBITLAMPP31/定義加熱燈驅(qū)動(dòng)位SBITDQP36/定義DS18B20的數(shù)據(jù)位SBITLED1P05/定義高溫指示燈驅(qū)動(dòng)位SBITLED2P02/定義正常指示燈驅(qū)動(dòng)位SBITLED3P01/定義低溫指示燈驅(qū)動(dòng)位SBITBUZZERP03UCHARTIME,FLAG,FLAG1,FLAG2,FLAG3,FLAG4,FLAG5,FLAG6,FLAG7,NUM,I2UINTTEMP,NUM1VOLATILEUINTNUMT,NUMT1,NUMT2CHARNUMHIGH,NUMLOW/定義高溫度,低溫度VOIDDELAYUINTZ/粗略延時(shí)子程序UINTX,YFORXZX0XFORY10Y0YVOIDDELAY1MS/1毫秒延時(shí)子程序UNSIGNEDINTI,JFORI0I1IFDQ1DAT|0X80/如果讀到的數(shù)據(jù)是1,則將1存入DATELSEDAT|0X00/如果讀到的數(shù)據(jù)是0,則將0存入DAT/將單片
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 毛里求斯協(xié)議書
- 創(chuàng)設(shè)和諧教育環(huán)境的學(xué)校幼兒園教研計(jì)劃
- 道路通行協(xié)議書模板
- 車房裝修協(xié)議書范本
- 民宿包場(chǎng)協(xié)議書
- 河里取土協(xié)議書
- 演員合同協(xié)議書
- 業(yè)務(wù)承攬合同與業(yè)務(wù)行為規(guī)范承諾書
- 鄉(xiāng)村集體經(jīng)濟(jì)合作協(xié)議
- 建筑業(yè)農(nóng)民工勞動(dòng)合同書
- 合資公司成立可行性研究報(bào)告范文
- 2025年中國電子產(chǎn)品租賃行業(yè)市場(chǎng)占有率及投資前景預(yù)測(cè)分析報(bào)告
- 2025年中國亮白防蛀固齒牙膏市場(chǎng)調(diào)查研究報(bào)告
- 上甘嶺戰(zhàn)役課件
- 黑龍江省齊齊哈爾市普高聯(lián)誼校2022-2023學(xué)年高一下學(xué)期語文期末試卷(含答案)
- 名家班主任培訓(xùn):AI賦能與德育創(chuàng)新
- 工程師評(píng)審代辦合同協(xié)議
- 心力衰竭試題及答案
- 公安治安管理培訓(xùn)
- 湖北省武漢市2025屆高中畢業(yè)生四月調(diào)研考試物理試題及答案(武漢四調(diào))
- 珠寶并購策略優(yōu)化-全面剖析
評(píng)論
0/150
提交評(píng)論