超聲波測(cè)距畢業(yè)設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩46頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  摘 要</b></p><p>  超聲技術(shù)是一門(mén)以物理、電子、機(jī)械及材料學(xué)為基礎(chǔ)的通用技術(shù),主要涉及超聲波的產(chǎn)生、傳播與接收技術(shù)。超聲波具有聚束、定向及反射、透射等特性。超聲檢測(cè)技術(shù)則使用靈敏度高但功率不大能夠產(chǎn)生和接收各種波形的超聲波換能器,常要求避免產(chǎn)生強(qiáng)烈的超聲效應(yīng),著重于一些描述媒質(zhì)超聲波特性的物理量(如聲速、衰減、聲阻抗等)的測(cè)定。</p>

2、;<p>  根據(jù)聲波在空氣中傳播反射原理, 以超聲波換能器為接口部件, 應(yīng)用單片機(jī)技術(shù)對(duì)超聲波在空氣中的傳播時(shí)間進(jìn)行測(cè)量,從而設(shè)計(jì)了一套超聲波檢測(cè)系統(tǒng)。根據(jù)儀器設(shè)計(jì)時(shí)超聲波傳感器的選擇、計(jì)數(shù)頻率的確定及盲區(qū)對(duì)測(cè)量的影響,提高測(cè)量準(zhǔn)確度的途徑,重點(diǎn)利用軟件修正誤差的方法,使儀器達(dá)到了設(shè)計(jì)指標(biāo),滿(mǎn)足了工業(yè)測(cè)量的實(shí)際需要。</p><p>  關(guān)鍵詞:超聲波;測(cè)距;單片機(jī)</p><

3、;p><b>  Abstract</b></p><p>  The ultrasonic wave technology is a take physics, the electron, the machinery and the material study as the foundation general technology, mainly involves the ult

4、rasonic wave the production, the dissemination and the receive technology. The supersonic processing processing technology often the emphatically application high efficiency continual ultrasonic wave transmitting transdu

5、cer, uses some kind of supersonic effect, takes some description sound field strong and the weak the physical quantity</p><p>  In this paper, according to the principle of ultrasonic transmission in the air

6、, a suit of practical ultrasonic measuring system is designed by u sing the technique of Single Chip Microco(SCM ) and the ultrasonic transducer. The reason of measure in error is analyzed. When instrument is designed ,

7、the selection of ultrasonic sensor ,the ascertainment of frequency count and the influence of blind area on measurement are expounded , the approach of improving measuring accuracy is pointed out , the</p><p&g

8、t;  Keywords : ultrasonic; measuring distance; Single Chip Microco (SCM )</p><p><b>  目 錄</b></p><p><b>  摘要I</b></p><p>  AbstractII</p><p&g

9、t;<b>  1緒論1</b></p><p>  1.1超聲波測(cè)距原理及特性1</p><p>  1.2超聲波測(cè)距應(yīng)用1</p><p>  1.3超聲波發(fā)射頭研究2</p><p>  1.4超聲波的波形及其轉(zhuǎn)換和波速2</p><p>  1.5 超聲波的反射和折射3<

10、/p><p>  1.6 聲波的衰減4</p><p><b>  2總體方案論證5</b></p><p>  2.1 設(shè)計(jì)方案論證5</p><p>  2.2 系統(tǒng)方案6</p><p>  3 AVR單片機(jī)及超聲波測(cè)距原理8</p><p>  3.1 A

11、VR單片機(jī)的簡(jiǎn)介8</p><p>  3.2 AVR單片機(jī)的主要特點(diǎn)9</p><p>  3.3 AVR單片機(jī)的系統(tǒng)結(jié)構(gòu)10</p><p>  3.4 ATmega16單片機(jī)簡(jiǎn)介12</p><p>  3.5 超聲波傳感器測(cè)距原理19</p><p>  4模塊軟件程序21</p>&

12、lt;p>  4.1溫度補(bǔ)償子程序21</p><p>  4.2超聲波發(fā)送子程序23</p><p>  4.3超聲波速度計(jì)算子程序23</p><p>  4.4外部信號(hào)接受子程序24</p><p><b>  4.5主程序25</b></p><p><b>  

13、5誤差分析27</b></p><p>  5.1 超聲波回波的聲強(qiáng)的影響27</p><p>  5.2 超聲波波束入射角的影響27</p><p><b>  結(jié)論30</b></p><p><b>  致謝31</b></p><p><b

14、>  參考文獻(xiàn)32</b></p><p><b>  附錄33</b></p><p><b>  1緒 論</b></p><p>  根據(jù)聲波在空氣中傳播反射原理,以超聲波換能器為接口部件, 應(yīng)用單片機(jī)技術(shù)對(duì)超聲波在空氣中的傳播時(shí)間進(jìn)行測(cè)量,從而設(shè)計(jì)了一套超聲波檢測(cè)系統(tǒng)。對(duì)系統(tǒng)硬件組成、檢測(cè)原理

15、、方法以及系統(tǒng)軟件結(jié)構(gòu)作了詳細(xì)介紹,對(duì)產(chǎn)生測(cè)量誤差的原因進(jìn)行了分析,并提出了解決的途徑和方法。</p><p>  1.1超聲波測(cè)距原理及特性</p><p>  振動(dòng)在彈性媒質(zhì)內(nèi)的傳播稱(chēng)為波。頻率在20~20000Hz之間的機(jī)械波能為人耳所聞,稱(chēng)為聲波;低于20Hz的機(jī)械波稱(chēng)為次聲波;高于20000Hz的機(jī)械波稱(chēng)為超聲波。</p><p>  超聲波在液體、固體中

16、的衰減很少,滲透能力強(qiáng),特別是對(duì)不透光的固體,超聲波能穿透幾十米的厚度。當(dāng)超聲波從一種介質(zhì)射到另一種介質(zhì)時(shí),由于在兩種介質(zhì)中的傳播速度不同,在介質(zhì)界面上會(huì)產(chǎn)生反射、折射和波形轉(zhuǎn)換等現(xiàn)象。超聲波在介質(zhì)中傳播時(shí)與介質(zhì)作用會(huì)產(chǎn)生機(jī)械效應(yīng)、空化效應(yīng)和熱效應(yīng)等等。超聲波的這些特性使其在檢測(cè)技術(shù)中獲得廣泛應(yīng)用,如超聲波無(wú)損探傷、厚度測(cè)量、流速(流量)測(cè)量、超聲波顯微鏡及超生成相等。</p><p>  1.2超聲波測(cè)距應(yīng)用&

17、lt;/p><p> ?、?超聲波流量計(jì):測(cè)量水的流速,這是因?yàn)槌暡ㄊ且环N機(jī)械波,依靠介質(zhì)才能傳播,其傳播方向受介質(zhì)運(yùn)動(dòng)影響,因此,水可以改變傳播方向。進(jìn)而可以做出超聲波流量計(jì),可應(yīng)以自來(lái)水、工業(yè)用水、農(nóng)業(yè)用水等進(jìn)行測(cè)量。還適用于下水道、農(nóng)業(yè)灌渠、河流等流速的測(cè)量。</p><p>  ⑵ 超聲波測(cè)距儀:用以測(cè)量液位、井深、管道長(zhǎng)度、建筑測(cè)量、厚度測(cè)量等。</p><p&

18、gt;  ⑶ 報(bào)警器:盲人探路器、防盜報(bào)警等</p><p> ?、?定位系統(tǒng):用以探測(cè)超聲波發(fā)射源位置,在生活中有重要意義,如人說(shuō)話、呼吸的時(shí)候不光產(chǎn)生聲波,同樣也會(huì)產(chǎn)生部分超聲波,呼出的氣體分子與空氣分子碰撞就產(chǎn)生超聲波。氣管漏氣,輪胎漏氣,閥門(mén)泄漏、閥門(mén)氣蝕、齒輪運(yùn)行、電暈放電等都會(huì)產(chǎn)生超聲波。通過(guò)接收器看以看出哪里有漏洞。</p><p>  1.3超聲波發(fā)射頭研究</p&g

19、t;<p>  保持vi不隨f變化,測(cè)量數(shù)據(jù)如下:(頻率單位:khz,輸出電壓為峰峰值,單位 V)</p><p>  表1-1. Vo隨f變化表</p><p>  圖1-1 超聲波發(fā)送原理</p><p>  從圖中可以得出結(jié)論:超聲波發(fā)射的串聯(lián)諧振頻率有兩個(gè),一個(gè)是40khz,一個(gè)是51khz;其對(duì)應(yīng)的阻抗分別為:1.27kΩ和381Ω</

