CAN總線智能無線接口設(shè)計(jì)_第1頁
CAN總線智能無線接口設(shè)計(jì)_第2頁
CAN總線智能無線接口設(shè)計(jì)_第3頁
CAN總線智能無線接口設(shè)計(jì)_第4頁
CAN總線智能無線接口設(shè)計(jì)_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、學(xué) 院 畢畢 業(yè)業(yè) 設(shè)設(shè) 計(jì)(論計(jì)(論 文)說文)說 明明 書書 題 目:CAN 總線智能無線接口設(shè)計(jì) 系 別: 電子與信息工程系 專業(yè)班級: 電子信息工程級班 學(xué)生姓名: 指導(dǎo)教師: 教 研 室: 自動化教研室 提交時(shí)間: 2011 年月日 摘 要 現(xiàn)場CAN(Controller Area Network)總線即控制器局域網(wǎng)總線,屬于總線 式串行通信網(wǎng)絡(luò),與一般的通信總線相比,CAN 的數(shù)據(jù)通信具有突出的可靠性、 實(shí)時(shí)性和靈活性。藍(lán)牙(Bluetooth)技術(shù)是一種成本低廉的短距離無線網(wǎng)絡(luò)連接 技術(shù),藍(lán)牙在各種電子產(chǎn)品之間建立一種無線連接標(biāo)準(zhǔn),以取代有線電纜的連 接。本文簡要的介紹了藍(lán)牙概

2、念、藍(lán)牙技術(shù)的工作原理和CAN總線的原理,重點(diǎn) 分析了CAN通信控制器SJA1000的內(nèi)部結(jié)構(gòu)及工作原理,提出了一種用藍(lán)牙芯片 BC、單片機(jī)AT89C52及SJA1O00總線控制器組成CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)方案,設(shè) 計(jì)出了節(jié)點(diǎn)的硬件電路和節(jié)點(diǎn)收發(fā)程序。 關(guān)鍵詞關(guān)鍵詞:CAN總線;總線控制器;單片機(jī);藍(lán)牙技術(shù) ABSTRACT The field CAN (Controller Area Network) bus is the controller local area network bus, belongs to the main line type serial communicatio

3、n network, compares with the general correspondence bus, the CAN data communication has the prominent reliability, timeliness and the flexibility. The blue tooth (Bluetooth) technology is one kind of cost inexpensive short distance wireless network connection technology, the blue tooth establishes o

4、ne kind of wireless connection standard between each kind of electronic products, substitutes for the wired electric cable the connection. This article brief introduction blue tooth concept, the blue tooth technology principle of work and the CAN bus principle, has analyzed CAN with emphasis the cor

5、respondence controller SJA1000 internal structure and the principle of work, proposed one kind with blue tooth chip BC, monolithic integrated circuit AT89C52 and the SJA1000 bus control unit composes the CAN bus intelligence node the design proposal, designed the node hardware electric circuit and t

6、he node receiving and dispatching procedure. Keywords: : CAN bus; Bus controller; MCU; Bluetooth technology 目錄 摘 要.I ABSTRACT.II 第一章 引 言.1 1.1 藍(lán)牙的應(yīng)用 .1 1.2 CAN 總線的應(yīng)用.1 第二章 總體概述.3 2.1 藍(lán)牙技術(shù)簡介 .3 2.2 藍(lán)牙系統(tǒng)的構(gòu)成 .4 2.21 藍(lán)牙芯片 .4 2.2.2 藍(lán)牙的無線通信技術(shù) .4 2.3 藍(lán)牙技術(shù)的工作原理 .5 2.4 藍(lán)牙協(xié)議 .7 2.5 幾種現(xiàn)場總線的介紹 .8 2.6 CAN 總線中的一些

7、基本概念.9 2.7 CAN 總線的特點(diǎn).9 2.8 CAN 的分層協(xié)議和 CAN 的通信協(xié)議.10 2.9 CAN 報(bào)文的幀結(jié)構(gòu).12 第三章 系統(tǒng)硬件設(shè)計(jì).15 3.1 設(shè)計(jì)方案 .15 3.2 藍(lán)牙芯片 BC.16 3.3 單片機(jī)模塊 AT89C52.16 3.4 CAN 模塊.20 3.4.1 CAN 模塊結(jié)構(gòu).20 3.4.2 CAN 控制器 SJA1000 .21 3.4.3 CAN 總線驅(qū)動器 PCA82C25O .24 3.5 電源模塊.26 第四單 系統(tǒng)軟件設(shè)計(jì).27 4.1 系統(tǒng)整體流程圖 .27 4.2 藍(lán)牙的軟件設(shè)計(jì) .28 4.3 串口接收中斷程序 .31 4.4 S

8、JA1000 的工作模式設(shè)置.32 4.5 網(wǎng)絡(luò)通信規(guī)則 .33 4.6 CAN 總線的軟件設(shè)計(jì).33 第五章 結(jié)束語.41 致謝.42 參考文獻(xiàn).43 附錄.44 附錄 1. CAN 網(wǎng)絡(luò)控制器 SJA1000 的內(nèi)部結(jié)構(gòu)及對外接口原理圖 .44 附錄 2. 畢業(yè)設(shè)計(jì)(CAN 總線智能無線接口設(shè)計(jì))元器件清單 .45 附錄 3. CAN 總線智能無線接口設(shè)計(jì)原理圖 .46 附錄 4. CAN 總線智能無線接口設(shè)計(jì) PCB 圖 .47 附錄 5. 程序.48 第一章 引 言 1.1 藍(lán)牙的應(yīng)用 隨著21世紀(jì)社會經(jīng)濟(jì)的迅速發(fā)展,人們對能夠隨時(shí)隨地提供信息服務(wù)的移 動計(jì)算與寬帶無線通信的需求越來越

9、迫切。無處不在的網(wǎng)絡(luò)終端,以人為本、 個(gè)性化、智能化的移動計(jì)算,以及方便、快捷的無線接人、無線互聯(lián)等新概念 和新產(chǎn)品,已經(jīng)逐漸地融入人們的工作領(lǐng)域和日常生活中。隨之而來的便攜式 終端以及無線通信相關(guān)的新技術(shù)層出不窮。其中短距離無線通信技術(shù)的發(fā)展更 是百花齊放、令人目不暇接。正是由于無線頻率資源的日漸珍貴,為短距離寬 帶無線通信技術(shù)的應(yīng)用提供了廣闊的市場前景,因而短距離寬帶無線通信技術(shù)受 到了世界各國工業(yè)界與研究機(jī)構(gòu)的廣泛關(guān)注,近來人們常見的熱門話題中就包括 無線局域網(wǎng)(WLAN1)、無線個(gè)域網(wǎng)(WPAN) 相關(guān)有代表性的短距離無線通信技術(shù) 標(biāo)準(zhǔn)有IrDA、IEEE802.11b、802.11a

10、、80211g、Bluetooth (藍(lán)牙)、 HomeRF、ZigBee、UWB超寬帶等。近年來,藍(lán)牙、無線局域網(wǎng) 802.11b、802.11a、802.l1g以及超寬帶無線通信(UWB)等新技術(shù)不斷涌現(xiàn),并 已有大量產(chǎn)品迅速占領(lǐng)市場,受到普遍歡迎。 藍(lán)牙技術(shù)是一種短距離無線通信技術(shù).藍(lán)牙技術(shù)在電信業(yè)、計(jì)算機(jī)業(yè)、家 電業(yè)有極其廣闊和誘人的應(yīng)用前景,它也將對未來無線移動數(shù)據(jù)通信業(yè)務(wù)產(chǎn)生 巨大的推動作用。 1.2 CAN 總線的應(yīng)用 隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)和芯片技術(shù)的發(fā)展,控制芯片的性能大幅度提高,成本 不斷減低,網(wǎng)絡(luò)幾乎深入到我們生活的每一個(gè)角落,以現(xiàn)場總線為代表的控制網(wǎng) 絡(luò)也在工業(yè)以及其他控制

