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

正文內(nèi)容

[工學(xué)]單片機(jī)課程設(shè)計(jì)_電子萬(wàn)年歷-全文預(yù)覽

  

【正文】 //CPU開(kāi)中斷,INT0,INT1,開(kāi)中斷 TR0=1。 } } if (skey==0x02) //SET鍵按下 { pro_key()。break。break。break。break。break。 //去按鍵抖動(dòng) skey = scan_key()。 //使光標(biāo)位于第一個(gè)調(diào)整項(xiàng)下 flag=0。 //顯示光標(biāo)_,整個(gè)光標(biāo)不閃爍 alarm=1。 //讀取SET鍵的狀態(tài),并存于skey的B0位 return skey。 //調(diào)用顯示處理函數(shù)}//按鍵掃描程序unsigned char scan_key(){ skey=0x00。//調(diào)用時(shí)間和日期處理程序 } if (secamp。 TL0=0xF0。 for (i=0。 for (i=0。amp。 } } } week_proc()。month++。month++。 date++。 min++。 dis_buf2[14]=dis_s/10+48。:39。 //alarm=0,不顯示鬧鐘啟用標(biāo)致 dis_buf2[8]=dis_h/10+48。 dis_buf2[5]=t2[5]。 dis_buf2[1]=t2[1]。 dis_buf1[13]=dis_week[4*week]。39。 dis_buf1[7]=month/10+48。039。 //39。//計(jì)算對(duì)應(yīng)的星期 return week。amp。}//星期的自動(dòng)運(yùn)算和處理unsigned char week_proc(){ unsigned char num_leap。amp。 lcd_wcmd(0x01)。 lcd_wcmd(0x0c)。 //XXX 00001 第7行數(shù)據(jù) lcd_wcmd(0x4f)。 //XXX 11101 第5行數(shù)據(jù) lcd_wcmd(0x4d)。 //XXX 11101 第3行數(shù)據(jù) lcd_wcmd(0x4b)。 //XXX 00001 第1行數(shù)據(jù) lcd_wcmd(0x49)。 //XXX 11111 第7行數(shù)據(jù) lcd_wcmd(0x47)。 //XXX 11111 第5行數(shù)據(jù) lcd_wcmd(0x45)。 //XXX 10101 第3行數(shù)據(jù) lcd_wcmd(0x43)。 //XXX 11111 第1行數(shù)據(jù)(D7D6D5為XXX,表示為任意數(shù)(一般用000),D4D3D2D1D0為字符行數(shù)據(jù)(1點(diǎn)亮,0熄滅) lcd_wcmd(0x41)。 ep = 0。 _nop_()。 _nop_()。 rw = 0。 _nop_()。 ep = 1。 _nop_()。 ep = 0。 return result。 _nop_()。 ep = 1。i++) delay1ms()。j33。 } }} void delay1ms(){ unsigned char i,j。 i++) { _nop_()。 //LCD自定義字符程序void update_disbuf(unsigned char t1,unsigned char t2[],unsigned char dis_h,unsigned char dis_m,unsigned char dis_s)。 //定時(shí)報(bào)警功能(鬧鐘)unsigned char scan_key()。 //LCD初始化設(shè)定程序void pro_timedate()。 //測(cè)試LCD忙碌狀態(tài)程序void lcd_wcmd(char cmd)。 //調(diào)整鍵(AN3)sbit SET = P3^4。 //標(biāo)識(shí)是否啟用鬧鐘,1啟用,0關(guān)閉sbit rs = P2^0。//年、月、日、星期unsigned char data armhour,armmin,armsec。unsigned char code para_month[13]={0,0,3,3,6,1,4,6,2,5,0,3,5}。 //說(shuō)明沒(méi)有檢測(cè)到DS18B20unsigned char code Temp[]={wendu made byFMZ:}。 增加溫度的顯示按下K4時(shí)出現(xiàn)溫度的顯示界面,上排顯示”wendu made byFMZ”,下排顯示溫度.仿真圖如下所示:參考文獻(xiàn):單片機(jī)原理與接口技術(shù)()RZ51V20開(kāi)發(fā)板論壇實(shí)物圖:鬧鐘設(shè)置時(shí)間顯示平閏年判斷,修改天數(shù)溫度顯示整體實(shí)物圖實(shí)驗(yàn)源程序:include include include unsigned char code digit[11]={0123456789}。 else leap=0。例如:閏年的計(jì)算bit leap_year(){ bit leap。按鍵用來(lái)調(diào)整時(shí)間,其一端直接接到單片機(jī)的端口,另一端接地,當(dāng)按下按鍵時(shí),相應(yīng)的端口變?yōu)榈碗娖?,從而作相?yīng)的操作。這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。我們把得到的溫度數(shù)據(jù)乘上對(duì)應(yīng)的分辨率即可以得到轉(zhuǎn)換后的溫度值。最后8位是以上56位的CRC碼。外形和我們常用的三極管沒(méi)有什么兩樣哦。5:溫度傳感器18B20通過(guò)18B20進(jìn)行讀數(shù)據(jù),將讀出來(lái)的數(shù)據(jù)進(jìn)行進(jìn)制轉(zhuǎn)換,轉(zhuǎn)換后送到DS18B20是單總線的數(shù)字溫度傳感器。位6:如果為0,則表示存取日歷時(shí)鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1(A4~A0):指示操作單元的地址;位0(最低有效位):如為0,表示要進(jìn)行寫(xiě)操作,為1表示進(jìn)行讀操作。也就是說(shuō)在電路上電的初始態(tài)WP是1,這時(shí)是不能改寫(xiě)上面任何一個(gè)時(shí)間寄存器的,只有首先將WP改寫(xiě)為0,才能進(jìn)行其它寄存器的寫(xiě)操作。在12小時(shí)模式時(shí),位5是 ,當(dāng)為1時(shí),表示PM。DS1302有關(guān)日歷、時(shí)間的寄存器:DS1302有關(guān)日歷、時(shí)間的寄存器秒寄存器(81h、80h)的位7定義為時(shí)鐘暫停標(biāo)志(CH)。DS1302采用3線串行接口,占用引腳少,內(nèi)部集成了可編程日歷時(shí)鐘,用戶可以根據(jù)需要通過(guò)單片機(jī)的控制來(lái)自行設(shè)置,支持雙電源供電,可以使用外部主電源和備用電源,備份電源能夠使時(shí)鐘芯片繼續(xù)工作。若改進(jìn)可以添加手動(dòng)復(fù)位的功能,上電復(fù)位發(fā)生在開(kāi)機(jī)加電時(shí),由系統(tǒng)自動(dòng)完成,手動(dòng)復(fù)位通過(guò)一個(gè)按鍵來(lái)實(shí)現(xiàn),在程序運(yùn)行時(shí),若遇到死機(jī),死循環(huán)等情況,通過(guò)手動(dòng)復(fù)位就可以實(shí)現(xiàn)重新啟動(dòng)的操作。該單片機(jī)除了擁有MCS51系列單片機(jī)的所有優(yōu)點(diǎn)外,內(nèi)部還具有8K的在系統(tǒng)可編程FLASH存儲(chǔ)器,低功耗的空閑和掉電模式,極大的降低了電路的功耗,還包含了定時(shí)器、程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器等硬件,其硬件能符合整個(gè)控制系統(tǒng)的要求,不需要外接其他存儲(chǔ)器芯片和定時(shí)器件,方便地構(gòu)成一個(gè)最小系統(tǒng)。該方案優(yōu)點(diǎn)是減少使用外設(shè)芯片;缺點(diǎn)是用單片機(jī)模擬時(shí)鐘,使編程量增大,且用定時(shí)器產(chǎn)生時(shí)基信號(hào),精度不高。 STC89C52,ATMEL的51系列單片機(jī),價(jià)格便宜,在國(guó)內(nèi)使用者非常多。主控模塊采用AT89C52單片機(jī),按鍵模塊用四個(gè)按鍵,用于調(diào)整時(shí)間,顯示模塊采用LCD1602,時(shí)鐘電路模塊采用DS1302時(shí)鐘芯片實(shí)現(xiàn)對(duì)時(shí)間、日期的操作,溫度模塊使用18B20實(shí)現(xiàn)度溫度的操作。:方案一: 普通的共陰LED數(shù)碼管,用點(diǎn)陣LED實(shí)現(xiàn)文字的顯示.方案二: LCD1602液晶顯示屏.LED數(shù)碼管價(jià)格適中,對(duì)于數(shù)字顯示效果較好,而且使用單片機(jī)的端口也較少; LCD1602液晶顯示屏,顯示功能強(qiáng)大,可以顯示大量文字、圖形,顯示多樣性,清晰可見(jiàn),價(jià)格相對(duì)LED數(shù)碼管來(lái)說(shuō)要昂貴些,但是基于本設(shè)計(jì)顯示的東西較多,若采用LED數(shù)碼管的話,所需數(shù)碼管較多,而且不利于控制,.:方案一:用單片機(jī)的定時(shí)器產(chǎn)生1S的時(shí)基信號(hào),然后用程序來(lái)實(shí)現(xiàn)時(shí)鐘的時(shí)、分、秒計(jì)時(shí),同時(shí)用程序來(lái)產(chǎn)生年、月、日。:直接采用常用的18B20.系統(tǒng)框圖:液晶顯示(LED)1602單片AT89C52時(shí)鐘芯片DS1302溫度傳感器18B20單元電路設(shè)計(jì):單片機(jī)中央處理系統(tǒng)的方案設(shè)計(jì),選用AT89C52單片機(jī)作為中央處理器,如圖所示。此復(fù)位電路為上電復(fù)位,較為簡(jiǎn)單。 DS1302時(shí)鐘電路時(shí)鐘電路主要由時(shí)鐘芯片DS130備用電池、晶振等幾部分組成,如圖(6)所示。 6: I/O:數(shù)據(jù)輸入輸出口;5: CE/RST:復(fù)位腳;3: XX2 是外接晶振腳 ();4: 地(GND)。當(dāng)為高時(shí),選擇12小時(shí)模式。當(dāng)WP位為1時(shí),寫(xiě)保護(hù)位防止對(duì)任一寄存器的寫(xiě)操作。DS1302的控制字如下圖:DS1302的控制字圖控制字的最高有效位(位7)必須是邏輯1,如果它為0,則不能把數(shù)據(jù)寫(xiě)入到DS1302中。在控制字指令輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫(xiě)入DS1302,數(shù)據(jù)輸入也是從最低位(0位)開(kāi)始。下面來(lái)看看它的優(yōu)點(diǎn)看看它的靚照。在出場(chǎng)的時(shí)候就已經(jīng)設(shè)置好,用戶無(wú)法更改。當(dāng)溫度值為負(fù)值時(shí),S = 1 ,反之則S = 0 。根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)3個(gè)步驟:每一次讀寫(xiě)之前都要對(duì)DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令。 下面是讀操作的時(shí)序圖這是寫(xiě)操作的時(shí)序圖按鍵電路由四
點(diǎn)擊復(fù)制文檔內(nèi)容
電大資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1