20、p><p>  1.4超聲波的波形及其轉(zhuǎn)換和波速</p><p>  由于聲源在介質(zhì)中施力方向與波在介質(zhì)中傳播方向的不同,聲波在介質(zhì)中傳播時(shí)有三種主要波形。縱波,質(zhì)點(diǎn)的振動(dòng)方向與波的傳播方向一致,它能在固體、液體和氣體介質(zhì)中傳播。橫波,質(zhì)點(diǎn)振動(dòng)方向垂直于波的傳播方向,它只能在固體介質(zhì)中傳播。表面波,質(zhì)點(diǎn)的振動(dòng)介于縱波和橫波之間,沿著表面?zhèn)鞑ィ穹S深度增加而迅速衰減;表面波質(zhì)點(diǎn)振動(dòng)的軌跡是橢圓

21、形,質(zhì)點(diǎn)位移的長(zhǎng)軸垂直于傳播方向,質(zhì)點(diǎn)位移的短軸平行于傳播方向;表面波只能在固體表面?zhèn)鞑ァ?lt;/p><p>  當(dāng)縱波以某一角度入射到第二介質(zhì)(固體)的界面上時(shí),除有縱波的反射、折射外,還會(huì)有橫波的反射和折射,如圖所示。在一定條件下還能產(chǎn)生表面波。各種波形都符合波的反射定律和折射定律。</p><p>  圖1-2 L-入射縱波;L1-反射縱波;L2-折射縱波;S1-反射橫波;S2-折射橫

22、波</p><p>  超聲波的傳播速度,取決于介質(zhì)的彈性常數(shù)及介質(zhì)的密度,即。</p><p>  由于氣體和液體的剪切彈性模量為零,所以超聲波在氣體和液體中沒(méi)有橫波,只能傳播縱波。其波速為</p><p><b> ?。?-1)</b></p><p>  式中,K—介質(zhì)的體積彈性模量,它是體積(絕熱的)壓縮性的倒數(shù)

23、;—介質(zhì)的密度。</p><p>  在固體介質(zhì)中,縱波、橫波、表面波三者的聲速分別為:</p><p><b>  (1-2)</b></p><p><b> ?。?-3)</b></p><p><b>  (1-4)</b></p><p>  

24、式中,E-固體介質(zhì)的楊氏模量;μ-固體介質(zhì)的泊松比;G-固體介質(zhì)的剪切彈性模量;-介質(zhì)密度。對(duì)于固體介質(zhì),μ介于0~0.5之間,因此一般可認(rèn)為。</p><p>  1.5 超聲波的反射和折射</p><p>  當(dāng)超聲波從一種介質(zhì)傳播到另一種介質(zhì)時(shí),在兩介質(zhì)的分界面上將發(fā)生反射和折射,如下圖。超聲波的反射和折射滿(mǎn)足波的反射定律和折射定律,即</p><p><

25、;b>  (1-5)</b></p><p>  圖1-3 超聲波的反射與折射</p><p><b>  1.6 聲波的衰減</b></p><p>  超聲波在一種介質(zhì)中傳播的時(shí)候,隨著距離的增加,能量逐漸衰減。其聲壓和聲強(qiáng)的衰減規(guī)律為:</p><p><b>  (1-6)</b

26、></p><p><b>  (1-7)</b></p><p>  式中,、-聲波在距離聲源處的聲壓和聲強(qiáng);P、I-聲波在距離聲源處的聲壓和聲強(qiáng);-衰減系數(shù)。</p><p>  超聲波在介質(zhì)中傳播時(shí),能量的衰減決定于聲波的擴(kuò)散、散射和吸收。在理想介質(zhì)中,聲波的衰減僅來(lái)之于聲波的擴(kuò)散,就是隨著聲波傳播距離的增加,在單位面積波面內(nèi)聲能量

27、將會(huì)減弱。散射衰減是聲波在固體介質(zhì)中顆粒界面上的散射,或在流體介質(zhì)中有懸浮粒子時(shí)使超聲波散射。而聲波的吸收是由于介質(zhì)的導(dǎo)熱性、黏滯性及彈性滯后造成的。介質(zhì)吸收聲能并轉(zhuǎn)化為熱能。吸收隨聲波頻率升高而增加。吸收系數(shù)因介質(zhì)材料性質(zhì)而異,但晶粒越粗,聲波頻率越高,則衰減愈大。最大探測(cè)厚度往往收衰減系數(shù)限制。所以,工件的厚度、球墨鑄鐵的球化程度、泥漿的濃度等量都可以利用這種原理進(jìn)行測(cè)量。</p><p>  經(jīng)常以dB/c

28、m或dB/mm為單位來(lái)表示衰減系數(shù)。在一般探測(cè)頻率上材料的衰減系數(shù)在1到幾百之間。若衰減系數(shù)為1dB/mm,聲波穿透1mm時(shí),則衰減1dB,即衰減10%;聲波穿透20mm,則衰減20dB,即衰減90%。</p><p><b>  2總體方案論證</b></p><p>  本章從系統(tǒng)方案等一些方面來(lái)進(jìn)行論證。本設(shè)計(jì)主要是進(jìn)行距離的測(cè)量和報(bào)警,設(shè)計(jì)中涉及到的內(nèi)容較多,

29、主要是將單片機(jī)控制模塊、超聲波測(cè)距模塊、蜂鳴器報(bào)警模塊、4位數(shù)碼管顯示模塊這幾個(gè)模塊結(jié)合起來(lái)。而本設(shè)計(jì)的核心是超聲波測(cè)距模塊,其他相關(guān)模塊都是在測(cè)距的基礎(chǔ)上拓展起來(lái)的,測(cè)距模塊是利用超聲波傳感器,之后選擇合適單片機(jī)芯片,以下就是從相關(guān)方面來(lái)論述的。</p><p>  2.1 設(shè)計(jì)方案論證</p><p><b> ?、偶す鉁y(cè)距傳感器</b></p>

30、<p>  激光傳感器利用激光的方向性強(qiáng)和傳光性好的特點(diǎn),它工作時(shí)先由激光傳感器對(duì)準(zhǔn)障礙物發(fā)射激光脈沖,經(jīng)障礙物反射后向各個(gè)方向散射,部分散射光返回到接受傳感器,能接受其微弱的光信號(hào),從而記錄并處理光脈沖發(fā)射到返回所經(jīng)歷的時(shí)間即可測(cè)定距離,即用往返時(shí)間的一半乘以光速就能得到距離。其優(yōu)點(diǎn)是測(cè)量的距離遠(yuǎn)、速度快、測(cè)量精確度高、量程范圍大,缺點(diǎn)是對(duì)人體存在安全問(wèn)題,而且制作的難度大成本也比較高。</p><p&g

31、t;<b> ?、萍t外線測(cè)距傳感器</b></p><p>  紅外線測(cè)距傳感器利用的就是紅外線信號(hào)在遇到障礙物其距離的不同則其反射的強(qiáng)度也不同,根據(jù)這個(gè)特點(diǎn)從而對(duì)障礙物的距離的遠(yuǎn)近進(jìn)行測(cè)量的。其優(yōu)點(diǎn)是成本低廉,使用安全,制作簡(jiǎn)單,缺點(diǎn)就是測(cè)量精度低,方向性也差,測(cè)量距離近。</p><p><b> ?、浅暡▊鞲衅?lt;/b></p>

32、<p>  超聲波是一種超出人類(lèi)聽(tīng)覺(jué)極限的聲波即其振動(dòng)頻率高于20 kHz的機(jī)械波。超聲波傳感器在工作的時(shí)候就是將電壓和超聲波之間的互相轉(zhuǎn)換,當(dāng)超聲波傳感器發(fā)射超聲波時(shí),發(fā)射超聲波的探頭將電壓轉(zhuǎn)化的超聲波發(fā)射出去,當(dāng)接收超聲波時(shí),超聲波接收探頭將超聲波轉(zhuǎn)化的電壓回送到單片機(jī)控制芯片。超聲波具有振動(dòng)頻率高、波長(zhǎng)短、繞射現(xiàn)象小而且方向性好還能夠?yàn)榉瓷渚€定向傳播等優(yōu)點(diǎn),而且超聲波傳感器的能量消耗緩慢有利于測(cè)距。在中、長(zhǎng)距離測(cè)量時(shí)

