微機原理與應用課程設計基于單片機的四位數(shù)字溫度計_第1頁
微機原理與應用課程設計基于單片機的四位數(shù)字溫度計_第2頁
微機原理與應用課程設計基于單片機的四位數(shù)字溫度計_第3頁
微機原理與應用課程設計基于單片機的四位數(shù)字溫度計_第4頁
微機原理與應用課程設計基于單片機的四位數(shù)字溫度計_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、課 程 設 計課程名稱 微機原理與應用 課題名稱 基于單片機的四位數(shù)字溫度計設計 專 業(yè) 班 級 學 號 姓 名 指導教師 2011年6月7日課 程 設 計 任 務 書課程名稱 微機原理與應用 課 題 數(shù)字溫度計的設計 專業(yè)班級 學生姓名 學 號 指導老師 審 批 任務書下達日期 2011年6月7日任務完成日期 2011年6月18日設計內容與設計要求設計內容:以51系列單片機為核心,以開發(fā)板為平臺;設計一個數(shù)字式溫度計,要求使用溫度傳感器ds18b20測量溫度,再經(jīng)單片機處理后,由led數(shù)碼管顯示測量的溫度值。測溫范圍為0100,精度誤差在0.5以內;并要求焊接好開發(fā)板,在開發(fā)板上進行調試。設

2、計要求:1)確定系統(tǒng)設計方案; 2)進行系統(tǒng)的硬件設計;3)完成必要元器件選擇;4)開發(fā)板焊接及測試5)系統(tǒng)軟件設計及調試;6)系統(tǒng)聯(lián)調及操作說明7)寫說明書主 要 設 計 條 件1、 mcs-51單片機實驗操作臺1臺;2、 pc機及單片機調試軟件,仿真軟件proteus;3、 開發(fā)板1塊; 4、 制作工具1套;5、系統(tǒng)設計所需的元器件。說 明 書 格 式目 錄第1章、概述第2章、系統(tǒng)總體方案設計第3章 硬件設計第4章 開發(fā)板焊接及其測試第5章 軟件設計及調試第6章 系統(tǒng)聯(lián)調及操作說明第7章 總結參考文獻 附錄a 系統(tǒng)硬件原理圖附錄b 程序清單進 度 安 排設計時間分為二周第一周星期一、上午:

3、布置課題任務,課題介紹及講課。下午:借閱有關資料,總體方案討論。星期二、分班級焊接開發(fā)板星期三、確定總體方案,學習與設計相關內容。星期四、各部分方案設計,各部分設計。星期五、設計及上機調試。星期六、設計并調試第二周星期一:設計及上機調試。星期二:調試,中期檢查。星期三:調試、寫說明書。星期四-星期五上午:寫說明書、完成電子版并打印成稿。星期五下午:答辯。參 考 文 獻參考文獻1、 王迎旭編.單片機原理與應用m.機械工業(yè)出版社.2004.2、 樓然苗編.51系列單片機設計實例m.北京航空航天大學出版社.3、 黃勤編.計算機硬件技術基礎實驗教程m.重慶大學出版社4、劉樂善編.微型計算機接口技術及應

4、用m.華中科技大學出版社.5、陳光東編.單片微型計算機原理及接口技術m.華中科技大學出版社.目 錄第1章 概述6第2章 系統(tǒng)總體方案設計6第3章 硬件設計第4章 開發(fā)板焊接及其測試第5章 軟件設計及調試第6章 系統(tǒng)聯(lián)調及操作說明第7章 總結參考文獻 附錄a 程序清單第1章 概述隨著人們生活水平的不斷提高,單片機控制無疑是人們追求的目標之一,它所給人帶來的方便也是不可否定的,其中數(shù)字溫度計就是一個典型的例子,但人們對它的要求越來越高,要為現(xiàn)代人工作、科研、生活、提供更好的更方便的設施就需要從數(shù)單片機技術入手,一切向著數(shù)字化控制,智能化控制方向發(fā)展。本設計所介紹的數(shù)字溫度計與傳統(tǒng)的溫度計相比,具有

