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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

CANOpen报文类型

發(fā)布時(shí)間:2025/3/15 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CANOpen报文类型 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
CANOpen應(yīng)用層協(xié)議細(xì)化了CAN總線協(xié)議中關(guān)于標(biāo)識(shí)符的定義。定義標(biāo)準(zhǔn)報(bào)文的11比特標(biāo)識(shí)符中高4比特為功能碼,后7比特為節(jié)點(diǎn)號(hào),重命名為通訊對(duì)象標(biāo)識(shí)符(COB-ID)。 功能碼將所有的報(bào)文分為7個(gè)優(yōu)先級(jí),按照優(yōu)先級(jí)從高至低依次為:網(wǎng)絡(luò)命令報(bào)文(NMT)、同步報(bào)文(SYNC)、緊急報(bào)文(EMERGENCY)、時(shí)間戳(TIME)、過(guò)程數(shù)據(jù)對(duì)象(PDO)、服務(wù)數(shù)據(jù)對(duì)象(SDO)、節(jié)點(diǎn)狀態(tài)報(bào)文(NMT Err Control)

7位的節(jié)點(diǎn)號(hào)則表明CANOpen網(wǎng)絡(luò)最多可支持127個(gè)節(jié)點(diǎn)共存(0號(hào)節(jié)點(diǎn)為主站),下表給出了各報(bào)文的COB-ID范圍。

MNT命令為最高優(yōu)先級(jí)報(bào)文,由CANOpen主站發(fā)出,用以更改從節(jié)點(diǎn)的運(yùn)行狀態(tài)。

SYNC報(bào)文定期由CANOpen主站發(fā)出,所有的同步PDO根據(jù)SYNC報(bào)文發(fā)送。

EMERGENCY報(bào)文由出現(xiàn)緊急狀態(tài)的從節(jié)點(diǎn)發(fā)出,任何具備緊急事件監(jiān)控與處理能力的節(jié)點(diǎn)會(huì)接收并處理緊急報(bào)文。

TIME報(bào)文由CANOpen主站發(fā)出,用于同步所有從站的內(nèi)部時(shí)鐘。

PDO分為4對(duì)發(fā)送和接收PDO,每一個(gè)節(jié)點(diǎn)默認(rèn)擁有4對(duì)發(fā)送PDO和接收PDO,用于過(guò)程數(shù)據(jù)傳遞。

SDO分為發(fā)送SDO和接收SDO,用于讀寫(xiě)對(duì)象字典。

MT Error Control報(bào)文由從節(jié)點(diǎn)發(fā)出,用以監(jiān)視從節(jié)點(diǎn)的運(yùn)行狀態(tài)。


在def.h中用代碼表述了各種報(bào)文的功能碼

#define NMT 0x0 //網(wǎng)絡(luò)命令報(bào)文 #define SYNC 0x1 //同步報(bào)文 #define TIME_STAMP 0x2 //時(shí)間報(bào)文 #define PDO1tx 0x3 //過(guò)程數(shù)據(jù)對(duì)象1發(fā)送報(bào)文 #define PDO1rx 0x4 //過(guò)程數(shù)據(jù)對(duì)象1接收?qǐng)?bào)文 #define PDO2tx 0x5 //過(guò)程數(shù)據(jù)對(duì)象2發(fā)送報(bào)文 #define PDO2rx 0x6 //過(guò)程數(shù)據(jù)對(duì)象2接收?qǐng)?bào)文 #define PDO3tx 0x7 //過(guò)程數(shù)據(jù)對(duì)象3發(fā)送報(bào)文 #define PDO3rx 0x8 //過(guò)程數(shù)據(jù)對(duì)象3接收?qǐng)?bào)文 #define PDO4tx 0x9 //過(guò)程數(shù)據(jù)對(duì)象4發(fā)送報(bào)文 #define PDO4rx 0xA //過(guò)程數(shù)據(jù)對(duì)象4接收?qǐng)?bào)文 #define SDOtx 0xB //服務(wù)數(shù)據(jù)對(duì)象接收?qǐng)?bào)文 #define SDOrx 0xC //服務(wù)數(shù)據(jù)對(duì)象發(fā)送報(bào)文 #define NODE_GUARD 0xE //節(jié)點(diǎn)守護(hù)報(bào)文 #define LSS 0xF //層配置服務(wù)報(bào)文

在移植CANOpen時(shí),CAN總線接收到報(bào)文后要調(diào)用CANOpen提供的接口canDispatch根據(jù)功能碼進(jìn)行報(bào)文處理,在states.c中定義了canDispatch函數(shù)

