單片機(jī)課程設(shè)計(jì)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)_第1頁(yè)
單片機(jī)課程設(shè)計(jì)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)_第2頁(yè)
單片機(jī)課程設(shè)計(jì)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)_第3頁(yè)
單片機(jī)課程設(shè)計(jì)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)_第4頁(yè)
單片機(jī)課程設(shè)計(jì)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩23頁(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)介

1、語(yǔ)音控制小車(chē)語(yǔ)音控制小車(chē)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)院:軟件學(xué)院 班級(jí):08級(jí)計(jì)算機(jī)科學(xué)與技術(shù)(3)班姓名:學(xué)號(hào):同組成員: 目 錄前言 1緒論 2第一章凌陽(yáng)單片機(jī)介紹 4第二章語(yǔ)音控制小車(chē)的總體設(shè)計(jì) 6第一節(jié)所需材料(硬件,軟件) 6第二節(jié)功能要求 6第三節(jié)車(chē)體說(shuō)明 6第四節(jié)小車(chē)的功能實(shí)現(xiàn)原理 13第五節(jié)軟件流程設(shè)計(jì) 15第三章 18第一節(jié)硬件的安裝 18第二節(jié)代碼編譯及下載 20第三節(jié)訓(xùn)練小車(chē) 22第四節(jié)聲控小車(chē) 24參考文獻(xiàn) 24致謝 25 前言本文主要以spce061a為基礎(chǔ)介紹了如何應(yīng)用spce061a芯片進(jìn)行語(yǔ)音控制小車(chē)的硬件和軟件設(shè)計(jì)。spce061a是一種16位nsp結(jié)構(gòu)的微控制器。該芯片帶

2、有硬件乘法器,能夠?qū)崿F(xiàn)乘法運(yùn)算、內(nèi)積運(yùn)算等復(fù)雜的運(yùn)算。它不僅運(yùn)算能力強(qiáng),而且處理速度快,單周期最高可以達(dá)到49mhz。spce061a內(nèi)嵌32k字的flash程序存儲(chǔ)器以及2k的sram。同時(shí)該soc芯片具有adc和dac功能,其mic_adc通道帶有agc自動(dòng)增益環(huán)節(jié),能夠很輕松的將語(yǔ)音信號(hào)采集到芯片內(nèi)部,兩路10位的電流輸出型dac,只要外接一個(gè)功放就可以完成聲音的播放。以上介紹的這些硬件資源使得該spce061a能夠單芯片實(shí)現(xiàn)語(yǔ)音處理功能。spce061a 是繼µnsp系列產(chǎn)品spce500a等之后凌陽(yáng)科技推出的又一款16位結(jié)構(gòu)的微控制器。與spce500a不同的是,在存儲(chǔ)器

3、資源方面考慮到用戶的較少資源的需求以及便于程序調(diào)試等功能,spce061a里只內(nèi)嵌32k字的閃存(flash)。較高的處理速度使µnsp能夠非常容易地、快速地處理復(fù)雜的數(shù)字信號(hào)。因此,與spce500a相比,以µnsp為核心的spce061a微控制器是適用于數(shù)字語(yǔ)音識(shí)別應(yīng)用領(lǐng)域產(chǎn)品的一種最經(jīng)濟(jì)的選擇。借助于spce061a的語(yǔ)音特色,我們開(kāi)發(fā)出了這款語(yǔ)音控制小車(chē)。小車(chē)不僅具有前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)停車(chē)等基本功能;同時(shí)配合spce061a的語(yǔ)音特色,實(shí)現(xiàn)語(yǔ)音控制功能。spce061a單片機(jī)是凌陽(yáng)公司今年新推出的一款十六位單片機(jī),它的易用性和多功能性受到了廣大電子愛(ài)好者的好

4、評(píng)。這里要介紹的是用spce061a單片機(jī)實(shí)現(xiàn)2001年全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽試題(c題),本系統(tǒng)以參賽題目的要求為目的,采用spce061a單片機(jī)為控制核心,利用光電檢測(cè)器檢測(cè)道路上的標(biāo)志,控制電動(dòng)小汽車(chē)的正反向行駛,快慢速行駛,以及停車(chē)的位置,并可自動(dòng)記錄往返時(shí)間和距離,在顯示完時(shí)間距離后將會(huì)自動(dòng)播報(bào)整個(gè)行程所消耗的時(shí)間,以及行駛路程。整個(gè)系統(tǒng)的電路結(jié)構(gòu)簡(jiǎn)單,可靠性高。實(shí)驗(yàn)測(cè)試結(jié)果滿足要求,本文著重介紹了該系統(tǒng)的軟硬件設(shè)計(jì)方法及測(cè)試結(jié)果分析。緒論第一節(jié) 單片機(jī)的發(fā)展歷史單片機(jī)一詞最初是源于singlechipmicrocomputer”,簡(jiǎn)稱(chēng)scm。在單片機(jī)誕生時(shí),scm是一個(gè)準(zhǔn)確、流行的

5、稱(chēng)謂,“單片機(jī)”一詞準(zhǔn)確地表達(dá)了這概念。隨著scm在技術(shù)上、體系結(jié)構(gòu)上不斷擴(kuò)展其控制功能,單片機(jī)已不能用“單片微型計(jì)算機(jī)”來(lái)準(zhǔn)確表達(dá)其內(nèi)涵。國(guó)際上逐漸采用mcu(microcontrollerunit”)來(lái)代替,形成了單片機(jī)界公認(rèn)的、最終統(tǒng)一的名詞。在國(guó)內(nèi)因?yàn)椤皢纹瑱C(jī)”一詞已約定俗成,故而繼續(xù)沿用。單片機(jī)按其內(nèi)部中央處理器cpu(centralprocessingunit)的字長(zhǎng)分為1位機(jī)、4位機(jī)、8位機(jī)、16位機(jī)等。從1976年8位單片機(jī)誕生以來(lái),單片機(jī)領(lǐng)域中一直是以8位機(jī)為主流機(jī)型,預(yù)計(jì)這種情況還將繼續(xù)下去。因此我們以intel公司的8位機(jī)為例來(lái)談?wù)剢纹瑱C(jī)的發(fā)展歷史。 1.第一階段單片機(jī)階

