±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½éÉÜÁËAUTOSARµÄ¸ÅÄî¡¢¼Ü¹¹ÏµÄģʽ¹ÜÀí¡¢¹ÜÀíÄ£¿é¼°COMM
¹ÜÀíÄ£¿éʾÀý£¬Ï£Íû¶ÔÄúÓаïÖú¡£
±¾ÎÄÀ´×ÔÓÚÖªºõ£¬ÓÉ»ðÁú¹ûÈí¼þLinda±à¼¡¢ÍƼö¡£ |
|
1 ¸ÅÊö
1.1 ģʽ¹ÜÀíµÄ×é³É
AUTOSARΪECUµÄÔËÐÐʱÈí¼þµÄ״̬´¦ÀíÌṩÁËģʽ¹ÜÀí×é¼þ£¬ÀýÈç
BswMģʽ¹ÜÀíÆ÷
NMÍøÂç¹ÜÀí
ECU״̬¹ÜÀíÆ÷
COMMͨÐŹÜÀíÆ÷
WDGM¿´ÃŹ·¹ÜÀíÆ÷
µ±È»£¬³ýÁËÕ⼸¸ö±ê×¼µÄAUTOSAR»ù´¡Ä£¿éÍ⣬ģʽ¹ÜÀí×é¼þ»¹Éæ¼°µ½ÁËÓ¦ÓóÌÐòģʽ¹ÜÀíÆ÷£¨APP Mode
Management£©ºÍRTEµÄÏà¹Ø¹¦ÄÜ¡£ºóÃæµÄÕ½ڽ«Ò»Ò»ÎªÄãÆÊÎö¡£
2 AUTOSAR¼Ü¹¹ÏµÄģʽ¹ÜÀí
ģʽ¹ÜÀíÖÐÓÐÈýÖÖģʽ½ÇÉ«£¬¼´Ä£Ê½ÇëÇóÕߣ¬Ä£Ê½Óû§ºÍģʽ¹ÜÀíÆ÷¡£
ģʽÇëÇóÕß
ÇëÇóģʽ¹ÜÀíÆ÷¸ü¸Äģʽ¡£
ģʽ¹ÜÀíÆ÷
´¦Àíģʽ¸ü¸ÄÇëÇóÒÔ¸ü¸ÄÄÚ²¿Ä£Ê½£¬Í¬Ê±²¢½«¸ü¸ÄºóµÄģʽ½»¸¶¸øÆäËûģʽÓû§¡£
ģʽÓû§
´Óģʽ¹ÜÀíÆ÷½ÓÊÕµ±Ç°Ä£Ê½ÐÅÏ¢£¬»ò½«ÆäÓÃ×÷Ö´ÐпÉÔËÐг̣¨Runnable£©µÄʼþ¡£
ģʽµÄÐÅÏ¢ÊÇʹÓÃRTEÉϵĶ˿ڽӿڻòBSW²àµÄC-API½Ó¿Ú´Óģʽ¹ÜÀíÆ÷Ìṩ¸øÄ£Ê½Óû§µÄ¡£Ä£Ê½ÐÅÏ¢ÒÔModeDeclarationGroup¸ñʽ¶¨Òå¡£¸ÃModeDecleartionGroup°üº¬ÔÚÈí¼þ×é¼þÃèÊöÎļþÖУ¬²¢ÔÚÉú³ÉRTEºó×÷Ϊ´úÂëÖеÄö¾ÙÁ¿¡£¹ÜÀíģʽÐÅÏ¢µÄģʽ¹ÜÀíÆ÷ʵÏÖΪBswM»òAppM¡£
2.1 BSWģʽ¹ÜÀí
¸ù¾ÝECUµÄµ±Ç°×´Ì¬£¬BswM¿ØÖÆ ECU״̬´¦ÀíÖеÄÓû§¿É¶¨ÖƵŦÄÜ¡£BswMµÄÐÐΪͨ¹ý¡° if-else¡±Óï¾äÐÎʽµÄÒ»×鹿Ôò½øÐÐÅäÖá£ÓÉÓÚ¹¦Äܰ²È«ºÍµÍ¹¦ºÄÒªÇó£¬ÐèҪΪϵͳ¶¨ÒåһϵÁÐ״̬£¬µ±½øÈë¸÷×ÔµÄ״̬ʱ£¬Ä£Ê½¹ÜÀíÆ÷½«°´ÕÕÉèÖõIJÙ×÷²¢Ö´ÐÐÔÚ¸Ã״̬Öж¨ÒåµÄһϵÁÐÈÎÎñ¡£
¶ÔÓÚÓ¦Óò㣬ʹÓÃMBD ״̬»úÄ£Ðͽ«Ê¹Ó¦Óÿª·¢±äµÃ¼òµ¥Ã÷Îú£¬¶ÔÓÚAUTOSAR »·¾³Ï£¬AUTOSARÌṩÁËÒ»ÖÖģʽ¹ÜÀí»úÖÆ£¬ÓÃÓÚÖ´ÐÐÓë״̬»úµÈЧµÄ¹ÜÀí»úÖÆ¡£
ÈçÏÂͼ1Ëùʾ£¬BswMµÄģʽ¹ÜÀíÓÉģʽÖٲúÍģʽ¿ØÖÆ×é³É¡£¸ù¾ÝÏàÓ¦µÄÌõ¼þÖ´ÐзÖÅäµÄ²Ù×÷ÁÐ±í¡£¶¯×÷ÁбíÓÉÒ»¸ö»ò¶à¸ö¿ØÖÆÆäËûBSWµÄActionList×é³É¡£APP
SWC¿ÉÒÔʹÓ÷¢ËͶ˿ڽӿÚÏòBswMÇëÇóģʽ¡£ÐÅϢͨ¹ýRTE´«Ê䣬BswMͨ¹ý½ÓÊն˿ڽÓÊÕÐÅÏ¢¡£ ×¢£ºBswMµÄÿ¸öÅäÖòÎÊýÔÚEcuCÎļþÖÐÃèÊö£¬EB»òDaVinci
Generator»ùÓÚ´ËEcuC²ÎÊýÎļþÉú³É´úÂë¡£

