日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

sja1000编程c语言,CAN总线控制器-SJA1000源程序(c语言)资料.doc

發布時間:2024/3/12 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 sja1000编程c语言,CAN总线控制器-SJA1000源程序(c语言)资料.doc 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

CAN總線控制器sja1000源程序

SJA1000 是一種獨立控制器用于移動目標和一般工業環境中的區域網絡控制CAN 它是PHILIPS

半導體PCA82C200 CAN 控制器BasicCAN 的替代產品而且它增加了一種新的工作模式PeliCAN ,

這種模式支持具有很多新特性的CAN 2.0B 協議。

1 特性

???? 和PCA82C200 獨立CAN 控制器引腳兼容

???? 和PCA82C200 獨立CAN 控制器電氣兼容

???? PCA82C200 模式即默認的BasicCAN 模式

???? 擴展的接收緩沖器64 字節先進先出FIFO

???? 和CAN2.0B 協議兼容PCA82C200 兼容模式中的無源擴展幀

???? 同時支持11 位和29 位識別碼

???? 位速率可達1Mbits/s

???? PeliCAN 模式擴展功能

--可讀/寫訪問的錯誤計數器

--可編程的錯誤報警限制

--最近一次錯誤代碼寄存器

--對每一個CAN 總線錯誤的中斷

--具體控制位控制的仲裁丟失中斷

--單次發送無重發

--只聽模式無確認無活動的出錯標

--支持熱插拔軟件位速率檢測

--驗收濾波器擴展4 字節代碼4 字節屏蔽

--自身信息接收自接收請求

???? 24MHz 時鐘頻率

???? 對不同微處理器的接口

???? 可編程的CAN 輸出驅動器配置

???? 增強的溫度適應-40-+125

#include

#include

#include

//-----------------------沿襲引腳和變量----------------------------------------------

#define uchar unsigned char //宏定義

#define uint unsigned int //宏定義

void MCU_init(void);

/*P2口的管腳定義*/

sbit LED1 = P2^6;

sbit LED2 = P2^5;

sbit SJA_CS = P2^7; //SJA1000片選管腳,低電平有效

//sbit SJA_RST = P1^2;

/*P3口的管腳定義*/

sbit SJA_RD = P3^7;

sbit SJA_WR = P3^6;

//-----------------------定義尋址的基址--------------------------------------------------------

#define base_Adr 0x7F00

//-----------------------定義總線定時寄存器的值--------------------------------------------------------

#define SJA_BTR0 0x07 //該值需要用戶根據需要的波特率進行計算,推薦使用周立功發布的波特率計算器

#define SJA_BTR1 0x2F

//-----------------------設置接收報文類型(標示符)--------------------------------------------------------

//該值需要用戶根據實際需要重新配置

#define SJA_ACR 0x11 //驗收代碼寄存器的值

#define SJA_AMR 0xFF //驗收屏蔽寄存器的值

//-----------------------設置輸出時鐘類型--------------------------------------------------------

//該值需要用戶根據實際需要重新配置

#define SJA_OCR 0xaa //輸出控制寄存器的值

#define SJA_CDR 0x40 //時鐘分頻寄存器的值

//-----------------------設置SJA中斷,1為開中斷---------------------------

總結

以上是生活随笔為你收集整理的sja1000编程c语言,CAN总线控制器-SJA1000源程序(c语言)资料.doc的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。