6、段(1976午1978年)。這階段的任務(wù)是探索計(jì)算機(jī)的單芯片集成。以intel公司的mcs48為代表,其cpu、存儲(chǔ)器、定時(shí)器計(jì)數(shù)器、中斷系統(tǒng)、i/o端口、時(shí)鐘以及指令系統(tǒng)都是按嵌入式系統(tǒng)要求專(zhuān)門(mén)設(shè)計(jì)的。 2第二階段單片機(jī)的完善階段(1978年一1982年)。計(jì)算機(jī)的單芯片集成探索取得成功后,隨后的任務(wù)就是要完善單片機(jī)的體系結(jié)構(gòu)。作為這一階段的典型代表是inlel公司將mcs48向mcs5l系列的過(guò)渡。它在以下幾個(gè)重要方面奠定了單片機(jī)的體系結(jié)構(gòu)。(1)完善的外部總線。有8位數(shù)據(jù)總線、16位地址總線、控制總線及具有多機(jī)通信功能的串行通信接口。(2)cpu外圍功能單元的集中管理模式。(3)設(shè)置面向

7、工控的位地址空間及位操作方式。(4)指令系統(tǒng)突出控制功能。 3第三階段微控制器形成階段(1983年一1990年)。這一階段單片機(jī)的主要技術(shù)發(fā)展方向是滿足測(cè)控對(duì)象要求的外圍電路的增強(qiáng),如ad轉(zhuǎn)換、da轉(zhuǎn)換、高速io口、wdt(程序監(jiān)視定時(shí)器)、dma(高速數(shù)據(jù)傳輸)等,強(qiáng)化了智能控制的特征。 4第四階段微控制器全面發(fā)展階段(1990年以后)。即當(dāng)前的單片機(jī)時(shí)代,其顯著特點(diǎn)是百花齊放、技術(shù)創(chuàng)新。單片機(jī)正在滿足各個(gè)方面的需求從玩具、小家電、工程控制單元到機(jī)器人、智能儀表,過(guò)程控制,個(gè)人信息終端等無(wú)所不能。第二節(jié) 單片機(jī)的現(xiàn)狀及前景計(jì)算機(jī)系統(tǒng)的發(fā)展已明顯地朝三個(gè)方向發(fā)展;這三個(gè)方向就是:巨型化,單片化

8、,網(wǎng)絡(luò)化。以解決復(fù)雜系統(tǒng)計(jì)算和高速數(shù)據(jù)處理的仍然是巨型機(jī)在起作用,故而,巨型機(jī)在目前在朝高速及處理能力的方向努力。單片機(jī)在出現(xiàn)時(shí),intel公司就給其單片機(jī)取名為嵌入式微控制器單片機(jī)的最明顯的優(yōu)勢(shì),就是可以嵌入到各種儀器、設(shè)備中。這一點(diǎn)是巨型機(jī)和網(wǎng)絡(luò)不可能做到的。在本文,介紹單片機(jī)的最新技術(shù)進(jìn)步,包括數(shù)字單片機(jī)的工藝及技術(shù),模糊單片機(jī)的工藝及技術(shù),單片機(jī)的可靠性技術(shù),以及以單片機(jī)為核心的嵌入式系統(tǒng)。數(shù)字單片機(jī)的技術(shù)發(fā)展數(shù)字單片機(jī)的技術(shù)進(jìn)步反映在內(nèi)部結(jié)構(gòu)、功率消耗、外部電壓等級(jí)以及制造工藝上。在這幾方面,較為典型地說(shuō)明了數(shù)字單片機(jī)的水平。在目前,用戶對(duì)單片機(jī)的需要越來(lái)越多,但是,要求也越來(lái)越高。

9、下面分別就這四個(gè)方面說(shuō)明單片機(jī)的技術(shù)進(jìn)步狀況。1、 內(nèi)部結(jié)構(gòu)的進(jìn)步單片機(jī)在內(nèi)部已集成了越來(lái)越多的部件,這些部件包括一般常用的電路,例如:定時(shí)器,比較器,a/d轉(zhuǎn)換器,d /a轉(zhuǎn)換器,串行通信接口,watchdog電路,lcd控制器等。有的單片機(jī)為了構(gòu)成控制網(wǎng)絡(luò)或形成局部網(wǎng),內(nèi)部含有局部網(wǎng)絡(luò)控制模塊can。例如,infineon公司的c 505c,c515c,c167cr,c167cs-32fm,81c90;motorola公司的68hc08az 系列等。特別是在單片機(jī)c167cs-32fm中,內(nèi)部還含有2個(gè)can。因此,這類(lèi)單片機(jī)十分容易構(gòu)成網(wǎng)絡(luò)。特別是在控制,系統(tǒng)較為復(fù)雜時(shí),構(gòu)成一個(gè)控制網(wǎng)絡(luò)

10、十分有用。單片機(jī)在目前的發(fā)展形勢(shì)下,表現(xiàn)出幾大趨勢(shì):可靠性及應(yīng)用越來(lái)越水平高和互聯(lián)網(wǎng)連接已是一種明顯的走向。所集成的部件越來(lái)越多;ns(美國(guó)國(guó)家半導(dǎo)體)公司的單片機(jī)已把語(yǔ)音、圖象部件也集成 到單片機(jī)中,也就是說(shuō),單片機(jī)的意義只是在于單片集成電路,而不在于其功能了;如果從功能上講它可以講是萬(wàn)用機(jī)。原因是其內(nèi)部已集成上各種應(yīng)用電路。功耗越來(lái)越低和模擬電路結(jié)合越來(lái)越多。隨著半導(dǎo)體工藝技術(shù)的發(fā)展及系統(tǒng)設(shè)計(jì)水平的提高,單片機(jī)還會(huì)不斷產(chǎn)生新的變化和進(jìn)步,最終人們可能發(fā)現(xiàn):?jiǎn)纹瑱C(jī)與微機(jī)系統(tǒng)之間的距離越來(lái)越小,甚至難以辨認(rèn)。 單片機(jī)的應(yīng)用領(lǐng)域: 目前單片機(jī)滲透到我們生活的各個(gè)領(lǐng)域,幾乎很難找到哪個(gè)領(lǐng)域沒(méi)有單片