/* 定時(shí)事件觸發(fā)處理函數(shù) */ void canDispatch(CO_Data *d, Message *m) {/* 取出cob_id */UNS16 cob_id = UNS16_LE(m->cob_id);/* 判斷報(bào)文類(lèi)型 */switch(cob_id >> 7){/* 同步/緊急報(bào)文 */case SYNC:/* 同步報(bào)文COB-ID為0x80 */if(cob_id == 0x080){/* 當(dāng)前狀態(tài)下允許同步報(bào)文,則進(jìn)行處理 */if(d->CurrentCommunicationState.csSYNC)proceedSYNC(d);} /* 緊急報(bào)文COB-ID為0x81-0xFF */else{/* 當(dāng)前狀態(tài)下允許緊急報(bào)文,則進(jìn)行處理 */if(d->CurrentCommunicationState.csEmergency)proceedEMCY(d,m);}break;/* 時(shí)間報(bào)文 *//* case TIME_STAMP: *//* PDO報(bào)文 */case PDO1tx:case PDO1rx:case PDO2tx:case PDO2rx:case PDO3tx:case PDO3rx:case PDO4tx:case PDO4rx:/* 當(dāng)前狀態(tài)下允許PDO報(bào)文,則進(jìn)行處理 */if(d->CurrentCommunicationState.csPDO)proceedPDO(d,m);break;/* SDO報(bào)文 */case SDOtx:case SDOrx:/* 當(dāng)前狀態(tài)下允許SDO報(bào)文,則進(jìn)行處理 */if(d->CurrentCommunicationState.csSDO)proceedSDO(d,m);break;/* 心跳/節(jié)點(diǎn)守護(hù)報(bào)文 */case NODE_GUARD:/* 當(dāng)前狀態(tài)下允許心跳/節(jié)點(diǎn)守護(hù)報(bào)文,則進(jìn)行處理 */if(d->CurrentCommunicationState.csLifeGuard)proceedNODE_GUARD(d,m);break;/* 改變節(jié)點(diǎn)狀態(tài)報(bào)文 */case NMT:/* 用于主站改變從站狀態(tài),所以從站才會(huì)收到 */if(*(d->iam_a_slave)){proceedNMTstateChange(d,m);}break;#ifdef CO_ENABLE_LSS/* 層設(shè)置服務(wù)報(bào)文 */case LSS:if(!d->CurrentCommunicationState.csLSS)break;if((*(d->iam_a_slave)) && cob_id==MLSS_ADRESS){proceedLSS_Slave(d,m);}else if(!(*(d->iam_a_slave)) && cob_id==SLSS_ADRESS){proceedLSS_Master(d,m);}break; #endif} }



新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎(jiǎng)!定制產(chǎn)品紅包拿不停!

總結(jié)

以上是生活随笔為你收集整理的CANOpen报文类型的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: av不卡高清| 亚洲三级小视频 | 久久爱资源网 | 欧美日韩一本 | 日韩午夜免费 | 天堂√8在线中文 | 亚洲视频五区 | 日本一区二区在线免费 | 精品人妻一区二区三区潮喷在线 | 国产成人在线电影 | 亚洲精品一 | 国产二区三区 | 亚洲福利网 | 国产原创在线观看 | 欧美一区二区在线免费观看 | 亚洲二区在线 | 一级大片黄色 | 一区二区三区爱爱 | 丁香花免费高清完整在线播放 | 2021av视频| 美女三级黄色 | 黑人干亚洲女 | 国产色图片 | 亚洲午夜精品久久久久久app | 亚洲精品tv | 天天色视频| 91在线免费视频 | 亚洲一区二区视频在线播放 | 国产麻豆电影在线观看 | 福利视频一区二区 | www.色在线观看| 一个色综合网站 | 天堂色网 | 国产麻豆一精品一男同 | 一级黄色性视频 | 美女啪啪一区二区 | 在线涩涩 | 91好色先生tv | 天天色综合1 | 小明成人免费视频 | 91 在线观看 | www日本www | 99视频在线精品免费观看2 | 国产videos | 草比视频在线观看 | 西西人体做爰大胆gogo直播 | 久久久久久影院 | 麻豆视频网站 | 911国产视频| 一久久 | 亚洲国产系列 | wwwxxx日本| 91成人精品国产刺激国语对白 | 欧美三级在线观看视频 | 国产91精品ai换脸 | 成人一二三区 | 91亚洲精品在线观看 | 99精品视频免费观看 | 九九九视频在线观看 | 丰满放荡岳乱妇91ww | 久草精品在线观看视频 | 91麻豆国产在线 | 成人福利午夜 | 日在线视频 | 椎名由奈av一区二区三区 | 天天夜夜人人 | 久久av一区 | 精品电影一区二区 | 天堂av中文字幕 | 日韩一级片免费看 | 日韩欧美一区二区三区四区五区 | 韩国主播青草55部完整 | 午夜影院免费在线观看 | 国产三级在线观看完整版 | 亚洲国产精品成人无码区 | 日韩资源网| 亚洲女人在线 | 美女国产精品 | 久久久久久久一 | 国产精品自拍一区 | 国产免费观看av | 一二区视频 | 综合久久久久久 | 最近最经典中文mv字幕 | 日韩有码专区 | 青草综合| 三级久久| 欧美18一20男同69gay | 一区二区在线视频播放 | 在线视频欧美亚洲 | 中文字幕在线观看视频网站 | 欧美乱妇高清无乱码 | 欧美一级免费看 | 国产精品国产精品国产专区不卡 | 真人一毛片 | 亚洲人成电影网 | 国产一级片av | 黄色福利片 | 性感av在线 |