11、系統(tǒng)中扮演不可缺少的角色.在21世紀(jì),現(xiàn)在總線控制 系統(tǒng)將會成為控制領(lǐng)域的主流. 在各類現(xiàn)場總線中,CAN(Control Area Network)總線于1993年成為國際標(biāo)準(zhǔn)ISOl1898(道路車輛的高速控制局域網(wǎng)數(shù)字 信息交換標(biāo)準(zhǔn)),是最早具有國際標(biāo)準(zhǔn)的現(xiàn)場總線,它有效支持分布式控制及實(shí) 時(shí)控制,并采用了帶優(yōu)先級的CSMA/CD協(xié)議對總線進(jìn)行仲裁CAN總線允許多站 點(diǎn)同時(shí)發(fā)送,在保證信息處理的實(shí)時(shí)性同時(shí),又使得CAN總線網(wǎng)絡(luò)可以構(gòu)成多主 從結(jié)構(gòu)的系統(tǒng),從而有效地保障了系統(tǒng)的可靠性.CAN總線由于具有可靠性、高 成本、低容易實(shí)現(xiàn)等優(yōu)點(diǎn),在現(xiàn)場總線的實(shí)際工程應(yīng)用中占據(jù)了較大份額,并且 CA

12、N在工業(yè)控制、小區(qū)智能監(jiān)控等熱點(diǎn)領(lǐng)域有著廣泛的應(yīng)用前景;由于CAN總線協(xié) 議的完全透明性、可擴(kuò)展以及組建系統(tǒng)的靈活性,使得CAN總線成為教學(xué)和科研 方面極好的范例和基礎(chǔ)課題。所以本次設(shè)計(jì)以單片機(jī)為核心,將藍(lán)牙與CAN兩種 先進(jìn)技術(shù)相結(jié)合,對藍(lán)牙技術(shù)在工業(yè)現(xiàn)場網(wǎng)絡(luò)的應(yīng)用進(jìn)行有益的探索和研究。 第二章 總體概述 2.1 藍(lán)牙技術(shù)簡介 藍(lán)牙技術(shù)(Bluetooth)是一種短距離的無線通信技術(shù)。它工作在免費(fèi)的ISM頻 段(24Ghz),采用跳頻時(shí)分復(fù)用技術(shù),傳輸速率可高達(dá)1Mb/s,能實(shí)現(xiàn)點(diǎn)對 點(diǎn)和點(diǎn)對多點(diǎn)的通信。通過藍(lán)牙技術(shù)無線傳輸?shù)姆绞娇梢詫⒁欢ǚ秶鷥?nèi)的數(shù)據(jù) 設(shè)備或語音設(shè)備連接起來組成微微網(wǎng),使嵌

13、有藍(lán)牙模塊的電子設(shè)備之間能實(shí)現(xiàn) 方便快捷的通信。藍(lán)牙技術(shù)是一種無線數(shù)據(jù)與語音通信的開放性全球規(guī)范,它 以低成本的近距離無線連接為基礎(chǔ),為固定與移動設(shè)備通信環(huán)境建立一個(gè)特別 連接的短程無線電技術(shù)。其實(shí)質(zhì)是要建立通用的無線電空中接口及其控制軟件 的公開標(biāo)準(zhǔn),使通信和機(jī)進(jìn)一步結(jié)合,使不同廠家生產(chǎn)的便攜式設(shè)備在沒有電 線或電纜相互連接的情況下,能在近距離范圍內(nèi)具有互用、互操作的性能,代 替固定與移動通汛設(shè)備之間的電纜,實(shí)現(xiàn)相互之間的連接例如,利用藍(lán)牙技 術(shù),可以把任何一種原來需要通過信號傳輸線連接的數(shù)字設(shè)備,改為無線方式 連接,并形成圍繞個(gè)人的網(wǎng)絡(luò)。無論在何處,無論是那種數(shù)字設(shè)備在手,利用 藍(lán)牙技術(shù)都

14、可以使其與周圍的數(shù)字設(shè)備建立聯(lián)系,共享這些設(shè)備中的數(shù)據(jù)庫、 電子郵件等。比如,可以用移動電話接收PC中的電子郵件,可以用電冰箱來告 訴微波爐里面有什么原料,讓微波爐提出菜單選項(xiàng)等?;@牙工作在全球通用的 24 GHz ISM (即工業(yè)、科學(xué)、醫(yī)學(xué))頻段。藍(lán)牙的數(shù)據(jù)速率為1 Mb/s。跳頻技 術(shù)是把頻帶分成若干個(gè)跳頻信道,在一次連接中,無線電收發(fā)器按一定的碼序 列(偽隨機(jī)碼)不斷地從一個(gè)信道到另一個(gè)通信信道;藍(lán)牙系統(tǒng)內(nèi)的收發(fā)雙方是 按這個(gè)進(jìn)行通信,而其他無線電設(shè)備不可能按同樣的規(guī)律進(jìn)行工作,所以從很 大程度上抑止了無線電電磁干擾。同時(shí)藍(lán)牙采用了擴(kuò)頻技術(shù),使整個(gè)藍(lán)牙頻段 內(nèi)噪聲變得最低。與其他工作在

15、相同頻段的系統(tǒng)相比,藍(lán)牙調(diào)頻更快。藍(lán)牙設(shè) 備與其他無線通信設(shè)備相比是低功耗的,藍(lán)牙技術(shù)的無線電收發(fā)器的鏈接距離 可達(dá)10米,使用高增益天線可以將有效通信范圍擴(kuò)展到100米。不限制在直線范 圍內(nèi),甚至設(shè)備不在同一個(gè)房間內(nèi)也能相互鏈接,并且可以鏈接多個(gè)設(shè)備,活 動多可達(dá)7個(gè),在線沒備可達(dá)200個(gè),這樣就可以把用戶身邊的設(shè)備都鏈接起來, 形成一個(gè)“個(gè)人微型網(wǎng)”。作為“電纜替代” 技術(shù)提出來的藍(lán)牙技術(shù),發(fā)展到 今天已經(jīng)演變成了一種個(gè)人信息網(wǎng)絡(luò)技術(shù)。它將內(nèi)嵌藍(lán)牙芯片的沒備互聯(lián)起來, 提供話音和數(shù)據(jù)的接人服務(wù),實(shí)現(xiàn)信息的自動交換和處理。 2.2 藍(lán)牙系統(tǒng)的構(gòu)成 2.21 藍(lán)牙芯片 藍(lán)牙技術(shù)的核心是一個(gè)8m

16、m x 8mm的藍(lán)牙芯片,由一細(xì)微晶片構(gòu)成,晶片內(nèi) 嵌入無線通訊協(xié)定,可進(jìn)行簡單的數(shù)碼信息處理,讓不同的藍(lán)牙產(chǎn)品交換資料。 整個(gè)藍(lán)牙系統(tǒng)分為無線射頻單元、鏈路控制單元、鏈路管理單元和軟件協(xié)議單 元4個(gè)功能組塊 (1)無線射頻單元 藍(lán)牙的天線部分體積十分小巧、重量輕,屬于微帶天線。 藍(lán)牙空中接口建立在0dbm(1mW)地基礎(chǔ)上,最大可達(dá)20dbm(100mW),遵循FCC (美囤聯(lián)邦通信委員會)有關(guān)電平為0dbm地ISM頻段地標(biāo)準(zhǔn)。 (2)鏈路控制單元 藍(lán)牙產(chǎn)品的鏈路控制硬件單元包括3個(gè)集成芯片:連接 控制器、基帶處理器以及射頻傳輸/接收器,此外,還使用了35個(gè)單獨(dú)調(diào)諧元 件?;鶐ф溌房刂破髫?fù)責(zé)

17、處理基帶協(xié)議和其它一些低層常規(guī)協(xié)議。藍(lán)牙基帶協(xié) 議是電路交換與分組交換地結(jié)合,采用時(shí)分雙工,實(shí)現(xiàn)全雙工傳輸。 (3)鏈路管理單元 鏈路管理(LM)軟件模塊攜帶了鏈路的數(shù)據(jù)設(shè)置、鑒權(quán)、 鏈路硬件配置和其它一些協(xié)議。LM能夠發(fā)現(xiàn)其他遠(yuǎn)端LM,并通過LMP(鏈路管理 協(xié)議)與之通信。 (4)軟件協(xié)議單元 藍(lán)牙的軟件協(xié)議采用分層結(jié)構(gòu),其核心協(xié)議包括物理層 協(xié)議、鏈路接入?yún)f(xié)議、鏈路管理協(xié)議和服務(wù)發(fā)現(xiàn)協(xié)議,主要功能是完成對物理 傳輸媒介的監(jiān)測與控制、藍(lán)牙設(shè)備搜尋、可靠數(shù)據(jù)鏈路的建立與維持、高層數(shù) 據(jù)包的適配以及不同協(xié)議數(shù)據(jù)的復(fù)用與流量控制等。 2.2.2 藍(lán)牙的無線通信技術(shù) 在具體的理論和技術(shù)應(yīng)用方面,藍(lán)