33、,超聲波傳感器的精度和方向性都要大大優(yōu)于紅外線傳感器,但價(jià)格也稍貴。從安全性,成本、方向性等方面綜合考慮,超聲波傳感器更適合設(shè)計(jì)要求。</p><p>  根據(jù)對(duì)以上三種傳感器性能的比較,雖然能明顯看出來(lái)激光傳感器是比較理想的選擇,但是它的價(jià)格卻比較高,而且安全度不夠高。而且汽車(chē)在行駛的過(guò)程中超聲波傳感器測(cè)距時(shí)應(yīng)具有較強(qiáng)的抗干擾能力和較短的響應(yīng)時(shí)間,因此選用超聲波傳感器作為此設(shè)計(jì)方案的傳感器探頭。</p&g

34、t;<p><b>  2.2 系統(tǒng)方案</b></p><p>  此方案選擇51單片機(jī)作為控制核心,所測(cè)得的距離數(shù)值由4位共陽(yáng)極數(shù)碼管顯示,與障礙物之間的不同距離利用蜂鳴器頻率的不同報(bào)警聲提示,超聲波發(fā)射信號(hào)由51單片機(jī)的P0.1口送出到超聲波發(fā)射電路,將超聲波發(fā)送出去,超聲波接收電路由CX20106A芯片和超聲波接收探頭組成的電路構(gòu)成,報(bào)警系統(tǒng)由蜂鳴器電路構(gòu)成。本設(shè)計(jì)中

35、將收發(fā)超聲波的探頭分離這樣不會(huì)使收發(fā)信號(hào)混疊,從而能避免干擾,可以很好的提高系統(tǒng)的可靠性。本設(shè)計(jì)的汽車(chē)防撞裝置的系統(tǒng)框圖如圖2.1所示。</p><p>  圖2.1 汽車(chē)防撞裝置的系統(tǒng)框圖</p><p>  本設(shè)計(jì)由Keil編程軟件對(duì)51單片機(jī)進(jìn)行編程,51單片機(jī)在執(zhí)行程序后由P0.1端口產(chǎn)生40kHz的脈沖信號(hào)通過(guò)74LS04電路進(jìn)行放大并送到到超聲波發(fā)射探頭,產(chǎn)生超聲波。在超聲波

36、發(fā)射電路啟動(dòng)的同時(shí)單片機(jī)啟動(dòng)中斷定時(shí)器,利用其計(jì)數(shù)的功能記錄超聲波發(fā)射超聲波到接收到超聲波回波的時(shí)間。當(dāng)接收回射的超聲波時(shí),接收電路的輸出端產(chǎn)生負(fù)跳變輸出到單片機(jī)產(chǎn)生中斷申請(qǐng),執(zhí)行外部中斷子程序計(jì)算距離。</p><p>  結(jié)合各方面的因素考慮,依據(jù)設(shè)計(jì)的要求,查閱相關(guān)數(shù)據(jù)資料,選擇了超聲波測(cè)距傳感器TR40-16Q(其中T表示超聲波發(fā)射探頭,R表示超聲波接收探頭),綜合考慮設(shè)計(jì)的要求出于簡(jiǎn)便角度,選用了HC-

37、SR04超聲波集成模塊。此超聲波模塊的最大探測(cè)距離為5 m,精度可以達(dá)到0.3 cm,盲區(qū)為2 cm,而且發(fā)射擴(kuò)散角不大于15°,更有利于測(cè)距的準(zhǔn)確性。而且,此模塊的工作頻率范圍為39 kHz~41 kHz左右,完全能在40 kHz工作頻率工作。</p><p>  由于超聲波的發(fā)射和接收是分開(kāi)發(fā)送和接收的,所以發(fā)射探頭和接收探頭必須在同一條水平行直線上,這樣才能準(zhǔn)確地接收反射的回波。而由于測(cè)量的距離不

38、同和發(fā)射擴(kuò)散角所引起的誤差以及超聲波信號(hào)在空氣中傳播的過(guò)程中的超聲波衰減問(wèn)題,發(fā)射探頭和接收探頭距離不可以太遠(yuǎn),而且還要避免發(fā)射探頭對(duì)接收探頭在接收信號(hào)時(shí)產(chǎn)生的干擾,所以二者又不能靠得太近。根據(jù)對(duì)相關(guān)資料查閱,將兩探頭之間的距離定在5 cm~8 cm最為合適。本設(shè)計(jì)所用的HC-SR04模塊的超聲波探頭之間的距離大約在6 cm左右。</p><p>  3 AVR單片機(jī)及超聲波測(cè)距原理</p><

39、;p>  3.1 AVR單片機(jī)的簡(jiǎn)介</p><p>  ATMEL公司是世界上有名的生產(chǎn)高性能、低功耗、非易失性存儲(chǔ)器和各種數(shù)字模擬IC芯片的半導(dǎo)體制造公司。在單片機(jī)微控制器方面,ATMEL公司有AT89、AT90和ARM三個(gè)系列單片機(jī)的產(chǎn)品。ATMEL公司在其單片機(jī)產(chǎn)品中,融入先進(jìn)的E2PROM電可擦除和Flash ROM閃速存儲(chǔ)器技術(shù),使得該公司的單片機(jī)具備了優(yōu)秀的品質(zhì),在結(jié)構(gòu)、性能和功能等方面都有明

40、顯的優(yōu)勢(shì)。</p><p>  自1983年INTEL公司推出8051單片機(jī)系列至今已有20年,ATMEL公司把8051內(nèi)核與其擅長(zhǎng)的Flash制造技術(shù)相結(jié)合,推出了片內(nèi)集成可重復(fù)擦寫(xiě)10000次以上Flash程序存儲(chǔ)器、低功耗、8051內(nèi)核的AT89系列單片機(jī)。該系列的典型產(chǎn)品有AT84C51、AT84C52、AT89C1051、AT84C2051,在我國(guó)的單片機(jī)市場(chǎng)上占有相當(dāng)大的份額,得到了廣泛的使用。<

41、;/p><p>  由于8051本身結(jié)構(gòu)的先天性不足和近年來(lái)各種采用新型結(jié)構(gòu)和新技術(shù)的單片機(jī)不斷涌現(xiàn),現(xiàn)在的單片機(jī)市場(chǎng)是百花齊放。ATMEL在這種強(qiáng)大市場(chǎng)壓力下,發(fā)揮Flash存儲(chǔ)器的技術(shù)特長(zhǎng),與1997年研發(fā)并推出了全新配置的、采用精簡(jiǎn)指令集RISC(Reduced Instruction Set CPU)結(jié)構(gòu)的新型單片機(jī),簡(jiǎn)稱(chēng)AVR單片機(jī)。</p><p>  精簡(jiǎn)指令集RISC結(jié)構(gòu)是20

42、世紀(jì)90年代開(kāi)發(fā)出來(lái)的,綜合了半導(dǎo)體集成技術(shù)和軟件性能的新結(jié)構(gòu)。AVR單片機(jī)采用RISC結(jié)構(gòu),具有1MIPS/MHz的高速運(yùn)行處理能力。</p><p>  為了縮短產(chǎn)品進(jìn)入市場(chǎng)的時(shí)間,簡(jiǎn)化系統(tǒng)的維護(hù)和支持,對(duì)于有單片機(jī)組成的嵌入式系統(tǒng)來(lái)說(shuō),用高級(jí)語(yǔ)言編程已成為一種標(biāo)準(zhǔn)編程方法。AVR結(jié)構(gòu)單片機(jī)的開(kāi)發(fā)目的就在于能夠更好的采用高級(jí)語(yǔ)言(例如C語(yǔ)言、BASIC語(yǔ)言)來(lái)編寫(xiě)嵌入式系統(tǒng)的系統(tǒng)程序,從而能更高效地開(kāi)發(fā)出目標(biāo)

