




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、CAN總線理論與實踐總線理論與實踐 閆邦交閆邦交2014-08-08CAN總線培訓(xùn)教程總線培訓(xùn)教程第一節(jié):第一節(jié):SJ1000CANCAN控制器的作用控制器的作用SJA1000SJA1000介紹介紹 SJA1000SJA1000內(nèi)部結(jié)構(gòu)框圖內(nèi)部結(jié)構(gòu)框圖基本模式基本模式(Basic CAN)(Basic CAN)控制段寄存器控制段寄存器數(shù)據(jù)段寄存器數(shù)據(jù)段寄存器擴展模式(擴展模式(PeliCANPeliCAN) 第一節(jié):第一節(jié):SJA1000vCANCAN控制器的作用控制器的作用CANCAN控制器扮演網(wǎng)絡(luò)協(xié)議的角色控制器扮演網(wǎng)絡(luò)協(xié)議的角色 它提供了微處理器的物理線路的接口它提供了微處理器的物理線路
2、的接口 進行數(shù)據(jù)的發(fā)送和接受進行數(shù)據(jù)的發(fā)送和接受 第一節(jié):第一節(jié):SJA1000CAN控制器的作用第一節(jié):第一節(jié):SJA1000v SJA1000簡介:簡介:v 管腳與獨立管腳與獨立CANCAN控制器控制器PCA82C200PCA82C200兼容兼容 v 電氣特性與獨立電氣特性與獨立CANCAN控制器控制器PCA82C200PCA82C200兼容兼容 v 具有具有PCA82C200PCA82C200模式(即默認的模式(即默認的BasicCANBasicCAN模式)模式) v 擴展的接收緩存器(擴展的接收緩存器(6464字節(jié)的字節(jié)的FIFOFIFO隊列)隊列) v 支持支持CAN2.0ACAN2
3、.0A和和CAN2.0BCAN2.0B協(xié)議協(xié)議 v 支持支持1111位和位和2929位標識碼位標識碼 v 位速率最高可達位速率最高可達1Mbps 1Mbps v 可與不同的微處理器接口可與不同的微處理器接口 v 可編程的可編程的CANCAN輸出驅(qū)動器配置輸出驅(qū)動器配置 v 溫度適應(yīng)范圍大(溫度適應(yīng)范圍大(-40 -40 +125 +125) 第一節(jié):第一節(jié):SJA1000SJA1000介紹第一節(jié):第一節(jié):SJA1000SJA1000的內(nèi)部結(jié)構(gòu)圖第一節(jié):第一節(jié):SJ1000vSJA1000有兩種工作模式:分別為有兩種工作模式:分別為Basic模式模式和和PeliCAN模式,對應(yīng)與模式,對應(yīng)與CA
4、N2.0A和和CAN2.0B。 每種模式又分兩種狀態(tài)模式,分別為復(fù)位模式,每種模式又分兩種狀態(tài)模式,分別為復(fù)位模式,操作模式。操作模式。 復(fù)位模式下完成控制寄存器的設(shè)置,在初始化時復(fù)位模式下完成控制寄存器的設(shè)置,在初始化時寫入驗收代碼,驗收屏蔽,總線時序?qū)懭腧炇沾a,驗收屏蔽,總線時序0與與1以及輸以及輸出控制等寄存器就不能再改變。只有將寄存器的出控制等寄存器就不能再改變。只有將寄存器的復(fù)位請求會置高時,才能進入復(fù)位模式。復(fù)位請求會置高時,才能進入復(fù)位模式。第一節(jié):第一節(jié):SJA1000SJA1000SJA1000的寄存器可分為:的寄存器可分為:l控制段控制段1.1.系統(tǒng)初始化時對控制段進行編
5、程,以配置通訊參系統(tǒng)初始化時對控制段進行編程,以配置通訊參數(shù)數(shù)2.2.微處理器也可通過控制段來控制總線通訊微處理器也可通過控制段來控制總線通訊l數(shù)據(jù)段數(shù)據(jù)段 1.1.報文被發(fā)送前,微處理器將報文寫入發(fā)送緩沖區(qū)報文被發(fā)送前,微處理器將報文寫入發(fā)送緩沖區(qū) 2.2.成功接收一個報文后成功接收一個報文后 ,寫入接收緩沖區(qū),寫入接收緩沖區(qū)3.3.微處理器讀接收緩沖區(qū)并釋放緩沖區(qū)微處理器讀接收緩沖區(qū)并釋放緩沖區(qū) 第一節(jié):第一節(jié):SJA1000兩種狀態(tài):兩種狀態(tài):復(fù)位狀態(tài)和運行狀態(tài)復(fù)位狀態(tài)和運行狀態(tài)l 1. 1. 復(fù)位狀態(tài)復(fù)位狀態(tài)三種情況下,三種情況下,SJA1000SJA1000進入復(fù)位狀態(tài)進入復(fù)位狀態(tài)
6、(1 1)軟件復(fù)位:通過設(shè)置控制寄存器)軟件復(fù)位:通過設(shè)置控制寄存器CRCR的的RRRR位為位為1 1 (2 2)硬件復(fù)位:在復(fù)位引腳上出現(xiàn)一個低電平脈沖)硬件復(fù)位:在復(fù)位引腳上出現(xiàn)一個低電平脈沖 (3 3)BUS_OFFBUS_OFF狀態(tài)(總線脫離狀態(tài))狀態(tài)(總線脫離狀態(tài)) l 2. 2. 運行狀態(tài)運行狀態(tài) 在在CRCR的的RRRR位上出現(xiàn)位上出現(xiàn)“1-0”“1-0”的下跳沿時,的下跳沿時,SJA1000SJA1000返回返回運行狀態(tài)運行狀態(tài) ,可通過檢測,可通過檢測RRRR來判斷來判斷SJA1000SJA1000的工作狀態(tài)的工作狀態(tài) 第一節(jié):第一節(jié):SJA1000擴展模式下的模式寄存器擴展
7、模式下的模式寄存器第一節(jié):第一節(jié):SJA1000在程序的初始化時,要在復(fù)位模式下操作各寄存器在程序的初始化時,要在復(fù)位模式下操作各寄存器操作完寄存器后退出復(fù)位模式操作完寄存器后退出復(fù)位模式 uint8 bdata Status; / .0=1-reset MODRe,進入復(fù)位模式進入復(fù)位模式,以便設(shè)置相應(yīng)的寄存器,以便設(shè)置相應(yīng)的寄存器 /防止未進入復(fù)位模式,重復(fù)寫入防止未進入復(fù)位模式,重復(fù)寫入 SJA_MOD = RM_BIT |AFM_BIT;Status = SJA_MOD ; while(Status & RM_BIT)!=RM_BIT);第一節(jié):第一節(jié):SJA1000v dov
8、 vSJA_MOD = AFM_BIT;vStatus = SJA_MOD;v v while( Status & RM_BIT );v 退出復(fù)位模式,退出復(fù)位模式,AFM_BIT:表設(shè)單濾波器校驗?zāi)J?。:表設(shè)單濾波器校驗?zāi)J健 #define RM_BIT 0 x01 /復(fù)位模式請求位復(fù)位模式請求位v #define LOM_BIT 0 x02 /只聽模式位只聽模式位v #define STM_BIT 0 x04 /自檢模式位自檢模式位v #define AFM_BIT 0 x08 /驗收濾波器模式位驗收濾波器模式位v #define SM_BIT 0 x10 /睡眠模式位睡眠模式
9、位第一節(jié):第一節(jié):SJA1000v 擴展模式下的模式寄存器復(fù)位值擴展模式下的模式寄存器復(fù)位值第一節(jié):第一節(jié):SJA1000v 時鐘分頻寄存器各位的功能說明時鐘分頻寄存器各位的功能說明BIT7:CAN模式 0:Basic模式 1:PeliCAN模式。BIT3:CLOCK OUT引腳設(shè)置,置1,引腳失效 SJA_CDR = CANMode_BIT|CLKOff_BIT;/ CDR.3=1-時鐘關(guān)閉, .7=0-basic CAN, .7=1-Peli CAN#define CLKOff_BIT 0 x08 /時鐘關(guān)閉位,時鐘輸出管腳控制位#define CANMode_BIT 0 x80 /CAN
10、 模式控制位第一節(jié):第一節(jié):SJA1000第一節(jié):第一節(jié):SJA1000總線時序寄存器總線時序寄存器0 0:BTR0BTR0總線時序寄存器總線時序寄存器1 1:BTR1BTR1第一節(jié):第一節(jié):SJA1000vSJA_BTR0 = 0 x03;v SJA_BTR1 = 0 x1c;v/16M晶振,波特率125Kbps第一節(jié):第一節(jié):SJA1000v 中斷使能寄存器中斷使能寄存器第一節(jié):第一節(jié):SJA1000 SJA_IER = RIE_BIT;/ .0=1-接收中斷使能; .1=0-關(guān)閉發(fā)送中斷使能#define RIE_BIT 0 x01 /接收中斷使能位#define TIE_BIT 0 x
11、02 /發(fā)送中斷使能位#define EIE_BIT 0 x04 /錯誤警告中斷使能位#define DOIE_BIT 0 x08 /數(shù)據(jù)溢出中斷使能位#define WUIE_BIT 0 x10 /喚醒中斷使能位#define EPIE_BIT 0 x20 /錯誤消極中斷使能位#define ALIE_BIT 0 x40 /仲裁丟失中斷使能位#define BEIE_BIT 0 x80 /總線錯誤中斷使能位第一節(jié):第一節(jié):SJA1000v 輸出控制寄存器輸出控制寄存器第一節(jié):第一節(jié):SJA1000第一節(jié):第一節(jié):SJA1000模式說明:模式說明: 正常輸出模式:位序列在正常輸出模式:位序列在
12、TX0和和TX1輸出輸出 v 時鐘輸出模式:時鐘輸出模式:TX0輸出位序列,輸出位序列,TX1輸出的位流為發(fā)送時鐘脈沖(輸出的位流為發(fā)送時鐘脈沖(TXCLK),其上升沿標志著位周期的開始,脈沖寬度為),其上升沿標志著位周期的開始,脈沖寬度為T_scl v 雙相輸出模式:它與正常輸出方式恰好相反,位出現(xiàn)的時間是可變的,并且雙相輸出模式:它與正常輸出方式恰好相反,位出現(xiàn)的時間是可變的,并且是可觸發(fā)的。在隱性位期間,所有輸出被禁止(懸空),顯性位被交替送至是可觸發(fā)的。在隱性位期間,所有輸出被禁止(懸空),顯性位被交替送至TX0和和TX1 v 測試輸出模式:測試輸出模式: RX腳上的電平反映了腳上的電
13、平反映了TXn的電平,但時間上落后于的電平,但時間上落后于TXn的的上升沿上升沿f_osc/2v OCR的前六位的前六位用于配置輸出驅(qū)動器特性(用于配置輸出驅(qū)動器特性(OCTP和和OCTN)和極性()和極性(OCPOL),驅(qū)動器可編程為懸空、上拉、下拉和推挽四種方式),驅(qū)動器可編程為懸空、上拉、下拉和推挽四種方式第一節(jié):第一節(jié):SJA1000vSJA_OCR = NormalMode|Tx0PullDn|OCPOL1_BIT|Tx1PullUp;/ 配置輸出控制寄存器配置輸出控制寄存器v#define Tx1PullUp 0 x80 /配置為上拉配置為上拉v#define NormalMode
14、 0 x02 /正常輸出模式正常輸出模式v#define Tx0PullDn 0 x08 /配置為下拉配置為下拉v#define OCPOL1_BIT 0 x20 /輸出極性控制位輸出極性控制位第一節(jié):第一節(jié):SJA1000v 命令寄存器命令寄存器第一節(jié):第一節(jié):SJA1000v當在初始化和接收完數(shù)據(jù)時一定要清接收緩沖區(qū)當在初始化和接收完數(shù)據(jù)時一定要清接收緩沖區(qū)v SJA_CMR = RRB_BIT;/釋放接收緩沖釋放接收緩沖器器v#define TR_BIT 0 x01 /發(fā)送請發(fā)送請求位求位v#define AT_BIT 0 x02 /中止中止發(fā)送位發(fā)送位v#define RRB_BIT
15、0 x04 /釋放釋放接收緩沖器位接收緩沖器位v#define CDO_BIT 0 x08 /清除清除數(shù)據(jù)溢出位數(shù)據(jù)溢出位v#define SRR_BIT 0 x10 /自身自身接收請求位接收請求位第一節(jié):第一節(jié):SJA1000 驗收代碼寄存器、驗收屏驗收代碼寄存器、驗收屏 蔽寄存器蔽寄存器 第一節(jié):第一節(jié):SJA1000 不管驗收碼與否的: SJA_ACR0 = 0 x11; SJA_ACR1 = 0 x22; SJA_ACR2 = 0 x33; SJA_ACR3 = 0 x43;/初始化標示碼 SJA_AMR0 = 0 xff; SJA_AMR1 = 0 xff; SJA_AMR2 = 0
16、 xff; SJA_AMR3 = 0 xff;/初始化掩碼驗收碼必須正確 SJA_ACR0 = 0 x11; SJA_ACR1 = 0 x22; SJA_ACR2 = 0 x33; SJA_ACR3 = 0 x43;/初始化標示碼 SJA_AMR0 = 0 x00; SJA_AMR1 = 0 x00; SJA_AMR2 = 0 x00; SJA_AMR3 = 0 x03;/初始化掩碼第一節(jié):第一節(jié):SJA1000將以上寄存器初始化完畢后,退出復(fù)位模式。將以上寄存器初始化完畢后,退出復(fù)位模式。SJA1000將進出操作模式將進出操作模式 do SJA_MOD = AFM_BIT;Status =
17、SJA_MOD; while( Status & RM_BIT );進入操作模式,單濾波器方式。進入操作模式,單濾波器方式。第一節(jié):第一節(jié):SJA1000v 發(fā)送緩沖區(qū)寄存器發(fā)送緩沖區(qū)寄存器v 幀信息(幀信息(EFF)()(CAN地址地址16) TX_buffer0 = 0 x88;/.7=0擴展幀;.6=0數(shù)據(jù)幀; .3=1數(shù)據(jù)長度第一節(jié):第一節(jié):SJA1000v TX識別碼識別碼1(EFF)()(CAD地址地址17)v TX識別碼識別碼1(EFF)()(CAD地址地址17)第一節(jié):第一節(jié):SJA1000v TX識別碼識別碼2(EFF)()(CAD地址地址18)第一節(jié):第一節(jié):SJA
18、1000v TX識別碼識別碼3(EFF)()(CAD地址地址19)第一節(jié):第一節(jié):SJA1000第一節(jié):第一節(jié):SJA100021-28地址為發(fā)送的8個數(shù)據(jù)第一節(jié):第一節(jié):SJA1000uint8 data Status;/初始化標示碼頭信息初始化標示碼頭信息 TX_buffer0 = 0 x88;/.7=0擴展幀;擴展幀;.6=0數(shù)據(jù)幀數(shù)據(jù)幀; .3=1數(shù)據(jù)長度數(shù)據(jù)長度 TX_buffer1 = 0 x89;/本節(jié)點地址本節(jié)點地址 TX_buffer2 = 0 x11;/ TX_buffer3 = 0 x9A;/ TX_buffer4 = 0 x20;/初始化發(fā)送數(shù)據(jù)單元初始化發(fā)送數(shù)據(jù)單元
19、TX_buffer5 = Txd_data; TX_buffer6 = 0 x22; TX_buffer7 = 0 x33; TX_buffer8 = 0 x44;/ TX_buffer9 = 0 x55;/ TX_buffer10 = 0 x66;/ TX_buffer11 = 0 x77;/ TX_buffer12 = 0 x88;/第一節(jié):第一節(jié):SJA1000v 發(fā)送數(shù)據(jù)時,要判斷狀態(tài)寄存器,以確定數(shù)據(jù)可否發(fā)送發(fā)送數(shù)據(jù)時,要判斷狀態(tài)寄存器,以確定數(shù)據(jù)可否發(fā)送第一節(jié):第一節(jié):SJA1000第一節(jié):第一節(jié):SJA1000v dov v Status = SJA_SR;v v while(
20、Status & RS_BIT); /SR.4=1 正在接收,等待正在接收,等待v v dov v Status = SJA_SR;v v while(!(Status & TCS_BIT); /SR.3=0,發(fā)送請求未處理完,等待發(fā)送請求未處理完,等待v dov v Status = SJA_SR;v v while(!(Status & TBS_BIT); /SR.2=0,發(fā)送緩沖器被鎖。等待發(fā)送緩沖器被鎖。等待第一節(jié):第一節(jié):SJA1000v SJA_TBSR0 = TX_buffer0;v SJA_TBSR1 = TX_buffer1;v SJA_TBSR2 =
21、 TX_buffer2;v SJA_TBSR3 = TX_buffer3;v SJA_TBSR4 = TX_buffer4;v SJA_TBSR5 = TX_buffer5;v SJA_TBSR6 = TX_buffer6;v SJA_TBSR7 = TX_buffer7;v SJA_TBSR8 = TX_buffer8;v SJA_TBSR9 = TX_buffer9;v SJA_TBSR10 = TX_buffer10;v SJA_TBSR11 = TX_buffer11;v SJA_TBSR12 = TX_buffer12;v SJA_CMR = TR_BIT;/置位發(fā)送接收請求置位發(fā)送
22、接收請求第一節(jié):第一節(jié):SJA1000v 接收的緩沖區(qū)與發(fā)送相同,只是在接收時要判斷接收中斷位為接收的緩沖區(qū)與發(fā)送相同,只是在接收時要判斷接收中斷位為1,才可讀數(shù),才可讀數(shù)據(jù)。據(jù)。v if(Status & RI_BIT)v /IR.0 = 1 接收中斷接收中斷v RX_buffer0 = SJA_RBSR0;v RX_buffer1 = SJA_RBSR1;v RX_buffer2 = SJA_RBSR2;v RX_buffer3 = SJA_RBSR3;v RX_buffer4 = SJA_RBSR4;v RX_buffer5 = SJA_RBSR5;v 第一節(jié):第一節(jié):SJA10
23、00vRX_buffer6 = SJA_RBSR6;v RX_buffer7 = SJA_RBSR7;v RX_buffer8 = SJA_RBSR8;v RX_buffer9 = SJA_RBSR9;v RX_buffer10 = SJA_RBSR10;v RX_buffer11 = SJA_RBSR11;v RX_buffer12 = SJA_RBSR12;v 第一節(jié):第一節(jié):SJA1000v SJA_CMR = RRB_BIT;v Status = SJA_ALC;/釋放仲裁隨時捕釋放仲裁隨時捕捉寄存器捉寄存器v Status = SJA_ECC;/釋放錯誤代碼捕釋放錯誤代碼捕捉寄存器捉
24、寄存器v v SJA_IER = RIE_BIT;/ .0=1-接收中接收中v 斷使能;斷使能;第二節(jié):常用的第二節(jié):常用的CAN總線收發(fā)器總線收發(fā)器CAN總線驅(qū)動器的作用及分類總線驅(qū)動器的作用及分類CAN總線收發(fā)器總線收發(fā)器PCA820C250CAN總線收發(fā)器總線收發(fā)器CTM1050第二節(jié):常用的第二節(jié):常用的CAN總線收發(fā)器總線收發(fā)器CAN總線收發(fā)器的作用:總線收發(fā)器的作用: CAN總線驅(qū)動器提供了總線驅(qū)動器提供了CAN控制器與物理總線之控制器與物理總線之間的接口,對總線提供差動的發(fā)送能力,并對間的接口,對總線提供差動的發(fā)送能力,并對CAN控制器提供差動的接收能力。也可以理解為控制器提供差
25、動的接收能力。也可以理解為CAN收發(fā)器是一個電平轉(zhuǎn)換芯片,功能形如收發(fā)器是一個電平轉(zhuǎn)換芯片,功能形如MAX232,MAX485。第二節(jié):常用的第二節(jié):常用的CAN總線收發(fā)器總線收發(fā)器vCAN總線收發(fā)器的分類:總線收發(fā)器的分類: 隔離型隔離型CAN總線收發(fā)器(總線收發(fā)器(CTM1050) 非隔離型非隔離型CAN總線收發(fā)器(總線收發(fā)器(PCA82C250) 隔離型總線收器是在非隔離型隔離型總線收器是在非隔離型CAN總線收器的總線收器的基礎(chǔ)上增加了信號隔離與電源隔離?;A(chǔ)上增加了信號隔離與電源隔離。第二節(jié):常用的第二節(jié):常用的CAN總線收發(fā)器總線收發(fā)器PCA82C250特點:最高速率特點:最高速率1
26、Mbps 驅(qū)動能力達驅(qū)動能力達110個節(jié)點個節(jié)點1 TXD:發(fā)送數(shù)據(jù)輸入 5 Vref:參考電壓輸出2 GND: 地 6 CANL:差動輸入輸出3 VCC: 電源 7 CANH:差動輸入輸出4 RXD:接收數(shù)據(jù)輸出 8 RS : 斜率電阻輸入第二節(jié):常用第二節(jié):常用CAN總線收發(fā)器總線收發(fā)器RS=5V:低電流待機模式:低電流待機模式 關(guān)閉發(fā)送器,接收器工關(guān)閉發(fā)送器,接收器工 作。作。RS與地之間串一個電阻,斜率模式,應(yīng)用于較低速與地之間串一個電阻,斜率模式,應(yīng)用于較低速或較短總線長度。使用非屏蔽雙絞線或平行線作或較短總線長度。使用非屏蔽雙絞線或平行線作為總線。為總線。RS=0V:高速模式,用屏
27、蔽雙絞線,以避免射頻:高速模式,用屏蔽雙絞線,以避免射頻干擾干擾RFI。第二節(jié):常用的第二節(jié):常用的CAN總線收器總線收器PCA82C250的應(yīng)用電路:的應(yīng)用電路:v PCA82C250應(yīng)用電路應(yīng)用電路第二節(jié):常用的第二節(jié):常用的CAN總線驅(qū)動器總線驅(qū)動器v CTM1050 第第三三節(jié):節(jié):CAN最小系統(tǒng)設(shè)計最小系統(tǒng)設(shè)計 最小最小CAN系統(tǒng)的組成系統(tǒng)的組成 單片機系統(tǒng)單片機系統(tǒng) CAN控制器控制器 CAN驅(qū)動器驅(qū)動器 第第三三節(jié):最小的節(jié):最小的CAN系統(tǒng)系統(tǒng)v 單片機系統(tǒng)單片機系統(tǒng)第第三三節(jié)最小的節(jié)最小的CAN系統(tǒng)系統(tǒng)CAN控制芯片控制芯片第第三三節(jié):節(jié):CAN最小系統(tǒng)最小系統(tǒng)v CAN驅(qū)動
28、器驅(qū)動器第第四四節(jié):節(jié):SJA1000相關(guān)編程相關(guān)編程SJ1000初始化初始化void Peli_Init(void) uint8 bdata Status; /do / .0=1-reset MODRe,進入復(fù)位模式,以便設(shè)置相應(yīng)的寄存器進入復(fù)位模式,以便設(shè)置相應(yīng)的寄存器 /防止未進入復(fù)位模式,重復(fù)寫入防止未進入復(fù)位模式,重復(fù)寫入 SJA_MOD = RM_BIT |AFM_BIT;Status = SJA_MOD ; while(Status & RM_BIT)!=RM_BIT); SJA_CDR = CANMode_BIT|CLKOff_BIT;/ CDR.3=1-時鐘關(guān)閉時鐘關(guān)
29、閉, .7=0-basic CAN, .7=1-Peli CAN SJA_BTR0 = 0 x03; SJA_BTR1 = 0 x1c;/16M晶振,波特率晶振,波特率125Kbps SJA_IER = RIE_BIT;/ .0=1-接收中斷使能;接收中斷使能; .1=0-關(guān)閉發(fā)送中斷使能關(guān)閉發(fā)送中斷使能 SJA_OCR = NormalMode|Tx0PullDn|OCPOL1_BIT|Tx1PullUp;/ 配置輸出控制寄配置輸出控制寄存器存器 SJA_CMR = RRB_BIT;/釋放接收緩沖器釋放接收緩沖器 第四節(jié):第四節(jié):SJA1000相關(guān)編程相關(guān)編程 SJA_ACR0 = 0 x1
30、1; SJA_ACR1 = 0 x22; SJA_ACR2 = 0 x33; SJA_ACR3 = 0 x44;/初始化標示碼初始化標示碼 SJA_AMR0 = 0 xff; SJA_AMR1 = 0 xff; SJA_AMR2 = 0 xff; SJA_AMR3 = 0 xff;/初始化掩碼初始化掩碼 do SJA_MOD = AFM_BIT;Status = SJA_MOD; while( Status & RM_BIT );/SJA1000 的初始化的初始化第四節(jié):第四節(jié):SJA1000相關(guān)編程相關(guān)編程v發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)v uint8 data Status;v/初始化標示碼頭信
31、息初始化標示碼頭信息v TX_buffer0 = 0 x88;/.7=0擴展幀;擴展幀;.6=0數(shù)據(jù)幀數(shù)據(jù)幀; .3=1數(shù)據(jù)長度數(shù)據(jù)長度v TX_buffer1 = 0 x89;/本節(jié)點地址本節(jié)點地址v TX_buffer2 = 0 x11;/v TX_buffer3 = 0 x9A;/v TX_buffer4 = 0 x20;/v/初始化發(fā)送數(shù)據(jù)單元初始化發(fā)送數(shù)據(jù)單元v TX_buffer5 = Txd_data;v TX_buffer6 = 0 x22;v TX_buffer7 = 0 x33;v TX_buffer8 = 0 x44;/v TX_buffer9 = 0 x55;/v TX
32、_buffer10 = 0 x66;/v TX_buffer11 = 0 x77;/v TX_buffer12 = 0 x88;/第四節(jié):第四節(jié):SJA1000相關(guān)編程相關(guān)編程v dov v Status = SJA_SR;v v while( Status & RS_BIT); /SR.4=1 正在接收,等待正在接收,等待v v dov v Status = SJA_SR;v v while(!(Status & TCS_BIT); /SR.3=0,發(fā)送請求未處理完,等待發(fā)送請求未處理完,等待v dov v Status = SJA_SR;v v while(!(Status & TBS_BIT); /SR.2=0,發(fā)送緩沖器被鎖。等待發(fā)送緩沖器被鎖。等待第四節(jié):第四節(jié):SJA1000相關(guān)編程相關(guān)編程v SJA_TB
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 福州英華職業(yè)學(xué)院《專項理論與實踐II》2023-2024學(xué)年第二學(xué)期期末試卷
- 2025河北省建筑安全員C證考試(專職安全員)題庫附答案
- 蘇州市職業(yè)大學(xué)《渦輪發(fā)動機飛機結(jié)構(gòu)與系統(tǒng)》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧科技學(xué)院《起重機械結(jié)構(gòu)力學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南陽師范學(xué)院《網(wǎng)絡(luò)經(jīng)濟》2023-2024學(xué)年第二學(xué)期期末試卷
- 浙江科技學(xué)院《環(huán)境數(shù)據(jù)處理》2023-2024學(xué)年第二學(xué)期期末試卷
- 滄州幼兒師范高等??茖W(xué)校《診斷學(xué)基礎(chǔ)A》2023-2024學(xué)年第二學(xué)期期末試卷
- 宿州航空職業(yè)學(xué)院《基地社工服務(wù)與田野基地建設(shè)》2023-2024學(xué)年第二學(xué)期期末試卷
- 重慶城市管理職業(yè)學(xué)院《口腔固定修復(fù)學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 江西冶金職業(yè)技術(shù)學(xué)院《內(nèi)燃機學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 學(xué)校2025年春季學(xué)期學(xué)校安全工作計劃+行事歷
- 廣西壯族自治區(qū)柳州市2025年中考物理模擬考試卷三套附答案
- 2024中國糖果、巧克力制造市場前景及投資研究報告
- 第11課《山地回憶》說課稿 2024-2025學(xué)年統(tǒng)編版語文七年級下冊
- 2023年H3CNE題庫附答案
- 2024年首都醫(yī)科大學(xué)附屬北京安定醫(yī)院招聘筆試真題
- 老舊小區(qū)改造項目施工組織設(shè)計方案
- 【招商手冊】杭州ICON CENTER 社交娛樂中心年輕人潮流消費創(chuàng)新實驗
- AI一體化智慧校園建設(shè)方案中學(xué)版
- 2025年國家稅務(wù)總局遼寧省稅務(wù)局系統(tǒng)招聘事業(yè)單位工作人員管理單位筆試遴選500模擬題附帶答案詳解
- 2024年思想道德與政治考試題庫 (單選、多選)
評論
0/150
提交評論