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

正文內(nèi)容

單片機定時計數(shù)器設(shè)計方案-在線瀏覽

2025-06-12 13:37本頁面
  

【正文】 型液晶,能夠同時顯示16x02即32個字符。1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。1602LCD是指顯示的內(nèi)容為16X2,即可以顯示兩行,每行16個字符液晶模塊(顯示字符和數(shù)字)。管腳功能1602采用標(biāo)準(zhǔn)的16腳接口,其中:第1腳:VSS為電源地第2腳:VCC接5V電源正極第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會 產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。第5腳:RW為讀寫信號線,高電平(1)時進(jìn)行讀操作,低電平(0)時進(jìn)行寫操作。第7~14腳:D0~D7為8位雙向數(shù)據(jù)端。15腳背光正極,16腳背光負(fù)極。內(nèi)有4組可設(shè)置的定時開/關(guān),控制一路開關(guān)量輸出。具備鬧鐘和時間段的設(shè)定功能,鬧鈴方式為蜂鳴器持續(xù)響10秒鐘,或者用按鍵手動關(guān)閉響鈴。復(fù)位時間是2011年1月1日00:00:00。2. 因為晶振頻率為12MHz,所以計數(shù)頻率為12MHz/12=1MHz,這就需要計數(shù)器0計數(shù)1000000次才可以達(dá)到一秒鐘。這樣可以得到初始化定時器的控制字:TMOD=0x01,計數(shù)初值6553650000=15536即 0x3cb0,這樣就可以設(shè)計一個計數(shù)一秒的函數(shù)。4. 不斷的掃描按鍵,并且響應(yīng)按鍵輸入。定時器能顯示年月日、星期、時分秒。定時開關(guān)的設(shè)置分為單次操作(2011年6月25日8:00開2011年6月26日18:00關(guān)),周期操作(如周三8:00 開,周四16:00關(guān))。K2為時間的分鐘設(shè)定鍵,當(dāng)處于時間的調(diào)整時,按它可以對時間的分鐘進(jìn)行調(diào)整,當(dāng)未處于時間調(diào)整時,按下第一次為開關(guān)量的開啟時間,按下第二次為開關(guān)量的關(guān)閉時間。K4為定時任務(wù)是否開啟的設(shè)定鍵,若LED的黃燈是亮的說明任務(wù)是開啟的,若沒有亮則是關(guān)閉的。KKK8依次為年月日的設(shè)定鍵。首先,由于采用單片機內(nèi)部定時器產(chǎn)生時間信號,所以如果時鐘意外掉電,則會丟失當(dāng)前的時間和鬧鐘等數(shù)據(jù),需要重新設(shè)定。課設(shè)也大大鍛煉了我們的自學(xué)能力。參考文獻(xiàn)[1]王質(zhì)樸,北京理工大學(xué)出版社,2009.[2]鄭學(xué)堅;[M].北京:清華大學(xué)出版社,2001[3](第三版).北京清華大學(xué)出版社,2007.[4](模擬部分).北京:高等教育出版社,2004.[5] 康光華. 電子技術(shù)基礎(chǔ)[M]. 北京:高等教育出版社,2006:124135.[6] 譚浩強. C程序設(shè)計[M].北京:清華大學(xué)出版社,2005:82135. 附錄1 硬件電路設(shè)計圖附錄2 主程序includedefine uint unsigned int define uchar unsigned char uint miao,fen,fen1,shi,shi1,flag1,flag2,flag3,aa,K1num,K2num,K3num,K4num,N,i,dan1,k,fen2,shi2,a,m,Month=1,Year=2011,Day=1,K6num,num,Year1,Year2,Day1,Day2,Month1,Month2。 //四個按鍵sbit K2=P1^1。sbit K4=P1^3。sbit K6=P1^5。sbit K8=P1^7。sbit dan2=P2^7。sbit lcden=P2^2。 //發(fā)光二極管控制端sbit beep=P2^4。 //繼電器控制端void delay(uint z) //延時函數(shù){ uint x,y。x0。y0。}void write_(uchar ) //液晶寫命令函數(shù){ rs=0。 P0=。 lcden=1。 lcden=0。 lcden=0。 delay(5)。 delay(5)。 }void write_sfm(uchar add,uchar date) //液晶寫時分秒函數(shù){ uchar shi,ge。 ge=date%10。 write_date(0x30+shi)。} void write_sfm1(uchar add,uchar date) //液晶寫時分秒函數(shù){ uchar shi,ge。 ge=date%10。 write_date(0x30+shi)。 } void write_sfm2(uchar add,uchar date) //液晶寫時分秒函數(shù){ uchar qian,bai,ge,shi。 bai=date%1000/100。 ge=date%10。 write_date(0x30+qian)。 write_date(0x30+shi)。}void init() //初始化函數(shù){ aa=0。 //K1按鍵被按下的標(biāo)記變量 K2num=0。 //K3按鍵被按下的標(biāo)記變量 K4num=0。 //控制lcd屏刷新的變量 flag2=1。 //控制鬧鐘響起時,按下K4停止鬧鐘響鬧的標(biāo)記 led=1。 //繼電器初始化 N=100。 //系統(tǒng)初始化時間 fen=0。 fen1=1。 beep=0。 //液晶使能端初始化 write_(0x38)。5*7點陣,8位數(shù)據(jù)接口 write_(0x0c)。 //寫一個字符后地址指針自動加1 write_(0x01)。 //將數(shù)據(jù)指針定位到第一行,第一個字處// for(num=0。num++) //顯示鬧鐘標(biāo)示:TIMING CLOCK// {// write_date(table[num])。// } write_(0x80+0x40+7)。:39。 write_(0x80+0x40+10)。:39。 write_(0x80+8)。39。 write_(0x80+11)。39。 write_sfm(8,fen)。 TMOD=0x01。 //定時器裝初值 TL0=(6553650000)%256。 //開總中斷 ET0=1。 //啟動定時器0}void keyscan() //鍵盤掃描函數(shù){ if(K1==0amp。K3num==0) //判斷K1按下,按下前沒有按下K3鍵,則開始修改時間 { delay(5)。amp。 while(!K1) //判斷是否松開按鍵,后同 if(K1num==1) { TR0=0。 //第一次按下光標(biāo)定位到分鐘位置 write_(0x0f)。amp。amp。 //延時消抖,后同 if(K3==0) { flag1=0。 //第一次按下光標(biāo)定位到分鐘位置 while(!K3)。 write_sfm(8,fen1)。 write_(0x0f)。 //顯示位置回到調(diào)節(jié)處 } } if(K3==0amp。K3num==1amp。K1num==0) //判斷K3首次被按下,則設(shè)置鬧鐘 { delay(5)。 write_(0x80+0x40+9)。 K3num=2。 //送去液晶顯示定時的分,時 write_sfm(5,shi2)。 //光標(biāo)開始閃爍 write_(0x80+0x40+9)。amp。 if(K1==0) { write_(0x80+0x40+6)。 //置K1num=1 while(!K1)。 //則調(diào)整時加1 if(shi==24) shi=0。 //每調(diào)節(jié)一次送液晶顯示一下 write_(0x80+0x40+6)。amp。 if(K2==0) { write_(0x80+0x40+9)。 while(!K2)。 //則調(diào)整分加1 if(fen==60) fen=0。 //每調(diào)節(jié)一次送液晶顯示一下 write_(0x80+0x40+9)。amp。 //延時消抖,后同 if(K6==0) { flag1=0。 //第一次按下光標(biāo)定位到分鐘位置 while(!K6)。
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1