11、機(jī)的蹤跡。導(dǎo)彈的導(dǎo)航裝置,飛機(jī)上各種儀表的控制,計(jì)算機(jī)的網(wǎng)絡(luò)通訊與數(shù)據(jù)傳輸,工業(yè)自動(dòng)化過(guò)程的實(shí)時(shí)控制和數(shù)據(jù)處理,廣泛使用的各種智能ic卡,民用豪華轎車(chē)的安全保障系統(tǒng),錄象機(jī)、攝象機(jī)、全自動(dòng)洗衣機(jī)的控制,以及程控玩具、電子寵物等等,這些都離不開(kāi)單片機(jī)。更不用說(shuō)自動(dòng)控制領(lǐng)域的機(jī)器人、智能儀表、醫(yī)療器械了。因此,單片機(jī)的學(xué)習(xí)、開(kāi)發(fā)與應(yīng)用將造就一批計(jì)算機(jī)應(yīng)用與智能化控制的科學(xué)家、工程師。單片機(jī)廣泛應(yīng)用于儀器儀表、家用電器、醫(yī)用設(shè)備、航空航天、專(zhuān)用設(shè)備的智能化管理及過(guò)程控制等領(lǐng)域,大致可分如下幾個(gè)范疇: 1.在智能儀器儀表上的應(yīng)用單片機(jī)具有體積小、功耗低、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣

12、泛應(yīng)用于儀器儀表中,結(jié)合不同類(lèi)型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長(zhǎng)度、硬度、元素、壓力等物理量的測(cè)量。采用單片機(jī)控制使得儀器儀表數(shù)字化、智能化、微型化,且功能比起采用電子或數(shù)字電路更加強(qiáng)大。例如精密的測(cè)量設(shè)備(功率計(jì),示波器,各種分析儀)。 2.在工業(yè)控制中的應(yīng)用用單片機(jī)可以構(gòu)成形式多樣的控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)。例如工廠流水線的智能化管理,電梯智能化控制、各種報(bào)警系統(tǒng),與計(jì)算機(jī)聯(lián)網(wǎng)構(gòu)成二級(jí)控制系統(tǒng)等。 3.在家用電器中的應(yīng)用可以這樣說(shuō),現(xiàn)在的家用電器基本上都采用了單片機(jī)控制,從電飯褒、洗衣機(jī)、電冰箱、空調(diào)機(jī)、彩電、其他音響視頻器材、再到電子秤量設(shè)備,五

13、花八門(mén),無(wú)所不在。 4.在計(jì)算機(jī)網(wǎng)絡(luò)和通信領(lǐng)域中的應(yīng)用現(xiàn)代的單片機(jī)普遍具備通信接口,可以很方便地與計(jì)算機(jī)進(jìn)行數(shù)據(jù)通信,為在計(jì)算機(jī)網(wǎng)絡(luò)和通信設(shè)備間的應(yīng)用提供了極好的物質(zhì)條件,現(xiàn)在的通信設(shè)備基本上都實(shí)現(xiàn)了單片機(jī)智能控制,從手機(jī),電話機(jī)、小型程控交換機(jī)、樓宇自動(dòng)通信呼叫系統(tǒng)、列車(chē)無(wú)線通信、再到日常工作中隨處可見(jiàn)的移動(dòng)電話,集群移動(dòng)通信,無(wú)線電對(duì)講機(jī)等。 5.單片機(jī)在醫(yī)用設(shè)備領(lǐng)域中的應(yīng)用單片機(jī)在醫(yī)用設(shè)備中的用途亦相當(dāng)廣泛,例如醫(yī)用呼吸機(jī),各種分析儀,監(jiān)護(hù)儀,超聲診斷設(shè)備及病床呼叫系統(tǒng)等等。 此外,單片機(jī)在工商,金融,科研、教育,國(guó)防航空航天等領(lǐng)域都有著十分廣泛的用途。 第一章 凌陽(yáng)單片機(jī)簡(jiǎn)介隨著單片機(jī)

14、功能集成化的發(fā)展,其應(yīng)用領(lǐng)域也逐漸地由傳統(tǒng)的控制,擴(kuò)展為控制處理、數(shù)據(jù)處理以及數(shù)字信號(hào)處理(dsp,digital signal processing)等領(lǐng)域。凌陽(yáng)的16位單片機(jī)就是為適應(yīng)這種發(fā)展而設(shè)計(jì)的。它的cpu內(nèi)核采用凌陽(yáng)最新推出的nsp(microcontroller and signal processor)16位微處理器芯片(以下簡(jiǎn)稱(chēng)nsp)。圍繞nsp所形成的16位nsp系列單片機(jī)(以下簡(jiǎn)稱(chēng)nsp家族)采用的是模塊式集成結(jié)構(gòu),它以nsp內(nèi)核為中心集成不同規(guī)模的rom、ram和功能豐富的各種外設(shè)接口部件,如圖1.1所示。圖1.1 nsp家族的模塊式結(jié)構(gòu)nsp內(nèi)核是一個(gè)通用的核結(jié)構(gòu)。

15、除此之外的其它功能模塊均為可選結(jié)構(gòu),亦即這種結(jié)構(gòu)可大可小或可有可無(wú)。借助這種通用結(jié)構(gòu)附加可選結(jié)構(gòu)的積木式的構(gòu)成,便可形成各種不同系列派生產(chǎn)品,以適合不同的應(yīng)用場(chǎng)合。這樣做無(wú)疑會(huì)使每一種派生產(chǎn)品具有更強(qiáng)的功能和更低的成本。spce061a 板spce061a 是繼nsp系列產(chǎn)品spce500a等之后凌陽(yáng)科技推出的又一款16位結(jié)構(gòu)的微控制器。與spce500a不同的是,在存儲(chǔ)器資源方面考慮到用戶的較少資源的需求以及便于程序調(diào)試等功能,spce061a里只內(nèi)嵌32k字的閃存(flash)。較高的處理速度使nsp能夠非常容易地、快速地處理復(fù)雜的數(shù)字信號(hào)。因此,與spce500a相比,以nsp為核心的s

