diff --git a/UML/can.pdf b/UML/can.pdf index 14c421a..cc045a6 100644 Binary files a/UML/can.pdf and b/UML/can.pdf differ diff --git a/UML/can.uxf b/UML/can.uxf index ac0abd3..039a001 100644 --- a/UML/can.uxf +++ b/UML/can.uxf @@ -5,9 +5,9 @@ UMLNote 645 - 255 - 675 - 525 + 75 + 750 + 765 _*How to use CAN interface*_ @@ -23,19 +23,30 @@ CAN_setSender(idSender); CAN_startBehaviour(); *Somewhere for process input can message:* -void receiveCan(uint8_t idSender, uint8_t idMsg, uint32_t canData) { +void receiveCan(uint8_t idSender, uint8_t idMsg, bool rtr, uint32_t canData) { ..... } *For send can message: * -CAN_sendCanMsg(uint8_t idRecipient, uint8_t idMsg, uint32_t data); +CAN_Send(uint8_t idRecipient, uint8_t idMsg, uint32_t data); +CAN_send_4_bytes( + uint8_t idRecipient, + uint8_t idMsg, + uint8_t byte0, + uint8_t byte1, + uint8_t byte2, + uint8_t byte3); +CAN_send_2_bytes(uint8_t idRecipient, uint8_t idMsg, uint16_t data); +CAN_send_1_byte(uint8_t idRecipient, uint8_t idMsg, uint8_t data); +CAN_send_0_byte(uint8_t idRecipient, uint8_t idMsg); +CAN_send_rtr(uint8_t idRecipient, uint8_t idMsg); Relation - 360 - 330 + 375 + 255 90 135 @@ -47,8 +58,8 @@ evInit UMLSpecialState - 360 - 315 + 375 + 240 30 30 @@ -58,37 +69,37 @@ evInit UMLState - 240 - 435 + 255 + 360 270 90 - STCA_PROCESS + PROCESS Relation - 450 - 465 + 465 + 390 180 180 lt=-> -m1=evCAsend +m1=evSend m1=\n/sendCan() 10.0;40.0;10.0;100.0;100.0;100.0;100.0;10.0;40.0;10.0 Relation - 135 - 465 + 150 + 390 300 180 lt=-> -m1= evCAnewMsg +m1= evNewMsg m1= \n/receiveCan() 100.0;40.0;100.0;100.0;10.0;100.0;10.0;10.0;70.0;10.0