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

正文內(nèi)容

基于at89s51單片機的數(shù)字溫度計的設計學士學位論文(參考版)

2025-06-30 22:38本頁面
  

【正文】 更加深入的了解并掌握了傳感器的基本理論知識,并在單片機實際電路開發(fā)與常用編程設計思路方面有了一定程度的掌握,盡管本次設計不是很完善,但這為我以后的設計歷程積累了寶貴的經(jīng)驗。} 基于 AT89S51 單片機的數(shù)字溫度計的設計 作者:王露 第 28 頁 共 28 頁致 謝在本畢業(yè)設計的設計和制作過程中,感謝李愛云老師給了我很大的幫助,同時也離不開很多的同學關心,是他們在我遇到難題的時候給了我力量。 //因為 DS18B20 可以精確到 度 //所以讀回數(shù)據(jù)的最低位代表的是 度temp_out = (tt*10+)/10。 //兩字節(jié)合成一個整型變量temp_1 = temp_out 4。 //先把高八位有效數(shù)據(jù)賦于 temptemp_out = 8。 //讀取到的第一個字節(jié)為溫度 LSBb = Read_One_Byte()。 //忽略 ROM 指令Write_One_Byte(0xbe)。 //溫度轉(zhuǎn)換指令Init_Ds18b20()。 //初始化Write_One_Byte(0xcc)。uchar a,b。}}char Get_Tmp() //獲取溫度 get the temperature{float tt。 //寫完后,必須釋放總線, dat = 1。 delay_us(12)。0x01。 //拉低總線 _nop_()。i0。}void Write_One_Byte(uchar dat){uchar i = 0。 //此延時不能少,確保讀時序的長度60us。 //若總線為 1,即 DQ 為 1,那就把 dat 的最高位置 1。 _nop_()。 DQ = 1。 //至少維持了 1us,表示讀時序開始 dat = 1。 //將總線拉低,要在 1us 之后釋放總線 //單片機要在此下降沿后的 15us 內(nèi)讀數(shù)據(jù)才會有效。i0。uchar dat = 0。 //此處延時有足夠,確保能讓 DS18B20 發(fā)出存在脈沖。 //精確延時,維持至少 480usDQ = 1。 //稍做延時DQ = 0。 }/*****************DS18B20******************/void Init_Ds18b20(void) //DS18B20 初始化 send reset and initialization mand{DQ = 1。uint temp_out。p++。) break。while(1){if(*p == 39。a = a + lie 1。 基于 AT89S51 單片機的數(shù)字溫度計的設計 作者:王露 第 24 頁 共 28 頁if(hang == 1) a = 0x80。}/********************************************************************* 名稱 : L1602_string(uchar hang,uchar lie,uchar *p)* 功能 : 改變液晶中某位的值,如果要讓第一行,第五個字符開始顯示ab cd ef ,調(diào)用該函數(shù)如下 L1602_string(1,5,ab cd ef。enable(a)。if(hang == 2) a = 0xc0。)* 輸入 : 行,列,需要輸入 1602 的數(shù)據(jù)* 輸出 : 無***********************************************************************/void L1602_char(uchar hang,uchar lie,char sign){uchar a。}/********************************************************************* 名稱 : L1602_char(uchar hang,uchar lie,char sign)* 功能 : 改變液晶中某位的值,如果要讓第一行,第五個字符顯示 b ,調(diào)用該函數(shù)如下 L1602_char(1,5,39。enable(0x06)。enable(0x38)。delay_1602()。delay_1602()。RW = 0。}/*********************************************************************名稱 : write(uchar del)* 功能 : 1602 寫數(shù)據(jù)函數(shù)* 輸入 : 需要寫入 1602 的數(shù)據(jù)* 輸出 : 無***********************************************************************/void write(uchar del){dis_data = del。E = 1。E = 0。RS = 0。while( i )while( j )。 //1602 數(shù)據(jù)/命令選擇引腳define dis_data P0void delay_1602(){uchar i = 2。 //1602 使能引腳sbit RW=P2^1。 //1602 讀寫引腳//sbit RS=P2^0。}}//這三個引腳參考資料//sbit E=P2^2。TR1 = 0 。 //red offled0 = 0。TR1 = 1。 //red onled0 = 1。+temp%10)。L1602_char(1,9,39。039。)。elseL1602_char(1,7,39。039。+temp_buf%10)。L1602_char(1,9,39。039。)。 L1602_char(1,7,39。spk = ~spk。}void time1() interrupt 3{ TH1 = 0xfe。 基于 AT89S51 單片機的數(shù)字溫度計的設計 作者:王露 第 19 頁 共 28 頁TL0 = (65536 1000) % 256。baojing()。 // 讀取溫度if(temp1 == temp2)temp = temp1。while(1){temp2 = temp1。led0 = 0。 //1602 初始化L1602_string(1,1,temp : ℃)。TR0 = 1。ET0 = 1。TL0 = (65536 1000) % 256。/**********************************************主函數(shù) main()**********************************************/void main(){TMOD = 0x11。 //1Ms 加 1define baojing_wd 80void display_1602()。uchar flag_baojing。char temp2。 //蜂鳴器include //溫度傳感器 char temp。 //第 1 個 led 燈sbit led1 = P1^1。從這次的課程設計中,我真正的意識到,在以后的學習中,要加強實踐,把我們所學的理論知識用到實際當中,學習單機片機更是如此,程序只有在經(jīng)常的寫和讀的過程中才能提高,這就是我在本次課程設計中的最大收獲。不過,其誤差在時間和外部環(huán)境變化的條件下,保持相當高的穩(wěn)定性。 度,往往很多場合需要更加精確的溫度,在所測溫度精度不變的基礎上必須對數(shù)據(jù)進行校正。由于 DS18B20 支持單總線協(xié)議,我們可以將多個 DS18B20 可以并聯(lián)到 3 根或 2 根線上,CPU 只需一根端口線就能與諸多 DS18B20 通信,占用較少的微處理器的端口就可以實現(xiàn)多點測溫監(jiān)控系統(tǒng)?!裰袛嘣O定程序:實現(xiàn)設定上下限報警功能?!駵囟葴y試及處理程序:對溫度芯片送過來的數(shù)據(jù)進行處理判斷和顯示。 主程序模塊主程序需要調(diào)用 4 個子程序,分別為數(shù)碼管顯示程序,溫度測試及處理子程序,報警子程序,中斷設定子程序。選擇合適的監(jiān)控程序結(jié)構(gòu)然后依據(jù)實時性對監(jiān)控軟件與執(zhí)行模塊之間的調(diào)度關系進行安排。把每個執(zhí)行模塊分別列出并進行功能和接口定義??砂窜浖牟煌δ芊譃閮纱箢悾阂活愂潜O(jiān)控軟件(主程序) ,用來協(xié)調(diào)執(zhí)行模塊與操作者之間的關系。當所測溫度超過獲低于所預設的溫度時,數(shù)據(jù)口相應拉高電平,報警輸出 [20]。在這里采用前者方式供電。因此, 在條件允許的情況下,應盡量選擇外供電方式。但是寄生電源方式供電需強上拉電路, 軟件控制變得很復雜(特別是在溫度轉(zhuǎn)換完成及數(shù)據(jù)拷貝到 E178。DS18B20 的電源供電方式分為寄生電源和外部供電方式兩種。數(shù)碼管八段段碼利用單片機 P0 口控制 , 3 個數(shù)碼管位碼利用 P2. 0P2. 2 控制,顯示溫度值用動態(tài)掃描方式 [18]。必須先啟動DS18B20 開始轉(zhuǎn)換,再讀出溫度轉(zhuǎn)換值。 基于 AT89S51 單片機的數(shù)字溫度計的設計 作者:王露 第 9 頁 共 28 頁圖 321(a) 單片機控制數(shù)碼管顯示溫度值圖 321 (b) 單片機控制數(shù)碼管顯示溫度值d0 d0d1 d1d2 d2d3 d3d4 d4d5 d5d6 d6d7 d7d0d1d2d3d4d5d6d7ERSRSWEWXTAL218XTAL119ALE3031PSN29RST9P0./U1AT89S51C12PFC22PFC310uFX112MR110kD714613D51241D31029D1807E6RW5S4VS1D2VE3
點擊復制文檔內(nèi)容
數(shù)學相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1