18、牙技術(shù)使用了多項(xiàng)關(guān)鍵的無線通訊技術(shù)。 (1)跳頻擴(kuò)譜技術(shù) 跳頻擴(kuò)譜技術(shù)是藍(lán)牙使用的關(guān)鍵技術(shù)之一,其目的是為 了避免使用同一頻段的其它通訊沒備的干擾,它將2.4GHz ISM頻段劃分為79個(gè) 子頻段。在通訊時(shí),接收雙方按一定的碼序列不斷地從一個(gè)信道跳到另一個(gè)信 道,其他的干擾源由于不知道這種跳頻規(guī)律,從而不可能按同樣的規(guī)律進(jìn)行干 擾。藍(lán)牙的跳頻速度很快,對于單時(shí)隙分組,跳頻速率為1600跳/秒,對于時(shí)隙 包,跳頻速率會有所降低;但在建立鏈路時(shí)跳頻速率可達(dá)3200跳/秒。這樣高的 跳頻速率,使得藍(lán)牙系統(tǒng)具有足夠高的抗干擾能力。在跳頻的瞬時(shí),雖然帶寬 很窄,但通過頻譜擴(kuò)展技術(shù)可以成百倍地?cái)U(kuò)展帶寬,這

19、樣就使干擾可能產(chǎn)生的 影響變得更小。 (2)實(shí)現(xiàn)多點(diǎn)連接 藍(lán)牙系統(tǒng)既可以實(shí)現(xiàn)點(diǎn)對點(diǎn)連接也可以實(shí)現(xiàn)一點(diǎn)對多點(diǎn) 連接。在一點(diǎn)對多點(diǎn)連接的情況下,信道由幾個(gè)藍(lán)牙設(shè)備分享2個(gè)或者多個(gè)分享 同一信道的單元構(gòu)成微微網(wǎng) ,一個(gè)微微網(wǎng)中存在1個(gè)主單元和最多可達(dá)7個(gè)活動 的從單元。網(wǎng)內(nèi)的信道由主單元標(biāo)識(提供跳頻序列)和同步(提供系統(tǒng)時(shí)鐘和跳 頻相位) 其它從單元可以處在以下幾種狀態(tài)下:active(活動)、park(暫停)、 hold(保持)和sniff(呼吸)。多個(gè)相互覆蓋的微微網(wǎng)形成了所謂的分布網(wǎng)。 (3)時(shí)分多址的調(diào)制技術(shù) 藍(lán)牙技術(shù)結(jié)合了電路交換與分組交換的特點(diǎn),使 用時(shí)分多址(TDMA)的調(diào)制技術(shù)。支

20、持實(shí)時(shí)的同步定向連接(SCO),提供多達(dá)3個(gè) 同步語音信道,每個(gè)語音信道的傳輸速率為64kb/s;支持非實(shí)時(shí)的異步不定向 連接(ACL),在進(jìn)行異步數(shù)據(jù)通信時(shí),可進(jìn)行一端最大速率為721kb/s、另一端 速率為57.6kb/s的不對稱連接,也可以進(jìn)行432.6kb/s的對稱連接;還支持通過 一個(gè)信道同時(shí)進(jìn)行同步語音和異步數(shù)據(jù)的傳輸。SCO鏈路是微微網(wǎng)中單一主單元 和單一從單元之間的一種點(diǎn)對點(diǎn)對稱的鏈路。ACL鏈路是微微網(wǎng)內(nèi)主單元和全部 從單元之間點(diǎn)對多點(diǎn)鏈路。 2.3 藍(lán)牙技術(shù)的工作原理 Bluetooth無線技術(shù)是一種短距離通信系統(tǒng)。旨在取代連接便攜設(shè)備和固定 電子設(shè)備的纜線。Bluetoo

21、th無線技術(shù)的主要特點(diǎn)在于功能強(qiáng)大、耗電量低、成 本低廉。核心規(guī)格的許多功能均為可選功能,以實(shí)現(xiàn)產(chǎn)品多樣性。 Bluetooth核心系統(tǒng)包括射頻收發(fā)器、基帶及協(xié)議堆棧。該系統(tǒng)可以提供設(shè) 備連接服務(wù)并支持在這些設(shè)備之間交換各種類別的數(shù)據(jù)。 Bluetooth射頻(物理層)在無需申請?jiān)S可證的2.4GHz ISM波段運(yùn)行。系統(tǒng)采 用了跳頻收發(fā)器來防止干擾和衰落并提供多個(gè)FHSS(跳頻擴(kuò)頻)載波。射頻操 作采用了成形的二進(jìn)制頻率調(diào)制,降低了收發(fā)器復(fù)雜性。符率為每秒1兆符 (Msps),支持每秒1兆位(Mbps)的比特率:對于增強(qiáng)的數(shù)據(jù)率可支持2或3Mb/s 的總空氣比特率。這些模式分別稱為“基本速率”

22、和“增強(qiáng)數(shù)據(jù)率”。 在一般操作情況下,同步至共用時(shí)鐘及跳頻圖的一組設(shè)備將共享一個(gè)物理 無線電信道。提供同步基準(zhǔn)的設(shè)備稱為主設(shè)備,所有其它設(shè)備稱為從設(shè)備。以 此方式同步的一組設(shè)備形成了一個(gè)微微網(wǎng)。這就是Bluetooth無線技術(shù)通信的基 本形式。微微網(wǎng)中的設(shè)備使用特定跳頻圖該圖由Bluetooth規(guī)格地址中的特定 字段和主設(shè)備時(shí)鐘依據(jù)特定算法來確定?;咎l圖是對ISM 波段中的79個(gè)頻 率進(jìn)行偽隨機(jī)排序。跳頻圖可以調(diào)整以排除干擾設(shè)備使用的一部分頻率.自適應(yīng) 跳頻技術(shù)改善Bluetooth技術(shù)與靜態(tài)(非跳頻)ISM 系統(tǒng)的共存狀態(tài)(當(dāng)兩者共存 時(shí))。 物理信道被復(fù)分為稱作時(shí)隙的時(shí)問單位。數(shù)據(jù)以時(shí)

23、隙中數(shù)據(jù)包的形式在啟 用Bluetooth的設(shè)備之間傳送。如果條件允許,可以將多個(gè)連續(xù)時(shí)隙分配給一個(gè) 數(shù)據(jù)包,跳頻發(fā)生在傳輸或接收數(shù)據(jù)包時(shí)。Bluetooth技術(shù)通過使用時(shí)分雙工 (TDD)方案提供全雙工傳輸效果。 物理信道上方有一個(gè)鏈路、信道及相關(guān)控制協(xié)議層,物理信道以上的信道 及鏈路層級為物理信道、物理鏈路、邏輯傳輸、邏輯鏈路及L2CAP信道。在物理 信道內(nèi),任意兩個(gè)傳輸設(shè)備之間可以形成物理鏈路并且可雙向傳輸數(shù)據(jù)包。 在微微網(wǎng)物理信道中對哪些設(shè)備可以形成物理鏈路有一些限制。每個(gè)從設(shè)備 和主設(shè)備間有一個(gè)物理鏈路。微微網(wǎng)中的從設(shè)備之間不會直接形成物理鏈路, 物理鏈路可作為一個(gè)或多個(gè)邏輯鏈路的傳

24、輸層。支持單播同步、異步和等時(shí)通 信量及廣播通信量。邏輯鏈路上的通信量可通過占有資源管理器中的調(diào)度功能 分配的時(shí)隙分化到物理鏈路上。 除用戶數(shù)據(jù)外,邏輯鏈路還負(fù)載了基帶和物理層的控制協(xié)議。(即鏈路管理 協(xié)議LMP)。微微網(wǎng)中的活動設(shè)備具有默認(rèn)的面向異步連接的邏輯傳輸。用于傳 輸LMP協(xié)議信令。由于歷史原因,這被稱作為ACL邏輯傳輸。每次有設(shè)備加入微 微網(wǎng)時(shí)都會創(chuàng)建默認(rèn)的ACL邏輯傳輸??稍谛枰獣r(shí)創(chuàng)建附加邏輯傳輸以傳輸同步 數(shù)據(jù)流。 鏈路管理功能采用LMP控制微微網(wǎng)中的設(shè)備的操作,并提供服務(wù)來管理架構(gòu) 中的較低層(無線電層和基帶層)。LMP協(xié)議只可以負(fù)載在默認(rèn)的ACL邏輯傳輸及 默認(rèn)的廣播邏輯傳

