![基于PIC的電子表設(shè)計與實現(xiàn)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-9/1/8a37d520-feea-465e-99ad-fe90e0a04a21/8a37d520-feea-465e-99ad-fe90e0a04a211.gif)
![基于PIC的電子表設(shè)計與實現(xiàn)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-9/1/8a37d520-feea-465e-99ad-fe90e0a04a21/8a37d520-feea-465e-99ad-fe90e0a04a212.gif)
![基于PIC的電子表設(shè)計與實現(xiàn)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-9/1/8a37d520-feea-465e-99ad-fe90e0a04a21/8a37d520-feea-465e-99ad-fe90e0a04a213.gif)
![基于PIC的電子表設(shè)計與實現(xiàn)_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-9/1/8a37d520-feea-465e-99ad-fe90e0a04a21/8a37d520-feea-465e-99ad-fe90e0a04a214.gif)
![基于PIC的電子表設(shè)計與實現(xiàn)_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-9/1/8a37d520-feea-465e-99ad-fe90e0a04a21/8a37d520-feea-465e-99ad-fe90e0a04a215.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、xxx 大學(xué)本科畢業(yè)設(shè)計 i xxxxxxxxxx 大學(xué)本科畢業(yè)設(shè)計大學(xué)本科畢業(yè)設(shè)計 基于 pic 的電子表設(shè)計與實現(xiàn) 學(xué)生姓名學(xué)生姓名 所所 在在 系系 專業(yè)名稱專業(yè)名稱 班班 級級 學(xué)學(xué) 號號 指導(dǎo)教師指導(dǎo)教師 xxx 大學(xué)本科畢業(yè)設(shè)計 ii 基于 pic 的電子表設(shè)計 學(xué)生: 指導(dǎo)教師: 內(nèi)容摘要內(nèi)容摘要: :近年來隨著計算機在社會領(lǐng)域的滲透和大規(guī)模集成電路的發(fā)展,單片機的應(yīng) 用正在不斷地走向深入,由于它具有功能強,體積小,功耗低,價格便宜,工作可靠, 使用方便等特點,因此特別適合于與控制有關(guān)的系統(tǒng),越來越廣泛地應(yīng)用于自動控制, 智能化儀器,儀表,數(shù)據(jù)采集,軍工產(chǎn)品以及家用電器等各個領(lǐng)域
2、,單片機往往是作為 一個核心部件來使用,在根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點的軟件結(jié)合, 以作完善。 本次設(shè)計中以單片機的發(fā)展過程和發(fā)展方向為背景,介紹了單片機的輸入輸出的工 作原理和操作方法,中斷的工作原理和操作方法,定時器/計數(shù)器 tmr1 的工作原理和電 路結(jié)構(gòu),led 的內(nèi)部結(jié)構(gòu)。電路程序設(shè)計及調(diào)試過程。 本次做的電子表是以單片機(pic16f877)為核心,結(jié)合相關(guān)的元器件(共陰極 led 數(shù)碼顯示器等) ,再配以相應(yīng)的軟件,達到制作簡易電子表的目的,其硬件部分難點在于 元器件的選擇、布局及焊接。 關(guān)鍵詞:定時器/計數(shù)器 tmr1 單片機 pic16f877 共陰極 led
3、數(shù)碼顯示器 xxx 大學(xué)本科畢業(yè)設(shè)計 iii design of digital clock based on pic abstract:abstract:in recent years, with computers in the infiltration and the development of large-scale integrated circuits. scm application is steadily deepening, as it has strong function, small size, low power dissipation, low prices, r
4、eliable, easy to use features, it is particularly suited to and control of the system, increasingly widely used in automatic control, intelligent instruments, gauges, # acquisition, military products and household appliances, and other areas, is often microcontroller as a core component to use, in l
5、ight of specific hardware architecture, and application-specific software features object combine to make perfect. the design of a microcontroller development process and the direction of development as the background, the computers input and output of the working principle and method of operation i
6、nterrupted the principle and method of operation.tmr1, the principle and structure of circuit, led internal structure, circuit program design and debugging process. the figures do bell on scm (pic16f877) at the core, combined with the components (a total of cathode led digital display), and factorin
7、g in the corresponding software, easy to produce digital clock purposes, as part of the hardware components is a difficult choice, layout and welding. keywords : timer/countertmr1 single chip microcomputer pic16f877 total cathode led figures display. xxx 大學(xué)本科畢業(yè)設(shè)計 iv 目 錄 一、概述 .1 (一)單片機的特點.1 (二)單片機的發(fā)展
8、歷史、趨勢及用處.2 二、電子表的構(gòu)成 .4 (一)電子表的構(gòu)成.4 (二)實驗中所需的器材.4 (三)方案選擇與相關(guān)技術(shù).4 三、pic16f87 單片機簡介.5 (一) pic16f877 的特性說明 .5 (二)端口介紹.5 (三)單片機的中斷.7 四、硬件設(shè)計 .11 (一)硬件電路規(guī)劃.11 (二)led 數(shù)碼管相關(guān)說明 .11 (三)振蕩器的選擇.11 五、軟件設(shè)計 .12 (一)設(shè)計思路.12 (二)設(shè)計中兩種情況產(chǎn)生的中斷.13 (三)中斷的現(xiàn)場保護和恢復(fù)問題:.14 六、總結(jié) .15 七、致謝 .15 附錄一 電子表的硬件電路原理圖 .16 附錄二 匯編程序流程 .17 附錄
9、三 源程序 .21 參考文獻: .28 xxx 大學(xué)本科畢業(yè)設(shè)計 1 一、概述一、概述 近年來,國際市場上的單片機性能不斷增強,價格卻日益下降。隨著我國加入 wto 以及與國際市場接軌,世界許多著名半導(dǎo)體公司都在積極開拓我國市場,這使得國內(nèi)上 市的單片機品種型號越來越多,價格也越來越低。這給單片機愛好者或初學(xué)者提供了豐 富廉價的物質(zhì)基礎(chǔ),因此,有越來越多的在校學(xué)生、電子愛好者對單片機產(chǎn)生濃厚的興 趣。單片機與常用的 ttl、cmos 數(shù)字集成電路相比掌握起來不太容易,問題在于單片 機具有智能化功能,不光要學(xué)習其硬件還要學(xué)習其軟件,而且軟件設(shè)計需要有一定的創(chuàng) 造性。這雖然給學(xué)習者帶來一定的難度,
10、但這也正是它的迷人之處,我們通過各種學(xué)習 方式在短暫的時間內(nèi)掌握單片機應(yīng)用技術(shù)也是做得到的。通過對 pic 單片機的認真學(xué)習, 達到掌握和運用 pic 設(shè)計簡單系統(tǒng)的方法。選擇設(shè)計電子表,主要是為了進一步熟練 pic 的各個模塊的用法、mplab 集成開發(fā)環(huán)境、編程方法和加強自己運用 pic 編程的能力, 達到學(xué)以至用的目的。電子表是我們?nèi)粘S玫降谋夭豢缮俚碾娮悠骷?,了解其組成原理 也有重要意義。 (一)單片機的特點 1高集成度,體積小,高可靠性 單片機將各功能部件集成在一塊晶體芯片上,集成度很高,體積自然也是最小的。 芯片本身是按工業(yè)測控環(huán)境要求設(shè)計的,內(nèi)部布線很短,其抗工業(yè)噪音性能優(yōu)于一般
11、通 用的 cpu。單片機程序指令,常數(shù)及表格等固化在 rom 中不易破壞,許多信號通道均在 一個芯片內(nèi),故可靠性高。 2控制功能強 為了滿足對對象的控制要求,單片機的指令系統(tǒng)均有極豐富的條件:分支轉(zhuǎn)移能力, i/o 口的邏輯操作及位處理能力,非常適用于專門的控制功能。 3低電壓,低功耗,便于生產(chǎn)便攜式產(chǎn)品 為了滿足廣泛使用于便攜式系統(tǒng),許多單片機內(nèi)的工作電壓僅為 1.8v3.6v,而工 作電流僅為數(shù)百微安。 4易擴展 片內(nèi)具有計算機正常運行所必需的部件。芯片外部有許多供擴展用的三總線及并行、 串行輸入/輸出管腳,很容易構(gòu)成各種規(guī)模的計算機應(yīng)用系統(tǒng)。 5優(yōu)異的性能價格比 單片機的性能極高。為了提
12、高速度和運行效率,單片機已開始使用 risc 流水線和 xxx 大學(xué)本科畢業(yè)設(shè)計 2 dsp 等技術(shù)。單片機的尋址能力也已突破 64kb 的限制,有的已可達到 1mb 和 16mb, 片內(nèi)的 rom 容量可達 62mb,ram 容量則可達 2mb。由于單片機的廣泛使用,因而銷 量極大,各大公司的商業(yè)競爭更使其價格十分低廉,其性能價格比極高。 (二)單片機的發(fā)展歷史、趨勢及用處 1.單片機發(fā)展簡史 單片機作為微型計算機的一個重要分支,應(yīng)用面很廣,發(fā)展很快。自單片機誕生至 今,已發(fā)展為上百種系列的近千個機種。如果將 8 位單片機的推出作為起點,那么單片 機的發(fā)展歷史大致可分為以下幾個階段: (1)
13、第一階段(1976-1978)單片機的控索階段。以 intel 公司的 mcs 48 為代表。 mcs 48 的推出是在工控領(lǐng)域的控索,參與這一控索的公司還有 motorola 、zilog 等, 都取得了滿意的效果。這就是 scm 的誕生年代, “單機片”一詞即由此而來。 (2)第二階段(1978-1982)單片機的完善階段。intel 公司在 mcs 48 基礎(chǔ)上推出了 完善的、典型的單片機系列 mcs 51。它在以下幾個方面奠定了典型的通用總線型單片 機體系結(jié)構(gòu)。 完善的外部總線。mcs-51 設(shè)置了經(jīng)典的 8 位單片機的總線結(jié)構(gòu),包括 8 位數(shù)據(jù)總線、 16 位地址總線、控制總線及具有
14、很多機通信功能的串行通信接口。 cpu 外圍功能單元的集中管理模式。 體現(xiàn)工控特性的位地址空間及位操作方式。 指令系統(tǒng)趨于豐富和完善,并且增加了許多突出控制功能的指令。 (3)第三階段(1982-1990)8 位單片機的鞏固發(fā)展及 16 位單片機的推出階段,也是單 片機向微控制器發(fā)展的階段。intel 公司推出的 mcs 96 系列單片機,將一些用于測控 系統(tǒng)的模數(shù)轉(zhuǎn)換器、程序運行監(jiān)視器、脈寬調(diào)制器等納入片中,體現(xiàn)了單片機的微控制 器特征。隨著 mcs 51 系列的廣應(yīng)用,許多電氣廠商競相使用 80c51 為內(nèi)核,將許多 測控系統(tǒng)中使用的電路技術(shù)、接口技術(shù)、多通道 a/d 轉(zhuǎn)換部件、可靠性技術(shù)
15、等應(yīng)用到單 片機中,增強了外圍電路路功能,強化了智能控制的特征。 (4)第四階段(1990)微控制器的全面發(fā)展階段。隨著單片機在各個領(lǐng)域全面深入地 發(fā)展和應(yīng)用,出現(xiàn)了高速、大尋址范圍、強運算能力的 8 位/16 位/32 位通用型單片機, 以及小型廉價的專用型單片機。 2.單片機的發(fā)展趨勢 目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進一步向著 cmos 化、低功 xxx 大學(xué)本科畢業(yè)設(shè)計 3 耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝化等幾個方面發(fā)展。下面是單片 機的主要發(fā)展趨勢。 cmos 化近年,由于 chmos 技術(shù)的進小,大大地促進了單片機的 cmos 化。 cmos 芯片
16、除了低功耗特性之外,還具有功耗的可控性,使單片機可以工作在功耗精細 管理狀態(tài),因為單片機芯片多數(shù)是采用 cmos(金屬柵氧化物)半導(dǎo)體工藝生產(chǎn)。cmos 電路的特點是低功耗、高密度、低速度、低價格。采用雙極型半導(dǎo)體工藝的 ttl 電路速 度快,但功耗和芯片面積較大。隨著技術(shù)和工藝水平的提高,又出現(xiàn)了 hmos(高密度、 高速度 mos)和 chmos 工藝。chmos 和 hmos 工藝的結(jié)合。目前生產(chǎn)的 chmos 電 路已達到 lsttl 的速度,傳輸延遲時間小于 2ns,它的綜合優(yōu)勢已在于 ttl 電路。因而, 在單片機領(lǐng)域 cmos 正在逐漸取代 ttl 電路。 低功耗化:單片機的功耗
17、已從 ma 級,甚至 1ua 以下;使用電壓在 36v 之間,完全 適應(yīng)電池工作。 低電壓化:幾乎所有的單片機都有 wait、stop 等省電運行方式。允許使用的電壓 范圍越來越寬,一般在 36v 范圍內(nèi)工作。低電壓供電的單片機電源下限已可達 12v。 低噪聲與高可靠性:為提高單片機的抗電磁干擾能力,使產(chǎn)品能適應(yīng)惡劣的工作環(huán) 境,滿足電磁兼容性方面更高標準的要求,各單片廠家在單片機內(nèi)部電路中都采用了新 的技術(shù)措施。 大容量化:以往單片機內(nèi)的 rom 為 1kb4kb,ram 為 64128b。目前,單片機內(nèi) rom 最大可達 64kb,ram 最大為 2kb。 高性能化:主要是指進一步改進 c
18、pu 的性能,加快指令運算的速度和提高系統(tǒng)控制 的可靠性。采用精簡指令集(risc)結(jié)構(gòu)和流水線技術(shù),可以大幅度提高運行速度?,F(xiàn) 指令速度最高者已達 100mips(million instruction per seconds,即兆指令每秒) ,并加強 了位處理功能、中斷和定時控制功能。 小容量、低價格化:與上述相反,以 4 位、8 位機為中心的小容量、低價格化也是發(fā) 展動向之一。這類單片機的用途是把以往用數(shù)字邏輯集成電路組成的控制電路單片化, 可廣泛用于家電產(chǎn)品。 外圍電路內(nèi)裝化:這也是單片機發(fā)展的主要方向。隨著集成度的不斷提高,有可能 把眾多的各種外圍功能器件集成在片內(nèi)。除了一般必須具有
19、的 cpu、rom、ram、定時 器/計數(shù)器等以外,片內(nèi)集成的部件還有模/數(shù)轉(zhuǎn)換器、dma 控制器、聲音發(fā)生器、監(jiān)視 定時器、液晶顯示驅(qū)動器、彩色電視機和錄像機用的鎖相電路等。 串行擴展技術(shù):在很長一段時間里,通用型單片機通過三總線結(jié)構(gòu)擴展外圍器件成 xxx 大學(xué)本科畢業(yè)設(shè)計 4 為單片機應(yīng)用的主流結(jié)構(gòu)。 隨著半導(dǎo)體集成工藝的不斷發(fā)展,單片機的集成度將更高、體積將更小、功能將列 強。 3.單片機的用處 單片機又稱單片微控制器,它不是完成某一個邏輯功能的芯片,而是把一個計算機系統(tǒng) 集成到一個芯片上。概括的講:一塊芯片就成了一臺計算機。它的體積小、質(zhì)量輕、價 格便宜、為學(xué)習、應(yīng)用和開發(fā)提供了便利條
20、件。同時,學(xué)習使用單片機是了解計算機原 理與結(jié)構(gòu)的最佳選擇。 可以說,二十世紀跨越了三個“電”的時代,即電氣時代、電子時代和現(xiàn)已進入的電腦 時代。不過,這種電腦,通常是指個人計算機,簡稱 pc 機。它由主機、鍵盤、顯示器等 組成。還有一類大多數(shù)人不怎么熟悉的計算機, 。這種計算機就是把智能賦予各種機械的 單片機(亦稱微控制器)。顧名思義,這種計算機的最小系統(tǒng)只用了一片集成電路,即可進 行簡單運算和控制。因為它體積小,通常都藏在被控機械的“肚子”里。它在整個裝置中, 起著有如人類頭腦的作用,它出了毛病,整個裝置就癱瘓了。現(xiàn)在,這種單片機的使用 領(lǐng)域已十分廣泛,如智能儀表、實時工控、通訊設(shè)備、導(dǎo)航
21、系統(tǒng)、家用電器等。各種產(chǎn) 品一旦用上了單片機,就能起到使產(chǎn)品升級換代的功效,常在產(chǎn)品名稱前冠以形容詞 “智能型”,如智能型洗衣機等。單片機在民用和工業(yè)測控領(lǐng)域得到最廣泛的應(yīng)用。彩電、 冰箱、空調(diào)、錄像機、vcd、遙控器、游戲機、電飯煲等無處不見單片機的影子,單片 機早已深深地溶入我們每個人的生活之中。 單片機能大大地提高這些產(chǎn)品的智能性,易用性及節(jié)能性等主要性能指標,給我們 的生活帶來舒適和方便的同時,在工農(nóng)業(yè)生產(chǎn) 上也極大地提高了生產(chǎn)效率和產(chǎn)品質(zhì)量。 二、電子表的構(gòu)成二、電子表的構(gòu)成 (一)電子表的構(gòu)成 本次設(shè)計的電子表主要選用 pic 單片機為核心,結(jié)合相關(guān)的元器件如共陰極 led 數(shù)碼顯
22、示器等,再配以相應(yīng)的軟件,達到制作簡易電子表的目的。 (二)實驗中所需的器材 共陰極 led 數(shù)碼顯示器、一只廉價的的廣泛用于電子表的 32.6khz 微型石英晶體。 xxx 大學(xué)本科畢業(yè)設(shè)計 5 (三)方案選擇與相關(guān)技術(shù) 本設(shè)計選用 pic 單片機 16f877 的模塊定時器/計數(shù)器 tmr1 來實現(xiàn)定時、計數(shù)功能。 由于 tmr1 自帶低頻功耗時基振蕩源,該性能適合要求有時時鐘功能,并且保持不間短 走時,同時要求能耗低到最低限度的應(yīng)用設(shè)計中。因此在本設(shè)計中,將 tmr1 用作低頻 低功耗時基振蕩源,它可以工作于異步計數(shù)器模式,即使在單片機進入睡眠狀態(tài),tmr1 也可以持續(xù)運行,當 tmr1
23、 溢出時將會產(chǎn)生中斷請求。在設(shè)計中,在 tmr1 自帶振蕩器 的兩個外部引腳上跨接一只廉價的廣泛使用于電子手表的 32.768khz 微型石英晶體,作 為 tmr1 工作的時間基準。 在本實驗中,由單片機控制數(shù)字 i/o 口 a 口控制點亮 d 口上外接的 6 個 led 數(shù)碼管 ,d 口控制其外接的 6 個 led 數(shù)碼管掃描顯示時鐘的時、分、秒。b 口高 4 位引腳外接 4 個按鍵,控制修改時鐘的時、分數(shù)字。 三、三、pic16f87 單片機簡介單片機簡介 目前在世界一些著名的單片機產(chǎn)品系列中,pic16f87x 系列單片機是芯片內(nèi)部包含有 外圍設(shè)備模塊數(shù)量最多的單片機品種之一。87x 各
24、款單片機的內(nèi)部結(jié)構(gòu)大同小異,以 cpu 為中心的核心區(qū)幾乎完全相同,不同的僅是 flash 容量、ram 容量、eeprom 容量、外圍 模塊種類和數(shù)量。其中 877 是 pic16f87x 系列單片機中的“大哥哥”,它是只有 40 腳封 裝的型號,囊括了其它 6 款型號的所有功能。pic16f877 的芯片內(nèi)部集成了 15 個外圍設(shè) 備模塊,這些外圍設(shè)備模塊在啟用時以及在工作過程中,都或多或少地需要 cpu 參與控 制、協(xié)調(diào)或交換數(shù)據(jù)等各種服務(wù)工作。由于 cpu 的運行速度非常高,而各個外圍設(shè)備模 塊的工作速度卻非常低,況且這些外圍設(shè)備模塊也不是頻繁地要求 cpu 對其服務(wù)。因此, 通常采取
25、一種讓眾多外圍設(shè)備模塊共享 1 個 cpu,并且能夠及時得到 cpu 服務(wù)的調(diào)度方法 中斷。 (一) pic16f877 的特性說明 (1)采用高性能的 risc cpu 核心 (2)8 位微電腦控制芯片 (3)8k14flash 程序存儲器 (4)5 組 i/o 端口(a,b,c,d,e) (5)368bytes 數(shù)據(jù)存儲器及 256bytes 的 eeprom 數(shù)據(jù)存儲器 (6)2 組 8 位定時器 tmr0,tmr2,及 1 組 16 位定時器 tmr1 xxx 大學(xué)本科畢業(yè)設(shè)計 6 (7)支持 14 個中斷處理 (二)端口介紹 pic16f877 總共有 5 個 8 位可獨立編程的通用
26、并行輸入/輸出端口(可簡稱 i/o 口)。 這 5 個端口之間不僅存在內(nèi)部結(jié)構(gòu)上的差異,而且同屬于一個端口的各引腳的內(nèi)部結(jié)構(gòu)也 不盡相同.由于 pic16f877 屬于 8 位單片機,因此每個端口都由數(shù)量不超過 8 個引腳構(gòu)成。 每個端口中的每跟引腳都可以用軟件的方式單獨編程,設(shè)定為輸出或者輸入引腳。 1.端口 a 及與之相關(guān)的寄存器 端口 a 是一個 6 位雙端口,它的基本輸入/輸出功能的基礎(chǔ)之上,復(fù)合了模/轉(zhuǎn)換器 的模擬量輸入功能、a/d 轉(zhuǎn)換器所需的外接參考電壓輸入功能、定時器/計數(shù)器 tmr0 的外 部時鐘輸入功能、主同步串行端口 mssp 的從動選項擇信號輸入功能等。 端口數(shù)據(jù)寄存器
27、 porta 是一個可讀可寫的寄存器,也是一個用戶軟件與單片機引腳 外接電路交換的界面。由于 ra 端口只有 6 個外接引腳,所以與之對應(yīng)的數(shù)據(jù)寄存器也就 只有低 6 位有效,無效的兩位讀出時也將會返回 0。 相應(yīng)的數(shù)據(jù)方向寄存器是 trisa,它也只有低 6 位有效,無效的兩位讀出時也將會返 回 0。將 trisa 寄存器的一位置 1,把相應(yīng)的端口 a 引腳變?yōu)檩斎?,即把相?yīng)的輸出驅(qū)動 器置高阻態(tài)方式。對 trisa 寄存器的一位清零會把輸出鎖存器的內(nèi)容放到所選擇的引腳 上。 a/d 轉(zhuǎn)換器控制寄存器 adcon1 的低 4 位是可讀可寫的。它是定義 a/d 轉(zhuǎn)換器模塊輸 入引腳功能分配的一
28、個控制寄存器。與 ra 端口有牽連的只有低 4 位(pcfg3:pcfg0)。 2.端口 b 及與之相關(guān)的寄存器 rb 端口是一個 8 位雙向 i/o 端口。它在基本輸入/輸出功能的基礎(chǔ)之上,除了每個引 腳內(nèi)部增加了可統(tǒng)一編程的弱上拉電路,另外還復(fù)合的片載 flash低電壓編程所需的 3 個引腳、外部中斷輸入引腳、電平變化中斷功能等。端口數(shù)據(jù)寄存器 portb 與相應(yīng)的數(shù) 據(jù)方向寄存器 trisb 的功用與端口 a 的相應(yīng)寄存器是類似的。 選項寄存器 potion_reg 是一個可讀可寫的寄存器,包含著與 tmr0、分頻器和端口 rb 有關(guān)的控制位。端口引腳 rb0 和外部中斷 int 共用同
29、一引腳,與該引腳有關(guān)的兩個控 制位含義如下: (1)intedg:外部中斷 int 觸發(fā)信號邊沿選擇位。 1=選擇 rb0/int 上升沿觸發(fā)有效; 0=選擇 rb0/int 下降沿觸發(fā)有效; (2) /rbpu:rb 端口弱上拉電路使能控制位 xxx 大學(xué)本科畢業(yè)設(shè)計 7 1=rb 端口弱上拉電路禁止; 0=rb 端口弱上拉電路使能; 圖表 1 選項寄存器 potion_reg 的控制位 bit7bit6bit5bit4bit3bit2bit1bit0 /rbpuintedgt0cst0sepsaps2ps1ps0 中斷控制寄存器 intcon 是一個可讀可寫的寄存器,它將第一梯隊的 3 個
30、中斷源的標 志位和屏蔽位(也稱使能位),以及 peie 和 gie 囊括其中。不過與 rb 端口有關(guān)的位只 有兩個: rbif:端口 rb 的引腳 rb4rb7 電平變化中斷標志位。 1=rb4rb7 已經(jīng)發(fā)生了電平變化。(必須用軟件清 0) 0=rb4rb7 尚未發(fā)生電平變化。 rbie:端口 rb 的引腳 rb4rb7 電平變化中斷屏蔽位。 1=允許端口 rb 產(chǎn)生的中斷; 0=屏蔽端口 rb 產(chǎn)生的中斷; 圖表 2 中斷控制寄存器 intcon 的控制位 bit7bit6bit5bit4bit3bit2bit1bit0 giepeiet0ieinterbiet0ifintfrbif 3.
31、端口 c 及與之相關(guān)的寄存器 rc 端口也是一個 8 位雙向 i/o 端口。它在基本輸入/輸出功能的基礎(chǔ)之上,復(fù)合了多 項較為復(fù)雜的功能,如定時器/計數(shù)器 tmr1 的外接時鐘功能、主同步串行端口 mssp 的外 接引腳等。另外每個腳內(nèi)部都設(shè)置了一個施密特觸發(fā)輸入緩沖器,對于輸入信號波形可 以起到整形作用。端口數(shù)據(jù)寄存器 portc 與相應(yīng)的數(shù)據(jù)方向寄存器 trisc 的功用與端口 a 的相應(yīng)寄存器是類似的。 4.端口 d 及與之相關(guān)的寄存器 rd 端口是一個 8 位雙向 i/o 端口,它在基本輸入/輸出功能的基礎(chǔ)之上,復(fù)合了 1 項 功能,即并行從動端口。另外,每個引腳在作為 i/o 腳使用
32、時,是經(jīng)過施密特觸發(fā)緩沖 器輸入的,而在工作于并行從動端口方式時,則是經(jīng)過 ttl 緩沖器輸入的。 xxx 大學(xué)本科畢業(yè)設(shè)計 8 端口方向控制寄存器 trise 不是一個完全可讀可寫的寄存器。與 rd 端口有牽連的 只有一個位 pspmode 控制位。當該位置 1,rd 工作于并行從動端口方式,當該位清 0 時,rd 工作于通用 i/o 端口方式。 (三)單片機的中斷 中斷就是當計算機系統(tǒng)正在執(zhí)行某程序時,出現(xiàn)某種特殊狀況,如有按鍵按下、定 時時間到、發(fā)生電平變化等,此時 cpu 需要暫時停止當前的程序,轉(zhuǎn)去執(zhí)行處理有按鍵 按下、定時時間到或發(fā)生電平變化等情況的某段特定程序,待這段特定的程序執(zhí)
33、行完畢 之后,再回到原先的程序去執(zhí)行。中斷控制方式使 cpu 在平時可以利用充分的時間去處 理主要事件,而當外界有特殊情況需要處理時 cpu 也不會錯過,這樣的工作效率較高, 對于 pic 單片機來說,一次中斷活動的全過程大至可以歸納為以下幾個階段: 中斷請求、中斷屏蔽、中斷響應(yīng)、現(xiàn)場保護、調(diào)查中斷源 中斷處理、清除標志、恢復(fù)現(xiàn)場、中斷返回 其中第 1、2、3、和 9 階段是由硬件自動實現(xiàn)的,而 4、5、6、7、8 階段則是在編程中完 成。 1.與中斷功能有關(guān)的寄存器: 與中斷功能有關(guān)的特殊功能寄存器共有 6 個:選項寄存器 optcon-reg、中斷控制寄 存器 intcon、第 1 外圍設(shè)
34、備中斷標志寄存器 pir1、第 1 外圍設(shè)備中斷屏蔽寄存器(又稱 中斷使能寄存器)pie1、第 2 外圍設(shè)備中斷標志寄存器 pir2 和第 2 外圍設(shè)備中斷屏蔽寄 存器 pie2。 圖表 3 與各中斷功能有關(guān)的寄存器的控制位 寄存器內(nèi)容 寄存器名稱 寄存器符 號 寄存器 地址 bit7bit6bit5 bit4bit3bit2bit1bit0 選項寄存器 option- reg 81h/181 h /rbpu intedgt0cs t0sepsaps2ps1ps0 中斷控制寄 存器 intcon 0bh/8b/ 10bh/18 bh giepeiet0ie interbiet0ifintfrb
35、if 第 1 外設(shè)中 斷標志寄存 器 pir10chpspifadifrcif txifsspifccp1iftmr2iftmr1if 第 1 外設(shè)中 斷屏蔽寄存 器 pie18chpspieadiercie txiesspieccp1ietmr2ietmr1ie xxx 大學(xué)本科畢業(yè)設(shè)計 9 第 2 外設(shè)中 斷標志寄存 器 pir20dh-reifbclif-ccp2if 第 2 外設(shè)中 斷屏蔽寄存 器 pie28dh-eeiebclie-ccp2ie 2.cpu 對中斷的處理: 不論各種中斷屏蔽位和全局中斷屏蔽位為何值,只要某一中斷源的中斷條件得到滿 足,單片機就會向 cpu 發(fā)出中斷申請
36、,并將響應(yīng)的中斷標志位置 1,而該中斷是否能得 到 cpu 的響應(yīng)則取決于和它相關(guān)的中斷屏蔽位的值。如果該中斷被一路放行,則中斷申 請被遞交給 cpu,cpu 響應(yīng)中斷后,全局中斷屏蔽位 gie 自動由硬件清零,以免發(fā)生重 復(fù)響應(yīng);然后由硬件自動把當前 pc 指針壓入堆棧,并把 pc 指針指向中斷失量地址 0004h,從而進入中斷服務(wù)程序開始執(zhí)行;中斷服務(wù)程序的開始,cpu 先對有關(guān)寄存器進 行保護,再檢查各個中斷源標志位以確定是哪兒中斷源發(fā)生的申請,把對應(yīng)的中斷標志 位清零并輸對應(yīng)的程序來執(zhí)行。中斷服務(wù)程序執(zhí)行完畢后,再執(zhí)行中斷返回指令 “retfie”退出中斷,此時,硬件自動將保存在棧頂?shù)?/p>
37、斷點地址彈回到 pc 指針中,使 cpu 返回繼續(xù)執(zhí)行被中斷的主程序。 3.定時器/計數(shù)器 tmr1 模塊 tmr1 的主要用途: a) tmr1 可以像 tmr0 那樣,用做時間定時器和事件計數(shù)器; b) 借助于自帶的低頻時基振蕩器,用來實現(xiàn)記錄和計算真實的年、月、日、時、分、秒 的實時時鐘 rtc 功能; c) tmr1 還可以與 ccp 模塊配合使用,實現(xiàn)輸入捕捉或輸出比較功能。 (1)定時器/計數(shù)器 tmr1 的結(jié)構(gòu) tmr1 是由 2 個 8 位寬的寄存器 tmr1h 和 tmr1l 組成的 16 位定時器/計數(shù)器,通過軟 件可讀可寫。tmr1h:tmr1l 從 0000h 遞增到
38、ffffh 之后再返回到 0000h 時,會產(chǎn)生高位 溢出,同時將會產(chǎn)生溢出中斷標志位 tmr1if(pir1 的位 0)為 1,如果此前相關(guān)的中斷 使能控制位都被全能,還會引起 cpu 的中斷響應(yīng)。通過對中斷使能位 tmr1ie(pie1 的位 0)的置 1 或清 0,可以允許或禁止 cpu 響應(yīng) tmr1 溢出中斷。 tmr1 有兩種工作方式:定時器方式和計數(shù)器方式。其中計數(shù)器方式又同步計數(shù)器工 作方式和異步計數(shù)器工作方式。tmr1 的時鐘信號或觸發(fā)信號共有以下 4 種方式: 由內(nèi)部系統(tǒng)時鐘 4 分頻后獲取,即取自指令周期; xxx 大學(xué)本科畢業(yè)設(shè)計 10 從 rc0/t1oso/t1ck
39、i 引腳獲取;從 rc1/t1osi/ccp2 引腳獲取; 自帶振蕩器產(chǎn)生。 定時器/計數(shù)器 tmr1 可以工作在定時方式和計數(shù)器方式,這由它的時鐘源選擇位 tmr1cs(tmr1 控制寄存器 t1con 的位 1)確定。tmr1cs 置 0,選擇定時工作方式; tmr1cs 置 1,選擇計數(shù)工作方式。 (2)定時器/計數(shù)器 tmr1 相關(guān)寄存器 tmr1 控制寄存器 t1con 是一個只用到低 6 位的可讀/寫的寄存器。最高兩位未用,讀 出時返回 0。 圖表 4 tmr1 控制寄存器 t1con 的控制位 bit7bit6bit5bit4bit3bit2bit1bit0 t1ckps1t1c
40、kps0t1oscen/ /t1synctmr1cstmr1on 其余各位的含義如下: bit5:bit4(t1ckps1 t1ckps0)分頻器分頻比選擇位。 bit3(t1oscen)tmr1 自帶振蕩器使能位。 1=允許 tmr1 振蕩器起振 ; 0=禁止 tmr1 振蕩器起振,非門的輸出端呈高阻態(tài); bit(/ /t1sync)tmr1 外部輸入時鐘與系統(tǒng)治時鐘同步控制位。 tmr1 工作于計數(shù)器方式(t1sync=1 時); 1=tmr1 外部輸入時鐘與系統(tǒng)治時鐘不保持同步; 0= tmr1 外部輸入時鐘與系統(tǒng)治時鐘保持同步; tmr1 工作于定時器方式(t1sync=0 時,該位不
41、起作用)。 bit1(tmr1cs)時鐘源選擇位。 1=選擇外部時鐘源,即時鐘信號來源于外部引腳或者自帶振蕩器; 0=選擇內(nèi)部時鐘源(fosc/4=tcyc 指令周期); bit0(tmr1on)使能控制位(這點優(yōu)于不能被關(guān)閉的 tmr0)。 1=啟用 tmr1; 0=關(guān)閉 tmr1; 與定時器/計數(shù)器 tmr1 相關(guān)的其它寄存器: 第一外設(shè)中斷標志寄存器 pir1 的位 0(tmr1if)為 tmr1 溢出標志位。tmr1if 置 1 tmr1 發(fā)生溢出, tmr1 未發(fā)生溢出。第一外設(shè)中斷屏蔽寄存器 pie1 的位 0(tmr1ie)為 xxx 大學(xué)本科畢業(yè)設(shè)計 11 tmr1 溢出中斷使
42、能位。tmr1ie 置 1 允許 tmr1 溢出后產(chǎn)生中斷,為 0 屏蔽 tmr1 溢出后產(chǎn) 生的中斷。中斷寄存器 intcon 的位 7(gie)為全局中斷總使能位。置 1 允許 cpu 響應(yīng)所 有中斷源產(chǎn)生的中斷請求,置 0 禁止 cpu 響應(yīng)所有中斷源產(chǎn)生的中斷請求。intcon 的位 6(peie)為外設(shè)中斷屏蔽位,置 1 允許 cpu 響應(yīng)來自第二級的中斷請求(tmr1 為第二級 的中斷),置 0 禁止 cpu 響應(yīng)來自第二級的中斷請求。 四、硬件設(shè)計四、硬件設(shè)計 (一)硬件電路規(guī)劃 為了充分利用現(xiàn)有演示板上的電路元器件資源,在端口 ra 控制點亮 d 口上外接的 6 個 led 數(shù)
43、碼管,端口 rd 控制外接的 6 個 led 數(shù)碼管顯示時間。端口 rb 高 4 位引腳外接 4 個按鍵,控制修改時鐘的時間時、分的數(shù)字。由于在應(yīng)用 tmr1 的自帶振蕩器時,將會 占用端口 rc 的部分引腳 rc0/t1oso 和 rc1/t1osi,因此,端口 rc 上原有的 8 個發(fā)光二級 管不方便再使用,在 tmr1 自帶振蕩器兩個外接引腳 rc0/rc0/t1oso 和 rc1/t1osi 上跨接 一個廉價可以取自電子表的微型 32.768khz 石英晶體和兩只 15pf 的瓷片電容器。單片機 的系統(tǒng)時鐘采用電路板原帶的 rc 時基振蕩器外接阻容器件。要此設(shè)計中,采納 rc 振蕩器
44、方式,既可以節(jié)省成本,又使得單片機具有更快的啟動時間,也不會影響時鐘振蕩器互相 獨立,其計數(shù)器的遞增速度完全與系統(tǒng)時鐘無關(guān)。 (二)led 數(shù)碼管相關(guān)說明 led 數(shù)碼管內(nèi)部包含 8 只發(fā)光二極管,其中 7 只發(fā)光二極管構(gòu)成字型筆段(ag),1 只發(fā)光二極管構(gòu)成小數(shù)點(dp).對于任何一只發(fā)光二極管,只要陽極為高電平、陰極為 低電平,并且電位差高于其閾值(約為 1.72.1v)就會被點亮.根據(jù)各二極管公共端連接 方式的不同,又有共陰極和共陽極 led 數(shù)碼管之分,本次設(shè)計采用 6 只共陰極 led 數(shù)碼管 來顯示時鐘的時間. (三)振蕩器的選擇 單片機的系統(tǒng)時鐘(即主時鐘)采用電路板原帶的 r
45、c 時基振蕩器外接阻容器件.在對于 系統(tǒng)時鐘精度要求不嚴格的項目中,采用 rc 振蕩器方式,既可以節(jié)省成本,又使得單片機具 有更快的啟動時間,在此選擇這種方案并不會影響電子表的走時精度,因為 tmr1 自帶振蕩 器與系統(tǒng)時鐘振蕩器互相獨立,其計數(shù)器的遞增速度完全與系統(tǒng)時鐘無關(guān). rc 振蕩頻率隨著電源電壓 vdd,rc 值及工作環(huán)境溫度的變化而變化。同時由于工藝參數(shù) 的差異,對不同芯片其振蕩器頻率將不同。另外,當外接電容 cext 值較小時,對振蕩器 頻率的影響更大,當然,我們也應(yīng)考慮電阻電容本身的容差對振蕩器頻率的影響。 xxx 大學(xué)本科畢業(yè)設(shè)計 12 圖 1 rc 振蕩電路 圖 1 所示的
46、是 rc 振蕩電路,如果 rext 低于 2.2k,振蕩器將處于不穩(wěn)定工作狀態(tài), 甚至停振。而 rext 大于 1m時,振蕩器又易受噪聲、濕度、漏電流的干擾。因此,電阻 rext 取值最好在 3k100k 范圍內(nèi)。在不接外部電容時,振蕩器仍可工作,但為了抗 干擾及保證穩(wěn)定性,建議接 20pf 以上的電容。 pic 單片機片內(nèi)有一 4 分頻電路,從 osc1/clkin 引腳輸入或 rc 振蕩器產(chǎn)生的振蕩 頻率 fosc 經(jīng) 4 分頻后從 osc2/clkout 引腳輸出 4 分頻信號,該信號可用于測試或作為其 它邏輯電路的同步信號。 1.晶體的選擇 對于一個高可靠性的系統(tǒng)設(shè)計,晶體的選擇非常重
47、要,尤其設(shè)計帶有睡眠喚醒(往往 用低電壓以求低功耗)的系統(tǒng)。這是因為低供電電壓使提供給晶體的激勵功率減少,造成 晶體起振很慢或根本就不能起振。這一現(xiàn)象在上電復(fù)位時并不特別明顯,原因時上電時 電路有足夠的擾動,很容易建立振蕩。在睡眠喚醒時,電路的擾動要比上電時小得多, 起振變得很不容易。在振蕩回路中,晶體既不能過激勵(容易振到高次諧波上)也不能欠 激勵(不容易起振)。晶體的選擇至少必須考慮:諧振頻點,負載電容,激勵功率,溫度 特性,長期穩(wěn)定性。 2.電容 c1,c2 的選擇 (1)因為每一種晶振都有各自的特性,所以最好按制造廠商所提供的數(shù)值選擇外部元 器件。 (2)在許可范圍內(nèi),c1,c2 值越
48、低越好。c 值偏大雖有利于振蕩器的穩(wěn)定,但將會增 加起振時間。 (3)應(yīng)使 c2 值大于 c1 值,這樣可使上電時,加快晶振起振。 xxx 大學(xué)本科畢業(yè)設(shè)計 13 五、軟件設(shè)計五、軟件設(shè)計 (一)設(shè)計思路 對于 tmr1 的編程,既可以采用軟件查詢的方法,也可以采用中斷的方法,本設(shè)計選 用中斷的方式。 a 口控制點亮 d 口上外接的 6 個 led 數(shù)碼管及 d 口控制 led 數(shù)碼管顯示時間的時、 分、秒是由單片機執(zhí)行延時子程序循環(huán)控制的。b 口上按鍵修改時鐘由單片機執(zhí)行延時程 序查詢按鍵情況控制的。 在主程序的初始化階段,以及在每次執(zhí)行中斷服務(wù)程序時,都需要給 tmr1 賦一個初 始值。
49、該值的計算方法為: tmr1 初始值=1000h-32768=65536-32768=32768=0080h 因此,tmr1 的初始值是 80h,tmr1 的初始值是 00h,這樣就可以保證,在自帶振蕩 器每產(chǎn)生 32768 個方波,tmr1 就溢出一次。 (二)設(shè)計中兩種情況產(chǎn)生的中斷 1. portb 端口最高的 4 個引腳(rb7rb4)在設(shè)為輸入模式時,當輸入電平由高到低或 由低到高發(fā)生變化時,可以讓單片機產(chǎn)生中斷。這就是通常所說的引腳狀態(tài)變化中斷。 中斷控制寄存器 intcon 的位 0 即 rbif 是端口 rb 的引腳 rb4rb7 電平變化中斷標志位, 當其為 1 時,rb4r
50、b7 引腳已經(jīng)發(fā)生了電平變化,則用軟件清 0 并執(zhí)行相應(yīng)的中斷子程序, 然后返回原先的程序去執(zhí)行. 在設(shè)計引腳中斷程序時,有三個需要特別注意的地方。一 是,在清除 p0rtb 中斷標志位 rbif 之前,必須安排一條必不可少的,以 portb 端口數(shù)據(jù) 寄存器 portb 為源寄存器的讀操作指令。放置這一指令的目的有時并不只是為了讀取有 用的數(shù)據(jù),而是為了取消狀態(tài)變化的硬件信號,以便順利清除 rbif 標志位,為下一次中 斷做好準備。二是,由于端口 portb 是引腳電子變化中斷,即無論引腳出現(xiàn)上升沿還是 下降沿都會產(chǎn)生中斷請求,所以必須處理好不需要的虛假中斷。三是,一般都利用 pic 單片機
51、的引腳功能來檢測按鍵,所以必須處理好按鍵消抖的問題。 引腳中斷程序設(shè)計: (1) 在主程序里先設(shè)置有關(guān)的寄存器。 設(shè)置 trisb 寄存器,使 rb7rb4 相關(guān)的引腳處于輸入狀態(tài); 如果需要弱上拉,通過 option_reg 的第 7 位設(shè)置; bcf intcon ,rbif xxx 大學(xué)本科畢業(yè)設(shè)計 14 bsf intcon ,rbie bsf intcon ,gie (2)響應(yīng)狀態(tài)變化后的中斷服務(wù)程序。 檢查 rbif 是否為 l,為 l 則是引腳變化引起的中斷; 調(diào)用按鍵處理程序; 清除 rbif 標志。 2. 由定時器/計數(shù)器 tmr1 產(chǎn)生中斷。當?shù)?1 外圍設(shè)備中斷標志寄存器
52、 pir1 的位 0(tmr1if)即定時器/計數(shù)器 tmr1 模塊溢出中斷標志位為 1 時,tmr1 溢出。用軟件清 0,然后執(zhí)行相應(yīng)程序,最后返回。 tmr1 中斷程序設(shè)計: (1)在程序里先設(shè)置有關(guān)的寄存器 movlw 80h ;設(shè)置為 1s 溢初始值 movwf tmr1h clrf tmr1l clrf intcon (2)狀態(tài)變化后的中斷服務(wù)程序。 檢查 tmr1ie 是否為 1,為 1 則是 tmr1 發(fā)生溢出產(chǎn)生的中斷; bcf pir1,tmr1if ;軟件清 0 movlw 80h ,movwf tmr1h ;對 tmr1 裝載初始值 (三)中斷的現(xiàn)場保護和恢復(fù)問題: 中斷
53、現(xiàn)場的保護是中斷技術(shù)中一個很重要的環(huán)節(jié)。在進入中斷服務(wù)程序期間,只有 返回地址,即程序計數(shù)器 pc 的值被自動壓入堆棧。若需要保留其他寄存器的內(nèi)容,就得 另想辦法。由于 pic 單片機的指令系統(tǒng)中沒有像其他單片機那樣的 push(入棧)和 pop(出棧)之類的指令,所以要用 1 段用戶程序來實現(xiàn)類似的功能。因為是用 1 段程序 來實現(xiàn)現(xiàn)場保護,而程序的執(zhí)行有可能會影響到 w 寄存器和 status 寄存器,所以,首先 應(yīng)該把這 2 個寄存器保護起來,然后再去保存其他用戶認為有必要保護的寄存器。并且 在 pic 單片機中,中斷現(xiàn)場數(shù)據(jù)不是保留到芯片的堆棧存儲區(qū)中,而是保留在用戶自己 選擇的一些文
54、件寄存器(即 ram 數(shù)據(jù)存儲器單元)中,當然一般應(yīng)該選擇通用寄存器來 保護現(xiàn)場。 ;保護現(xiàn)場程序 1movwf w_temp ;復(fù)制 w 到它的臨時備份寄存器 w_temp 中 xxx 大學(xué)本科畢業(yè)設(shè)計 15 2swapf status,w ;將 status 寄存器高低半字節(jié)交換后放入 w 3clrf status ;不管當前處在哪個體,都設(shè)置體 0 作當前體 4movwf status_temp ;保存 status 到體 0 上的臨時寄存器 status_temp 5swapf status_temp,w ;將 status_temp 寄存器高低半字節(jié)交換后放入 w ;恢復(fù)現(xiàn)場程序 6
55、movwf status ;把 w 內(nèi)容移動到 status 寄存器, (同時也把當前體恢復(fù) 到原先的體上) 7swapfw_temp,f ;將 w_temp 內(nèi)容高低半字節(jié)交換后放回 8swapfw_temp,w ;再次將 w_temp 內(nèi)容高低半字節(jié)交換后放入 w 六、總結(jié)六、總結(jié) 本系統(tǒng)完成了簡易電子表的制作,led 數(shù)碼管能夠準確無誤的進行實時時間的顯示, 并能實現(xiàn)時間可調(diào)功能。在此設(shè)計中,單片機的系統(tǒng)時鐘采用電路板原帶的 rc 時基振蕩 器外接阻容器件并采納 rc 振蕩器方式,既節(jié)省成本,又使得單片機具有更快的啟動時間, 也不會影響時鐘振蕩器互相獨立,其計數(shù)器的遞增速度完全與系統(tǒng)時鐘
56、無關(guān)。這樣就使 整個系統(tǒng)簡潔,可靠性高,性能穩(wěn)定,本系統(tǒng)達到了設(shè)計的基本要求和發(fā)揮部分的要求。 經(jīng)過本次設(shè)計,我對 pic16f877 單片機的應(yīng)用和其芯片功能有了更深層次的理解。 單片機的實踐性很強,自己實際動手,實際體驗其開發(fā)過程,這是至關(guān)重要的。在這次 設(shè)計中還有欠缺的方面,我在今后的學(xué)習工作中會加以注意。 七、致謝七、致謝 這次畢業(yè)學(xué)位論文是在我的指導(dǎo)老師汪光宅老師的親切關(guān)懷和悉心指導(dǎo)下完成的。 他嚴肅的科學(xué)態(tài)度,嚴謹?shù)闹螌W(xué)精神,精益求精的工作作風,深深地感染和激勵著我。 從課題的選擇到項目的最終完成,汪老師都始終給予我細心的指導(dǎo)和不懈的支持。幾個 月來,汪老師不僅在學(xué)業(yè)上給予我精心的
57、指導(dǎo),同時還在思想上給予我無微不至的關(guān)懷, 在此謹向汪老師致以誠摯的謝意和崇高的敬意。 在此,我還要感謝在一起度過愉快的大學(xué)生活的各位室友以及班級里的各位同學(xué), 正是由于你們的幫助和支持,我才能克服一個一個的困難和疑惑,直至設(shè)計的順利完成。 xxx 大學(xué)本科畢業(yè)設(shè)計 16 在論文即將完成之際,我的心情無法平靜,從開始進入課題到論文的順利完成,有 多少可敬的師長、同學(xué)、朋友給了我無言的幫助,在這里請接受我誠摯的謝意!最后我還 要感謝培養(yǎng)我長大含辛茹苦的父母,謝謝你們! 附錄一附錄一 電子表的硬件電路原理圖電子表的硬件電路原理圖 xxx 大學(xué)本科畢業(yè)設(shè)計 17 附錄二附錄二 匯編程序流程匯編程序流
58、程 1. 主程序流程圖 向 tmr1 賦 1s 溢出初始 值 清出全部中斷標志位及其使能位 設(shè)置體 1 為當前體 清除所有外設(shè)中斷使能位 設(shè)置 d 口、a 口為輸出 c 口為輸出、rc0 腳為輸入 定義 a 口所有相關(guān)引腳為普通數(shù)字 i/o 腳 關(guān)閉 tmr1 設(shè)置 b 口高四位為輸入、低四位輸 出 使能 tmr1 體 0 為當前體,開放全局中斷和外設(shè)、rb 電平變化產(chǎn)生的中斷 主程序 xxx 大學(xué)本科畢業(yè)設(shè)計 18 2. 中斷服務(wù)子程序流程圖 儀 否 是 員 否 是 是 否 是 否 對 a 口、b 口、d 口賦初始值 設(shè)置控制寄存器預(yù)分頻比為 1:1,外部時鐘源、異步使能振蕩器 時鐘清 0
59、計時子程序 顯示子程序 中斷服務(wù)子程序 serv 保護現(xiàn)場 w、status 調(diào)查中斷源 是其他 情況引 起的錯 誤操作, 則不作 任何處 理,恢 復(fù)現(xiàn)場 子程序 retfie0 是 tmr1 模 塊溢出中斷 是 rb 電平變化產(chǎn)生的中斷 清除 tmr1 溢 出中斷標志位 對 tmr1 裝載初始值 秒個位自加 1 計時、顯示轉(zhuǎn)換 寄存器位 0 置 1 恢復(fù)現(xiàn)場子 程序 retfie1 rb 中斷處理程序 tmr1 溢出中斷處理程序 清除 rb 中斷標志位關(guān)閉 tmr1 測試 rb 位 4 控制按鍵是否按下 調(diào)用延時子程序 delay1 再次測試 rb 位 4 控 制按鍵是否按下 轉(zhuǎn)分個位修改子
60、 程序 rb4serv 恢復(fù)現(xiàn)場子程序 retfie0 測試 rb 位 5 控制按鍵是否按下 調(diào)用延時子 程序 delay1 測試 rb 位 6 控制 按鍵是否 按下 xxx 大學(xué)本科畢業(yè)設(shè)計 19 否 是 是 否 是 否 是 否 是 3. 時間顯示子程序流程圖 返回 再次測試 rb 位 5 控制按鍵是否按 下 轉(zhuǎn)分十位修改子程序 rb5serv 延時子程序 delay1 再次測試 rb 位 6 控 制按鍵是否按下 轉(zhuǎn)時個位修改子程序 rb6serv 測試 rb 位 7 控制按鍵是否按下 延時子程序 delay1 再次測試 rb 位 7 控制按鍵是否按 下 轉(zhuǎn)時十位修改子 程序 rb7serv
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2023九年級數(shù)學(xué)下冊 第三章 圓4 圓周角和圓心角的關(guān)系第1課時 圓周角定理及其推論1說課稿 (新版)北師大版001
- 8《我們周圍的植物》說課稿-2023-2024學(xué)年科學(xué)一年級下冊青島版
- 6《探訪古代文明》(說課稿)-統(tǒng)編版道德與法治六年級下冊
- 12《富起來到強起來》(說課稿)-統(tǒng)編版道德與法治五年級下冊
- 6景陽岡說課稿-2023-2024學(xué)年五年級下冊語文統(tǒng)編版
- 5《一次比一次有進步》說課稿-2023-2024學(xué)年培智語文六年級下冊
- 二零二五年度小麥病蟲害防治技術(shù)服務(wù)合同
- 水務(wù)管理項目招標合同(2篇)
- 二零二五年度蒙娜麗莎瓷磚瓷磚藝術(shù)培訓(xùn)與合作推廣合同
- 2016年秋九年級化學(xué)上冊 第1單元 走進化學(xué)世界 課題1 物質(zhì)的變化和性質(zhì)說課稿 (新版)新人教版
- 潤滑油過濾培訓(xùn)
- 內(nèi)蒙自治區(qū)烏蘭察布市集寧二中2025屆高考語文全真模擬密押卷含解析
- 浙江省紹興市2023-2024學(xué)年高一上學(xué)期期末考試物理試題(含答案)
- 《住院患者身體約束的護理》團體標準解讀課件
- 中國急性缺血性卒中診治指南(2023版)
- 學(xué)前教育普及普惠質(zhì)量評估幼兒園準備工作詳解
- 第十五章《探究電路》復(fù)習課課件滬科版九年級物理
- 2024年中考物理科技創(chuàng)新題型(教師版)
- 唐山市重點中學(xué)2024-2025學(xué)年全國高考大聯(lián)考信息卷:數(shù)學(xué)試題試卷(3)含解析
- 未成年上班知情協(xié)議書
- 2024年山東藥品食品職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫含答案
評論
0/150
提交評論