16、pce061a微控制器是適用于數(shù)字語(yǔ)音識(shí)別應(yīng)用領(lǐng)域產(chǎn)品的一種最經(jīng)濟(jì)的選擇。 第二章 語(yǔ)音控制小車(chē)的總體設(shè)計(jì)第一節(jié) 所需材料(硬件,軟件)一, 硬件實(shí)驗(yàn)箱及實(shí)驗(yàn)儀;凌陽(yáng)spce061a 板;小型電動(dòng)機(jī);車(chē)體;車(chē)輪;電池盒;兩節(jié)五號(hào)干電池;麥克風(fēng);喇叭以及元器件散件等等。二, 軟件windowpe;ide2.0程序;reswriter工具;串口工具;語(yǔ)音壓縮工具等等。第二節(jié) 功能要求小車(chē)的主要性能指標(biāo):1、輸入電壓:dc4.5v(3節(jié)aa電池) 2、可以實(shí)現(xiàn)前、后、左、右四方向運(yùn)作 3、可以實(shí)現(xiàn)弧形旋轉(zhuǎn) 4、具有通過(guò)加載61板實(shí)現(xiàn)語(yǔ)音控制語(yǔ)音控制小車(chē)的主要功能: 1 可以通過(guò)簡(jiǎn)單的i/o操作實(shí)現(xiàn)小

17、車(chē)的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)功能; 2 配合spce061a的語(yǔ)音特色,利用系統(tǒng)的語(yǔ)音播放和語(yǔ)音識(shí)別資源,實(shí)現(xiàn)語(yǔ)音控制的功能; 3 可以在行走過(guò)程中聲控改變小車(chē)運(yùn)動(dòng)狀態(tài); 4 在超出語(yǔ)音控制范圍時(shí)能夠自動(dòng)停車(chē)注意事項(xiàng):1 一定要注意電池的正負(fù)極性,切勿裝反; 2 長(zhǎng)期不用請(qǐng)將電池取出電池盒; 3 由于語(yǔ)音信號(hào)的不確定性,語(yǔ)音識(shí)別的過(guò)程會(huì)出現(xiàn)一定的誤差和不準(zhǔn)確性; 4 由于小車(chē)行動(dòng)比較靈活,速度比較快,在使用時(shí)一定要注意保持場(chǎng)地足夠大,且保證不會(huì)對(duì)周?chē)奈矬w造成傷害; 5 不要讓小車(chē)長(zhǎng)時(shí)間運(yùn)行在堵轉(zhuǎn)狀態(tài)(堵轉(zhuǎn)狀態(tài):由于小車(chē)所受阻力過(guò)大,造成小車(chē)電機(jī)加電但并不轉(zhuǎn)動(dòng)的現(xiàn)象),這樣會(huì)造成很大的堵轉(zhuǎn)電流,

18、有可能會(huì)損壞小車(chē)的控制電路。 第三節(jié) 車(chē)體說(shuō)明2.3.1車(chē)體結(jié)構(gòu)語(yǔ)音控制小車(chē)為四輪結(jié)構(gòu),車(chē)的結(jié)構(gòu)示意圖如圖 2.3.1所示。其中前面兩個(gè)車(chē)輪由前輪電機(jī)控制,在連桿和支點(diǎn)作用下控制前輪左右擺動(dòng),來(lái)調(diào)節(jié)小車(chē)的前進(jìn)方向。在自然狀態(tài)下,前輪在彈簧作用下保持中間位置。后面兩個(gè)車(chē)輪由后輪電機(jī)驅(qū)動(dòng),為整個(gè)小車(chē)提供動(dòng)力,所以又稱(chēng)前面的輪子為方向輪,后面的兩個(gè)輪子為驅(qū)動(dòng)輪,如圖 2.3.2所示。圖2.3.1整個(gè)小車(chē)分為三大部分:車(chē)體部分、61板、控制板。 車(chē)體部分:小車(chē)車(chē)體主要為兩個(gè)電機(jī)驅(qū)動(dòng)裝置,分前輪(方向)驅(qū)動(dòng)和后輪(動(dòng)力驅(qū)動(dòng))。在車(chē)體的下面有一個(gè)可以安裝4節(jié)aa電池的電池盒,整個(gè)小車(chē)的電源就是由它來(lái)提供的

19、。在小車(chē)的底部有一個(gè)小開(kāi)關(guān),它負(fù)責(zé)控制整個(gè)小車(chē)的電源開(kāi)通與關(guān)斷。 61板:61板是小車(chē)的核心部分,它負(fù)責(zé)整個(gè)小車(chē)控制信號(hào)的產(chǎn)生,以及語(yǔ)音的播放和識(shí)別功能實(shí)現(xiàn)。在不使用小車(chē)時(shí)可以將61板從小車(chē)上拆下來(lái),61板仍然是完整的,可以用它來(lái)做其它的實(shí)驗(yàn)或開(kāi)發(fā)。 控制板:控制板負(fù)責(zé)將來(lái)自61板的控制信號(hào)轉(zhuǎn)化為能夠驅(qū)動(dòng)電動(dòng)機(jī)的信號(hào)。(圖中61板下面的黃色板子)2.3.2硬件框圖小車(chē)控制系統(tǒng)硬件結(jié)構(gòu)比較簡(jiǎn)單,如圖 2.3.3所示,主要分為兩個(gè)部分:一個(gè)是spce061a精簡(jiǎn)開(kāi)發(fā)板(即“61”板),另外一個(gè)是電機(jī)控制板。電機(jī)控制板的工作就是根據(jù)61板的輸出信號(hào)去啟動(dòng)和停止相應(yīng)的電機(jī),以及調(diào)整電機(jī)的正反轉(zhuǎn)方向。正

20、是通過(guò)開(kāi)啟和關(guān)閉相應(yīng)的電機(jī),使電機(jī)在不同的組合狀態(tài)運(yùn)轉(zhuǎn),最終來(lái)實(shí)現(xiàn)小車(chē)的前進(jìn),倒退等功能。圖2.3.3spce061a性能 16位nsp微處理器; 工作電壓(cpu) vdd為3.0v3.6v,(i/o) vddh為vdd5.5v; cpu時(shí)鐘:0.32mhz49.152mhz; 內(nèi)置2k字sram; 內(nèi)置32k flash; 可編程音頻處理; 晶體振蕩器; 系統(tǒng)處于休眠模式下(時(shí)鐘處于停止?fàn)顟B(tài)),耗電僅為2a3.6v; 2個(gè)16位可編程定時(shí)器/計(jì)數(shù)器(可自動(dòng)預(yù)置初始計(jì)數(shù)值); 2個(gè)10位dac(數(shù)-模轉(zhuǎn)換)輸出通道; 32位通用可編程輸入/輸出端口; 兩級(jí)中斷,14個(gè)中斷源; 具備觸鍵喚醒的

