freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于加速度傳感器和單片機(jī)的畢業(yè)設(shè)計(jì)(已改無(wú)錯(cuò)字)

2022-07-25 19:05:18 本頁(yè)面
  

【正文】 77。10%”。我們?cè)诘弥狣AC的最大輸出電流以后,模擬電壓輸出范圍可由DAC的負(fù)載來(lái)決定。由于DAC本身的物理特性,~。以上便是61板各數(shù)據(jù)單元控制點(diǎn)的實(shí)現(xiàn)。在下面的一節(jié)中,我們將涉及到加速度傳感器單元的硬件設(shè)計(jì)部分。 傳感器控制單元設(shè)計(jì)本小節(jié)介紹加速度傳感器的硬件部分。圖27為MMA7260QT三軸加速度傳感器芯片的封裝結(jié)構(gòu)簡(jiǎn)圖。圖27 傳感器模塊簡(jiǎn)圖本次設(shè)計(jì)中,我們需要用到XOUT、YOUT、ZOUT以及VDD、VSS五個(gè)引腳。其他的引腳也可以與凌陽(yáng)單片機(jī)61板相連,用來(lái)拓展更多的功能。這些可以在系統(tǒng)將來(lái)的優(yōu)化中加以考慮,這里不再加以考慮。圖28 傳感器外圍電路圖因?yàn)閭鞲衅餍酒拿娣e較小,外部擴(kuò)展的電路只能進(jìn)行貼片焊接。圖28為傳感器的外圍電路連接圖。這種設(shè)計(jì)是參考了該加速度傳感器的參數(shù)說(shuō)明,因而考慮到了傳感器芯片各種功能的實(shí)現(xiàn),對(duì)各個(gè)引腳都進(jìn)行了電路設(shè)計(jì)。但由于我們?cè)诒敬蜗到y(tǒng)的設(shè)計(jì)中,只需要用到五個(gè)引腳,實(shí)際操作中,可適當(dāng)簡(jiǎn)化傳感器模塊的電路。傳感器電路的設(shè)計(jì),并不是本次系統(tǒng)設(shè)計(jì)的重點(diǎn)。這里只是基于引腳功能做簡(jiǎn)單了解,避免在外圍電路連接時(shí)發(fā)生錯(cuò)誤。至此,本系統(tǒng)硬件設(shè)計(jì)的說(shuō)明基本完成。硬件系統(tǒng)的最終整體外觀如圖29所示。圖29 硬件系統(tǒng)外觀圖 本章小結(jié)本章介紹了系統(tǒng)的硬件設(shè)計(jì),主要包括硬件元器件的選取、系統(tǒng)整體外圍電路的連接、單片機(jī)中各控制單元的實(shí)現(xiàn)以及傳感器的電路等,重點(diǎn)是61板的硬件設(shè)計(jì)。我們根據(jù)性能特點(diǎn)選用了61板和加速度傳感器,用插線對(duì)其進(jìn)行連接。其中,傳感器模塊本身的實(shí)現(xiàn)需用貼片焊接技術(shù)。而I/O接口、A/D轉(zhuǎn)換與音頻也是本次設(shè)計(jì)的關(guān)鍵部分。這都為下一章的軟件編程打下了基礎(chǔ)。 第3章 軟件設(shè)計(jì)系統(tǒng)的軟件設(shè)計(jì),主要包括軟件系統(tǒng)的開(kāi)發(fā)、音頻設(shè)計(jì)、輸入輸出接口及A/D轉(zhuǎn)換設(shè)計(jì)、主函數(shù)設(shè)計(jì)四部分。下面將根據(jù)“出氣寶寶”設(shè)計(jì)的實(shí)際需求對(duì)上述各部分做詳細(xì)的介紹與說(shuō)明。 軟件系統(tǒng)的開(kāi)發(fā)設(shè)計(jì)61板配有凌陽(yáng)自行研發(fā)設(shè)計(jì)的16位單片機(jī)開(kāi)發(fā)環(huán)境IDE。此工具在Windows環(huán)境下操作,支持標(biāo)準(zhǔn)C語(yǔ)言和匯編語(yǔ)言,集編譯、編程、鏈接、調(diào)試和仿真于一體,應(yīng)用方便簡(jiǎn)單易學(xué)。同時(shí)還提供大量的編程函數(shù)庫(kù),大大加快了軟件開(kāi)發(fā)的進(jìn)程。集成開(kāi)發(fā)環(huán)境IDE具有友好的交互界面、下拉菜單、快捷鍵和快速訪問(wèn)命令列表等,使編程、調(diào)試工作方便且高效。此外,它的軟件仿真功能可以在不連接仿真板的情況下模擬硬件的各項(xiàng)功能來(lái)調(diào)試程序。在集成開(kāi)發(fā)環(huán)境IDE中,可以非常方便將編寫好的程序,通過(guò)61板配套的下載線下載到61板上進(jìn)行在線調(diào)試。圖31 61板的開(kāi)發(fā)方式簡(jiǎn)易開(kāi)發(fā)如圖31中的①:61板+下載線+PC機(jī)。我們將61板上的數(shù)據(jù)緩沖電路和下載線統(tǒng)稱為“EZ_PROBE”,這種開(kāi)發(fā)方式開(kāi)發(fā)成本低,適合學(xué)生和初學(xué)者使用。其缺點(diǎn)是對(duì)于比較大的程序代碼下載和調(diào)試速度較慢。但是我們的設(shè)計(jì)不會(huì)考慮到這些影響。使用在線調(diào)試器(PROBE)如圖31中的②:61板+在線調(diào)試器+PC機(jī)。這種開(kāi)發(fā)方式方便自己開(kāi)發(fā)或產(chǎn)品研發(fā)過(guò)程使用,能夠?qū)崟r(shí)在線仿真、調(diào)試和下載程序。但對(duì)于初學(xué)者來(lái)說(shuō),其中加入的PROBE的成本相對(duì)較高。61板的開(kāi)發(fā)是通過(guò)下載線(EZ_PROBE)或在線調(diào)試器(PROBE)實(shí)現(xiàn)的。用它可以替代在單片機(jī)應(yīng)用項(xiàng)目的開(kāi)發(fā)過(guò)程中常用的兩件工具——硬件在線實(shí)時(shí)仿真器和程序燒寫器。他們都利用了SPCE061A芯片內(nèi)置的在線仿真電路ICE和凌陽(yáng)公司的在線串行編程技術(shù)。EZ_PROBE和PROBE均工作于凌陽(yáng)IDE集成開(kāi)發(fā)環(huán)境軟件包下,他們對(duì)應(yīng)的5芯的仿真頭分別連接到61板的緩沖電路輸入管腳和SPCE061A芯片相應(yīng)管腳上,實(shí)現(xiàn)在目標(biāo)電路板上的CPU(SPCE061A)調(diào)試、運(yùn)行用戶編制的程序;另一頭是標(biāo)準(zhǔn)25針打印機(jī)接口,直接連接到計(jì)算機(jī)打印口與上位機(jī)通訊(如圖31),在計(jì)算機(jī)IDE集成開(kāi)發(fā)環(huán)境軟件包下,完成在線調(diào)試功能[11]。EZ_PROBE和PROBE不同的是在IDE集成開(kāi)發(fā)環(huán)境下需要選擇當(dāng)前是使用哪一種方式進(jìn)行調(diào)試,具體操作見(jiàn)圖32,其中PROBE共有三種選擇方式:采用自動(dòng)方式調(diào)試可選Auto;采用PROBE調(diào)試選PRINTER_PROBE;采用圖32 在線調(diào)試方式選擇EZ_PROBE調(diào)試可選EZ_PROBE即可。本次系統(tǒng)設(shè)計(jì)采用“EZ_PROBE”的開(kāi)發(fā)調(diào)試方式。 音頻設(shè)計(jì) 音頻處理方案語(yǔ)音和音樂(lè)與我們的生活有著非常密切的關(guān)系,而單片機(jī)對(duì)語(yǔ)音的控制如錄放音、合成及辨識(shí)也廣泛應(yīng)用在現(xiàn)實(shí)生活中。我們知道對(duì)于語(yǔ)音處理大致可以分為A/D、編碼處理、存儲(chǔ)、解碼處理以及D/A等見(jiàn)圖33所示。圖33 單片機(jī)對(duì)語(yǔ)音處理過(guò)程然而,通過(guò)前面介紹我們知道麥克風(fēng)輸入所生成的WAVE文件,其占用的存儲(chǔ)空間很大,對(duì)于單片機(jī)來(lái)說(shuō)想要存儲(chǔ)大量的信息顯然是不可能的,而凌陽(yáng)的SPCE061A提出了解決的方法,即SACMLIB,該庫(kù)將A/D、編碼、解碼、存儲(chǔ)及D/A作成相應(yīng)的模塊,對(duì)于每個(gè)模塊都有其應(yīng)用程序接口API,所以您只需了解每個(gè)模塊所要實(shí)現(xiàn)的功能及其參數(shù)的內(nèi)容,然后調(diào)用該API函數(shù)即可實(shí)現(xiàn)該功能,例如在程序中插入語(yǔ)音提示,或連續(xù)播放一段語(yǔ)音或音樂(lè),也可以根據(jù)自己需要的空間或使用范圍選擇適合自己的算法如表41所示[12]。表31 SACMlib庫(kù)中模塊及其算法類型模塊名稱(ModelIndex)語(yǔ)音壓縮編碼率類型資料采樣率SACM_A200016Kbit/s,20Kbit/s,24Kbit/s16KHzSACM_S480/S720,16KHzSACM_S24024KHzSACM_MS01音樂(lè)合成(16Kbits/s,20Kbits/s,24Kbits/s)16KHzSACM_DVR(A2000)16Kbit/s的資料率,8K的采樣率,用于ADC 通道錄音功能16KHz 語(yǔ)音自動(dòng)播放函數(shù)設(shè)計(jì)在上面的算法介紹中可以看到SACM_A2000壓縮算法壓縮比較小(8:1),所以具有高質(zhì)量、高碼率的特點(diǎn),適用于高保真音樂(lè)和語(yǔ)音。因此,本系統(tǒng)中的“哭聲”設(shè)計(jì)選用SACM_A2000壓縮算法。下面對(duì)本次設(shè)計(jì)中用到的幾個(gè)API函數(shù)進(jìn)行具體介紹。SACM_A2000_Initial(int Init_Index),用于SACM_A2000語(yǔ)音播放之前的初始化。Init_Index=0表示手動(dòng)方式;Init_Index=1則表示自動(dòng)方式。該函數(shù)用于對(duì)定時(shí)器、中斷和DAC等的初始化[13]。SACM_A2000_ServiceLoop(void),用于從資源中獲取SACM_A2000語(yǔ)音資料,并將其填入譯碼隊(duì)列中。SACM_A2000_Play(int Speech_Index,int Channel, int Ramp_Set),用于播放資源中SACM_A2000語(yǔ)音或樂(lè)曲。Speech_Index表示語(yǔ)音索引號(hào)。其中的Channel,1表示通過(guò)DAC1通道播放;2表示通過(guò)DAC2通道播放;3表示通過(guò)DAC1和DAC2雙通道播放。對(duì)于Ramp_Set,0表示禁止音量增/減調(diào)節(jié);1表示僅允許音量增調(diào)節(jié);2表示僅允許音量減調(diào)節(jié);3表示允許音量增/減調(diào)節(jié)。SACM_A2000的數(shù)據(jù)率有16Kbps、20Kbps和24Kbps三種,可以在同一模塊的幾種算法中自動(dòng)選擇一種。 SACM_A2000_SpeechTable中的偏移地址。中斷服務(wù)子程序F_FIQ_Service_SACM_A2000必須安置在TMA_FIQ中斷向量上。函數(shù)允許TimerA以所選的的數(shù)據(jù)采樣率(計(jì)數(shù)溢出)中斷。SACM_A2000_Stop(void),用于停止播放SACM_A2000語(yǔ)音或樂(lè)曲。SACM_A2000_Volume(Volume_Index),用于在播放SACM_A2000語(yǔ)音或樂(lè)曲時(shí)改變主音量。Volume_Index為音量數(shù),音量從最小到最大可在0~15之間選擇。F_FIQ_Service_ SACM_A2000,用作SACM_A2000語(yǔ)音背景程序的中斷服務(wù)子程序。通過(guò)前臺(tái)子程序(自動(dòng)方式的SACM_A2000_ServiceLoop)對(duì)語(yǔ)音資料進(jìn)行解碼,然后將其送入DAC通道播放。SACM_A2000語(yǔ)音背景子程序只有匯編指令形式,且應(yīng)將此子程序安置在TMA_FIQ中斷源上。凌陽(yáng)SACM_A2000壓縮算法有兩種語(yǔ)音播放方式:自動(dòng)方式和手動(dòng)方式。本設(shè)計(jì)中“出氣寶寶”“哭聲”的播放采用自動(dòng)方式。凌陽(yáng)SACM_A2000壓縮算法的語(yǔ)音播放要經(jīng)過(guò)一個(gè)語(yǔ)音播放初始化,即初始化為自動(dòng)方式或者手動(dòng)方式,取數(shù)據(jù),填充語(yǔ)音隊(duì)列(或者是解壓縮隊(duì)列),解壓縮,輸出播放的過(guò)程。自動(dòng)播放時(shí),取數(shù)據(jù),填充語(yǔ)音隊(duì)列及解壓縮調(diào)用SACM_A2000_ ServiceLoop()一個(gè)函數(shù)就可以實(shí)現(xiàn)。參見(jiàn)圖34。圖34 語(yǔ)音自動(dòng)播放函數(shù)流程圖 語(yǔ)音文件壓縮設(shè)計(jì)本設(shè)計(jì)中應(yīng)用到的“哭聲”。在程序中,經(jīng)自動(dòng)播放函數(shù)的調(diào)用而“發(fā)聲”。需要注意的是,符合編程要求的聲音文件,都是要經(jīng)過(guò)壓縮的。凌陽(yáng)語(yǔ)音壓縮工具(Compress Tool),但要求壓縮語(yǔ)音資源屬性為8k,16位,單聲道。Compress Tool的安裝軟件在凌陽(yáng)大學(xué)計(jì)劃網(wǎng)站的下載專區(qū)可以找到,下載安裝軟件后,按照默認(rèn)的方式進(jìn)行安裝。如果語(yǔ)音屬性不是8k,16位,單聲道,可以用Windows自帶的的錄音機(jī)軟件去處理。處理方法如下:打開(kāi)錄音機(jī),點(diǎn)擊[屬性]選項(xiàng),打開(kāi)屬性對(duì)話框。點(diǎn)擊“立即轉(zhuǎn)換”,在打開(kāi)的對(duì)話框中選擇“8kHz,16位,單聲道”,點(diǎn)擊“確定”。保存到桌面。處理語(yǔ)音資源為“8kHz,16位,單聲道”時(shí)。壓縮方法如下:在[開(kāi)始]→[程序]→[Compress Tool]打開(kāi)語(yǔ)音壓縮工具。在出現(xiàn)的界面中可以壓縮單個(gè)文件,也可以壓縮多個(gè)文件,根據(jù)本設(shè)計(jì)的需要,點(diǎn)擊“壓縮單個(gè)文件”。進(jìn)入新的界面后,選擇要壓縮的語(yǔ)音文件,點(diǎn)擊“下一步”。在出現(xiàn)的對(duì)話框中,選擇壓縮后的存儲(chǔ)路徑和名稱,并選擇壓縮算法和數(shù)據(jù)率(這里選擇A2000),點(diǎn)擊“壓縮”。(凌陽(yáng)科技目前提供兩種語(yǔ)音壓縮算法:A2000和S480,A2000有三種數(shù)據(jù)率可供選擇:16Kbits/s,20Kbits/s,24Kbits/s)。 壓縮成功后,就會(huì)出現(xiàn)“ok!”[14]。此時(shí),點(diǎn)擊“下一步”,在下一個(gè)窗口里點(diǎn)擊“完成”完成壓縮,或者也可以“返回”繼續(xù)壓縮其他語(yǔ)音文件。 I/O接口及A/D轉(zhuǎn)換設(shè)計(jì) I/O接口設(shè)計(jì)本設(shè)計(jì)中,采用IOA[0~2]作為輸入端口以傳送傳感器X、Y、Z三個(gè)方向上的數(shù)據(jù)。傳入的模擬信號(hào)需要經(jīng)過(guò)A/D轉(zhuǎn)換,因此宜把IOA[0~2]的輸入功能設(shè)定為“不帶喚醒功能的懸浮式輸入”。由上一章的知識(shí),我們可以得出A端口的屬性設(shè)置及對(duì)應(yīng)的端口位狀態(tài),如表32所示:表32 A端口設(shè)置地址b15~b3b2b1b07002HDir0007003HAttrib1117000HData111狀態(tài)不帶喚醒功能的懸浮式輸入因此,在程序設(shè)計(jì)中,我們可以這樣編寫IOA口的定義:*P_IOA_Diramp。= 0Xfff8;*P_IOA_Attrib |= 0x0007;*P_IOA_Date |= 0x0007;需要說(shuō)明的是,程序編寫過(guò)程中或者令頭文件包含“”,或者用define進(jìn)行單獨(dú)定義,否則,程序會(huì)出錯(cuò)。完成了IOA口的定義,我們便為之后A/D轉(zhuǎn)換的程序設(shè)計(jì)做好了準(zhǔn)備。 A/D轉(zhuǎn)換設(shè)計(jì)根據(jù)本設(shè)計(jì)的需求,在P_ADC_MUX_Ctrl控制單元中,只有一位需要進(jìn)行設(shè)置。第0位ADE(寫)。由第三章的內(nèi)容可知:當(dāng)b0設(shè)為1時(shí),啟用模擬數(shù)字轉(zhuǎn)換功能;當(dāng)b0設(shè)為0時(shí),關(guān)閉模擬數(shù)字轉(zhuǎn)換功能。因此,程序編寫過(guò)程中,應(yīng)輸入語(yǔ)句:“*P_ADC_Ctrl = 0x0001”。在P_ADC_MUX_Ctrl控制單元中,我們主要側(cè)重其LINE_IN通道的選擇功能,即bbb0三位的設(shè)置。由于P_ADC_MUX_Ctrl單元每次只能選擇7路通道中的一個(gè)進(jìn)行A/D轉(zhuǎn)換,因此我們要對(duì)傳感器輸出的三路數(shù)據(jù)依次進(jìn)行轉(zhuǎn)換,并通過(guò)中間變量保存每路數(shù)據(jù)的轉(zhuǎn)換值[15]。另外,需要注意的還有P_ADC_MUX_Data(讀)(702CH)單元,它用于讀出LINE_IN[7:1]10位ADC轉(zhuǎn)換的數(shù)字?jǐn)?shù)據(jù),其對(duì)應(yīng)關(guān)系在上一章表36中已有所介紹。因?yàn)镻_ADC_MUX_Data單元讀出的10位數(shù)據(jù)放在b15~b6,所以向中間變量保存數(shù)據(jù)時(shí),須右移6位,以得到正確的值。相關(guān)的程序我們可以做如下設(shè)計(jì)。把讀A/D轉(zhuǎn)換數(shù)據(jù)部分用一個(gè)函數(shù)ADC_Convert()來(lái)表示,其編寫的流程如圖35所示: 圖35 函數(shù)ADC_Convert流程圖在主程序中,每次改變轉(zhuǎn)換通道后,可調(diào)用此函數(shù)。同樣需要說(shuō)明的是,程序編寫過(guò)程中或者令頭文件包含“”,或者用define對(duì)各數(shù)據(jù)單元進(jìn)行單獨(dú)定義:否則,程序會(huì)出錯(cuò)。通過(guò)以上的設(shè)計(jì),三路加速度傳感器中的數(shù)據(jù)便能讀入單片機(jī)了。我們也即可對(duì)數(shù)據(jù)進(jìn)行處理,并調(diào)用“哭聲”。這些工作將在主程序的設(shè)計(jì)中實(shí)現(xiàn)。 主程序設(shè)計(jì)當(dāng)“出氣寶寶”的電源打開(kāi)之后,單片機(jī)開(kāi)始工作。這時(shí),系統(tǒng)需要隨時(shí)對(duì)外部信號(hào)進(jìn)行監(jiān)測(cè),一旦傳感器數(shù)據(jù)滿足設(shè)定條件,“出氣寶寶”便要發(fā)出相應(yīng)的“哭聲”。系統(tǒng)工作的流程框圖如下:圖36 主程序流程框圖接下來(lái)將對(duì)程序設(shè)計(jì)的步驟做具體的說(shuō)明。新建。打開(kāi)IDE開(kāi)發(fā)環(huán)境,新建一個(gè)工程chuqibaobao??截愵^文件。由于在播放SACM_A2000格式的語(yǔ)音文件時(shí)。我們可以從凌陽(yáng)實(shí)驗(yàn)儀指導(dǎo)書范例代碼\、(也可從凌陽(yáng)網(wǎng)站下載得到),并把這些文件拷貝到工程文件夾下??截愔С治募?。凌陽(yáng)試驗(yàn)儀指導(dǎo)書范例代碼\include里提供了定義硬件及相關(guān)函數(shù)的頭文件和匯編文件。、??截悗?kù)文件。這
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1