ͼ1 BSWM ģʽ¹ÜÀíʾÒâͼ
2.2 Ó¦ÓÃÈí¼þģʽ¹ÜÀí
Ó¦ÓÃÈí¼þµÄÄÚ²¿×´Ì¬¹ÜÀí¿ÉÒÔͨ¹ýͨÓõÄÈí¼þ¿ª·¢·½·¨(ÀýÈç״̬»ú)À´ÊµÏÖ£¬ÊµÏÖÏòÆäËûSWC»òBswMÌṩÆäÏà¹ØµÄ״̬ÐÅÏ¢£¬»òÕß»ùÓÚ¸Ã״ִ̬ÐÐÌØ¶¨µÄCallout
function¡£ÔÚÕâÖÖÇé¿öÏ£¬Ó¦Ê¹ÓÃAUTOSAR RTEÌṩµÄģʽ½Ó¿Ú¡£ Èçͼ3Ëùʾ£¬AppM¿ÉÒÔÅäÖÃΪģʽ¹ÜÀíÆ÷£¬´¦ÀíÀ´×ÔÆäËûģʽÇëÇóÄ£¿éµÄģʽÇëÇóÒÔ¸ü¸Äģʽ¡£Ê¹ÓÃģʽÉùÃ÷×éÔ¤Ïȶ¨ÒåÒª´¦ÀíµÄģʽ¡£
ģʽÓû§Í¨¹ý½ÓÊն˿ڽÓÊÕµ±Ç°Ä£Ê½ÐÅÏ¢ºÍģʽ¸Ä±äʼþ¡£ ģʽ¶Ë¿Ú½Ó¿Ú¿ÉÒÔ´¥·¢ÓëÆäÁ¬½ÓµÄ¿ÉÔËÐжÔÏó£¨Runnable£©£¬Ò²¿ÉÒÔÍ£Ö¹µ÷¶ÈÁíÒ»¸öRTEʼþ´¥·¢µÄ¿ÉÔËÐжÔÏó¡£

