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

正文內(nèi)容

可編程作息時(shí)間控制器設(shè)計(jì)_單片機(jī)原理課程設(shè)計(jì)(存儲(chǔ)版)

  

【正文】 rw=P2^1。x) for(y=110。 lcden=1。 lcden=1。 write_date(0x30+ge)。 //控制 lcd屏刷新的變量 flag2=1。 //系統(tǒng)啟動(dòng)時(shí),鬧鐘時(shí)間到發(fā)出的聲音為連續(xù)三次發(fā)出“嘩”的一聲 miao=0。 //初始化鬧鐘的時(shí)間 shi3=7。//設(shè)置開(kāi)顯示,不顯示光 write_(0x06)。//寫(xiě)出時(shí)間顯示部分的兩個(gè)冒號(hào) write_date(39。 write_date(39。 EA=1。//寫(xiě)出時(shí)間顯示部分的兩個(gè)冒號(hào) write_date(39。 write_date(39。 for(i=0。 while(!K1) //判斷是否松開(kāi)按鍵,后同 if(K1num==1) { TR0=0。 //置 K1num=1 while(!K1)。 if(K2==0) {write_(0x80+0x40+13)。 { if(K3==0) //判斷 K3按下 {delay(5)。 write_(0x80+0x40+11)。 write_(0x80+0x40+15)。 } if(K3==0amp。 for(i=0。amp。amp。 //每調(diào)節(jié)一次送液晶顯示 write_(0x80+0x40+10)。 //則調(diào)整分加 1 if(fen1==60) //若滿 60后將清零 fen1=0。 write_(0x0c)。 write_(0x80+0x40+14)。}} } } void shangke() //上課定時(shí) {if( K3num==0) {write_(0x80+0x40)。 write_(0x80+0x40+13)。 //送去液晶顯示定時(shí)的分,時(shí) write_sfm(9,shi2)。 while(!K2)。 while(!K1)。 if(K2==0) { write_(0x80+0x40+13)。 { if(K3==0) //判斷 K3按下 { delay(5)。 write_(0x80+0x40+11)。 write_(0x80+0x40+15)。 } if(K3==0amp。 for(i=0。amp。amp。 //每調(diào)節(jié)一次送液晶顯示 write_(0x80+0x40+10)。 //則調(diào)整分加 1 23 if(fen1==60) //若滿 60后將清零 fen1=0。 write_(0x0c)。 write_(0x80+0x40+14)。}}} } void dengkong() //燈光控制 {if(K3num==0) {write_(0x80+0x40)。 write_(0x80+0x40+13)。 //送去液晶顯示定時(shí)的分,時(shí) write_sfm(9,shi4)。 while(!K2)。 while(!K1)。 if(K2==0) { write_(0x80+0x40+13)。 { if(K3==0) //判斷 K3按下 { delay(5)。 write_(0x80+0x40+11)。 write_(0x80+0x40+15)。(shi==shi2))||((fen==fen3)amp。 flag3=0。 beep=1。amp。 } if((fen==fen1)amp。i++) write_date(Alarm_00[i])。(flag2==0))||((fen1==fen1)amp。amp。amp。 } if((fen==fen3)amp。 write_sfm(12,fen3)。(shi==shi3)))amp。 for(i=0。amp。amp。amp。(flag2==0))||((fen1==fen3)amp。i9。amp。 //送去液晶顯示定時(shí)的分,時(shí) write_sfm(9,shi2)。amp。(shi==shi1)amp。 for(i=0。amp。amp。 beep=0。(flag2==1)) //鬧鐘的響鬧控制 {beep=1。(shi==shi1))||((fen==fen2)amp。 39。//flag=1. write_sfm(12,fen)。 //每調(diào)節(jié)一次送液 24 晶顯示一下 write_(0x80+0x40+13)。amp。 if(K1==0) {write_(0x80+0x40+10)。 if(K2==0) {write_sfm(12,fen4)。i++) write_date(Alarm_3[i])。K3num==0) //判斷 K3首次被按下,則設(shè)置鬧鐘 {delay(5)。 39。:39。 K3num=0。 while(!K2)。 //則調(diào)整定時(shí)的時(shí)加 1 if(shi3==24) //若滿 24后將清零 shi1=0。 //K2松開(kāi)顯示當(dāng)前時(shí)間 write_sfm(9,shi)。 //光標(biāo)開(kāi)始閃爍 write_(0x80+0x40+13)。 K3num=1。i9。 39。 //flag=液晶顯示的系統(tǒng)時(shí)間值, flag=0,則為修改鬧鐘時(shí)間時(shí),屏幕顯示的是修改鬧鐘時(shí)間的值 write_sfm(12,fen)。 //每調(diào)節(jié)一次送液晶顯示一下 write_(0x80+0x40+13)。amp。 if(K1==0) { write_(0x80+0x40+10)。 if(K2==0) { write_sfm(12,fen2)。i++) write_date(Alarm_1[i])。K3num==0) //判斷 K3首次被按下,則設(shè)置鬧鐘 { delay(5)。 39。:39。 K3num=0。 while(!K2)。 //則調(diào)整定時(shí)的時(shí)加 1 if(shi2==24) //若滿 24后將清零 shi1=0。 //K2松開(kāi)顯示當(dāng)前時(shí)間 write_sfm(9,shi)。 //光標(biāo)開(kāi)始閃爍 write_(0x80+0x40+13)。 K3num=1。i9。 39。 //啟動(dòng)定時(shí)器使時(shí)鐘開(kāi)始走 flag1=1。 //每調(diào)節(jié)一次送液晶顯示 write_(0x80+0x40+13)。amp。 if(K1==0) {write_(0x80+0x40+10)。amp。amp。)。i++) write_date(table2[i])。 //設(shè)置定時(shí)器 0為工作方式 1 TH0=(6553650000)/256。)。delay(10)。 //1602液晶初始化,設(shè)置 16*2顯示。 //初始化鬧鐘的時(shí)間 shi2=7。 //廣播初始化 rw=0。 //K3按鍵被按下的標(biāo)記變量 K4num=0。 write_(0x80+0x40+add)。 P3=date。 P3=。 for(x=z。 sbit K4=P1^3。 uchar code Alarm_00[]= GB 。 最后,我要非常感謝李老師和夏老師在課程設(shè)計(jì)中提供的幫助,以及李老師最后對(duì)我課程設(shè)計(jì)結(jié)果的肯定。首先我要自學(xué)相關(guān)的 c語(yǔ)言,同時(shí)我在網(wǎng)上找到了一些相關(guān)的資料學(xué)習(xí)了一下,并結(jié)合李老師對(duì)課題的分析,讓我對(duì)這個(gè)課題有了自己的思路。 12 首先運(yùn)用 Keil軟件編輯程序,按上圖要生成目標(biāo)代碼文件,不斷地調(diào)試程 序。 } 液晶寫(xiě)命令函數(shù) void write_date(uchar date) {rs=1。當(dāng) RS和 R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng) RS為低電平 R/W為高電平時(shí)可以讀忙信號(hào),當(dāng) RS為高電平 R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。} if(K4num==4) {dengkong()。 if(K4num==0) {time()。flag3==0) 當(dāng)四個(gè)定時(shí)鬧鐘任意一路到達(dá)時(shí),在沒(méi)有按下響鈴終止鍵 K4時(shí), flag2都等于 1,此時(shí)鬧鐘響起,同時(shí)使得 flag3等于 0。(shi==shi4)amp。(shi==shi3)))amp。(shi==shi3)amp。(shi==shi2)amp。(shi==shi1)))amp。(shi==shi1)amp。(shi==shi2))||((fen==fen3)amp。 write_sfm(9,shi)。 shi1++。 write_sfm(12,fen1)。 fen++。 if(shi==24) {shi=0。 TL0=(6553650000)%256。 sbit LED2=P2^3。 4 可編程作息時(shí)間控制器軟件編程設(shè)計(jì) 可編程作息時(shí)間控制器軟件編程主要包括系統(tǒng)初始化、系統(tǒng)時(shí)間校正、系統(tǒng)時(shí)間設(shè)定、作息時(shí)間設(shè)定、響鈴處理、邏輯控制以及 1602LCD液晶顯示 ,整個(gè)程序中響鈴的合理處理以及顯示部分是核心部分,只有處理好鬧鐘的及時(shí)響應(yīng)才會(huì)使得整個(gè)可編程作息時(shí)間控制器按照預(yù)定的設(shè)計(jì)進(jìn)行工作,同時(shí)各個(gè)模塊邏輯上合理分配又將是整個(gè)功能實(shí)現(xiàn)的基礎(chǔ)。故只在按鍵數(shù)量不多時(shí)采用這種按鍵電路。當(dāng) RS和 R/W共同為低電平時(shí)可以寫(xiě)入指令或者顯示地址,當(dāng) RS為低電平 R/W為高電平時(shí)可以讀忙信號(hào),當(dāng) RS為高電平 R/W為低電平時(shí)可以寫(xiě)入數(shù)據(jù)。 CGRAM 是為用戶編寫(xiě)特殊字符留用的,它的容 4 量?jī)H 64 字節(jié)。 K1按鍵, K2按鍵, 接 K3按鍵, K4按鍵, RS口, 口接 RW口, E口, D2陽(yáng)極, D1陽(yáng)極, R3, P3口的 8個(gè)口依次和 LCD的數(shù)據(jù)口 D0~D7. 1602LCD液晶顯示器 LM016L 液晶模塊采用 HD44780 控制器。 PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在 FLASH編程期間,此引腳用于輸入編程脈沖。 P2 口在 FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 P1口: P1口是一個(gè)內(nèi)部提供上拉電阻的 8位雙向 I/O口, P1口緩沖器能接收輸出 4TTL門(mén)電流。 3 可編程作息時(shí)間控制器硬件電路及芯片介紹 系統(tǒng)主要是由 AT89C51單片機(jī)、 1602LCD液晶顯示器以及其他重要元件組成,按鍵作為系統(tǒng)的控制輸入端,可以進(jìn)行時(shí)間、 鬧鐘等內(nèi)容的設(shè)定,并通過(guò)液晶顯示器顯示出時(shí)間等內(nèi)容。其 中時(shí)鐘運(yùn)算模塊要對(duì)時(shí)、分、秒的數(shù)值進(jìn)行 操作 ,并且秒算到 60時(shí),要自己清零并向分進(jìn) 1;分算到 60時(shí),要自己清零并向時(shí)進(jìn) 1, 時(shí)算到 24時(shí),要清零 , 這樣,才 能 循環(huán)記時(shí)?,F(xiàn)在是自動(dòng)化高度發(fā)達(dá)的時(shí)代,特別是電子類產(chǎn)品都是靠?jī)?nèi)部的控制電路來(lái)實(shí)現(xiàn)對(duì)產(chǎn)品的控制,達(dá)到自動(dòng)運(yùn)行的目的,這就需要我們這里要做的設(shè)計(jì)中的電器元件及電路的支持。 3.控制系統(tǒng)總框圖及系統(tǒng)工作原理。 三、課程設(shè)計(jì)內(nèi)容 設(shè)計(jì)以 89C51單片機(jī)和外圍元器件構(gòu)成的單片機(jī)應(yīng)用系統(tǒng),并完成相應(yīng)的軟硬件調(diào)試。 二、課程設(shè)計(jì)目的 課程設(shè)計(jì)是課程教學(xué)中的一項(xiàng)重要內(nèi)容,是達(dá)到教學(xué)目標(biāo)的重要環(huán)節(jié),是綜合性較強(qiáng)的實(shí)踐教學(xué)環(huán)節(jié),它對(duì)幫助學(xué)生全面牢固地掌握課堂教學(xué)內(nèi)容、培養(yǎng)學(xué)生的實(shí)踐和實(shí)際動(dòng)手能力、提高學(xué)生全面素質(zhì)具有很重要的意義。 3. 軟件設(shè)計(jì):根據(jù)已設(shè)計(jì)出的軟件系統(tǒng)框圖,用匯編語(yǔ)言或 C51編制出各功能模塊的子程序和整機(jī)軟件系統(tǒng)的主程序。 6.電路設(shè)計(jì),軟件編程、調(diào)試中遇到的問(wèn)題及分析解決方法。 ( 3) 按照給定的時(shí)間模擬控制,實(shí)現(xiàn)廣播、上下課打鈴、燈光控制(屏幕顯示) ,同時(shí)具備日期和時(shí)鐘顯示。 系統(tǒng)整體框圖 使用 AT89C51單片機(jī)結(jié)合字符型 LCD顯示器設(shè)計(jì)一個(gè)簡(jiǎn)易的可編程作息時(shí)間控制器,若 LCD選擇有背光顯示的模塊,在夜晚或黑暗的場(chǎng)合中也可使用。由于將多功能 8位 CPU和閃爍存儲(chǔ)器組合在單個(gè)芯 片中, ATMEL的 AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案 。 P2口: P2口為一個(gè)內(nèi)部上拉電阻的 8位雙向 I/O口, P2口緩沖器可接收,輸出 4個(gè) TTL門(mén)電流,當(dāng) P2 3 口被寫(xiě)“ 1”時(shí),其管腳被內(nèi)部上拉電阻拉高,且作為輸入。作為輸入,由于外部下拉為低電平, P3口將輸出電流( ILL)這是由于上拉的緣故。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè) ALE脈沖。 EA/VPP:當(dāng) /EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器( 0000HFFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。HD44780 控制器由兩個(gè) 8 位寄存器、指令寄存器( IR)和數(shù)據(jù)寄存器( DR)、忙標(biāo)志( BF)、顯示數(shù)據(jù) RAM( DDRAM)、字符發(fā)生器 ROM( CGROM)、字符發(fā)生器 RAM( CGRAM)、地址計(jì)數(shù)器( AC)。 LM016L 液 圖 LCD1602 引腳圖 晶模塊的引腳功能見(jiàn)表: 第 1腳: VSS為地電源。 將 respack8的 1口接電源, 2~8口順序和 P3口相連接,并和 LCD的數(shù)據(jù)口 D1~D7相接, VSS接地, VDD接電源, VEE接滑動(dòng)變阻器, RS口接 , RW 口接 , E口接 。當(dāng) I/O接口內(nèi)部有上拉電阻時(shí),外電路可以不配置上拉電阻。 sbit K3=P1^2。 6 TH0=(6553650000)/256。 miao++。}} 7 首先初始化時(shí)定時(shí)器開(kāi)始工作,當(dāng)計(jì)時(shí)時(shí)間到時(shí)進(jìn)入中斷服務(wù),由于方式 1沒(méi)有自動(dòng)裝初值的功能,因此需再次裝入初值,每一次所定的時(shí)間為 50ms,通過(guò)軟件 計(jì)數(shù)的方法,當(dāng)計(jì)數(shù)達(dá)到 20 次時(shí)剛好 1秒鐘,如果計(jì)數(shù)不到 20次,則再次給定時(shí)器裝入初值,
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1