25、輸上。 在基帶層以上,L2CAP層為應(yīng)用和服務(wù)提供了基于信道的提取。它可以執(zhí)行 應(yīng)用數(shù)據(jù)的分割和重組并通過一個(gè)共享邏輯鏈路執(zhí)行多個(gè)信道的復(fù)用或解復(fù) 用。L2CAP有一個(gè)協(xié)議控制信道,負(fù)載于默認(rèn)的ACL邏輯傳輸中。提交至L2CAP協(xié) 議的應(yīng)用數(shù)據(jù)可以負(fù)載于支持L2CAP協(xié)議的任意邏輯鏈路上。 2.4 藍(lán)牙協(xié)議 藍(lán)牙協(xié)議規(guī)范遵循開放系統(tǒng)互聯(lián)OSI(Open System Interconnection)模型, 從低到高的定義了藍(lán)牙協(xié)議棧的各個(gè)層次,如圖2.1所示 應(yīng)用協(xié)議 音頻 IrOBEXTCS RFCOMM SDP 邏輯鏈路控制適配(L2CAP) 主機(jī)控制器接口(HCL) 鏈路管理層(LM)

26、基帶層(BB) 射頻層(RF) 圖2.1 藍(lán)牙協(xié)議棧 藍(lán)牙節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),基帶(BB)部分將來自高層協(xié)議的數(shù)據(jù)進(jìn)行信道編碼, 向下傳給射頻(RF)進(jìn)行發(fā)送;接收數(shù)據(jù)時(shí),射頻將解調(diào)恢復(fù)空中數(shù)據(jù)并上傳至 基帶,基帶再對數(shù)據(jù)進(jìn)行解碼,向高層傳輸。基帶與鏈路控制器(LC)一起確保 微微網(wǎng)內(nèi)各藍(lán)牙節(jié)點(diǎn)之間由射頻構(gòu)成的物理連接;鏈路管理層(LM)控制鏈路的 建立、加密、控制及功率管理等,用戶可通過鏈路管理器對本地或遠(yuǎn)端藍(lán)牙設(shè) 備的鏈路情況進(jìn)行設(shè)置和控制;主機(jī)控制器接口(HCI)為藍(lán)牙芯片與設(shè)備控制計(jì) 算機(jī)進(jìn)行數(shù)據(jù)交換的接口;由于基帶數(shù)據(jù)分組長度較短,而高層協(xié)議為了提高 頻帶的使用效率通常使用較大的分組,二

27、者很難匹配,因此邏輯鏈路控制和適 配協(xié)議(L2CAP)作為低層協(xié)議和高層協(xié)議之間不同長度的協(xié)議數(shù)據(jù)單元的橋梁; 音頻是通過在基帶上直接傳輸同步面向連接數(shù)據(jù)來實(shí)現(xiàn)的;服務(wù)發(fā)現(xiàn)協(xié)議(SDP) 是一個(gè)服務(wù)數(shù)據(jù)庫;RFCOMM是串口仿真協(xié)議,為建立在串口之上的傳統(tǒng)應(yīng)用而 提供的接口環(huán)境;IrOBEX是紅外對象交換協(xié)議,它使高層應(yīng)用可以同時(shí)運(yùn)行在 藍(lán)牙和紅外的無線鏈路上;TCS是藍(lán)牙電話控制協(xié)議規(guī)范用戶可以根據(jù)不同的 需求來選擇應(yīng)用協(xié)議在工業(yè)控制領(lǐng)域中,由于數(shù)據(jù)的傳輸量不大但安全性要 求比較高,一般可以直接對HCI層進(jìn)行操作 2.5 幾種現(xiàn)場總線的介紹 基金會現(xiàn)場總線(Foundation Fieldb

28、us,F(xiàn)F)是在過程自動化領(lǐng)域得到廣泛 支持和具有良好發(fā)展前景的技術(shù)。它分為低速和高速兩種傳輸速率。低速的傳 輸速率為 31.25Kb/s,傳輸距離可以達(dá)到 1900m。高速的傳輸速率可為 100 Mb/s 和 2.5 Mb/s,它們的通信距離分別為 750m 和 500m.?;饡偩€物理媒介的傳 輸信號采用曼徹斯特編碼,每段最多允許 240 個(gè)節(jié)點(diǎn),段數(shù)目最多可達(dá) 65000 個(gè),最大允許報(bào)文可達(dá) 128 個(gè)比特組。 Profibus 總線是集合德國國家標(biāo)準(zhǔn) DIN19245 和歐洲標(biāo)準(zhǔn) EN50170 的現(xiàn)場 總線標(biāo)準(zhǔn),多用于過程控制、大型裝配和物料輸送機(jī)械。 DeviceNet 是由

29、Allen-Bradley 公司開發(fā)的一種基于 CAN 的開放的現(xiàn)場總線 標(biāo)準(zhǔn)。它用于汽車,半導(dǎo)體制造,電子產(chǎn)品制造,食品和飲料,批量生產(chǎn)化學(xué) 處理,裝配,包裝和物料轉(zhuǎn)移。 InterBus 總線包括遠(yuǎn)程總線網(wǎng)絡(luò)和本地總線網(wǎng)絡(luò),兩種傳送相同的信號但 電平不同,遠(yuǎn)程總線網(wǎng)絡(luò)用于遠(yuǎn)距離傳送數(shù)據(jù),采用 RS-485 傳輸,網(wǎng)絡(luò)本身不 供電,遠(yuǎn)程網(wǎng)絡(luò)采用全雙工方式進(jìn)行通信,傳輸速率為 500 Kb/s。本地總線網(wǎng) 絡(luò)連接到遠(yuǎn)程網(wǎng)絡(luò)上,網(wǎng)絡(luò)上的總線終端(BUSTerminal,BT)上的 BK 模 塊負(fù)責(zé)將遠(yuǎn)程網(wǎng)絡(luò)數(shù)據(jù)轉(zhuǎn)換為本地網(wǎng)絡(luò)數(shù)據(jù)。 ControlNet 基于改型 CANBUS 技術(shù),用于 PLC

30、 與計(jì)算機(jī)之間的通信網(wǎng)絡(luò) 它可與連動裝置、串并行調(diào)設(shè)備、PC、人機(jī)界面等。它可以溝通邏輯控制和過 程控制系統(tǒng),傳輸速率為 5Kb/s。 CANopen 是基于 CAN 中行總線系統(tǒng)的網(wǎng)絡(luò)系統(tǒng)。CANopen 可應(yīng)用于多種 領(lǐng)域。信號傳輸采用短幀格式,每一幀的有效字節(jié)數(shù)為 8 個(gè),因而傳輸時(shí)間短, 受干擾的概率低。當(dāng)節(jié)點(diǎn)嚴(yán)重錯(cuò)誤時(shí),具有自動關(guān)閉的功能,以切斷該節(jié)點(diǎn) 與總線的聯(lián)系,使總線上的其它節(jié)點(diǎn)和通信不受影響,具有較強(qiáng)的抗干擾能力。 2.6 CAN 總線中的一些基本概念 .報(bào)文總線上的信息以不同格式的報(bào)文發(fā)送,但長度有限。不總線開放 時(shí),何連接的單元均可開始發(fā)送一個(gè)新報(bào)文。 .優(yōu)先權(quán)在總線訪問

