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

正文內(nèi)容

畢業(yè)設(shè)計(jì)-基于at89c51單片機(jī)的多功能電子萬(wàn)年歷的設(shè)計(jì)-在線瀏覽

2025-03-07 16:06本頁(yè)面
  

【正文】 件中的相應(yīng)值。tPLH輸出由低電平到高電平傳輸延遲時(shí)間tPHL輸出由高電平到低電平傳輸延遲時(shí)間 ds1302 現(xiàn)在流行的串行時(shí)鐘電路很多,如DS130 DS130PCF8485等。本文介紹的實(shí)時(shí)時(shí)鐘電路DS1302是DALLAS公司的一種具有涓細(xì)電流充電能力的電路,主要特點(diǎn)是采用串行數(shù)據(jù)傳輸,可為掉電保護(hù)電源提供可編程的充電功能,并且可以關(guān)閉充電功能。采用三線接口與CPU進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號(hào)或RAM數(shù)據(jù)。DS1302是DS1202的升級(jí)產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時(shí)提供了對(duì)后背電源進(jìn)行涓細(xì)電流充電的能力。在主電源關(guān)閉的情況下,也能保持時(shí)鐘的連續(xù)運(yùn)行。當(dāng)Vcc2大于Vcc1+,Vcc2給DS1302供電。X1和X2是振蕩源。RST輸入有兩種功能:首先,RST接通控制邏輯,允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。如果在傳送過(guò)程中RST置為低電平,則會(huì)終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。只有在SCLK為低電平時(shí),才能將RST置為高電平。SCLK始終是輸入端。位5至位1指示操作單元的地址。 在控制指令字輸入后的下一個(gè)SCLK時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫入DS1902,數(shù)據(jù)輸入從低位即位0開始。 DS1302有12個(gè)寄存器,其中有7個(gè)寄存器與日歷、時(shí)鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時(shí)間寄存器及其控制字見表1。時(shí)鐘突發(fā)寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與CPU的連接需要三條線,即SCLK(7)、I/O(6)、RST(5)。 DS1302與CPU的連接,實(shí)際上,在調(diào)試程序時(shí)可以不加電容器, 的晶振即可。另外,還可以在上面的電路中加入DS18B20,同時(shí)顯示實(shí)時(shí)溫度。 LED還可以換成LCD,還可以使用北京衛(wèi)信杰科技發(fā)展有限公司生產(chǎn)的10位多功能8段液晶顯示模塊LCM101,內(nèi)含看門狗(WDT)/時(shí)鐘發(fā)生器及兩種頻率的蜂鳴器驅(qū)動(dòng)電路,并有內(nèi)置顯示RAM,可顯示任意字段筆劃,具有3-4線串行接口,可與任何單片機(jī)、IC接口。DS1302的實(shí)時(shí)時(shí)間流程。下面對(duì)DS1302的基本操作進(jìn)行編程: 根據(jù)本人在調(diào)試中遇到的問(wèn)題,特作如下說(shuō)明: DS1302 與微處理器進(jìn)行數(shù)據(jù)交換時(shí),首先由微處理器向電路發(fā)送命令字節(jié),命令字節(jié)最高位MSB(D7)必須為邏輯1,如果D7=0,則禁止寫DS1302,即寫保護(hù);D6=0,指定時(shí)鐘數(shù)據(jù),D6=1,指定RAM數(shù)據(jù);D5~D1指定輸入或輸出的特定寄存器;最低位LSB(D0)為邏輯0,指定寫操作(輸入), D0=1,指定讀操作(輸出)。若進(jìn)行單字節(jié)傳送,8位命令字節(jié)傳送結(jié)束之后,在下2個(gè)SCLK周期的上升沿輸入數(shù)據(jù)字節(jié),或在下8個(gè)SCLK周期的下降沿輸出數(shù)據(jù)字節(jié)。 要特別說(shuō)明的是備用電源B1,可以用電池或者超級(jí)電容器()。如果斷電時(shí)間較短(幾小時(shí)或幾天)時(shí),就可以用漏電較小的普通電解電容器代替。DS1302在第一次加電后,必須進(jìn)行初始化操作。 DS1302 存在時(shí)鐘精度不高,易受環(huán)境影響,出現(xiàn)時(shí)鐘混亂等缺點(diǎn)。這種記錄對(duì)長(zhǎng)時(shí)間的連續(xù)測(cè)控系統(tǒng)結(jié)果的分析及對(duì)異常數(shù)據(jù)出現(xiàn)的原因的查找具有重要意義。但是,如果在系統(tǒng)中采用時(shí)鐘芯片DS1302,則能很好地解決這個(gè)問(wèn)題。該系統(tǒng)的軟件設(shè)計(jì)方法與硬件設(shè)計(jì)相對(duì)應(yīng),按整體功能分成多個(gè)不同的程序模塊,分別進(jìn)行設(shè)計(jì)、編程和調(diào)試,最后通過(guò)主程序?qū)⒏鞒绦蚰K連接起來(lái)。 主程序主程序如圖41所示: 開始讀年、月、日送第一塊LED顯示讀星期、閏、年、日送第二塊LED顯示讀時(shí)、分、秒送第三塊LED顯示返回圖41 主程序圖 從1302讀取日期和時(shí)間程序系統(tǒng)初始化開 始需要調(diào)整時(shí)間嗎?讀1302日期和時(shí)間調(diào)整時(shí)間和日期YN圖42 從1302讀取程序 5 PROTEUS使用PROTEUS軟件是由英國(guó)LabCenter Electronics 公司開發(fā)的EDA工具軟件,由ISIS和ARES兩個(gè)軟件構(gòu)成,其中ISIS是一款便捷的電子系統(tǒng)仿真平臺(tái)軟件,ARES是一款高級(jí)的布線編輯軟件,它集成了高級(jí)原理布線圖、混合模式SPICE電路仿真、PCB設(shè)計(jì)以及自動(dòng)布線來(lái)實(shí)現(xiàn)一個(gè)完整的電子設(shè)計(jì)。用PROTEUS ISIS設(shè)計(jì)硬件電路的過(guò)程① 選擇設(shè)計(jì)圖紙的到小根據(jù)設(shè)計(jì)所使用到元器件的多少,選擇合適大小的設(shè)計(jì)圖紙,操作是單擊菜單欄上的System→Set Sheet Size ,然后彈出如圖51所示的對(duì)話框,從中選擇合適大小的圖紙,也可以選擇User進(jìn)行圖紙的自定義設(shè)置。圖 51② 選取仿真所需的元器件 選取元器件的方式是,單擊如圖52所示的按鈕“P”。圖 52圖 53從此窗口的左上角的“Keywords”中輸入電子萬(wàn)年歷設(shè)計(jì)用到的器件,如輸入“AT89C51”,在中間會(huì)列出帶有輸入關(guān)鍵字的元器件,選擇合適的元器件并雙擊它,則已經(jīng)選擇好了該元器件。最后選擇好所有的元器件如圖54所示。③ 把元器件放到圖紙的合適位置,進(jìn)行布線單擊如圖54所示的元器件AT89C51,再在右邊圖紙上單擊,就把元器件放入到了圖紙上。如果元器件放置錯(cuò)誤,這可通過(guò)兩次右擊刪除所放置的元器件,如果位置放得不理想,可以先右擊該器件,然后按住左鍵進(jìn)行移動(dòng)。逆時(shí)針旋轉(zhuǎn)90176。通過(guò)這樣的調(diào)整,可以使整個(gè)布局合理一些。圖 55 at89c51與ds1302的連接ISIS還提供了網(wǎng)絡(luò)布線,即不使用線連接也可以把兩個(gè)引腳虛擬的連接了起來(lái)。④ 編輯窗口連接端子要讓最后的設(shè)計(jì)成功仿真時(shí),必須放置并連接端子。如圖56所示。 ISIS進(jìn)行電子萬(wàn)年歷的仿真測(cè)試① 添加Keil中編寫的代碼文件單擊工具欄中的Source→Add/Remove Source files...,彈出一個(gè)對(duì)話框,分別單擊“New” ,單擊“OK” ,完成添加代碼文件。如果編譯結(jié)果沒有錯(cuò)誤,會(huì)出現(xiàn)如圖58所示的結(jié)果。設(shè)置使單片機(jī)的運(yùn)行頻率為6MHz 。圖510仿真測(cè)試⑤ PROTEUS的調(diào)試功能由于使用的是匯編語(yǔ)言編寫的程序,如果在測(cè)量的時(shí)候測(cè)量值顯示錯(cuò)誤,說(shuō)明程序中存在問(wèn)題,這個(gè)問(wèn)題只用在仿真測(cè)量的時(shí)候才能被發(fā)現(xiàn),這時(shí)可以使用PROTEUS對(duì)程序進(jìn)行調(diào)試。在匯編語(yǔ)言源代碼窗口中,也可以在所需要設(shè)置斷點(diǎn)的語(yǔ)句前雙擊設(shè)置斷點(diǎn),當(dāng)設(shè)置斷點(diǎn)的時(shí)候,程序運(yùn)行到所設(shè)斷點(diǎn)處停止,從而可以在內(nèi)存、寄存器等的值的變化,從而找出程序出錯(cuò)的地方。而且所設(shè)計(jì)的電子萬(wàn)年歷設(shè)計(jì)也按當(dāng)初要求的能夠在PROTEUS中進(jìn)行仿真,并且能夠很精確的顯示年歷。在軟件設(shè)計(jì)的過(guò)程中,利用了Keil這個(gè)軟件在程序錄入和調(diào)試的時(shí)候的優(yōu)越性,讓我能夠在編寫軟件的時(shí)候很方便的發(fā)現(xiàn)軟件中的錯(cuò)誤,現(xiàn)在已經(jīng)能夠使用Keil對(duì)所設(shè)計(jì)的程序進(jìn)行調(diào)試。由于平時(shí)沒有接觸過(guò)這兩個(gè)軟件,加上畢業(yè)設(shè)計(jì)的時(shí)間有限,對(duì)于他們的連接調(diào)試程序,未能熟練掌握,但以后有機(jī)會(huì)的話會(huì)再好好學(xué)習(xí)的。 致謝經(jīng)過(guò)三個(gè)多月的時(shí)間,畢業(yè)設(shè)計(jì)按照預(yù)期完成了,由于本人的知識(shí)水平有限,論文和設(shè)計(jì)中有遺漏和缺陷的地方懇請(qǐng)指正。論文從選題和最終完成,凝結(jié)著導(dǎo)師的辛勤的汗水,她不辭勞苦的教導(dǎo)、嚴(yán)謹(jǐn)?shù)淖黠L(fēng)使我終生受益。還有感謝家人、朋友還有宿舍里所有的室友,是他們給我創(chuàng)造了良好的學(xué)習(xí)氛圍,在學(xué)習(xí)和生活中給了我支持和幫助。 參考文獻(xiàn)[1] [M].北京:機(jī)械工業(yè)出版社,1999:98350.[2] [M].北京:電子工業(yè)出版社,2006:1113.[3] [M].西安:西安科技大學(xué)出版社,2003:1555.[4] [M].北京:經(jīng)濟(jì)科學(xué)出版社,2005:4356.[5] [M].北京:北京航空航天大學(xué)出版社,622655.[6] [M]西安: 西安電子科技大學(xué)出版社,2005:8195.[7] [M].北京:電子工業(yè)出版社,2004:105131.[8] [M]. 北京:北京航空航天大學(xué)出版社,2004:173199.[9] [M]. 北京:電子工業(yè)出版社,2005:5289.
附錄附錄1源代碼DELAY.Cdefine DELAY_Cinclude”includes.h”define XTAL 12void delay_lus(void) { asm(”nop”): }void delay_nus(unsigned int n) {unsigned int i=0;for(i=0;in;i++)delay_lus(); }void delay_ims(void) { unsigned int i; for(i=0:i(unsigned int)(XTAL*1432)。 }void delay_nms(unsigned int n) { unsigned int i=0。 } } DSl302.Cinclude”includes.h”define DSl302_C unsigned char bflag;unsigned char bpm;unsigned char get_hours(void){ unsigned char i; unsigned char R_Byte; unsigned char TmpByte; reset(); write(0x85); ddr_set_io(); R_Byte=0x00; Prt_clear_io(); ddr_clear_io(); for(i:0;i4;i++) } TmpByte=0。(1io))) TmpByte=1; TmpByte=7。R_Byte I=TmpByte;Prt_set_clk();delay_nus(2);prt_clear_clk();delay_nus(2);}bflag=0;if((pinpamp。prt_set_clk();delay_nus(2);prt_clear_clk();delay_nus(2); bpm=0。(1io))) bpm=1;prt_set_clk();delay_nus(2);prt_clear_clk();delay_nus(2);prt_clear_rst();prt_clear_clk();R_Byte =4;return R_Byte;}unsigned char readbyte(unsigned char w_byte){ unsigned char temp; reset(); write(w_byte); temp=read(); prt_clear_rst(); prt_clear_clk(); return temp;}void writebyte(unsigned char w_byte,unsigned char w_2_byte) { reset(); write(w_byte)。for(i=0;i8;i++){ Prt_clear_io(); if(W_Byte amp。 R_Byte2=0x00;prt_clear_io();ddr_clear_io();for(i=0。(1io))){ TmpByte=1。 }//TmpByte=7;R_Byte= (RByte1)。R_Byte |=TmpByte;prt_set_clk();delay_nus(1);//delay_nus(2)。delay_nus(1);//delay_nus(2);}for(i=0;i4;i++){ TmpByte=0; if((pinpamp。 Prt_set_clk(); delay_nus(1)://delay_nus(2); prt_clear_clk(); delay_nus(1);//delay_nus(2); } R_Byte=4; R_Byte2=4; R_Byte=(R_Byte2*10)+R_Byte; return R_Byte;}HD44780.Cinclude”includes.h”define HD44780_Cvoid lcd_pulse(void) {Icd—set—e()delay_nms(1)。 delay_nms(1); }void icd_wait(void) { asm(”nop”);}void icd_send(unsigned char data) {Lcd_wait();dataport=data。 text[i]&amp。BIT3;LCD_OP_PORT=temp;Lcd_set_rw(); //Set LCD to READlcd_clear_rs();lcd_set_e();delay_nus(3);high=LCD_IP_PORT;lcd_clear_e();lcd_set_e();asm(
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1