ͼ2 Ó¦Óòãģʽ¹ÜÀí
2.3 BswMģʽµÄÅäÖÃ
ÔÚECUÔËÐÐÉúÃüÖÜÆÚµÄÔËÐÐ״̬ÓÉBswM¹ÜÀí¡£Èç1ͼ3£¨a£©Ëùʾ£¬¸ù¾ÝÉϲãÓ¦ÓóÌÐò»òBSWÄÚ²¿µÄ״̬ת»»ÉèÖÃÏàÓ¦µÄ¹æÔòÒÔÖ´ÐÐÌØ¶¨²Ù×÷¡£BswMÓÉÕë¶ÔÌØ¶¨Ìõ¼þµÄÂß¼¾ö²ß±í´ïʽºÍÕë¶Ô±í´ïʽ½á¹ûµÄһϵÁÐÖ´Ðж¯×÷×é³É£¬Èçͼ3ÏÔʾµÄ״̬»úËùʾ¡£

ͼ3 BSWMµÄ¹æÔò
¸ù¾ÝBswMµÄ¹æÔò£¬ÓÃÓÚ¹æÔòÅжϵÄÿ¸öÌõ¼þµÄÊäÈëΪModeRequestSource£¬Êä³öΪAvailableAction¡£ÈçϱíÖÐBSWM
RULESËùʾ, ΪÁ˹¹Ôì״̬»ú£¬ÎÒÃÇÊ×ÏÈͨ¹ý¿¼ÂÇÓ¦½«×Ó״̬µÄÌõ¼þÐÅÏ¢×éºÏ³É¸´ºÏµÄ״̬À´¶¨Òå±ØÒªµÄ״̬£¬Ã¿¸ö¹ØÁª¹æÔòµÄ¸´ºÏ״̬ÒÔÌõ¼þ±í´ïʽµÄÐÎʽ±íʾ£¬ÒÔ´´½¨×´Ì¬×ª»»Ìõ¼þ£¬²¢½«Êä³öÓë¸Ãת»»Ìõ¼þ¹ØÁª¡£
¹æÔò¿â¿ÉÒÔ¶¨ÒåΪ£º{ Rule_aa£¬Rule_ab £¬Rule_JK£¬¡¡}£¬ÆäÖÐJ±íʾÌõ¼þϱ꣬K±íʾActionList
ϱꡣ¾ßÌå¿É²Î¿´´úÂëÖеÄÊý×é±íµÄ¶¨Òå¡£

×¢£º±íÖеÄBswMModeRequestSourceÊÇAUTOSAR Éè¼ÆÔªËØÖеÄChoiceContainerÈÝÆ÷¡£ÈçÏÂͼΪģʽÇëÇóÀàÐÍΪBswMCanSMIndicationµÄÅäÖãº

ͼ4 BSWM µÄÅäÖÃ
×¢£º¶ÔÓÚBswM_CanSM_CurrentState(NetworkHandleTypeNetwork,CanSM_BswMCurrentStateType
CurrentState)£¬ Ëü¿ÉÄܾßÓжà¸öʵÀý£¬ÀýÈç¶à¸öCANͨµÀ¡£¶ÔÓÚÕâЩ¶à¸öʵÀý±ØÐëÓ³Éäµ½²»Í¬µÄ¶Ë¿ÚÉÏ¡£
2.4 Ó¦Óòãģʽ¹ÜÀíµÄ¿ª·¢
»ùÓÚÄ£Ð͵ÄECUÈí¼þ¿ª·¢Òѱ»Òµ½ç¹ã·º²ÉÓá£ÔÚAUTOSAR»·¾³ÖУ¬Ò»Ð©³ÉÊìµÄÉÌÒµÈí¼þ¹¤¾ßMATLAB
/ SimulinkºÍTargetLink£¬¿ÉÒÔͨ¹ýÓ¦ÓÃÈí¼þµÄSWC ArxmlÎļþÀ´ÌáÈ¡¶Ë¿ÚÔÐͺÍSWCÃèÊöÎļþÖж¨ÒåµÄ¿ÉÔËÐÐÐÅÏ¢£¬²¢×Ô¶¯Éú³ÉÄ£Ð͵ÄÄ£°å¡£ÔÚÄ£°åÖÐʵÏÖËã·¨²¢×Ô¶¯Éú³É¿ÉÖ´ÐдúÂë¡£
ÔÚ»ùÓÚÄ£Ð͵ÄÓ¦ÓóÌÐòÈí¼þ¿ª·¢¹ý³ÌÖУ¬Matlab Simulink »òTargetLinkµ¼ÈëSWCµÄArxmlÃèÊöÎļþ£¬ÃèÊöÎļþ°üÀ¨ÊäÈëºÍÊä³öÒÔ¼°Èí¼þ×é¼þµÄÄÚ²¿ÐÐΪ£¨Runnbale£¬Event£©µÄÃèÊöÐÅÏ¢¡£ÆäÒ»°ãÊÇÔڼܹ¹¹¤¾ßÖÐÊÂÏȶ¨ÒåºÃ£¬ÈçÏÂͼÓÃSystemDeskÉè¼ÆÁËIndicatorlogic
×é¼þ£¬Æä°üº¬Á˺ì¿òÖеÄÉè¼ÆÒªËØ¡£