31、期間,標(biāo)識符定義了一個(gè)報(bào)文靜態(tài)的優(yōu)先權(quán)。 .遠(yuǎn)程數(shù)據(jù)請求通過發(fā)送一個(gè)遠(yuǎn)程幀,需要數(shù)據(jù)的節(jié)點(diǎn)可以請求另一個(gè) 節(jié)點(diǎn)發(fā)送一個(gè)相應(yīng)的數(shù)據(jù)幀,該數(shù)據(jù)幀與對應(yīng)和遠(yuǎn)程幀以相同標(biāo)識符 ID 命名。 .仲裁當(dāng)總線開放時(shí),任何單元均可開始發(fā)送報(bào)文,若同時(shí)有兩個(gè)或更 多的單元開始發(fā)送,總線訪問沖突運(yùn)用逐位仲裁規(guī)則,借助標(biāo)識符 ID 解決。 .安全性為了獲得盡可能高的數(shù)據(jù)傳輸安全性,在每個(gè) CAN 節(jié)點(diǎn)中均設(shè) 有錯(cuò)誤檢測、標(biāo)定和自檢的強(qiáng)有力措施。檢測錯(cuò)誤的措施包括:發(fā)送自檢、循環(huán) 冗余校驗(yàn)、位填充和報(bào)文格式檢查。 .出錯(cuò)標(biāo)注和恢復(fù)時(shí)間已損報(bào)文由校驗(yàn)出錯(cuò)誤的節(jié)點(diǎn)進(jìn)行村注。這樣的 報(bào)文將失效,并自動進(jìn)行重發(fā)送。如果不存在

32、新的錯(cuò)誤,從檢出錯(cuò)誤到下一個(gè)報(bào) 文開始發(fā)送的恢復(fù)時(shí)間最多為 29 個(gè)位時(shí)間。 2.7 CAN 總線的特點(diǎn) CAN 屬于總線式串行通信網(wǎng)絡(luò),由于其采用了許多新技術(shù)和獨(dú)特的設(shè)計(jì), 與一般的通信總線相比,CAN 的數(shù)據(jù)通信具有突出的性能、可靠性、實(shí)時(shí)性和 靈活性。其特點(diǎn)可以概括如下: 通信方式靈活,可以多種方式工作,網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)均可以在任意 時(shí)刻主動向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息。不分主從。 CAN節(jié)點(diǎn)只需對報(bào)文的標(biāo)識符濾波即可實(shí)現(xiàn)點(diǎn)對點(diǎn)、點(diǎn)對多點(diǎn)及全局廣播 方式發(fā)送和接收數(shù)據(jù),其節(jié)點(diǎn)可分成不同的優(yōu)先級,節(jié)點(diǎn)的優(yōu)先級可通過報(bào)文 標(biāo)識符進(jìn)行設(shè)置,優(yōu)先級高的數(shù)據(jù)最多可在134毫秒內(nèi)傳輸,可以滿足不同的

33、實(shí) 時(shí)要求。 CAN總線通信格式采用短幀格式,每一幀字節(jié)數(shù)最多為8個(gè)字節(jié),可滿足 一般工業(yè)領(lǐng)域中控制命令、工作狀態(tài)及測試數(shù)據(jù)的要求,同時(shí),8個(gè)字節(jié)不會占 用總線時(shí)間過長,受干擾的概率低,保證了通信的實(shí)時(shí)性,且具有極好的檢錯(cuò) 效果。 采用非破壞性總線仲裁技術(shù),當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)向總線發(fā)送信息出現(xiàn)沖突 時(shí),優(yōu)先級低的節(jié)點(diǎn)會主動退出數(shù)據(jù)發(fā)送,而優(yōu)先級高的節(jié)點(diǎn)可不受影響地繼 續(xù)傳輸數(shù)據(jù),大大節(jié)省了總線沖突仲裁時(shí)間,在網(wǎng)絡(luò)重載的情況下也不會出現(xiàn) 網(wǎng)絡(luò)癱瘓。 直接通信距離最大可達(dá)10km (速率在5 kb/s以下),最高通信速率可達(dá)1 Mb/s(此時(shí)距離最長為40m);節(jié)點(diǎn)數(shù)可達(dá)110個(gè),通信介質(zhì)可以是雙絞線

34、、同軸 電纜或光導(dǎo)纖維。 CAN總線采用CRC檢驗(yàn)并可提供相應(yīng)的錯(cuò)誤處理功能,保證數(shù)據(jù)通信的可 靠性,其節(jié)點(diǎn)在錯(cuò)誤嚴(yán)重的情況下具有自動關(guān)閉輸出功能,使總線上其他節(jié)點(diǎn) 的操作不受影響。 2.8 CAN 的分層協(xié)議和 CAN 的通信協(xié)議 為使設(shè)計(jì)透明和執(zhí)行靈活,遵循 ISO/OSI 標(biāo)準(zhǔn)模型,CAN 分為數(shù)據(jù)鏈路層 和物理層,其中數(shù)據(jù)鏈路層又包括邏輯鏈路控制子層 LLC 和媒體訪問子層 MAC。而在 CAN 技術(shù)規(guī)范 2.0A 中,數(shù)據(jù)鏈據(jù)層的 LLC 和 MAC 子層的服務(wù)和功能 被描述為目標(biāo)層和傳輸層。圖 2.2 解釋了 CAN 的分層結(jié)構(gòu)和功能。 位編碼/解碼 位定時(shí) 同步 (驅(qū)動器/接收器

35、特性) 故障界定 總線故障管理 監(jiān)控器 數(shù)據(jù)鏈路層 邏輯鏈路子層 接收濾波 超載通知 恢復(fù)管理 媒體訪問控制層 數(shù)據(jù)封裝/拆裝 幀編碼(填充/解除填充) 媒體訪問管理 錯(cuò)誤監(jiān)測 出錯(cuò)標(biāo)定 應(yīng)答、串行化/解除串行化 物 理 層 圖 2.2 CAN 的分層結(jié)構(gòu) CAN 總線總是基于下列 5 基本規(guī)則進(jìn)行通信協(xié)調(diào)的。 總線訪問:CAN 是共享媒體的總線,它對媒體的訪問機(jī)制類似于與以太 網(wǎng)的媒體機(jī)制,即采用載波監(jiān)聽多路訪問(Carrier Sense Multiple Acces,CSMA)的方式。CAN 控制器只能在總線空閑時(shí)開始發(fā)送,并采用硬同步, 所有 CAN 控制器同步都位于幀起始的前沿。為避

36、免因累計(jì)誤差而錯(cuò)位,CAN 總 線中硬同步后滿足一定的條件進(jìn)行重同步。所謂總線空閑,就是網(wǎng)絡(luò)上至少存 在 3 個(gè)空閑位(隱性位)時(shí)網(wǎng)絡(luò)的狀態(tài),也就是 CAN 節(jié)點(diǎn)在偵聽到網(wǎng)絡(luò)上出現(xiàn)至 少 3 個(gè)隱性位時(shí),才開始發(fā)送。 仲裁:當(dāng)總線空閑時(shí)呈隱性電平,此時(shí)任何一個(gè)節(jié)點(diǎn)都可以向總線發(fā) 送一個(gè)顯性電平作為一個(gè)幀的開始。如果有兩個(gè)或兩個(gè)以上的節(jié)點(diǎn)開始發(fā)送, 就會產(chǎn)生總線沖突。CAN 總線解決總線沖突的方法是按位對標(biāo)識符進(jìn)行仲裁: 各發(fā)送節(jié)點(diǎn)在向總線發(fā)送電平的同時(shí),也對總線上的電平進(jìn)行讀取,并與自身 發(fā)送的電平進(jìn)行比較,如果電平相同則繼續(xù)發(fā)送下一位,不同則說明網(wǎng)絡(luò)上有 更高優(yōu)先級的信息幀正在發(fā)送,即停止發(fā)

37、送,退出總線競爭。剩余的節(jié)點(diǎn)則繼 續(xù)上述過程,直到總線上只剩下一個(gè)節(jié)點(diǎn)發(fā)送的電平,總線競爭結(jié)束,優(yōu)先級 最高的節(jié)點(diǎn)獲得了總線的使用權(quán),繼續(xù)發(fā)送信息幀的剩余部分直至全部發(fā)送完 畢。 編碼/解碼: 幀起始域、仲裁域、控制域、數(shù)據(jù)域和 CRC 序列均使用位 填充技術(shù)進(jìn)行編碼。在 CAN 總線中,每連續(xù) 5 個(gè)同狀態(tài)的電平插入一位與它相 補(bǔ)的電平,還原時(shí)每 5 個(gè)同狀態(tài)的電平后的相補(bǔ)電平被刪除,從而保證了數(shù)據(jù) 的透明。 出錯(cuò)標(biāo)注:當(dāng)檢測到位錯(cuò)誤、填充錯(cuò)誤、形式錯(cuò)誤或應(yīng)答錯(cuò)誤時(shí),檢 測出錯(cuò)條件的 CAN 控制器將發(fā)送一個(gè)出錯(cuò)標(biāo)志。 超載標(biāo)注:一些 CAN 控制會發(fā)送一個(gè)或多個(gè)超載幀以延遲下一個(gè)數(shù)據(jù) 幀或

