亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 12972|回復(fù): 1
收起左側(cè)

基于單片機(jī)的風(fēng)速風(fēng)向畢業(yè)設(shè)計(jì)論文

[復(fù)制鏈接]
ID:201968 發(fā)表于 2017-5-17 22:04 | 顯示全部樓層 |閱讀模式
本科生畢業(yè)設(shè)計(jì)
(申請(qǐng)學(xué)士學(xué)位)

論文題目風(fēng)速風(fēng)向數(shù)據(jù)采集實(shí)驗(yàn)
裝置的設(shè)計(jì)

作者姓名 劉江

所學(xué)專業(yè)名稱  自動(dòng)化

指導(dǎo)教師  呂承啟

   月  

學(xué)       生:                  (簽字)
學(xué)       號(hào):
答 辯 日 期:      年   月   日
指 導(dǎo) 教 師:                  (簽字)

目錄
摘要
Abstract              2
1 緒論              3
     1.1 研究背景及意義              3
     1.2 研究?jī)?nèi)容              3
     1.3 國(guó)內(nèi)外發(fā)展現(xiàn)狀              4
2 系統(tǒng)整體方案設(shè)計(jì)              5
     2.1 系統(tǒng)問(wèn)題分析              5
     2.2 系統(tǒng)框架論證與比較              6
3 硬件設(shè)計(jì)              8
     3.1 電源的選擇與設(shè)計(jì)              8
     3.2 單片機(jī)選型與設(shè)計(jì)              8
            3.2.1 AT89S52單片機(jī)簡(jiǎn)介              8
            3.2.2 AT89S52單片機(jī)引腳特性              9
     3.3 顯示模塊設(shè)計(jì)              11
     3.4 風(fēng)速風(fēng)向電路設(shè)計(jì)              12
            3.4.1 風(fēng)速風(fēng)向儀簡(jiǎn)介
            3.4.2 風(fēng)速儀工作原理
            3.4.3 風(fēng)向儀工作原理
            3.4.4 光電編碼器原理圖              13
4 軟件設(shè)計(jì)              14
     4.1 風(fēng)向檢測(cè)軟件設(shè)計(jì)              14
     4.2 風(fēng)速檢測(cè)軟件設(shè)計(jì)              14
     4.3 主程序設(shè)計(jì)              15
5 系統(tǒng)測(cè)試與評(píng)價(jià)              17
     5.1 測(cè)試方法              17
     5.2 測(cè)試結(jié)果與分析              17
參考文獻(xiàn)              19
致 謝
附 錄

風(fēng)速風(fēng)向數(shù)據(jù)采集實(shí)驗(yàn)裝置的設(shè)計(jì)

摘要:風(fēng)速風(fēng)向采集儀主要應(yīng)用在一些動(dòng)作單一,工作強(qiáng)度大或者環(huán)境比較嚴(yán)峻的場(chǎng)合,例如沙漠,軍區(qū)等。通過(guò)自動(dòng)控制技術(shù)達(dá)到對(duì)儀器的類人工控制,使得對(duì)區(qū)間的測(cè)量更加有效和便捷。本文結(jié)合自動(dòng)控制技術(shù)和光電探測(cè)技術(shù),設(shè)計(jì)了一款自動(dòng)風(fēng)速風(fēng)向采集儀。通過(guò)多個(gè)傳感器模塊將風(fēng)速風(fēng)向跟核心控制器聯(lián)接在一起,定義了自己的通信協(xié)議。我們可以通過(guò)風(fēng)速傳感器對(duì)風(fēng)速進(jìn)行精確測(cè)量。也可以通過(guò)風(fēng)向傳感器對(duì)風(fēng)向進(jìn)行精確檢測(cè)。然后由核心控制器對(duì)其進(jìn)行顯示。同時(shí)考慮到工作現(xiàn)場(chǎng)的復(fù)雜性,為本系統(tǒng)設(shè)計(jì)了濾波部分,使得當(dāng)有異常波動(dòng)時(shí),系統(tǒng)不會(huì)偏離正常狀態(tài),而只有系統(tǒng)檢測(cè)到正常變化時(shí),才允許顯示。
系統(tǒng)整體包括核心控制部分,風(fēng)速檢測(cè)部分,風(fēng)向檢測(cè)部分以及顯示部分。通過(guò)這幾大模塊的綜合作用,我們的系統(tǒng)可以應(yīng)對(duì)大部分的場(chǎng)景以及突發(fā)狀況。本設(shè)計(jì)成本低廉,功耗較小同時(shí)功能豐富,具有相當(dāng)?shù)睦碚摵蛯?shí)踐指導(dǎo)。系統(tǒng)采用keil編譯軟件進(jìn)行代碼的編寫(xiě),使用protues進(jìn)行軟件仿真,整體效果穩(wěn)定。



1 緒論
1.1 研究背景及意義
隨著人工智能技術(shù)的不斷提高,傳統(tǒng)的探測(cè)技術(shù)已經(jīng)無(wú)法滿足社會(huì)的需求。雖然我們的生活條件相比以前有了很大的改善。物質(zhì)生活發(fā)生了翻天覆地的變化。人類對(duì)自己生存環(huán)境已經(jīng)具有了相當(dāng)?shù)母脑炷芰Α5俏覀內(nèi)匀簧嬖谝粋(gè)不方面的地球上。我們的計(jì)算機(jī)技術(shù)已經(jīng)有了很大的提高,但是在一些傳統(tǒng)行業(yè)中,仍然使用較為原始的探測(cè)技術(shù)。這些測(cè)量技術(shù)在過(guò)去的生產(chǎn)生活中占有很大的比重,應(yīng)用范圍也十分廣泛。但是隨著我們對(duì)科學(xué)技術(shù)的不斷發(fā)展,對(duì)這些技術(shù)的依賴性已經(jīng)開(kāi)始呈現(xiàn)出一種降低趨勢(shì)。而如何將傳統(tǒng)測(cè)量理論結(jié)合現(xiàn)代科學(xué)技術(shù),已經(jīng)成為了當(dāng)今的發(fā)展趨勢(shì)。
風(fēng)作為一種大自然的饋贈(zèng),可以給人類提供豐富的生產(chǎn)動(dòng)力。近年來(lái)隨著人們對(duì)環(huán)境友好型社會(huì)建設(shè)理念的不斷加強(qiáng),我們已經(jīng)將能源發(fā)展的目光從石油,煤炭等化石材料轉(zhuǎn)移向了風(fēng)能,太陽(yáng)能等這些純凈的能源。由于這些能源無(wú)污染,成本低的特點(diǎn),人類已經(jīng)研制出了一大批可以收集這些能源的設(shè)備。雖然這一趨勢(shì)是科學(xué)發(fā)展所必然的結(jié)果。但是目前來(lái)看,這些研究領(lǐng)域仍然處于初級(jí)階段。相比于傳統(tǒng)的燃煤,燃油技術(shù),這些新興的技術(shù)仍然存在效率低的缺點(diǎn)。如何加強(qiáng)這些能源的轉(zhuǎn)化效率已經(jīng)成了一些工程師們著重研究的領(lǐng)域。將傳統(tǒng)理論結(jié)合計(jì)算機(jī)等技術(shù)似乎成為了一塊不錯(cuò)的敲門磚。  
雖然智能化技術(shù)在我們生活中已經(jīng)普及開(kāi)來(lái),但是這些技術(shù)主要是一些弱智能技術(shù),我們確實(shí)已經(jīng)進(jìn)入了弱智能時(shí)代,但是對(duì)智能技術(shù)的追求我們從沒(méi)放慢過(guò)自己的腳步,各國(guó)也將發(fā)展的重頭戲放在了相關(guān)產(chǎn)業(yè)鏈上,比如物聯(lián)網(wǎng)就是我們正在大力發(fā)展的技術(shù)。我國(guó)每年對(duì)相關(guān)IT人員尤其是嵌入式開(kāi)發(fā)人員的需求也是年年供不應(yīng)求。各國(guó)之間的角力將會(huì)發(fā)生在這些領(lǐng)域之中。因此,我們自動(dòng)風(fēng)速風(fēng)向采集儀不管是在民用領(lǐng)域還是在軍事領(lǐng)域都具有相當(dāng)?shù)臐摿σ约拔磥?lái),對(duì)我國(guó)人員安全以及科研都有十分重大的推動(dòng)作用。
1.2 研究?jī)?nèi)容
我們結(jié)合社會(huì)需求與現(xiàn)有理論,在實(shí)際可行的基礎(chǔ)上進(jìn)行了本次課題設(shè)計(jì)。在經(jīng)過(guò)充分的研究與討論之后,我們完成了對(duì)本系統(tǒng)的電路設(shè)計(jì)。代碼編寫(xiě)與實(shí)驗(yàn)仿真。在整個(gè)項(xiàng)目期間,我們先對(duì)需要用到的各個(gè)模塊進(jìn)行了充分調(diào)研與設(shè)計(jì)。在硬件電路方面,我們對(duì)轉(zhuǎn)壓模塊,驅(qū)動(dòng)模塊,控制模塊,風(fēng)速風(fēng)向檢測(cè)模塊進(jìn)行了設(shè)計(jì)與仿真,在protues仿真與理論切合的基礎(chǔ)上,我們進(jìn)行了實(shí)際的電路制作。對(duì)于軟件部分,我們對(duì)單片機(jī)進(jìn)行了深入的學(xué)習(xí),包括用到的中斷系統(tǒng),輪詢部分,A/D轉(zhuǎn)換與pwm部分進(jìn)行了重點(diǎn)學(xué)習(xí)。經(jīng)過(guò)系統(tǒng)的學(xué)習(xí)之后,我們對(duì)軟硬件進(jìn)行了綜合。在確保原理正確的基礎(chǔ)上,我們不斷對(duì)軟硬件進(jìn)行聯(lián)調(diào)。最終,我們的設(shè)計(jì)成功地實(shí)現(xiàn)了設(shè)計(jì)要求,并有了一定的相關(guān)擴(kuò)展,可以在此基礎(chǔ)上進(jìn)行二次研發(fā)。