ͼ5 APP SWCµÄ×é³ÉÒªËØ
×¢£ºÓ¦ÓóÌÐòÈí¼þģʽ¹ÜÀíÆ÷Ä£¿éΪÁË´¦ÀíÓë״̬Ïà¹ØµÄÐÅÏ¢£¬Ó¦¸ÃÅäÖô«µÝģʽÐÅÏ¢µÄ¶Ë¿Ú£¬²¢ÇÒÓ¦¸ÃÅäÖðüÀ¨¶¨ÒåµÄģʽÐÅÏ¢µÄģʽÃèÊö×é
£¨Mode Declaration£©£¬²¢½«ÆäÓ³É䵽ģʽ¶Ë¿Ú½Ó¿ÚÖС£
3 »ù´¡Èí¼þģʽ¹ÜÀíÄ£¿é
ģʽ¹ÜÀí¹¦Äܼ¯°üÀ¨Ëĸö»ù±¾Èí¼þÄ£¿é£º ? NMÍøÂç¹ÜÀí£¬Ðµ÷ÍøÂç½ÚµãµÄ״̬¡£ ? ECU ״̬¹ÜÀíÆ÷£¬¿ØÖÆAUTOSARBSW
Ä£¿éµÄÆô¶¯½×¶Î£¬°üÀ¨ OS µÄÆô¶¯£» ? ͨÐŹÜÀíÆ÷£¬¸ºÔðÍøÂç×ÊÔ´¹ÜÀí£» ? ¿´ÃŹ·¹ÜÀíÆ÷£¬»ùÓÚÓ¦ÓÃÈí¼þµÄÉú´æ×´Ì¬´¥·¢¿´ÃŹ·¡£
3.1 ÍøÂç¹ÜÀí
ÍøÂç¹ÜÀí¶ÑÕ»°üÀ¨£º
Óë×ÜÏßÎ޹صÄÍøÂç¹ÜÀí½Ó¿ÚÄ£¿éNm
CANÍøÂç¹ÜÀíÄ£¿éCanNm
FlexRayÍøÂç¹ÜÀíÄ£¿éFrNm
UDP / IP /ÒÔÌ«ÍøÍøÂç¹ÜÀíÄ£¿éUdpNm
LINûÓÐÍøÂç¹ÜÀí¡£NmÄ£¿éµÄÄ¿µÄÊÇΪComMÄ£¿éÌṩ¶ÀÁ¢ÓÚ×ÜÏߵĽӿڡ£´ËÍ⣬Nm¿ÉÒÔÅäÖÃΪNMе÷Æ÷¡£Èç¹ûÁ¬½ÓÁËÁ½¸ö»ò¸ü¶à×ÜÏߣ¬ÔòNMе÷Æ÷½«´¦Àíͬ²½¹Ø±Õ¡£
3.2 ECU״̬¹ÜÀíÆ÷
ECU״̬¹ÜÀíÆ÷ÊÇÒ»¸ö»ù±¾Èí¼þÄ£¿é£¬¹ÜÀí ECU µÄ״̬£¨OFF¡¢RUN¡¢SLEEP£©£¬ÒÔ¼°ÕâЩ״̬֮¼äµÄת»»£¨¹ý¶É״̬£ºSTARTUP¡¢
WAKEUP¡¢SHUTDOWN£©¡£ÏêϸµØ£¬ ECU״̬¹ÜÀíÆ÷£º
¸ºÔð³õʼ»¯ºÍde-initializationËùÓлù±¾Èí¼þÄ£¿é£¬°üÀ¨ OS ºÍRTE£»
ÔÚÐèҪʱÓëËùνµÄ×ÊÔ´¹ÜÀíÆ÷£¨ÀýÈ磬ͨÐŹÜÀíÆ÷£©Ð×÷£¬¹Ø±ÕECU£»
¹ÜÀíËùÓл½ÐÑʼþ£¬²¢ÔÚ±»ÒªÇóʱÅäÖÃECU ΪSLEEP ״̬¡£
ΪÁËÍê³ÉËùÓÐÕâЩÈÎÎñ£¬ ECU ״̬¹ÜÀíÆ÷ÌṩÁËÒ»Ð©ÖØÒªµÄÐÒ飺
RUN ÇëÇóÐÒ飬µ÷ÕûECU ÊDZ£³Ö»î¶¯×´Ì¬»¹ÊÇ×¼±¸¹Ø±Õ£¬
»½ÐÑÈ·ÈÏÐÒ飬´Ó¡°²»Îȶ¨µÄ¡±»½ÐÑʼþÖÐÇø·Ö³ö¡°ÕæÕýµÄ¡±»½ÐÑʼþ£¬ ? ʱ¼ä´¥·¢µÄÔö¶à·Ç¹¤×÷״̬ÐÒ飨TimeTriggered
Increased Inoperation - TTII£©£¬ÔÊÐí ECU ¸ü¶àµØ½øÈë½ÚÄܵÄÐÝÃß״̬¡£
ECU״̬¹ÜÀíÆ÷±ØÐëÖ§³Ö¶ÀÁ¢µÄÔ¤´¦Àí¶¯×÷ºÍ¹ý¶É£¬ÒÔÆô¶¯ ECU »ò½«Æäת»»µ½µÍ¹¦ºÄ״̬£¨ÀýÈ磬ÐÝÃß״̬/±¸ÓÃ״̬£©¡£Í¨¹ýÁ¼ºÃʹÓÃ
ECU״̬¹ÜÀíÆ÷µÄÌØÐÔºÍÄÜÁ¦£¬´ËÄ£¿éÄܹ»ÓÃÓÚÖ´ÐеçÔ´ÏûºÄµÄÔ¤¶¨Òå²ßÂÔ£¬Òò´ËÌṩÁË¶Ô ECU µÄÓÐЧÄÜÔ´¹ÜÀí¡£
ECU״̬¹ÜÀíÆ÷µÄÌØÐÔºÍÓÅÊÆ°üÀ¨£º ? ³õʼ»¯ºÍ¹Ø±Õ»ù±¾Èí¼þÄ£¿é¡£ ? ECU Ö÷Ҫ״̬µÄ±ê×¼»¯¶¨Òå¡£
ʱ¼ä´¥·¢µÄ¸ü¶à·Ç¹¤×÷״̬¡£
3.3 ¿´ÃŹ·¹ÜÀíÆ÷
¿´ÃŹ·¹ÜÀíÆ÷ÊÇ AUTOSAR£¨·þÎñ²ã´Î£©µÄ±ê×¼»¯»ù±¾Èí¼þÌåϵ½á¹¹µÄ»ù±¾Èí¼þÄ£¿é¡£Ëü¼à¿ØÓë¼ÆÊ±Ô¼ÊøÓйصÄÓ¦ÓÃÖ´ÐеĿɿ¿ÐÔ¡£
·Ö²ãÌåϵ½á¹¹·½·¨Ê¹µÃÓ¦ÓüÆÊ±Ô¼ÊøºÍ¿´ÃŹ·Ó²¼þ¼ÆÊ±Ô¼Êø·ÖÀë¡£»ùÓÚ´Ë£¬¿´ÃŹ·¹ÜÀíÆ÷ÔÚ´¥·¢¿´ÃŹ·Ó²¼þµÄͬʱÌṩÁ˶ÔһЩ¶ÀÁ¢Ó¦ÓõÄÉú´æ¼à¿Ø¡£
¿´ÃŹ·¹ÜÀíÆ÷ÌṩÒÔÏÂÌØÐÔ£º
¼à¶½¶à¸ö´¦ÓÚECU µÄµ¥¶ÀÓ¦Óã¬ÕâЩӦÓÃÓжÀÁ¢µÄ¼ÆÊ±Ô¼Êø²¢ÇÒÐèÒªÌØ±ð¼à¶½ÔËÐÐʱµÄÐÐΪºÍÉú´æ×´Ì¬¡£
ÿ¸ö¶ÀÁ¢µÄÊÜ¼à¿ØÊµÌå¶¼ÓйÊÕÏÏìÓ¦»úÖÆ¡£
¿ÉÒԹرնԵ¥¶ÀÓ¦Óõļල£¬¶ø²»»áÎ¥·´¿´ÃŹ·´¥·¢£¨ÀýÈ磬¶ÔÓÚ½ûÖ¹µÄÓ¦Óã©¡£
ͨ¹ý¿´ÃŹ·Çý¶¯´¥·¢ÄÚ²¿»òÍⲿ¡¢±ê×¼»ò´°¿Ú£¬¿´ÃŹ·¡££¨internalor external, standardor
window, watchdog£©¶ÔÄÚ²¿»òÍⲿ¿´ÃŹ·µÄ·ÃÎÊÓÉ¿´ÃŹ·½Ó¿Ú´¦Àí¡£
¸ù¾ÝECU״̬ºÍÓ²¼þÐÔÄÜÑ¡Ôñ¿´ÃŹ·Ä£Ê½£¨OffMode, Slow Mode, Fast Mode£©¡£
3.4 ͨÐŹÜÀíÆ÷
ͨÐŹÜÀíÆ÷ÊÕ¼¯²¢Ðµ÷À´×ÔͨÐÅÇëÇóÕߣ¨Óû§£©µÄ·ÃÎÊÇëÇó¡£ Í¨ÐŹÜÀíÆ÷µÄÄ¿µÄÊÇ£º
¼ò»¯Í¨ÐÅÐÒéÕ»µÄʹÓᣰüÀ¨Í¨ÐÅÕ»µÄ³õʼ»¯£¬ÒÔ¼°¼òµ¥µÄÍøÂç¹ÜÀí¡£
µ÷ÕûECU É϶à¸ö¶ÀÁ¢Èí¼þ×é¼þµÄͨÐÅÕ»£¨ÔÊÐí·¢ËͺͽÓÊÕÏûÏ¢£©µÄ¿ÉÓÃÐÔ¡£
ÔÝʱ½ûÖ¹·¢ËÍÏûÏ¢ÒÔ×èÖ¹ECU£¨Ö÷¶¯µØ£©»½ÐÑÎïÀíͨµÀ¡£
ͨ¹ýΪÿ¸öÎïÀíͨµÀʵÏÖÒ»¸ö״̬»úÀ´¿ØÖÆECU µÄ¶à¸öÎïÀíͨµÀ¡£
¿ÉÒÔÇ¿ÖÆECU ±£³ÖÎïÀíͨµÀ´¦ÓÚ¡° silent ͨÐÅ¡±Ä£Ê½¡£
·ÖÅäËùÇëÇóµÄͨÐÅģʽÐèÒªµÄËùÓÐ×ÊÔ´£¬¼ò»¯×ÊÔ´¹ÜÀí¡£
ͨÐŹÜÀíÆ÷¶¨ÒåÁË¡°Í¨ÐÅģʽ¡±£¬±íʾһ¸öÌØ¶¨µÄÎïÀíͨµÀ¶ÔÓÚÓ¦ÓÃÊÇ·ñ¿ÉÓã¬ÒÔ¼°ÈçºÎʹÓ㨷¢ËÍ/½ÓÊÕ£¬Ö»½ÓÊÕ£¬¼´²»·¢ËÍÒ²²»½ÓÊÕ£©
4 COMM ¹ÜÀíÄ£¿éʾÀý
ComMÄ£¿éÊǶÔ×ÜÏßͨÐÅϵͳµÄ¿ØÖƵijéÏó¡£µ±Ä£¿éUserÅäÖúͷÃÎÊÍøÂç×ÜÏßͨµÀ(Channel ID)£¬²»±Ø¿¼ÂÇÍøÂç×ÜÏßµÄÀàÐÍ£¨CAN£¬FlexRay£¬UDP
/ IP /ÒÔÌ«Íø»òLIN£©¡£GONGÖкţºÌǹûAutosar ×¢£ºÄ£¿éUser°üÀ¨£º
ÇëÇóͨÐŵÄECUM/BSWM Ä£¿é£¬ ÀýÈ磺Can¿ØÖÆÆ÷¼ì²âµ½»½ÐѺó£¬BSWMͨ¹ýģʽ¶Ë¿ÚÇëÇó´ò¿ªÍ¨ÐÅ¡£
Ó¦ÓòãÈí¼þ×é¼þ¡£
¶ÔÓÚCAN£¬CANIF ,CANSM,COMMµÄÿ¸öÄ£¿é¶¼Î¬»¤×Å×Ô¼ºµÄ״̬»ú¡£¶ø¶ÔÓÚÿ¸öÍøÂçͨµÀ£¬ComMÄ£¿éÖеÄ״̬»ú¾ßÓÐÒÔÏÂ״̬£º
ÍêȫͨÐÅ£¨¸ù¾ÝNM±¨ÎÄ״̬£¬°üº¬ÏàÓ¦×Ó״̬£º×¼±¸Ë¯Ãߣ¬ÇëÇó´ò¿ªÍøÂçͨÐÅ£©
¾²Ä¬Í¨ÐÅ¡£
ÎÞͨÐÅ¡£
ÿ¸ö״̬µÄͨÐÅÐÐΪ¶¼²»Í¬¡£ÈçϱíËùʾ£º