38、遠(yuǎn)程幀的發(fā)送。 2.9 CAN 報(bào)文的幀結(jié)構(gòu) CAN 通信協(xié)議 2.0A 規(guī)定了 4 種不同的幀格式:數(shù)據(jù)幀、遠(yuǎn)程幀、錯(cuò)誤幀和 超載幀。其中數(shù)據(jù)幀用于傳輸數(shù)據(jù),遠(yuǎn)程幀用于請求數(shù)據(jù),超載幀用于擴(kuò)展序 列的延遲時(shí)間,而當(dāng)局部檢測出錯(cuò)條件后產(chǎn)生一個(gè)全局信號出錯(cuò)幀。 1. 數(shù)據(jù)幀 數(shù)據(jù)幀由 7 個(gè)不同的位場組成,即幀起始標(biāo)志位、仲裁場、控制場、數(shù)據(jù) 場、CRC 檢場、ACK 應(yīng)答場和幀結(jié)束標(biāo)志位。數(shù)據(jù)場長度可為零。CAN2.0A 數(shù)據(jù) 幀的組成如圖 2.3 所示。 幀間空間 起始幀 幀間空間 或超載幀 ACK 場 仲裁 仲裁場 場 控制場仲裁場數(shù)據(jù)場CRC 場幀結(jié)束 數(shù)據(jù)幀 圖 2.3 數(shù)據(jù)幀結(jié)構(gòu) 2

39、. 遠(yuǎn)程幀 遠(yuǎn)程幀被用來請求總線上某個(gè)遠(yuǎn)程節(jié)點(diǎn)發(fā)送自己想要接收的某種數(shù)據(jù),具 有發(fā)出這種遠(yuǎn)地消息能力的節(jié)點(diǎn)收到這個(gè)遠(yuǎn)程幀后,就應(yīng)盡力響應(yīng)這個(gè)遠(yuǎn)地這 個(gè)傳送要求。所以對遠(yuǎn)程幀本身來說,是沒有數(shù)據(jù)域的。在遠(yuǎn)程幀中,除了 RTR 位被設(shè)置成 1,表示被動狀態(tài)外,其余部分與數(shù)據(jù)幀完全相同。遠(yuǎn)程幀的組 成如圖 2.4 所示。 仲裁 仲裁場 場 控制場仲裁場CRC 場幀結(jié)束 幀間空間 起始幀 幀間空間 或超載幀 遠(yuǎn)程幀 ACK 場 圖 2.4 遠(yuǎn)程幀組成 3. 錯(cuò)誤幀 錯(cuò)誤幀由兩個(gè)場組成,如圖 2.5 所示,第一個(gè)場由來自各站的錯(cuò)誤標(biāo)志疊 加得到,隨后的第二個(gè)場是出錯(cuò)界定符。報(bào)文傳輸過程中,檢測到任何一個(gè)

40、節(jié) 點(diǎn)出錯(cuò),即于下一位開始發(fā)送錯(cuò)誤幀,通知發(fā)送端停止發(fā)送。 數(shù)據(jù)幀 幀間空間 錯(cuò)誤標(biāo)志 或超載幀 錯(cuò)誤標(biāo)志疊加 錯(cuò)誤界定符 出錯(cuò)幀 圖 2.5 出錯(cuò)幀組成 4. 超載幀 數(shù)據(jù)幀和錯(cuò)誤幀一樣由兩個(gè)場組成:超載標(biāo)志和超載界定符,如圖 2.6 所 示。當(dāng)某接收因內(nèi)部原因要求緩發(fā)下一個(gè)數(shù)據(jù)幀或遠(yuǎn)程幀時(shí),它向總線發(fā)出超 載幀。超載幀還可以引發(fā)另一次超載幀。但以兩次為限。 幀結(jié)束或 幀間空間 超載標(biāo)志 或超載幀 超載標(biāo)志疊加 超載界定符 超載幀 超載界定符 圖 2.6 超載幀組成 5. 幀間空間 數(shù)據(jù)幀和遠(yuǎn)程幀同前面的幀相同,不管是何種幀,均以稱之為幀間空間的 場位分開。相反,在超載幀和出錯(cuò)幀前面沒有幀間

41、空間,并且多個(gè)超載前面也 不被幀間空間分隔。 第三章 系統(tǒng)硬件設(shè)計(jì) 3.1 設(shè)計(jì)方案 本次設(shè)計(jì)的目的是將藍(lán)牙芯片BC采集到的信號通過單片機(jī)AT89C52發(fā)送到 CAN總線單元。設(shè)計(jì)中采用單片機(jī)AT89C52作為藍(lán)牙芯片BC與CAN模塊SJA1O00的 接口,完成數(shù)據(jù)格式的轉(zhuǎn)換和SJAl000復(fù)位信號的產(chǎn)生。單片機(jī)向SJA1O00寫入 相應(yīng)的控制字,完成SJA1000的初始化及波特率設(shè)定,同時(shí)藍(lán)牙芯片BC發(fā)送的數(shù) 據(jù)經(jīng)單片機(jī)AT89C52送CAN模塊并經(jīng)CAN總線驅(qū)動器送CAN總線輸出。SJA1000初始 化后,即可獨(dú)立工作,通過檢測總線上的電壓信號及內(nèi)部特殊的寄存器內(nèi)容, 控制器完成數(shù)據(jù)的打包

42、,解包,錯(cuò)誤的鑒定等一系列功能實(shí)際中為了更好的 抑制誤碼率,減少出錯(cuò)重發(fā)的次數(shù),在電路里加入高速隔離器件6N137構(gòu)成隔離 電路,用于屏蔽干擾。整個(gè)設(shè)計(jì)的原理框圖如下圖3.1所示。 . 智能節(jié)點(diǎn) 3智能節(jié)點(diǎn) 2智能節(jié)點(diǎn) 1 CAN 總線 CAN 驅(qū)動器CAN 驅(qū)動器CAN 驅(qū)動器 CAN 控制器CAN 控制器CAN 控制器 AT89C52AT89C52AT89C52 BCBCBC 圖 3.1 CAN 總線智能無線接口原理框圖 該系統(tǒng)最大的特點(diǎn)是所有的節(jié)點(diǎn)都能以平等的地位掛接在總線上。1個(gè)總線 節(jié)點(diǎn)通常至少包括4部分:控制節(jié)點(diǎn)任務(wù)的單片機(jī)、總線控制器及總線驅(qū)動器和 藍(lán)牙芯片。本文主要介紹CAN總

43、線智能節(jié)點(diǎn)的簡單設(shè)計(jì),智能節(jié)點(diǎn)由AT89C52型 單片機(jī)、SJA1000型總線控制器、PCA82C250型總線驅(qū)動器及藍(lán)牙芯片BC構(gòu)成。 3.2 藍(lán)牙芯片 BC 本次設(shè)計(jì)所采用的藍(lán)牙芯片是 CSR 公司生產(chǎn)的 2.4GHz 的藍(lán)牙芯片 BC,該藍(lán) 牙芯片具有多種控制接口,因?yàn)楸敬蔚脑O(shè)計(jì)只要求傳輸數(shù)據(jù),而且對數(shù)據(jù)的傳 輸速度并沒有太高的要求,因此放棄了速度快但設(shè)計(jì)較為復(fù)雜的 USB 接口控制, 而采用簡單而穩(wěn)定的異步串口通信。波特率則選擇為較低的 19200kbps,以提 高整機(jī)的抗干擾性能,而且便于和單片機(jī)進(jìn)行匹配。藍(lán)牙模塊的引腳定義及外 圍電路如圖 3.2 所示: 圖 3.2 藍(lán)牙芯片 BC