21、功能; 使用凌陽(yáng)音頻編碼sacm_s240方式(2.4k位/秒),能容納210秒的語(yǔ)音數(shù)據(jù); 鎖相環(huán)pll振蕩器提供系統(tǒng)時(shí)鐘信號(hào); 32768hz實(shí)時(shí)時(shí)鐘; 7通道10位電壓模-數(shù)轉(zhuǎn)換器(adc)和單通道聲音模-數(shù)轉(zhuǎn)換器; 聲音模-數(shù)轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動(dòng)增益控制(agc)功能; 具備串行設(shè)備接口(uart,sio); 具有低電壓復(fù)位(lvr)功能和低電壓監(jiān)測(cè)(lvd)功能; 內(nèi)置在線仿真電路ice(in- circuit emulator)接口; 具有保密能力; 具有watch-dog功能。 2.3.3小車(chē)控制板 控制板主要包括:接口電路、電源電路和兩路電機(jī)的驅(qū)動(dòng)電路,控制板原

22、理圖如圖 2.3.4所示。 接口電路:接口電路負(fù)責(zé)將61板的i/o接口信號(hào)傳送給控制電路板,i/o信號(hào)主要為控制電機(jī)需要的iob8iob11這四路信號(hào),同時(shí)為了方便后續(xù)的開(kāi)發(fā)和完善,預(yù)留了iob12iob15以及ioa8ioa15接口,可以在這些接口上添加一些傳感器。 電源部分:整個(gè)小車(chē)有4個(gè)電源信號(hào):電池電源,控制板工作電源,61板工作電源,61板的i/o輸出電源。系統(tǒng)供電由電池提供,控制板直接采用電池供電(vcc),然后經(jīng)二極管d1后產(chǎn)生61板電源(vcc_61),通過(guò)61板的vio跳線產(chǎn)生61板的端口電源(v1)。二極管d1作用:a) 降壓,4節(jié)電池提供的電壓vcc最大可達(dá)到6v,d1可

23、有效地降壓。 b) 保護(hù),d1可以防止電源接反燒壞61板。 圖2.3.4功能分區(qū):小車(chē)控制板功能分區(qū)圖如圖2.3.5。其中,a區(qū)為電源區(qū),分別給61板*和小車(chē)控制板提供電源;b、c區(qū)分別為后、前輪的電機(jī)驅(qū)動(dòng)電路,驅(qū)動(dòng)后面兩個(gè)輪或者前面兩個(gè)輪的進(jìn)行正、反兩個(gè)方向的轉(zhuǎn)動(dòng);d區(qū)為i/o接口區(qū),負(fù)責(zé)和61板的接口進(jìn)行連接,注意j5與j6是接通的,j7與j8是接通的。 注:上標(biāo)(*)表示61板可以通過(guò)小車(chē)的電池供電,也可單獨(dú)供電。圖2.3.5 小車(chē)控制板功能分區(qū)圖2.3.4動(dòng)力電機(jī)驅(qū)動(dòng)電路動(dòng)力驅(qū)動(dòng)由后輪驅(qū)動(dòng)實(shí)現(xiàn),負(fù)責(zé)小車(chē)的直線方向運(yùn)動(dòng),包括前進(jìn)和后退,后輪驅(qū)動(dòng)電路是一個(gè)全橋驅(qū)動(dòng)電路,如圖 2.3.5所示

24、:q1、q2、q3、q4四個(gè)三極管組成四個(gè)橋臂,q1和q4組成一組,q2和q3組成一組,q5控制q2、q3的導(dǎo)通與關(guān)斷,q6控制q1和q4的導(dǎo)通與關(guān)斷,而q5、q6由iob9和iob8控制,這樣就可以通過(guò)iob8和iob9控制四個(gè)橋臂的導(dǎo)通與關(guān)斷控制后輪電機(jī)的運(yùn)行狀態(tài),使之正轉(zhuǎn)反轉(zhuǎn)或者停轉(zhuǎn),進(jìn)而控制小車(chē)的前進(jìn)和后退。圖2.3.6當(dāng)iob8為高電平、iob9為低電平時(shí)q1和q4導(dǎo)通,q2和q3截止,后輪電機(jī)正轉(zhuǎn),小車(chē)前進(jìn);反之當(dāng)iob8為低電平、iob9為高電平時(shí)q1和q4截止,q2和q3導(dǎo)通,后輪電機(jī)反轉(zhuǎn),小車(chē)倒退;而當(dāng)iob8、iob9同為低電平時(shí)q1、q2、q3和q4都截止,后輪電機(jī)停轉(zhuǎn),

25、小車(chē)停止運(yùn)動(dòng)。 注意:iob8和iob9不能同時(shí)置高電平,這樣會(huì)造成后輪驅(qū)動(dòng)全橋短路現(xiàn)象。2.3.5方向電機(jī)控制電路方向控制由前輪驅(qū)動(dòng)實(shí)現(xiàn),包括左轉(zhuǎn)和右轉(zhuǎn),前輪驅(qū)動(dòng)電路也是一個(gè)全橋驅(qū)動(dòng)電路,如圖 2.3.6所示:q7、q8、q9、q10四個(gè)三極管組成四個(gè)橋臂,q7和q10組成一組,q8和q9組成一組,q11控制q8、q9的導(dǎo)通與關(guān)斷,q12控制q7和q10的導(dǎo)通與關(guān)斷,而q11、q12由iob10和iob11控制,這樣就可以通過(guò)iob10和iob11控制前輪電機(jī)的正轉(zhuǎn)和反轉(zhuǎn),進(jìn)而控制小車(chē)的左轉(zhuǎn)和右轉(zhuǎn)。 當(dāng)iob10為高電平、iob11為低電平時(shí)q8和q9導(dǎo)通,q7和q10截止,前輪電機(jī)正轉(zhuǎn),小