5、讀數(shù)方便,測溫范圍廣,測溫準確,其輸出溫度采用數(shù)字顯示,主要用于對測溫比較準確的場所,或科研實驗室使用,該設計控制器使用單片機at89s52,測溫傳感器使用ds18b20,用4位共陽極led數(shù)碼管以并口傳送數(shù)據(jù),實現(xiàn)溫度顯示,能準確達到以上要求。第2章 系統(tǒng)總體方案設計1.1設計思路根據(jù)任務書要求,初步思路如下:溫度計電路設計總體設計方框圖如圖1所示,控制器采用單片機at89s51,溫度傳感器采用ds18b20,用4位led數(shù)碼管以并口循環(huán)點亮數(shù)碼管實現(xiàn)溫度顯示。主 控 制 器led顯 示溫 度 傳 感 器單片機復位時鐘振蕩報警點按鍵調整其中,1)p0.0至p0.7口連四個數(shù)碼管的a,b,c,

6、d,e,f,g,dp口2)p2.0, p2.1, p2.2, p2.3分別作為四個數(shù)碼管的片選端。3)p2.4口連溫度傳感器ds18b20的串行數(shù)據(jù)口。2.2硬件電路的設計方案 設計的電路主要由3個部分構成:stc89c52rc單片機最小系統(tǒng)、led液晶顯示模塊及溫度測量模塊。如下圖: 第3章 硬件設計3.1 stc89c52rc單片機最小系統(tǒng)最小系統(tǒng)包括晶體振蕩電路、復位開關和電源部分。圖2為stc89c52rc單片機的最小系統(tǒng)。 圖 3-13.2 溫度測量模塊溫度測量傳感器采用dallas公司ds18b20的單總線數(shù)字化溫度傳感器,測溫范圍為-55125,可編程為9位12位a/d轉換精度,

7、測溫分辨率達到0.0625,采用寄生電源工作方式,cpu用p2.4口與ds18b20通信,占用cpu口線少,可節(jié)省大量引線和邏輯電路。接口電路下所示: 圖 3-23.2.1 ds18b20原理(1) ds18b20單線智能溫度傳感器的性能特點ds18b20溫度傳感器是美國dallas半導體公司最近推出的一種改進型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測溫元件相比,它能直接讀出被測溫度,并且可根據(jù)實際要求通過簡單的編程實現(xiàn)9-12位的數(shù)字值讀數(shù)方式。它采用3腳pr35封裝(2) ds18b20單線智能溫度傳感器的工作原理64位rom的位結構如圖36 所示。開始8位是產(chǎn)品類型的編號,接著是每個器件的惟

8、一的序號,共有48位,最后8位是前面56位的crc檢驗碼,可以多個 ds18b20可以采用一線進行通信。非易失性溫度報警觸發(fā)器th和tl,可通過軟件寫入戶報警上下限。ds18b20溫度傳感器的內部存儲器還包括一個高速暫存ram和一個非易失性的可電擦除的eepram。高速暫存ram的結構為8字節(jié)的存儲器,結構如下圖所示: 圖3-2-1-1 高速暫存ram結構圖頭2個字節(jié)包含測得的溫度信息,第3和第4字節(jié)是th和tl的拷貝,是易失的,每次上電復位時被刷新。第5個字節(jié)為配置寄存器,它的內容用于確定溫度值的數(shù)字轉換分辨率。ds18b20工作時按此寄存器中的分辨率將溫度轉換為相應精度的數(shù)值,該字節(jié)的r1

9、和r0決定溫度轉換的精度位數(shù),即用來設置分辨率。ds18b20溫度轉換時間比較長,而且設定的分辨率越高,所需要的溫度數(shù)據(jù)轉換時間就越長。高速暫存ram的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的crc碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當ds18b20接收到溫度轉換命令后,開始啟動轉換。轉換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第1、2字節(jié)。單片機可以通過單總線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,數(shù)據(jù)格式以0.0625/lsb形式表示當符號位s=0時,表示測得的溫度值為正值,可以直接將二進制轉換為十進制;當符號位s