44、 及外圍電路 3.3 單片機(jī)模塊 AT89C52 由于本次設(shè)計(jì)需要程序控制藍(lán)牙模塊的初始化,數(shù)據(jù)及指令的發(fā)送,需要 處理大量的數(shù)據(jù),因此采用具有 256 字節(jié)內(nèi)部存儲器的 AT89C52,AT89C52 屬標(biāo) 準(zhǔn)型,芯片價(jià)格低廉, 片上外圍資源豐富,片內(nèi)具有 4Kb 的 Flash ROM 程序存 儲空間,這不僅給程序修改帶來極大方便,而且避免了外部 ROM 擴(kuò)展,降低了 節(jié)點(diǎn)成本和線路復(fù)雜性,提高了電路可靠性。AT89C52 通用性強(qiáng)、適合于許多 較為復(fù)雜控制場合、價(jià)位低、支持在線編程,使用方便,開發(fā)技術(shù)較為成熟簡 單、功能強(qiáng)大、能夠滿足本次設(shè)計(jì)控制要求。該單片機(jī)只要求能完成控制藍(lán)牙 的初使

45、化與連接和數(shù)據(jù)的發(fā)送功能。因此,對單片機(jī)的要求并不太高。單片機(jī) AT89C52 具有 128 字節(jié)的數(shù)據(jù)存儲器和 2K 的程序存儲器。其性能穩(wěn)定,開發(fā)技 術(shù)成熟,可采用 5V 供電,功耗極低,還能直接與藍(lán)牙芯片進(jìn)行數(shù)據(jù)傳輸。而且 DIP-20 的封裝體積小,功耗低,價(jià)格便宜。單片機(jī)與藍(lán)牙模塊的通信依然采用 異步串口的方式,波特率取 19200 兼顧通信速度和抗干擾。電路圖如圖 3.3 所 示: 圖 3.3 單片機(jī) AT89C52 AT89C52 的引腳如圖 3.4 所示 圖 3.4 52 系列單片機(jī)引腳圖 上圖是AT89C52的引腳圖,引腳說明如下 VCC AT89C52電源正極輸入,接+5V

46、 電壓。 GND 電源接地端。 XTAL1 接外部晶振的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一反相放大器輸入端,這個(gè) 放大器構(gòu)成了片內(nèi)振蕩器。它采用外部振蕩器時(shí),此引腳應(yīng)接地。 XTAL2 接外部晶振的一個(gè)引腳。在片內(nèi)接至振蕩器的反相放大器輸出端和內(nèi)部時(shí)鐘 發(fā)生器輸入端。當(dāng)采用外部振蕩器時(shí),則此引腳接外部振蕩信號的輸入。 RST AT89C52的復(fù)位信號輸入引腳,高電位工作,當(dāng)要對芯片復(fù)位時(shí),只要將 此引腳電位提升到高電位,并持續(xù)兩個(gè)機(jī)器周期以上的時(shí)間,AT89C52便能完成 系統(tǒng)復(fù)位的各項(xiàng)工作,使得內(nèi)部特殊功能寄存器的內(nèi)容均被設(shè)成已知狀態(tài)。 ALE/PROG ALE 是英文ADDRESS LATCH

47、 ENABLE的縮寫,表示允許地址鎖存允許信號。 當(dāng)訪問外部存儲器時(shí),ALE 信號負(fù)跳變來觸發(fā)外部的8位鎖存器(如74LS373), 將端口P0的地址總線(A0-A7)鎖存進(jìn)入鎖存器中。在非訪問外部存儲器期間, ALE引腳的輸出頻率是系統(tǒng)工作頻率的1/16,因此可以用來驅(qū)動其他外圍芯片的 時(shí)鐘輸入。當(dāng)問外部存儲器期間,將以1/12振蕩頻率輸出。 EA/VPP 該引腳為低電平時(shí),則讀取外部的程序代 碼(存于外部EPROM中)來執(zhí)行程序。因此在8031中,EA 引腳必須接低電位, 因?yàn)槠鋬?nèi)部無程序存儲器空間。如果是使用AT89C52或其它內(nèi)部有程序空間的單 片機(jī)時(shí),此引腳接成高電平使程序運(yùn)行時(shí)訪問

48、內(nèi)部程序存儲器,當(dāng)程序指針PC 值超過片內(nèi)程序存儲器地址(8051/8751/89C52 的PC 超過0FFFH)時(shí),將自動轉(zhuǎn) 向外部程序存儲器繼續(xù)運(yùn)行。此外,在將程序代碼燒錄至8751內(nèi)部 EPROM、89C52內(nèi)部FALSH 時(shí),可以利用此引腳來輸入提供編程電壓(8751為 2lV、AT89C52為12V、8051是由生產(chǎn)廠方一次性加工好)。 PSEN 此為Program Store Enable的縮寫。訪問外部程序存儲器選通信號,低 電平有效。在訪問外部程序存儲器讀取指令碼時(shí),每個(gè)機(jī)器周期產(chǎn)生二次PSEN 信號。在執(zhí)行片內(nèi)程序存儲器指令時(shí),不產(chǎn)生PSEN 信號,在訪問外部數(shù)據(jù)時(shí), 亦不產(chǎn)

49、生PSEN 信號。 P0 P0 口(P0.0P0.7)是一個(gè)8 位漏極開路雙向輸入輸出端口,當(dāng)訪問外部數(shù) 據(jù)時(shí),它是地址總線(低8 位)和數(shù)據(jù)總線復(fù)用。外部不擴(kuò)展而單片應(yīng)用時(shí), 則作一般雙向I/O口用。P0 口每一個(gè)引腳可以推動8個(gè)LSTTL 負(fù)載。 P2 P2 口(P2.0P2.7)口是具有內(nèi)部提升電路的雙向I/0 端口 (準(zhǔn)雙向并行 I/O 口),當(dāng)訪問外部程序存儲器時(shí),它是高8 位地址。外部不擴(kuò)展而單片應(yīng)用 時(shí),則作一般雙向I/O口用。每一個(gè)引腳可以推動4 個(gè)LSTL 負(fù)載。 P1 P1 口(P1.0P1.7)口是具有內(nèi)部提升電路的雙向I/0 端口(準(zhǔn)雙向并行I/O 口),其輸出可以推動

50、4 個(gè)LSTTL 負(fù)載。僅供用戶作為輸入輸出用的端口。 P3 P3 口(P3.0P3.7)口是具有內(nèi)部提升電路的雙向I/0 端口(準(zhǔn)雙向并行I/O 口),它還提供特殊功能,包括串行通信、外部中斷控制、計(jì)時(shí)計(jì)數(shù)控制及外部 隨機(jī)存儲器內(nèi)容的讀取或?qū)懭肟刂频裙δ堋F涮厥夤δ芤_分配如下: P3.0 RXD 串行通信輸入 P3.1 TXD 串行通信輸出 P3.2 INT0 外部中斷0 輸入,低電平有效 P3.3 INT1 外部中斷1 輸入,低電平有效 P3.4 T0 計(jì)數(shù)器0 外部事件計(jì)數(shù)輸入端 P3.5 T1 計(jì)數(shù)器1 外部事件計(jì)數(shù)輸入端 P3.6 WR 外部隨機(jī)存儲器的寫選通,低電平有效 P3.7

51、 RD 外部隨機(jī)存儲器的讀選通,低電平有效 3.4 CAN 模塊 3.4.1 CAN 模塊結(jié)構(gòu) 目前常用的CAN器件分為兩大類,一類是獨(dú)立的CAN控制器,如Philips的 PCA82C250、SJA1000等,另一類是帶有CAN 功能的微控制器, 如PIC的 DSPIC6014、TI的IMS320F28l2、Motorola 的MC9S12DT128等。CAN總線收發(fā)器是 一個(gè)物理層的器件,它是CAN總線控制器和物理總線之間的接口,器件可以提供 對總線的差動發(fā)送能力和對CAN總線控制器SJA1000的差動接收能力。SJA1000具 有完成CAN高性能通信協(xié)議所要求的全部必要特性。具有簡單總線

52、連接的 SJA1000可完成物理層和數(shù)據(jù)鏈路層的所有功能。其硬件與軟件設(shè)計(jì)和 PCA82C250的基本CAN模式兼容。所以本文采用Philips的SJA1000 CAN控制器完 成CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)。CAN模塊如圖3.5所示. 圖3.5 CAN模塊結(jié)構(gòu) SJA1000 的 ADOAD7 連接到 AT89C52 的 P0 口,連接到 AT89C52 的CS P2.7。P2.7 為 0 時(shí),CPU 片外存儲器地址可選中 SJA1000,CPU 通過這些地址可 對 SJA1000 執(zhí)行相應(yīng)的讀/寫操作。 SJA1000 的、ALE 分別與RDWR AT89C52 的相應(yīng)引腳相連,SJA1000