26、車(chē)前輪朝左偏轉(zhuǎn);反之當(dāng)iob10為低電平、iob11為高電平時(shí)q8和q9截止,q7和q10導(dǎo)通,前輪電機(jī)反轉(zhuǎn),小車(chē)前輪朝右偏轉(zhuǎn);而當(dāng)iob10、iob11同為低電平時(shí)q8和q9截止,q7和q10也截止,前輪電機(jī)停轉(zhuǎn),在彈簧作用下前輪被拉回到中間位置,保持直向。 注意:iob10、iob11不能同時(shí)為高電平,這樣會(huì)造成前輪驅(qū)動(dòng)全橋的橋臂短路。圖2.3.7結(jié)合以上對(duì)前輪和后輪的狀態(tài)分析,得到小車(chē)的運(yùn)行狀態(tài)與輸入的對(duì)照表,如下表所示:iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0000停轉(zhuǎn)停轉(zhuǎn)停0001正轉(zhuǎn)停轉(zhuǎn)前進(jìn)0010反轉(zhuǎn)停轉(zhuǎn)倒退0101正轉(zhuǎn)正轉(zhuǎn)左前轉(zhuǎn)1001正轉(zhuǎn)反轉(zhuǎn)右前轉(zhuǎn)表2.3.1另

27、外還有一些不常用的運(yùn)行狀態(tài),比如右后轉(zhuǎn)、左后轉(zhuǎn)等,結(jié)合以上對(duì)前輪和后輪的狀態(tài)分析,其端口對(duì)照如表 2.3.2所示:iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0110反轉(zhuǎn)正轉(zhuǎn)右后轉(zhuǎn)1010反轉(zhuǎn)反轉(zhuǎn)左后轉(zhuǎn)表2.3.2注意:為了小車(chē)的安全請(qǐng)不要出現(xiàn)以下兩種組合情況:iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)*11停轉(zhuǎn)*停11*停轉(zhuǎn)停表2.3.3第四節(jié) 小車(chē)的功能實(shí)現(xiàn)原理2.4.1小車(chē)直走的實(shí)現(xiàn)過(guò)程只要讓小車(chē)的前輪保持自然狀態(tài)(即不左偏又不右偏),然后讓后輪正傳即可實(shí)現(xiàn)小車(chē)的前進(jìn)。對(duì)應(yīng)全橋驅(qū)動(dòng)電路如表2.4.1所示iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0001正轉(zhuǎn)停轉(zhuǎn)

28、前進(jìn)表2.4.12.4.2小車(chē)倒退的實(shí)現(xiàn)過(guò)程與之相反,只要讓小車(chē)的前輪保持自然狀態(tài)(即不左偏又不右偏),然后讓后輪倒傳即可實(shí)現(xiàn)小車(chē)的前進(jìn)。 對(duì)應(yīng)全橋驅(qū)動(dòng)電路如表2.4.2所示iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0010反轉(zhuǎn)停轉(zhuǎn)倒車(chē)表2.4.22.4.3小車(chē)的左前轉(zhuǎn)實(shí)現(xiàn)過(guò)程在某些場(chǎng)合,小車(chē)還需要轉(zhuǎn)彎,那么小車(chē)又是怎樣實(shí)現(xiàn)轉(zhuǎn)彎的呢?如果需要小車(chē)實(shí)現(xiàn)左前轉(zhuǎn),可以讓小車(chē)的前輪左偏,后輪正轉(zhuǎn),這樣就可以實(shí)現(xiàn)小車(chē)的左轉(zhuǎn),如表 2.4.3所示:iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0101正轉(zhuǎn)正轉(zhuǎn)左前轉(zhuǎn)表2.4.32.4.4小車(chē)的右前轉(zhuǎn)實(shí)現(xiàn)過(guò)程如果需要小車(chē)實(shí)現(xiàn)右前轉(zhuǎn),可以讓小車(chē)

29、的前輪右偏,后輪正轉(zhuǎn),這樣就可以實(shí)現(xiàn)小車(chē)的右轉(zhuǎn),如表 2.4.4所示:iob11iob10iob9iob8后電機(jī)前電機(jī)小車(chē)0110反轉(zhuǎn)正轉(zhuǎn)右后轉(zhuǎn)1010反轉(zhuǎn)反轉(zhuǎn)左后轉(zhuǎn)2.4.5小車(chē)的右后轉(zhuǎn)及左后轉(zhuǎn)與之相反,即可。2.4.6pwm調(diào)速的原理 如果需要調(diào)速,可以直接調(diào)用spce061a的pwm資源,通過(guò)調(diào)節(jié)pwm的占空比來(lái)實(shí)現(xiàn)速度的調(diào)節(jié)。當(dāng)iob11iob8輸出的邏輯電平組合為“0001”時(shí),加在后輪電機(jī)上的驅(qū)動(dòng)電壓為vcc;而當(dāng)iob11iob8輸出“0000”時(shí),加在后電機(jī)上的電壓為0v。如果交替地向端口送“0001”和“0000”兩種組合(pwm輸出端口自動(dòng)實(shí)現(xiàn)),那么加在小車(chē)電機(jī)兩端的電壓

30、就在vcc和0v之間不停的跳變,對(duì)應(yīng)的電機(jī)電壓波形如圖 2.4.1示:圖2.4.1 pwm調(diào)速原理圖此時(shí)加在電機(jī)兩端的平均電壓uo=th/(th+tl)*vcc。 可以通過(guò)調(diào)整pwm的占空比,來(lái)改變th和tl的比值,從而改變uo的大小。這樣就可以通過(guò)pwm資源調(diào)節(jié)加在電機(jī)兩端的平均電壓,從而改變電機(jī)的轉(zhuǎn)速,最終實(shí)現(xiàn)調(diào)節(jié)小車(chē)速度的目的。 另外也可以利用程序使端口產(chǎn)生pwm波形,控制小車(chē)的速度,在此不作贅述。2.4.7語(yǔ)音識(shí)別原理語(yǔ)音識(shí)別主要分為“訓(xùn)練”和“識(shí)別”兩個(gè)階段。在訓(xùn)練階段,單片機(jī)對(duì)采集到的語(yǔ)音樣本進(jìn)行分析處理,從中提取出語(yǔ)音特征信息,建立一個(gè)特征模型;在識(shí)別階段,單片機(jī)對(duì)采集到的語(yǔ)音樣

