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

正文內(nèi)容

基于51單片機(jī)的萬(wàn)年歷設(shè)計(jì)-wenkub.com

2025-06-03 22:40 本頁(yè)面
   

【正文】 TR0=1。IT0=0x01。Adjust_Index=1。LCD_DSY_BUFFER2[14]=39。26}else if(K4==0)//確定{while(K4==0)。}else if(K2==0)//加{while(K2==0)。[39。if(Adjust_Index==1||Adjust_Index==1) Adjust_Index=7。Format_DateTime(DateTime[0],LCD_DSY_BUFFER2+11)。Format_DateTime(DateTime[3],LCD_DSY_BUFFER1+11)。if(++tCount!=2) return。DateTime[1]0) DateTime[1]。amp。amp。 case 2://時(shí) if(x==1amp。amp。 //根據(jù)當(dāng)前月份決定調(diào)節(jié)日期的上限 if(x==1amp。 //如果月份變化后當(dāng)前月份的天數(shù)大于上限則設(shè)為上限 if(DateTime[3]MonthsDays[DateTime[4]]) DateTime[3]=MonthsDays[DateTime[4]]。 if(x==1amp。//刷新星期 break。DateTime[6]0) DateTime[6]。amp。i++) d+=MonthsDays[i]。w=(w+d)%7。void RefreshWeekDay(){uint i,d,w=5。}////判斷是否為閏年uchar isLeapYear(uint y){return(y%4==0amp。}}////日期與時(shí)間值轉(zhuǎn)換為數(shù)字字符void Format_DateTime(uchar d,uchar *a){a[0]=d/10+39。for(i=0。DelayMS(1)。DelayMS(1)。EN=0。EN=0。EN=0。EN=0。DelayMS(5)。DelayMS(1)。EN=1。}}// //1602LCD 的若干顯示控制代碼。//加保護(hù)20}////讀取當(dāng)前日期時(shí)間//void GetTime(){uchar i。//寫(xiě)控制字,取消寫(xiě)保護(hù)for(i=1。CLK=0。}//向 DS1302 某地址寫(xiě)入數(shù)據(jù)void Write_DS1302(uchar addr,uchar dat){CLK=0。dat=Get_A_Byte_FROM_DS1302()。RST=0。CLK=1。i8。 CLK=0。i8。i120。 //所讀取的日期時(shí)間char Adjust_Index=1。//周日,周一到周六{0,16} [讀取 DS1302 時(shí)分別是 17]uchar *WEEK[]={SUN,MON,TUS,WEN,THU,FRI,SAT}。 //加sbit K3=P3^6。 //LCD 寄存器選擇sbit RW=P2^1。//include include define uchar unsigned chardefine uint unsigned intsbit SDA=P1^0。是你們?yōu)槲覄?chuàng)造了良好的學(xué)習(xí)和完成畢業(yè)設(shè)計(jì)的環(huán)境,你們的支持和鼓勵(lì)使我對(duì)這次的設(shè)計(jì)完成有了信心和動(dòng)力,使我能夠順利地完成課題的設(shè)計(jì)工作,在此向這些幫助我的人致以誠(chéng)摯的謝意。但是由于時(shí)間和個(gè)人暫時(shí)的能力的原因,整個(gè)系統(tǒng)看起來(lái)還是顯得非常的簡(jiǎn)單,只實(shí)現(xiàn)了一些最基本的功能,還有許多不足和可以擴(kuò)展的地方。程序編寫(xiě)中,由于思路不清晰,開(kāi)始時(shí)遇到了很多的問(wèn)題,經(jīng)過(guò)靜下心來(lái)思考查資料,和同學(xué)討論,理清了思路,完成對(duì)程序的編寫(xiě)。按相應(yīng)的按鍵可調(diào)節(jié)分,時(shí),星期,日期,月份,年份,并且可以自動(dòng)閏年調(diào)整。 Proteus 軟件運(yùn)行流程運(yùn)行 Proteus 程序后,進(jìn)入軟件的主界面,過(guò)左側(cè)工具欄中的 P(從庫(kù)中選擇元件命令)命令,在 Pick Devices 左側(cè)窗口中選擇所需元件的關(guān)鍵字,然后放置元件并調(diào)整方向和位置以及參數(shù)設(shè)置,最后進(jìn)行連線。接著選擇 Source Group1,右擊鼠標(biāo)彈出快捷菜單,選擇“Add File to Group ‘Source Group1’”,出現(xiàn)一個(gè)對(duì)話框,加入文件后點(diǎn) close 返回主界面。a++){write_1602dat(tab2[a])。 //向液晶屏寫(xiě)日歷顯示的固定符號(hào)部分//delay(3)。 //清顯示write_1602(yh+1)。部分源程序如下:lcd_init() //***液晶初始化函數(shù) ****{write_1602(0x38)。return(temp)。write_byte(add)。11}uchar read_1302(uchar add) //從 1302 讀數(shù)據(jù)函數(shù),指定讀取數(shù)據(jù)來(lái)源地址{uchar temp。write_byte(add)。}return (ACC)。a){ACC7=IO。ACC=ACC1。a0。傳送完成后,RST 置低,禁止字節(jié)的傳送。在控制字指令輸入后的下一個(gè) SCLK 時(shí)鐘的上升沿時(shí),數(shù)據(jù)被寫(xiě)入 DS1302,數(shù)據(jù)輸入從最低位(0 位)開(kāi)始。時(shí)鐘程序S1302 開(kāi)始計(jì)時(shí)時(shí),首先進(jìn)行初始化,當(dāng)有中斷信號(hào)時(shí),讀取時(shí)鐘芯片的數(shù)據(jù),如圖 5 所示:開(kāi)始初始化開(kāi)中斷讀時(shí)鐘芯片送顯示設(shè)置鍵是否有按下 ?是否修改當(dāng)前時(shí)間 ?送 E P R O M送時(shí)鐘芯片YNYN圖 58 LCD 顯示程序流程圖顯示程序流程圖分析:首先對(duì) 1602 顯示屏進(jìn)行初始化(初始化大約持續(xù)10ms 左右) ,然后檢查忙信號(hào),若 BF=0,則獲得顯示 RAM 的地址,寫(xiě)入相應(yīng)的數(shù)據(jù)顯示;若 BF=1,則代表模塊正在進(jìn)行內(nèi)部操作,不接受任何外部指令和數(shù)據(jù),直到 BF=0 為止,如圖 6 所示:對(duì) 1 6 0 2 初始化 寫(xiě)入顯示設(shè)置命令延時(shí) 5 m s檢查忙信號(hào)獲得顯示R A M 地址寫(xiě)入相應(yīng)的數(shù)據(jù)延時(shí) 5 m sB F = 0 ?開(kāi)始結(jié)束數(shù)據(jù)顯示完畢 ?YYNN圖 69 程序的設(shè)計(jì) DS1302 讀寫(xiě)程序DS1302 是 SPI 總線驅(qū)動(dòng)方式。當(dāng)R/W 端接高電平時(shí)芯片處于讀數(shù)據(jù)狀態(tài),反之處于寫(xiě)數(shù)據(jù)狀態(tài),E 端為使能信號(hào)端。R/W 為讀寫(xiě)信號(hào)線端,高電平時(shí)進(jìn)行讀操作,低電平時(shí)進(jìn)行寫(xiě)操作。5 R/WR/W 為讀寫(xiě)信號(hào)線。它可以顯示兩行,每行 16 個(gè)字符,采用單+5V 電源供電,外圍電路配置簡(jiǎn)單。由于單片機(jī)在正常應(yīng)用過(guò)程中,可能會(huì)經(jīng)常進(jìn)行鍵操作,因而編程控制方式使 CPU 經(jīng)常處于工作狀態(tài), 在進(jìn)行本次設(shè)計(jì)中,只涉及到了選擇、加、減、確定四個(gè)功能。 獨(dú)立式鍵盤(pán)設(shè)計(jì)獨(dú)立式鍵盤(pán)每個(gè)鍵單獨(dú)占用一根 I/O 口線。(3) DS1302 的寄存器:DS1302 有 12 個(gè)寄存器,其中有 7 個(gè)寄存器與日歷、4時(shí)鐘相關(guān),存放的數(shù)據(jù)位為 BCD 碼形式。X1 和
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1