43、代碼。為了對(duì)目標(biāo)代碼大小、性能及功能進(jìn)行優(yōu)化,AVR單片機(jī)的結(jié)構(gòu)中采用了大型快速存儲(chǔ)寄存器組和快速的單調(diào)周期指令系統(tǒng)。</p><p>  傳統(tǒng)的基于累加器的結(jié)構(gòu)單片機(jī),如8051,需要大量的程序代碼,以實(shí)現(xiàn)在累加器和存儲(chǔ)器之間的數(shù)據(jù)傳輸。而在AVR單片機(jī)中,采用32個(gè)通用工作寄存器組,用32個(gè)通用工作寄存器代替了累加器,從而避免了在傳統(tǒng)結(jié)構(gòu)中累加器和存儲(chǔ)器之間的數(shù)據(jù)傳送造成的瓶頸現(xiàn)象。</p>&

44、lt;p>  AVR單片機(jī)運(yùn)用Harvard結(jié)構(gòu),在前一條指令執(zhí)行的時(shí)候就取出現(xiàn)行的指令,然后以一個(gè)周期執(zhí)行指令。在其他的CISE以及類(lèi)似的RISE結(jié)構(gòu)的單片機(jī)中,外部振蕩器的時(shí)鐘被分頻降低到傳統(tǒng)的內(nèi)部指令執(zhí)行周期,這種分頻最大達(dá)12倍(8051)。AVR單片機(jī)是用一個(gè)時(shí)鐘周期執(zhí)行一條指令的,它是在8位單片機(jī)中第一個(gè)真正的RISE結(jié)構(gòu)的單片機(jī)。</p><p>  由于AVR單片機(jī)采用了Harvard結(jié)構(gòu),

45、所以它的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器是分開(kāi)組織和尋址的。尋址空間分別為可直接訪問(wèn)1~128K字節(jié)的程序存儲(chǔ)器和64K字節(jié)的數(shù)據(jù)存儲(chǔ)器。同時(shí),由32個(gè)通用工作寄存器所構(gòu)成的寄存器組被雙向映射,因此,可以采用讀寫(xiě)寄存器和讀寫(xiě)片內(nèi)快速SRAM存儲(chǔ)器兩種方式來(lái)訪問(wèn)32個(gè)通用工作寄存器。</p><p>  AVR單片機(jī)采用低功率、非揮發(fā)的COMS工藝制造,內(nèi)部分別集成Flash、E2PROM和SRAM三種不同性能和用途的存儲(chǔ)器

46、。除了可以通過(guò)SPI口和一般的編程器對(duì)AVR單片機(jī)的Flash程序存儲(chǔ)器和E2PROM數(shù)據(jù)存儲(chǔ)器進(jìn)行編程外,絕大多數(shù)的AVR單片機(jī)還具有在線編程(ISP)的特點(diǎn),這給學(xué)習(xí)和使用AVR單片機(jī)帶來(lái)了極大的方便。</p><p>  3.2 AVR單片機(jī)的主要特點(diǎn)</p><p>  AVR單片機(jī)吸取了PIC及8051單片機(jī)的有點(diǎn),同時(shí)還做了一些重大改進(jìn),其主要的優(yōu)點(diǎn)如下:</p>

47、<p> ?、?片內(nèi)集成可擦10000次以上的Flash程序存儲(chǔ)器。由于AVR采用16位的指令,所以一個(gè)程序的存儲(chǔ)單元為16位,即XXXX*16(也可以理解為8位,即2*XXXX*8)。AVR的數(shù)據(jù)存儲(chǔ)器還是以8個(gè)Bit(位)為一個(gè)單元,因此AVR還是屬于8位單片機(jī)。</p><p>  ⑵ 采用COMS工藝技術(shù),高速度(50ns)、低功耗(μA)、具有SLEEP(休眠)功能。AVR單片機(jī)的指令執(zhí)行速

48、度可達(dá)50ns(20MHz),而耗電則在1μA~2.5mA之間(典型功耗,WDT關(guān)閉時(shí)為100nA)。AVR運(yùn)用Harvard結(jié)構(gòu)概念,具有欲取指令的特性,即對(duì)程序存儲(chǔ)和數(shù)據(jù)存取使用不同的存儲(chǔ)器和總線。當(dāng)執(zhí)行某一指令時(shí),下一指令被預(yù)先從程序存儲(chǔ)器中取出,這使得指令可以在每一個(gè)時(shí)鐘周期內(nèi)執(zhí)行。 </p><p> ?、?高度保密(LOCK)??啥啻尾翆?xiě)的FLASH具有多重密碼保護(hù)鎖死(LOCK)功能,因此可低成本高

49、速度地完成產(chǎn)品商品化,并且可多次更改程序(產(chǎn)品升級(jí))而不必浪費(fèi)IC或電路板,大大提高了產(chǎn)品的質(zhì)量及競(jìng)爭(zhēng)力。</p><p> ?、?工業(yè)級(jí)(WDT)產(chǎn)品。具有大電流(灌電流)10mA~20mA或40mA(單一輸出)的特點(diǎn),可直接驅(qū)動(dòng)SSR或繼電器。有看門(mén)狗定時(shí)器(WDT)安全保護(hù),可防止程序飛走,提高產(chǎn)品的抗干擾能力。</p><p>  ⑸ 超功能精簡(jiǎn)指令。具有32個(gè)通用工作寄存器(相當(dāng)

50、于8051中的32個(gè)累加器),克服了單一累加器數(shù)據(jù)處理造成的瓶頸現(xiàn)象,128~4K字節(jié)SRAM可靈活使用指令運(yùn)算,并可用功能很強(qiáng)的C語(yǔ)言編程,易學(xué)、易寫(xiě)、易移植。</p><p> ?、?程序?qū)懭肫骷梢圆⑿袑?xiě)入(用編程器寫(xiě)入),也可以使用串行在線編程(ISP)方法下載寫(xiě)入,也就是說(shuō)不必將單片機(jī)芯片從系統(tǒng)上拆下,拿到萬(wàn)用編程器上燒寫(xiě),而可直接在電路板上進(jìn)行程序的修改、燒寫(xiě)等操作,方便產(chǎn)品升級(jí),尤其是采用SMD封裝

51、,更利于產(chǎn)品微型化。</p><p>  ⑺ 除了并行I/O口輸入/輸出特性與PIC的HI/LOW輸出及三態(tài)高阻抗HI-Z輸入相同外,還設(shè)定與8051系列內(nèi)部上有上拉電阻的輸入端功能相似的功能,以適應(yīng)各種實(shí)際應(yīng)用特性所需(多功能I/O口)。只有AVR才是真正的I/O口,能正確反應(yīng)I/O口輸入/輸出的真實(shí)情況。</p><p> ?、?單片機(jī)內(nèi)集成了模擬比較器,I/O口可作A/D轉(zhuǎn)換用,組成

52、廉價(jià)的A/D轉(zhuǎn)換器。</p><p>  像8051一樣,AVR單片機(jī)有多個(gè)固定中斷向量入口地址,可快速響應(yīng)中斷,而不會(huì)像PIC那樣,所有向量都在同一向量地址發(fā)生,需要由程序判別后才可響應(yīng),從而失去了控制的最佳機(jī)會(huì)。</p><p> ?、?同PIC一樣,AVR單片機(jī)可重新設(shè)置啟動(dòng)復(fù)位。AVR也有內(nèi)部電源上電啟動(dòng)計(jì)數(shù)器,可降低電平復(fù)位(RESET)直接接到VCC端。當(dāng)系統(tǒng)上電時(shí)利用內(nèi)部的R

53、C看門(mén)狗定時(shí)器可延遲MCU啟動(dòng),執(zhí)行系統(tǒng)程序。這種延時(shí)可使I/O口穩(wěn)定后再執(zhí)行程序,提高了單片機(jī)的工作可靠性,同時(shí)也省略了外加的復(fù)位延時(shí)電路。</p><p> ?、?具有休眠省電功能(POWER DOWN)及閑置(IDLE)低功耗功能的工作方式。</p><p> ?、?AT90S1200等部分AVR器件具有內(nèi)部的RC振蕩器,提供1KHz~8KHz的工作⑿ 時(shí)鐘,使該類(lèi)單片機(jī)無(wú)需外加晶振

54、等時(shí)鐘電路原件即可工作簡(jiǎn)單方便。</p><p>  有8位和16位的計(jì)數(shù)器/定時(shí)器(C/T),可作比較器、計(jì)數(shù)器、外部中斷和PWM(也可作D/A)用于控制輸出。</p><p> ?、?有串行異步通信UART硬件接口電路,采用單獨(dú)的波特率發(fā)生器,并不占用定時(shí)器。有SPI傳輸功能。因其高速,故可以在一般標(biāo)準(zhǔn)整數(shù)頻率下工作,而波特率可達(dá)576Kbps。</p><p>

