當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]1  前言CAN 是國(guó)際上應(yīng)用很廣泛的一種現(xiàn)場(chǎng)總線,MCS96 系列單片機(jī)是目前在工業(yè)界推廣應(yīng)用較廣泛的嵌入式控制器,其87C196CA 單片機(jī)內(nèi)核本身帶有CAN 控制器,支持標(biāo)準(zhǔn)和擴(kuò)展的信息幀,即遵循CAN2.0A 和CAN2.0B 協(xié)議。由此

1  前言

CAN 是國(guó)際上應(yīng)用很廣泛的一種現(xiàn)場(chǎng)總線,MCS96 系列單片機(jī)是目前在工業(yè)界推廣應(yīng)用較廣泛的嵌入式控制器,其87C196CA 單片機(jī)內(nèi)核本身帶有CAN 控制器,支持標(biāo)準(zhǔn)和擴(kuò)展的信息幀,即遵循CAN2.0A 和CAN2.0B 協(xié)議。由此而構(gòu)成的CAN 總線支持分布式控制和實(shí)時(shí)控制,其串行通信方式靈活可靠,傳輸距離較遠(yuǎn)。由于CAN 總線具有通信速率高、工作可靠性高、現(xiàn)場(chǎng)抗干擾能力強(qiáng)、網(wǎng)絡(luò)連接方便和性能價(jià)格比高等優(yōu)點(diǎn),在汽車發(fā)動(dòng)機(jī)控制部件、汽車抗滑系統(tǒng)、工業(yè)自動(dòng)化、機(jī)床、電梯控制等領(lǐng)域得到了較為廣泛的應(yīng)用。

2  硬件構(gòu)成

2. 1  CAN 總線連接

基于CAN 總線的兩個(gè)87C196 單片機(jī)網(wǎng)絡(luò)聯(lián)接時(shí),分別將單片機(jī)的CAN接收、發(fā)送兩根線通過(guò)PCA82C250 CAN總線收發(fā)器聯(lián)接到CAN總線上,構(gòu)成多微控制器CAN總線連接。通信介質(zhì)可以是雙絞線、同軸電纜或光纖,其總線連接如圖1 所示。


      圖1  CAN 總線連接

該網(wǎng)絡(luò)最高通信速率為1Mbit/s ,當(dāng)傳輸速率為5Kbit/s時(shí),最大通信距離可達(dá)10Km。在其CAN 總線上可掛接多達(dá)110 個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),而網(wǎng)絡(luò)上任意一個(gè)節(jié)點(diǎn)均可以在任意時(shí)刻主動(dòng)地向網(wǎng)絡(luò)上的其他節(jié)點(diǎn)發(fā)送信息。其數(shù)據(jù)傳輸和接收可以是點(diǎn)對(duì)點(diǎn)、一點(diǎn)對(duì)多點(diǎn)或全局廣播等方式進(jìn)行。

2. 2  87C196CA 單片機(jī)

87C196CA 是集成CAN2.0B總線控制器的高性能16 位微處理器,特別適用于現(xiàn)場(chǎng)實(shí)時(shí)事件控制和分布式控制。片內(nèi)的CAN 控制器與Intel 82527獨(dú)立CAN 控制器在軟件上是兼容的,每個(gè)CAN 控制器的輸入、輸出引腳由二根雙絞線聯(lián)接到CAN總線上。CAN 控制器由一個(gè)輸入引腳(RXCAN) 、一個(gè)輸出引腳( TXCAN) 、控制和狀態(tài)寄存器,錯(cuò)誤探測(cè)和管理邏輯組成。圖2 為CAN 控制器方框圖。


               圖2  CAN 控制器方框圖

2. 3  CAN 總線收發(fā)器

PCA82C250是CAN協(xié)議控制器和物理傳輸線路之間的接口,是影響網(wǎng)絡(luò)性能的關(guān)鍵因素。它對(duì)總線提供差動(dòng)發(fā)送能力,并對(duì)CAN控制器提供差動(dòng)接收能力,其最高傳輸速率可達(dá)1Mbit/s。其主要特點(diǎn)是芯片內(nèi)部具有限流電路,可以防止輸出級(jí)對(duì)電源、地或負(fù)載短路;由于采用差動(dòng)接收發(fā)方式,因此有較強(qiáng)的抗電磁干擾能力;具有低電流節(jié)電待機(jī)工作模式;該CAN總線收發(fā)器至少可以連接110個(gè)節(jié)點(diǎn)。利用PCA82C250還可以方便地在CAN控制器與驅(qū)動(dòng)器之間建立光電隔離,以實(shí)現(xiàn)總線上各節(jié)點(diǎn)間的電氣隔離。

3  通訊軟件

