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

正文內(nèi)容

電子萬年歷的仿真與設(shè)計方案-免費閱讀

2025-05-19 13:39 上一頁面

下一頁面
  

【正文】 case(7):{gbdisplay(0x4D)。Write_(0x0c)。} break。alarmmonthset()。 } while(1) { if(SET==0) { delay1ms(100)。O39。 Write_Date(39。)。)。 display_Daya(daya)。R39。)。)。 Write_(0x0c)。 break。 Write_Date(39。)。 Write_Date(39。(months==montha)amp。 }void TIMEUP(void)//時間到函數(shù){ if((hours==houra)amp。 } } }void displaylittlepart(void)//顯示鬧鐘不變化部分{ Write_Address(0x06)。 Write_Date(39。 Write_Date(39。 if(ADD==0) { alarmmode=1。 Display_Integer(TN)。 TL=~TL。length) { for(i=0。 delay1ms(50)。39。.39。 delay1ms(5)。 WriteDS18B20(0XCC)。 for(time=0。 _nop_()。 for(time=0。 _nop_()。 return temp。 DQ=1。 DQ=1。delay1ms(500)。delay1ms(500)。delay1ms(500)。 if(SET==0) { mode++。 if(seconda==0) seconda=59。 if(CANL==0) { delay1ms(500)。 if(minutea59) minutea=0。 while(RED==0)。 if(ADD==0) { Write_(0x0c)。 } } daya=value。 delay1ms(5)。 display_Montha(montha)。 value++。 gbdisplay(0x09)。 if(value99) value=1。 } if(SET==0) break。 WriteSet1302(0x86,datevalue)。 if(day31) day=1。 delay1ms(500)。 Write_Address(0x0c)。 if(RED==0) { month。 month=(((datevalueamp。 Write_(0x0c)。 } } datevalue=((year/10)4|(year%10))。0x0f))。 } if(SET==0) break。 while(ADD==0)。 } if(SET==0) break。 display_Minute(minute)。 } } if(RED==0) { delay1ms(10)。 timevalue=ReadSet1302(0x83)。 if(CANL==0) { mode=0。 } } timevalue=(((hour)/10)4|(hour%10))。 if(ADD==0) { hour++。 }/*****************時間調(diào)整部分*********************/void hourset(void) //調(diào)時{ unsigned char timevalue,hour。 years=(((valueamp。0x0f))。 value=ReadSet1302(0x85)。0x70)4)*10+(valueamp。 Write_Address(0x4A)。 i=x/10。 delay1ms(1)。 Write_Date(digit[j])。 Write_Date(digit[i])。 Write_Address(0x08)。 j=month%10。 i=day/10。}void display_Hour(unsigned char hour) //在液晶上顯示時{ unsigned char i,j。 delay1ms(1)。039。 Write_Date(39。 Write_Date(39。T39。39。)。 Write_Date(39。 Write_(0x0c)。 E=0。 P0=date。}/*寫地址*/void Write_Address(unsigned char address){ Write_(address|0x80)。 _nop_()。}/*寫指令*/void Write_(unsigned char mand){ while(BusyTest()!=0)。 _nop_()。sbit RW=P2^6。 //根據(jù)寫秒寄存器命令字,寫入秒的初始值 WriteSet1302(0x82,((0/10)4|(0%10)))。 SCLK=1。 } return date。 for(i=0。 REST=1。0x01。 dely500()。x200。 //位定義, void dely500(void){ unsigned char i。 for(k=29。 //DS1302設(shè)置模式選擇位sbit ADD=P1^5。致謝感謝學(xué)院給我們提供了一個展現(xiàn)自己的舞臺,給我們一次難得煅煉的機會,使得我們的動手能力和專業(yè)技能都有了很大的提高。雖然還有一點功能不能實現(xiàn),但我不會放棄,在以后的業(yè)余時間里我會多查資料,多分析,多請教老師同學(xué),爭取把它做完善。4:實現(xiàn)鬧鐘提醒功能,且鬧鐘可設(shè)置至年,月,日,時,分,秒。接著,主要是程序的調(diào)試。 圖(11)讀操作的時序圖 圖(12) 寫操作的時序圖按鍵電路按鍵電路由四個輕觸開關(guān)組成,如圖(12)所示。當(dāng)溫度值為負值時,S = 1 ,反之則S = 0 。最后8位是以上56位的CRC碼。LCD1602的各種指令不再一一說明。位6:如果為0,則表示存取日歷時鐘數(shù)據(jù),為1表示存取RAM數(shù)據(jù);位5至位1(A4~A0):指示操作單元的地址;位0(最低有效位):如為0,表示要進行寫操作,為1表示進行讀操作。在12小時模式時,位5是 ,當(dāng)為1時,表示PM。DS1302采用3線串行接口,占用引腳少,內(nèi)部集成了可編程日歷時鐘,用戶可以根據(jù)需要通過單片機的控制來自行設(shè)置,支持雙電源供電,可以使用外部主電源和備用電源,備份電源能夠使時鐘芯片繼續(xù)工作。 根據(jù)以上的論述,因本系統(tǒng)需要的按鍵不多,日期加加減,月數(shù)加減,年數(shù)加減,分?jǐn)?shù)加減,時數(shù)加減,設(shè)置切換鍵,要求簡單,只需要四個按鍵即可滿足要求。根據(jù)上述論述,本設(shè)計采用方案二,選擇數(shù)字式溫度傳感器DS18B20。 綜上,由于本設(shè)計對時間要求較精準(zhǔn),且具閏年計算功能,因此本設(shè)計選擇方案三,采用時鐘芯片DS1302。該方案優(yōu)點是減少使用外設(shè)芯片;缺點是用單片機模擬時鐘,使編程量增大,且用定時器產(chǎn)生時基信號,精度不高。 單片機的選擇方案一:采用傳統(tǒng)的AT89C52作為電機的控制核心。集成技術(shù)的最新發(fā)展之一是將CPU和外圍芯片,如程序存儲器、數(shù)據(jù)存儲器、并行I/O口、串行I/O口、定時/計數(shù)器、中斷控制器及其他控制部件集成在一個芯片之中,制成單片計算機(SingleChip Microputer)?!?(2)系統(tǒng)擴展、系統(tǒng)配置較典型、規(guī)范,容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),應(yīng)用系統(tǒng)有較高的軟、硬件利用系數(shù)。由于本系統(tǒng)對CPU運算速度要求很高,需要執(zhí)行很復(fù)雜的運算,方案一成本比較低,適合做設(shè)計,方案二運算速度高,性能好,所以兩種方案都有可取之處。僅使用3個IO口,占用最少的單片機資源;其內(nèi)部功能強大。 溫度檢測模塊的選擇方案一:使用熱敏電阻作為傳感器,用熱敏電阻與一個相應(yīng)阻值電阻相串聯(lián)分壓,利用熱敏電阻阻值隨溫度變化而變化的特性,采集這兩個電阻變化的分壓值,并進行A/D轉(zhuǎn)換,此設(shè)計方案需要A/D轉(zhuǎn)換電路,增加了硬件成本而且熱敏電阻的感溫特性曲線并不是嚴(yán)格性的,會產(chǎn)生較大的測量誤差。 方案二:使用矩陣式鍵盤。該單片機除了擁有MCS51系列單片機的所有優(yōu)點外,內(nèi)部還具有8K的在系統(tǒng)可編程FLASH存儲器,低功耗的空閑和掉電模式,極大的降低了電路的功耗,還包含了定時器、程序存儲器、數(shù)據(jù)存儲器等硬件,其硬件能符合整個控制系統(tǒng)的要求,不需要外接其他存儲器芯片和定時器件,方便地構(gòu)成一個最小系統(tǒng)。當(dāng)初始上電時該位置為1,時鐘振蕩器停止,DS1302處于低功耗狀態(tài);只有將秒寄器的該位置改寫為0時,時鐘才能開始運行。DS1302讀寫時序 DS1302是SPI總線驅(qū)動方式。顯示電路采用LCD1602液晶顯示,如圖(7)所示,圖中只畫出了其相應(yīng)的接口,3腳用于調(diào)節(jié)LCD1602的背光,6為LCD1602的控制口,用于控制其寫入或是讀出指令,7至14腳為LCD1602的數(shù)據(jù)口,將數(shù)傳送到LCD1602中。DS18B20的內(nèi)部存儲器分為以下幾部分 ROM:存放該器件的編碼。第5~7個字節(jié)保留。這樣才能對DS18B20進行預(yù)定的操作。開始整個軟件系統(tǒng)采用規(guī)模化的程序設(shè)計方法,共分為時間設(shè)定、鬧鈴設(shè)定、倒計時和溫度檢測系統(tǒng)。1:顯示年、月、日、時、分、秒信息。通過鍵盤和液晶顯示屏可方便地校對時鐘、設(shè)置鬧鐘時間和顯示溫度,本系統(tǒng)基本完成了實用電子鐘的功能,并添加了許多附加功能,使電子萬年歷更具多樣化,特色化。要面對社會的挑戰(zhàn),只有不斷的學(xué)習(xí)、實踐,再學(xué)習(xí)、再實踐。 //DS1302時鐘輸入sbit DATE=P1^1。 while(i) for(j=76。in。 while(n) { for(i=0。i++) { for(x=0。 for(i=0。 date=1。 REST=0。 delaynus(2)。 Write1302(cmd)。 if(flagamp。 //根據(jù)寫年寄存器命令字,寫入年的初始值 WriteSet1302(0x90,0xa5)。 RW=1。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 delay1ms(1)。 Write_Date(39。)。 Write_Address(0x0A)。)。 Write_Date(39。:39。239。 Write_Address(0x4C)。 Write_Date(digit[i])。 Write_Date(digit[j])。 delay1ms(1)。}void display_Year(unsigned char year) //在液晶上顯示年{ unsigned char i,j。 i=x/10。 j=x%10。 Write_Address(0x08)。 Write_Date(digit[i])。}void display_seconda(unsigned char x)//鬧鐘秒針部分顯示 { unsigned char i,j。 Write_(0x0c)。0x70)4)*10+(valueamp。 value=ReadSet1302(0x87)。0x0f))。 delay1ms(5)。0x70)4)*10+(timevalueamp。 delay1ms(300)。 delay1ms(5)。}void minuteset(void) //調(diào)分{ unsigned char timevalue,minute。 if(ADD==0) { minute++。 } } timevalue=((minute/10)4|(minute%10))。 if(CANL==0) { mode=0。 while(1) { if(ADD==0) { delay1ms(10)。 if(CANL==0) { mode=0。 datevalue=ReadSet1302(0x8d)。 if(RED==0) { year。 Write_Address(0x09)。 delay1ms(500)。 if(month12) month=1。 WriteSet1302(0x88,datevalue)。 } if(SET==0) break。0x0f))。 if(day==0) day=31。 if(CANL==0) { mode=0。 if(ADD==0) { Write_(0x0c)。 while(RED==0)。 while(1) { if(ADD==0) { delay1ms(20)。 if(value==0) value=12。 value=daya。 if(RED==0) { value。 }
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1