55、; ?、?AT90S4414及AT90S8515具有可擴(kuò)展外部存儲(chǔ)器達(dá)64KB的能力,它們的引腳排列及功能與8051相似,即可替代8051系列單片機(jī)(8751/8452)的應(yīng)用系統(tǒng)。當(dāng)然,在硬件、軟件上也帶來(lái)很多有點(diǎn)(WDT看門(mén)狗,模擬比較器作A/D,PWM作D/A等)。</p><p>  ⒂ 工作電壓范圍為2.7V~6.0V,電源抗干擾能力強(qiáng)。</p><p> ?、?多通道的10位A

56、/D及實(shí)時(shí)時(shí)鐘(RTC)。具有8路10位A/D器件的有AT90S4434、⒄ AT90S8535,具有6路10位A/D器件的有AT90S2333、AT90S4433。</p><p> ?、?AVR單片機(jī)還在片內(nèi)集成了可擦寫(xiě)100000次。</p><p>  3.3 AVR單片機(jī)的系統(tǒng)結(jié)構(gòu)</p><p>  為了提高M(jìn)CU并行處理的運(yùn)行效率,AVR單片機(jī)采用了程

57、序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器使用不同的存儲(chǔ)空間和存儲(chǔ)總線的Harvard結(jié)構(gòu)。算術(shù)邏輯單元(ALU)使用單級(jí)流水線操作方式對(duì)程序存儲(chǔ)器進(jìn)行訪問(wèn),在執(zhí)行當(dāng)前一條指令,也完成了從程序存儲(chǔ)器中取出下一條將要執(zhí)行指令的操作,因此執(zhí)行一條指令僅需要一個(gè)時(shí)鐘周期。圖為AVR單片機(jī)的系統(tǒng)結(jié)構(gòu)圖。</p><p>  圖3-1 AVR單片機(jī)的系統(tǒng)結(jié)構(gòu)圖</p><p>  在AVR的硬件內(nèi)核中,有一個(gè)有32個(gè)訪

58、問(wèn)操作時(shí)間只需要一個(gè)時(shí)鐘周期的8位通用工作寄存器所組成的“快速訪問(wèn)寄存器組”?!翱焖僭L問(wèn)”意味著在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一個(gè)完整的ALU操作。在一個(gè)標(biāo)準(zhǔn)的ALU操作中包含了三個(gè)過(guò)程:即從寄存器組中取出兩個(gè)操作數(shù),操作數(shù)被執(zhí)行,將執(zhí)行結(jié)果寫(xiě)入目的寄存器中。這三個(gè)過(guò)程是在一個(gè)時(shí)鐘周期內(nèi)完成的,構(gòu)成一個(gè)完整的ALU操作。</p><p>  在32個(gè)通用工作寄存器中,有6個(gè)寄存器可以合并成3個(gè)16位的,用于對(duì)數(shù)據(jù)存儲(chǔ)器空間

59、進(jìn)行間接尋址的間接地址寄存器(存放地址指針),以實(shí)現(xiàn)高效的地址計(jì)算。這3個(gè)16位的間接地址寄存器稱(chēng)為:X寄存器、Y寄存器和Z寄存器。其中Z寄存器還能作為間接尋址程序存儲(chǔ)器空間的地址存儲(chǔ)器,用于在Flash程序存儲(chǔ)器空間進(jìn)行查表操作。</p><p>  算術(shù)邏輯單元(ALU)支持存儲(chǔ)器之間,立即數(shù)與寄存器之間的算術(shù)與邏輯運(yùn)算功能。ALU也執(zhí)行單一的16位格式,只有少數(shù)指令為32位格式。因此,AVR的程序存儲(chǔ)器單元

60、為16位,即每個(gè)地址單元存放一個(gè)單一16位指令字,而一條32位的指令則要占據(jù)2個(gè)程序存儲(chǔ)器單元。</p><p>  在進(jìn)入中斷和子程序調(diào)用過(guò)程時(shí),程序計(jì)數(shù)器PC的返回地址將被存儲(chǔ)于堆棧中。堆??臻g將占用數(shù)據(jù)存儲(chǔ)器(SRAM)中一段連續(xù)的地址,因此,堆棧空間的大小僅受到系統(tǒng)總的數(shù)據(jù)存儲(chǔ)器(SARM)的大小以及系統(tǒng)程序?qū)RAM的使用量的限制。用戶(hù)程序應(yīng)在系統(tǒng)上電復(fù)位后,對(duì)一個(gè)16位的堆棧指針寄存器SP進(jìn)行初始化設(shè)

61、置(或在子程序和中斷程序被執(zhí)行之前)??梢允褂脤?duì)I/O寄存器空間進(jìn)行讀寫(xiě)訪問(wèn)的指令對(duì)堆棧指針寄存器SP進(jìn)行操作。</p><p>  在AVR中,說(shuō)有的存儲(chǔ)器空間都是線性的。數(shù)據(jù)存儲(chǔ)器(SRAM)可以通過(guò)5種不同的尋址方式進(jìn)行訪問(wèn)。</p><p>  AVR的中斷控制由I/O寄存器空間的中斷控制寄存器和狀態(tài)寄存器中的全局中斷使能位組成。每個(gè)中斷都分別對(duì)應(yīng)一個(gè)中斷向量(中斷入口地址)。所有

62、的中斷向量構(gòu)成了中斷向量表,該中斷向量表位于Flash程序存儲(chǔ)器空間的最前面。中斷的中斷向量地址越小,其中斷的優(yōu)先級(jí)越高。</p><p>  I/O空間為連續(xù)的64個(gè)I/O寄存器空間,它們分別對(duì)應(yīng)MCU各個(gè)外圍功能的控制和數(shù)據(jù)寄存器地址,如控制寄存器、定時(shí)器/計(jì)數(shù)器、A/D轉(zhuǎn)換器及其他的I/O功能等。I/O寄存器空間可使用I/O寄存器訪問(wèn)指令直接訪問(wèn),也可將其映射為通用工作寄存器組后的數(shù)據(jù)存儲(chǔ)器空間,使用數(shù)據(jù)存

63、儲(chǔ)器訪問(wèn)指令進(jìn)行訪問(wèn)。I/O寄存器空間在數(shù)據(jù)存儲(chǔ)器空間的映射地址為$0020~$005F。</p><p>  3.4 ATmega16單片機(jī)簡(jiǎn)介</p><p><b>  產(chǎn)品特性:</b></p><p>  高性能、低功耗的8位AVR微處理器</p><p> ?、?先進(jìn)的RISC結(jié)構(gòu)</p>&l

64、t;p>  – 131 條指令 – 大多數(shù)指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期</p><p>  – 32個(gè)8 位通用工作寄存器</p><p><b>  – 全靜態(tài)工作</b></p><p>  – 工作于16 MHz時(shí)性能高達(dá)16 MIPS</p><p>  – 只需兩個(gè)時(shí)鐘周期的硬件乘法器</p>

65、<p>  ⑶ 非易失性程序和數(shù)據(jù)存儲(chǔ)器</p><p>  – 16K字節(jié)的系統(tǒng)內(nèi)可編程Flash</p><p>  擦寫(xiě)壽命: 10,000次</p><p>  – 具有獨(dú)立鎖定位的可選Boot代碼區(qū)</p><p>  通過(guò)片上Boot程序?qū)崿F(xiàn)系統(tǒng)內(nèi)編程</p><p><b>  真正

66、的同時(shí)讀寫(xiě)操作</b></p><p>  – 512 字節(jié)的EEPROM</p><p>  擦寫(xiě)壽命: 100,000次</p><p>  – 1K字節(jié)的片內(nèi)SRAM</p><p>  – 可以對(duì)鎖定位進(jìn)行編程以實(shí)現(xiàn)用戶(hù)程序的加密</p><p>  圖3-2 單片機(jī)簡(jiǎn)圖</p>&l

67、t;p> ?、?JTAG 接口(與IEEE 1149.1標(biāo)準(zhǔn)兼容)</p><p>  – 符合JTAG標(biāo)準(zhǔn)的邊界掃描功能</p><p>  – 支持?jǐn)U展的片內(nèi)調(diào)試功能</p><p>  – 通過(guò)JTAG接口實(shí)現(xiàn)對(duì)Flash、EEPROM、熔絲位和鎖定位的編程</p><p><b> ?、?外設(shè)特點(diǎn):</b>