對(duì)于通過(guò)CAN 總線連接的單片機(jī)之間的通訊軟件編程需要定義一系列的控制字,并在兩個(gè)單片機(jī)上進(jìn)行配置。即首先進(jìn)行上電初始化,定義CAN控制寄存器,定義位定時(shí)寄存器選擇CAN 的通訊速率,定義信息體屏蔽寄存器選擇接收對(duì)象。其次對(duì)信息體進(jìn)行初始化,分別定義兩個(gè)信息體工作模式、發(fā)送字節(jié)數(shù)、選擇CAN2.0A 或CAN2.0B 方式。其程序代碼:

/ *CAN 控制器初始化*/
can_cON = 0x41 ; / *CAN 控制器CCE 位置1 ,
則可以定義CAN 定器* /
can_ btime0 = 0x41 ; /* 定義CAN 定時(shí)器為
250 Kb/ s * /
can_btime1 = 0x67 ;
can_con = 01 ; /  *允許對(duì)CAN 控制器進(jìn)行軟
件初始化* /
can_sgmsk = 0x0 ; / * 定義標(biāo)準(zhǔn)CAN 通訊格
式的屏蔽控制字,所有位都不濾紙*/
can_msg1con0 = 0x55 ; / * 信息體1 控制器0
初始化* /
can_msg1con1 = 0x55 ; / * 信息體1 控制器1
初始化* /
can_msg1cfg = 0x88 ; / *定義信息體1 為發(fā)
送,發(fā)送8 字節(jié),標(biāo)準(zhǔn)CAN 格式* /
can_msg1id = 0xc8c8c8c8 ; / * 信息體1 標(biāo)識(shí)
寄存器初始化標(biāo)識(shí)符為c8c8c8c8 ;
can_ msg1con0 = ox95 ; / * 信息體1 控制器
0MSGVAL 位置1 ,標(biāo)明信息體1 有效* /
can_msg2con0 = 0x55 ; / * 信息體2 控制器0
初始化* /
can_msg2con1 = 0x55 ; / *信息體2 控制器1
初始化* /
can_msg2cfg = 0x80 ; /  *定義信息體2 為接
收,接收8 字節(jié),標(biāo)準(zhǔn)CAN 格式* /
can_msg2id = 0xc8c8c8c8 ; /  *信息體2 標(biāo)識(shí)
寄存器初始化標(biāo)識(shí)符為c8c8c8c8  */
can_ msg2con0 = ox95 ; / * 信息體2 控制器
0MSGVAL 位置1 ,標(biāo)明信息體2 有效 */
can_con = 0x02 ; / * CAN 控制器軟件初始化
完成*/


/  *發(fā)送8 字節(jié)數(shù)據(jù): * /
can_msg1con1 = 0x5a ; / * CPUUPD 置1 ,使
軟件刷新數(shù)據(jù),NEWDA T 置1 使信息置1 使信息
體有效* /
can_msg1data0 = 0x00 ; / * 給信息體1 第1 個(gè)
數(shù)據(jù)賦值* /
can_msg1data1 = 0x11 ; / * 給信息體1 第2 個(gè)
數(shù)據(jù)賦值3*/
can_msg1data2 = 0x22 ; / * 給信息體1 第3 個(gè)
數(shù)據(jù)賦值 */
can_msg1data3 = ox33 ; / * 給信息體1 第4 個(gè)
數(shù)據(jù)賦值* /
can_msg1data4 = 0x44 ; / * 給信息體1 第5 個(gè)
數(shù)據(jù)賦值* /
can_msg1data5 = 0x55 ; / * 給信息體1 第6 個(gè)
數(shù)據(jù)賦值* /
can_msg1data6 = 0x66 ; / * 給信息體1 第7 個(gè)
數(shù)據(jù)賦值*/
can_msg1data7 = ox77 ; /  *給信息體1 第8 個(gè)
數(shù)據(jù)賦值*/
/ *接收8 字節(jié)數(shù)據(jù): */
can_msg2cfg = 0x80 ;
can_msg2id = oxc8c8c8c8 ;
can_msg2con1 = 0x55 ;
can_msg2con0 = 0x99 ;

4  結(jié)束語(yǔ)

基于CAN 總線的16 位87C196CA 單片機(jī)串行通訊,由于運(yùn)用CAN 總線技術(shù),使電路設(shè)計(jì)簡(jiǎn)化、緊湊、極大地提高了系統(tǒng)的可靠性、實(shí)時(shí)性,系統(tǒng)抗干擾性能強(qiáng),成本較低,性能安裝比高、安裝維護(hù)簡(jiǎn)潔方便,更適于車輛控制、工廠自動(dòng)化控制、電梯控制、醫(yī)療設(shè)備等,具有非常廣闊的應(yīng)用前景。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