1.3 國(guó)內(nèi)外發(fā)展現(xiàn)狀
人工智能技術(shù)被視為未來(lái)科技領(lǐng)域,尤其是嵌入式行業(yè)的重點(diǎn)發(fā)展方向。隨著物聯(lián)網(wǎng)的興起,人工智能也逐漸被人們撥開(kāi)了迷霧,人們開(kāi)始越來(lái)越關(guān)注這一領(lǐng)域的發(fā)展。從“小米之家”的興起到智能家居的廣泛應(yīng)用,我們已經(jīng)開(kāi)始進(jìn)入了一個(gè)智能化的時(shí)代。說(shuō)到科技領(lǐng)域的發(fā)展,走在前沿的國(guó)家主要有美國(guó),日本,韓國(guó)以及中國(guó)。領(lǐng)導(dǎo)這一發(fā)展趨勢(shì)的公司主要是美國(guó)的蘋(píng)果,谷歌,日本的索尼,韓國(guó)的三星以及中國(guó)的華為,小米等科技公司。這些國(guó)家在智能化技術(shù)領(lǐng)域有著不可忽視的作用。
基于單片機(jī)的風(fēng)速風(fēng)向采集儀屬于人工智能技術(shù)領(lǐng)域的一種。一直被各國(guó)視為發(fā)展的重頭戲,各大公司也早早地進(jìn)行了戰(zhàn)略布局。從20世紀(jì)90年代以來(lái),日本的機(jī)器人技術(shù)便一直領(lǐng)先于世界,無(wú)論是從娛樂(lè)家用型機(jī)器人還是工業(yè)型機(jī)器人,日本都完成了重大的戰(zhàn)略布局,每年的機(jī)器人大會(huì)也主要在日本舉行。而美國(guó)韓國(guó)則在便攜式設(shè)備領(lǐng)域領(lǐng)先于世界,無(wú)論是蘋(píng)果公司還是三星,都在科技領(lǐng)域占有舉足輕重的地位。
我國(guó)在這一領(lǐng)域的發(fā)展起步也較早,早在2000年左右,我國(guó)便在物聯(lián)網(wǎng)方面有了自己的認(rèn)識(shí),國(guó)家也大力培養(yǎng)這一方面的人才,在各大高校開(kāi)設(shè)了各類IT專業(yè),但即使如此,也遠(yuǎn)遠(yuǎn)跟不上國(guó)內(nèi)外對(duì)這一領(lǐng)域人才的需求,去年在嵌入式方面的人才空缺仍然在幾十萬(wàn)以上,相關(guān)專業(yè)人員的薪水也遙遙領(lǐng)先于其他行業(yè)。近幾年國(guó)內(nèi)比較熱門的互聯(lián)網(wǎng)之家,小米之家便是其中的典范。無(wú)論是從日常使用,還是工業(yè)級(jí)產(chǎn)業(yè)鏈,人工智能都將是未來(lái)必不可少的。而隨著我們科技高度發(fā)展的同時(shí),各類相關(guān)產(chǎn)業(yè)也如雨后春筍幫設(shè)立起來(lái),智能風(fēng)速風(fēng)向采集儀以其高度智能化以及便利性,成為了民用以及軍事領(lǐng)域必不可少的技術(shù)之一。