68、</p><p>  – 兩個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8 位定時(shí)器/計(jì)數(shù)器</p><p>  – 一個(gè)具有預(yù)分頻器、比較功能和捕捉功能的16 位定時(shí)器/計(jì)數(shù)器</p><p>  – 具有獨(dú)立振蕩器的實(shí)時(shí)計(jì)數(shù)器RTC</p><p><b>  – 四通道PWM</b></p><p> 

69、 – 8路10位ADC</p><p><b>  8個(gè)單端通道</b></p><p>  TQFP封裝的7個(gè)差分通道</p><p>  2個(gè)具有可編程增益(1x,10x,或200x)的差分通道</p><p>  – 面向字節(jié)的兩線接口</p><p>  – 兩個(gè)可編程的串行USART&l

70、t;/p><p>  – 可工作于主機(jī)/從機(jī)模式的SPI串行接口</p><p>  – 具有獨(dú)立片內(nèi)振蕩器的可編程看門(mén)狗定時(shí)器</p><p><b>  – 片內(nèi)模擬比較器</b></p><p> ?、?特殊的處理器特點(diǎn):</p><p>  – 上電復(fù)位以及可編程的掉電檢測(cè)</p>

71、<p>  – 片內(nèi)經(jīng)過(guò)標(biāo)定的RC振蕩器</p><p>  – 片內(nèi)/ 片外中斷源</p><p>  – 6種睡眠模式: 空閑模式、ADC噪聲抑制模式、省電模式、掉電模式、Standby 模式以及擴(kuò)展的Standby模式</p><p><b> ?、?I/O和封裝</b></p><p>  – 32

72、個(gè)可編程的I/O口</p><p>  – 40引腳PDIP封裝, 44引腳TQFP封裝, 與44引腳MLF封裝</p><p><b> ?、?工作電壓:</b></p><p>  – ATmega16L:2.7~5.5V</p><p>  – ATmega16:4.5~5.5V</p><p&

73、gt;<b> ?、?速度等級(jí):</b></p><p>  – 0~ 8 MHz ATmega16L</p><p>  – 0~16 MHz ATmega16</p><p> ?、?ATmega16L在1MHz, 3V, 25°C時(shí)的功耗:</p><p>  – 正常模式: 1.1mA</p>

74、;<p>  – 空閑模式: 0.35mA</p><p>  – 掉電模式: < 1μA</p><p><b> ?、?引腳說(shuō)明:</b></p><p>  1、四組I/O口說(shuō)明:</p><p>  端口A(PA7..PA0):端口A作為A/D轉(zhuǎn)換器的模擬輸入端。端口A為8位雙向I/O口,具有

75、可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口A 處于高阻狀態(tài)。</p><p>  端口B(PB7..PB0):端口B為8位雙向I/O口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將

76、輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口B處于高阻狀態(tài)。</p><p><b>  端口B的第二功能:</b></p><p>  表3-1 端口功能表</p><p><b>  2、引腳配置如下:</b></p><p> ?、?SCK—端口B, Bit 7</p>&

77、lt;p>  SCK:SPI通道的主機(jī)時(shí)鐘輸出,從機(jī)時(shí)鐘輸入端口。工作于從機(jī)模式時(shí),不論DDB7設(shè)置如何,這個(gè)引腳都將設(shè)置為輸入。工作于主機(jī)模式時(shí),這個(gè)引腳的數(shù)據(jù)方向由DDB7控制。設(shè)置為輸入后,上拉電阻由PORTB7控制。</p><p> ?、?MISO—端口B, Bit 6</p><p>  MISO:SPI通道的主機(jī)數(shù)據(jù)輸入,從機(jī)數(shù)據(jù)輸出端口。工作于主機(jī)模式時(shí),不論DDB6

78、設(shè)置如何,這個(gè)引腳都將設(shè)置為輸入。工作于從機(jī)模式時(shí),這個(gè)引腳的數(shù)據(jù)方向由DDB6控制。設(shè)置為輸入后,上拉電阻由PORTB6控制。</p><p>  ⑶ MOSI—端口B, Bit 5</p><p>  MOSI:SPI 通道的主機(jī)數(shù)據(jù)輸出,從機(jī)數(shù)據(jù)輸入端口。工作于從機(jī)模式時(shí),不論DDB5 設(shè)置如何,這個(gè)引腳都將設(shè)置為輸入。當(dāng)工作于主機(jī)模式時(shí),這個(gè)引腳的數(shù)據(jù)方向由DDB5控制。設(shè)置為輸入

79、后,上拉電阻由PORTB5 控制。</p><p> ?、?SS—端口B, Bit 4</p><p>  SS:從機(jī)選擇輸入。工作于從機(jī)模式時(shí),不論DDB4設(shè)置如何,這個(gè)引腳都將設(shè)置為輸入。當(dāng)此引腳為低時(shí)SPI被激活。工作于主機(jī)模式時(shí),這個(gè)引腳的數(shù)據(jù)方向由DDB4控制。設(shè)置為輸入后,上拉電阻由PORTB4 控制。</p><p> ?、?AIN1/OC0—端口B,

80、 Bit 3</p><p>  AIN1:模擬比較負(fù)輸入。配置該引腳為輸入時(shí),切斷內(nèi)部上拉電阻,防止數(shù)字端口功能與模擬比較器功能相沖突。</p><p>  OC0:輸出比較,匹配輸出:PB3引腳可作為T(mén)/C0比較匹配的外部輸出。實(shí)現(xiàn)該功能時(shí),PB3引腳必須配置為輸出(設(shè)DDB3為1) 。在PWM模式的定時(shí)功能中,OC0引腳作為輸出。</p><p>  ⑹ AI

81、N0/INT2—端口B, Bit 2</p><p>  AIN0,模擬比較正輸入。配置該引腳為輸入時(shí),切斷內(nèi)部上拉電阻,防止數(shù)字端口功能與模擬比較器功能相沖突。</p><p>  INT2,外部中斷源 2:PB2引腳作為MCU的外部中斷源。</p><p>  ⑺ T1—端口B, Bit 1</p><p>  T1, T/C1計(jì)數(shù)器源。

82、</p><p> ?、蘐0/XCK—端口B, Bit 0</p><p>  T0,T/C0計(jì)數(shù)器源。</p><p>  XCK,USART外部時(shí)鐘。數(shù)據(jù)方向寄存器(DDB0) 控制時(shí)鐘為輸出(DDB0 置位) 還是輸入(DDB0 清零)。只有當(dāng)USART 工作在同步模式時(shí), XCK引腳激活。</p><p>  SPIMSTR INPU

83、T 和SPI SLAVE OUTPUT構(gòu)成了MISO信號(hào),而MOSI可以分解為SPI MSTROUTPUT 和SPI SLAVE INPUT。</p><p>  端口C(PC7..PC0) :端口C為8位雙向I/O口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口C處于高

84、阻狀態(tài)。如果JTAG接口使能,即使復(fù)位出現(xiàn)引腳PC5(TDI)、 PC3(TMS)與 PC2(TCK)的上拉電阻被激活。</p><p><b>  端口C的第二功能:</b></p><p>  表3-2 引腳功能表</p><p><b>  第二功能配置如下:</b></p><p> ?、?

85、TOSC2 – 端口C, Bit 7</p><p>  TOSC2,定時(shí)振蕩器引腳2:當(dāng)寄存器ASSR的AS2位置1,使能T/C2的異步時(shí)鐘,引腳PC7與端口斷開(kāi),成為振蕩器放大器的反向輸出。在這種模式下,晶體振蕩器與該引腳相聯(lián),該引腳不能作為I/O引腳。</p><p> ?、?TOSC1 – 端口C, Bit 6</p><p>  TOSC1,定時(shí)振蕩器引腳

86、1:當(dāng)寄存器ASSR的AS2位置1,使能T/C2的異步時(shí)鐘,引腳PC6與端口斷開(kāi),成為振蕩器放大器的反向輸出。在這種模式下,晶體振蕩器與該引腳相聯(lián),該引腳不能作為I/O引腳。</p><p> ?、?TDI – 端口C, Bit 5</p><p>  TDI,JTAG測(cè)試數(shù)據(jù)輸入:串行輸入數(shù)據(jù)移入指令寄存器或數(shù)據(jù)寄存器(掃描鏈)。當(dāng)JTAG接口使能,該引腳不能作為I/O引腳。</p

