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

正文內容

電子萬年歷的仿真與設計方案(專業(yè)版)

2025-06-06 13:39上一頁面

下一頁面
  

【正文】 alarmsecondset()。 case(3):{gbdisplay(0x0f)。)。 if(alarmmode==1) { Write_Address(0x4D)。)。 Write_Date(39。 Write_Address(0x00)。 while(1) { xiangling(1)。M39。(seconds==seconda)amp。F39。)。 TN=TH*16+TL/16。 delay1ms(5)。 j=x%100/10。 WriteDS18B20(0XCC)。 for(time=0。time++)。 temp=DQ。unsigned char flag。delay1ms(500)。 if(CANL==0) { delay1ms(500)。 if(minutea==0) minutea=59。 while(ADD==0)。 } } if(RED==0) { delay1ms(20)。 if(RED==0) { value。 if(value==0) value=1。 delay1ms(5)。0x70)4)*10+(datevalueamp。 } } datevalue=((month/10)4|(month%10))。}void monthset(void) //調月{ unsigned char datevalue,month。 } } if(RED==0) { delay1ms(10)。 delay1ms(5)。 delay1ms(5)。 while(1) { if(ADD==0) { delay1ms(10)。 Write_Address(0x47)。 //讀取此時的數(shù)值 hour=(((timevalueamp。0x70)4)*10+(valueamp。 minutes=(((valueamp。 Write_Date(digit[j])。 j=x%10。} void display_Daya(unsigned char x) //鬧鐘日數(shù)顯示{ unsigned char i,j。 Write_Date(digit[j])。 Write_Address(0x49)。 Write_Date(39。)。 delay1ms(1)。 delay1ms(1)。 E=1。 _nop_()。 _nop_()。 //根據(jù)寫月寄存器命令字,寫入月的初始值 WriteSet1302(0x8c,((10/10)4|(10%10)))。 REST=1。 SCLK=1。 delaynus(2)。 }}void xiangling(unsigned char n){ unsigned char x,i。void delay1ms(int i)//1毫秒延時{ int j,k。而這是以后最實用的,真的是受益匪淺。通過調試和仿真,基本實現(xiàn)了設計所要求的所有功能。根據(jù)DS18B20的通訊協(xié)議,主機控制DS18B20完成溫度轉換必須經(jīng)過3個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令。當然連線簡單意味著軟件處理上可能要麻煩一點。也就是說在電路上電的初始態(tài)WP是1,這時是不能改寫上面任何一個時間寄存器的,只有首先將WP改寫為0,才能進行其它寄存器的寫操作。二、仿真系統(tǒng)硬件設計電路設計框圖AT89C52主控制模 塊設置模塊1602液晶顯示模塊 鬧鐘模塊DS1302時鐘模塊DS18B20溫度檢測 圖(1) 總體設計框圖 單片機控制系統(tǒng)單片機中央處理系統(tǒng)的方案設計,選用AT89C52單片機作為中央處理器,如圖(2)所示。本設計所需顯示較多且需要文字,又基于設計要求,所以在本次設計中采用方案三,使用LCD1602液晶顯示屏。其主要特點如下:8KB Flash ROM,可以擦除1000次以上,數(shù)據(jù)保存10年。而近年來推出的一些高檔單片機還包括有許多特殊功能單元,如A/D、D/A轉換器、調制解調器、通信控制器、鎖相環(huán)、DMA、浮點運算單元、PWM控制輸出單元、PWM輸出時的死區(qū)可編程控制功能等。方案二:使用時鐘芯片DS12C887。 設置模塊的選擇在對日期、溫度和鬧鐘進行切換,對日期和時間進行調節(jié)校準過程中,系統(tǒng)需要產(chǎn)生激勵電流,因此需要用按鍵。 圖(3) DS1302管腳圖 圖(4) DS1302時鐘電路DS1302各引腳的功能為:8: Vcc1:備用電池端;1: Vcc2:5V電源。讀數(shù)據(jù):讀數(shù)據(jù)時在緊跟8位的控制字指令后的下一個SCLK脈沖的下降沿,讀出DS1302的數(shù)據(jù),讀出的數(shù)據(jù)是從最低位到最高位。 RAM:DS18B20的內部暫存器共9個字節(jié)。按鍵用來調整時間,其一端直接接到單片機的端口,另一端接地,當按下按鍵時,相應的端口變?yōu)榈碗娖剑瑥亩飨鄳牟僮鳌?:實時顯示環(huán)境溫度。感謝提供相關技術幫助的老師和同學,你們的支持和鼓勵使我對這次的作品完成有了信心和動力,也給了我們很多無私的幫助和支持,我在此深表謝意。k1。x++) { beep=~beep。 SCLK=1。i8。 REST=0。sbit E=P2^7。 RS=0。 delay1ms(1)。 delay1ms(1)。A39。)。E39。)。 i=hour/10。 Write_Address(0x0B)。 Write_Date(digit[j])。}void display_houra(unsigned char x) //鬧鐘小時部分顯示{ unsigned char i,j。 Write_Date(digit[i])。 hours=(((valueamp。0xf0)4)*10+(valueamp。 delay1ms(300)。 Write_(0x0c)。 if(RED==0) { minute。 } WriteSet1302(0x8e,0x80)。 } WriteSet1302(0x8e,0x80)。 WriteSet1302(0x8c,datevalue)。0x70)4)*10+(datevalueamp。 delay1ms(5)。 while(ADD==0)。 } WriteSet1302(0x8e,0x80)。 if(CANL==0) { delay1ms(500)。 gbdisplay(0x0C)。 display_Daya(daya)。 } } houra=value。 break。 delay1ms(20)。} break。 for(time=0。}/**************************讀DS18B20**********************/ unsigned char ReadDS18B20(void) { unsigned char i。time10。time1。 while(displayexplain[i]!=39。)。i6。 Display_Decimal(TD)。 39。 delay1ms(1)。amp。 Write_Address(0x08)。 } } } } }/**************** 設置模塊 ******************/ void Set(void) { if(SET==0) { delay1ms(10)。 delay1ms(10)。)。 Write_Address(0x46)。N39。 if(SET==0) { amode++。 case(4):{gbdisplay(0x45)。alarmswitchset()。alarmminuteset()。 case(2):{gbdisplay(0x0C)。 Write_Date(39。:39。 display_Montha(montha)。A39。 delay1ms(1000)。)。)。)。)。 } } }void alarmswitchset(void) //鬧鐘開關設置 { while(1) { if(ADD==0) { delay1ms(100)。0XF8)!=0X00) { flag=1。 Write_Date(digit[x])。 Write_Date(39。 }/*******************為讀取溫度做好準備************************/void ReadyreadDS18B20(void){ IntDS18B20()。i++) { DQ=1。 DQ=0。time++)。dayset()。minuteset()。 if(RED==0) { seconda。 if(ADD==0) { minutea++。 while(1) { if(ADD==0) { delay1ms(20)。 if(ADD==0) { Write_(0x0c)。 delay1ms(5)。 value++。 } } datevalue=((day/10)4|(day%10))。}void dayset(void) //調日{ unsigned char datevalue,day。 } } if(RED==0) { delay1ms(10)。 if(CANL==0) { mode=0。0x70)4)*10+(datevalueamp。 WriteSet1302(0x80,0x00)。 delay1ms(1)。 WriteSet1302(0x8e,0x00)。 while(RED==0)。 delay1ms(5)。0x70)4)*10+(valueamp。 seconds=(((valueamp。 }void display_minutea(unsigned char x)//鬧鐘分鐘部分顯示{ unsigned char i,j。 Write_Date(digit[i])。 j=year%10。}void display_Day(unsigned char day) //在液晶上顯示日{ unsigned char i,j。 Write_Date(digit[j])。 Write_Address(0x4B)。 Write_Date(39。E39。 delay1ms(1)。 _nop_()。 P0=mand。 _nop_()。 //根據(jù)寫狀態(tài)寄存器命令字,寫入不保護指令 WriteSet1302(0x80,((0/10)4|(0%10)))。 delaynus(2)。 SCLK=0。x++) { beep=~beep。 }/***********蜂鳴器模塊************/ sbit beep=P3^6。 //DS1302復位端口sbit SET=P1^4。在該系統(tǒng)設計,調試完成之后,對最后的成功進行分析,同時結合在調試過程中出現(xiàn)的錯誤和不足進行綜合分析,總結在實際系統(tǒng)設計和調試過程中的寶貴經(jīng)驗。程序框圖如下:初始化DS1302,1602從DS1302讀取信息1602液晶顯示相關信息判斷是否有按鍵按下時間、日期、溫度、鬧鐘和倒計時設置模塊沒有按鍵按下溫度檢測模塊四、調試結果及分析電路設計中單片機采用AT89C52,編譯環(huán)境為keil,程序使用C語言進行編寫,使用proteus仿真軟件進行仿真調試,設計硬件制作比較順利,很快就把硬件電路做好。 圖(8) DS18B20的溫度存放 圖(9)DS18B20電路其中S位符號位。讀數(shù)據(jù):輸入:RS=H,RW=H,E=H;輸出:DB0~DB7=數(shù)據(jù) ;寫數(shù)據(jù):輸入:RS=H,RW=L,E=下降沿脈沖,DB0~DB7=數(shù)據(jù) ;輸出:無。當為高時,選擇12小時模式。其特點是簡單且不增加成本,這種鍵盤適合按鍵數(shù)量較多的場合。缺點是串行通信,控制比較復雜?!?(4)有優(yōu)異的性能、價格比?!?(3)由于構成的應用系統(tǒng)是一個計算機系統(tǒng),相當多的測、控功能由軟件實現(xiàn),故具有柔性特征,不須改變硬件系統(tǒng)就能適當?shù)馗淖兿到y(tǒng)功能。更重要的是其價格
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1