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

正文內(nèi)容

單片機課程設(shè)計刑天(文件)

2025-07-14 09:42 上一頁面

下一頁面
 

【正文】 n)%10。//打開寫保護write_1602(er+6)。 write_sfm(2,shi)。//向DS1302內(nèi)寫小時寄存器寫入調(diào)整后的數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。 if(ri==32) ri=1。//允許寫,禁止寫保護 write_1302(0x86,temp)。 case 5:yue++。//十進制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。 break。//令LCD在正確的位置顯示加設(shè)定好的年份數(shù)據(jù)temp=(nian)/10*16+(nian)%10。//打開寫保護write_1602(yh+4)。注釋 if(key3==0) { delay(10)。 if(miao==1) miao=59。 //允許寫,禁止寫保護 write_1302(0x80,temp)。 case 2:fen。//十進制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。 break。 temp=(shi)/10*16+(shi)%10。//打開寫保護 write_1602(er+3)。 write_nyr(9,ri)。//向DS1302內(nèi)寫日期寄存器寫入調(diào)整后的數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。 if(yue==0) yue=12。//允許寫,禁止寫保護 write_1302(0x88,temp)。 case 6:nian。//十進制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。 break。 //定時器T0的低四位=0 EA=1。 //調(diào)用液晶屏初始化子函數(shù) ds1302_init()。 //調(diào)用鍵盤掃描子函數(shù) }}void timer0() interrupt 1 //取得并顯示日歷和時間{ //讀取秒 分 時 日 月 年六個數(shù)據(jù)(DS1302的讀寄存器與寫寄存器不一樣): miao = BCD_Decimal(read_1302(0x81))。 yue = BCD_Decimal(read_1302(0x89))。//分,從第二行第5個字符后開始顯示 write_sfm(2,shi)。//年,從第二行第3個字符后開始顯示}。//日期,從第二行第9個字符后開始顯示 write_nyr(6,yue)。 //顯示秒、分、時數(shù)據(jù): write_sfm(8,miao)。 shi = BCD_Decimal(read_1302(0x85))。 //調(diào)用定時計數(shù)器的設(shè)置子函數(shù) delay(80)。 //允許T0中斷 TR0=1。 //指定定時/計數(shù)器的工作方式為3 TH0=0。//向DS1302內(nèi)寫年份寄存器寫入調(diào)整后的數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。 write_nyr(3,nian)。//打開寫保護 write_1602(yh+7)。 temp=(yue)/10*16+(yue)%10。 break。//十進制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。 case 4:ri。//允許寫,禁止寫保護 write_1302(0x84,temp)。 if(shi==1) shi=23。//向DS1302內(nèi)寫分寄存器寫入調(diào)整后的分數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。 write_sfm(5,fen)。 //打開寫保護write_1602(er+0x09)。//在LCD的正確位置顯示改變后新的秒數(shù) temp=(miao)/10*16+(miao)%10。 while(!key3)。 } } } //減鍵key3,各句功能參照39。//允許寫,禁止寫保護write_1302(0x8c,temp)。 if(nian==100) nian=0。//向DS1302內(nèi)寫月份寄存器寫入調(diào)整后的數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。 write_nyr(6,yue)。//打開寫保護write_1602(yh+10)。//令LCD在正確的位置顯示加設(shè)定好的日期數(shù)據(jù) temp=(ri)/10*16+(ri)%10。 break。//十進制轉(zhuǎn)換成DS1302要求的DCB碼 write_1302(0x8e,0x00)。 case 3:shi++。//允許寫,禁止寫保護 write_1302(0x82,temp)。 if(fen==60) fen=0。 //向DS1302內(nèi)寫秒寄存器寫入調(diào)整后的秒數(shù)據(jù)BCD碼 write_1302(0x8e,0x80)。//秒超過59,再加1,就歸零 write_sfm(0x08,miao)。 if(key2==0) { delay(20)。//miao數(shù)據(jù)寫入DS1302 write_1302(0x8e,0x80)。//按動到第7次,設(shè)置光標不閃爍 TR0=1。//按動5次,yue break。 break。//按2次fen位置顯示光標 write_1602(0x0f)。 write_1302(0x80,0x80|temp)。 write_1602(er+0x09)。 key1n++。//數(shù)字+30得到該數(shù)字的LCD1602顯示碼 write_1602dat(0x30+gw)。 gw=dat%10。//取得十位數(shù)字 write_1602(er+add)。 //向DS1302內(nèi)寫年份寄存器8cH寫入初始年份數(shù)據(jù)12write_1302(0x8e,0x80)。 //向DS1302內(nèi)寫分寄存器82H寫入初始分數(shù)據(jù)43//write_1302(0x84,0x09)。SCLK=0。 Decimal=bcd4。 SCLK=1。 SCLK=0。 SCLK=1。 SCLK=0。 SCLK=0。 for(a=8。 SCLK=0。 RST=1。a8。a++) { write_1602dat(tab1[a])。//整屏不移動,光標自動右移 write_1602(0x01)。 en=0。 //讀寫選擇置為寫 P1=dat。//拉高使能端,為制造有效的下降沿做準備 delay(1)。//數(shù)據(jù)/指令選擇置為指令 rw=0。x) for(y=110。 //年顯示的固定字符uchar code tab2[]={ : : }。//校時按鍵與C51的引腳連接定義sbit key1=P2^5。sbit SCLK=P2^1。define yh 0x80 //LCD第一行的初始位置,因為LCD1602字符地址首位D7恒定為1(100000000=80)define er 0x80+0x40 //LCD第二行初始位置(因為第二行第一個字符位置地址是0x40)//液晶屏的與C51之間的引腳連接定義(顯示數(shù)據(jù)線接C51的P0口)sbit rs=P3^5。系統(tǒng)源程序代碼見附錄三。 //en置高電平,為制造下降沿做準備 delay(1)。//數(shù)據(jù)/指令選擇置為數(shù)據(jù) rw=0。 en=1。圖13 液晶寫入子函數(shù)流程圖/********液晶寫入指令函數(shù)與寫入數(shù)據(jù)函數(shù),以后可調(diào)用**************/write_1602(uchar )//****液晶寫入指令函數(shù)****{ rs=0。a8。a++) { write_1602dat(tab1[a])。//整屏不移動,光標自動右移 write_1602(0x01)。 //向DS1302內(nèi)寫年份寄存器8cH寫入初始年份數(shù)據(jù)12write_1302(0x8e,0x80)。 //向DS1302內(nèi)寫分寄存器82H寫入初始分數(shù)據(jù)43//write_1302(0x84,0x09)。SCLK=0。 //調(diào)用定時計數(shù)器的設(shè)置子函數(shù) //led=0。 第3章 系統(tǒng)的軟件設(shè)計 主函數(shù)設(shè)計在程序中,液晶寫入有關(guān)函數(shù)會在DS1302的函數(shù)中調(diào)用,所以液晶程序要放在前面;當(dāng)時間顯示后方可設(shè)置,則鍵盤掃描子函數(shù)凡在DS1302的函數(shù)后面,具體流程圖如下圖11所示。 顯示模塊的設(shè)計顯示模塊由主控模塊和LCD1602構(gòu)成,其硬件連接調(diào)試電路如圖9所示:圖9 LCD1602液晶顯示模塊電路2. LCD1602的一般初始化(復(fù)位)過程延時15mS寫指令38H(不檢測忙信號)延時5mS寫指令38H(不檢測忙信號)延時5mS寫指令38H(不檢測忙信號)以后每次寫指令、讀/寫數(shù)據(jù)操作均需要檢測忙信號寫指令38H:顯示模式設(shè)置寫指令08H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標移動設(shè)置寫指令0CH:顯示開及光標設(shè)置 按鍵模塊的設(shè)計根據(jù)設(shè)計要求需要選擇三個獨立按鍵分別為設(shè)置、加、減,按鍵模塊如圖10所示??刂谱止?jié)總是從最低位開始輸入/輸出的。DS1302的控制字,此控制字的位7必須置1,若為0則不能把對DS1302進行讀寫數(shù)據(jù)。上電動行時,RST必須保持低電平。RST是復(fù)位/片選線,通過把RST輸入驅(qū)動置高電平來啟動所有的數(shù)據(jù)傳送。DS1302由Vcc1或Vcc2兩者中的較大者供電。單片機的最小系統(tǒng)如下圖所示,18引腳和19引腳接時鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出,如圖6。采用三線接口與CPU進行同步通
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1