87、><p> ?、?TDO – 端口C, Bit 4</p><p>  TDO,JTAG測(cè)試數(shù)據(jù)輸入:串行輸入數(shù)據(jù)移入指令寄存器或數(shù)據(jù)寄存器(掃描鏈)。當(dāng)JTAG接口使能,該引腳不能作為I/O引腳。</p><p>  TD0 引腳在除TAP 狀態(tài)情況外為三態(tài),進(jìn)入移出數(shù)據(jù)狀態(tài)。</p><p>  ⑸ TMS – 端口C, Bit 3</

88、p><p>  TMS,JTAG測(cè)試模式選擇: 該引腳作為T(mén)AP控制器狀態(tài)工具的定位。當(dāng)JTAG接口使能,該引腳不能作為I/O引腳。</p><p>  ⑹ TCK – 端口C, Bit 2</p><p>  TCK,JTAG測(cè)試時(shí)鐘: JTAG工作在同步模式下。當(dāng)JTAG接口使能,該引腳不能作為I/O引腳。</p><p>  ⑺ SDA –

89、 端口C, Bit 1</p><p>  SDA,兩線串行接口數(shù)據(jù):當(dāng)寄存器TWCR的TWEN位置1使能兩線串行接口,引腳 PC1不與端口相聯(lián),且成為兩線串行接口的串行數(shù)據(jù)I/O引腳。在該模式下,在引腳處使用窄帶濾波器抑制低于50 ns 的輸入信號(hào),且該引腳由斜率限制的開(kāi)漏驅(qū)動(dòng)器驅(qū)動(dòng)。當(dāng)該引腳使用兩線串行接口,仍可由PORTC1位控制上拉。</p><p>  ⑻ SCL – 端口C,

90、Bit 0</p><p>  SCL,兩線串行接口時(shí)鐘:當(dāng)TWCR寄存器的TWEN位置1使能兩線串行接口,引腳 PC0未與端口連接,成為兩線串行接口的串行時(shí)鐘I/O引腳。在該模式下,在引腳處使用窄帶濾波器抑制低于50ns的輸入信號(hào),且該引腳由斜率限制的開(kāi)漏驅(qū)動(dòng)器驅(qū)動(dòng)。當(dāng)該引腳使用兩線串行接口,仍可由PORTC0位控制上拉。</p><p>  端口D(PD7..PD0) 端口D 為8 位

91、雙向I/O 口,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱(chēng)的驅(qū)動(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若內(nèi)部上拉電阻使能,則端口被外部電路拉低時(shí)將輸出電流。在復(fù)位過(guò)程中,即使系統(tǒng)時(shí)鐘還未起振,端口D 處于高阻狀態(tài)。</p><p>  端口D 的第二功能:</p><p>  表3-3 引腳功能表</p><p><b>  第二功能配置如下:&

92、lt;/b></p><p> ?、?OC2 – 端口 D, Bit7</p><p>  OC2,T/C2輸出比較匹配輸出:PD7引腳作為T(mén)/C2輸出比較外部輸入。在該功能下引腳作為輸出(DDD7置1) 。在PWM模式的定時(shí)器功能中,OC2引腳作為輸出。</p><p>  ⑵ OC1A – 端口D, Bit5</p><p>  O

93、C1A,T/C2輸出比較匹配A輸出 :PD5引腳作為T(mén)/C1輸出比較A外部輸入。在該功能下引腳作為輸出(DDD5置1) 。在PWM模式的定時(shí)器功能中,OC1A引腳作為輸出。</p><p>  ⑶ OC1B – 端口D, Bit4</p><p>  OC1B,T/C1輸出比較匹配B輸出 :PD4引腳作為T(mén)/C1輸出比較B外部輸入。在該功能下引腳作為輸出(DDD4置1) 。在PWM模式的定

94、時(shí)器功能中,OC1B引腳作為輸出。</p><p> ?、?INT1 – 端口D, Bit3</p><p>  INT1,外部中斷1。PD3引腳作為MCU的外部中斷源。</p><p>  ⑸ INT0 – 端口D, Bit2</p><p>  INT0,外部中斷0。PD2引腳作為MCU的外部中斷源。</p><p&g

95、t; ?、?TXD – 端口D, Bit1</p><p>  TXD是USART的數(shù)據(jù)發(fā)送引腳。當(dāng)使能了USART的發(fā)送器后,這個(gè)引腳被強(qiáng)制設(shè)置為輸出,此時(shí)DDD1不起作用。</p><p>  ⑺ RXD – 端口D, Bit0</p><p>  RXD是USART的數(shù)據(jù)接收引腳。當(dāng)使能了USART的接收器后,這個(gè)引腳被強(qiáng)制設(shè)置為輸出,此時(shí)DDD0不起作用。但

96、是PORTD0仍然控制上拉電阻。</p><p><b>  3、其他引腳說(shuō)明</b></p><p>  VCC 數(shù)字電路的電源</p><p><b>  GND 地</b></p><p>  RESET 復(fù)位輸入引腳。持續(xù)時(shí)間超過(guò)最小門(mén)限時(shí)間的低電平將引起系統(tǒng)復(fù)位。門(mén)限時(shí)間見(jiàn)P36Table

97、 15。持續(xù)時(shí)間小于門(mén)限間的脈沖不能保證可靠復(fù)位。</p><p>  XTAL1 反向振蕩放大器與片內(nèi)時(shí)鐘操作電路的輸入端。</p><p>  XTAL2 反向振蕩放大器的輸出端。</p><p>  AVCC 是端口A與A/D轉(zhuǎn)換器的電源。不使用ADC時(shí),該引腳應(yīng)直接與連接。</p><p>  3.5 超聲波傳感器測(cè)距原理</p

98、><p>  為了以超聲波作為檢測(cè)手段,必須產(chǎn)生超聲波和接收超聲波。完成這種功能的裝置就是超聲波傳感器,習(xí)慣上稱(chēng)為超聲波換能器或超聲波探頭。超聲波傳感器可以是超聲波的發(fā)射裝置,也可以是既能發(fā)射又能接收發(fā)射超聲回波的裝置。超聲波傳感器一般都能將聲信號(hào)轉(zhuǎn)換成電信號(hào),屬于典型的雙向傳感器。</p><p>  超聲波探頭按其結(jié)構(gòu)可分為直探頭、斜探頭、雙探頭和液浸探頭;若按其工作原理又可分為壓電式、磁

99、致伸縮式、電磁式等。實(shí)際使用中最常見(jiàn)的是壓電式探頭。</p><p>  圖3-3超聲波傳感器</p><p>  壓電式探頭其結(jié)構(gòu)如圖所示:一般它的內(nèi)部都有一個(gè)振子,所謂振子就是一塊金屬片上貼著壓電陶瓷,如果給壓電陶瓷上加電壓,它就會(huì)根據(jù)電壓的大小產(chǎn)生相應(yīng)的機(jī)械變形,進(jìn)而產(chǎn)生機(jī)械振動(dòng),就是所謂的壓電現(xiàn)象,從而發(fā)射出超聲波,當(dāng)共振板接收到超聲波時(shí),將壓迫壓電陶瓷作振動(dòng), 將機(jī)械能轉(zhuǎn)換為電信

100、號(hào), 這時(shí)它就成為超聲波接收器了。</p><p>  超聲測(cè)距原理是采用渡越時(shí)間法TOF(time of flight)。即通過(guò)不斷檢測(cè)超聲波發(fā)射后遇到障礙物所反射的回波的時(shí)間,在已知超聲波聲速的前提下,可計(jì)算出距離。即,其中s為機(jī)器人與障礙物之間的距離,v為聲波在介質(zhì)中的傳播速度,t為超聲發(fā)射到返回的時(shí)間間隔。因此,只要知道超聲波在介質(zhì)中的速度V和超聲波被障礙物反射接收時(shí)刻與超聲波發(fā)出時(shí)刻差值t,就能夠計(jì)算出

101、機(jī)器人到障礙物的距離</p><p><b> ?。?-1)</b></p><p>  若sh 時(shí),則d ≈ s。但是,超聲波在空氣中的傳播速度和溫度有關(guān),根據(jù)文獻(xiàn),空氣中的聲速為</p><p><b> ?。?-2)</b></p><p>  γ為定壓分子熱容量與定容分子熱容量的比值,R為氣