10、=1時,表示測得的溫度值為負值,要先將補碼變成原碼,再計算十進制值。下表是一溫度值對應的二進制溫度數(shù)據(jù): 圖3-2-1-2 3.3 led液晶顯示模塊:led液晶顯示模塊由四個七段發(fā)光二極管(led)數(shù)碼管構成,采用共陽接法,把發(fā)光二極管的陽極都連在一起接到高電平上。通過編程實現(xiàn)逐個點亮各個數(shù)碼管。其接線如下所示: 圖3-4第4章 開發(fā)板焊接及其測試焊接整體電路,要提前進行布局,對于復雜的電路焊接過程也要非常認真細致,如果布局不合理在后序的工作中將很繁瑣,而且影響外觀。焊接是基本功,在線多的時候體現(xiàn)的更突出,焊接不好會造成短路等問題,在畢業(yè)設計過程中,我的焊接技術有了很大的進步,知道了很多需要

11、注意的細節(jié),對今后的工作很有幫助。 第5章 軟件設計及調試 5.1 主程序流程圖主程序的主要功能是負責溫度的實際顯示、讀數(shù)并處理ds18b20的測量溫度值,溫度測量循環(huán)不斷進行,其流程圖如下:18b20復位程序設定18b20暫存器設定值讀轉換后溫度值讀出的溫度進行數(shù)據(jù)轉換 圖5-1 5.2設定ds18b20暫存器設定值ds18b20子程序是結合它的用戶使用資料編寫,主要完成的是初始化ds18b20,從ds18b20中讀出一個字節(jié)的數(shù)據(jù),向ds18b20中寫入一個字節(jié)的數(shù)據(jù),配置ds18b20包括警報溫度的上限和下限、溫度轉換的精度。flag=1y發(fā)跳過rom命令寫ds18b20寫暫存器命令寫報

12、警上下限選擇十二位精度結束n圖5-25.3 讀轉換后的溫度當ds18b20接收到溫度轉換命令后,開始啟動轉換。轉換完成后的溫度值就以16位帶符號擴展的二進制補碼形式存儲在高速暫存存儲器的第、字節(jié)。單片機可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后。要注意的是ds18b20單線通信功能是分時完成的,他有嚴格的時隙概念,因此讀寫時序很重要。系統(tǒng)對ds18b20的各種操作必須按協(xié)議進行。操作協(xié)議為:初始化ds18b20(發(fā)復位脈沖)發(fā)rom功能命令發(fā)存儲器操作命令處理數(shù)據(jù)。p2.4寫1ds18b20復位flag=1y發(fā)出溫度轉換命令, 寫ds18b20發(fā)跳過rom命令寫ds18b20ds1

13、8b20復位發(fā)跳過rom命令發(fā)出溫度轉換命令, 寫ds18b20讀兩個字節(jié)的溫度結束n 圖 5-35.4 讀出的溫度進行數(shù)據(jù)轉換鑒于28h,29h的溫度轉換及顯示較為復雜。采用文字說明。以3-2-1-2為例,0111 1101為整數(shù)部分,低位的0000為小數(shù)部分。采用逐個移位的方法將8位溫度值0111 1101存29h.再除10后存dot_bit ,dot_bit1中。將低位的1100 0000(小數(shù)部分)存37h。再利用公式xiaoshu1 = (a&0x0f)*10/16得小數(shù)點后第一位,公式xiaoshu2 = (a&0x0f)*100/16%10得小數(shù)點后第二位。然后逐個循環(huán)點亮各位數(shù)

14、碼管。5.5 調試系統(tǒng)調試以程序為主。硬件調試比較簡單,首先檢查電路的焊接是否正確,然后可用萬用表測試或通電檢測。軟件調試可以先編寫顯示程序并進行硬件正確性檢驗,然后分別進行主程序、讀出溫度子程序、溫度轉換命令子程序、計算溫度子程序、顯示刷新等子程序的編程及調試,由于ds18b20與單片機采用串行數(shù)據(jù)傳送,因此,對ds18b20進行讀寫編程時必須嚴格的保證讀寫時序,否則將無法讀取測量結果。本程序采用單片機匯編編寫,用編譯器vision 2.0編程調試。軟件調試首先要能顯示溫度值,而且在有溫度變化時(例如用手去接觸)顯示溫度能改變就基本完成;其次,并且可以方便的選擇輸出不同測量點。5.5.1 硬