31、本也進(jìn)行類(lèi)似的分析處理,提取出語(yǔ)音的特征信息,然后將這個(gè)特征信息模型與已有的特征模型進(jìn)行對(duì)比,如果二者達(dá)到了一定的匹配度,則輸入的語(yǔ)音被識(shí)別。 語(yǔ)音識(shí)別的具體流程如圖 2.4.2所示:圖2.4.2 語(yǔ)音識(shí)別流程說(shuō)明框圖第五節(jié) 軟件流程設(shè)計(jì)2.5.1 主程序流程圖以配套資料中的語(yǔ)音識(shí)別程序(car_demo)為例,說(shuō)明語(yǔ)音識(shí)別小車(chē)的實(shí)現(xiàn)過(guò)程,圖 2.5.1所示為小車(chē)的主程序工作流程。圖2.5.1主程序流程圖語(yǔ)音識(shí)別小車(chē)的主程序流程如圖 4.1所示,分為四大部分:初始化部分、訓(xùn)練部分、識(shí)別部分、重訓(xùn)操作。 初始化部分:初始化操作將iob8iob11設(shè)置為輸出端,用以控制電機(jī)。必要時(shí)還要有對(duì)應(yīng)的輸入

32、端設(shè)置和pwm端口設(shè)置等。 訓(xùn)練部分:訓(xùn)練部分完成的工作就是建立語(yǔ)音模型。程序一開(kāi)始判斷小車(chē)是否被訓(xùn)練過(guò),如果沒(méi)有訓(xùn)練過(guò)則要求對(duì)其進(jìn)行訓(xùn)練,并且會(huì)在訓(xùn)練成功之后將訓(xùn)練的模型存儲(chǔ)到flash,在以后使用時(shí)不需要重新訓(xùn)練;如果已經(jīng)訓(xùn)練過(guò)會(huì)把存儲(chǔ)在flash中的模型調(diào)出來(lái)裝載到辨識(shí)器中。 識(shí)別部分:在識(shí)別環(huán)節(jié)當(dāng)中,如果辨識(shí)結(jié)果是名字,停止當(dāng)前的動(dòng)作并進(jìn)入待命狀態(tài),然后等待動(dòng)作命令。如果辨識(shí)結(jié)果為動(dòng)作指令小車(chē)會(huì)語(yǔ)音告知相應(yīng)動(dòng)作并執(zhí)行該動(dòng)作,在運(yùn)動(dòng)過(guò)程中可以通過(guò)呼叫小車(chē)的名字使小車(chē)停下來(lái)。 重訓(xùn)操作:考慮到有重新訓(xùn)練的需求,設(shè)置了重新訓(xùn)練的按鍵(61板的key3),循環(huán)掃描該按鍵,一旦檢測(cè)到此鍵按下,則

33、將擦除訓(xùn)練標(biāo)志位(0xe000單元),并等待復(fù)位。復(fù)位后,程序重新執(zhí)行,當(dāng)檢測(cè)到訓(xùn)練標(biāo)志位為0xffff時(shí)會(huì)要求重新對(duì)其進(jìn)行訓(xùn)練。 在程序的代碼中有詳細(xì)的注釋?zhuān)?qǐng)參看資料中的例程car_demo。2.5.2 程序中需要說(shuō)明的幾個(gè)問(wèn)題 在這個(gè)程序中有幾個(gè)地方不易理解,需要特別說(shuō)明一下: 首先,小車(chē)有沒(méi)有經(jīng)過(guò)訓(xùn)練是怎么知道的?在這里利用了一個(gè)特殊的flash單元,當(dāng)flash在初始化以后,如果沒(méi)有進(jìn)行過(guò)寫(xiě)操作的話,那么該單元的內(nèi)容為0xffff。(該示例程序中為0xe000單元),該單元內(nèi)容在擦除后為0xffff,在成功訓(xùn)練并存儲(chǔ)后為0x0055(該值由辨識(shí)器自動(dòng)生成)。這樣就可以根據(jù)這個(gè)單元的值

34、來(lái)判斷是否經(jīng)過(guò)訓(xùn)練。 其次,為什么已經(jīng)訓(xùn)練過(guò)的系統(tǒng)在重新運(yùn)行時(shí)還要進(jìn)行模型裝載?在首次訓(xùn)練完成之后,辨識(shí)器中保存著訓(xùn)練的模型,但是一旦系統(tǒng)復(fù)位,辨識(shí)器中的模型就會(huì)丟失,所以在重新運(yùn)行時(shí)必須把存儲(chǔ)在flash中的語(yǔ)音模型裝載到辨識(shí)器中去。 第三,關(guān)于語(yǔ)音的一些具體問(wèn)題,關(guān)于語(yǔ)音的一些具體問(wèn)題請(qǐng)參看spce061a相關(guān)書(shū)籍中關(guān)于語(yǔ)音的詳細(xì)介紹。 第三章 小車(chē)的安裝與實(shí)現(xiàn)第一節(jié) 硬件的安裝3.1.1 小車(chē)的焊接第一步 小車(chē)控制板裸板檢測(cè) 目的:檢測(cè)裸板電路是否有短路或者是斷路的現(xiàn)象; 方法:從pcb板的背面觀察板上的布線,是否出現(xiàn)制板加工時(shí)導(dǎo)制的短路、斷線、過(guò)孔阻賽等現(xiàn)象。 第二步 檢測(cè)元器件、并做

35、器件整形 1用萬(wàn)用表檢測(cè)8個(gè)電阻,測(cè)量驗(yàn)證電阻的阻值,并按照阻值把他們分成兩組(一組的阻值為200/330,另一組的阻值為2k/2.2k)。注意不要混了。 2利用萬(wàn)用表檢測(cè)12個(gè)三極管,確定三極管有放大能力;把這些三極管中npn的8050放到一塊, pnp的8550放到一塊。注意不要混了;如果有失去放大能力的,要用好的替換掉。 3利用萬(wàn)用表檢測(cè)三極管的極性,并按電路板間距把引腳折彎,以便插到電路板上。 4將所有檢測(cè)過(guò)的電阻、電容、二極管按電路板間距把引腳折彎,以便插到電路板上。注意:絕對(duì)不能在元件引腳跟部反復(fù)折彎,因?yàn)檫@樣引起的元件內(nèi)部接觸不良造成的故障是很難維修的。 第三步 焊接電阻 如圖3

