This repository has been archived on 2024-01-25. You can view files and clone it, but cannot push or open issues or pull requests.
SummerSchool2-Controller/UML/can.uxf

229 lines
5.0 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<diagram program="umlet" version="15.1">
<zoom_level>15</zoom_level>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>450</x>
<y>150</y>
<w>30</w>
<h>30</h>
</coordinates>
<panel_attributes>type=initial</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>390</x>
<y>240</y>
<w>150</w>
<h>60</h>
</coordinates>
<panel_attributes>STCA_WAIT</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>450</x>
<y>165</y>
<w>120</w>
<h>105</h>
</coordinates>
<panel_attributes>lt=-&gt;
evCAinit
</panel_attributes>
<additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>450</x>
<y>285</y>
<w>165</w>
<h>105</h>
</coordinates>
<panel_attributes>lt=-&gt;
evCAnewMsg</panel_attributes>
<additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>315</x>
<y>360</y>
<w>285</w>
<h>105</h>
</coordinates>
<panel_attributes>STCA_READ
-
-.
/entry: processCan</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>480</x>
<y>255</y>
<w>225</w>
<h>360</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=[queue empty]
</panel_attributes>
<additional_attributes>10.0;210.0;130.0;210.0;130.0;10.0;40.0;10.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>435</x>
<y>540</y>
<w>60</w>
<h>60</h>
</coordinates>
<panel_attributes>type=decision</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>450</x>
<y>450</y>
<w>135</w>
<h>120</h>
</coordinates>
<panel_attributes>lt=-&gt;
evCAdone</panel_attributes>
<additional_attributes>10.0;10.0;10.0;60.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>210</x>
<y>375</y>
<w>255</w>
<h>240</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=[else]
</panel_attributes>
<additional_attributes>150.0;130.0;10.0;130.0;10.0;10.0;70.0;10.0</additional_attributes>
</element>
<element>
<id>UMLNote</id>
<coordinates>
<x>90</x>
<y>630</y>
<w>615</w>
<h>270</h>
</coordinates>
<panel_attributes>_*How to use*_
*In Factory_build: *
ECAN_SetRXBnInterruptHandler(CANINTERFACE_newMsg);
CANINTERFACE_onProcessCan(&amp;processCan);
*Somewhere:*
void processCan(uint32_t canId, uint32_t canData) {
.....
}</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>900</x>
<y>225</y>
<w>90</w>
<h>105</h>
</coordinates>
<panel_attributes>lt=-&gt;
evInit
</panel_attributes>
<additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>900</x>
<y>210</y>
<w>30</w>
<h>30</h>
</coordinates>
<panel_attributes>type=initial</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>840</x>
<y>300</y>
<w>150</w>
<h>60</h>
</coordinates>
<panel_attributes>STCS_WAIT</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>810</x>
<y>420</y>
<w>210</w>
<h>90</h>
</coordinates>
<panel_attributes>STCS_SEND
--
-.
/entry sendCan</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>900</x>
<y>345</y>
<w>135</w>
<h>105</h>
</coordinates>
<panel_attributes>lt=-&gt;
evCSsend
</panel_attributes>
<additional_attributes>10.0;10.0;10.0;50.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>900</x>
<y>315</y>
<w>270</w>
<h>270</h>
</coordinates>
<panel_attributes>lt=-&gt;
evCSdone
</panel_attributes>
<additional_attributes>10.0;130.0;10.0;160.0;100.0;160.0;100.0;10.0;60.0;10.0</additional_attributes>
</element>
<element>
<id>UMLNote</id>
<coordinates>
<x>765</x>
<y>630</y>
<w>705</w>
<h>270</h>
</coordinates>
<panel_attributes>_*How to use*_
*Like a static class:*
sendCanMsg(uint32_t id, uint32_t data);
*Or like an Object: *
CANSENDER_seSender(CANSENDER* me, uint8_t s);
CANSENDER_setRecipient(CANSENDER* me, uint8_t r);
CANSENDER_sendCanMsg(CANSENDER* me, uint8_t id, uint32_t data);</panel_attributes>
<additional_attributes/>
</element>
</diagram>