用于自動(dòng)化生產(chǎn)線的頻率計(jì)設(shè)計(jì)
《用于自動(dòng)化生產(chǎn)線的頻率計(jì)設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《用于自動(dòng)化生產(chǎn)線的頻率計(jì)設(shè)計(jì)(34頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
本科畢業(yè)論文(設(shè)計(jì))(2015 屆)用于自動(dòng)化生產(chǎn)線的頻率計(jì)設(shè)計(jì)院 系 電子信息工程學(xué)院 專 業(yè) 電氣工程及其自動(dòng)化 姓 名指導(dǎo)教師 助教 2015 年 5 月學(xué)號(hào):11084411082015 屆本科畢業(yè)論文(設(shè)計(jì))I摘 要數(shù)字頻率計(jì)是一種基本的測(cè)量?jī)x器。它被廣泛應(yīng)用于航天、電子、測(cè)控等領(lǐng)域,還被應(yīng)用在計(jì)算機(jī)及各種數(shù)學(xué)儀表中。一般采用的是十進(jìn)制數(shù)字,顯示被測(cè)信號(hào)頻率?;竟δ苁菧y(cè)量正弦信號(hào),方波信號(hào)以及其他各種單位時(shí)間內(nèi)變壞的物理量。由于其使用十進(jìn)制數(shù)顯示,測(cè)量迅速精確,顯示直觀,所以經(jīng)常被用來(lái)使用。本文主要介紹數(shù)字頻率計(jì)的設(shè)計(jì)和調(diào)試,本作品是基于 STC89C52 單片機(jī)作為平臺(tái),基本原理是通過(guò) STC89C52 單片機(jī)進(jìn)行頻率的采集和分析工作,在通過(guò)程序使其顯示在LCD1602 的液晶顯示屏上,通過(guò)液晶顯示屏,讓使用者能夠直觀的看到當(dāng)前的輸入頻率是多少。由于 STC89C52 單片機(jī)只能處理數(shù)字信號(hào)因此系統(tǒng)需要先把信號(hào)放大成方波信號(hào),再通過(guò)施密特觸發(fā)器整形方波,又由于單片機(jī)能處理的頻率有限,所以這次我們先用74HC390 芯片對(duì)輸入的信號(hào)進(jìn)行了分頻,使其降低了 100 倍,才送去給單片機(jī)處理,如果頻率高于 200KHZ 的時(shí)候就計(jì)算分頻后的頻率,得到數(shù)據(jù)再換算成真實(shí)的頻率。關(guān)鍵詞:?jiǎn)纹瑱C(jī); LCD 顯示屏;分頻器;2015 屆本科畢業(yè)論文(設(shè)計(jì))IIAbstractDigital frequency meter is a basic measuring instruments. It is widely used in aerospace, electronics, measurement and control, etc., are also used in computer and mathematical instrument. Generally using a decimal number, the display of the measured signal frequency. The basic function is to measure sinusoidal signals, square wave signal, and the deterioration of other various physical quantity per unit time. Due to the use of decimal display, fast and accurate measurements, visual display, so often used to use.This paper describes a digital frequency meter design and debugging, this work is based on the platform STC89C52 microcontroller as the basic principle is the collection and analysis of the operating frequency through STC89C52 microcontroller through the program so that it is displayed on the LCD1602 LCD display, through the liquid crystal display, allowing users to visually see how much the current input frequency.Because STC89C52 SCM system can only handle digital signals and therefore need to put a square wave signal is amplified signal, and then through the Schmitt trigger shaping a square wave, and because of the limited frequency microcontroller can handle, so this time we will start with 74HC390 chip input The signal is a frequency, it reduces by 100 times, was sent to the microcontroller processing, frequency divider if the frequency is higher than after 200KHZ when it is calculated to obtain the data and then converted into real frequency.Keywords: SCM; LCD display; divider2015 屆本科畢業(yè)論文(設(shè)計(jì))III目 錄摘 要 IAbstractII目 錄 III1.緒論 .11.1 研究背景與發(fā)展趨勢(shì) 11.2 研究目的和意義 .11.3 本章小結(jié) .22. 總體方案論證與設(shè)計(jì) 32.1 主控模塊的選型和論證 32.2 顯示模塊的選型和論證 32.3 放大電路的選型和論證 32.4 系統(tǒng)整體設(shè)計(jì)概述 43.系統(tǒng)硬件電路設(shè)計(jì) .53.1 主控模塊 .53.1.1 STC89C52 單片機(jī)主要特性 .53.1.2 STC89C52 單片機(jī)的中斷系統(tǒng) .83.1.3 單片機(jī)最小系統(tǒng)設(shè)計(jì) 83.2 LCD 液晶顯示器簡(jiǎn)介 83.2.1 液晶原理介紹 83.2.2 液晶模塊簡(jiǎn)介 .93.2.3 液晶顯示部分與 STC89C52 的接口 .102015 屆本科畢業(yè)論文(設(shè)計(jì))IV3.3 三極管放大電路設(shè)計(jì) .103.4 整形模塊設(shè)計(jì) .113.4.1 施密特觸發(fā)器芯片介紹 .113.4.2 74HC14 電路設(shè)計(jì) .123.5 分頻模塊設(shè)計(jì) 123.5.1 74HC390 芯片介紹 .123.5.2 74HC390 分頻電路設(shè)計(jì) .134.系統(tǒng)軟件設(shè)計(jì) .144.1 主程序 144.2 傳感器檢測(cè)子程序 .154.3 顯示數(shù)據(jù)子程序 .164.4 本章小結(jié) .165.系統(tǒng)調(diào)試 .185.1 硬件調(diào)試 .185.2 軟件調(diào)試 .196.結(jié)論 20附錄(A): 系統(tǒng)原理圖 22附錄(B):系統(tǒng)仿真圖 23附錄(C):系統(tǒng) PCB 圖 24附錄(D):系統(tǒng)源程序 252015 屆本科畢業(yè)論文(設(shè)計(jì))1緒論1.1 研究背景與發(fā)展趨勢(shì)由于當(dāng)今社會(huì)的需要,對(duì)信息傳輸和處理的要求不斷提高,對(duì)頻率的測(cè)量的精度也需要更高更準(zhǔn)確的時(shí)頻基準(zhǔn)和更精密的測(cè)量技術(shù)。而頻率測(cè)量所能達(dá)到的精度,主要取決于作為標(biāo)準(zhǔn)頻率源的精度以及所使用的測(cè)量設(shè)備和測(cè)量方法。目前,測(cè)量頻頻的方法有直接測(cè)頻法、內(nèi)插法、游標(biāo)法、頻差倍增法等等。直接測(cè)頻的方法較簡(jiǎn)單,但精度不高。頻差倍增多法和周期法是一種頻差倍增法和差拍法相結(jié)合的測(cè)量方法,這種方法是將被測(cè)信號(hào)和參考信號(hào)經(jīng)頻差倍增使被測(cè)信號(hào)的相位起伏擴(kuò)大,再通過(guò)混頻器獲得差拍信號(hào),用電子計(jì)數(shù)器在低頻下進(jìn)行多周期測(cè)量,能在較少的倍增次數(shù)和同樣的取樣時(shí)間情況下,得到比測(cè)頻法更高的系統(tǒng)分辨率和測(cè)量精度,但是仍然存在著時(shí)標(biāo)不穩(wěn)而引入的誤差和一定的觸發(fā)誤差。在電子系統(tǒng)廣泛的應(yīng)用領(lǐng)域中,到處看見(jiàn)處理離散信息的數(shù)字電路。供消費(fèi)用的冰箱和電視、航空通訊系統(tǒng)、交通控制雷達(dá)系統(tǒng)、醫(yī)院急救系統(tǒng)等在設(shè)計(jì)過(guò)程中都用到數(shù)字技術(shù)。 數(shù)字頻率計(jì)是現(xiàn)代通信測(cè)量設(shè)備系統(tǒng)中必不可少的測(cè)量?jī)x器,不但要求電路產(chǎn)生頻率的準(zhǔn)確度和穩(wěn)定度都高的信號(hào),也要能方便的改變頻率。 數(shù)字頻率計(jì)的實(shí)現(xiàn)方法主要有:直接式、鎖相式、直接數(shù)字式和混合式(1)直接式優(yōu)點(diǎn):速度快、相位噪聲低,但結(jié)構(gòu)復(fù)雜、雜散多,一般只應(yīng)用在地面雷達(dá)中。 (2)鎖相式優(yōu)點(diǎn):相位同步的自動(dòng)控制,制作頻率高,功耗低,容易實(shí)現(xiàn)系列化、小型化、模塊化和工程化。 (3)直接數(shù)字式優(yōu)點(diǎn):電路穩(wěn)定、精度高、容易實(shí)現(xiàn)系列化、小型化、模塊化和工程化。1.2 研究目的和意義在電子測(cè)量領(lǐng)域中,頻率測(cè)量的精確度是最高的。因此,在生產(chǎn)過(guò)程中許多物理量,例如溫度、壓力、流量、液位、PH 值、振動(dòng)、位移、速度、加速度,乃至各種氣體的百分比成分等均用傳感器轉(zhuǎn)換成信號(hào)頻率,然后用數(shù)字頻率計(jì)來(lái)測(cè)量,以提高精確度。國(guó)際上數(shù)字頻率計(jì)的分類很多。按功能分類,因計(jì)數(shù)式頻率計(jì)的測(cè)量功能很多,用途很廣。所以根據(jù)儀器具有的功能,電子計(jì)數(shù)器有通用和專用之分。一、通用型計(jì)數(shù)器:通用型計(jì)數(shù)器是一種具有多種測(cè)量功能、多種用途的萬(wàn)能計(jì)數(shù)器。它可測(cè)量頻率、周期、多周期平均值、時(shí)間間隔、累加計(jì)數(shù)、計(jì)時(shí)等;若配上相應(yīng)插件,就可測(cè)相位、電壓、電流、功率、電阻等電量;配上適當(dāng)?shù)膫鞲衅?,還可進(jìn)行長(zhǎng)度、重量、壓力、溫度、速度等非電量的測(cè)量。二、專用計(jì)數(shù)器:專用計(jì)數(shù)器指專門(mén)用來(lái)測(cè)量某種單一功能的計(jì)數(shù)器。如頻率計(jì)數(shù)器,只能專門(mén)用來(lái)測(cè)量高頻和微波頻率;時(shí)間計(jì)數(shù)器,是以測(cè)量時(shí)間為基礎(chǔ)的計(jì)數(shù)器,其測(cè)時(shí)分辨力2015 屆本科畢業(yè)論文(設(shè)計(jì))2和準(zhǔn)確度很高,可達(dá) ns 數(shù)量級(jí);特種計(jì)數(shù)器,它具有特種功能,如可逆計(jì)數(shù)器、閾值計(jì)數(shù)器、差值計(jì)數(shù)器、倒數(shù)計(jì)數(shù)器等,用于工業(yè)和自控技術(shù)等方面。數(shù)字頻率計(jì)按頻段分類:①低速計(jì)數(shù)器:最高計(jì)數(shù)頻率<10MHz;②中速計(jì)數(shù)器:最高計(jì)數(shù)頻率 10—100MHz;③高速計(jì)數(shù)器:最高計(jì)數(shù)頻率>100MHz ;④微波頻率計(jì)數(shù)器:測(cè)頻范圍 1—80GHz 或更高。由于大規(guī)模和超大規(guī)模數(shù)字集成電路技術(shù)、數(shù)據(jù)通信技術(shù)與單片機(jī)技術(shù)的結(jié)合,數(shù)字頻率計(jì)發(fā)展進(jìn)入了智能化和微型化的新階段。其功能進(jìn)一步擴(kuò)大,除了測(cè)量頻率、頻率比、周期、時(shí)間、相位、相位差等基本功能外,還具有自撿、自校、自診斷、數(shù)理統(tǒng)計(jì)、計(jì)算方均根值、數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)通信等功能。可見(jiàn),頻率計(jì)是很有工業(yè)價(jià)值的。本作品即為一個(gè)基于單片機(jī)的數(shù)字頻率計(jì),它通74HC390 芯片進(jìn)行分頻,克服了單片機(jī)難以處理高頻信號(hào)的困難,并使用LCD1602 液晶顯示進(jìn)行顯示。1.3 本章小結(jié)本系統(tǒng)設(shè)計(jì)制作一個(gè)基于單片機(jī)的頻率計(jì)。能實(shí)現(xiàn)以下幾種功能:(1)能夠?qū)?1HZ 對(duì) 10MHZ 正弦波、三角波、方波信號(hào)等周期信號(hào)的頻率進(jìn)行測(cè)量(2)系統(tǒng)能夠把測(cè)量信號(hào)的頻率和周期顯示在液晶屏幕上。2015 屆本科畢業(yè)論文(設(shè)計(jì))32. 總體方案論證與設(shè)計(jì)根據(jù)所要實(shí)現(xiàn)的功能劃分,系統(tǒng)一共需要以下幾個(gè)模塊:主控模塊、顯示模塊、時(shí)鐘模塊、溫度檢測(cè)模塊,以下就針對(duì)這幾個(gè)模塊的選型和論證進(jìn)行討論。2.1 主控模塊的選型和論證方案一:采用 MSP430 系列單片機(jī),該單片機(jī)是 TI 公司 1996 年開(kāi)始推向市場(chǎng)的一種16 位超低功耗的混合信號(hào)處理器。其內(nèi)部集成了很多模擬電路、數(shù)字電路和微處理器,提供強(qiáng)大的功能。不過(guò)該芯片昂貴不適合一般的設(shè)計(jì)開(kāi)發(fā)。方案二采用 51 系列的單片機(jī),該單片機(jī)是一個(gè)高可靠性,超低價(jià),無(wú)法解密,高性能的 8 位單片機(jī),32 個(gè) IO 口,且 STC 系列的單片機(jī)可以在線編程、調(diào)試,方便地實(shí)現(xiàn)程序的下載與整機(jī)的調(diào)試。因此選用方案二中的 51 系列單片機(jī)作為主控芯片。2.2 顯示模塊的選型和論證方案一:采用點(diǎn)陣式數(shù)碼管顯示,點(diǎn)陣式數(shù)碼管是由八行八列的發(fā)光二極管組成,對(duì)于顯示文字比較合適,如采用在顯示數(shù)字顯得太浪費(fèi),且價(jià)格也相對(duì)較高,所以不用此種作為顯示。方案二:采用 LED 數(shù)碼管動(dòng)態(tài)掃描, LED 數(shù)碼管價(jià)格雖適中,對(duì)于顯示數(shù)字也最合適,而且采用動(dòng)態(tài)掃描法與單片機(jī)連接時(shí),占用單片機(jī)口線少。但是由于數(shù)碼管動(dòng)態(tài)掃描需要借助 74LS164 移位寄存器進(jìn)行移位,該芯片在電路調(diào)試時(shí)往往有很多障礙,所以不采用 LED 數(shù)碼管作為顯示。方案三:采用 LCD 液晶顯示屏,液晶顯示屏的顯示功能強(qiáng)大,可顯示大量文字,圖形,顯示多樣,清晰可見(jiàn),對(duì)于本設(shè)計(jì)而言一個(gè) LCD1602 的液晶屏即可,價(jià)格也還能接受,需要的借口線較多,但會(huì)給調(diào)試帶來(lái)諸多方便。所以本設(shè)計(jì)中方案三中的 LCD1602 液顯示屏作為顯示模塊。2.3 放大電路的選型和論證方案一:采用集成運(yùn)放作為放大電路,該電路只需要在外部配置少量電阻電容則能完成放大功能,十分方便設(shè)計(jì),但是本設(shè)計(jì)需要放大 1HZ 到 10MHZ 的信號(hào),通頻帶比較寬,因此對(duì)集成運(yùn)放的要求較高,一般能處理寬帶信號(hào)的集成運(yùn)放成本比較高。方案二:采用三極管或者場(chǎng)效應(yīng)管作為放大電路,三極管放大電路所需要原件較為簡(jiǎn)單容易購(gòu)置,而且電路較為成熟,三極管的價(jià)格也十分低廉,而且三極管電路性能優(yōu)越,是作為一個(gè)低成本的放大電路的不二之選。所以本設(shè)計(jì)中選用三極管為放大電路中使用。2015 屆本科畢業(yè)論文(設(shè)計(jì))42.4 系統(tǒng)整體設(shè)計(jì)概述本系統(tǒng)以單片機(jī)為控制核心,對(duì)系統(tǒng)進(jìn)行初始化,主要完成液晶顯示、頻率測(cè)量、放大整形濾波等功能的控制,起到總控和協(xié)調(diào)各模塊之間工作的作用。放大電路施密特整形電路1 0 0 分頻電路主控模塊單片機(jī)液晶顯示模塊L C D 1 6 0 2圖 2-1 系統(tǒng)結(jié)構(gòu)框圖本系統(tǒng)結(jié)構(gòu)如圖 2-1 所示,本設(shè)計(jì)可分為以下模塊:三極管放大電路、整形電路、分頻電路、液晶模塊。下面對(duì)各個(gè)模塊的設(shè)計(jì)方案逐一進(jìn)行論證分析。2015 屆本科畢業(yè)論文(設(shè)計(jì))53.系統(tǒng)硬件電路設(shè)計(jì)3.1 主控模塊主控模塊模塊在整個(gè)系統(tǒng)中起著統(tǒng)籌的作用,需要檢測(cè)鍵盤(pán),溫度傳感器等各種參數(shù),同時(shí)驅(qū)動(dòng)液晶顯示相關(guān)參數(shù),在這里我們選用了 51 系列單片機(jī)中的STC89C52 單片機(jī)作為系統(tǒng)的主控芯片。STC89C52 單片機(jī)的基本組成框圖見(jiàn)圖 3-1。時(shí)鐘電路R O M / E P R O M / F l a s h 4 K BR A M 1 2 8 BS F R 2 1 個(gè)定時(shí)個(gè) / 計(jì)數(shù)器 2C P U總線控制中斷系統(tǒng)5 個(gè)中斷源2 個(gè)優(yōu)先級(jí)串行口全雙工 1 個(gè)4 個(gè)并行口X T A L 2 X T A L 1R S TE AA L EP S E NP 0 P 1 P 2P 3V s sV c c圖 3-1STC89C52 單片機(jī)結(jié)構(gòu)圖 3.1.1 STC89C52 單片機(jī)主要特性1. 一個(gè) 8 位的微處理器(CPU)。2. 片內(nèi)數(shù)據(jù)存儲(chǔ)器 RAM(128B),用以存放可以讀/寫(xiě)的數(shù)據(jù),如運(yùn)算的中間結(jié)果、最終結(jié)果以及欲顯示的數(shù)據(jù)等,SST89 系列單片機(jī)最多提供 1K 的RAM。3. 片內(nèi)程序存儲(chǔ)器 ROM(4KB),用以存放程序、一些原始數(shù)據(jù)和表格。但也有一些單片機(jī)內(nèi)部不帶 ROM/EPROM,如 8031,8032,80C31 等。目前單片機(jī)的發(fā)展趨勢(shì)是將 RAM 和 ROM 都集成在單片機(jī)里面,這樣既方便了用戶進(jìn)行設(shè)計(jì)又提高了系統(tǒng)的抗干擾性。SST 公司推出的 89 系列單片機(jī)分別集成了16K、32K、64K Flash 存儲(chǔ)器,可供用戶根據(jù)需要選用。4. 四個(gè) 8 位并行 I/O 接口 P0~P3,每個(gè)口既可以用作輸入,也可以用作輸出。5. 兩個(gè)定時(shí)器/計(jì)數(shù)器,每個(gè)定時(shí)器/計(jì)數(shù)器都可以設(shè)置成計(jì)數(shù)方式,用以對(duì)外部事件進(jìn)行計(jì)數(shù),也可以設(shè)置成定時(shí)方式,并可以根據(jù)計(jì)數(shù)或定時(shí)的結(jié)果實(shí)現(xiàn)計(jì)算機(jī)控制。為方便設(shè)計(jì)串行通信,目前的 52 系列單片機(jī)都會(huì)提供 3 個(gè)16 位定時(shí)器/計(jì)數(shù)器。6. 五個(gè)中斷源的中斷控制系統(tǒng)?,F(xiàn)在新推出的單片機(jī)都不只 5 個(gè)中斷源,例如 SST89E58RD 就有 9 個(gè)中斷源。7. 一個(gè)全雙工 UART(通用異步接收發(fā)送器)的串行 I/O 口,用于實(shí)現(xiàn)單片機(jī)之間或單機(jī)與微機(jī)之間的串行通信。8. 片內(nèi)振蕩器和時(shí)鐘產(chǎn)生電路,但石英晶體和微調(diào)電容需要外接。最高允許振蕩頻率為 12MHz。SST89V58RD 最高允許振蕩頻率達(dá) 40MHz,因而大大的2015 屆本科畢業(yè)論文(設(shè)計(jì))6提高了指令的執(zhí)行速度。 P1.02345/MOSI7CK8RET9XALVNU供圖 3-2STC89C52 單片機(jī)管腳圖3.1.2STC89C52 單片機(jī)的中斷系統(tǒng)STC89C52 系列單片機(jī)的中斷系統(tǒng)有 5 個(gè)中斷源,2 個(gè)優(yōu)先級(jí),可以實(shí)現(xiàn)二級(jí)中斷服務(wù)嵌套。由片內(nèi)特殊功能寄存器中的中斷允許寄存器 IE 控制 CPU 是否響應(yīng)中斷請(qǐng)求;由中斷優(yōu)先級(jí)寄存器 IP 安排各中斷源的優(yōu)先級(jí);同一優(yōu)先級(jí)內(nèi)各中斷同時(shí)提出中斷請(qǐng)求時(shí),由內(nèi)部的查詢邏輯確定其響應(yīng)次序。在單片機(jī)應(yīng)用系統(tǒng)中,常常會(huì)有定時(shí)控制需求,如定時(shí)輸出、定時(shí)檢測(cè)、定時(shí)掃描等;也經(jīng)常要對(duì)外部事件進(jìn)行計(jì)數(shù)。STC89C52 單片機(jī)內(nèi)集成有兩個(gè)可編程的定時(shí)/計(jì)數(shù)器:T0 和 T1,它們既可以工作于定時(shí)模式,也可以工作于外部事件計(jì)數(shù)模式,此外,T1 還可以作為串行口的波特率發(fā)生器。3.1.3 單片機(jī)最小系統(tǒng)設(shè)計(jì) +YHZpFuW-B2015 屆本科畢業(yè)論文(設(shè)計(jì))7圖 3-3 單片機(jī)最小系統(tǒng)電路圖圖 3-3 為單片機(jī)最小系統(tǒng)電路圖,單片機(jī)最小系統(tǒng)有單片機(jī)、時(shí)鐘電路、復(fù)位電路組成,時(shí)鐘電路選用了 12MHZ 的晶振提供時(shí)鐘,作用為給單片機(jī)提供一個(gè)時(shí)間基準(zhǔn),其中執(zhí)行一條基本指令需要的時(shí)間為一個(gè)機(jī)器周期,單片機(jī)的復(fù)位電路,按下復(fù)位按鍵之后可以使單片機(jī)進(jìn)入剛上電的起始狀態(tài)。圖中 10K 排阻為 P0 口的上拉電阻,由于 P0 口跟其他 IO 結(jié)構(gòu)不一樣為漏極開(kāi)路的結(jié)構(gòu),因此要加上拉電阻才能正常使用。3.2 LCD 液晶顯示器簡(jiǎn)介由于本設(shè)計(jì)中要求顯示界面顯示一些參數(shù),因此這里選用了 LCD1602 作為界面顯示,可以把一些相關(guān)的參數(shù)進(jìn)行顯示。 3.2.1 液晶原理介紹液晶顯示器(LCD) 英文全稱為 Liquid Crystal Display,它一種是采用了液晶控制透光度技術(shù)來(lái)實(shí)現(xiàn)色彩的顯示器。和 CRT 顯示器相比,LCD 的優(yōu)點(diǎn)是很明顯的。由于通過(guò)控制是否透光來(lái)控制亮和暗,當(dāng)色彩不變時(shí),液晶也保持不變,這樣就無(wú)須考慮刷新率的問(wèn)題。顯示接口用來(lái)顯示系統(tǒng)的狀態(tài),命令或采集的電壓數(shù)據(jù)。本系統(tǒng)顯示部分用的是 LCD 液晶模塊,采用一個(gè) 16×2 的字符型液晶顯示模塊。 點(diǎn)陣圖形式液晶由 M 行×N 列個(gè)顯示單元組成,假設(shè) LCD 顯示屏有 64 行,每行有 128 列,每 8 列對(duì)應(yīng) 1 個(gè)字節(jié)的 8 個(gè)位,即每行由 16 字節(jié),共 16×8=128 個(gè)點(diǎn)組成,屏上 64×16 個(gè)顯示單元和顯示 RAM 區(qū) 1024 個(gè)字節(jié)相對(duì)應(yīng),每一字節(jié)的內(nèi)容和屏上相應(yīng)位置的亮暗對(duì)應(yīng)。一個(gè)字符由 6×8 或 8×8 點(diǎn)陣組成,即要找到和屏上某幾個(gè)位置對(duì)應(yīng)的顯示 RAM 區(qū)的 8 個(gè)字節(jié),并且要使每個(gè)字節(jié)的不同的位為‘1’ ,其它的為‘0’ ,為‘1’ 的點(diǎn)亮,為‘0’ 的點(diǎn)暗,這樣一來(lái)就組成某個(gè)字符。但對(duì)于內(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)的代碼即可。3.2.2 液晶模塊簡(jiǎn)介L(zhǎng)CD1602 液晶模塊采用 HD44780 控制器,hd44780 具有簡(jiǎn)單而功能較強(qiáng)的指令集,可以實(shí)現(xiàn)字符移動(dòng),閃爍等功能,LM016L 與單片機(jī) MCU 通訊可采用8 位或 4 位并行傳輸兩種方式,hd44780 控制器由兩個(gè) 8 位寄存器,指令寄存器(IR)和數(shù)據(jù)寄存器(DR)忙標(biāo)志(BF ),顯示數(shù) RAM(DDRAM),字符發(fā)生器 ROMA( CGOROM)字符發(fā)生器 RAM(CGRAM),地址計(jì)數(shù)器 RAM(AC)。IR 用于寄存指令碼,只能寫(xiě)入不能讀出,DR 用于寄存數(shù)據(jù),數(shù)據(jù)由內(nèi)部操作自動(dòng)寫(xiě)入 DDRAM 和 CGRAM,或者暫存從 DDRAM 和 CGRAM 讀出的數(shù)據(jù),BF為 1 時(shí),液晶模塊處于內(nèi)部模式,不響應(yīng)外部操作指令和接受數(shù)據(jù),DDTAM 用來(lái)存儲(chǔ)顯示的字符,能存儲(chǔ) 80 個(gè)字符碼,CGROM 由 8 位字符碼生成 5*7 點(diǎn)陣字符 160 中和 5*10 點(diǎn)陣字符 32 種.8 位字符編碼和字符的對(duì)應(yīng)關(guān)系, CGRAM是為用戶編寫(xiě)特殊字符留用的,它的容量?jī)H 64 字節(jié),可以自定義 8 個(gè) 5*7 點(diǎn)陣字符或者 4 個(gè) 5*10 點(diǎn)陣字符,AC 可以存儲(chǔ) DDRAM 和 CGRAM 的地址,如果地址碼隨指令寫(xiě)入 IR,則 IR 自動(dòng)把地址碼裝入 AC,同時(shí)選擇 DDRAM 或CGRAM,LCD1602 液晶模塊的引腳圖如圖 3-4 所示。2015 屆本科畢業(yè)論文(設(shè)計(jì))8圖 3-4LCD1602 引腳圖液晶寄存器選擇控制如表 3-1。表 3-1 寄存器選擇控制RS R/W 操作說(shuō)明0 0 寫(xiě)入指令寄存器(清除屏等)0 1 讀 busy flag(DB7),以及讀取位址計(jì)數(shù)器(DB0~DB6)值1 0 寫(xiě)入數(shù)據(jù)寄存器(顯示各字型等)1 1 從數(shù)據(jù)寄存器讀取數(shù)據(jù)3.2.3 液晶顯示部分與 STC89C52 的接口如圖 3-5 所示。用 STC89C52 的 P0 口作為數(shù)據(jù)線,用 P1.2、P1.1、P1.0 分別作為 LCD 的 EN、R/W、RS 。其中 EN 是下降沿觸發(fā)的片選信號(hào), R/W 是讀寫(xiě)信號(hào),RS 是寄存器選擇信號(hào)本模塊設(shè)計(jì)要點(diǎn)如下:顯示模塊初始化:首先清屏,再設(shè)置接口數(shù)據(jù)位為 8 位,顯示行數(shù)為 1 行,字型為 5×7 點(diǎn)陣,然后設(shè)置為整體顯示,取消光標(biāo)和字體閃爍,最后設(shè)置為正向增量方式且不移位。向 LCD 的顯示緩沖區(qū)中送字符,程序中采用 2 個(gè)字符數(shù)組,一個(gè)顯示字符,另一個(gè)顯示電壓數(shù)據(jù),要顯示的字符或數(shù)據(jù)被送到相應(yīng)的數(shù)組中,完成后再統(tǒng)一顯示.首先取一個(gè)要顯示的字符或數(shù)據(jù)送到 LCD 的顯示緩沖區(qū),程序延時(shí) 2.5ms,判斷是否夠顯示的個(gè)數(shù),不夠則地址加一取下一個(gè)要顯示的字符或數(shù)據(jù)。2015 屆本科畢業(yè)論文(設(shè)計(jì))9P1.02345/MOSI67CK8RETXALVNU供+WDBlcd圖 3-5LCD1602 與 STC89C52 的接口3.3 三極管放大電路設(shè)計(jì) uF圖 3-6 三極管放大電路由于單片機(jī)只能讀取數(shù)字信號(hào),當(dāng)輸入的信號(hào)比較小的時(shí)候單片機(jī)不能直接讀取,因此這里使用了一級(jí)三極管放大電路對(duì)輸入的信號(hào)進(jìn)行放大,其中電路中的 R4 和 R5 給三極管的基極提供和合適偏置?;鶚O電壓可以由以下公式求得。由于三極管的基極和發(fā)射極之間的壓降為 0.65V,因此發(fā)射機(jī)的電壓可以由以下公式求得:由于 IC≈IE,IE=Ve/R6≈0.88ma,因此 Vc=VCC-Ie*R3=2.64V。因此三極管放大電路的集電極輸出端的直流靜態(tài)工作點(diǎn)為 2.64V。因?yàn)楸驹O(shè)計(jì)只處理信號(hào),因此三極管放大電路的輸入端采用的大電容進(jìn)行交流耦合進(jìn)而隔絕交流成分,為了使整個(gè)頻率計(jì)能測(cè)量更小幅值的周期信號(hào),這個(gè)電路用旁路電容對(duì)發(fā)射極電阻進(jìn)行旁路從而提高其交流放大倍數(shù),放大倍數(shù) A 可以由以下公式求得。A≈R3/(R6//R C4//RC5)其中 RC4為 C4 交流等效阻抗,R C5為 C4 交流等效阻抗。但是放大倍數(shù)最終會(huì)受限于三極管的 β(三極管的電流放大系數(shù))。因此最終放大倍數(shù)會(huì)限制在數(shù)百倍,由于這里只需要把輸入的周期信號(hào)放大到足夠大就可以通過(guò)整形電路整形2015 屆本科畢業(yè)論文(設(shè)計(jì))10成方波,因此這里放大倍數(shù)不需要很精確,放大后的波形出現(xiàn)截止失真也不會(huì)對(duì)測(cè)量結(jié)果造成。3.4 整形模塊設(shè)計(jì)3.4.1 施密特觸發(fā)器芯片介紹施密特觸發(fā)器也有兩個(gè)穩(wěn)定狀態(tài),但與一般觸發(fā)器不同的是,施密特觸發(fā)器采用電位觸發(fā)方式,其狀態(tài)由輸入信號(hào)電位維持;對(duì)于負(fù)向遞減和正向遞增兩種不同變化方向的輸入信號(hào),施密特觸發(fā)器有不同的閾值電壓。門(mén)電路有一個(gè)閾值電壓,當(dāng)輸入電壓從低電平上升到閾值電壓或從高電平下降到閾值電壓時(shí)電路的狀態(tài)將發(fā)生變化。施密特觸發(fā)器是一種特殊的門(mén)電路,與普通的門(mén)電路不同,施密特觸發(fā)器有兩個(gè)閾值電壓,分別稱為正向閾值電壓和負(fù)向閾值電壓。在輸入信號(hào)從低電平上升到高電平的過(guò)程中使電路狀態(tài)發(fā)生變化的輸入電壓稱為正向閾值電壓,在輸入信號(hào)從高電平下降到低電平的過(guò)程中使電路狀態(tài)發(fā)生變化的輸入電壓稱為負(fù)向閾值電壓。正向閾值電壓與負(fù)向閾值電壓之差稱為回差電壓。原理示意圖如圖 3-7 所示。圖 3-7 施密特觸發(fā)器原理示意圖74HC14 是一款高速 CMOS 器件,74HC14 引腳兼容低功耗肖特基 TTL(LSTTL)系列。74HC14 遵循 JEDEC 標(biāo)準(zhǔn) no.7A。74HC14 實(shí)現(xiàn)了 6 路施密特觸發(fā)反相器,可將緩慢變化的輸入信號(hào)轉(zhuǎn)換成清晰、無(wú)抖動(dòng)的輸出信號(hào)。其芯片引腳圖如圖3-8 所示,芯片真值表如圖 3-9 所示。圖 3-8 74HC14 芯片引腳圖Input 輸入 output 輸出A YL HH L2015 屆本科畢業(yè)論文(設(shè)計(jì))11圖 3-9 74HC14 真值表3.4.2 74HC14 電路設(shè)計(jì)由于三極管放大電路輸出的信號(hào)不是標(biāo)準(zhǔn)的方波信號(hào),存在著上升沿不夠陡峭,波形類似于正弦波等問(wèn)題,為了使單片機(jī)對(duì)信號(hào)更好的采集,這里使用了施密特觸發(fā)器 74HC14 對(duì)三極管放大電路輸出的信號(hào)進(jìn)行整形。電路圖如圖 3-10 所示。 1AY23456GND7890VCUH+圖 3-10 施密特觸發(fā)器電路原理圖其中輸入信號(hào)從芯片的 1 號(hào)腳輸入,74HC14 本身是一個(gè)芯片內(nèi)部帶有 6 個(gè)施密特觸發(fā)器,我這里為了充分利用芯片使用了其中三個(gè),實(shí)際上可以只使用一個(gè)。整形后的信號(hào)從芯片的 6 號(hào)腳輸出。3.5 分頻模塊設(shè)計(jì)3.5.1 74HC390 芯片介紹分頻電路一般采用十進(jìn)制計(jì)數(shù)器如 74HC290、74HC390 等來(lái)實(shí)現(xiàn)時(shí)間計(jì)數(shù)單元的計(jì)數(shù)功能。本次設(shè)計(jì)中選擇 74HC390。由其內(nèi)部邏輯框圖 (如圖 3)可知,其為雙 2-5-10 異步計(jì)數(shù)器,并每一計(jì)數(shù)器均有一個(gè)異步清零端(高電平有效)。由于我們要設(shè)計(jì)的是 100 分頻電路,因此 74HC390 內(nèi)部?jī)蓚€(gè)計(jì)數(shù)器都用上,分別都設(shè)置成 10 計(jì)數(shù)器。圖 3-11 74HC390 內(nèi)部邏輯框圖3.5.2 74HC390 分頻電路設(shè)計(jì)2015 屆本科畢業(yè)論文(設(shè)計(jì))12由于單片機(jī)運(yùn)行速度有限,單片機(jī)運(yùn)行一條基礎(chǔ)指令需要 1 個(gè)機(jī)器周期即 12個(gè)是時(shí)鐘周期,換算成時(shí)間為 1us。因此當(dāng)頻率過(guò)高的時(shí)候單片機(jī)就不能很精確的換算出頻率。為了解決這個(gè)問(wèn)題,這設(shè)計(jì)加入了一個(gè) 100 分頻的計(jì)數(shù)器。當(dāng)頻率高于 200KHZ 的時(shí)候單片機(jī)計(jì)算分頻后的信號(hào),當(dāng)頻率低于 200KHZ 的時(shí)候計(jì)算分頻前的信號(hào)。這樣高低搭配可以擴(kuò)大單片機(jī)的測(cè)量頻率。最終換算出其真實(shí)對(duì)應(yīng)的頻率并在液晶上顯示。其中電路圖如圖 3-12 所示。CP0MR2Q34567GND89VUH+圖 3-12 74HC390 分頻電路原理圖2015 屆本科畢業(yè)論文(設(shè)計(jì))134.系統(tǒng)軟件設(shè)計(jì)4.1 主程序單片機(jī)上電后會(huì)先進(jìn)行一個(gè)初始化把設(shè)置的變量的值清 0,然后開(kāi)啟定時(shí)器首先對(duì) 100 分頻后的輸入信號(hào)進(jìn)行 1S 內(nèi)計(jì)數(shù),當(dāng)測(cè)量到頻率大于 200KHZ 的時(shí)候,單片機(jī)會(huì)顯示出當(dāng)前測(cè)量的頻率和周期,然后進(jìn)行下一次計(jì)數(shù),當(dāng)測(cè)量到的頻率少于 200KHZ 的時(shí)候,單片機(jī)會(huì)重新采集分頻前的數(shù)據(jù),把測(cè)量到的數(shù)據(jù)顯示出來(lái),然后再進(jìn)入到下一次的計(jì)數(shù)。2015 屆本科畢業(yè)論文(設(shè)計(jì))14系統(tǒng)初始化開(kāi)始液晶初始化開(kāi)啟定時(shí)器 ,定時(shí) 1 S對(duì)分頻前輸入信號(hào)的脈沖進(jìn)行計(jì)數(shù)1 S 時(shí)間是否到了 ?測(cè)量頻率是否大于 2 0 0 K H Z ?對(duì)分頻后輸入信號(hào)的脈沖進(jìn)行計(jì)數(shù)1 S 時(shí)間是否到了 ?利用液晶顯示頻率和周期利用液晶顯示頻率和周期否是否是是否4-1 系統(tǒng)主流程圖4.2 傳感器檢測(cè)子程序首先先調(diào)用液晶自定義的字庫(kù),設(shè)置好 DDRAM 地址后在第一行顯示,根據(jù)程序中的數(shù)據(jù)設(shè)置顯示數(shù)據(jù)的首地址并設(shè)置循環(huán)量,在循環(huán)過(guò)程中不斷的取字符代碼直到終止,第二行的顯示過(guò)程同一行的顯示過(guò)程一樣,兩行顯示完畢后便結(jié)束子程序。2015 屆本科畢業(yè)論文(設(shè)計(jì))15調(diào)用自定義字庫(kù)設(shè)置 D D R A M 地址 , 在第一行顯示設(shè)置顯示數(shù)據(jù)首地址循環(huán)量設(shè)置取字符代碼循環(huán)完 ?設(shè)置 D D R A M 地址 , 在第一行顯示設(shè)置顯示數(shù)據(jù)首地址循環(huán)量設(shè)置取字符代碼循環(huán)完 ?結(jié)束圖 4-2 LCD1602 初始化子函數(shù)流程圖4.3 顯示數(shù)據(jù)子程序顯示數(shù)據(jù)子程序的主要功能就是把超聲波模塊測(cè)量后的結(jié)果經(jīng)單片機(jī)處理完畢的距離顯示在 LCD 液晶顯示屏上。顯示數(shù)據(jù)子程序流程圖如圖 4.2 所示。2015 屆本科畢業(yè)論文(設(shè)計(jì))16開(kāi)始數(shù)據(jù)傳送顯示數(shù)據(jù)結(jié)束YN圖 4.2 顯示數(shù)據(jù)子流程圖4.4 本章小結(jié)軟件任務(wù)分析和硬件電路設(shè)計(jì)結(jié)合進(jìn)行,哪些功能由硬件完成,哪些任務(wù)由軟件完成,在硬件電路設(shè)計(jì)基本定型后,也就基本上決定下來(lái)了。軟件任務(wù)分析環(huán)節(jié)是為軟件設(shè)計(jì)做一個(gè)總體規(guī)劃。從軟件的功能來(lái)看可分為兩大類:一類是執(zhí)行軟件,它能完成各種實(shí)質(zhì)性的功能,如測(cè)量,計(jì)算,顯示,打印,輸出控制和通信等,另一類是監(jiān)控軟件,它是專門(mén)用來(lái)協(xié)調(diào)各執(zhí)行模塊和操作者的關(guān)系,在系統(tǒng)軟件中充當(dāng)組織調(diào)度角色的軟件。這兩類軟件的設(shè)計(jì)方法各有特色,執(zhí)行軟件的設(shè)計(jì)偏重算法效率,與硬件關(guān)系密切,千變?nèi)f化。軟件任務(wù)分析時(shí),應(yīng)將各執(zhí)行模塊一一列出,并為每一個(gè)執(zhí)行模塊進(jìn)行功能定義和接口定義(輸入輸出定義)。在各執(zhí)行模塊進(jìn)行定義時(shí),將要牽扯到的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型問(wèn)題也一并規(guī)劃好。各執(zhí)行模塊規(guī)劃好后,就可以監(jiān)控程序了。首先根據(jù)系統(tǒng)功能和鍵盤(pán)設(shè)置選擇一種最適合的監(jiān)控程序結(jié)構(gòu)。相對(duì)來(lái)講,執(zhí)行模塊任務(wù)明確單純,比較容易編程,而監(jiān)控程序較易出問(wèn)題。這如同當(dāng)一名操作工人比較容易,而當(dāng)一個(gè)廠長(zhǎng)就比較難了。軟件任務(wù)分析的另一個(gè)內(nèi)容是如何安排監(jiān)控軟件和各執(zhí)行模塊。整個(gè)系統(tǒng)軟件可分為后臺(tái)程序(背景程序)和前臺(tái)程序。后臺(tái)程序指主程序及其調(diào)用的子程序,這類程序?qū)?shí)時(shí)性要求不是太高,延誤幾十 ms 甚至幾百 ms 也沒(méi)關(guān)系,故通常將監(jiān)控程序(鍵盤(pán)解釋程序),顯示程序和打印程序等與操作者打交道的程序放在后臺(tái)程序中執(zhí)行;而前臺(tái)程序安排一些實(shí)時(shí)性要求較高的內(nèi)容,如定時(shí)系統(tǒng)和外部中斷(如掉電中斷)。也可以將全部程序均安排在前臺(tái),后臺(tái)程序?yàn)椤笆瓜到y(tǒng)進(jìn)入睡眠狀態(tài)”,以利于系統(tǒng)節(jié)電和抗干擾。 2015 屆本科畢業(yè)論文(設(shè)計(jì))175.系統(tǒng)調(diào)試5.1 硬件調(diào)試頻率計(jì)的電路較為復(fù)雜,涉及的模塊比較多,其中包含三極管放大模塊,整形模塊,單片機(jī)最小系統(tǒng)模塊,液晶模塊和分頻模塊,因此對(duì)于焊接方面更是不可輕視,龐大的電路系統(tǒng)中只要出于一處的錯(cuò)誤,則會(huì)對(duì)檢測(cè)造成很大的不便,而且電路的交線較多,對(duì)于各種鋒利的引腳要注意處理,否則會(huì)刺破帶有包皮的導(dǎo)線,則會(huì)對(duì)電路造成短路現(xiàn)象。 在制作硬件電路之前,我們先根據(jù)實(shí)際需要的功能劃分硬件模塊,并且在 PROTEL 里面畫(huà)出其硬件原理圖和 PCB 圖,檢查無(wú)誤后開(kāi)始在萬(wàn)用板上焊接。在本頻率計(jì)的硬件調(diào)試中遇到了很多的問(wèn)題?;叵脒@些問(wèn)題只要認(rèn)真多思考都是可以避免的,以下為主要的問(wèn)題:?jiǎn)栴} 1:一開(kāi)始三極管放大電路總是不能放大交流信號(hào),輸出總是一個(gè)直流電壓解決:經(jīng)過(guò)查找相關(guān)資料,發(fā)現(xiàn)三極管的 1 腳和 3 腳焊接反了剛好轉(zhuǎn)了 180度,改正后便可正常工作。問(wèn)題 2:開(kāi)始的時(shí)候液晶屏幕總是顯示方格,不能正常顯示內(nèi)容解決: 經(jīng)過(guò)查找芯片手冊(cè),知道 LCD1602 有一個(gè)管腳是專門(mén)負(fù)責(zé)調(diào)解對(duì)比度的,一開(kāi)始的時(shí)候直接接高電平因此不能正常顯示,后來(lái)因引腳連接到一個(gè)電位計(jì)的中間抽頭,通過(guò)電位器就可以改變液晶的對(duì)比度。2015 屆本科畢業(yè)論文(設(shè)計(jì))185.2 軟件調(diào)試頻率計(jì)系統(tǒng)是一個(gè)比較復(fù)雜的數(shù)字型系統(tǒng),所以對(duì)于它的程序也較為復(fù)雜,所以在編寫(xiě)程序和調(diào)試時(shí)出現(xiàn)了相對(duì)較多的問(wèn)題。首先為了更好的測(cè)試效果,我最開(kāi)始是直接在 PROTUES 軟件下進(jìn)行仿真,在確定無(wú)誤后,再把程序燒錄到實(shí)物中運(yùn)行。最后經(jīng)過(guò)多次的模塊子程序的修改,一步一步的完成,最終解決了軟件上的各種問(wèn)題。在軟件的調(diào)試過(guò)程中主要遇到的問(wèn)題如下:?jiǎn)栴}:燒入程序后,LCD 液晶顯示閃動(dòng),而且亮度不均勻。解決:首先對(duì)調(diào)用的延時(shí)進(jìn)行逐漸修改,可以解決顯示閃動(dòng)問(wèn)題。其次,由于本作品使作動(dòng)態(tài)掃描方式顯示的數(shù)字,動(dòng)態(tài)掃描很快,人的肉眼是無(wú)法看出,但是調(diào)用的顯示程序時(shí),如果不在反回時(shí)屏蔽掉最后的附值,則會(huì)出現(xiàn)很亮的現(xiàn)象,所以在顯示的后面加了屏蔽子令,最后解決了此問(wèn)題。2015 屆本科畢業(yè)論文(設(shè)計(jì))196.結(jié)論通過(guò)這次畢業(yè)設(shè)計(jì),我學(xué)到了不少課本上沒(méi)有的知識(shí),也鍛煉了自己的動(dòng)手能力,將以前學(xué)過(guò)的零散的知識(shí)串到一起。經(jīng)過(guò)我長(zhǎng)時(shí)間的設(shè)計(jì)及調(diào)試,本系統(tǒng)基本能實(shí)現(xiàn)頻率計(jì)系統(tǒng)的所有功能。不足之處有:1.硬件的穩(wěn)定性有待進(jìn)一步提高 2.系統(tǒng)界面人性化還不足。我的綜合設(shè)計(jì)主要涉及硬件和軟件兩方面的內(nèi)容,通過(guò)這些我的硬件和軟件開(kāi)發(fā)能力都獲得了提高。首先硬件方面,基本了解了電子產(chǎn)品的開(kāi)發(fā)流程和所要做的工作。基本掌握了 Protel99SE 原理圖的方法,并設(shè)計(jì)了一個(gè)單片機(jī)最小系統(tǒng)。通過(guò)開(kāi)發(fā)板的設(shè)計(jì)和硬件搭建的過(guò)程,使我對(duì) 51 系單片機(jī)的接口有了更深層次的理解,熟悉了一些單片機(jī)常用的外圍電路引腳和連接方法,如 LCD 液晶等。并且我學(xué)會(huì)了分析問(wèn)題解決問(wèn)題的能力,加深了對(duì)所學(xué)理論知識(shí)的理解和運(yùn)用。我的動(dòng)手能力得到了很大的提高,創(chuàng)新意識(shí)得到了鍛煉。2015 屆本科畢業(yè)論文(設(shè)計(jì))20參考文獻(xiàn)[1] 彭偉.單片機(jī) C 語(yǔ)言程序設(shè)計(jì)實(shí)訓(xùn) 100 例.電子工業(yè)出版社.2009 年[2] 吳運(yùn)昌.模擬電子線路基礎(chǔ).廣州:華南理工大學(xué)出版社,2004 年[3] 閻石.?dāng)?shù)字電子技術(shù)基礎(chǔ).北京:高等教育出版社,1997 年[4] 張曉麗等.?dāng)?shù)據(jù)結(jié)構(gòu)與算法.北京:機(jī)械工業(yè)出版社,2002 年[5] 馬忠梅等. ARM unsigned char time;unsigned int count;unsigned int count1;//端口及函數(shù)說(shuō)明----------------------------------------------------------------------------sbit LCD_RS=P1^0; //片選信號(hào) sbit LCD_RW=P1^1; //讀寫(xiě)信號(hào) sbit LCD_E=P1^2; //使能信號(hào) #define LCD_DB P0 //數(shù)據(jù)信號(hào) unsigned char character[10]={0};//在屏幕上顯示的字符串 unsigned char character_1[]={“fre= Hz“};unsigned char FLAG = 0;void LCD_init(void);//初始化函數(shù)void LCD_write_command(unsigned char command);//寫(xiě)指令函數(shù)void LCD_write_data(unsigned char dat);//寫(xiě)數(shù)據(jù)函數(shù)void LCD_disp_char(unsigned char x,unsigned char y,unsigned char dat);//在某個(gè)屏幕位置上顯示一個(gè)字符,X(0-15),y(1-2)void delay_n40us(unsigned int n);//延時(shí)函數(shù)void timer_init(); //中斷初始化函數(shù)2015 屆本科畢業(yè)論文(設(shè)計(jì))25//-------------------------------------------------------------------------------void delay_n40us(unsigned int n) //延時(shí)函數(shù){unsigned int i;unsigned char j; for(i=n;i0;i--)for(j=0;j2;j++); } void delay_1s(){unsigned int i,j;for(i = 0;i100;i++)for(j = 0;j1000;j++);} void LCD_init(void) //液晶初始化函數(shù){LCD_write_command(0x38);//設(shè)置 8 位格式,2 行,5x7LCD_write_command(0x38);//設(shè)置 8 位格式,2 行,5x7LCD_write_command(0x38);//設(shè)置 8 位格式,2 行,5x7 切記要寫(xiě)三遍!?。?! LCD_write_command(0x0c);//整體顯示,關(guān)光標(biāo),不閃爍LCD_write_command(0x06);//設(shè)定輸入方式,增量不移位LCD_write_command(0x01);//清除屏幕顯示delay_n40us(100);//清屏延時(shí)} void LCD_write_command(unsigned char dat) //寫(xiě)命令函數(shù){LCD_DB=dat;LCD_RS=0;//指令LCD_RW=0;//寫(xiě)入LCD_E=1; //使能LCD_E=0;delay_n40us(1);//寫(xiě)命令延時(shí)}void LCD_write_data(unsigned char dat) //寫(xiě)數(shù)據(jù)函數(shù){LCD_DB=dat;LCD_RS=1;//數(shù)據(jù)LCD_RW=0;//寫(xiě)入- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
10 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開(kāi)word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 用于 自動(dòng)化 生產(chǎn)線 頻率計(jì) 設(shè)計(jì)
鏈接地址:http://www.szxfmmzy.com/p-605475.html