36、.1.1所示:圖3.1.1電阻焊接效果圖第四步 焊接三極管 如圖3.1.2所示;注意三極管的三個(gè)管腳(e、b、c)不要接錯(cuò)。圖3.1.2三極管焊接效果圖第五步 焊接接口 如圖3.1.3所示;小車(chē)控制板上只有iob的911口有作用,其他都是預(yù)留接口;j5和j6是接通的,所以只需焊接j5接口就可以了,將10pin排針焊接到j(luò)5。圖3.1.3接口焊接效果圖第六步 測(cè)試車(chē)體引線正負(fù)極: 1、電源測(cè)試:安裝電池,打開(kāi)小車(chē)電源,測(cè)量出電源的正負(fù)極引線并標(biāo)識(shí); 2、電機(jī)測(cè)試:將后輪電機(jī)引線接小車(chē)電源,使后輪正轉(zhuǎn),此時(shí)標(biāo)注和電源正極相連引線為“+”,另一根為“”;將前輪電機(jī)引線(如圖 2.4c)接電源,使前輪

37、左偏,此時(shí)標(biāo)注和電源正極相連引線為“+”,另一根為“”第七步 連接車(chē)體和控制板:連接控制板主要包括,電源連接和電機(jī)連接 1、焊接電源:將電源正負(fù)極引線分別焊至控制板j1的“vcc”和“” 2、焊接電機(jī):將后輪電機(jī)焊至j3,前輪電機(jī)焊至j4,注意方形焊盤(pán)為正極 3、將10cm紅色導(dǎo)線焊至控制板j2的“vcc_61”,綠色導(dǎo)線焊至j2的“”,為61板供電。第八步 固定控制板,首先把喇叭固定在小車(chē)車(chē)體的中間位置,然后把控制板放到車(chē)體上方,找到對(duì)應(yīng)的定位孔,用3個(gè)2.5的螺絲擰緊即可。第九步 測(cè)試 如圖 2.7,按照下面的步驟測(cè)試連接是否正確: 1、打開(kāi)小車(chē)電源, 2、用紅色電源線去接觸j5的“8”,

38、此時(shí)小車(chē)后輪正轉(zhuǎn); 3、用紅色電源線去接觸j5的“9”,此時(shí)小車(chē)后輪反轉(zhuǎn); 4、用紅色電源線去接觸j5的“10”,此時(shí)小車(chē)前輪左偏; 5、用紅色電源線去接觸j5的“11”,此時(shí)小車(chē)前輪右偏; 如果符合以上現(xiàn)象,證明電路的焊接和連接通過(guò)。如果和以上現(xiàn)象不符,則有以下可能: 1、電機(jī)不轉(zhuǎn)三極管不發(fā)熱,檢查電源是否接通、中間是否有斷路的情況 2、如果電機(jī)不轉(zhuǎn)且三極管發(fā)熱,證明有短路情況 3、如果電機(jī)轉(zhuǎn)向剛好相反,證明電機(jī)的正負(fù)極引線焊接反向,卸下反接即可。第十步 焊接61板1、采用普通61板(排針在61板正面) 控制板的j5焊接10pin排針,用10pin排線將61板的j7(iobh)與控制板的j5

39、連接,連接時(shí)注意方向。最后把喇叭接好,小車(chē)的硬件連接就完成了。 2、采用特制61板(排針在61板反面) 控制板的j6焊接10pin排孔,然后直接將61板扣接在控制板上面,61板的j7直接與控制板的j6對(duì)接。最后把喇叭接好,小車(chē)的硬件連接就完成了。第二節(jié) 代碼編譯及下載3.2.1 代碼編譯下表為小車(chē)實(shí)例源代碼 #define p_iob_data (unsigned int *)0x7005 #define p_iob_dir (unsigned int *)0x7007 #define p_iob_attrib (unsigned int *)0x7008 #define p_watchdog

40、_clear (unsigned int *)0x7012 main() *p_iob_dir = 0xffff; *p_iob_attrib = 0xffff; /設(shè)置iob為同相輸出 *p_iob_data = 0x0100; /前進(jìn) while(1) *p_watchdog_clear=0x0001; /清看門(mén)狗 源代碼說(shuō)明 首先: #define p_iob_data (unsigned int *)0x7005 #define p_iob_dir (unsigned int *)0x7007 #define p_iob_attrib (unsigned int *)0x7008 #d

41、efine p_watchdog_clear (unsigned int *)0x7012以上是宏定義操作,在程序的開(kāi)頭對(duì)常用的單片機(jī)資源端口進(jìn)行定義,在以后的程序中就可以直接引用這些宏名來(lái)代替端口地址完成端口操作。這樣做的好處:一是可讀性強(qiáng),宏名能夠直接表達(dá)出端口的含義;二是易于修改,如果需要重新分配端口,可以在宏定義部分修改,而不必在程序中逐一修改。上面定義了一些用到的硬件資源包括io端口和看門(mén)狗資源。 第二: *p_iob_dir = 0xffff; *p_iob_attrib = 0xffff; /設(shè)置iob為同相輸出端 這兩句共同完成b口的初始化工作,通過(guò)這兩句把b口初始化為同相的輸

42、出口,以后直接通過(guò)b口來(lái)向外輸出0、1電平。 第三: *p_iob_data = 0x0100; /前進(jìn) 這是整個(gè)程序的核心部分,正是通過(guò)這條指令來(lái)完成數(shù)據(jù)輸出的。執(zhí)行完這條指令以后,對(duì)應(yīng)的b口的16位數(shù)據(jù)為“0000 0001 0000 0000”,其中b 11b 8四位為“0001”,這樣就實(shí)現(xiàn)了小車(chē)的前進(jìn)功能(參看表 3.1),同樣還可以通過(guò)向p_iob_data寫(xiě)不同的數(shù)值來(lái)實(shí)現(xiàn)不同的功能,具體的數(shù)值請(qǐng)參照表 2.1 第四:*p_watchdog_clear=0x0001; /清看門(mén)狗 這是一條清看門(mén)狗的操作,在實(shí)際的系統(tǒng)中,為了保證系統(tǒng)能夠穩(wěn)健的運(yùn)行,引入看門(mén)狗資源。必須在看門(mén)狗的計(jì)數(shù)器溢出之前對(duì)它進(jìn)行重新賦值,

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論