2 系統(tǒng)整體方案設(shè)計(jì)
2.1 系統(tǒng)問(wèn)題分析
我們首先考慮本系統(tǒng)架構(gòu)的問(wèn)題。在研發(fā)初期,我們對(duì)別人的設(shè)計(jì)模型進(jìn)行了實(shí)地研究,觀看了一些視頻,對(duì)該儀器的設(shè)計(jì)有了一些基本的理念。具體來(lái)說(shuō),我們開(kāi)發(fā)本系統(tǒng)所具有的問(wèn)題主要來(lái)源于三個(gè)方面:系統(tǒng)結(jié)構(gòu)的設(shè)計(jì),硬件電路焊接以及軟件代碼的編寫(xiě)。針對(duì)這些問(wèn)題,我們進(jìn)行了任務(wù)分配與階段性安排。首先我們對(duì)系統(tǒng)的結(jié)構(gòu)進(jìn)行了剖析,認(rèn)真討論完成本系統(tǒng)需要哪些方面的知識(shí),其次,在對(duì)風(fēng)速風(fēng)向采集有了充分的了解與認(rèn)識(shí)后,我們開(kāi)始制作該儀器的硬件框架,最后,完成上兩步的設(shè)計(jì)之后,我們開(kāi)始編寫(xiě)代碼?傮w來(lái)說(shuō),在我們對(duì)系統(tǒng)進(jìn)行分割之后,系統(tǒng)的制作難度有了一定的降低,但還是有一些問(wèn)題存在,比如說(shuō)模塊之間的貼合,軟硬件的聯(lián)調(diào)問(wèn)題,這在我們的文章中會(huì)有相應(yīng)講述。
本系統(tǒng)開(kāi)發(fā)的第一個(gè)問(wèn)題是系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)。我們?cè)谀玫饺蝿?wù)的時(shí)候,由于對(duì)風(fēng)速風(fēng)向采集的了解不深,也沒(méi)有過(guò)相關(guān)的制作經(jīng)驗(yàn),所以在此進(jìn)行了相當(dāng)時(shí)間的糾結(jié)。最后,還是在班級(jí)里一位參加過(guò)競(jìng)賽的同學(xué)的幫助下,解決了這個(gè)問(wèn)題。我們?cè)诮?jīng)過(guò)認(rèn)真剖析之后,將本系統(tǒng)劃分為了三個(gè)層次,自頂向下進(jìn)行安排。首先是控制層,這里涉及到人機(jī)的交互問(wèn)題,主要是控制人員與系統(tǒng)之間指令的傳輸與數(shù)據(jù)的回饋問(wèn)題。由于系統(tǒng)在遇到突發(fā)狀況時(shí),需要等待控制人員的控制指令,同時(shí)也會(huì)傳遞數(shù)據(jù)給控制人員進(jìn)行分析,所以這一部分的設(shè)計(jì)至關(guān)重要,設(shè)計(jì)到我們系統(tǒng)將來(lái)的穩(wěn)定性。其次,信息采集層。系統(tǒng)在運(yùn)行過(guò)程中,需要采集一些數(shù)據(jù)進(jìn)行風(fēng)速風(fēng)向的顯示。系統(tǒng)這一層次的設(shè)計(jì)關(guān)系到風(fēng)速儀各種功能的完成,對(duì)提高本設(shè)計(jì)性能有很大幫助。最后一個(gè)層次為顯示層。系統(tǒng)在完成各方面的工作后,需要對(duì)風(fēng)速風(fēng)向進(jìn)行顯示,所以本部分主要負(fù)責(zé)信息的傳達(dá)。系統(tǒng)層次劃分如下:

        表2.1 系統(tǒng)層次劃分

系統(tǒng)層次

在體系中的劃分

功能剖析

控制層

頂層

提高系統(tǒng)穩(wěn)定性

信息采集層

中層

完善系統(tǒng)功能

顯示層

底層

顯示信息


如上表所示,我們的系統(tǒng)劃分成頂層,中層以及底層等三個(gè)層次,各層次也有其相應(yīng)的功能劃分。
在完成系統(tǒng)層次劃分之后,我們需要考慮的第二個(gè)問(wèn)題是硬件電路的設(shè)計(jì)。具體的設(shè)計(jì)方案在后續(xù)章節(jié)介紹,在這里我們重點(diǎn)講解開(kāi)發(fā)過(guò)程中所遇到的問(wèn)題。在硬件制作上,由于以前沒(méi)有進(jìn)行過(guò)系統(tǒng)的練習(xí),所以對(duì)電路焊接方面缺乏完善的技能。在本系統(tǒng)中,在電路制作上的困難主要體現(xiàn)在轉(zhuǎn)壓模塊,風(fēng)速風(fēng)向轉(zhuǎn)換模塊,電源驅(qū)動(dòng)模塊,控制模塊等。由于核心控制電路我們選擇已經(jīng)集成好的單片機(jī),所以只需設(shè)計(jì)外圍電路即可,最后進(jìn)行各個(gè)模塊的集成聯(lián)調(diào)。其中,轉(zhuǎn)壓模塊所遇到的問(wèn)題在于復(fù)雜的電壓要求,單片機(jī)需要5V供電,驅(qū)動(dòng)模塊需要12V供電。所以選擇一款合適的轉(zhuǎn)壓芯片勢(shì)在必行。電源驅(qū)動(dòng)的問(wèn)題主要在于選型。至于控制器件則相對(duì)簡(jiǎn)單,有現(xiàn)成的模塊供我們使用。在完成了綜合設(shè)計(jì)之后,我們對(duì)硬件的需求進(jìn)行了綜合分析,列出了我們所需的硬件模塊。所需器件如下表所示:

      表2.2 器件選型

器件

價(jià)格(元)

功能

單片機(jī)一塊

80

核心控制

LCD1602

10

顯示

5號(hào)電池4節(jié)

20

供電

風(fēng)速檢測(cè)模塊

700

檢測(cè)風(fēng)速

風(fēng)向檢測(cè)模塊

600

檢測(cè)風(fēng)向

如上表所示為我們選擇的器件類型,各個(gè)器件在淘寶均有銷售。最后一部分是我們的軟件功能分析。一個(gè)穩(wěn)定的系統(tǒng)離不開(kāi)完善的代碼輔助。在本系統(tǒng)中,由于將系統(tǒng)架構(gòu)分為了控制層,信息采集層以及顯示層,所以代碼也相應(yīng)的分為自動(dòng)控制層代碼,信息采集層代碼以及顯示層代碼。其中比較復(fù)雜的是信息采集層軟件的設(shè)計(jì)?刂颇K所需的軟件主要是分析風(fēng)速風(fēng)向模塊采集的數(shù)據(jù)以及控制顯示屏的顯示,我們?cè)趨⒖枷嚓P(guān)例程之后已經(jīng)有了深入的了解。信息采集層我們主要是對(duì)風(fēng)速風(fēng)向進(jìn)行定時(shí)采集,得出當(dāng)前場(chǎng)景的風(fēng)速風(fēng)向的信息。而顯示層則需要我們對(duì)各種數(shù)據(jù)進(jìn)行顯示。在后續(xù)章節(jié)中,我們會(huì)重點(diǎn)進(jìn)行講解

2.2 系統(tǒng)框架論證與比較
在設(shè)計(jì)前期,我們對(duì)可實(shí)現(xiàn)的方案進(jìn)行了論證,基于風(fēng)速風(fēng)向采集儀的功能以及穩(wěn)定性,我們進(jìn)行了以下兩方面的設(shè)想。
方案一,采用相關(guān)數(shù)字電路來(lái)完成本次設(shè)計(jì)。通過(guò)設(shè)計(jì)相關(guān)編碼電路來(lái)完成系統(tǒng)的控制,通過(guò)核心控制電路和周邊電路的綜合作用,可以實(shí)現(xiàn)系統(tǒng)的設(shè)計(jì)。該方案實(shí)行難度大,效率低,周期長(zhǎng),成本較高。
方案二,采用基于單片機(jī)的核心控制,自主設(shè)計(jì)外圍電路,包括風(fēng)速風(fēng)向采集電路,顯示電路,轉(zhuǎn)壓電路等周邊模塊。通過(guò)對(duì)單片機(jī)進(jìn)行編程,控制這些外圍模塊一起工作。在此方案中,我們所需要的只是用軟件將這些傳感器建進(jìn)行通信,不管是在實(shí)現(xiàn)難度上還是在成本上都有很大程度的降低,并且對(duì)我們的編程能力也有很大的提高。
通過(guò)上述論證,我們采用了方案二來(lái)完成本次畢業(yè)設(shè)計(jì),整體思路是采用單片機(jī)作為我們的控制核心,通過(guò)對(duì)單片機(jī)的編程,將周邊傳感器采集的數(shù)據(jù)進(jìn)行分析與計(jì)算,并在自動(dòng)控制模塊的基礎(chǔ)上,完成系統(tǒng)穩(wěn)定可靠的運(yùn)行。
系統(tǒng)整體框圖如下圖2.1所示:



圖2.1 系統(tǒng)框圖
由上述系統(tǒng)框圖,我們分為了三大模塊進(jìn)行分工合作,在今后的敘述中,我們將對(duì)這幾個(gè)模塊進(jìn)行分別敘述。

3 硬件設(shè)計(jì)
3.1 電源的選擇與設(shè)計(jì)
電源是系統(tǒng)穩(wěn)定工作的前提,由于任何非電量的控制都要轉(zhuǎn)換為電量進(jìn)行測(cè)量與控制,所以我們首先對(duì)電源進(jìn)行設(shè)計(jì)。在本系統(tǒng)中,需要兩種不同的電壓,主要分為單片機(jī)供電電壓(5V)與風(fēng)速風(fēng)向模塊電壓(12V),主要有以下兩種方案:
方案一,采用兩種電源供電。單片機(jī)及外圍電路采用5V供電,外部模塊采用12V供電,將兩種電壓完全隔離開(kāi),獨(dú)立工作。此種方法的好處是設(shè)計(jì)簡(jiǎn)單,但是需要增加道閘負(fù)載。
方案二,采用單一電源供電。首先使用12V電壓對(duì)外部模塊供電,再有12V電壓源引入轉(zhuǎn)壓芯片進(jìn)行5V轉(zhuǎn)壓,給單片機(jī)及外圍電路供電。此種方法設(shè)計(jì)較為復(fù)雜,但是可以減少系統(tǒng)的負(fù)載。
考慮到本次設(shè)計(jì)的主要目的為提高能力,增強(qiáng)自己的電路制作能力,也考慮到系統(tǒng)的靈敏性,我們選擇了第二種方案,對(duì)系統(tǒng)進(jìn)行單一供電。并且由于本次設(shè)計(jì)可能會(huì)進(jìn)行反復(fù)地測(cè)試,我們決定采購(gòu)可充電電池。
如下為電壓轉(zhuǎn)化模塊:

1.010.jpg

圖3.1 轉(zhuǎn)壓模塊

在上圖中,我們對(duì)12V和5V電壓進(jìn)行了轉(zhuǎn)化,使得可以對(duì)風(fēng)速風(fēng)向模塊和單片機(jī)分別供電。
3.2 單片機(jī)選型與設(shè)計(jì)
3.2.1 AT89S52單片機(jī)簡(jiǎn)介
52單片機(jī)是51系列單片機(jī)的一種。該款單片機(jī)芯片具有較低的工作電壓,而性能通常比較高,單片機(jī)內(nèi)部包含8k bytes的可以重復(fù)使用的Flash(即只讀存儲(chǔ)器)以及256 比特的隨機(jī)存儲(chǔ)器(RAM)。該MCU基于先進(jìn)的存儲(chǔ)技術(shù)和強(qiáng)大的計(jì)算能力。對(duì)上一代單片機(jī)進(jìn)行了升級(jí)。但對(duì)傳統(tǒng)的51單片機(jī)的指令也能夠兼容。該芯片內(nèi)置了通用的8位cpu以及Flash存儲(chǔ)單元,因此該單片機(jī)的強(qiáng)大的運(yùn)算能力和控制能力可以應(yīng)用在廣泛的場(chǎng)合中。
該單片機(jī)有40個(gè)引腳。32個(gè)外部雙向輸入/輸出(I/O)端口。同時(shí)內(nèi)含2個(gè)外中斷口。3個(gè)16位的可以通過(guò)程序編程的定時(shí)器。兩個(gè)全雙工的串行口。2個(gè)讀寫(xiě)引腳?梢酝ㄟ^(guò)常規(guī)編程方法進(jìn)行控制。但不可以在線編程。該單片機(jī)通過(guò)將常用的MCU和Flash結(jié)合在了一起,尤其通過(guò)使用可重復(fù)擦寫(xiě)的Flash存儲(chǔ)器,不僅在功耗上還是在效率上都具有相當(dāng)?shù)膶?shí)用性。
該單片機(jī)的基本組成框圖見(jiàn)圖3.2.1。

            1.011.jpg

圖3.2.1 單片機(jī)組成框圖
3.2.2 AT89S52單片機(jī)引腳特性
AT89S52有PDIP、PQFP/TQFP及PLCC等三種封裝形式,以適應(yīng)不同產(chǎn)品的需求。主要功能特性:
兼容MCS51指令系統(tǒng)
· 8k可反復(fù)擦寫(xiě)(>1000次)Flash ROM
· 32個(gè)雙向I/O口
· 256x8bit內(nèi)部RAM
· 3個(gè)16位可以通過(guò)編程設(shè)置的定時(shí)器。
· 時(shí)鐘頻率0-24MHz
· 2個(gè)串行中斷
· 可編程UART串行通道
· 2個(gè)外部中斷源
· 共6個(gè)中斷源
· 2個(gè)讀寫(xiě)中斷口線
· 3級(jí)加密位
· 低功耗空閑和掉電模式
· 軟件設(shè)置睡眠和喚醒功能

                            1.012.jpg

                                        圖3.2.2 單片機(jī)引腳圖