15、件調試焊接整體電路,要提前進行布局,對于復雜的電路焊接過程也要非常認真細致,如果布局不合理在后序的工作中將很繁瑣,而且影響外觀。我在初期布局不夠好之后,發(fā)現(xiàn)了問題及時改過來免除了很多不必要的麻煩;焊接更是基本功,在線多的時候體現(xiàn)的更突出,焊接不好會造成短路等問題,在畢業(yè)設計過程中,我的焊接技術有了很大的進步,知道了很多需要注意的細節(jié),對今后的工作很有幫助。5.5.2 軟件調試軟件是整個設計的核心部分,如果沒有軟件就想人沒有思維一樣。編程序更是重中之重,我在這次畢業(yè)設計中進一步學習了編程的思路和過程。從中也遇到了很多問題,編程時有些語法錯誤有時思路混亂出現(xiàn)很多問題,就是在不斷的發(fā)現(xiàn)問題和解決問題

16、中學到了很多知識也提高了能力。在仿真中使用了偉福軟件,并熟練掌握了這個軟件。經(jīng)過了反復的編譯和改正終于成功的完成了整個程序的編寫。 第6章 系統(tǒng)聯(lián)調及操作說明6.1 系統(tǒng)聯(lián)調 把實驗板正、負極接在直流穩(wěn)壓電源上(5v),然后打開“vision 2.0”軟件進行硬件檢查,先檢查led的連接是否正確。因為用p2口進行列掃描,p1口輸出段碼,可編程給p3口直接置0則可以檢查。通過檢查發(fā)現(xiàn)led輸出全為“8”,則硬件電路基本是正確的。(1) 軟件的檢查基本硬件檢查完畢后,進行軟件檢查,首先對程序進行檢查,改正程序中存在的錯誤語句,直到程序編譯全通過。下一步則進行程序執(zhí)行,結果只led 顯示為亂碼,于是

17、檢查軟件“09”的數(shù)值表示正確與否。通過計算無誤,然后檢查硬件發(fā)現(xiàn)問題出在p1口的輸出上,因為共陽極led表示順序“dp 、g 、f 、e 、d 、c 、b 、a”則應是p1.0對應a、p1.1對應b、p1.7對應dp,這樣輸出的數(shù)值才正確。于是重新焊接硬件錯誤的部分。全部改過來后,重新執(zhí)行程序,又出現(xiàn)問題,首先數(shù)碼管的b段亮度較弱,經(jīng)檢查發(fā)現(xiàn)244上接的電阻大小不一致,與b段相對應的那個電阻比其他的大,然后更換了電阻;對相應的線進行修改之后又發(fā)現(xiàn)有一路不能正常測量溫度,對電路進行檢查發(fā)現(xiàn)開關的其中一路沒有導通。排除問題后本設計正常運行。(2) 燒寫程序軟件檢查完畢則燒寫程序。程序燒寫完畢后把

18、at89s52 安裝在實驗板上,重新接通電源,但led顯示還是4個“8”,于是用示波器檢查電路的晶振,接好后示波器上顯示正弦波,則表明晶振是起振的。于是檢查復位電路,用電壓表直接給它進行復位,則實驗板上的led顯示4個“0”,并且開始顯示周圍溫度。則確定問題一定在復位電路上,于是檢查復位電路并連接好,電路開始正常工作。6.2 操作說明 將電源電壓調至4.5v. 測溫范圍為0100,精度誤差在0.5以內。可用手摸ds18b20,或用打火機點火焰放在ds18b20附近。 第7章 總結由于本設計采用了集成溫度傳感器,這樣不僅減少了硬件電路的設計與調試,并且此溫度傳感元件的集成性能比傳統(tǒng)的元件要優(yōu)越得

19、多,這樣簡化了電路的設計難度還降低了產(chǎn)品的價格。如果我們采用傳統(tǒng)的元件則在設計中還要加入a/d轉換器和模擬開關,這樣就增加了電路的設計難度并且感溫元件的精度和轉換性能也是遠不及集成的感溫元件ds18b20的。所以在以后的設計過程中應該盡量的采用集成元件。另外,本設計還可以實現(xiàn)高低溫報警功能和多點溫度測量功能,因此,能夠適用于多種場合。此次課程設計花費了自己頗多時間,自己也很盡心盡力的去弄,但效果并不很如意,起初還認為應該會比較簡單,而且自己也很有信心會弄好。經(jīng)過兩周的設計我了解了設計的難度,也認識到自己的許多的不足。雖然感覺理論上已經(jīng)掌握,但在運用到實踐的過程中仍有意想不到的困惑,經(jīng)過一番努力

