0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于MCS96系列單片機(jī)在串行通訊中的應(yīng)用

電子設(shè)計(jì) ? 來源:甘肅科技 ? 作者:張琳;李蘭崇 ? 2020-04-06 07:00 ? 次閱讀

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ā)送兩根線通過PCA82C250 CAN總線收發(fā)器聯(lián)接到CAN總線上,構(gòu)成多微控制器CAN總線連接。通信介質(zhì)可以是雙絞線、同軸電纜或光纖,其總線連接如圖1 所示。

基于MCS96系列單片機(jī)在串行通訊中的應(yīng)用

該網(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 控制器方框圖。

基于MCS96系列單片機(jī)在串行通訊中的應(yīng)用

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)間的電氣隔離。[page]

3 、通訊軟件

對(duì)于通過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 使信息

體有效* /[page]

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é)束語

基于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)用前景。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6040

    文章

    44594

    瀏覽量

    636943
  • 收發(fā)器
    +關(guān)注

    關(guān)注

    10

    文章

    3441

    瀏覽量

    106117
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2894

    瀏覽量

    88227
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    MCS-96系列單片機(jī)中斷優(yōu)先級(jí)的控制方法

    MCS96系列單片機(jī)的中斷系統(tǒng)頗具特色,其中斷優(yōu)先級(jí)的控制極具靈活性,用戶可采用軟、硬件結(jié)合的方法隨心所欲地安排各類中斷源的優(yōu)先級(jí)。
    發(fā)表于 05-03 16:36 ?2562次閱讀

    MCS-51系列單片機(jī)實(shí)用接口技術(shù)-電子書(免費(fèi)下載哦)

    設(shè)計(jì)與實(shí)踐第九章 A/D轉(zhuǎn)換器與MCS-51單片機(jī)的接口設(shè)計(jì)與實(shí)踐 第十章 V/F轉(zhuǎn)換器接口技術(shù) 第十一章 串行通訊按日技術(shù)第十二章應(yīng)用系統(tǒng)設(shè)計(jì)
    發(fā)表于 12-23 14:30

    MCS-51系列和80C51系列單片機(jī)的區(qū)別

    推出有MCS-48、MCS-51、MCS-96系列單片機(jī)。MCS-51
    發(fā)表于 08-12 00:32

    MCS96系列單片機(jī)

    MCS96系列單片機(jī)  優(yōu)先級(jí)結(jié)構(gòu)的特點(diǎn)  MCS96
    發(fā)表于 03-16 17:36

    MCS96系列單片機(jī)

    MCS96系列單片機(jī)  優(yōu)先級(jí)結(jié)構(gòu)的特點(diǎn)  MCS96
    發(fā)表于 03-16 17:58

    MCS-51系列單片機(jī)型號(hào)

    0·本文引自《嵌入式和單片機(jī)系統(tǒng)》MCS是Intel公司單片機(jī)系列符號(hào)。Intel推出有MCS-48、
    發(fā)表于 12-01 07:28

    MCS-51系列單片機(jī)的結(jié)構(gòu)和原理

    2.1  MCS-51系列單片機(jī)概述 2.1.1  MCS - 51系列單片機(jī)
    發(fā)表于 12-20 02:16 ?31次下載
    <b class='flag-5'>MCS</b>-51<b class='flag-5'>系列</b><b class='flag-5'>單片機(jī)</b>的結(jié)構(gòu)和原理

    采用段式管理的大容量外部RAM擴(kuò)展技術(shù)

    MCS96系列單片機(jī)的應(yīng)用開發(fā),經(jīng)常會(huì)遇到需要大容量的數(shù)據(jù)存儲(chǔ)器的情況。本文針對(duì)MCS96
    發(fā)表于 04-13 10:11 ?15次下載

    串行EEPROMMCS 51單片機(jī)系統(tǒng)的應(yīng)用

    通過介紹串行EEPR0M芯片在MCS.51單片機(jī)系統(tǒng)的應(yīng)用,為單片機(jī)應(yīng)用數(shù)據(jù)存儲(chǔ)器的擴(kuò)展,提供一個(gè)新的理念,從而有效地提高了
    發(fā)表于 12-01 11:39 ?49次下載

    MCS—51系列單片機(jī)結(jié)構(gòu)及原理

    MCS—51系列單片機(jī)組成及工作原理 基本內(nèi)容2.1 MCS-51單片機(jī)基本組成2.2 MCS
    發(fā)表于 04-14 14:50 ?44次下載

    Neuron芯片與MCS-251系列單片機(jī)串行通信的實(shí)現(xiàn)

    摘要: 介紹一種基于MCS 251系列單片機(jī)的LON節(jié)點(diǎn) ,它利用MCS 251 系列單片機(jī)
    發(fā)表于 07-26 12:31 ?19次下載

    CRC差錯(cuò)檢驗(yàn)法PC機(jī)與8031單片機(jī)串行通訊的應(yīng)用

    CRC差錯(cuò)檢驗(yàn)法PC機(jī)與8031單片機(jī)串行通訊的應(yīng)用摘  要  通過對(duì)不
    發(fā)表于 03-14 16:44 ?757次閱讀
    CRC差錯(cuò)檢驗(yàn)法<b class='flag-5'>在</b>PC<b class='flag-5'>機(jī)</b>與8031<b class='flag-5'>單片機(jī)</b><b class='flag-5'>串行</b><b class='flag-5'>通訊</b><b class='flag-5'>中</b>的應(yīng)用

    MCS-96單片機(jī)的應(yīng)用系統(tǒng)設(shè)計(jì)基礎(chǔ)

    內(nèi)容提要: MCS-96單片機(jī)的應(yīng)用系統(tǒng)設(shè)計(jì)基礎(chǔ) 硬件電路設(shè)計(jì),語言的設(shè)計(jì)基礎(chǔ),程序分析 PL/M-96可執(zhí)行語句和程序等等.... 第一章 概述 1.1 單片機(jī)應(yīng)用系統(tǒng)的結(jié)構(gòu) 1.2
    發(fā)表于 10-29 08:58 ?78次下載
    <b class='flag-5'>MCS-96</b><b class='flag-5'>單片機(jī)</b>的應(yīng)用系統(tǒng)設(shè)計(jì)基礎(chǔ)

    SPI總線的組成及其51單片機(jī)系統(tǒng)的實(shí)例分析

    MCS51系列、MCS96系列單片機(jī)由于都不帶SPI串行總線接口而限制了其
    發(fā)表于 11-16 13:31 ?3次下載
    SPI總線的組成及其<b class='flag-5'>在</b>51<b class='flag-5'>單片機(jī)</b>系統(tǒng)<b class='flag-5'>中</b>的實(shí)例分析

    MCS51單片機(jī)的型號(hào)與組成

    MCS - 5 1 系列單片機(jī)簡(jiǎn)介MCS - 5 1 單片機(jī)型號(hào)命名規(guī)則MCS - 5 1
    發(fā)表于 11-12 14:51 ?8次下載
    <b class='flag-5'>MCS</b>51<b class='flag-5'>單片機(jī)</b>的型號(hào)與組成