部分引腳說(shuō)明:
(1)時(shí)鐘電路引腳XTAL1 和XTAL2:
XTAL2(18 腳):可以外接晶體振蕩器?梢詷(gòu)成內(nèi)部系統(tǒng)的振蕩電路,振蕩器的振蕩頻率等于系統(tǒng)的固有頻率。當(dāng)需要外部時(shí)鐘提供信號(hào)時(shí),可以從該端口輸入所需信號(hào)。在驗(yàn)證該部分是否處于正常狀態(tài)時(shí),可將示波器的輸入引腳連接該端口,在示波器上觀察系統(tǒng)的輸出信號(hào)。
XTAL1(19 腳):同上述18腳連接方式相同。系統(tǒng)的內(nèi)部時(shí)鐘振蕩器。如果使用內(nèi)部時(shí)鐘時(shí),將該腳接地。若要使用外部時(shí)鐘,則將時(shí)鐘信號(hào)加到該引腳即可。
(2)控制信號(hào)引腳RST,ALE,PSEN 和EA:
復(fù)位引腳:復(fù)位信號(hào)輸入端,高電平有效。該引腳為備用電源引腳,可以由外部電源進(jìn)行供電。在該引腳上輸入兩個(gè)時(shí)鐘周期的高電平,便完成了對(duì)MCU的復(fù)位。同時(shí)RST 端口具有另外一種功能,即當(dāng)接入RST接口時(shí),可以作為RAM 備用電源,以使系統(tǒng)在突然掉電時(shí),在寄存器內(nèi)的數(shù)據(jù)不會(huì)丟失,在系統(tǒng)復(fù)位之后仍可以繼續(xù)運(yùn)行。
ALE/PROG:地址鎖存允許信號(hào)端。51單片機(jī)在正常上電之后,該引腳對(duì)外輸出高電平,頻率是振蕩電驢振蕩頻率的1/6。MCU讀取外部存儲(chǔ)器。作為低8 位地址的鎖存信號(hào)。該引腳會(huì)輸出相應(yīng)的信號(hào)。
單片在在不訪問(wèn)外部ROM時(shí),該引腳則以內(nèi)部振蕩器1/6 的頻率固定輸出高電平信號(hào),所以該引腳的輸出信號(hào)可以用來(lái)給外部電路提供工作時(shí)鐘。在驗(yàn)證單片機(jī)的性能時(shí),可以示波器的輸入端外界ALE引腳,觀察示波器是否顯示對(duì)應(yīng)信號(hào)。當(dāng)輸出正常的信號(hào)時(shí)。芯片正常。
ALE 端的驅(qū)動(dòng)能力較強(qiáng),可以帶動(dòng)多個(gè)負(fù)載。
同時(shí)這個(gè)引腳可以作為單片機(jī)的地址輸入端口。進(jìn)行地址選擇時(shí),可以在此端口進(jìn)行。
PSEN:輸出使能信號(hào)。完成對(duì)相應(yīng)功能的使能。該引腳外界存儲(chǔ)器的使能端口,后續(xù)會(huì)有相應(yīng)原理圖展示。PSEN 端有效,即允許讀出EPROM/ROM 中的指令碼。PSEN 端同樣可驅(qū)動(dòng)8 個(gè)LS 型TTL 負(fù)載。
EA/Vpp(31 腳):該引腳是單片機(jī)的程序輸入使能引腳。該引腳外接高電平時(shí),MCU只在內(nèi)部存儲(chǔ)其中進(jìn)行尋址,即只能執(zhí)行內(nèi)部命令。在地址選擇器的值大于內(nèi)部存儲(chǔ)器時(shí)。單片機(jī)會(huì)自動(dòng)去外部存儲(chǔ)器中讀取指令。即0x0FFF是內(nèi)外存儲(chǔ)器的區(qū)分點(diǎn)。當(dāng)給該引腳接地時(shí),MCU將脂肪紋外部程序存儲(chǔ)器的內(nèi)容,而忽略內(nèi)部存儲(chǔ)器的內(nèi)容。對(duì)于無(wú)片內(nèi)ROM 的8031 或8032,需外擴(kuò)EPROM,此時(shí)必須將EA 引腳接地。
(3)輸入/輸出端口P0/P1/P2/P3:
P0口(P0.0~P0.7,39~32 腳):P0口是一個(gè)漏極開(kāi)路的8 位準(zhǔn)雙向I/O口。該引腳的構(gòu)成方式為漏極開(kāi)路模式,一共可以對(duì)8個(gè)負(fù)載進(jìn)行驅(qū)動(dòng)。當(dāng)P0用作輸入引腳時(shí),必須先向口鎖存器(地址80H)寫(xiě)入0XFFFF,導(dǎo)致P0口引腳成為懸浮狀態(tài),成為了高阻態(tài)。該引腳作為輸入端使用時(shí),需要配置相應(yīng)的寄存器。即先由該引腳進(jìn)行寫(xiě)出,再進(jìn)行讀入。即具有雙向的特性。
P1口(P1.0~P1.7,1~8 腳):P1口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向I/O口。P1口每位能驅(qū)動(dòng)4 個(gè)LS 型TTL 負(fù)載。當(dāng)將P1端作為輸入端使用時(shí),同樣應(yīng)該向控制端寫(xiě)入控制信號(hào),不同于P0,此時(shí)P1端自動(dòng)進(jìn)入上拉狀態(tài),顯示高電平。
P2口(P2.0~P2.7,21~28 腳):P2口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向I/O口。該引腳可以同時(shí)驅(qū)動(dòng)四個(gè)負(fù)載。在訪問(wèn)片外寄存器時(shí),它輸出高地址。
P3口(P3.0~P3.7,10~17 腳):P3口是一個(gè)帶內(nèi)部上拉電阻的8 位準(zhǔn)雙向I/O口。如下:
P3.0:(RXD)串行數(shù)據(jù)接收。
P3.1:(RXD)串行數(shù)據(jù)發(fā)送。
P3.2:(INT0#)外部中斷0輸入。
P3.3:(INT1#)外部中斷1輸入。
P3.4:(T0)定時(shí)/計(jì)數(shù)器0的外部計(jì)數(shù)輸入。
P3.5:(T1)定時(shí)/計(jì)數(shù)器1的外部計(jì)數(shù)輸入。
P3.6:(WR#)對(duì)外部的數(shù)據(jù)存儲(chǔ)器進(jìn)行使能。
P3.7:(RD#)選擇片外存儲(chǔ)器。
3.3 顯示模塊設(shè)計(jì)
系統(tǒng)采用1602作為顯示器件,可以較為清晰地顯示我們需要的字符與數(shù)字,相比其他顯示器件,具有功耗低,成本低的特點(diǎn)。液晶的命令操作腳是RS、RW、EN接在單片機(jī)的P1^1、P1^2、P1^3腳。顯示屏的數(shù)據(jù)輸入端應(yīng)該分別接單片機(jī)的的P0口。在顯示特定字符時(shí),單片機(jī)通過(guò)這些引腳對(duì)顯示內(nèi)容進(jìn)行控制。具體電路圖如圖下所示:
1.013.jpg
圖3.3 顯示模塊原理圖
3.4 風(fēng)速風(fēng)向電路設(shè)計(jì)
3.4.1 風(fēng)速風(fēng)向儀簡(jiǎn)介
風(fēng)速儀用來(lái)檢測(cè)風(fēng)的速度,而風(fēng)向儀可以測(cè)量風(fēng)的方向。兩者結(jié)合起來(lái)使用可以確定環(huán)境中風(fēng)的特性。在對(duì)風(fēng)的常規(guī)測(cè)量中,經(jīng)常將這兩者結(jié)合起來(lái)使用,以達(dá)到對(duì)環(huán)境中風(fēng)的檢測(cè)。在風(fēng)速儀模塊電路中,因?yàn)樾枰獧z測(cè)風(fēng)的速度,所以通常包括一個(gè)風(fēng)杯(三杯),該風(fēng)杯在受到環(huán)境中風(fēng)的作用時(shí)發(fā)生旋轉(zhuǎn),帶動(dòng)下級(jí)檢測(cè)電路運(yùn)動(dòng),下級(jí)檢測(cè)電路根據(jù)風(fēng)杯的運(yùn)動(dòng)即可檢測(cè)到風(fēng)的速度。為了在任何角度都能檢測(cè)到風(fēng),所以經(jīng)常采用三個(gè)風(fēng)杯來(lái)組成檢測(cè)模塊。而風(fēng)向儀用來(lái)測(cè)量環(huán)境中風(fēng)的方向,所以在檢測(cè)電路中包括一個(gè)由風(fēng)向標(biāo)組成的指示模塊。風(fēng)向儀在受到風(fēng)的作用后受力旋轉(zhuǎn),但不同于風(fēng)速計(jì)的不斷旋轉(zhuǎn),風(fēng)向儀會(huì)達(dá)到一個(gè)平衡狀態(tài),在平衡狀態(tài)時(shí),風(fēng)向標(biāo)指示的即為風(fēng)當(dāng)前的方向。
風(fēng)速風(fēng)向儀在檢測(cè)到當(dāng)前環(huán)境中的風(fēng)速和風(fēng)向后,將采集的數(shù)據(jù)傳遞給單片機(jī),單片機(jī)對(duì)這些數(shù)據(jù)進(jìn)行濾波處理,通常為求均值后,將這些信息顯示在顯示屏上,用戶即可得到當(dāng)前環(huán)境中風(fēng)的特性。通常將風(fēng)向以讀數(shù)表示,而風(fēng)速以等級(jí)或者m/s的形式展示。用戶在得到這些信息后,便可以據(jù)此安排自己的生產(chǎn)生活,提高自己的作業(yè)水平。
3.4.2 風(fēng)速儀工作原理
本系統(tǒng)采用的風(fēng)速儀是基于光電編碼器的原理工作的。光電編碼器的傳動(dòng)軸與風(fēng)杯連接在一起,在風(fēng)的吹動(dòng)下,編碼器傳動(dòng)軸跟隨轉(zhuǎn)動(dòng),由此不停地產(chǎn)生出脈沖信號(hào)。外部電路檢測(cè)到脈沖信號(hào)后,根據(jù)脈沖信號(hào)產(chǎn)生的頻率,即可計(jì)算出風(fēng)的速度。
在工作時(shí),我們將光電編碼器即風(fēng)速儀的輸出引腳連接至單片機(jī)的中斷引腳處,配置單片機(jī)為上升沿觸發(fā)中斷。則由于風(fēng)的轉(zhuǎn)動(dòng),風(fēng)速儀的引腳會(huì)源源不斷地產(chǎn)生脈沖信號(hào)。這些脈沖信號(hào)傳遞給單片機(jī)后,單片機(jī)進(jìn)入中斷。由于風(fēng)的速度不同,導(dǎo)致編碼器脈沖信號(hào)的頻率也不盡相同,所以單片機(jī)內(nèi)部根據(jù)這些信號(hào)的頻率,即可得到風(fēng)速儀的轉(zhuǎn)速。按照動(dòng)量守恒原理,風(fēng)的速度便可以得到。
3.4.3 風(fēng)向儀工作原理
風(fēng)速儀在工作工程中,三個(gè)風(fēng)杯在風(fēng)的作用下不斷旋轉(zhuǎn),由此得到風(fēng)的速度。而風(fēng)向儀的工作原理與此不同。由于我們需要采集環(huán)境中風(fēng)的方向,當(dāng)環(huán)境中風(fēng)的方向比較穩(wěn)定時(shí),風(fēng)向儀的風(fēng)標(biāo)不會(huì)有大幅度的波動(dòng)。
風(fēng)向儀的核心元器件同樣采用光電編碼器。但是與風(fēng)速儀不同的是,風(fēng)速儀根據(jù)光電編碼器脈沖產(chǎn)生的頻率工作,而風(fēng)向儀根據(jù)編碼器轉(zhuǎn)動(dòng)方向的不同而工作。由于編碼器在進(jìn)行正轉(zhuǎn)或者反轉(zhuǎn)時(shí),產(chǎn)生脈沖信號(hào)的電平不同。在正轉(zhuǎn)時(shí),編碼器輸出高電平,而反轉(zhuǎn)時(shí),輸出低電平。由此根據(jù)編碼器輸出電平的正負(fù),我們便可以得知風(fēng)向標(biāo)正轉(zhuǎn)或者反轉(zhuǎn)過(guò)的角度,經(jīng)過(guò)初始定位,便得到了風(fēng)的方向。
3.4.4 光電編碼器原理圖
光電編碼器原理圖如下所示:

                     1.014.jpg

                             圖3.4.4 光電編碼器原理圖

如上圖所示為系統(tǒng)采用的光電編碼器原理圖。傳感器通過(guò)外部轉(zhuǎn)子的帶動(dòng),產(chǎn)生不同頻率,不同電平的脈沖。單片機(jī)根據(jù)脈沖頻率得到轉(zhuǎn)速,根據(jù)電平高低得到轉(zhuǎn)角。便可以精確地測(cè)量風(fēng)的轉(zhuǎn)速和轉(zhuǎn)向。


4 軟件設(shè)計(jì)
4.1 風(fēng)向檢測(cè)軟件設(shè)計(jì)
在進(jìn)行風(fēng)向檢測(cè)時(shí),我們?cè)O(shè)計(jì)系統(tǒng)中斷來(lái)對(duì)風(fēng)向進(jìn)行檢測(cè)。將風(fēng)向儀的A相引腳接至單片機(jī)的INT0中斷引腳,而將B相接至普通輸入引腳。配置INT0為下降沿中斷,即外部引腳產(chǎn)生下降沿時(shí)觸發(fā)中斷,程序進(jìn)入中斷服務(wù)函數(shù)進(jìn)行處理。風(fēng)向儀在正常工作時(shí),A相產(chǎn)生中斷,系統(tǒng)進(jìn)入中斷程序后判斷B引腳的電平。若該引腳電平為低,則表示風(fēng)向標(biāo)反轉(zhuǎn),將其計(jì)數(shù)減一。而如果該引腳為高電平,則代表風(fēng)向標(biāo)正轉(zhuǎn),計(jì)數(shù)值加一。
光電編碼器具有自己的轉(zhuǎn)值,即旋轉(zhuǎn)一周產(chǎn)生的脈沖個(gè)數(shù)。本系統(tǒng)采用的風(fēng)向儀的轉(zhuǎn)數(shù)為500.即風(fēng)向標(biāo)每轉(zhuǎn)過(guò)一圈,產(chǎn)生五百個(gè)脈沖。所以風(fēng)向標(biāo)的角度為N/500*360度。在程序中設(shè)計(jì)計(jì)數(shù)值N的絕對(duì)值小于500,當(dāng)大于500時(shí),減去500。而當(dāng)小于-500時(shí),加上500即可。
該部分的軟件流程圖如下: 1.016.jpg


                              圖4.1 風(fēng)向檢測(cè)流程圖

4.2 風(fēng)速檢測(cè)軟件設(shè)計(jì)
在進(jìn)行風(fēng)速的測(cè)量時(shí),我們需要采集風(fēng)速儀在一定時(shí)間內(nèi)產(chǎn)生脈沖的個(gè)數(shù)。設(shè)計(jì)定時(shí)器T0作為定時(shí)器,定時(shí)時(shí)間為1s,即檢測(cè)在1s內(nèi)產(chǎn)生脈沖的個(gè)數(shù),我們即可得到風(fēng)速儀的轉(zhuǎn)速。設(shè)計(jì)N1為脈沖計(jì)數(shù)個(gè)數(shù),連接至中斷引腳INT1。風(fēng)速儀在進(jìn)行工作時(shí),不斷有脈沖產(chǎn)生。當(dāng)產(chǎn)生脈沖時(shí),我們?cè)谥袛喑绦蛑袑?duì)計(jì)數(shù)值N進(jìn)行加1操作。每當(dāng)1s的定時(shí)到達(dá)時(shí),對(duì)脈沖計(jì)數(shù)個(gè)數(shù)進(jìn)行計(jì)算。由此我們得到了以脈沖個(gè)數(shù)表達(dá)的轉(zhuǎn)速。即v=N1。每秒轉(zhuǎn)過(guò)的度數(shù)為:N1/500*360。乘以風(fēng)速儀的半徑,即為風(fēng)的速度。
風(fēng)速檢測(cè)部分流程圖如下:





圖4.2 風(fēng)速檢測(cè)流程圖
由上圖所示,我們剛開(kāi)始先初始化定時(shí)器T0,以及中斷引腳INT1。
初始化計(jì)數(shù)值N1為0.每當(dāng)有脈沖產(chǎn)生時(shí),計(jì)數(shù)值加1。
定時(shí)器的定時(shí)周期為1s。每當(dāng)1s定時(shí)到達(dá)時(shí),計(jì)算當(dāng)前風(fēng)速,并用顯示屏進(jìn)行顯示。
4.3 主程序設(shè)計(jì)
系統(tǒng)的軟件主要包括風(fēng)速檢測(cè),風(fēng)向檢測(cè),與數(shù)值顯示。在上文中,我們討論了風(fēng)速和風(fēng)向的檢測(cè)部分的軟件流程。
顯示部分僅僅是對(duì)各個(gè)數(shù)值進(jìn)行顯示,比較簡(jiǎn)單,故在此不再贅述。
系統(tǒng)在工作時(shí),處于等待狀態(tài),等待風(fēng)向儀的中斷或者風(fēng)速儀的中斷的脈沖到來(lái),系統(tǒng)轉(zhuǎn)去執(zhí)行相應(yīng)的處理函數(shù)。
在完成對(duì)各部分的處理之后,驅(qū)動(dòng)顯示屏顯示對(duì)應(yīng)的風(fēng)速和風(fēng)向。
整體流程采用順序流程,原理也比較簡(jiǎn)單。整體流程圖如下所示:






