Files
DTU-HMI/docs/绘图/软件架构.drawio

62 lines
6.3 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<mxfile host="Electron" agent="AI-Drawio-Replicator">
<diagram id="page-1" name="传感器OPS架构">
<mxGraphModel dx="2020" dy="1975" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" background="#ffffff" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="2" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0f7ff;strokeColor=#2b579a;strokeWidth=2;fontSize=14;fontFamily=Times New Roman;" value="&lt;div style=&quot;display:flex;align-items:center;justify-content:center;gap:20px;font-size:24px;font-weight:bold;&quot;&gt;&lt;div style=&quot;font-size:48px;color:#2b579a;&quot;&gt;👤&lt;/div&gt;&lt;div&gt;调用者 / 上层&lt;br&gt;&lt;span style=&quot;font-size:18px;font-weight:normal;&quot;&gt;(只认识 sensor_ops&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="620" x="270" y="90" as="geometry" />
</mxCell>
<mxCell id="3" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0f9f9;strokeColor=#2385bb;strokeWidth=3;fontSize=14;fontFamily=Times New Roman;" value="&lt;div style=&quot;display:flex;align-items:center;justify-content:center;gap:20px;font-size:28px;font-weight:bold;&quot;&gt;&lt;div style=&quot;font-size:48px;color:#2385bb;&quot;&gt;🏷️&lt;/div&gt;&lt;div&gt;ops 句柄&lt;br&gt;&lt;span style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;{ init, read, close }&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="380" x="390" y="340" as="geometry" />
</mxCell>
<mxCell id="4" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0f7ff;strokeColor=#2b579a;strokeWidth=2;fontSize=14;fontFamily=Times New Roman;" value="&lt;div style=&quot;display:flex;align-items:center;justify-content:center;gap:15px;font-size:22px;font-weight:bold;&quot;&gt;&lt;div style=&quot;font-size:48px;color:#2b579a;&quot;&gt;🌡️&lt;/div&gt;&lt;div&gt;温度传感器&lt;br&gt;&lt;span style=&quot;font-size: 18px; font-weight: normal;&quot;&gt;temp_read()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="100" width="250" x="210" y="620" as="geometry" />
</mxCell>
<mxCell id="5" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0f7ff;strokeColor=#2b579a;strokeWidth=2;fontSize=14;fontFamily=Times New Roman;" value="&lt;div style=&quot;display:flex;align-items:center;justify-content:center;gap:15px;font-size:22px;font-weight:bold;&quot;&gt;&lt;div style=&quot;font-size:48px;color:#2b579a;&quot;&gt;🔲&lt;/div&gt;&lt;div&gt;加速度传感器&lt;br&gt;&lt;span style=&quot;font-size: 18px; font-weight: normal;&quot;&gt;accel_read()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="100" width="250" x="700" y="620" as="geometry" />
</mxCell>
<mxCell id="6" parent="1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fontFamily=Times New Roman;" value="&lt;div style=&quot;font-size:20px;color:#2b579a;font-weight:bold;&quot;&gt;接口边界&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="120" x="860" y="385" as="geometry" />
</mxCell>
<mxCell id="7" edge="1" parent="1" style="endArrow=none;html=1;strokeColor=#2b579a;strokeWidth=2;dashed=1;dashPattern=4 4;fontFamily=Times New Roman;startArrow=block;startFill=1;endFill=0;" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="790" y="399.58" as="sourcePoint" />
<mxPoint x="870" y="399.58" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="8" edge="1" parent="1" source="2" style="endArrow=classic;html=1;strokeColor=#1a365d;strokeWidth=3;labelPosition=top;verticalAlign=bottom;labelBackgroundColor=#ffffff;fontFamily=Times New Roman;" target="3" value="&lt;div style=&quot;font-size: 20px;&quot;&gt;ops-&amp;gt;read(ctx, &amp;amp;v)&lt;/div&gt;">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="580" y="210" as="sourcePoint" />
<mxPoint x="580" y="340" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="9" edge="1" parent="1" style="html=1;strokeColor=#1a365d;strokeWidth=3;fontFamily=Times New Roman;" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="580" y="460" as="sourcePoint" />
<mxPoint x="580" y="540" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="10" parent="1" style="ellipse;whiteSpace=wrap;html=1;fillColor=#1a365d;strokeColor=#1a365d;strokeWidth=2;fontFamily=Times New Roman;" value="" vertex="1">
<mxGeometry height="20" width="20" x="570" y="535" as="geometry" />
</mxCell>
<mxCell id="11" edge="1" parent="1" style="endArrow=classic;html=1;strokeColor=#1a365d;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;rounded=0;curved=0;fontFamily=Times New Roman;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" target="4" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="580" y="545" as="sourcePoint" />
<mxPoint x="325" y="620" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="12" edge="1" parent="1" style="endArrow=classic;html=1;strokeColor=#1a365d;strokeWidth=3;rounded=0;edgeStyle=orthogonalEdgeStyle;fontFamily=Times New Roman;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" target="5" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="580" y="545" as="sourcePoint" />
<mxPoint x="835" y="620" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="13" parent="1" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;labelBackgroundColor=#ffffff;fontFamily=Times New Roman;" value="&lt;div style=&quot;font-size:18px;&quot;&gt;函数指针实际指向&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="200" x="630" y="500" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>