基于CAN總線的音頻報警模塊的設計(圖文)_第1頁
基于CAN總線的音頻報警模塊的設計(圖文)_第2頁
基于CAN總線的音頻報警模塊的設計(圖文)_第3頁
基于CAN總線的音頻報警模塊的設計(圖文)_第4頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于CAN總線的音頻報警模塊的設計(圖文)    論文導讀:CAN總線是一種有效支持分布式控制的實時控制或實時控制的串行通信網絡,具有實時性強、傳輸距離遠、抗干擾能力強、成本低的特點,在各個領域中都有著廣泛的應用。本文中介紹的音頻報警模塊,根據發音原理用單片機本身的定時器產生不同頻率的方波從而發出不同聲音,不僅可以有效地解決報警音單調的問題而且還能降低開發成本。采用8位AVR單片機ATmega128作為此模塊的微控制器,其外設資源豐富,可根據收到的命令控制各部分完成各種功能。 關鍵詞:CAN總線,AVR單片機,音頻報警   

2、 CAN總線是一種有效支持分布式控制的實時控制或實時控制的串行通信網絡,具有實時性強、傳輸距離遠、抗干擾能力強、成本低的特點,在各個領域中都有著廣泛的應用。免費論文網。而在一些要求實時觀測數據、報告設備狀態的場合中,往往需要配有報警裝置。以往這種報警裝置經常采用蜂鳴器或者語音芯片來產生報警音,采用蜂鳴器時其聲音單調,而采用語音芯片時價格問題又是一個不得不考慮的因素。 本文中介紹的音頻報警模塊,根據發音原理用單片機本身的定時器產生不同頻率的方波從而發出不同聲音,不僅可以有效地解決報警音單調的問題而且還能降低開發成本。同時硬件設計時還考慮了某些情況下,系統需要記錄部件報警時的部分參數,還

3、附加了存儲芯片可以存儲少量數據信息,特別適合一些小型系統或儀器使用。 1 CAN網絡結構及通信協議 在CAN網絡中,主控制器通過CAN總線與各個智能節點通信,讀取各個節點的狀態信息并向各節點發送控制信息。圖1為一個需要報警設備的CAN網絡結構,主控制通過CAN網絡監控各節點的狀態,根據一定的參數標準向報警模塊發送報警命令使報警器鳴叫。 圖1 應用音頻報警模塊的CAN網絡結構 在CAN網絡中數據以報文為單位進行傳輸,節點對總線的訪問采用為仲裁方式。報文起始部分為標識符,在CAN2.0B中標識符采用29位格式。 報警模塊與整個系統CAN網絡連接,可接收總線上的全部發給此模塊的全部數據幀。免費論文網

4、。一個CAN數據幀包括標識符和8字節數據。根據標識符可判斷出該數據幀是哪個部分發送的,在根據系統的通信協議對幀信息進行解析。以報警模塊在全自動凝血儀中的應用為例,說明數據幀的格式。圖2為凝血儀中采用29位標識符擴展幀的報警幀格式。 圖2 全自動凝血儀中CAN報警幀格式 2 音頻報警模塊硬件設計 音頻報警模塊硬件結構如圖3所示。采用8位AVR單片機ATmega128作為此模塊的微控制器,其外設資源豐富,可根據收到的命令控制各部分完成各種功能;聲音驅動部分,采用低電壓的音頻功率放大芯片LM386推動揚聲器發音;CAN總線傳輸部分,采用CAN總線控制器SJA1000和CAN總線收發器PCA82C25

5、0完成接收和發送CAN信息幀功能。此外,此模塊還帶用數據存儲部分,可以滿足小數據量的讀寫,我們選取TI公司生產的AT24C512芯片(容量64K),此芯片通過I2C總線讀寫數據,可根據需要最多外掛4片。 圖3 音頻報警模塊硬件設計 3 音頻報警及數據存儲模塊軟件設計 3.1 軟件實現分析 聲音是物體的振動產生的,振動的頻率不同,發出的聲音就不同,樂音是有規律的振動發出的。樂譜中每一個音符都與某一個特定的頻率相對應(見表一)。此外,音樂播放時還要有一個曲調,音頻報警模塊中使用3/4拍,而這個曲調值所對應的1個節拍的時間是748000s。因此,可以在程序中定義一個全局變量的二維數組,其第一字節表示

6、音符,第二字節表示此音符的節拍,數組的長度依報警音樂而定。這樣就可以根據不同的環境,編輯多種不同的報警音樂。 AVR單片機(Atmege128)有四個定時器,其中兩個16位定時器T1/T3和兩個8位定時器T0。免費論文網。使16位定時器T1工作在輸出匹配模式下,直接將音符對應的頻率輸入到前面定義的數組中,就可方便的產生我們需要的不同頻率的方波,驅動揚聲器發出不同音符的聲音。用8位定時器T0來控制音符播放的時間(即節拍),由于8位定時器最大計數值是255,所以僅將T0中預置1/400節拍的時間,另外設一個計數器,T0每中斷一次計數器加1,直到達到節拍為止。 對于CAN信息幀的處理,可以根據通信協

7、議在AVR單片機中開辟一個緩存區,用來存放分離出的一幀信息。一般緩存區有一定的長度,當收到的幀信息數大于所設置的最大接收幀信息數時,即從緩存區的開頭重新存儲。此外,在CAN總線系統中一般為了測試各個節點的狀態,主控制器經常會發送一些廣播信息或握手命令。而對于這些情況,可以在CAN協議解析中直接應答而不將此幀信息存入緩存區,以免濫費緩存空間、影響執行速度。 表1 C調音符與頻率及計數器初值對應關系               低 音   

8、 中 音    高 音     頻率(Hz)    初值(H)    頻率(Hz)    初值(H)    頻率(Hz)    初值(H)     1    262    F724 

9、;   523    FC44    1046    FE22     2    294    F95B    587    FCAC    1175    FE56&#

10、160;    3    330    FA15    659    FD09    1318    FE85     4    349    FA67    698&#

11、160;   FD34    1397    FE9A     5    392    FB04    784    FD82    1568    FEC1     6

12、    440    FB90    880    FDC8    1760    FEE4     7    494    FC0C    988    FE

13、06    1967    FF03     3.2 軟件流程設計 音頻報警程序流程如圖4所示。首先進行硬件初始化,包括端口初始化和定時器預置初值及設置分頻器等。其次復位軟件CAN總線控制器SJA1000并初始化該芯片。當收CAN信息幀后按照協議進行解析,從數據幀取出發送者地址、命令及所帶各個參數等;若收到的命令是報警或數據讀寫,則將分離后的信息存儲到緩存區中,然后程序到緩存區中讀相應的幀信息,根據命令號執行相應的子程序。當子程序執行完畢后,程序將繼續等待其他CAN信息幀。 圖4 音頻報警程序流程 4 應用實例 音頻報警模塊可以應用于任何使用CAN總線通信同時需要報警音提示的現場。例如,應用在基于CAN總線的家庭控制系統中,基于CAN總線的儀器里。實驗證明,此音頻報警模塊應用于內部采用CAN總線通信的全自動凝血儀中時,分別定義了8種不同的報警提示音,聲音效果良好,工作可靠。 參考文獻 1 金振華,盧青春等基于虛擬儀器的車載CAN總線監控系統開

溫馨提示

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

評論

0/150

提交評論