1.020.jpg








1.021.jpg







         圖4.3 整體流程圖
如上所示系統(tǒng)的整體流程圖,在程序中,主程序一直等待外部脈沖的到來(lái)。在有脈沖產(chǎn)生后,系統(tǒng)判斷脈沖的來(lái)源,并轉(zhuǎn)而去執(zhí)行各自的處理程序。在完成處理后,驅(qū)動(dòng)顯示屏進(jìn)行顯示。

5 系統(tǒng)測(cè)試與評(píng)價(jià)
5.1 測(cè)試方法
所需儀器:測(cè)試儀器主要包括數(shù)字萬(wàn)用表,秒表,量角器,示波器,USB轉(zhuǎn)TTL設(shè)備。
所需軟件:keil編譯軟件,串口調(diào)試軟件,protues仿真軟件。
調(diào)試前準(zhǔn)備工作:
數(shù)字萬(wàn)用表測(cè)量電壓源(5V和12V)輸出電壓是否為標(biāo)準(zhǔn)電壓,測(cè)量標(biāo)準(zhǔn)電阻是否標(biāo)稱(本文用到的電阻為1k,5k,10k和100k)。示波器檢查風(fēng)速儀和風(fēng)向儀輸出波形是否準(zhǔn)確。用量角器檢測(cè)風(fēng)向儀的精準(zhǔn)度是否足夠。
測(cè)試步驟:
給各模塊上電,用數(shù)字萬(wàn)用表檢查各個(gè)模塊是否處于正常工作電壓。其中單片機(jī),顯示屏模塊等標(biāo)準(zhǔn)電壓應(yīng)處于4~6V,檢查電壓源電壓,防止發(fā)生泄露,電壓源電壓位于12V左右,誤差不超過(guò)1V。
各模塊檢查無(wú)誤,對(duì)各模塊組裝供電。用萬(wàn)用表檢查各模塊電壓是否標(biāo)準(zhǔn),LED指示是否正確。
打開(kāi)單片機(jī)開(kāi)關(guān),讓系統(tǒng)處于等待狀態(tài)。首先對(duì)風(fēng)速儀進(jìn)行檢測(cè)。
打開(kāi)電源開(kāi)關(guān),模擬外界環(huán)境產(chǎn)生風(fēng)源,檢測(cè)風(fēng)速儀的輸出,測(cè)量10次,每次測(cè)試1分鐘。
進(jìn)而對(duì)風(fēng)向儀進(jìn)行檢測(cè)。
讓風(fēng)從不同角度吹動(dòng)風(fēng)向標(biāo),觀察顯示屏顯示的角度是否精確。測(cè)量5次,每次30s。
5.2 測(cè)試結(jié)果與分析
表5-1 風(fēng)速儀檢測(cè)狀況(10次)

次數(shù)

理論(m/s)

實(shí)際(m/s)

1

5

4.5

2

10

9

3

15

14

4

20

19

5

15

15

6

13

13

7

12

12

8

10

10

9

5

4.7

   10

3

3


         表5-2 風(fēng)向儀檢測(cè)


理論

實(shí)際

第一次

10

11

第二次

50

49

第三次

100

103

第四次

150

145

第五次

200

202



誤差分析:我們進(jìn)行了兩類的系統(tǒng)測(cè)試:驗(yàn)證系統(tǒng)風(fēng)速儀狀態(tài)的正確性和風(fēng)向儀檢測(cè)精準(zhǔn)度。在速度檢測(cè)準(zhǔn)確性方面,我們可以達(dá)到百分之九十以上的準(zhǔn)確性,這是由兩方面因素決定的:代碼健壯性以及編碼器模塊的穩(wěn)定性。由于我們?cè)诖a中只是測(cè)試指令的數(shù)值,并沒(méi)有進(jìn)行大量的運(yùn)算,所以其精準(zhǔn)度會(huì)很高。
在風(fēng)向檢測(cè)方面,其誤差出現(xiàn)的原因主要包括:編碼器精度不夠,風(fēng)向波動(dòng)較大,以及單片機(jī)定時(shí)器的誤差。即使存在這些影響因素,我們的精準(zhǔn)度也達(dá)到了百分之九十以上,已經(jīng)足夠面對(duì)日常使用了。


參考文獻(xiàn)
[1] 何立民. 單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì). 北京:航天航空大學(xué)出版社,2002.22-33
[2] 李廣弟. 單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,2001.1-3
[3] 何希才. 新型實(shí)用電子電路400例. 電子工業(yè)出版社,2000.7-9
[4] 趙負(fù)圖. 傳感器集成電路手冊(cè). 第一版,化學(xué)工業(yè)出版社,2004.12-14
[5] 陳伯時(shí). 電力拖動(dòng)自動(dòng)控制系統(tǒng). 第二版,北京:機(jī)械工業(yè)出版社,2000.15-19
[6] 張毅剛,彭喜元. 新編 MCS-51 單片機(jī)應(yīng)用設(shè)計(jì). 第一版,哈爾濱工業(yè)大學(xué)出版社,2003.1-9
[7] 邵貝貝. 單片機(jī)嵌入式應(yīng)用的在線開(kāi)發(fā)方法, 清華大學(xué)出版社,2004.12-19
[8] 楊寧,胡學(xué)軍. 單片機(jī)與控制技術(shù),北京航空航天大學(xué)出版社,2005.44-46
[9] 趙亮,侯國(guó)銳.單片機(jī)C語(yǔ)言編程與實(shí)例,人民郵電出版社,2003.43-48
[10] 黃開(kāi)勝,金華民,蔣狄南. 韓國(guó)智能模型車技術(shù)方案分析,2006.33-39
[11] 胡漢才. 單片機(jī)原理及系統(tǒng)設(shè)計(jì).北京:清華大學(xué)出版社,2003.13-15
[12] 李朝青. 單片機(jī)原理及接口技術(shù).北京:北京航空航天大學(xué)出版社,2003.22-25
[13]《8051 單片機(jī)課程設(shè)計(jì)實(shí)訓(xùn)教材》陳明熒編著,北京:清華大學(xué)大學(xué)社,2005.16-18
[14]《單片機(jī)實(shí)訓(xùn)教程》張迎軍,貢雪梅,北京:北京大學(xué)出版社,2005.34-35
[15]《單片機(jī)應(yīng)用實(shí)訓(xùn)教程》袁啟昌,王宏宇,北京:科學(xué)出版社,2006 .46-49
[16] 胡漢才. 單片機(jī)原理及系統(tǒng)設(shè)計(jì).北京:清華大學(xué)出版社,2003.55-56
[17] 李朝青. 單片機(jī)原理及接口技術(shù).北京:北京航空航天大學(xué)出版社,2003.65-66
[18]黃家升. 基于IAP的單片機(jī)軟件遠(yuǎn)程升級(jí)[J]. 艦船電子對(duì)抗, 2007,(03) 41-44 .
[19]楊美仙. 單片機(jī)的發(fā)展及其應(yīng)用[J]. 科技信息(學(xué)術(shù)研究), 2007,(35) 26-28.
[20]陳壽元. 單片機(jī)多機(jī)通信網(wǎng)絡(luò)改進(jìn)及數(shù)據(jù)通信容錯(cuò)技術(shù)[J]. 山東師范大學(xué)學(xué)報(bào)(自然科學(xué)版), 2006,(02) . 23-28
[21]栗欣,周東輝,孫曉苗,李立. 單片機(jī)程序遠(yuǎn)程升級(jí)的設(shè)計(jì)[J]. 微計(jì)算機(jī)信息, 2006,(32) 33-35.
             致 謝
