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

正文內(nèi)容

數(shù)字鐘基于51單片機匯編語言設(shè)計51單片機數(shù)字時鐘(參考版)

2024-11-13 16:46本頁面
  

【正文】 雖然自己盡了很大的努力,勉強完成了課題的要求,但是還有很多不盡人意的地方,我想大概是由于自己知識薄弱,對編程和仿真經(jīng)驗不足的緣故 吧,作為一個學(xué)電氣自動化技師段的學(xué)生,我想我有必要通過這次課更多的了解自己的不足,從而在以后的學(xué)習(xí)工作中不斷增強自己的動手能力,爭取在電路設(shè)計方面取進步。 通過這個課程設(shè)計,使我發(fā)現(xiàn),原來小小的一片單片機有這么強大的功能,能應(yīng)用于各種領(lǐng)域。 經(jīng)過這幾個周的時間,常??磿?、上網(wǎng)查資料,摸索 2個仿真軟件的應(yīng)用,我對數(shù)字時鐘電路單片機的設(shè)計有了一定的了解,漸漸的對單片機應(yīng)用有了進一步的了解,對相關(guān)知識有了短時間的加強,我深刻的認識到了單片機課程理論學(xué)習(xí)的重要性,沒有扎實的理論基礎(chǔ),做起課程設(shè)計來是十分艱難的,有些很基本的知識都需要查資料去印證,去比較資料上的釋義,弄懂它的意思,然后再寫程序調(diào)試,反復(fù)的實驗。 由于對 Multisim軟件不熟悉,在操作過程中找虛擬元件花費了很長時間,用到最后發(fā)現(xiàn) Multisim這個軟件里沒有要用的一些芯片,上網(wǎng)查資料得知, Multisim是用來仿真復(fù)雜的數(shù)字電路的,不適合單片機的仿真電路。 29 首先,進行硬件電路的設(shè)計,遇到 MCS5 8051,實在不明白這幾個芯片哪個才是這次要用到的,查閱資料得知 MCS51指美國 INTEL公司生產(chǎn)的一系列單片機的總稱,包括了 8051芯片等,而 AT89S5 AT89C51則是由 INTEL公司授權(quán)技術(shù)的產(chǎn)物,它們兼容了 MCS51的功能,而且 AT89S51是 AT89C51芯片的升級版。轉(zhuǎn)眼已經(jīng) 2個通宵了,就弄了這個啼笑皆非的結(jié)果。實踐課上,我們?nèi)?實訓(xùn)中心講課堂上講的最簡單的延時、跳轉(zhuǎn)等幾個小程序做了調(diào)試和仿真練習(xí),這才算是對單片機編程這門課程入門了。 后來 周永寧 老師為大家補課,從單片機編程的最基礎(chǔ)知識講起,從基本的數(shù)據(jù)變換,最簡單的程序指令解釋,到程序設(shè)計的思路、流程、電路圖給我們講授的時候,才讓我茅塞頓開。 if(hour==24) hour = 0。 if(sec==60) { mintue = 0。 if(sec==60) { sec=0。 sec++。 if(stopflag == 0) timer++。 } void InterruptSer1(void) interrupt 1 { Timer0Init()。 //定時器 0開始計時 EA = 1。 //設(shè)置定時初值 TF0 = 0。 //設(shè)置定時器模式 TL0 = 0x30。= 0xF0。 } while (i)。 j = 239。 } void Delaynms(uchar n) { unsigned char i, j。 } if(i3) i++。 case 3: P0=pdat[mintue%10]。 case 2: P0=pdat[mintue/10]。 case 1: P0=pdat[hour%10]。 switch(i) { case 0: P0=pdat[hour/10]。 P0=0x00。 26 } Delaynms(200)。 mintue=0。 while(P3==0xFB) break。 case 0xFB: stopflag=~stopflag。 if(mintue==60) mintue=0。 break。 } } void Switch_push() { switch(P3) { case 0xFE: hour++。 //按鍵掃描函數(shù) 25 void main() { Timer0Init()。 //打印數(shù)碼管 void Timer0Init(void)。 void Delaynms(uchar n)。 // uchar hour = 0。 //系統(tǒng)時鐘 uchar sec = 0。 code uchar pdat[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}。 include include //include define uchar unsigned char define uint unsigned int sbit LED = P2^0。 ( 3)跟蹤功能 高性能的單片機開發(fā)系統(tǒng)具有邏輯分析儀的功能,在目標(biāo)程序運行過程中,能跟蹤存儲目標(biāo)系統(tǒng)總線上的地址、數(shù)據(jù)和控制信號的狀態(tài)變化,跟蹤存儲器能同步地記錄總線上的信息,用戶可以根據(jù)需要顯示跟蹤存儲器 搜集到的信息,也可以顯示某一位總線狀態(tài)變化的波 24 形。 ( 2)目標(biāo)系統(tǒng)狀態(tài)的讀出修改功能 當(dāng) CPU停止執(zhí)行目標(biāo)系統(tǒng)的程序后,允許用戶方便地讀出或修改目標(biāo)系統(tǒng)資源的狀 態(tài),以便檢查程序運行的結(jié)果、設(shè)置斷點條件以及設(shè)置程序的初始參數(shù)。 3)全速運行:能使 CPU從指定地址開始連續(xù)地全速運行目標(biāo)程序。 1)單步運行:能使 CPU從任意的程序地址開始執(zhí)行一條指令后停止運行。 調(diào)試功能 開發(fā)系統(tǒng)對目標(biāo)系統(tǒng)軟、硬件的調(diào)試功能強弱,將直接關(guān)系到開發(fā)的效率。 在研制目標(biāo)系統(tǒng)開始的初級階段,目標(biāo)程序還未生成,此時用戶編寫的程序必須存放在開發(fā)系統(tǒng) RAM存儲器內(nèi),以便于對程序進行調(diào)試和修改。這些資源應(yīng)允許目標(biāo)系統(tǒng)充分自由地使用,不應(yīng)受到任何限制,使目標(biāo)系統(tǒng)能根據(jù)單片機固有的資源特性進行硬件和軟件的設(shè)計。 四、數(shù)字時鐘系統(tǒng)運行及仿真 WAVE6000仿真軟件介紹 單片機仿真功能 在線仿真時,開發(fā)系統(tǒng)應(yīng)能將在線仿真器中的單片機完整地出借給目標(biāo)系統(tǒng),不占用目標(biāo)系統(tǒng)單片機的任何資源,使目標(biāo)系統(tǒng)在聯(lián)機仿真和脫機運行時的環(huán)境(工作程序 、使用的資源和地址空間)完全一致,實現(xiàn)完全的一次性仿真。當(dāng) CPU 響應(yīng)中斷后,再由硬件將 TF0清 0。 中斷系統(tǒng)的結(jié)構(gòu)如下圖: 22 IT IE1的用途和 IT0、 IE0相同。 IE0: INT0中斷請求標(biāo)志位。在內(nèi)部的 TCON中有四位是與外中斷有關(guān)的。 TI/ RI:串行 I/ O 中斷,串行端口完成一幀字符發(fā)送/接收后引起。 T0:定時器/計數(shù)器 0中斷,由 T0計滿回零引起。 INT0:外部中斷 0,由 P3. 2端口線引入,低電平或下跳沿引起。 MCS51單片機的中斷系統(tǒng)簡單實用,其基本特點是:有 5個固定的可屏蔽中斷源, 3個在片內(nèi), 2個在片外,它們在程序存儲器中各有固定的中斷入口地址,由此進入中斷服務(wù)程序; 5個中斷源有兩級中斷優(yōu)先級,可形成中斷嵌套; 2個特殊功能寄存器用于中斷控制和條件設(shè)置的編程。雖 21 然對外部輸入信號的占空比無特殊要求,但為了確保某給定電平在變化前至少被采樣一次,外部計數(shù)脈沖的高電平與低電平保持時間均需在一個機器周期以上。所以檢測一個由 1至 0的跳變需要兩個機器周期,故外部事年的最高計數(shù)頻率為振蕩頻率的 1/24。若一個機器周期采樣值為 1,下一個機器周期 采樣值為 0,則計數(shù)器加 1。 當(dāng)定時器 /計數(shù)器為計數(shù)工作方式時,通過引腳 T0 和 T1 對外部信號計數(shù),外部脈沖的下降沿將觸發(fā)計數(shù)。如果晶振為 12MHz,則計數(shù)周期為: T=1/( 12 106) Hz 1/12=1μ s 這是最短的定時周期。 顯然,定時器的定時時間與系統(tǒng)的振蕩頻率有關(guān)。 16位的定時器 /計數(shù)器實質(zhì)上就是一個加 1計數(shù)器,其控制電路受軟件控制、切換。 TMOD 主要是用于選定定時器的工作方式; TCON主要是用于控制定時器的啟動停止,此外 TCON還可以保存 T0、 T1的溢出和中斷標(biāo)志。此外,其內(nèi)部還有一個 8 位的定時器方式寄存器 TMOD 和一個 8 位的定時控制寄存器 TCON。每個寄存器均可單獨訪問。 脈沖溢滿 20? 秒 +1=60? 分 +1=60? 分清零 ,時加 1 時 +1=24? 時清零 中斷返回 圖 2 定時中斷(走時)子程序流程圖 秒清零 ,分加 1 秒加 1 定時中斷口 19 、計數(shù)器功能 /計數(shù)器的結(jié)構(gòu) 從下面定時器 /計數(shù)器的結(jié)構(gòu)圖中我們可以看出, 16 位的定時 /計數(shù)器分別由兩個 8 位專用寄存器組成,即: T0由 TH0和 TL0構(gòu)成; T1由 TH1和 TL1構(gòu)成。 (走時)子程序流程 定時器中斷時,先檢測 50ms脈沖是 否計數(shù) 20次,計數(shù)到 20 次,秒就加 1; 如果沒計滿 60,就返回顯示時間,如果秒計滿 60 秒,就清零秒,給分加 1;檢測分鐘,如果沒計滿 60,繼續(xù)計時,返回顯示時間,如果滿 60,就清零分鐘,給小時加 1;檢測小時,如果沒計滿 24,就繼續(xù)計時,返回顯示時間,如果計滿 24,就清零,給秒加 1,顯示時間。 主程序是先開始,系統(tǒng)初始化、定時器初始化,脈沖基時開始跑秒后進行按鍵檢測。 ,程序執(zhí)行效率
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1