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

正文內(nèi)容

可編程作息時間控制器設(shè)計_單片機原理課程設(shè)計-文庫吧資料

2024-09-03 15:52本頁面
  

【正文】 sbit LED2=P2^3。 sbit rw=P2^1。 sbit K4=P1^3。 //四個按鍵 sbit K2=P1^1。 uchar code deng[]= LIGHTING 。 uchar code Alarm_22[]= XK 。 uchar code Alarm_00[]= GB 。 uchar code Alarm_2[]= XKDS 。 uchar code Alarm_0[]= GBDS 。 //K1numK1按鍵被按下的標記變量 ,K2numK2按鍵被按下的標記變量 ,K3num=0K3按鍵被按下的標記變量 uchar code table[]= CHINA 。 最后,我要非常感謝李老師和夏老師在課程設(shè)計中提供的幫助,以及李老師最后對我課程設(shè)計結(jié)果的肯定。 回首這一周多的單片機課程設(shè)計,發(fā)現(xiàn)自己的程序按模塊劃分還不是很難,和當(dāng)初剛剛拿到題目時的各種不明白、各種不懂發(fā)現(xiàn)自己真的收獲了很多,并且在看看相關(guān)類似的課題時能夠基本找出基本的設(shè)計思路,對于用到 602LCD液晶顯示器相關(guān)的內(nèi)容能夠做出相關(guān) 的反應(yīng),這個顯示器曾經(jīng)讓我絞盡腦汁依舊不懂,曾經(jīng)讓我的程序漏洞百出,但是最終我征服了它,這是我的一大收獲。雖然整個課程設(shè)計的過程有點痛苦,但是當(dāng)我看到自己的最終成果時還是很開心,因為我 這幾天的努力沒有白白浪費,培養(yǎng)了我獨立思考的能力,提高我的自學(xué)以及應(yīng)用能力,這將是我以后學(xué)習(xí)生活的非常寶貴的經(jīng)歷。 在以后的幾天里我都在學(xué)習(xí)和使用 c語 言,讓我對 LCD顯示器有了更多的認識,但是在整個程序編寫過程中問題基本都處在 LCD顯示上,一遍遍的嘗試后總會出現(xiàn)一些問題,曾經(jīng)我也因為最后的一點點問題想向老師請教,最后自己沒有解決的時候甚至想放棄,但是最終我還是堅持下來,并最終完成了程序的基本要求,并且通過了李老師的第一次檢查,并對李老師提出的一些不滿足的地方進行了修改,但是這些修改在進過之前所設(shè)計中遇到的問題來說也挺難得,但是我很快就解決掉了,因為我對自己的程序以及 LCD顯示器有了好好地認識,從而最后實現(xiàn)了比較好的結(jié)果,當(dāng)李老師驗收過后感到非常的高興,在 此我非常感謝李老師對我設(shè)計過程中提供的幫助,以及最后對我設(shè)計成果的認可。首先我要自學(xué)相關(guān)的 c語言,同時我在網(wǎng)上找到了一些相關(guān)的資料學(xué)習(xí)了一下,并結(jié)合李老師對課題的分析,讓我對這個課題有了自己的思路。 剛開始分到課題時,我便開始研究這個課題,由于我們的課題是在題目 4的基礎(chǔ)上改過來的,因此我先研究了一下題目 4的要求以及原理,再結(jié)合我們的課題讓我對這個課題有了一些了解,下午時我們和大多數(shù)同學(xué)一樣先將電 路圖畫了出來,但是當(dāng)我做完這個課題過后,我很同意老師的意見,不應(yīng)當(dāng)立即畫電路圖,因為我們對整個課題還不是很了解,對于Proteus軟件也不懂,結(jié)果就是我們用了一下午只畫了一張圖,而且對于整個課程設(shè)計課題的理解毫無幫助。同時 整個延時又是非常重要的,在進行按鍵設(shè)定時這個問題就出現(xiàn)了,有時候按一下會會進行幾個需要的操作,使得結(jié)果不符合我的要求,所以應(yīng)用剛開始編寫程序時不斷適當(dāng)增加延時使得程序漸漸符合要求。每一小塊程序編寫過后都進行聯(lián)調(diào),這樣可以及時觀察到自己所編的程序是否符合自己的目的,當(dāng)出現(xiàn)問題時及時處理,可以避免當(dāng)有大量問題后無法找出錯誤的地方,可以提高編程的效率,也有利于最終將程序編寫出來。 12 首先運用 Keil軟件編輯程序,按上圖要生成目標代碼文件,不斷地調(diào)試程 序。 } 液晶寫數(shù)據(jù)函數(shù) 當(dāng)需要將內(nèi)容顯示到 LCD顯示器上之前,首先要向液晶顯示器 輸入寫命令函數(shù),有上硬件分析可以得到 LCD液晶顯示上一排地址從 80H~8FH,一共 16位,下面一排地址從 C0H~CFH,同樣是 16位,所以在進行液晶顯示之前首先確定要將結(jié)果在哪一位上顯示,然后在調(diào)用液晶寫數(shù)據(jù)函數(shù),只有兩者結(jié)合使用才會得到想要的結(jié)果。 lcden=1。 lcden=0。 } 液晶寫命令函數(shù) void write_date(uchar date) {rs=1。 lcden=1。 lcden=0。 程序: void write_(uchar ) {rs=0。當(dāng) RS和 R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng) RS為低電平 R/W為高電平時可以讀忙信號,當(dāng) RS為高電平 R/W為低電平時可以寫入數(shù)據(jù)。 RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。系統(tǒng)剛啟動時,按鍵 K4處于系統(tǒng)時間狀態(tài),在此狀態(tài)下可以利用之前所介紹的功能進行所需要的修改,當(dāng)?shù)谝淮伟聪?K4鍵時,就會進入廣播定時的控制口,此時可以根據(jù)需要修改所要定的時間,并可以顯示自己所定的鬧鐘時間,再次按下 K4鍵時,將會進入上課定時的鬧鐘,和之前的鬧鐘一樣,可以進行相同的操作,當(dāng)再次按下 K4 鍵時將進入下課鬧鈴狀態(tài),然后將要進入的的是燈光控制定時,此時 Knum4為 4,當(dāng)再次 按下 K4鍵時,將經(jīng)過判斷清零,重新開始,以此來實現(xiàn)按鍵 K4可以更換鬧鐘的功能,同時更改鬧鐘時間的功能。 } clock()。} if(K4num==4) {dengkong()。 } if(K4num==3) {xiake()。} if(K4num==2) { shangke()。} if(K4num==1) {guangbo()。 if(K4num==0) {time()。(flag3==1)) { K4num++。 邏輯控制 圖 邏輯控制流程圖 程序: while(1) {if((K4==0)amp。當(dāng)鬧鐘關(guān)斷過后將及時跳出,并且使得 LCD顯示當(dāng)前的時間。flag3==0) 當(dāng)四個定時鬧鐘任意一路到達時,在沒有按下響鈴終止鍵 K4時, flag2都等于 1,此時鬧鐘響起,同時使得 flag3等于 0。(flag4==0) ) if(K4==0amp。(shi==shi4)))amp。(flag2==0))||((fen1==fen4)amp。(shi==shi4)amp。(flag2==1)) if((((fen==fen4)amp。(shi==shi4)amp。(flag4==0)) if((fen==fen4)amp。(shi==shi3)))amp。(flag2==0))||((fen1==fen3)amp。(shi==shi3)amp。(flag2==1)) if((((fen==fen3)amp。(shi==shi3)amp。(flag4==0)) if((fen==fen3)amp。(shi==shi2)))amp。(flag2==0))||((fen1==fen2)amp。(shi==shi2)amp。(flag2==1)) if((((fen==fen2)amp。(shi==shi2)amp。(flag4==0)) if((fen==fen2)amp。(shi==shi1)))amp。(flag2==0))||((fen1==fen1)amp。(shi==shi1)amp。(flag2==1)) if((((fen==fen1)amp。(shi==shi1)amp。(flag2==1)) if((fen==fen1)amp。(shi==shi4)))amp。(shi==shi3))||( (fen==fen4)amp。(shi==shi2))||((fen==fen3)amp。(shi==shi1))||((fen==fen2)amp。 響鈴處理 圖 響鈴處 理流程圖 程序: if((((fen==fen1)amp。當(dāng)通過 K4鍵進入鬧鐘設(shè)定電路 9 后,如果處于廣播的鬧鐘時間設(shè)定時,此時如果沒有按下任何開關(guān)鍵, LCD將顯示此時的鬧鐘標志“ GB” 并且再其后面顯示現(xiàn)在的系統(tǒng)時間,在沒有按下 K3鍵之前,如果按下 K2鍵,則 LCD將顯示此處鬧鐘時間,并且在其前面有此路標志,如“ GB” ,松開按鍵 K2時, LCD將顯示之前的狀態(tài);如果按下首次按下 K3鍵,則開始修改鬧鐘的時間,此時光標在分 鐘上閃爍,此時按下 K2鍵則修改鬧鐘的分鐘,如果分等于 60時,則自動清零,否則繼續(xù)往上加;如果按下 K1鍵則修改鬧鐘的小時,如果小時數(shù)等于 24,則自動清零,否則繼續(xù)往上加。 write_sfm(9,shi)。 write_sfm(12,fen1)。 fen1++。 write_sfm(9,shi1)。 shi1++。 write_sfm(9,shi)。 while(!K2)。 if(K2==0) {write_sfm(12,fen1)。 write_sfm(12,fen1)。此程序主要的作用就是通過人為的方法來設(shè)定系統(tǒng)的時間,使得系統(tǒng)時間滿足實際需要。開始時,光標停留在分鐘上,當(dāng)再次按下 K1時,光標將會跳到小時并且小時位的時間將會加一,如果時位的數(shù)等于 24時,則自動清零,從零開始再往上加,如果按下 K2鍵按下則分鐘自動加一 ,如果分鐘達到 60時則自動清零,從零開始往上加,并通過 LCD顯示出此時的狀態(tài)。 if(K3==0) TR0=1。 fen++。 if(shi==24) shi=0。 系統(tǒng)時間設(shè)定 圖 改變小時流程圖 圖 改變分鐘流程圖 程序: if(K1==0) while(!K1) TR0=0。 write_sfm(12,fen)。 if(shi==24) {shi=0。 if(fen==60) {fen=0。 if(miao==60) {miao=0。 if(aa==20) {aa=0。 TL0=(6553650000)%256。將定時器 0的工作模式選擇為工作方式 1,同時給定時器裝初值,并且開始計數(shù)。 TL0=(6553650000)%256。 sbit beep=P2^5。 sbit LED2=P2^3。 sbit rw=P2^1。 sbit K4=P1^3。 sbit K2=P1^1。 4 可編程作息時間控制器軟件編程設(shè)計 可編程作息時間控制器軟件編程主要包括系統(tǒng)初始化、系統(tǒng)時間校正、系統(tǒng)時間設(shè)定、作息時間設(shè)定、響鈴處理、邏輯控制以及 1602LCD液晶顯示 ,整個程序中響鈴的合理處理以及顯示部分是核心部分,只有處理好鬧鐘的及時響應(yīng)才會使得整個可編程作息時間控制器按照預(yù)定的設(shè)計進行工作,同時各個模塊邏輯上合理分配又將是整個功能實現(xiàn)的基礎(chǔ)。 硬件電路設(shè)計圖 圖 系統(tǒng)整體電路圖 將 respack8的 1口接電源, 2~8口順序和 P3口相連接,并和 LCD的數(shù)據(jù)口 D1~D7相接。 ( 2) 蜂鳴器:將蜂鳴器的一端電源,另一端接至晶閘管集電極,當(dāng)需要鬧鐘響時, 的電平使得晶閘管導(dǎo)通,從而使得蜂鳴器發(fā)出聲響。上拉電阻保證了按鍵斷開時, I/O接口線有確定的高電平。故只在按鍵數(shù)量不多時采用這種按鍵電路。每個獨立式按鍵單獨占有一根 5 I/O接口線,每 根 I/O接口線的工作狀態(tài)不 會影響到其他 I/O接口線 。 其他重要元件 圖 獨立式鍵盤 ( 1)獨立式鍵盤的接口電路:在單片機應(yīng)用系統(tǒng)中,有時只需要幾個簡單的按鍵向系統(tǒng)輸入信息。 第 7~ 14腳: D0~ D7為 8位雙向數(shù)據(jù)線。當(dāng) RS和 R/W共同為低電平時可以寫入指令或者顯示地址,當(dāng) RS為低電平 R/W為高電平時可以讀忙信號,當(dāng) RS為高電平 R/W為低電平時可以寫入數(shù)據(jù)。 第 4腳: RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。 第 2腳: VDD接 5V正 電源。 AC 可以存儲 DDRAM 和 CGRAM的地址,如果地址碼隨指令寫入 IR,則 IR 自動把地址碼裝入 AC,同時選擇 DDRAM 或者 CGRAM 單元。 CGRAM 是為用戶編寫特殊字符留用的,它的容 4 量僅 64 字節(jié)。 DDRAM 用來存儲顯示的字符,能存儲 80 個字符碼。 IR 用于寄存指令碼,只能寫入不能讀出; DR 用于寄存數(shù)據(jù),數(shù)據(jù)由內(nèi)部操作自動寫入 DDRAM和 CGRAM,或者暫存從 DDRAM和 CGRAM 讀出的數(shù)據(jù)。 LM016L 與單片機 MCU( Microcontroller Unit)通訊可采用 8 位或者 4 位并行傳輸兩種方式。 K1按鍵, K2按鍵, 接 K3按鍵, K4按鍵, RS口, 口接 RW口, E口, D2陽極, D1陽極, R3, P3口的 8個口依次和 LCD的數(shù)據(jù)口 D0~D7. 1602LCD液晶顯示器 LM016L 液晶模塊采用 HD44780 控制器。 XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。注意加密方式 1時, /EA將內(nèi)部鎖定為 RESET;當(dāng) /EA端保持高電平時,此間內(nèi)
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1