¹ØÓÚÍøÂç¹ÜÀí£¬Èç¹ûCOMM_NM_VARIANT±äÌåÊÇFull£¬ComͨÐÅģʽµÄ¸Ä±ä»áÏàÓ¦µÄÈ¥µ÷ÓÃCOMM_NM_NETWORKREQUEST»òCOMM_NM_NETWORKRELEASEʵÏÖÊÇ·ñͬ²½»½ÐѺÍÐÝÃß
¡£ÔÚCOMM_NM_LIGHT_VARIANTºÍCOMM_NM_NONE_VARIANT±äÌåʱ²»½øÐÐͬ²½¡£
4.1 CAN È«ËÙͨÐŵÄģʽµÄʵÏÖʾÀý
ÒÔCAN È«ËÙͨÐÅΪÀý£¬³ÌÐòÁ÷ÈçÏÂͼ£º

4.2 Can×ÜÏß״̬¼ì²âʵÏÖʾÀý
ÔÙÈçÏÂͼµÄCANͨÐŵĴ«Êäģʽϵͳ£¬CanSM¹ÜÀíMCUÖÐCANÓ²¼þµÄ³õʼ»¯ÒÔ¼°ÖîÈç×ÜÏßBUS OFFÖ®ÀàµÄģʽ״̬¡£BswMͨ¹ýCanSM¼àÊÓCANµÄͨÐÅ״̬£¬²¢ÔÚÐèҪͨÐÅʱÇëÇóCOMÄ£¿é¼¤»îÏàÓ¦µÄPdu×飬´Ó¶øÆôÓÃͨÐÅ¡£ÔÚ×ÜÏßµÄBUS
OFF״̬Ï£¬ÇëÇóÍ£ÓÃPduGroupÒÔÍ£Ö¹´«Êä¡£

ͼ7 CanͨÐÅ´«ÊäģʽµÄÉèÖÃ
ÆäÖлùÓÚCAN Ä£¿éµÄBSWMģʽ¹ÜÀíÆ÷µÄÏêϸµÄ״̬»úÈçÏÂͼËùʾ£º

ͼ8 »ùÓÚCAN Ä£¿éµÄBSWMģʽ¹ÜÀíÆ÷µÄ״̬»ú |