




已閱讀5頁(yè),還剩35頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
論文題目:?jiǎn)螖[實(shí)驗(yàn)自動(dòng)計(jì)時(shí)器的設(shè)計(jì)制作 專(zhuān) 業(yè):電子科學(xué)與技術(shù)0602班學(xué) 生:邵 文 文 簽名: 指導(dǎo)老師:李 旭 虹 簽名: 摘 要本文介紹了一種新穎的智能單擺試驗(yàn)儀的設(shè)計(jì)方法,它是基于STC89C52為核心,利用液晶顯示技術(shù)輸出顯示擺長(zhǎng),周期和重力加速度。加1,減1和輸入按鍵可以自動(dòng)控制單擺經(jīng)平衡位置的次數(shù)。單擺小球擺至最低點(diǎn)擋住激光,光敏電阻的阻值顯著差異使得由NE555連接的施密特觸發(fā)器輸出的電平發(fā)生變化,并以此脈沖信號(hào)的上升沿控制單片機(jī)工作,利用20ms定時(shí)中斷計(jì)數(shù)可以算出單擺擺動(dòng)的總時(shí)間,從而可以求出周期T和重力加速度g。該方法具有測(cè)量快,精度高,成本低,體積小,使用方便等優(yōu)點(diǎn),提高了單擺實(shí)驗(yàn)質(zhì)量?!娟P(guān)鍵詞】單擺實(shí)驗(yàn);單片機(jī);液晶顯示【論文類(lèi)型】應(yīng)用型Title:The design of automatic timer in pendulum experimentMajor:Electronic science and technology Name:Shao wenwen Signature: Supervisor:Li Xuhong Signature: ABSTRACTThis paper introduces a novel designing method of intelligent simple pendulum experimental apparatus, which is based STC89C52 as the core, outputs and displays pendulum length, period and acceleration of gravity by using LCD display technology. Plus 1, minus 1 and enter buttons can control the number of simple pendulum when passing the Equilibrium position. The small simple pendulum ball swings to the lowest point and blocks the laser, a significant difference of Photosensitive resistors resistance makes the voltage level which is outputted from the Schmitt trigger linked by NE555 changes, and use the rising edge of pulse signal to control MCU, counting 20ms timer interrupt can be calculated the total time of the pendulum swing, So they can find the period T and the acceleration of gravity g. this method has many advantages of fast measuring, high precision, low cost, small volume, convenient use, etc. It can improve the quality of the pendulum experiment.【Key words】Simple pendulum experiment;MCU;LCD display【Type of Thesis】Application type前 言單擺實(shí)驗(yàn)儀已廣泛應(yīng)用于工業(yè)測(cè)量,中大學(xué)的實(shí)驗(yàn)教學(xué)等領(lǐng)域。作為一種精密的測(cè)量?jī)x器,單擺試驗(yàn)儀隨著電子技術(shù)的發(fā)展也在不斷的完善,現(xiàn)今市場(chǎng)上有各種各樣設(shè)計(jì)方法制成的單擺試驗(yàn)儀,與傳統(tǒng)的單擺試驗(yàn)儀相比,新型的實(shí)驗(yàn)單擺具有非常突出的優(yōu)點(diǎn)。傳統(tǒng)的實(shí)驗(yàn)單擺在精度和操作上都存在諸多問(wèn)題,由于采用人工計(jì)時(shí)計(jì)數(shù)的方法測(cè)周期,這顯然會(huì)有很大的誤差,而且操作很不方便,不能滿足現(xiàn)代測(cè)量和教學(xué)要求。由于現(xiàn)行的實(shí)驗(yàn)單擺儀實(shí)現(xiàn)了自動(dòng)化控制,所以在測(cè)量誤差上有了很明顯的改善,而且現(xiàn)代顯示技術(shù)非常的成熟,特別是液晶顯示技術(shù),使得實(shí)驗(yàn)結(jié)果更直觀,功能也更多。該課題的設(shè)計(jì)要求是:1) 最多可記錄9個(gè)擺動(dòng)周期;2) 最大計(jì)時(shí)99.9秒;3) 分辨率為0.1秒。由于市場(chǎng)上電子元器件的品種多樣,利用電子技術(shù)設(shè)計(jì)實(shí)驗(yàn)單擺儀的方法多種多樣,但要實(shí)現(xiàn)自動(dòng)化控制,其基本思路是不變的,首先要采集單擺擺動(dòng)到某一固定位置的電平信號(hào),經(jīng)過(guò)多次往復(fù)可以計(jì)算出平均周期,所以必須要有一個(gè)采集信號(hào)電路。另外的一個(gè)主要模塊就是對(duì)信號(hào)的處理并輸出顯示,本課題也是緊扣這兩條主線而提出的一種設(shè)計(jì)方法。本文介紹的設(shè)計(jì)方法是基于STC89C52單片機(jī)的控制為核心,利用液晶顯示技術(shù)輸出顯示,其顯示輸出包括擺長(zhǎng),周期,重力加速度。在信號(hào)采集方面,也用了非常巧妙而且電路搭接簡(jiǎn)單的方法,它是利用了光敏電阻接收激光信號(hào)的方法,因?yàn)楣饷綦娮璧姆磻?yīng)靈敏,使得最后經(jīng)脈沖整形電路輸出的脈沖信號(hào)有非常好的效果。相比于其他的利用單片機(jī)設(shè)計(jì)的實(shí)驗(yàn)單擺儀,還有一點(diǎn)也是非常新穎的,市場(chǎng)上流行的基于單片機(jī)控制的實(shí)驗(yàn)單擺儀采用的基本上是外部中斷控制,而本文應(yīng)用了單片機(jī)采集輸入至P3.0口的脈沖上升沿來(lái)實(shí)現(xiàn)計(jì)時(shí)計(jì)數(shù)的。在程序設(shè)計(jì)方面,電路更簡(jiǎn)潔,結(jié)構(gòu)更簡(jiǎn)單,而且精度也得到了提高。本課題屬于應(yīng)用型,所以不僅需要一定的理論基礎(chǔ),而且在實(shí)踐過(guò)程中也需要一些應(yīng)用經(jīng)驗(yàn),本文涉及到的理論基礎(chǔ)課程包括模擬數(shù)字電路,單片機(jī)原理與接口技術(shù),C語(yǔ)言程序設(shè)計(jì),仿真采用proteus軟件,這些課程都是電子技術(shù)專(zhuān)業(yè)的基礎(chǔ)課,也是作為一名電子技術(shù)專(zhuān)業(yè)學(xué)生必須懂得的基礎(chǔ)課程。通過(guò)這次的畢業(yè)設(shè)計(jì),加深了這些課程的理解,而且也將枯燥的理論真正融入到自己的大腦。在焊接電路過(guò)程中,也遇到了很多的小問(wèn)題,但最后能通過(guò)理論的推敲一一化解,體會(huì)最深的就是完成一項(xiàng)工程,需要條理清晰,而且對(duì)整個(gè)系統(tǒng)也要有一定的把握。目 錄1 單擺儀測(cè)量原理及設(shè)計(jì)方案11.1 測(cè)量原理11.2設(shè)計(jì)方案11.2.1信號(hào)產(chǎn)生電路模塊設(shè)計(jì)21.2.2 信號(hào)輸入單片機(jī)方式31.2.3顯示輸出41.3總設(shè)計(jì)框圖和電路圖62 硬件設(shè)計(jì)及工作原理72.15V直流電源的組成72.2信號(hào)產(chǎn)生92.2.1 激光產(chǎn)生及參數(shù)分析92.2.2 光接收及信號(hào)波形整形102.3 STC89C52單片機(jī)組成及外部擴(kuò)展112.3.1 STC89C52單片機(jī)的結(jié)構(gòu)112.3.2STC89C52單片機(jī)最小系統(tǒng)組成112.3.3 時(shí)鐘電路和復(fù)位電路122.3.4 液晶顯示擴(kuò)展技術(shù)132.3.5 單片機(jī)與PC機(jī)間的通信152.4Proteus軟件仿真162.4.1 Proteus ISIS簡(jiǎn)介162.4.2 Proteus運(yùn)行流程162.4.3系統(tǒng)設(shè)計(jì)和調(diào)試 163 程序設(shè)計(jì)193.1C與8051193.2設(shè)計(jì)思路及流程圖203.3源程序設(shè)計(jì)224畢業(yè)設(shè)計(jì)總結(jié)27致謝附錄參考文獻(xiàn)35單擺實(shí)驗(yàn)自動(dòng)計(jì)時(shí)器的設(shè)計(jì)制作1.單擺儀測(cè)量原理及設(shè)計(jì)方案1.1 測(cè)量原理由物理學(xué)知識(shí)可知,單擺在擺動(dòng)角小于5度時(shí)的運(yùn)動(dòng)可近似認(rèn)為是簡(jiǎn)諧運(yùn)動(dòng),且其運(yùn)動(dòng)周期T和重力加速度g之間有如下關(guān)系: (1-1)因此可以通過(guò)測(cè)量單擺簡(jiǎn)諧運(yùn)動(dòng)的周期T,得到其頻率: (1-2)給出擺長(zhǎng)可以測(cè)得重力加速度: (1-3)根據(jù)以上物理學(xué)知識(shí),可知單擺實(shí)驗(yàn)儀的關(guān)鍵在于能夠準(zhǔn)確測(cè)量單擺運(yùn)動(dòng)的周期或頻率,單擺擺長(zhǎng)一般處于0.1m-1m之間,由式(1-1)計(jì)算可得: 可知單擺運(yùn)動(dòng)的頻率較低,對(duì)于高速運(yùn)行的單片機(jī)來(lái)說(shuō),測(cè)得高頻信號(hào)可以直接測(cè)量其頻率,而對(duì)于低頻信號(hào)采用測(cè)量周期的辦法可以減小測(cè)量誤差。1.2 設(shè)計(jì)方案利用單片機(jī)設(shè)計(jì)的單擺實(shí)驗(yàn)儀其基本電路模塊可已分成信號(hào)產(chǎn)生模塊,信號(hào)處理模塊,單片機(jī)控制模塊和顯示模塊四部分組成。其系統(tǒng)組成如圖1-1所示。圖1-11.2.1 信號(hào)產(chǎn)生電路模塊設(shè)計(jì)方案一:利用紅外探測(cè)技術(shù)可以實(shí)現(xiàn)單擺擺動(dòng)周期的監(jiān)測(cè),其組成電路由紅外發(fā)射和接收兩大部分組成。1) 紅外線發(fā)射電路。一般是用LM555定時(shí)器IC接成無(wú)穩(wěn)定的多諧振蕩模式,工作頻率由接入到2,6兩端的電阻和電容決定。2) 紅外線接收電路。由于紅外接收發(fā)送波長(zhǎng)需匹配,所以在接收過(guò)程中提取發(fā)射的紅外線波長(zhǎng),電路一般包括前置放大,限幅放大器,帶通濾波器,檢波器,積分器和整形電路。CX20106是紅外接收專(zhuān)用集成電路芯片,圖1-2是該芯片控制的一種紅外接收電路。圖 1-2方案二:利用光敏器件在光照和避光的情況下特性相差很大的特點(diǎn),同樣可以檢測(cè)運(yùn)動(dòng)物體的移動(dòng)。光敏器件可以是光敏電阻,光敏三極管,光敏二極管等,光照可以是普通光,也可以是激光,但為了得到很好的亮暗差異,使用激光效果最好。較之方案一,方案二的電路結(jié)構(gòu)簡(jiǎn)單,易實(shí)現(xiàn),成本低.圖1-3是本文所采用的電路,它是利用光敏電阻接收激光信號(hào),單擺放置于激光棒與光敏電阻之間,當(dāng)單擺經(jīng)過(guò)最低點(diǎn)時(shí),振子小球擋住光信號(hào),使得光敏電阻阻值很大,在接收電路中,R1的阻值遠(yuǎn)遠(yuǎn)小于光敏電阻的暗阻,所以LM555的2,6兩端為低電平,經(jīng)整形后3端輸出高電平,單擺來(lái)回?cái)[動(dòng)時(shí),就可以形成一連串的脈沖信號(hào)。圖 1-31.2.2 信號(hào)輸入單片機(jī)方式方案一:輸入單片機(jī)的脈沖信號(hào),可以作為外部中斷信號(hào),STC89C52單片機(jī)有6個(gè)中斷源,包括三個(gè)定時(shí)/計(jì)數(shù)器溢出中斷,兩個(gè)外部中斷和一個(gè)串行口輸入中斷。在本課題中,若采用中斷控制,其基本思路可以是這樣實(shí)現(xiàn),當(dāng)單擺擺到最低點(diǎn)時(shí),有信號(hào)產(chǎn)生并整形后得到的高電平經(jīng)反相器接入中斷0或是中斷1,單片機(jī)響應(yīng)中斷,并啟動(dòng)定時(shí)/計(jì)數(shù)器中斷,因?yàn)橐獙?shí)現(xiàn)自動(dòng)計(jì)數(shù)周期和總時(shí)間,所以可以設(shè)計(jì)兩個(gè)定時(shí)中斷,也可以在程序里面先設(shè)定一個(gè)擺動(dòng)周期數(shù),利用循環(huán)減1最后為0而解除定時(shí)器的工作。方案二:利用脈沖信號(hào)的上升下降沿控制單片機(jī)工作是一種很常見(jiàn)的思路,首先是避免了外部中斷和定時(shí)中斷嵌套的問(wèn)題,所以易實(shí)現(xiàn),思路也較易理解,當(dāng)小球經(jīng)過(guò)最低點(diǎn)時(shí),信號(hào)由低電平變?yōu)楦唠娖?,單片機(jī)采集到該上升沿信號(hào),控制定時(shí)器工作,當(dāng)小球再次經(jīng)過(guò)最低點(diǎn)時(shí),控制擺動(dòng)次數(shù)的循環(huán)程序運(yùn)行,此時(shí)定時(shí)器一直在連續(xù)工作,并將溢出的次數(shù)賦給一全局變量,當(dāng)最后的一次上升沿采集到時(shí),定時(shí)器停止工作,最后是控制液晶顯示輸出。方案二同方案一相比,程序結(jié)構(gòu)簡(jiǎn)單,易編寫(xiě),也容易實(shí)現(xiàn)精確計(jì)算,方案一需用到中斷嵌套和中斷不能返回值的問(wèn)題,所以本課題先前采用方案一,但最后還是選用了二方案。1.2.3 顯示輸出在單片機(jī)顯示系統(tǒng)中,顯示輸出是很關(guān)鍵的部件,是構(gòu)成人機(jī)對(duì)話的一種基本方式。顯示器顯示控制過(guò)程和結(jié)果,有兩種方式,一種是LED發(fā)光器件,還有一種是LCD液晶顯示。方案一: LED發(fā)光器件一般常用的有2類(lèi):數(shù)碼管和點(diǎn)陣。數(shù)碼管分共陰和共陽(yáng)兩種,一般8字型,分為A B C D E F G P段,其中P位小數(shù)點(diǎn),數(shù)碼管常用的有10根管腳(單位),每段一根管腳,另外兩根管腳為公共端,2根是通的。點(diǎn)陣常用的為8*8,以前還有5*8(現(xiàn)在不大用了),都是單管芯,分(行)共陰和(行)共陽(yáng),一般都用5v供電。8*8點(diǎn)陣為16根管腳(單色, 也有24根的, 可能是作廢的雙色點(diǎn)陣或者為了能在同一種線路板上實(shí)現(xiàn)單色雙色都可用而設(shè)計(jì)的, 也比較常見(jiàn))8根行8根綠,雙色為24根管腳, 8根行, 8根列紅, 8根列綠。LED發(fā)光器件的顯示基本原理分為靜態(tài)(只有數(shù)碼管能實(shí)現(xiàn))和動(dòng)態(tài),靜態(tài)的比較好實(shí)現(xiàn),動(dòng)態(tài)顯示是運(yùn)用視覺(jué)惰性而設(shè)計(jì)的快速掃描數(shù)碼管。下圖5是一種數(shù)碼管于單片機(jī)的連接電路,U1的P0口和P2口的部份引腳構(gòu)成了6位LED數(shù)碼管驅(qū)動(dòng)電路,數(shù)碼管采用共陽(yáng)型,使用PNP型三極管作為片選端的驅(qū)動(dòng),所有三極管的發(fā)射極連在一起,接到正電源端,它們的基極則分別連P2.0P2.5,當(dāng)P2.0P2.5中某引腳輸是低電平時(shí),三極管導(dǎo)通,給相應(yīng)的數(shù)碼管供電,該位數(shù)碼管點(diǎn)亮哪些筆段,則取決于筆段引腳是高或低電平。圖1-4中看出,所有6位數(shù)碼管的筆段連在一起,通過(guò)限流電阻后接到P0口,因此,哪些筆段亮就取決于P0口的8根線的狀態(tài)。圖1-4方案二:液晶顯示的原理是利用液晶的物理性質(zhì),即通電時(shí)導(dǎo)通,排列變得有秩序,使光線容易通過(guò);不通電時(shí)排列混亂,阻止光線通過(guò)的原理制成的。液晶顯示器的驅(qū)動(dòng)方式一般有靜態(tài)和分割驅(qū)動(dòng)兩種。本課題采用的是液晶顯示,型號(hào)為T(mén)H1602A,具體工作原理會(huì)在下一章描述。其電路如圖1-5所示圖 1-5單片機(jī)系統(tǒng)中應(yīng)用晶液顯示器作為輸出器件有以下幾個(gè)優(yōu)點(diǎn):1)顯示質(zhì)量高。由于液晶顯示器每一個(gè)點(diǎn)在收到信號(hào)后就一直保持那種色彩和亮度,恒定發(fā)光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新新亮點(diǎn)。因此,液晶顯示器畫(huà)質(zhì)高且不會(huì)閃爍。2)數(shù)字式接口。液晶顯示器都是數(shù)字式的,和單片機(jī)系統(tǒng)的接口更加簡(jiǎn)單可靠,操作更加方便。3)質(zhì)量小,重量輕。液晶顯示器通過(guò)顯示屏上的電極控制液晶分子狀態(tài)來(lái)達(dá)到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。4)功耗低。相對(duì)而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動(dòng)IC上,因而耗電量比其它顯示器要少得多。1.3 總設(shè)計(jì)框圖和電路圖根據(jù)以上分析,按照課題的要求,可以將整個(gè)方案分成兩大部分:硬件和軟件。硬件主要是以單片機(jī)為核心,根據(jù)程序設(shè)計(jì)思路,將信號(hào)產(chǎn)生電路接入到單片機(jī)信號(hào)輸入口(P3.0),加1,減1和輸入開(kāi)關(guān)控制設(shè)置的周期數(shù),顯示部分輸出用P1口做數(shù)據(jù)輸出接液晶顯示,P2.4,P2.5,P2.6用來(lái)控制液晶顯示器的控制信號(hào),另外由于工作電壓都為5V,所以將市電變壓整流濾波穩(wěn)壓后可以直接供給這幾個(gè)模塊式使用。所以該方案的硬件框圖如圖1-6所示,圖1-7為總的電路圖(由于在proteus仿真軟件中沒(méi)有光敏電阻和激光電筒,所以仿真時(shí)用光耦器件代替)。軟件部分主要是將采集信號(hào)計(jì)數(shù),并計(jì)時(shí),待計(jì)數(shù)完成時(shí),停止計(jì)時(shí),利用計(jì)時(shí)溢出次數(shù)算出總時(shí)間,然后除于擺動(dòng)周期,根據(jù),便可以算出重力加速度,最后利用液晶控制信號(hào)的控制,輸出擺長(zhǎng),周期,和重力加速度。其顯示格式為第一行顯示L= ,T= ,第二行顯示g= 。圖 1-6圖 1-72 硬件設(shè)計(jì)及工作原理2.1 5V直流電源的組成 小功率穩(wěn)壓電源是由電源變壓器、整流、濾波和穩(wěn)壓電路等四部分組成的。其框圖如圖2-1所示。 圖 2-1 直流穩(wěn)壓電源組成框圖電源變壓器:將交流電網(wǎng)220V交流電壓變成所需的交流電壓。變壓過(guò)程通常由變壓器來(lái)完成,如收錄機(jī)、VCD、黑白電視機(jī)等設(shè)備的電源,大都是用變壓器來(lái)降低電網(wǎng)電壓的。整流器:將交流電壓變成脈動(dòng)的直流電壓。整流電路通常有半波整流電路、全波整流、橋式整流電路等,橋式整較為常用。濾波器:將整流所得的脈動(dòng)直流電(大小發(fā)生規(guī)律性變化)中的交流成分濾除,常用的濾波電路有電容濾波、電感濾波及阻容濾波等電路。穩(wěn)壓器:濾波后的電壓還會(huì)隨電網(wǎng)電壓波動(dòng)(一般有左右的波動(dòng))和隨負(fù)載和溫度的變化而變化。穩(wěn)壓電路的作用是克服電網(wǎng)電壓波動(dòng)、負(fù)載和溫度變化時(shí)所引起的輸出電壓的變化,維持輸出直流電壓穩(wěn)定。直流穩(wěn)壓電源的種類(lèi)很多,常見(jiàn)的主要有以下四類(lèi):第一類(lèi)是穩(wěn)壓二極管穩(wěn)壓電源,它的特點(diǎn)是電路結(jié)構(gòu)簡(jiǎn)單,但功率較小,穩(wěn)壓精度低;第二類(lèi)是晶體管串聯(lián)調(diào)整式穩(wěn)壓電源,它的主要特點(diǎn)是電路結(jié)構(gòu)比較簡(jiǎn)單,工作可靠,功率較大,穩(wěn)壓精度高,無(wú)電磁干擾,但效率低;第三類(lèi)是集成穩(wěn)壓器,它的特點(diǎn)是體積小,可靠性高以及溫度特性好,而且使便、價(jià)格便宜。第四類(lèi)是開(kāi)關(guān)式穩(wěn)壓電源,它的主要特點(diǎn)是: 效率高,溫升低,電路便于集成化,但電路較復(fù)雜,并有高頻干擾存在。當(dāng)負(fù)載要求功率較大且效率高時(shí),常采用開(kāi)關(guān)型穩(wěn)壓電源。圖2-2為該課題所用電源,最后輸出為5V直流。圖 2-22.2 信號(hào)產(chǎn)生2.2.1 激光產(chǎn)生及參數(shù)分析激光電筒價(jià)廉物美,有極高的性?xún)r(jià)比,主要特點(diǎn)是聚光性能優(yōu)良,射距達(dá)1200m1500m,肉眼觀察,數(shù)百米外光點(diǎn)仍然很小,故廣泛用于教學(xué)、導(dǎo)游、娛樂(lè)。經(jīng)試驗(yàn),可作遠(yuǎn)距離的防護(hù)警戒及遙控傳輸數(shù)據(jù)。如圖2-3所示為激光電筒原理圖,器件均為貼片元件,故體積很小,但因激光功率較大,不可對(duì)著人眼直射。圖 2-3下圖2-4為650nm鐳射激光定位指示器實(shí)物圖,其參數(shù)如下:波長(zhǎng):650nm 型號(hào):FU650L5-C9供電電壓:DC 2.8-5.0(V) 發(fā)散角:0.5-2.0mrad運(yùn)轉(zhuǎn)方式:連續(xù)激光器 光斑模式:一字線狀工作電流:10-25mA(與輸出功率大小成正比)激勵(lì)方式:電激勵(lì)式激光器圖 2-4本課題所設(shè)計(jì)的激光產(chǎn)生電路電源為5V,所以為了保護(hù)激光電筒,串聯(lián)一個(gè)較小的電阻。2.2.2 光接收及信號(hào)波形整形圖1-3是光電控制電路,由LM555電路為核心組成,當(dāng)光敏電阻有激光照射時(shí)電阻變?。ń?jīng)測(cè)得在總電路中亮阻為800-900,暗組為700k左右),觸發(fā)端2,6兩端上升4V以上,于是3腳輸出低電平,當(dāng)激光被遮檔切斷,光敏電阻阻值變大,使得遠(yuǎn)遠(yuǎn)大于9.1k,2,6管腳變?yōu)榈碗娖剑?腳輸出高電平。該圖中的核心為L(zhǎng)M555(內(nèi)部結(jié)構(gòu)如圖2-5所示),所接成的電路為施密特觸發(fā)電路,用于波形變換、脈沖整形、信號(hào)的鑒頻等方面,本電路中用于波形整形。施密特觸發(fā)器具有類(lèi)似于磁滯回線形狀的電壓傳輸特性,如圖2-6所示。我們把這種形狀的特性曲線稱(chēng)為滯回特性或施密特觸發(fā)特性。圖 2-5 (a)反相輸出型(b)同相輸出型 圖 2-6它有兩個(gè)特點(diǎn),第一,輸入電壓上升時(shí)和下降時(shí),特性曲線轉(zhuǎn)折點(diǎn)所對(duì)應(yīng)的輸入電壓UT+和UT-是不同的。我們把UT+叫做正向閾值電壓,把UT-叫做負(fù)向閾值電壓。同時(shí),把UT+與UT-之差定義為回差電壓,用UT表示,即:UT = UT+UT-,第二,電壓傳輸特性轉(zhuǎn)折時(shí)的上升時(shí)間和下降時(shí)間極短,或者說(shuō)上升沿和下降沿非常陡。由于施密特觸發(fā)器具有滯回特性,在脈沖整形電路中得到了廣泛的應(yīng)用。2.3 STC89C52單片機(jī)組成及外部擴(kuò)展2.3.1 STC89C52單片機(jī)的結(jié)構(gòu)STC89C52處理芯片引腳如圖2-7 圖 2-7STC89C52 是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲(chǔ)器。使用高密度非易失性存儲(chǔ)器技術(shù)制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在線系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 STC89C52具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,256字節(jié)RAM, 32 位I/O 口線,看門(mén)狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位 定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶振及時(shí)鐘電路。另外,STC89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。2.3.2 STC89C52單片機(jī)最小系統(tǒng)組成單片機(jī)的最小系統(tǒng)如下圖所示,18引腳和19引腳接時(shí)鐘電路,XTAL1接外部晶振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,XTAL2接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出。第9引腳為復(fù)位輸入端,接上電容,電阻及開(kāi)關(guān)后夠上電復(fù)位電路,20引腳為接地端,40引腳為電源端。 圖 2-82.3.3 時(shí)鐘電路和復(fù)位電路單片機(jī)的時(shí)鐘一般需要多相時(shí)鐘,所以時(shí)鐘電路由振蕩器和分頻器組成。STC89C52單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的可控高增益反相放大器。兩個(gè)引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。在片外跨接一晶振和兩個(gè)匹配電容C1,C2如圖2-8所示。就構(gòu)成一個(gè)自激振蕩器。振蕩頻率根據(jù)實(shí)際要求的工作速度,從幾百千赫至24MHz可適當(dāng)選取某一頻率。匹配電容C1,C2要根據(jù)石英晶體振蕩器的要求選取。當(dāng)晶振頻率為12MHz時(shí),C1,C2一般選30pF左右。圖2-9中PD是電源控制寄存器PCON.1的掉電方式位。上述電路是靠STC89C52單片機(jī)內(nèi)部電路產(chǎn)生振蕩的。也可以由外部振蕩器或時(shí)鐘直接驅(qū)動(dòng)單片機(jī),但一般不采用外部時(shí)鐘輸入方式,除非一些特殊場(chǎng)合如多CPU系統(tǒng)。圖 2-9復(fù)位是單片機(jī)的初始化操作。其功能主要是將程序(PC)初始化為0000H,使單片機(jī)從0000H單元開(kāi)始執(zhí)行程序,并將特殊功能寄存器賦一些特定值。復(fù)位是上電的第一個(gè)操作,然后程序從0000H開(kāi)始執(zhí)行。在運(yùn)行中,外界干擾等因素可能會(huì)使單片機(jī)的程序陷入死循環(huán)狀態(tài)或“跑飛”。要使其進(jìn)入正常狀態(tài),唯一辦法是將單片機(jī)復(fù)位,以重新啟動(dòng)。復(fù)位也是使單片機(jī)退出低功耗工作方式而進(jìn)入正常狀態(tài)一種操作。RST引腳是復(fù)位端,高電平有效。在該引腳輸入至少連續(xù)兩個(gè)周期以上的高電平,單片機(jī)復(fù)位。RST引腳內(nèi)部有一個(gè)斯密特ST觸發(fā)器以對(duì)輸入信號(hào)整形,保證內(nèi)部復(fù)位電路的可靠,所以外部輸入信號(hào)不一定要求數(shù)字波形。使用時(shí),一般在此引腳與Vss引腳之間接一個(gè)約9.1k的下拉電阻,與Vcc引腳之間接一個(gè)約一個(gè)10vF的電解電容,即可保證上電自動(dòng)復(fù)位。本課題使用的電路如圖3-7所示。電容C和電阻9.1k實(shí)現(xiàn)上電自動(dòng)復(fù)位。增加按鍵開(kāi)關(guān)S和電阻R2又可實(shí)現(xiàn)按鍵復(fù)位功能。2.3.4 液晶顯示擴(kuò)展技術(shù)1) 液晶顯示原理:液晶顯示的原理是利用液晶的物理特性, 通過(guò)電壓對(duì)其顯示區(qū)域進(jìn)行控制,有電就有顯示,這樣即可以顯示出圖形。液晶顯示器具有厚度薄、適用于大規(guī)模集成電路直接驅(qū)動(dòng)、易于實(shí)現(xiàn)全彩色顯示的特點(diǎn),目前已經(jīng)被廣泛應(yīng)用在便攜式電腦、數(shù)字?jǐn)z像機(jī)、PDA移動(dòng)通信工具等眾多領(lǐng)域。2) 液晶顯示器的分類(lèi):液晶顯示的分類(lèi)方法有很多種,通??砂雌滹@示方式分為段式、字符式、點(diǎn)陣式等。除了黑白顯示外,液晶顯示器還有多灰度有彩色顯示等。如果根據(jù)驅(qū)動(dòng)方式來(lái)分,可以分為靜態(tài)驅(qū)動(dòng)(Static)、單純矩陣驅(qū)動(dòng)(Simple Matrix)和主動(dòng)矩陣驅(qū)動(dòng)(Active Matrix)三種。3) 液晶顯示器各種圖形的顯示原理:線段的顯示:點(diǎn)陣圖形式液晶由MN個(gè)顯示單元組成,假設(shè)LCD顯示屏有64行,每行有128列,每8列對(duì)應(yīng)1字節(jié)的8位,即每行由16字節(jié),共168=128個(gè)點(diǎn)組成,屏上6416個(gè)顯示單元與顯示RAM區(qū)1024字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和顯示屏上相應(yīng)位置的亮暗對(duì)應(yīng)。例如屏的第一行的亮暗由RAM區(qū)的000H00FH的16字節(jié)的內(nèi)容決定,當(dāng)(000H)=FFH時(shí),則屏幕的左上角顯示一條短亮線,長(zhǎng)度為8個(gè)點(diǎn);當(dāng)(3FFH)=FFH時(shí),則屏幕的右下角顯示一條短亮線;當(dāng)(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H時(shí),則在屏幕的頂部顯示一條由8段亮線和8條暗線組成的虛線。這就是LCD顯示的基本原理。字符的顯示:用LCD顯示一個(gè)字符時(shí)比較復(fù)雜,因?yàn)橐粋€(gè)字符由68或88點(diǎn)陣組成,既要找到和顯示屏幕上某幾個(gè)位置對(duì)應(yīng)的顯示RAM區(qū)的8字節(jié),還要使每字節(jié)的不同位為“1”,其它的為“0”,為“1”的點(diǎn)亮,為“0”的不亮。這樣一來(lái)就組成某個(gè)字符。但由于內(nèi)帶字符發(fā)生器的控制器來(lái)說(shuō),顯示字符就比較簡(jiǎn)單了,可以讓控制器工作在文本方式,根據(jù)在LCD上開(kāi)始顯示的行列號(hào)及每行的列數(shù)找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),在此送上該字符對(duì)應(yīng)的代碼即可。漢字的顯示:漢字的顯示一般采用圖形的方式,事先從微機(jī)中提取要顯示的漢字的點(diǎn)陣碼(一般用字模提取軟件),每個(gè)漢字占32B,分左右兩半,各占16B,左邊為1、3、5右邊為2、4、6根據(jù)在LCD上開(kāi)始顯示的行列號(hào)及每行的列數(shù)可找出顯示RAM對(duì)應(yīng)的地址,設(shè)立光標(biāo),送上要顯示的漢字的第一字節(jié),光標(biāo)位置加1,送第二個(gè)字節(jié),換行按列對(duì)齊,送第三個(gè)字節(jié)直到32B顯示完就可以LCD上得到一個(gè)完整漢字。4) 1602字符型LCD簡(jiǎn)介:字符型液晶顯示模塊是一種專(zhuān)門(mén)用于顯示字母、數(shù)字、符號(hào)等點(diǎn)陣式LCD,目前常用16*1,16*2,20*2和40*2行等的模塊。下面以長(zhǎng)沙太陽(yáng)人電子有限公司的1602字符型液晶顯示器為例,介紹其用法。一般1602字符型液晶顯示器實(shí)物如圖:(1602LCD基本參數(shù)及管腳功能見(jiàn)附錄【1】) 圖 2-9 1602字符型液晶顯示器實(shí)物圖2.3.5 單片機(jī)與PC機(jī)間的通信單片機(jī)有一個(gè)全雙工的串行通訊口,所以單片機(jī)和電腦之間可以方便地進(jìn)行串口通訊。進(jìn)行串行通訊時(shí)要滿足一定的條件,比如電腦的串口是RS232電平的,而單片機(jī)的串口是TTL電平的,兩者之間必須有一個(gè)電平轉(zhuǎn)換電路,我們采用了專(zhuān)用芯片MAX232進(jìn)行轉(zhuǎn)換,雖然也可以用幾個(gè)三極管進(jìn)行模擬轉(zhuǎn)換,但是還是用專(zhuān)用芯片更簡(jiǎn)單可靠。我們采用了三線制連接串口,也就是說(shuō)和電腦的9針串口只連接其中的3根線:第5腳的GND、第2腳的RXD、第3腳的TXD。這是最簡(jiǎn)單的連接方法,但是對(duì)我們來(lái)說(shuō)已經(jīng)足夠使用了,MAX232的第10腳和單片機(jī)的11腳連接,第9腳和單片機(jī)的10腳連接,第15腳和單片機(jī)的20腳連接,連接圖2-10和實(shí)物圖2-11如下:圖 2-10圖 2-112.4 Proteus軟件仿真2.4.1 Proteus ISIS簡(jiǎn)介Proteus ISIS是英國(guó)Labcenter公司開(kāi)發(fā)的電路分析與實(shí)物仿真軟件。它運(yùn)行于Windows操作系統(tǒng)上,可以仿真、分析(SPICE)各種模擬器件和集成電路。該軟件的特點(diǎn)是:1) 全部滿足我們提出的單片機(jī)軟件仿真系統(tǒng)的標(biāo)準(zhǔn),并在同類(lèi)產(chǎn)品中具有明顯的優(yōu)勢(shì)。2)具有模擬電路仿真、數(shù)字電路仿真、單片機(jī)及其外圍電路組成的系統(tǒng)的仿真、RS232動(dòng)態(tài)仿真、I2 C調(diào)試器、SPI調(diào)試器、鍵盤(pán)和LCD系統(tǒng)仿真的功能;有各種虛擬儀器,如示波器、邏輯分析儀、信號(hào)發(fā)生器等。3)目前支持的單片機(jī)類(lèi)型有:ARM7系列、68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。4)支持大量的存儲(chǔ)器和外圍芯片??傊?,該軟件是一款集單片機(jī)和SPICE分析于一身的仿真軟件,功能極其強(qiáng)大 ,可仿真ARM、51、AVR、PIC。2.4.2 Proteus運(yùn)行流程Proteus ISIS的工作界面是一種標(biāo)準(zhǔn)的Windows界面,包括:標(biāo)題欄、主菜單、標(biāo)準(zhǔn)工具欄、繪圖工具欄、狀態(tài)欄、對(duì)象選擇按鈕、預(yù)覽對(duì)象方位控制按鈕、仿真進(jìn)程控制按鈕、預(yù)覽窗口、對(duì)象選擇器窗口、圖形編輯窗口。運(yùn)行Proteus程序后,進(jìn)入軟件的主界面。通過(guò)左側(cè)工具欄中的P(從庫(kù)中選擇元件命令)命令,在Pick Devices 左側(cè)窗口中選擇所需元件的關(guān)鍵字,然后放置元件并調(diào)整方向和位置以及參數(shù)設(shè)置,最后進(jìn)行連線。在元器件庫(kù)中沒(méi)有光敏電阻和激光棒,最終采用光耦來(lái)代替,并運(yùn)用開(kāi)關(guān)控制它的工作最終達(dá)到控制555的2,6兩端的電平。2.4.3 系統(tǒng)設(shè)計(jì)和調(diào)試硬件方面:1)應(yīng)注意激光鐳射管的工作參數(shù),與5V電壓串聯(lián)需接限流電阻220歐姆。2)本方案要用到光敏電阻,所以應(yīng)有良好的避光處理。3)為了實(shí)現(xiàn)單擺小球擺至平衡位置遮光時(shí)555能輸出高電平,遠(yuǎn)離平衡置時(shí)555輸出低電平,在555的5端口,2,6兩端口應(yīng)注意電阻的分壓選取,這要根據(jù)電路中光敏電阻的亮暗阻來(lái)確定,本方案最終在5端口用兩 個(gè)9.1k的電阻分壓5v直流電,在2,6相連與地之間接上了9.1k, 經(jīng)計(jì)算和測(cè)試能夠達(dá)到要求。4)LCD的背光管腳應(yīng)連接一個(gè)10k的可變電阻,這樣可以實(shí)現(xiàn)亮度調(diào)節(jié)。5)焊接過(guò)程中應(yīng)注意元器件的布置以及焊接順序。軟件方面:1) 單擺經(jīng)最低點(diǎn)的脈沖信號(hào)輸入單片機(jī)P3.0,程序中采集的是脈沖上升沿信號(hào),而不是以高低電平為準(zhǔn)。2)輸入擺動(dòng)次數(shù)值和擺球經(jīng)過(guò)最低點(diǎn)時(shí),按鍵都有抖動(dòng),所以在程序中加上按鍵防抖程序。3) 最后在LCD顯示屏上顯示擺長(zhǎng),周期和重力加速度,擺長(zhǎng)為一定值0.8m,周期和重力加速度的輸出格式為T(mén)=0.01S,g=00.01m/s2.4)計(jì)算周期和單擺時(shí),要注意擺動(dòng)經(jīng)最低點(diǎn)的次數(shù)與周期次數(shù)的轉(zhuǎn)化,設(shè)loop為擺動(dòng)次數(shù),則周期數(shù)為n=(loop-1)/2.5)LCD顯示的上下兩行最多可以分別顯示16個(gè)字符,應(yīng)注意溢出的問(wèn)題,每次寫(xiě)數(shù)據(jù)之前都要檢測(cè)忙信號(hào)。6)主程序結(jié)束時(shí),應(yīng)加一個(gè)死循環(huán)語(yǔ)句,以免程序跑飛,最終在不斷電情況下,一直顯示擺長(zhǎng),周期和重力加速度。7)為了計(jì)數(shù)中斷T0的溢出次數(shù)測(cè)總時(shí)間,需要將這個(gè)變量設(shè)為全局變量,這樣便可實(shí)現(xiàn)調(diào)用中斷中的數(shù)據(jù)。調(diào)試的順序:開(kāi)電源-調(diào)節(jié)LCD的亮度單片機(jī)復(fù)位調(diào)節(jié)擺動(dòng)次數(shù)放單擺待單擺穩(wěn)定擺動(dòng)后輸入擺動(dòng)數(shù)實(shí)驗(yàn)結(jié)果及誤差分析:按上述操作步驟測(cè)得如下實(shí)驗(yàn)數(shù)據(jù):(西安市的標(biāo)準(zhǔn)重力加速度為9.7944m/s2)擺動(dòng)次數(shù)(loop)周期次數(shù) (n)擺長(zhǎng)L單位:m周期T單位:s重力加速度g單位: m/s21990.81.789.821990.81.789.7921100.81.789.7821100.81.789.8223110.81.789.7823110.81.789.78 25 12 0.8 1.78 9.77 25 12 0.8 1.78 9.81 41 20 0.8 1.78 9.81 41 20 0.8 1.78 9.79 43 21 0.8 1.78 9.81 43 21 0.8 1.78 9.79表2-1 實(shí)驗(yàn)結(jié)果比實(shí)際值要大,在誤差允許范圍內(nèi)基本符合要求,其主要誤差來(lái)自于擺動(dòng)過(guò)程中擺球擺動(dòng)不規(guī)則,因?yàn)闃?biāo)準(zhǔn)的操作是在偏離平衡位置5度的位置放開(kāi)單擺,擺球擺動(dòng)必須是一條視線上,而實(shí)際上經(jīng)常是一些橢圓,這樣就會(huì)使周期測(cè)得不精準(zhǔn),另外擺線的長(zhǎng)度和擺球的各種規(guī)格都會(huì)帶來(lái)一定的誤差。在程序中的計(jì)算也會(huì)因小數(shù)部分的舍去而帶來(lái)誤差,比如說(shuō)在計(jì)算的過(guò)程中直接用g=31.58/(T*T),實(shí)際上它是省略了4*的小數(shù)部分。3 程序設(shè)計(jì)3.1 C與8051 KEILC51標(biāo)準(zhǔn)C編譯器為8051微控制器的軟件開(kāi)發(fā)提供了C語(yǔ)言環(huán)境,同時(shí)保留了匯編代碼高效,快速的特點(diǎn)。C51編譯器的功能不斷增強(qiáng),使你可以更加貼近CPU本身,及其它的衍生產(chǎn)品。C51已被完全集成到uVision2的集成開(kāi)發(fā)環(huán)境中,這個(gè)集成開(kāi)發(fā)環(huán)境包含:編譯器,匯編器,實(shí)時(shí)操作系統(tǒng),項(xiàng)目管理器,調(diào)試器。uVision2IDE可為它們提供單一而靈活的開(kāi)發(fā)環(huán)境。C51V7版本是目前最高效、靈活的8051開(kāi)發(fā)平臺(tái)。它可以支持所有8051的衍生產(chǎn)品,也可以支持所有兼容的仿真器,同時(shí)支持其它第三方開(kāi)發(fā)工具。因此,C51V7版本無(wú)疑是8051開(kāi)發(fā)用戶的最佳選擇。工程(project)是由源文件、開(kāi)發(fā)工具選項(xiàng)以及編程說(shuō)明三部分組成的。一個(gè)單一的uVision2工程能夠產(chǎn)生一個(gè)或多個(gè)目標(biāo)程序。產(chǎn)生目標(biāo)程序的源文件構(gòu)成“組”。開(kāi)發(fā)工具選項(xiàng)可以對(duì)應(yīng)目標(biāo),組或單個(gè)文件。uVision2包含一個(gè)器:件數(shù)據(jù)庫(kù)(devicedatabase),可以自動(dòng)設(shè)置匯編器、編譯器、連接定位器及調(diào)試器選項(xiàng),來(lái)滿足用戶充分利用特定微控制器的要求。此數(shù)據(jù)庫(kù)包含:片上存儲(chǔ)器和外圍設(shè)備的信息,擴(kuò)展數(shù)據(jù)指針(extradatapointer)或者加速器(mathaccelerator)的特性。 uVision2可以為片外存儲(chǔ)器產(chǎn)生必要的連接選項(xiàng):確定起始地址和規(guī)模。uVision2的強(qiáng)大功能有助于用戶按期完工。 1)集成源極瀏覽器利用符號(hào)數(shù)據(jù)庫(kù)使用戶可以快速瀏覽源文件。用詳細(xì)的符號(hào)信息來(lái)優(yōu)化用戶變數(shù)存儲(chǔ)器。 2)文件尋找功能:在特定文件中執(zhí)行全局文件搜索。 3)工具菜單:允許在V2集成開(kāi)發(fā)環(huán)境下啟動(dòng)用戶功能。 4)可配置SVCS接口:提供對(duì)版本控制系統(tǒng)的入口。 5)PCLINT接口:對(duì)應(yīng)用程序代碼進(jìn)行深層語(yǔ)法分析。 6)Infineon的EasyCase接口:集成塊集代碼產(chǎn)生。 7)Infineon的DAVE功能:協(xié)助用戶的CPU和外部程序。DAVE工程可被直接輸入uVision2。KEILC51編譯器在遵循ANSI標(biāo)準(zhǔn)的同時(shí),為8051微控制器系列特別設(shè)計(jì)。語(yǔ)言上的擴(kuò)展能讓用戶使用應(yīng)用中的所有資源。 一、 存儲(chǔ)器和特殊功能寄存器的存取 C51編譯器可以實(shí)現(xiàn)對(duì)8051系列所有資源的操作。SFR的存取由sfr和sbit兩個(gè)關(guān)鍵字來(lái)提供。變量可旋轉(zhuǎn)到任一個(gè)地址空間。用關(guān)鍵字at還能把變量放入固定的存儲(chǔ)器存儲(chǔ)模式(大,中,?。Q定了變量的存儲(chǔ)類(lèi)型。連接定位器支持的代碼區(qū)可達(dá)32個(gè),這就允許用戶在原有64K ROM的8015基礎(chǔ)上擴(kuò)展程序。在V2的編譯器和許多高性能仿真器中,可以支持應(yīng)用程序的調(diào)試。二、 中斷功能 C51允許用戶使用C語(yǔ)言編寫(xiě)中斷服務(wù)程序,快速進(jìn)、出代碼和寄存器區(qū)的轉(zhuǎn)換功能使C語(yǔ)言中斷功能更加高效??稍偃牍δ苁怯藐P(guān)鍵字來(lái)定義的。多任務(wù),中斷或非中斷的代碼要求必須具備可再入功能。 三、 靈活的指針 C51提供了靈活高效的指針。通用指針用3個(gè)字節(jié)來(lái)存儲(chǔ)存儲(chǔ)器類(lèi)型及目標(biāo)地址,可以在8051的任意存儲(chǔ)區(qū)內(nèi)存取任何變量。特殊指針在聲明的同時(shí)已指定了存儲(chǔ)器類(lèi)型,指向某一特定的存儲(chǔ)區(qū)域。由于地址的存儲(chǔ)只需12字節(jié),因此,指針存取非常迅速。3.2 設(shè)計(jì)思路及流程圖 本課題的設(shè)計(jì)題目是單擺自動(dòng)計(jì)時(shí)計(jì)數(shù)器的制作,對(duì)課題的要求是:1) 最多可記錄9個(gè)擺動(dòng)周期;2) 最大計(jì)時(shí)99.9秒;3) 分辨率為0.1秒根據(jù)上述要求及分析,為了最終測(cè)出重力加速度,需要測(cè)算出周期,周期的測(cè)量是根據(jù)傳統(tǒng)的方法,也就是計(jì)時(shí)給定周期次數(shù)的總時(shí)間,然后經(jīng)除法運(yùn)算便能算出。使用P1口輸出液晶顯示,P2.4,P2.5,P2.6分別控制使能信號(hào)端E,讀/寫(xiě)操作端RW,寄存器選擇端RS.P3.0口作為單擺脈沖信號(hào)輸入端。P0.1,P0.2,P0.3口用來(lái)控制擺動(dòng)次數(shù),實(shí)現(xiàn)加,減和輸入的功能。程序設(shè)計(jì)是該課題的一個(gè)重要實(shí)現(xiàn)環(huán)節(jié),它需要完成的任務(wù)包括以下幾個(gè)方面:1) 控制LCD的顯示。在單擺開(kāi)始擺動(dòng)前,需要輸入一個(gè)擺動(dòng)次數(shù),功能的實(shí)現(xiàn)在硬件可以通過(guò)加1鍵,減1鍵和輸入數(shù)值鍵來(lái)實(shí)現(xiàn),在程序設(shè)計(jì)過(guò)程中,需要注意按鍵防抖動(dòng)問(wèn)題,而且還要注意顯示擺動(dòng)次數(shù)的格式問(wèn)題(占用兩個(gè)字符,第0行的第0和第1個(gè)字符分別顯示十位和各位;最終輸出顯示中包括擺長(zhǎng)L,周期T和重力加速度g,L是給定的一個(gè)值0.8m,周期T和重力加速度g顯示的格式為0.01s和00.01m/s2,并且擺長(zhǎng)L和周期T在LCD的第0行顯示,重力加速度g在第1行顯示。2) 采集單擺經(jīng)過(guò)平衡位置的脈沖信號(hào)。根據(jù)硬件的要求(單擺小球擺動(dòng)到最低點(diǎn)時(shí)P3.0口為低電平),本方案程序編寫(xiě)采用采集脈沖上升沿信號(hào),數(shù)值輸入鍵控制擺動(dòng)次數(shù)(也就是脈沖上升的個(gè)數(shù))。采集到第1個(gè)上升延時(shí)需要開(kāi)T0中斷,并計(jì)數(shù)溢出次數(shù)(每一次溢出20ms,由溢出次數(shù)可以算出總時(shí)間),采集到最后的一個(gè)脈沖上升沿,需要關(guān)閉中斷,根據(jù)溢出次數(shù)算出周期和重力加速度顯示,在此過(guò)程中,需要將溢出次數(shù)變量設(shè)為全局變量,這樣可以實(shí)現(xiàn)該值的調(diào)用。3) 程序設(shè)計(jì)的最后需要加上一個(gè)死循環(huán),以免程序跑飛,最終是一直顯示擺長(zhǎng)L,周期T和重力加速度g。運(yùn)用本方案最終設(shè)計(jì)的技術(shù)指標(biāo)是:1) 最多可記錄48個(gè)擺動(dòng)周期;(因?yàn)轱@示次數(shù)最大為99)2) 最大計(jì)時(shí)2e32*0.02秒;(因?yàn)橛?jì)數(shù)變量為無(wú)符號(hào)長(zhǎng)整型最大為2e32)3) 分辨率為0.01秒軟件流程圖3-1如下:圖 3-13.3 源程序設(shè)計(jì)主程序設(shè)計(jì):(子程序見(jiàn)附錄【2】)/LCD的D0-D7分別接P1.0-P1.7,RS接P2.4,RW接P2.5,E接P2.6/P3.0輸入脈沖信號(hào)/P0.1加1,P0.2減1,P0.3輸入擺動(dòng)次數(shù)#include#define uchar unsigned char#define uint unsigned int#define LCM_Data P1 #define Busy 0x80 /用于檢測(cè)LCM狀態(tài)字中的Busy標(biāo)識(shí)sbit LCM_RS=P24;sbit LCM_RW=P25; /定義引腳sbit LCM_E=P26;/-子函數(shù)-void WriteDataLCM(unsigned char WDLCM); /寫(xiě)數(shù)據(jù)void WriteCommandLCM(unsigned char WCLCM,BuysC); /寫(xiě)指令unsigned char ReadStatusLCM(void); /讀狀態(tài)void LCMInit(void); /LCM初始化void culate(); /計(jì)算周期和重力加速度,并分別按照0.01,和00.01的格式輸出 void DisplayOneChar(unsigned char X, unsigned char Y, unsigned char DData); /顯示一個(gè)字符void DisplayListChar(unsigned char X, unsigned char Y, unsigned char code *DData); /顯示一串字符void delay(); /延時(shí)10msvoid Delay5Ms(void); /延時(shí)5msvoid key_delay(void); /按鍵防抖unsigned long int count = 0;double T,g;unsigned int i,j,k,temp;unsigned char loop = 19; /開(kāi)機(jī)給定的19個(gè)擺動(dòng)次數(shù)(也就是9個(gè)周期)/-TO中斷定時(shí)計(jì)數(shù)-/T0定時(shí)器中斷初始化void init_timer0 () TMOD = 0x1; /T0,工作方式1 TH0 = 0xb1; /20ms定時(shí) TL0 = 0xe0; ET0 = 1; /允許T0定時(shí)器中斷 EA = 1; /開(kāi)啟總中斷允許 TR0 = 0; /初始狀態(tài),定時(shí)器關(guān)閉/開(kāi)定時(shí)中斷void st
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程技術(shù)咨詢(xún)合同
- 出租車(chē)公司轉(zhuǎn)讓合同
- 房地產(chǎn)團(tuán)購(gòu)協(xié)議合同
- 場(chǎng)化清運(yùn)作業(yè)承包合同書(shū)
- 2025年新鄉(xiāng)a2貨運(yùn)從業(yè)資格證考試
- 建房施工安全責(zé)任協(xié)議書(shū)
- 醫(yī)藥行業(yè)客戶關(guān)系管理策略
- 食堂供貨商供貨合同協(xié)議書(shū)
- 手房改房轉(zhuǎn)讓合同
- 2025年西藏駕??荚嚳拓涍\(yùn)從業(yè)資格證考試題庫(kù)
- 行為規(guī)范教育中學(xué)校長(zhǎng)在國(guó)旗下講話:嚴(yán)格要求自己規(guī)范自己的行為
- 2024年12月廣東廣州市港務(wù)局直屬事業(yè)單位引進(jìn)緊缺專(zhuān)業(yè)人才8人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- DBJ50-T-100-2022 建筑邊坡工程施工質(zhì)量驗(yàn)收標(biāo)準(zhǔn)
- 2025年寧夏工商職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試近5年??及鎱⒖碱}庫(kù)含答案解析
- DB11-T 1004-2023 房屋建筑使用安全檢查評(píng)定技術(shù)規(guī)程
- 《藝術(shù)與傳播》課件
- 烹飪安全知識(shí)培訓(xùn)課件
- 2024年廣東職業(yè)技術(shù)學(xué)院高職單招語(yǔ)文歷年參考題庫(kù)含答案解析
- 2025年湖北宜昌枝江金潤(rùn)源集團(tuán)招聘17人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2023CSCO兒童及青少年白血病診療指南
- 第一單元 閱讀綜合實(shí)踐(同步課件)【知識(shí)精研】七年級(jí)語(yǔ)文下冊(cè)高效課堂(統(tǒng)編版)
評(píng)論
0/150
提交評(píng)論