20、才得以解決。 在兩周的課程設計過程中,我對單片機的學習的內容又有了進一步的加深,很多原來也許還不很清楚的知識現(xiàn)在弄清楚了,期間發(fā)現(xiàn)自己有很多的思維定勢在里面,以至于自己有時候很容易陷入自己弄的圈套里,固執(zhí)而不肯改變。設計過程中我也深刻認識到合作的重要性,通過合作可學到更多的東西,獨學而無友。另外我發(fā)現(xiàn)程序設計是一個很靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力,它是一個設計的靈魂所在。很多子程序是可以借鑒書本上的,但怎樣銜接各個子程序卻是問題關鍵的所在,這需要對單片機的結構很熟悉。在整個設計過程中我的大部分時間是用在程序上面了,而且調了很久才有結果,單片機的設計是軟件和硬件的結合,二者是

21、密不可分的,且它有很強的實用性,因此我覺得自己很有必要把它學好。 另外在課程設計的過程中,當我們碰到不明白的問題時,指導老師總是耐心的講解,給我的設計以極大的幫助,使我獲益匪淺。電氣信息學院課程設計評分表項 目評 價設計方案的合理性與創(chuàng)造性開發(fā)板焊接及其調試完成情況硬件設計或軟件編程完成情況*硬件測試及軟件調試結果*設計說明書質量設計圖紙質量答辯匯報的條理性和獨特見解答辯中對所提問題的回答情況完成任務情況獨立工作能力組織紀律性(出勤率)綜合評分 指導教師簽名:_ 日 期:_ 注:表中標*號項目是硬件制作或軟件編程類課題必填內容; 此表裝訂在課程設計說明書的最后一頁。課程設計說明書裝訂順序:封面

22、、任務書、目錄、正文、評分表、附件(非16k大小的圖紙及程序清單)。 參 考 文 獻1.王迎旭編.單片機原理與應用m.機械工業(yè)出版社.2004.2.樓然苗編.51系列單片機設計實例m.北京航空航天大學出版社.3.黃勤編.計算機硬件技術基礎實驗教程m.重慶大學出版社4、劉樂善編.微型計算機接口技術及應用m.華中科技大學出版社.5、陳光東編.單片微型計算機原理及接口技術m.華中科技大學出版 社.6.楊忠煌編.單芯片8051實務與應用m.中國水利水電出版社.附錄a 程序清單;*flag1 bit f0 ;ds18b20存在標志位dq bit p2.4 ;18b20串口temper_l equ 29h

23、;低位temper_h equ 28h;高位a_bit equ 35h;十位b_bit equ 36h;個位dot_bit equ 38h;小數(shù)點后第一位dot_bit1 equ 39h;小數(shù)點后第二位;*ds18b20匯編程序起始*org 0000hajmp mainorg 0100h;*主程序開始*main:lcall init_18b20 ;ds18b20復位程序lcall re_config ;設定ds18b20暫存器設定值lcall get_temper ;讀轉換后的溫度值ajmp change ;讀出的溫度進行數(shù)據(jù)轉換;*ds18b20復位程序*init_18b20: setb d

24、qnopclr dq;p2.4置0mov r0,#0fbh ;延時tsr1: djnz r0,tsr1 ;延時setb dq ;p2.4置1mov r0,#25htsr2: jnb dq ,tsr3;判斷dq是否為1,為1表明ds18b20不存在,為1跳轉tsrdjnz r0,tsr2tsr3: setb flag1 ;置標志位,表明ds18b20存在ajmp tsr5 ;跳到tsr5延時tsr4: clr flag1ljmp tsr7tsr5: mov r0,#06bh ;延時tsr6: djnz r0,tsr6 ;延時tsr7:setb dq ;表明不存在ret;*設定ds18b20暫存器

25、設定值*re_config:jb flag1,re_config1;ds18b20存在則設定ds18b20暫存器設定值retre_config1: mov a,#0cch ;放跳過rom命令lcall write_18b20 ;寫ds18b20mov a,#4ehlcall write_18b20 ;寫暫存器命令mov a,#00h ;報警上限中寫入00hlcall write_18b20mov a,#00h ;報警下限中寫入00hlcall write_18b20mov a,#7fh ;選擇十二位精度lcall write_18b20ret;*讀轉換后的溫度值*get_temper:setb