53、 的接 AT89C52 的,AT89C52 也可通INT1INT 過中斷方式訪問 SJA1000。為了增強(qiáng)總線節(jié)點(diǎn)的抗干擾能力,SJA1000 的 TX0 和 RX0 并不直接與 PCA82C250 的 TXD 和 RXD 相接,而是通過 6N137 與 PCA82C250 相接,這樣,很好地實(shí)現(xiàn)了總線上各節(jié)點(diǎn)間的電氣隔離。光電耦合 器具有體積小、隔離效果好、價(jià)格便宜、便于安裝等特點(diǎn)。不過,光耦電路用 的 2 個(gè)電源 VCC 和 VDD 必須隔離。電源的完全隔離可采用小功率電源隔離模塊 實(shí)現(xiàn)。這雖然增加了接口電路的復(fù)雜性,但卻提高了節(jié)點(diǎn)的穩(wěn)定性和安全性。 3.4.2 CAN 控制器 SJA10

54、00 實(shí)現(xiàn)CAN協(xié)議需要CAN控制器。 SJA1000是Philips公司推出的功能很強(qiáng)的 CAN 控制器。片內(nèi)含信息緩沖、位流處理、位定時(shí)邏輯、接收濾波、錯(cuò)誤管理 邏輯等電路,并配置有豐富的功能寄存器。可完成數(shù)據(jù)成幀、總線填充、錯(cuò)誤 檢測、總線仲裁及錯(cuò)誤界定處理等CAN規(guī)范。具有BasicCAN 和PeliCAN 兩種工 作模式,器件主要特性如下: 多種結(jié)構(gòu) 強(qiáng)有力的錯(cuò)誤處理能力 可連接各種類型微處理器接口 數(shù)據(jù)長度為08個(gè)字節(jié) 可組態(tài)的總線接口 成組和廣播報(bào)文功能 可編程的時(shí)鐘輸出 傳送速率可編程 無損結(jié)構(gòu)的逐位仲裁 帶有位填充功能的非歸零編解碼 輸出驅(qū)動器狀態(tài)可編程 對每一個(gè)CAN總線錯(cuò)

55、誤的中斷 可讀/寫訪問的錯(cuò)誤計(jì)數(shù)器 具體控制位控制的仲裁丟失中斷 可編程的錯(cuò)誤報(bào)警限制 接受過濾器擴(kuò)展(4字節(jié)代碼,4字節(jié)屏蔽) 最近一次錯(cuò)誤代碼寄存器 自身信息接收(自接收請求) 單次發(fā)送(無重發(fā)) 只聽模式(無確認(rèn)、無活動的出錯(cuò)標(biāo)志) CAN核心模塊負(fù)責(zé)CAN信息幀的收發(fā)與CAN協(xié)議的實(shí)現(xiàn);接口邏輯與外部微處 理器等器件連接,以數(shù)據(jù)/地址總線形式訪問;發(fā)送緩沖保存一個(gè)完整的信息幀, 長度為l3個(gè)字節(jié);驗(yàn)收濾波器確定CAN總線上數(shù)據(jù)是否接收,若無錯(cuò)則送接收 FIFO保存。SJA1000之所以能完成復(fù)雜的電路數(shù)據(jù)流錯(cuò)誤檢驗(yàn),主要?dú)w功于其內(nèi) 部大量分工合作的寄存器。這些寄存器主要包括模式寄存器、

56、狀態(tài)寄存器、中 斷寄存器、中斷使能寄存器、總線時(shí)序寄存器、輸出控制寄存器、仲裁丟失捕 捉寄存器、錯(cuò)誤代碼捕捉寄存器、錯(cuò)誤報(bào)警限額寄存器、發(fā)送錯(cuò)誤計(jì)數(shù)器、接 收錯(cuò)誤計(jì)數(shù)器、時(shí)鐘分頻寄存器以及接收緩沖器、發(fā)送緩沖器等寄存器。由于 這些寄存器的存在,SJAIO00控制器通常被看作外部RAM來訪問,程序中主要任 務(wù)就是根據(jù)具體不同應(yīng)用對這些寄存器進(jìn)行正確初始化。SJA1000內(nèi)部主要結(jié)構(gòu) 如圖3.6所示。 接口 邏輯 CAN 核心 模塊 接收 FIFO 驗(yàn)證 濾波器 發(fā)送 緩沖 圖3.6 SJA1000網(wǎng)絡(luò)控制器的內(nèi)部結(jié)構(gòu) SJA1000的引腳說明如表3-1 表3-1 SJA1000的引腳說明 名稱符

57、號引腳號功能描述 AD7AD0 2,1, 2823 地址/數(shù)據(jù)復(fù)合總線 ALE/AS3 ALE 輸入信號(Inter 模式) ,AS 輸入信號(Motorola 模式) CS4片選信號輸入,低電平允許訪問 SJA1000 ()/ERD 5微控制器的信號(Inter 模式)或 E 使能信號(Motorola 模RD 式) WR6微控制器的信號(Inter 模式)或 RD/使能信號WRWR (Motorola 模式) CLKOUT7 SJA1000 產(chǎn)生的提供給微控制器的時(shí)鐘輸出信號,它來自內(nèi)部振 蕩器且通過編程分頻;時(shí)鐘分頻寄存器的時(shí)鐘關(guān)閉位可禁止該 引腳輸出 VSS18 接地 XTAL19 輸

58、入到振蕩器放大電路;外部振蕩信號由此輸入 XTAL210 振蕩放大電路輸出;使用外部振蕩信號時(shí)漏極開路輸出 MODE11 模式選擇輸入:1=Inter 模式;0=Motorola 模式 VDD312 輸出驅(qū)動的 5V 電源 TX013 從 CAN 輸出驅(qū)動器 0 輸出到物理線路上 TX114 從 CAN 輸出驅(qū)動器 1 輸出到物理線路上 VSS315 輸出驅(qū)動器接地 INT16 中斷輸出,用于中斷微控制器;在內(nèi)部中斷寄存器的任一位置 1 時(shí),低電平有效;開漏輸出,且與系統(tǒng)中的其他輸出INTINT 是線性關(guān)系。此引腳上的低電平可以把該控制器從睡眠模式中 激活 RST17 復(fù)位輸入,用于復(fù)位 CA

59、N 接口(低電平有效) ;把引腳通過RST 電容連到 VSS,通過電阻連到 VDD,可自動上電復(fù)位(例如, C=1F;R=50k) VDD218 輸入比較器的 5V 電源 RX0,RX119、20 從物理的 CAN 總線輸入到 SJA1000 輸入比較器;顯性電平將喚 醒 SJA1000 的睡眠模式;如果 RX1 電平比 RX0 的高,就讀顯性 電平,反之讀隱性電平;如果時(shí)鐘分頻寄存器的 CBP 位被置 1,CAN 輸入比較器被旁路以減少內(nèi)部延時(shí);當(dāng) SJA1000 連有外 部收發(fā)電路時(shí),只有 RX0 被激活,隱性電平被認(rèn)為是邏輯高而 顯性電平被認(rèn)為是邏輯低 VSS221 輸入比較器的接地端

60、VDD122 邏輯電路的 5V 電源 3.4.3 CAN 總線驅(qū)動器 PCA82C25O 驅(qū)動器PCA82C250是控制器與物理總線之間的接口,從CAN控制器SJA1000出 來的數(shù)據(jù)流需經(jīng)過驅(qū)動器PCA82C250才可與總線相連,驅(qū)動器PCA82C250除加強(qiáng) 總線的差動發(fā)送和接收功能外,還有如下特點(diǎn):具有保護(hù)總線傳輸能力、采用 斜率控制、降低射頻干擾、過熱保護(hù)及總線與電源之間的短路保護(hù)、低電流待 機(jī)模式、未上電節(jié)點(diǎn)不會干擾總線、總線可連接110個(gè)節(jié)點(diǎn)PCA82C250的內(nèi)部 結(jié)構(gòu)如圖3.7所示。 REFV 斜率/等待驅(qū)動器 保護(hù)電路 PCA82C250 接收器 基準(zhǔn)電壓 1 8 4 5 3

溫馨提示

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

評論

0/150

提交評論