102、體常數(shù),T為絕對(duì)溫度,μ為氣體的分子量。因此為了獲得較精確的聲速, 必須引入溫度補(bǔ)償。</p><p><b>  4模塊軟件程序</b></p><p><b>  4.1主程序</b></p><p>  主程序?qū)φ麄€(gè)單片機(jī)系統(tǒng)進(jìn)行初始化后,先將超聲波的回波接收標(biāo)志位置位并且使單片機(jī)P1.0端口輸出一個(gè)低電平用來(lái)啟動(dòng)超

103、聲波發(fā)射電路,同時(shí)將定時(shí)器T0啟動(dòng),然后調(diào)用距離計(jì)算的子程序,再根據(jù)定時(shí)器T0記錄的時(shí)間計(jì)算出所需要測(cè)量的距離,然后再調(diào)用顯示子程序,再將測(cè)出的距離以十進(jìn)制的形式送到數(shù)碼管顯示,同時(shí)調(diào)用聲音處理程序來(lái)控制蜂鳴器進(jìn)行報(bào)警。最后主程序通過(guò)對(duì)回波信號(hào)的接收,完成后續(xù)的工作,假如標(biāo)志位清零則說(shuō)明接收到了回波信號(hào),那么主程序就返回到初始端重新將回波接收標(biāo)志位置位并且在單片機(jī)的P0.1端口上發(fā)送低電平到超聲波發(fā)射電路,就這樣,連續(xù)不斷地運(yùn)行,循環(huán)不

104、斷地工作用來(lái)實(shí)現(xiàn)測(cè)距。 </p><p>  整個(gè)系統(tǒng)的設(shè)計(jì)的關(guān)鍵是對(duì)距離進(jìn)行測(cè)量的,然后通過(guò)單片機(jī)來(lái)處理測(cè)量數(shù)據(jù)是比較容易實(shí)現(xiàn)的,能精確的實(shí)現(xiàn)測(cè)距。在測(cè)距中,各種信號(hào)包括溫度對(duì)聲速的影響都將干擾到測(cè)距的準(zhǔn)確性,其中超聲波的余波信號(hào)對(duì)整個(gè)設(shè)計(jì)中測(cè)距的精確度的干擾的影響比較大[7]。超聲波接收回路中的超聲波信號(hào)一共有兩種波信號(hào):第一種波信號(hào)為余波信號(hào)就是當(dāng)發(fā)射探頭發(fā)射出信號(hào)之后,超聲波接收探頭馬上就接收到的超聲波信

105、號(hào),實(shí)際就是超聲波的發(fā)射信號(hào)[7];另一種波信號(hào)就是有效信號(hào),即經(jīng)過(guò)障礙物表面反射回來(lái)的超聲波回波信號(hào)[7],也是所需要測(cè)量的距離數(shù)值。 </p><p>  在進(jìn)行超聲波測(cè)距時(shí),實(shí)際上測(cè)距就是記錄從超聲波發(fā)射電路發(fā)射超聲波信號(hào)開(kāi)始到接收到信號(hào)的聲波的往返時(shí)間差,然后通過(guò)數(shù)據(jù)計(jì)算出距離,對(duì)于回波信號(hào)需要進(jìn)行檢測(cè)的有效信號(hào)是反射物體反射的回波信號(hào),所以要盡量避免在檢測(cè)時(shí)候檢測(cè)到余波信號(hào)。余波就是在發(fā)射超聲波時(shí)超聲波

106、信號(hào)直接到達(dá)接受探頭的波信號(hào),同時(shí)余波信號(hào)也是超聲波測(cè)量時(shí)存在測(cè)量盲區(qū)的最主要的原因。 </p><p>  超聲波接收電路在接收到超聲波回波后,通過(guò)CX20106A電路進(jìn)行檢波整形比較,并向單片機(jī)發(fā)出有效信號(hào),單片機(jī)通過(guò)外部中斷的改變記錄回波信號(hào)的到達(dá)時(shí)間,中斷發(fā)生之后就是表示已經(jīng)接收到了回波信號(hào),這個(gè)時(shí)候停止計(jì)時(shí),并且讀取計(jì)數(shù)器中的數(shù)值,這個(gè)數(shù)值就是需要進(jìn)行測(cè)量的時(shí)間差的數(shù)據(jù)。</p><

107、p>  程序中對(duì)測(cè)距距離的計(jì)算方法是按S=17×N/1000=0.017×N(cm)進(jìn)行計(jì)算的,其中,N為計(jì)數(shù)器的值,聲速的值取為340 m/s。 </p><p>  綜合以上的分析可得到系統(tǒng)主程序流程圖,系統(tǒng)主程序的流程圖如圖4.1所示</p><p>  圖4-1 主程序流程圖</p><p>  4.2超聲波發(fā)送子程序</p&

108、gt;<p>  ATmega16單片機(jī)有四個(gè)可產(chǎn)生相位、頻率可調(diào)的PWM脈寬調(diào)制輸出。通過(guò)PD5引腳,輸出頻率為超聲波發(fā)生器的諧振頻率,即40kHz的方波脈沖,脈沖寬度及持續(xù)時(shí)間均可以根據(jù)實(shí)際需要進(jìn)行調(diào)整。超聲波發(fā)射頭在該周期性方波防撥信號(hào)的激勵(lì)下,向外界發(fā)射超聲波。</p><p>  圖4-2 超聲波發(fā)送子程序流程圖</p><p>  4.3超聲波速度計(jì)算子程序<

109、;/p><p>  測(cè)量距離,其中為聲速,而環(huán)境中溫度對(duì)聲速均會(huì)產(chǎn)生影響,這對(duì)以聲速來(lái)計(jì)算測(cè)量結(jié)果的超聲波接近覺(jué)傳感器來(lái)說(shuō)是一個(gè)主要的誤差來(lái)源,空氣中聲速的大小可以近似表示為</p><p><b>  (4-1)</b></p><p>  式中為時(shí)的聲速,為時(shí)的聲速,為溫度。所以為了比較精準(zhǔn)地測(cè)量距離,我們需要對(duì)聲速進(jìn)行溫度補(bǔ)償,溫度采集我們使

110、用DS18B20來(lái)實(shí)現(xiàn)。</p><p>  圖4-3 超聲波聲速計(jì)算子程序流程圖</p><p>  4.4距離計(jì)算子程序</p><p>  圖4-4是超聲波測(cè)距具體計(jì)算模塊的基本結(jié)構(gòu)。整個(gè)系統(tǒng)由ATmega16單片機(jī)來(lái)控制,啟動(dòng)測(cè)量時(shí),由單片機(jī)發(fā)送一個(gè)控制信號(hào)去觸發(fā)發(fā)射電路,使發(fā)射電路起振,驅(qū)動(dòng)超聲波發(fā)射器發(fā)射出一串超聲波脈沖(大約十幾個(gè)脈沖),同時(shí)啟動(dòng)單片機(jī)

111、的計(jì)時(shí)器開(kāi)始計(jì)時(shí),也就是開(kāi)始測(cè)量渡越時(shí)間。當(dāng)這些脈沖到達(dá)被測(cè)目標(biāo)時(shí)發(fā)生反射,經(jīng)空氣傳播被超聲波接收器接收,再由放大電路進(jìn)行放大。接收到的第一個(gè)脈沖去觸發(fā)單片機(jī)的計(jì)數(shù)器,使計(jì)數(shù)器停止。此時(shí),計(jì)數(shù)器中的值即是所要檢測(cè)的渡越時(shí)間所對(duì)應(yīng)的脈沖個(gè)數(shù)N,利用這個(gè)N就可以圖中公式計(jì)算出所測(cè)距離。</p><p>  圖4-4 距離計(jì)算子程序流程圖</p><p>  4.5溫度補(bǔ)償子程序</p&g

112、t;<p>  DS18B20的測(cè)溫原理如下所示,低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器2的脈沖輸入,圖中還隱含著計(jì)數(shù)門(mén),當(dāng)計(jì)數(shù)門(mén)打開(kāi)時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測(cè)量,從而達(dá)到溫度補(bǔ)償?shù)哪康摹?lt;/p><p>  圖4-5 溫度補(bǔ)償子程

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論