26、 dq ;p2.4置1lcall init_18b20 ;ds18b20復位程序jb flag1,tss2 ;ds18b20存在則讀轉換后的溫度值ret ;若不存在則返回tss2: mov a,#0cch ;跳過romlcall write_18b20mov a,#44h ;發(fā)出溫度轉換命令lcall write_18b20 ;寫ds18b20lcall display ;延時lcall init_18b20 ;ds18b20復位程序mov a,#0cch ;跳過romlcall write_18b20 ;寫ds18b20mov a,#0beh ;發(fā)出讀溫度換命令lcall write_18b

27、20lcall read2_18b20 ;讀兩個字節(jié)的溫度ret;*寫ds18b20匯編程序*write_18b20:mov r2,#8 ;循環(huán)8次clr cwr1:clr dq ;p2.4置0mov r3,#6 ;延時djnz r3,$ ;延時rrc amov dq,cmov r3,#23 ;延時djnz r3,$ ;延時setb dq ;p2.4置1nopdjnz r2,wr1setb dq ;p2.4置0ret;*讀18b20程序,讀出兩個字節(jié)的溫度*read2_18b20:mov r4,#2 ;低位存在29 h,高位存在28hmov r1,#29hre00: mov r2,#8;循環(huán)8

28、次,將一個字節(jié)寫入re01: clr csetb cnop ;延時nop ;延時clr dq ;p2.4置0nop ;延時nop ;延時nop ;延時setb dq ;p2.4置1mov r3,#7 ;延時djnz r3,$ ;延時mov c,dq ;讀p2.4mov r3,#23;延時djnz r3,$ ;延時rrc adjnz r2,re01 ;循環(huán)8次,將一個字節(jié)寫入mov r1,a ;將讀取溫度放29h(低位)dec r1 ;r1指28h(高位)djnz r4,re00 ;同樣方法,數(shù)據(jù)讀入28h(高位)ret;*讀出的溫度進行數(shù)據(jù)轉換*change:mov a,29h ;低位數(shù)據(jù)存3

29、7h mov 37h,amov a,29hmov c,28h.0 ;將28h中的最低位移入crrc amov c,28h.1rrc amov c,28h.2rrc amov c,28h.3rrc amov 29h,a ;將轉換好的8字節(jié)溫度存29hlcall display ;調用數(shù)碼管顯示子程序ljmp main;*display*display: mov a,29h;將29h中的十六進制數(shù)轉換成10進制mov b,#10 ;10進制/10=10進制div abmov b_bit,a ;十位在amov a_bit,b ;個位在b;*獲得小數(shù)部分*mov a,37h;取低位數(shù)據(jù)的低四位作為小數(shù)

30、部分anl a,#0fhmov b,#10mul abmov b,#16div ab mov dot_bit,a ;利用公式xiaoshu1 = (a&0x0f)*10/16得小數(shù)點后第一位mov a,37h;取低位數(shù)據(jù)的低四位作為小數(shù)部分anl a,#0fhmov b,#6;取16/10=6.25的近似值6mul abmov b,#10div abmov dot_bit1,b ;利用公式xiaoshu2 = (a&0x0f)*100/16%10得小數(shù)點后第二位mov dptr,#tab ;指定查表啟始地址mov r0,#4dpl1: mov r1,#250 ;顯示1000次dplop:mov

31、 a,a_bit ;取個位數(shù)movc a,a+dptr ;查個位數(shù)的7段代碼anl a,#7fhmov p0,a ;送出個位的7段代碼clr p2.1;開個位顯示acall d1ms ;顯示1mssetb p2.1mov a,b_bit ;取十位數(shù)movc a,a+dptr ;查十位數(shù)的7段代碼mov p0,a ;送出十位的7段代碼clr p2.0;開十位顯示acall d1ms ;顯示1msacall d1mssetb p2.0mov a,dot_bit;取小數(shù)點后一位movc a,a+dptrmov b,#80horl a,bmov p0,aclr p2.2acall d1mssetb p2.2mov a,dot_bit1movc a,a+dptrmov b,#80horl a,bmov p0

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論