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

正文內(nèi)容

通信工程專業(yè)課程設(shè)計(jì)報(bào)告模板(參考版)

2024-10-27 11:23本頁面
  

【正文】 } /***************************。C39。 WriteAddress(0x80+0x40+0x06)。 //延時(shí) 1ms 給硬件一點(diǎn)反應(yīng)時(shí)間 } /***************************************************** 函數(shù)功能:顯示溫度的單位 (Cent) ***************************************************/ void display_cent(void) { WriteAddress(0x80+0x40+0x05)。)。 //寫顯示地址,將在第 2 行第 10 列開始顯示 WriteData(39。 //延時(shí) 100ms 較長時(shí)間,以看清關(guān)于顯示的說明 } while(1) //進(jìn)入死循環(huán) ,等待查明原因 。 //將字符常量寫入 LCD i++。\039。 //寫顯示地址, 將在第 1 行第 1 列開始顯示 i = 0。 //稍作延時(shí) ,給硬件一點(diǎn)反應(yīng)時(shí)間 } /***************************************************** 函數(shù)功能:顯示沒有檢測到 DS18B20 ***************************************************/ void display_error(void) { uchar i。time4。//延時(shí) 3us,兩個(gè)寫時(shí)序間至少需要 1us 的恢復(fù)期 dat=1。time1。//延時(shí)約 30us, DS18B20 在拉低后的約 15~60us 期間從數(shù)據(jù)線上采樣 DQ=1。time10。0x01。 //等待一個(gè)機(jī)器周期 DQ=0。 i++) { DQ =1。 for (i=0。 //延時(shí) 3us,兩個(gè)讀時(shí)序之間必須有大于 1us 的恢復(fù)期 } return(dat)。time8。 //如果讀到的數(shù)據(jù)是 1,則將 1 存入 dat else dat|=0x00。time++) 。 //將數(shù)據(jù)線 人為 拉高 ,為單片機(jī)檢測 DS18B20 的輸出電平作準(zhǔn)備 for(time=0。 _nop_()。 //等待一個(gè)機(jī)器周期 DQ = 0。i++) { DQ =1。 //儲存讀出的一個(gè)字節(jié)數(shù)據(jù) for (i=0。 //返回檢測成功標(biāo)志 } /***************************************************** 函數(shù)功能:從 DS18B20 讀取一個(gè)字節(jié)數(shù)據(jù) 出口參數(shù): dat ***************************************************/ uchar ReadOneChar(void) { uchar i=0。time++) //延時(shí)足夠長時(shí)間,等待存在脈沖輸出完畢 。 //讓單片機(jī)檢測是否輸出了存在脈沖( DQ=0 表示存在) for(time=0。time++) 。 //釋放數(shù)據(jù)線(將數(shù)據(jù)線拉高) for(time=0。time++) //略微延時(shí)約 600 微秒 。 //再將數(shù)據(jù)線從高拉低,要求保持 480~960us for(time=0。time++) //略微延時(shí)約 6 微秒 。 //先將數(shù)據(jù)線拉高 for(time=0。 燕京理工學(xué)院課程設(shè)計(jì) 第 24 頁 } /***************************************************** 函數(shù)功能:將 DS18B20 傳感器初始化,讀取應(yīng)答信號 出口參數(shù): flag ***************************************************/ bit Init_DS18B20(void) { bit flag。 delaynms(10)。 delaynms(10)。 RW=0。 //清屏幕指令,將以前的顯示內(nèi)容清除 delaynms(5)。 //顯示模式設(shè)置:光標(biāo)右移,字符不移 delaynms(5)。 //顯示模式設(shè)置:顯示開,無光標(biāo),光標(biāo)不閃爍 delaynms(5)。 //連續(xù)三次 ,確保初始化成功 delaynms(5)。 delaynms(5)。 //顯示模式設(shè)置: 16 2 顯示, 5 7 點(diǎn)陣, 8 位數(shù)據(jù)接口 delaynms(5)。 //當(dāng) E 由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令 } /***************************************************** 函數(shù)功能:對 LCD 的顯示模式進(jìn)行初始化設(shè)置 ***************************************************/ void LcdInitiate(void) { delaynms(15)。 _nop_()。 _nop_()。 //空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=1。 _nop_()。 //將數(shù)據(jù)送入 P0 口,即將數(shù)據(jù)寫入液晶模塊 _nop_()。 E=0。 RS=1。 //當(dāng) E 由高電平跳變成低電平時(shí),液晶模塊開始執(zhí)行命令 } /***************************************************** 函數(shù)功能:指定字符顯示的實(shí)際地址 入口參數(shù): x ***************************************************/ void WriteAddress(unsigned char x) { WriteInstruction(x|0x80)。 _nop_()。 _nop_()。 //空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 E=1。 _nop_()。 //將數(shù)據(jù)送入 P0 口,即寫入指令或地址 _nop_()。 _nop_()。 E=0。 //如果忙就等待 RS=0。 //將 E 恢復(fù)低電平 return result。 //空操作四個(gè)機(jī)器周期,給硬件反應(yīng)時(shí)間 result=BF。 _nop_()。 //E=1,才允許讀寫 燕京理工學(xué)院課程設(shè)計(jì) 第 22 頁 _nop_()。 //根據(jù)規(guī)定, RS 為低電平, RW 為高電平時(shí),可以讀狀態(tài) RW=1。result=0,不忙 ***************************************************/ bit BusyTest(void) { bit result。 } /***************************************************** 函數(shù)功能:判斷液晶模塊的忙碌狀態(tài) 返回值: result。in。 } /***************************************************** 函數(shù)功能:延時(shí)若干毫秒 入口參數(shù): n ***************************************************/ void delaynms(uchar n) { uchar i。j33。i10。 } /***************************************************** 函數(shù)功能:延時(shí) 1ms (3j+2)*i=(3 33+2) 10=1010(微秒 ),可以認(rèn)為是 1 毫秒 ***************************************************/ void delay1ms() { uchar i,j。b0。a0。 void delay1(uchar t) { uchar a,b。 void tixing(unsigned char mm,unsigned dd)。 uchar week,week1。 uchar t_day,day1,day2。 uchar t_hour,hour1,hour2。 uchar t_sec,sec1,sec2。 uchar time。 sbit ACC0=ACC^0。 //調(diào)鬧鐘的分鐘即 y sbit key3=P3^2。 sbit key1=P3^0。 sbit T_IO=P1^4。 sbit T_RST=P1^5。 //使能信號位,將 E 位定義為 引腳 sbit BF=P0^7。 //寄存器選擇位,將 RS 位定義為 引腳 sbit RW=P2^1。// uchar code table13[]=National Day!。// uchar code table12[]=Teacher39。// uchar code table10[]=Duan Wu jie!。 // /*uchar code table8[]=Qing Ming jie!。// uchar code table7[]=Valentine39。 uchar code table5[]=Made by Xiaopeng。 uchar code table3[]=Today is fine!。 uchar code table1[]=0123456789。 //定義字符數(shù)組顯示數(shù)字 uchar code Error[]=Error!Check!。 由于本人的水平有限,設(shè)計(jì)當(dāng)中,難免會有不少的缺點(diǎn)和不足之處,懇請指導(dǎo)老師批評并改正。 雖然我的設(shè)計(jì)還有很多不足之處,但我可以很自豪的說,這里面的每一段文字和每一個(gè)圖形,都有自己的勞動當(dāng)看著自己的設(shè)計(jì),真是莫大的幸福和欣慰。 燕京理工學(xué)院課程設(shè)計(jì) 第 18 頁 結(jié)論 通過這次的課程設(shè)計(jì),使深深感到自身能力的不足,也使我將學(xué)到的知識應(yīng)用到了實(shí)踐中,在這段時(shí)間里,我學(xué)到了很多知識也有很多感受,我開始了獨(dú)立的學(xué)習(xí)和試驗(yàn),遇到了很多的困難,我通過查閱 大量相關(guān)的書籍、報(bào)紙、期刊、和資料,讓自己頭腦中模糊的概念逐漸清晰,使自己非常 稚嫩的作品一步步完善起來,每一次改進(jìn)都是我學(xué)習(xí)的收獲,每一次試驗(yàn)的成功都會讓我興奮好長一段時(shí)間。電子萬年歷中 DS1302 上最好使用專用的晶振。最后調(diào)試日歷、時(shí)間、鬧鐘、報(bào)警和溫度程序。另外可以通過軟件來調(diào)試硬件,如編寫一個(gè)簡單的顯示程序來測試顯示電路連接是否正確。其中硬件調(diào)試主要是檢測硬件電路是否有短路、斷路、虛焊現(xiàn)象。程序流程圖如圖 所示。 初始化 調(diào)用顯示子程序 1S到? 初次上電? 讀出溫度值 溫度計(jì)算處理 顯示數(shù)據(jù)刷新 發(fā)溫度轉(zhuǎn)換開始命令 N Y Y N 發(fā) DS18B20 復(fù)位命令 發(fā)跳過 ROM 命令 發(fā)讀取溫度命令 讀取操作, CRC校驗(yàn) 9 字節(jié)完? CRC 校驗(yàn)正確? 移入溫度暫存器 結(jié)束 N Y Y N 燕京理工學(xué)院課程設(shè)計(jì) 第 16 頁 計(jì)算溫度子程序 計(jì)算溫度子程序?qū)?RAM 中 讀取值進(jìn)行 BCD 碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖 所示。 圖 DS18B20 溫度計(jì)主程序流程圖 圖 讀出溫度子程序流程圖 溫度轉(zhuǎn)換命令子程序 溫度轉(zhuǎn)換子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用 12 位分辨率時(shí)轉(zhuǎn)換時(shí)間約為750ms,在本程序設(shè)計(jì)中采用 1s顯示程序延時(shí)法等待轉(zhuǎn)換的完成。 讀出溫度子程序 主要功能是讀 出 RAM 中的 9字節(jié),在讀出時(shí)需進(jìn)行 CRC 校驗(yàn),校驗(yàn)有錯(cuò)時(shí)不進(jìn)行溫度數(shù)據(jù)的改寫。 主程序 主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理 DS18B20 的測量溫度值,溫度測量每 1s 進(jìn)行一次。時(shí)間調(diào)
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1