版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于CAN總線控制的溫度儀表摘要隨著科學(xué)技術(shù)的飛速發(fā)展,工業(yè)控制和生產(chǎn)自動化技術(shù)的不斷進(jìn)步以及微處理器的廣泛應(yīng)用,現(xiàn)場總線技術(shù)日益成為國外各行業(yè)關(guān)注的焦點。傳統(tǒng)獨立該儀器已不能滿足當(dāng)前控制系統(tǒng)大型化、智能化和網(wǎng)絡(luò)化發(fā)展的要求,基于現(xiàn)場總線的新型智能儀器應(yīng)運而生。CAN (Controller Area Network)現(xiàn)場總線作為一種支持分布式控制和實時控制的技術(shù),以其穩(wěn)定性好、可靠性高、抗干擾能力強、通信速率快、維護(hù)成本低等優(yōu)點,成為世界上應(yīng)用最廣泛的現(xiàn)場總線之一。本文采用主流單片機STC89C52作為微處理器,配合獨立的CAN控制器SJA1000設(shè)計CAN總線數(shù)據(jù)通信系統(tǒng)的硬件電路,使得C
2、AN總線通信更加直觀。本文給出了相應(yīng)的通信軟件模型,包括應(yīng)用層協(xié)議模塊、基本通信模塊和運動控制應(yīng)用模塊。其中,應(yīng)用層協(xié)議模塊包括消息標(biāo)識符分配、數(shù)據(jù)域信息格式、數(shù)據(jù)交換模式和消息過濾機制?;就ㄐ拍K包括CAN控制器初始化、報文接收、報文發(fā)送、錯誤處理和中斷服務(wù)程序。運動控制應(yīng)用模塊包括輸出控制命令和輸入狀態(tài)信息。本文設(shè)計的數(shù)據(jù)通信系統(tǒng)結(jié)構(gòu)簡單,使用方便,設(shè)計靈活。它可以滿足工業(yè)控制網(wǎng)絡(luò)化和智能化的發(fā)展要求,對基于CAN總線的研究有積極的作用。關(guān)鍵詞:CAN數(shù)據(jù)通信,SJA1000,單片機目錄 TOC o 1-3 h z u HYPERLINK l _RefHeading_Toc3250149
3、58 摘要I HYPERLINK l _RefHeading_Toc325014959 Abstract HYPERLINK l _RefHeading_Toc325014960 目錄 HYPERLINK l _RefHeading_Toc325014961 第一章緒論1 HYPERLINK l _RefHeading_Toc325014962 1.1選題背景與意義1 HYPERLINK l _RefHeading_Toc325014963 1.2國外研究現(xiàn)狀與其發(fā)展1 HYPERLINK l _RefHeading_Toc325014964 1.3本文組織結(jié)構(gòu)2 HYPERLINK l _R
4、efHeading_Toc325014965 第二章現(xiàn)場總線與CAN總線技術(shù)通信標(biāo)準(zhǔn)3 HYPERLINK l _RefHeading_Toc325014966 2.1 CAN總線簡介3 HYPERLINK l _RefHeading_Toc325014967 2.2 CAN總線技術(shù)特點3 HYPERLINK l _RefHeading_Toc325014968 2.3 CAN總線通信協(xié)議4 HYPERLINK l _RefHeading_Toc325014969 2.3.1CAN總線的特點4 HYPERLINK l _RefHeading_Toc325014970 2.3.2 CAN總線幀格
5、式4 HYPERLINK l _RefHeading_Toc325014971 2.3.3CAN總線位仲裁技術(shù)特點5 HYPERLINK l _RefHeading_Toc325014972 2.4本章小結(jié)5 HYPERLINK l _RefHeading_Toc325014973 第三章系統(tǒng)硬件電路設(shè)計1 HYPERLINK l _RefHeading_Toc325014974 3.1智能儀表系統(tǒng)整體硬件構(gòu)成1 HYPERLINK l _RefHeading_Toc325014975 3.2CAN通信模塊硬件設(shè)計1 HYPERLINK l _RefHeading_Toc325014976 3
6、.2.1SJAl000有以下基本特性:1 HYPERLINK l _RefHeading_Toc325014977 3.2.2 CAN總線收發(fā)器TJA10502 HYPERLINK l _RefHeading_Toc325014978 3.2.3微控制器STC89C52單片機3 HYPERLINK l _RefHeading_Toc325014979 3.2.4數(shù)字溫度傳感器DS18B205 HYPERLINK l _RefHeading_Toc325014980 3.2.5 八段數(shù)碼管6 HYPERLINK l _RefHeading_Toc325014981 3.2.674HC5957 H
7、YPERLINK l _RefHeading_Toc325014982 3.3 本章小結(jié)8 HYPERLINK l _RefHeading_Toc325014983 第四章 CAN數(shù)據(jù)通信接口模塊軟件設(shè)計9 HYPERLINK l _RefHeading_Toc325014984 4.1 CAN總線數(shù)據(jù)通信程序9 HYPERLINK l _RefHeading_Toc325014985 4.2 DS18B20 溫度采集程序11 HYPERLINK l _RefHeading_Toc325014986 4.3 74HC595驅(qū)動數(shù)碼管顯示程序14 HYPERLINK l _RefHeading_
8、Toc325014987 結(jié)論16 HYPERLINK l _RefHeading_Toc325014988 參考文獻(xiàn)17 HYPERLINK l _RefHeading_Toc325014989 致19 HYPERLINK l _RefHeading_Toc325014990 附錄20 HYPERLINK l _RefHeading_Toc325014991 程序設(shè)計20第一章:緒論1.1選題背景和意義隨著微機技術(shù)和嵌入式系統(tǒng)技術(shù)的飛速發(fā)展,工業(yè)控制系統(tǒng)已經(jīng)成為計算機技術(shù)應(yīng)用領(lǐng)域中最具活力的分支,并取得了長足的進(jìn)步。由于對系統(tǒng)可靠性和靈活性的高要求,工業(yè)控制系統(tǒng)的發(fā)展主要表現(xiàn)為:控制向多樣化
9、方向發(fā)展,系統(tǒng)向去中心化方向發(fā)展,即負(fù)荷去中心化、功能去中心化、危險去中心化和地域去中心化。即以微型計算機(單片機或嵌入式系統(tǒng))為主體,代替?zhèn)鹘y(tǒng)儀器常見的電子電路,被稱為具有一定智能的新一代智能儀器。傳統(tǒng)模擬儀器的各種功能都是由單元電路來實現(xiàn)的,而在以單片機或嵌入式系統(tǒng)為主體的儀器中,很多數(shù)據(jù)處理和控制任務(wù)都是由軟件來完成的。同時,正因為現(xiàn)場總線的標(biāo)準(zhǔn)尚未統(tǒng)一,現(xiàn)場總線的應(yīng)用才能得到充分發(fā)揮,這將為現(xiàn)場總線的完善提供更為豐富的基礎(chǔ)。在此背景下,CAN(控制器局域網(wǎng))應(yīng)運而生。CAN(控制器局域網(wǎng))是一種現(xiàn)場總線,由德國Bosch公司于20世紀(jì)80年代首先推出。主要用于汽車檢測中,與控制系統(tǒng)進(jìn)行
10、數(shù)據(jù)通信。CAN總線通信協(xié)議充分考慮了工業(yè)現(xiàn)場環(huán)境,采用ISO-OSI模型中的三層,即物理層、數(shù)據(jù)層和應(yīng)用層。CAN總線規(guī)范已被國際標(biāo)準(zhǔn)化組織制定為國際標(biāo)準(zhǔn)ISO11898,并得到了許多著名半導(dǎo)體器件制造商的支持,各種集成CAN協(xié)議的芯片產(chǎn)品已經(jīng)推出。1.2國外研究的現(xiàn)狀和發(fā)展如今,許多知名的外國汽車制造企業(yè),如奔馳、寶馬、保時捷、勞斯萊斯等。采用CAN總線實現(xiàn)了汽車系電子控制系統(tǒng)與測試和執(zhí)行機構(gòu)之間的數(shù)據(jù)通信。雖然國內(nèi)一些汽車廠商最初嘗試在自己的產(chǎn)品中使用CAN,并做出了一些相應(yīng)的產(chǎn)品,但從成熟度上來說,無疑與那些知名廠商有較大差距。經(jīng)過20多年的發(fā)展,特別是隨著其國際標(biāo)準(zhǔn)化(IS01189
11、8)的制定,CAN總線促進(jìn)了其發(fā)展和應(yīng)用。英特爾、摩托羅拉、飛利浦、西門子等100多家國際公司都支持CAN總線協(xié)議。目前,中國的科學(xué)技術(shù)水平和整體綜合技術(shù)水平已經(jīng)達(dá)到國際上80年代中期的水平。隨著微電子技術(shù)和計算機技術(shù)在儀器儀表產(chǎn)品中的廣泛應(yīng)用,約15%的產(chǎn)品智能化,達(dá)到90年代國際水平,30%的產(chǎn)品數(shù)字化,達(dá)到80年代后期國際水平。通過科技攻關(guān)、聯(lián)合開發(fā)、合資合作、消化吸收引進(jìn)技術(shù)和國產(chǎn)化,我國儀器儀表行業(yè)部分中高檔主導(dǎo)產(chǎn)品縮小了與國際先進(jìn)水平的差距,形成了生產(chǎn)能力。在未來的發(fā)展前景中,CAN總線將有以下幾個方向:(1) CAN總線在未來的市場競爭中將具有一定的優(yōu)勢。(2)與企業(yè)以太網(wǎng)互聯(lián)。
12、(3)模糊控制技術(shù)和智能技術(shù)的結(jié)合。(4)與無線技術(shù)的結(jié)合。1.3本文的組織結(jié)構(gòu)本文研究了基于CAN總線的數(shù)據(jù)通信系統(tǒng)的通信系統(tǒng)的設(shè)計與實現(xiàn)。涉及需求分析、總體設(shè)計、硬件結(jié)構(gòu)設(shè)計、軟件設(shè)計開發(fā)、系統(tǒng)模擬測試等。第一章是緒論,簡要介紹了CAN總線在國外的應(yīng)用現(xiàn)狀,說明了本課題的研究背景和意義。第二章簡要介紹了CAN總線通信標(biāo)準(zhǔn),包括其技術(shù)特點、報文幀類型和格式、獨特的位仲裁技術(shù)、報文過濾技術(shù)等。第三章是CAN總線通信系統(tǒng)的硬件設(shè)計與實現(xiàn)以及應(yīng)用層通信協(xié)議模塊的設(shè)計。第四章介紹了CAN通信系統(tǒng)軟件開發(fā)的過程,并說明了在仿真測試平臺上的測試情況。第五章總結(jié)了本通信系統(tǒng)設(shè)計與實現(xiàn)的主要成果和結(jié)論,并對
13、下一步工作進(jìn)行了展望。第二章現(xiàn)場總線和CAN總線的技術(shù)通信標(biāo)準(zhǔn)2.1 can總線介紹CAN網(wǎng)絡(luò)是 HYPERLINK ./%20%20%20%20:/baike.baidu%20%20%20%20/view/3965976.htm 控制器局域網(wǎng)(控制器局域網(wǎng))是德國博世公司為現(xiàn)代汽車應(yīng)用而提出的多主機局域網(wǎng)。它是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò),其總線規(guī)范已被ISO。 HYPERLINK ./%20%20%20%20:/baike.baidu%20%20%20%20/view/42488.htm 國際標(biāo)準(zhǔn)化組織它是一種國際標(biāo)準(zhǔn),被認(rèn)為是最有前途的現(xiàn)場總線之一。CAN總線的通信介質(zhì)
14、可以是雙絞線、同軸電纜或光纖,最高通信速率可達(dá)1Mbps。其應(yīng)用范圍從高速網(wǎng)絡(luò)到低成本多線網(wǎng)絡(luò),廣泛應(yīng)用于工業(yè)自動化、各種控制設(shè)備、車輛、醫(yī)療儀器、建筑、環(huán)境控制等諸多部門。2.2 can總線的技術(shù)特點(1)多主機工作模式,網(wǎng)絡(luò)上的任何節(jié)點都可以隨時主動向網(wǎng)絡(luò)上的其他節(jié)點發(fā)送信息,不分主從,通信方式靈活。(2)網(wǎng)絡(luò)上的節(jié)點(信息)可以劃分不同的優(yōu)先級,可以滿足不同的實時性要求。(3)利用非破壞性位仲裁總線結(jié)構(gòu)機制,當(dāng)兩個節(jié)點同時向網(wǎng)絡(luò)傳輸信息時,低優(yōu)先級的節(jié)點主動停止數(shù)據(jù)傳輸,而高優(yōu)先級的節(jié)點可以繼續(xù)傳輸數(shù)據(jù)而不受影響。(4)可以以多種傳輸模式接收數(shù)據(jù),例如點對點、點對多點(群組)和全球廣播。
15、(5)直接通信距離可達(dá)6km(速率10Kbps以下)。(6)最高通信速率可達(dá)1MB/s(此時最遠(yuǎn)距離為40m)。(7)節(jié)點數(shù)實際可以達(dá)到110。(8)采用短幀結(jié)構(gòu),每幀有效字節(jié)數(shù)為8。(9)每一幀信息都有CRC校驗等檢錯措施,數(shù)據(jù)誤碼率極低。(10)雙絞線、同軸電纜和光纖可用作通信介質(zhì)。一般可以用便宜的雙絞線,沒有特殊要求。(11)當(dāng)出現(xiàn)嚴(yán)重錯誤時,節(jié)點具有自動關(guān)閉總線的功能,切斷其與總線的連接,從而不影響總線上的其他操作。2.3 CAN總線通信協(xié)議2.3.1CAN總線的特點CAN總線是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò)。其通信介質(zhì)可以是雙絞線、同軸電纜或光纖。在汽車發(fā)動機控制部件
16、、傳感器和其他應(yīng)用中,總線的最大比特率可以達(dá)到1 Mbit/s。CAN總線具有以下主要特性:A.基于優(yōu)先級競爭的無損總線仲裁B.可通過接收進(jìn)行過濾的多地址幀傳輸C.它具有錯誤檢測和錯誤幀自動重傳的功能。D.數(shù)據(jù)傳輸方式可分為數(shù)據(jù)廣播型和遠(yuǎn)程數(shù)據(jù)請求型。2.3.2 CAN總線幀格式CAN總線通信協(xié)議包括CAN2.0A和CAN2.0B,其幀格式為:(1)CAN2.0A通信協(xié)議規(guī)定了四種不同的幀格式:幀用于在節(jié)點之間傳遞數(shù)據(jù),是網(wǎng)絡(luò)信息的主體。其幀格式依次包括幀開始、仲裁字段、控制字段、數(shù)據(jù)字段、CRC字段、ACK字段和幀結(jié)束。數(shù)據(jù)段長度可編程為0至8字節(jié)。該幀由在線單元發(fā)送,用于請求發(fā)送具有相同標(biāo)
17、識符的數(shù)據(jù)幀。其幀格式與數(shù)據(jù)幀基本相同,但沒有數(shù)據(jù)字段。幀錯誤幀是用于檢測總線錯誤的信號標(biāo)志,它由兩個不同的字段組成。第一個字段疊加了來自不同節(jié)點的錯誤標(biāo)志,第二個字段是錯誤限定符。CAN協(xié)議采用CRC校驗,并能提供相應(yīng)的錯誤處理功能,保證數(shù)據(jù)通信的可靠性。過載幀由過載標(biāo)識符和過載限定符組成,指示邏輯鏈路控制層要求的部分過載狀態(tài),將由媒體訪問控制層的某些錯誤條件發(fā)起并發(fā)送。用于擴展幀序列的延遲時間。(2)CAN2.0B通信協(xié)議分為兩種幀格式:標(biāo)準(zhǔn)框架標(biāo)準(zhǔn)幀信息為11字節(jié),包括信息和數(shù)據(jù)兩部分。前3個字節(jié)是信息部分。1字節(jié)1是幀信息。第7位(FF)表示幀格式。在標(biāo)準(zhǔn)幀中,F(xiàn)F = 0;位6 (R
18、TR)表示幀的類型,RTR=0表示數(shù)據(jù)幀,RTR=1表示遠(yuǎn)程幀;DLC表示數(shù)據(jù)幀時的實際數(shù)據(jù)長度。字節(jié)2和3是報文識別碼,11位有效。字節(jié)4 11是數(shù)據(jù)幀的實際數(shù)據(jù),在遠(yuǎn)程幀中無效。擴展框架擴展幀信息是13字節(jié),包括信息和數(shù)據(jù)兩部分。前五個字節(jié)是信息部分。1字節(jié)是幀信息。第7位(FF)表示幀格式。在擴展幀中,F(xiàn)F = 1;位6 (RTR)表示幀的類型,RTR=0表示數(shù)據(jù)幀,RTR=1表示遠(yuǎn)程幀;DLC表示數(shù)據(jù)幀時的實際數(shù)據(jù)長度。字節(jié)2 5為報文識別碼,高29位有效。字節(jié)6 13是數(shù)據(jù)幀的實際數(shù)據(jù),在遠(yuǎn)程幀中無效。2 . 3 . 3 can總線位仲裁的技術(shù)特征只要總線空閑,任何單元都可以開始發(fā)送
19、消息。為了實時處理數(shù)據(jù),需要快速傳輸數(shù)據(jù),這就要求數(shù)據(jù)的物理傳輸信道具有很高的速度。當(dāng)幾個站需要同時發(fā)送數(shù)據(jù)時,要求快速分配總線。如果兩個或兩個以上的單元同時開始傳輸消息,就會出現(xiàn)總線訪問沖突。這種沖突可以通過使用標(biāo)識符的位形式仲裁來解決。CAN總線以報文為單位傳輸數(shù)據(jù),報文的優(yōu)先級與11位標(biāo)識符組合,二進(jìn)制數(shù)最小的標(biāo)識符優(yōu)先級最高。這個優(yōu)先級一旦在系統(tǒng)設(shè)計中確立,就不能更改。總線讀取中的沖突可以通過位仲裁來解決。2.4本章概述首先,CAN控制器工作在多主模式,網(wǎng)絡(luò)中的所有節(jié)點都可以根據(jù)總線訪問優(yōu)先級(取決于報文標(biāo)識符)以無損結(jié)構(gòu)的逐位仲裁方式競爭向總線發(fā)送數(shù)據(jù)。另外,CAN協(xié)議取消了站地址編
20、碼,而是對通信數(shù)據(jù)進(jìn)行編碼,使得不同的節(jié)點可以同時接收相同的數(shù)據(jù)。這些特點使得CAN總線組成的網(wǎng)絡(luò)中節(jié)點之間的數(shù)據(jù)通信實時性強,并且容易形成冗余結(jié)構(gòu),從而提高了系統(tǒng)的可靠性和靈活性。其次,CAN總線通過CAN控制器接口芯片TJA1050的兩個輸出端CANH和CANL連接到物理總線上,CANH端的狀態(tài)只能是高電平或浮空狀態(tài),而CANL端的狀態(tài)只能是低電平或浮空狀態(tài)。而且完善的CAN通信協(xié)議可以通過CAN控制器芯片及其接口芯片來實現(xiàn),大大降低了系統(tǒng)開發(fā)的難度,縮短了開發(fā)周期。另外,與其他現(xiàn)場總線相比,CAN總線是一種國際標(biāo)準(zhǔn)的現(xiàn)場總線,具有通信速率高、易于實現(xiàn)、性價比高等特點。這些也是CAN總線被
21、應(yīng)用于眾多領(lǐng)域并具有強大市場競爭力的重要原因。CAN(控制器局域網(wǎng))是控制器局域網(wǎng),屬于工業(yè)現(xiàn)場總線領(lǐng)域。與通用通信總線相比,CAN總線的數(shù)據(jù)通信具有突出的可靠性、實時性和靈活性。由于其良好的性能和獨特的設(shè)計,CAN總線越來越受到人們的關(guān)注。廣泛應(yīng)用于汽車領(lǐng)域。世界上一些著名的汽車制造商,如奔馳、寶馬、保時捷、勞斯萊斯等,都采用了CAN總線來實現(xiàn)汽車部門的控制系統(tǒng)與測試和執(zhí)行機構(gòu)之間的數(shù)據(jù)通信。同時,由于CAN總線本身的特點,其應(yīng)用也不再局限于汽車工業(yè),而是發(fā)展到了自動控制、航空航天、航海、過程工業(yè)、機械工業(yè)、紡織機械、農(nóng)業(yè)機械、機器人、數(shù)控機床、醫(yī)療儀器、傳感器等領(lǐng)域。CAN已經(jīng)成為國際標(biāo)準(zhǔn)
22、,并被公認(rèn)為幾種最有前途的現(xiàn)場總線之一。第三章是系統(tǒng)的硬件電路設(shè)計。3.1智能儀表系統(tǒng)的總體硬件組成本文設(shè)計的智能儀表系統(tǒng)主要完成直接現(xiàn)場模擬信號的采樣、計算、傳輸和顯示,將數(shù)據(jù)和參數(shù)傳輸?shù)奖O(jiān)控計算機進(jìn)行實時監(jiān)控和管理,并在監(jiān)控計算機中進(jìn)行PID調(diào)節(jié)。智能節(jié)點接收調(diào)整后的參數(shù),即控制被控對象。系統(tǒng)的整個工作過程是:傳感器從現(xiàn)場采集數(shù)據(jù),通過中央處理器進(jìn)行轉(zhuǎn)換,然后送到數(shù)碼管進(jìn)行顯示,再通過CAN總線將數(shù)據(jù)送到監(jiān)控計算機進(jìn)行顯示和分析,PID調(diào)整后的數(shù)據(jù)傳送到相應(yīng)的節(jié)點控制被控對象。同時,當(dāng)其他節(jié)點有數(shù)據(jù)請求時,可以通過CAN總線將數(shù)據(jù)發(fā)送給其他智能節(jié)點。根據(jù)系統(tǒng)功能、經(jīng)濟(jì)性和靈活性的設(shè)計要求,
23、本設(shè)計選用STC89C52作為中央處理器。STC89C52完成傳感器數(shù)據(jù)采集、數(shù)碼管顯示和數(shù)據(jù)傳輸?shù)目刂?。使用獨立的CAN控制器SJAl000結(jié)合CAN總線收發(fā)器TJA1050,SJAl000是一個獨立的CAN控制器,在硬件和軟件上與之前的PCA82C200兼容,具有一系列適合各種應(yīng)用的高級功能。TJA1050負(fù)責(zé)與CAN物理層連接,接收和發(fā)送數(shù)據(jù)。解決了CAN總線雖然可連接設(shè)備多,傳輸距離遠(yuǎn),抗干擾能力強,但不能直接連接到計算機的問題。在智能節(jié)點中,微處理器由兩個單片機組成,通過串口相互通信。一個芯片主要負(fù)責(zé)數(shù)據(jù)采集和顯示,另一個芯片負(fù)責(zé)SJAl000的初始化,通過控制SJAl000實現(xiàn)數(shù)據(jù)
24、的接收和發(fā)送等通信任務(wù)。用兩個單片機實現(xiàn)智能節(jié)點的功能,為系統(tǒng)的模塊化開發(fā)提供了方便。3.2 CAN通信模塊的硬件設(shè)計在本次設(shè)計中,選擇了獨立的CAN控制器,因為獨立的CAN控制器使用靈活,可以與各種類型的單片機和微型計算機的各種標(biāo)準(zhǔn)總線相結(jié)合。而且目前在國內(nèi)市場上很容易買到,性價比高。SJAl000是一款獨立的CAN控制器,主要用于一般工業(yè)環(huán)境下的移動目標(biāo)和區(qū)域網(wǎng)絡(luò)控制。3.2.1 SJAl000具有以下基本特性:引腳和電氣參數(shù)與PCA82C200獨立CAN控制器兼容。PCA82C200模式(即默認(rèn)的基本掃描模式)。有一個64字節(jié)的擴展接收緩沖器FIFO。支持CAN 2。OA和CAN 2。O
25、B協(xié)議。支持11位和29位識別碼。通信比特率可達(dá)1Mbps。PeliCAN模式的擴展功能:帶讀/寫訪問的錯誤計數(shù)寄存器;可編程誤差誤差極限寄存器;最后一個錯誤代碼寄存器;對于每個CAN總線錯誤中斷;具有特定位表示的仲裁丟失中斷;單次傳輸(無重傳);僅監(jiān)聽模式類型(無確認(rèn),無激活的錯誤標(biāo)志);支持熱插拔(軟件檢測比特率);驗收過濾器擴展(4字節(jié)驗收碼,4字節(jié)屏蔽);接收自己的消息(自收請求);24MHz時鐘頻率;可以與不同的微處理器接口;可編程CAN輸出驅(qū)動器配置;溫度適應(yīng)性大(40 +125)。CAN的核心控制塊主要控制CAN幀的接收和發(fā)送。SJAl000的發(fā)送緩沖區(qū)可以存儲完整的消息(擴展或
26、標(biāo)準(zhǔn))。當(dāng)主控制器開始傳輸時,邏輯管理接口會強制CAN核心控制模塊讀取發(fā)送緩沖器中的CAN消息。收到消息后,CAN內(nèi)核控制模塊將連續(xù)位轉(zhuǎn)換為標(biāo)準(zhǔn)數(shù)據(jù),并將其存儲在接收濾波器中??删幊虨V波器SJAl000可以決定主控制器接收哪個消息。存儲在接收過濾器中的所有接收信息都存儲在接收隊列中。根據(jù)操作模式,可以保存最大長度為64字節(jié)的信息。這使得用戶在指定系統(tǒng)中斷服務(wù)和中斷優(yōu)先級時更加靈活,因為數(shù)據(jù)溢出的可能性已經(jīng)降低。CAN總線收發(fā)器TJA1050通常使用SJAl000獨立CAN總線控制器就可以完成CAN總線的通信任務(wù),但缺點是其驅(qū)動能力不夠,需要增加一個TJA1050總線驅(qū)動芯片來彌補這一缺陷,使系
27、統(tǒng)達(dá)到用戶滿意的水平。TJA1050是CAN控制器和物理總線之間的接口。它最初是為汽車中的高速應(yīng)用(高達(dá)1Mbps)而設(shè)計的。該設(shè)備可以向總線提供差分發(fā)送和接收功能。TJA1050的主要特性如下:完全兼容IS01 1898標(biāo)準(zhǔn);高速率(高達(dá)1 Mbps);具有汽車環(huán)境下抗瞬時干擾和保護(hù)總線的能力;采用斜率控制降低射頻干擾;過溫保護(hù);母線和電源與地之間的短路保護(hù);低電流待機模式;未通電的節(jié)點不會干擾總線;總線至少可以連接10個節(jié)點。引腳8(Rs)允許您選擇三種不同的工作模式:高速、斜率控制和待機。在高速操作模式下,發(fā)射器的輸出晶體管可以盡快開啟和關(guān)閉。在這種模式下,不需要采取任何措施來限制上升和
28、下降斜率。對于較低的速度和較短的總線長度,可以使用非屏蔽雙絞線或平行線作為總線。為了減少射頻干擾,應(yīng)該限制上升和下降斜率。上升和下降斜率可由通過Rs引腳接地的電阻控制,斜率與Rs引腳上的電流輸出成正比。3.2.3微控制器STC89C52單片機STC89C52是一款低壓、高性能CMOS8位微控制器,內(nèi)置8K字節(jié)可重寫程序存儲器(PENROM)。和512字節(jié)訪問數(shù)據(jù)存儲器(RAM)。該器件采用STC公司的高密度、不易丟失的存儲器技術(shù)生產(chǎn),與MCS-51單片機兼容。STC89C52單片機具有8位CPU和flash存儲單元,功能強大,可應(yīng)用于控制領(lǐng)域。Pin描述VCC:電源電壓GND:地面P0口:P0
29、端口是一組開漏的8位雙向I/O端口,即地址/數(shù)據(jù)總線多路復(fù)用端口。作為輸出端口,每個引腳可以驅(qū)動八個TTL電路。將“1”寫入端口P0時,每個引腳都可以用作高阻抗輸入端。P0端口還可以在訪問外部數(shù)據(jù)存儲器或程序存儲器時切換地址和數(shù)據(jù)總線復(fù)用,此時激活器件的上拉電阻。P0端口在flash編程期間接收指令,在程序驗證期間輸出指令,這需要電阻連接。P1港:P1是一個8位雙向I/O端口,帶有部分上拉電阻,P1的輸出緩沖級可以驅(qū)動四個TTL電路。向端口寫“1”,通過器件的電阻將端口拉高電平,此時可以作為輸入端口。由于電阻的原因,當(dāng)引腳被外部信號拉低時,它將輸出電流。在編程和程序驗證期間,P1端口接收低8位
30、地址。P2:P2是一個帶上拉電阻的8位雙向I/O端口,P2的輸出緩沖級可以驅(qū)動4個TTL電路。將“1”寫入端口,并通過器件的電阻將端口拉至高電平。此時,它可以用作輸入端口。由于電阻的原因,當(dāng)引腳被外部信號拉低時,它將輸出電流。當(dāng)訪問具有16位地址的外部程序存儲器或外部數(shù)據(jù)存儲器時,P2端口發(fā)送高8位地址的數(shù)據(jù)。當(dāng)訪問具有8位地址的外部數(shù)據(jù)存儲器時,P2端口線的容量在整個操作期間保持不變。在閃爍或驗證期間,P2端口接收高位地址和其他控制信號。P3:P3端口是一組帶電阻的8位雙向I/O端口,其輸出緩沖器可以驅(qū)動4個TTL電路。當(dāng)“1”被寫入P3端口時,當(dāng)它們被電阻拉高電平,可以作為輸入端時,被外界
31、拉低的P3端口將利用電阻輸出電流。P3不僅是一個通用的I/O端口,還是它的第二個功能,如下表所示:端口引腳第二功能P3.0接收數(shù)據(jù)P3.1數(shù)據(jù)發(fā)送P3.2INT0P3.3INT1P3.4T0P3.5一種網(wǎng)絡(luò)的名稱(傳輸率可達(dá)1.54mbps)P3.6華氏反應(yīng)(Wassermann reaction)P3.7路P3還接收一些用于閃存編程和程序驗證的控制信號。RST:復(fù)位輸入。當(dāng)振蕩器工作時,RET引腳的高電平超過兩個機器周期將復(fù)位微控制器。啤酒/:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE輸出脈沖用于鎖存地址的低8位字節(jié)。即使不訪問外部存儲器,ALE也能以時鐘振蕩頻率的1/16輸出一個固定的正脈
32、沖信號,因此它可以用來輸出時鐘或用于計時目的。注意:當(dāng)訪問外部數(shù)據(jù)存儲器時,只要ALE脈沖被跳過,該引腳也用于在對閃存進(jìn)行編程時輸入編程脈沖。如有必要,可以在特殊寄存器區(qū)的8EH單元的D0位置禁止ALE操作。在此位置后,僅應(yīng)用一個MOVX和MOVC指令A(yù)LE。另外,這個引腳會被稍微拉高,所以MCU執(zhí)行外部程序時ALE要設(shè)為無效。PSEN:程序存儲許可輸出是外部程序存儲器的讀選通信號。當(dāng)AT89C51從外部程序存儲器中讀取指令時,每個機器周期PSEN有效兩次,即輸出兩個脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器時,這兩個有效的PSEN信號不會出現(xiàn)。東亞/VPP:允許外部訪問。為了使CPU只訪問外部程序
33、存儲器,EA端必須保持低電平。注意,如果加密位LBI被編程,EA狀態(tài)將在復(fù)位時間被鎖存。如果EA端子處于高電平,CPU將執(zhí)行程序存儲器中的指令。當(dāng)閃存被編程時,+12V編程許可電壓VPP被施加到該引腳。當(dāng)然,這必須是該設(shè)備使用12V編程電壓VPP。XTAL1:振蕩器反相放大器和時鐘發(fā)生器的輸入。XTAL2:振蕩器反相放大器的輸出。數(shù)字溫度傳感器DS18B20DSI8B20是DALLAS公司最新的單線數(shù)字溫度傳感器,小巧經(jīng)濟(jì)。它是世界上第一個支持“一線總線”接口的溫度傳感器。單總線獨特而經(jīng)濟(jì)的特點使得用戶可以方便地組建傳感器網(wǎng)絡(luò),這為測量系統(tǒng)的構(gòu)建引入了一個新的概念。它的測量溫度范圍從-55到+
34、125?,F(xiàn)場溫度以“一線總線”的數(shù)字化方式直接傳輸,大大提高了系統(tǒng)的抗干擾性能。適用于惡劣環(huán)境下的現(xiàn)場測溫,如環(huán)境控制、設(shè)備或過程控制、測溫消費電子等。與上一代產(chǎn)品不同的是,新產(chǎn)品支持3 5.5 V的電壓范圍,使得系統(tǒng)設(shè)計更加靈活方便。新一代產(chǎn)品更便宜、更小巧。DSI8B20可以編程實現(xiàn)9 12位的分辨率,精度為0.5??梢赃x擇更小的封裝方式和更寬的電壓范圍。分辨率設(shè)置和用戶設(shè)置的報警溫度存儲在EPROM中,斷電后仍會保存。DS18B20的性能是新一代產(chǎn)品中最好的,性價比也很出色。繼早期的“一線總線”產(chǎn)品之后,DS18B20開辟了溫度傳感器技術(shù)的新概念。本設(shè)計中,CAN總線數(shù)據(jù)通信的溫度采集由
35、DSI8B20完成。將DSI8B20的GND引腳接地,VDD引腳接高電平,單總線DQ引腳接單片機的外部中斷引腳。具體采集電路如圖所示。溫度采集電路3.2.5八段數(shù)碼管LED(光編輯二極管)是發(fā)光二極管的縮寫。LED數(shù)碼管有8個LED,分別標(biāo)有A、B、C、D、E、F、G、dp,其中dp為小數(shù)點,中間為公共端(COM)。市面上的數(shù)碼管有兩種:共陽極和共陰極。共陽極數(shù)碼管是指將所有l(wèi)ed的陽極連接在一起形成共陽極(COM)的數(shù)碼管。施加共陽極數(shù)碼管的共陽極COM時,應(yīng)接+5V。當(dāng)某一場LED的陰極處于低電平時,對應(yīng)的場就會亮起;當(dāng)某個場的陰極處于高電平時,對應(yīng)的場不會亮。共陰極數(shù)碼管是指將所有l(wèi)ed
36、的陰極連接在一起形成共陰極(COM)的數(shù)碼管。當(dāng)應(yīng)用共陰極數(shù)碼管的共陰極時,應(yīng)連接到接地GND。某一場LED陽極高時對應(yīng)場亮,某一場陽極低時對應(yīng)場不亮。如下示意圖所示:674HC59574HC595是一個開漏輸出的COMS移位寄存器。其輸出端口為可控三態(tài)輸出端,也可用于串行輸出控制下一級級聯(lián)芯片。特點:(1)高速移位時鐘頻率Fmax25Mhz(2)標(biāo)準(zhǔn)串行(SPI)接口(3)COMS串行輸出,可用于級聯(lián)多個設(shè)備。74HC595電路圖如下圖所示:3.3本章概述從圖中可以看出,該電路主要由微控制器89C52、獨立CAN通信控制器SJAl000、CAN總線收發(fā)器TJA1050和數(shù)碼管顯示器四部分組成
37、。微處理器89C52負(fù)責(zé)SJAl000的初始化,通過控制SJAl000實現(xiàn)數(shù)據(jù)接收和發(fā)送等通信任務(wù)。在電路SJAl000中,AD0AD7連接到89C52的端口P0,CS連接到89C52的P2.0。當(dāng)P 2.0處于低電平時,可以選擇SJA I 000作為CPU的片外內(nèi)存地址,CPU可以通過這些地址對SJA I000進(jìn)行相應(yīng)的讀寫操作。SJAl000的Pads、WR、ALE接89C52的對應(yīng)引腳,J、r接89C52的INTO,也可以通過中斷訪問SJAl000。第四章CAN數(shù)據(jù)通信接口模塊的軟件設(shè)計4.1 CAN總線數(shù)據(jù)通信程序通信模塊程序主要包括三部分:初始化子程序、發(fā)送子程序和接收子程序。初始化
38、程序主要是通過CAN控制器控制段的寄存器寫入控制字,從而決定CAN控制器的工作模式。進(jìn)入初始化程序有三種方式:一是上電復(fù)位,二是硬件復(fù)位;第三,軟件復(fù)位,即在運行過程中,向CAN控制器發(fā)送復(fù)位請求,復(fù)位請求位置1。節(jié)點的主要功能模塊是根據(jù)接收到的控制命令報文的數(shù)據(jù)域信息幀碼做不同的處理,比如初始化節(jié)點,接收和發(fā)送來自CAN總線的報文,數(shù)字化輸出控制命令。CAN總線收發(fā)器主程序:#include #include #include #包含無符號字符代碼numtab16=0 x24,0 x6F,0 xE0,0 x62,0 x2B,0 x32,0 x30,0 x67,0 x20,0 x22,0 x2
39、1,0 x38,0 xB4,0 x68,0 xB0,0 x B1 ;void delay ms(unsigned int t);/*Function: main()/函數(shù)名描述:/功能功能、性能等描述。Calls: delayms()/此函數(shù)調(diào)用的函數(shù)列表調(diào)用方:/調(diào)用此函數(shù)的函數(shù)列表已訪問的表:/已訪問的表(此項僅用于數(shù)據(jù)庫操作所涉及的程序)updated:/modified表(此項僅用于數(shù)據(jù)庫操作中涉及的程序)輸入:/輸入?yún)?shù)描述,包括每個參數(shù)的工作。/使用and值解釋與參數(shù)的關(guān)系。Output: /輸出參數(shù)的描述。Return: /函數(shù)返回值的描述其他:/其他說明*/void main(
40、)無符號字符I;WDT _控制= 0 x00/關(guān)閉看門狗DISP _港口= numtab15;/顯示F,表示發(fā)送戴萊姆斯(200);test can();while(1)DISP _港口= numtab0;/顯示0戴萊姆斯(50);DISP _港口= numtab0;/顯示1戴萊姆斯(50);for(I = 0;i 16i+)DISP _港口= numtabI;/循環(huán)顯示0F戴萊姆斯(50);/*函數(shù):delayms()/函數(shù)名描述:延時功能/功能功能、性能等描述。Calls: /此函數(shù)調(diào)用的函數(shù)列表調(diào)用方:/調(diào)用此函數(shù)的函數(shù)列表已訪問的表:/已訪問的表(此項僅用于數(shù)據(jù)庫操作所涉及的程序)up
41、dated:/modified表(此項僅用于數(shù)據(jù)庫操作中涉及的程序)輸入:t/輸入?yún)?shù)描述,包括每個參數(shù)的工作情況。/使用and值解釋與參數(shù)的關(guān)系。Output: /輸出參數(shù)的描述。Return: /函數(shù)返回值的描述其他:/其他說明*/void延遲符號(無符號整數(shù)t)無符號int i,j;for(I = 0;I t;i+)for(j = 0;j 0;我-) DQ = 0;/給出脈沖信號dat = 1;DQ = 1;/給出脈沖信號if(DQ)dat | = 0 x80delay _ 18b 20(10);return(dat);Voids 1820WR (Uchar WDATA)/*寫入數(shù)據(jù)*/
42、uchar I = 0;for(I = 8;I 0;我-)DQ = 0;DQ = wdata & 0 x 01;delay _ 18b 20(10);DQ = 1;wdata = 1;Uchar read_temp()/*讀取溫度值并轉(zhuǎn)換*/烏恰甲、乙、石、葛;ds 1820 rst();ds 1820 wr(0 x cc);/*跳過讀取序列號*/ds 1820 wr(0 x 44);/*開始溫度轉(zhuǎn)換*/ds 1820 rst();ds 1820 wr(0 x cc);/*跳過讀取序列號*/ds 1820 wr(0 x be);/*讀取溫度*/a = ds 1820 rd();b = ds 1
43、820 rd();杜文= b;杜文 = 8;杜文=杜文| a;杜文=杜文*(0.625);/溫度值擴展10倍,精確到小數(shù)點后1位。石=杜文% 1000/100;ge =杜文% 100/10;4.3 74HC595驅(qū)動數(shù)碼管顯示程序74HC595具有8位移位寄存器、存儲器和三態(tài)輸出功能。移位寄存器和存儲器是獨立的時鐘。數(shù)據(jù)在SCHcp的上升沿輸入,并在STcp的上升沿進(jìn)入存儲器寄存器。如果兩個時鐘連接在一起,移位寄存器總是比存儲寄存器早一個脈沖。移位寄存器具有串行移位輸入(Ds)、串行輸出(Q7)和異步低電平復(fù)位。存儲器寄存器有一個帶三種狀態(tài)的并行8位總線輸出。當(dāng)OE使能(低電平)時,存儲器寄存
44、器的數(shù)據(jù)輸出到總線。74HC595驅(qū)動數(shù)碼管顯示程序;#include#include #定義uint無符號整數(shù)#定義uchar無符號字符sbit xsdat=p00;/數(shù)據(jù)sbit xsclk=p01;/時鐘sbit gw=p02;int count = 0;code uchar TAB=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x39,0 x5e,0 x79,0 x 71 ;uint l=0,h=0,tt=0,d = 0;Void delay(uint z) /延遲函數(shù) uint x,
45、y;for(x = z;x 0;x -)for(y = 110;y 0;y-);靜態(tài)void wr _ 595 (uchar數(shù)據(jù)num 2)/寫入uchar count1for(count 1 = 0;count 1 = 7;count1+)如果(num2&0 x80)=0 x80) /*最高位為1,則發(fā)送1*/xsd at = 1;/*輸出數(shù)據(jù)的最高位*/其他xsd at = 0;num 2 = 1;/*右移*/xs clk = 0;/*生成上邊緣*/xs clk = 1;無效顯示(無效)WR _ 595(TAB1);/顯示10小時數(shù)碼管的位,如果顯示反了,調(diào)整位選擇。WR _ 595(TA
46、B2);/顯示位小時數(shù)碼管的位。GW = 0;_ nop _();_ nop _();GW = 1;/*上升沿鎖存數(shù)據(jù)*/void main()while(1) disp();延遲(1);結(jié)論本文在闡述和研究自動控制儀表的變化和CAN現(xiàn)場總線協(xié)議規(guī)則的基礎(chǔ)上,完成了基于CAN協(xié)議的CAN通信,以及CAN通信的硬件和軟件設(shè)計。SJAl000 CAN控制器成功應(yīng)用于CAN通信,實現(xiàn)了現(xiàn)場信號采集和CAN總線上數(shù)字信號傳輸?shù)墓δ?。在硬件和軟件設(shè)計中,采取了一系列抗干擾措施,使該系統(tǒng)能夠適應(yīng)惡劣的工作環(huán)境。與傳統(tǒng)儀表相比,基于CAN協(xié)議的現(xiàn)場總線儀表在功能上有了飛躍,即實現(xiàn)了雙向數(shù)字通信功能,可靠性高
47、,穩(wěn)定性好,抗干擾能力強,通信速率高。它具有高、維護(hù)成本低、開放性和實時性等特點,廣泛應(yīng)用于自動控制領(lǐng)域?;贑AN協(xié)議的CAN通信檢測儀表組成的CAN現(xiàn)場總線控制系統(tǒng)在容錯處理、數(shù)據(jù)交換速度和可靠性方面是傳統(tǒng)儀表系統(tǒng)無法比擬的,它克服了其他通信方式的一些不可彌補的缺陷:如網(wǎng)絡(luò)中只有一個主節(jié)點,不能形成多主結(jié)構(gòu)系統(tǒng);數(shù)據(jù)傳輸速率低,環(huán)境干擾多,使得系統(tǒng)更加復(fù)雜,可靠性低。CAN現(xiàn)場總線技術(shù)以其可靠性高、穩(wěn)定性好、抗干擾能力強、通信速率高、維護(hù)成本低等優(yōu)點越來越受到人們的關(guān)注,被公認(rèn)為最有前途的現(xiàn)場總線之一。近年來,現(xiàn)場總線標(biāo)準(zhǔn)及其技術(shù)日益成為國外自動化儀表領(lǐng)域關(guān)注的焦點?,F(xiàn)場總線將給傳統(tǒng)的控制
48、系統(tǒng)結(jié)構(gòu)帶來革命性的變化,迫使儀表廠升級產(chǎn)品。工作在工業(yè)控制領(lǐng)域的科技人員面臨著全數(shù)字自動化儀表產(chǎn)品和符合現(xiàn)場總線協(xié)議的開放式自動控制系統(tǒng)的研發(fā)機遇?;贑AN總線的智能儀表的開發(fā)是一項復(fù)雜的任務(wù),迄今為止所做的工作作為其中的一部分,后續(xù)工作將在此基礎(chǔ)上進(jìn)行。首先,要增強儀器的適應(yīng)性。性功能,簡化器械使用。我們使用的EPROM只存儲一些設(shè)定參數(shù),并沒有實現(xiàn)上位機對儀器功能程序的下載。難點在于儀器本身的監(jiān)控軟件對外部程序的加載。其次,通信協(xié)議的標(biāo)準(zhǔn)化和CAN高層通信協(xié)議的制定比較簡單,需要根據(jù)現(xiàn)場實際情況進(jìn)一步完善。相信隨著工作的進(jìn)展,CAN儀表一定會在生產(chǎn)實踐中發(fā)揮應(yīng)有的作用。隨著工業(yè)控制中自
49、動化程度的不斷提高和生產(chǎn)范圍的不斷擴大,傳統(tǒng)的獨立該儀器不能滿足目前分散化、網(wǎng)絡(luò)化和智能化控制系統(tǒng)的要求,一種基于現(xiàn)場總線的新型智能儀表應(yīng)運而生。現(xiàn)場總線是自動化領(lǐng)域的計算。CAN總線作為目前最有前途的現(xiàn)場總線之一,具有良好的實時性和可靠性。高性價比的優(yōu)勢逐漸成為自動化領(lǐng)域的熱點,并得到了廣泛的應(yīng)用。普遍適用。針對以上情況,本文設(shè)計并實現(xiàn)了一種基于CAN總線的智能儀器,其中主要工作和成果如下:1)介紹了當(dāng)前智能儀器的基本組成和特點,比較了國外的發(fā)展情況。分析了CAN總線的優(yōu)勢,介紹了CAN總線的概念,特點和發(fā)送消息協(xié)議進(jìn)行了詳細(xì)描述,并結(jié)合各方面的優(yōu)勢,建議采用利用CAN總線設(shè)計智能儀表系統(tǒng):
50、2)根據(jù)智能儀器的基本功能和本文的設(shè)計要求,提出了智能儀器系統(tǒng)。設(shè)計了以市場占有率較大的單片機89C52為核心處理器的總體結(jié)構(gòu)框圖。給出了具有CAN-USB轉(zhuǎn)換功能的智能節(jié)點和主節(jié)點的硬件電路,闡述了溫度采集、數(shù)字顯示、監(jiān)控計算機與數(shù)據(jù)傳輸接口的通信等設(shè)計,并針對影響系統(tǒng)穩(wěn)定性的問題提出了抗干擾措施。參考1楊憲輝,現(xiàn)場總線技術(shù)及其應(yīng)用,清華大學(xué),1999.6:2王金標(biāo),現(xiàn)場總線控制系統(tǒng)。微機信息,1996年6:3吳寬明,CAN總線原理及應(yīng)用系統(tǒng)設(shè)計,航空航天大學(xué)出版杜,2002年3月;4項杰等,現(xiàn)場總線控制系統(tǒng)的現(xiàn)狀與發(fā)展,電力系統(tǒng)自動化時代,2003 P9-PIO:5t 6963 c控制器圖
51、形液晶顯示模塊用戶手冊合集,精密電子顯示技術(shù)2004;6CANbus v 2.0版,周立功單片機開發(fā);7饒云濤,鄒,雍云,CAN現(xiàn)場總線原理及應(yīng)用技術(shù),航空航天大學(xué),2003年6月:8羅雪梅,CAN總線控制系統(tǒng)及接口電路的開發(fā)與研究,工大碩士論文,2002;9程曉林,現(xiàn)場總線控制網(wǎng)絡(luò)模型與網(wǎng)絡(luò)集成,測控技術(shù),2000.10p15-P17:10晏殊。安平,C從總線系統(tǒng)的實現(xiàn),計算機應(yīng)用研究,1998.2 P23-P25:11飛利浦應(yīng)用筆記SjAl000獨立CAN控制器,1997.12;12飛利浦應(yīng)用筆記PCA82C250/25l CAN收發(fā)器,1996年,10:13華,洪青,辛寧,MCS-51系
52、列單片機實用接口技術(shù),航空航天大學(xué),2002:附錄設(shè)計/*版權(quán)所有(C),2011-2015,技術(shù)。有限公司文件名:main.c作者:洪秉林版本:v10日期:2011-10-28描述:/模塊描述版本:/版本信息功能列表:/主要功能及其功能1.-歷史:/歷史修改記錄 大衛(wèi)96/10/12 1.0建造這個模型硬件連接硬件連接P2數(shù)字led =0 disp =1 offP13 P14 P17 P10 P11 P16 P12 P15英國石油公司CSCCAN P20INTCAN INT1 P33RS無連接RSTCAN P34麥芽酒麥芽酒WR P36研發(fā)P37*/#include #include #in
53、clude #include #包含無符號字符代碼numtab17=0 x24,0 x6F,0 xE0,0 x62,0 x2B,0 x32,0 x30,0 x67,0 x20,0 x22,0 x21,0 x38,0 xB4,0 x68,0 xB0,0 xB1,0 x 21 ;/P1 = numtab3;/顯示3/無符號char碼numtab16=0 xf7,0 xef,0 xdf,0 xfe,0 xfd,0 xfb,0 xbf,0 x7f,0 x80,0 x90,0 x88,0 x83,0 xC6,0 xA1,0 x86,0 x8e ;/P1 = numtab3;/顯示3void delay
54、ms(unsigned int t);/*Function: main()/函數(shù)名描述:/功能功能、性能等描述。Calls: delayms()/此函數(shù)調(diào)用的函數(shù)列表調(diào)用方:/調(diào)用此函數(shù)的函數(shù)列表已訪問的表:/已訪問的表(此項僅用于數(shù)據(jù)庫操作所涉及的程序)updated:/modified表(此項僅用于數(shù)據(jù)庫操作中涉及的程序)輸入:/輸入?yún)?shù)描述,包括每個參數(shù)的工作。/使用and值解釋與參數(shù)的關(guān)系。Output: /輸出參數(shù)的描述。Return: /函數(shù)返回值的描述其他:/其他說明*/void main()無符號字符I;WDT _控制= 0 x00/關(guān)閉看門狗DISP _港口= numtab1
55、6;/顯示R表示接收UART inital();戴萊姆斯(200);/IO _ Init();/int 1 _ Init();/ca nital();/CAN _ first _ send();test can();while(1)/Send();DISP _港口= numtab0;/顯示0戴萊姆斯(50);DISP _港口= numtab0;/顯示1戴萊姆斯(50);for(I = 0;i 16i+)DISP _港口= numtabI;/循環(huán)顯示0F戴萊姆斯(50);/*函數(shù):delayms()/函數(shù)名描述:延時功能/功能功能、性能等描述。Calls: /此函數(shù)調(diào)用的函數(shù)列表調(diào)用方:/調(diào)用此
56、函數(shù)的函數(shù)列表已訪問的表:/已訪問的表(此項僅用于數(shù)據(jù)庫操作所涉及的程序)updated:/modified表(此項僅用于數(shù)據(jù)庫操作中涉及的程序)輸入:t/輸入?yún)?shù)描述,包括每個參數(shù)的工作情況。/使用and值解釋與參數(shù)的關(guān)系。Output: /輸出參數(shù)的描述。Return: /函數(shù)返回值的描述其他:/其他說明*/void延遲符號(無符號整數(shù)t)無符號int i,j;for(I = 0;I t;i+)for(j = 0;j 1000j+);/*版權(quán)所有(C),2011-2015,技術(shù)。有限公司文件名:main.c作者:洪秉林版本:v10日期:2011-10-28描述:/模塊描述版本:/版本信息功
57、能列表:/主要功能及其功能1.-歷史:/歷史修改記錄 大衛(wèi)96/10/12 1.0建造這個模型硬件連接硬件連接AD0 AD1 AD2 AD3 AD4 AD5 AD6 AD7P10 P11 P12 P13 P14 P15 P16 P17CSCCAN P20INTCAN INT1 P33RS無連接RSTCAN P34麥芽啤酒WR P36研發(fā)P37/CAN地址*/#include #include #include #include #包含/void test can();#define REG_CAN_CDR 31#define REG_CAN_MOD 0#define REG_CAN_BTR0
58、6#define REG_CAN_BTR1 7#define REG_CAN_OCR 8#定義加拿大IER 4區(qū)#define REG_CAN_CMR 1#定義REG_CAN_SR 2#define REG_CAN_IR 3#定義RBSR 16#定義RBSR1 17#定義RBSR2 18#定義RBSR3 19#定義RBSR4 20#定義RBSR5 21#定義RBSR6 22#定義RBSR7 23#定義RBSR8 24#定義RBSR9 25#定義RBSR10 26#定義RBSR11 27#定義RBSR12 28#定義ALC 11 /11 /仲裁損失捕獲寄存器#定義ECC 12 /12 /錯誤捕獲
59、寄存器sbit rst can =p34;/=1復(fù)位#define bar_addr 0 x8000 /由于STC51有一個擴展AUX-RAM,如果地址是0 x00,就會和芯片的地址沖突,導(dǎo)致讀寫不正確。無符號char xdata * SJA _基_地址= bar _地址;typedef結(jié)構(gòu)參數(shù)無符號字符CanAddr;結(jié)構(gòu)測徑儀測徑儀1;無符號字符Read_SJA1000(無符號字符地址)無符號字符緩沖區(qū);buf = *(SJA _基地_地址+地址);return(Buf);void Write_SJA1000(無符號字符地址,無符號字符數(shù)據(jù))*(SJA _基地_地址+地址)=數(shù)據(jù);void
60、 delayus(無符號int t);void IO_Init()P0 = 0XFF/P2 = 0 x ff;P3 = 0 x ff;P4 = 0 x ff;P0M0 = 0X00P0M1 = 0X00P2M0 = 0X00P2M1 = 0X00P3M0 = 0X00P3M1 = 0X00EX1 = 1;IT1 = 0;/CAN總線接收中斷。/IT0 = 1;/外部中斷0負(fù)沿觸發(fā)/EX0 = 1;/打開外部中斷0EA = 1;/打開總中斷無符號字符RXD _標(biāo)志= 0;無符號字符RX _ buffer15;無效CAN_RXD(無效)中斷2/接收數(shù)據(jù)函數(shù),在中斷服務(wù)程序中調(diào)用無符號字符緩沖區(qū);E
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 帶英文的合同范本
- 2025合肥恒遠(yuǎn)化工物流發(fā)展有限公司招聘6人筆試重點題庫及答案解析
- 資質(zhì)注冊協(xié)議書
- 西安收房協(xié)議書
- 藥費補償協(xié)議書
- 責(zé)任追償協(xié)議書
- 征地苗木協(xié)議書
- 學(xué)生招生協(xié)議書
- 征地付款協(xié)議書
- 2025年齊齊哈爾龍江縣中醫(yī)醫(yī)院招聘編外工作人員11人筆試重點題庫及答案解析
- 共同買廠房協(xié)議書
- 2025貴州省專業(yè)技術(shù)人員繼續(xù)教育公需科目考試題庫(2025公需課課程)
- 美國國家公園管理
- 人教版五年級語文上冊期末考試卷【含答案】
- 四川省2025年高考綜合改革適應(yīng)性演練測試化學(xué)試題含答案
- 醫(yī)療機構(gòu)安全生產(chǎn)事故綜合應(yīng)急預(yù)案
- 水利信息化計算機監(jiān)控系統(tǒng)單元工程質(zhì)量驗收評定表、檢查記錄
- 《管理學(xué)原理》課程期末考試復(fù)習(xí)題庫(含答案)
- DL-T+5174-2020燃?xì)?蒸汽聯(lián)合循環(huán)電廠設(shè)計規(guī)范
- 消費者在直播帶貨中沖動行為的影響因素探究
- 人工智能中的因果驅(qū)動智慧樹知到期末考試答案章節(jié)答案2024年湘潭大學(xué)
評論
0/150
提交評論