在我完成本科畢業(yè)設(shè)計(jì)的幾個(gè)月時(shí)間里,我的指導(dǎo)老師呂承啟在學(xué)習(xí)上給予了悉心的指導(dǎo)和極大的幫助,在生活上給予了無(wú)微不至的關(guān)懷與照顧。呂承啟老師深厚的理論功底、嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度、科學(xué)的思維方式,務(wù)實(shí)的工作作風(fēng)令我收益非淺。值此論文完成之際,向呂承啟老師致以最崇高的敬意和衷心的感謝。此外,同時(shí)還要感謝同實(shí)驗(yàn)室和同班的各位同學(xué)給我的無(wú)私的幫助,是他們使我在本科階段的學(xué)習(xí)和生活充滿樂(lè)趣,受益良多,在這里向他們表示由衷的感謝。最后要特別感謝我的父母,在我多年的求學(xué)生涯中,不斷的支持和鼓勵(lì)我,承受了各種的壓力,付出了最真摯的愛(ài)。謹(jǐn)以此文獻(xiàn)給所有關(guān)心我的老師、同學(xué)、朋友。
最后,向評(píng)閱本文的專家、教授致敬!


附錄


單片機(jī)源程序如下:
  1. #include<reg52.h>
  2. #define  uchar  unsigned  char
  3. #define  uint   unsigned  int    //宏定義
  4. sbit lcdrs=              P1^0;
  5. sbit lcden=P1^1;            
  6. #define Da P2     //液晶1602數(shù)據(jù)口
  7. uint temp;    //保存檢測(cè)到的電平數(shù)據(jù)以便比較      
  8. uint count;   //用于計(jì)數(shù)
  9. uint aa,bb;                //用于計(jì)數(shù)
  10. uint speed;   //用來(lái)計(jì)算轉(zhuǎn)速
  11. void delay(uchar z);
  12. void time_init();                                          //定時(shí)器的初始化
  13. void write_com(uchar com);              //液晶寫(xiě)指令
  14. void write_data(uchar date); //液晶寫(xiě)數(shù)據(jù)
  15. void lcd_init();                                          //液晶初始化
  16. void display(uint rate);              //顯赫速度
  17. void int0_init();                                          //定時(shí)器0初始化
  18. void main()
  19. {
  20.   time_init();                                          //定時(shí)器的初始化
  21.   lcd_init();                                          //液晶初始化
  22.   int0_init();                                          //外部中斷初始化
  23.    while(1)
  24.    {
  25.   }
  26. }
  27. void time_init()
  28. {
  29.   TMOD=0x11;              //兩個(gè)定時(shí)器都設(shè)定為工作方式1   十六位定時(shí)計(jì)數(shù)器
  30.   EA=1;                            //開(kāi)啟總中斷

  31.   TH0=(65536-50000)/256;
  32.   TL0=(65536-50000)%256;   //定時(shí)初值
  33.   ET0=1;
  34.   TR0=1;       //開(kāi)中斷

  35. }
  36. void int0_init()   //加個(gè)防偽
  37. {
  38.    EX0=1;  //外部中斷源可以申請(qǐng)中斷
  39.    IT0=1;  //外部中斷源下降沿觸發(fā)
  40. }
  41. void  timer0()   interrupt 1 using 0
  42. {
  43.   TH0=(65536-50000)/256;
  44.   TL0=(65536-50000)%256;              //裝載初值  50ms
  45. aa++;
  46.   if(aa==20)                                               //1s 時(shí)間內(nèi)統(tǒng)計(jì)脈沖個(gè)數(shù)
  47.    {
  48.       aa=0;
  49.                 temp=count*10/16;                  //計(jì)算風(fēng)速,每米轉(zhuǎn)多少圈,每圈設(shè)定多少個(gè)脈沖進(jìn)行計(jì)算
  50.                          //(若設(shè)定風(fēng)速為1m/s時(shí),葉片每秒轉(zhuǎn)2圈,每圈給傳感器8個(gè)脈沖,屏幕顯示的值為count/16)
  51.                 count=0;                                                                         //重新開(kāi)始計(jì)數(shù)脈沖數(shù)
  52.                 display(temp);                                          //把計(jì)算得的結(jié)果顯示出來(lái)
  53.    }
  54.   }
  55. /*******外部中斷*******************/
  56. void  service_int0()                interrupt                 0
  57. {
  58.                 count++;                 //來(lái)一個(gè)下降沿沿就計(jì)一個(gè)脈沖數(shù)
  59. }
  60. /*******顯示函數(shù)***********/
  61. void display(uint rate)
  62. {
  63.    uchar wan,qian, bai,shi,ge;
  64.    wan=rate/10000;   //萬(wàn)轉(zhuǎn)
  65.    qian=rate/1000%10; //
  66.    bai=rate/100%10;
  67.    shi=rate/10%10;
  68.    ge=rate%10;
  69.    write_com(0x80);
  70.    write_data('0'+wan);
  71.    write_data('0'+qian);
  72.    write_data('0'+bai);
  73.    write_data('0'+shi);
  74.    write_data('.');
  75.    write_data('0'+ge);
  76.    write_data('m');  //單位
  77.    write_data('/');
  78.    write_data('s');
  79. }
  80. /******延時(shí)函數(shù)********/
  81. void delay(uint z)
  82. {
  83.    uint x,y;
  84.    for(x=z;x>0;x--)
  85.       for(y=110;y>0;y--) ;
  86. }
  87. /************寫(xiě)指令************/
  88. void write_com(uchar com)
  89. {
  90.               lcdrs=0;
  91.               Da=com;
  92.               delay(1);
  93.               lcden=1;
  94.               delay(1);
  95.               lcden=0;
  96. }
  97. /************寫(xiě)數(shù)據(jù)**********/
  98. void write_data(uchar date)
  99. {
  100.               lcdrs=1;
  101. ……………………

  102. …………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼

完整論文下載(word格式 可編輯):
03-(設(shè)計(jì)論文-自動(dòng)化-2013211320-劉江)風(fēng)速風(fēng)向數(shù)據(jù)采集實(shí)驗(yàn)裝置的設(shè)計(jì)(呂承啟老師).doc (510.92 KB, 下載次數(shù): 124)




評(píng)分

參與人數(shù) 1黑幣 +5 收起 理由
拾浪. + 5 很給力!

查看全部評(píng)分

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

ID:327163 發(fā)表于 2018-5-10 21:20 | 顯示全部樓層
為什么沒(méi)有總圖啊
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表