NODKA诺达佳ARM整机

整机项目


GPIO

<p>[TOC]</p> <h2>GPIO的使用</h2> <h3>1、接口定义</h3> <ul> <li><strong>DO:</strong> <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=f44fa033916f231a3072b27d2d5c93d7&amp;amp;file=file.png" alt="" /></li> <li><strong>DI:</strong> <img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=2ad3b66fccef7e834926a64c6a6c2bc4&amp;amp;file=file.png" alt="" /></li> </ul> <h3>2、GPIO的导出</h3> <p>gpio 的控制节点在目录:<code>/sys/class/gpio/</code></p> <p>导出节点命令:</p> <pre><code class="language-shell">//导出单个gpio console: # echo 41 &amp;gt;/sys/class/gpio/export //使用 for 循环导出多个 IO 节点: cd /sys/class/gpio for i in {41,43,42,44,32,33,34,35,102,106,128,131,20,134,123,124}; do echo $i &amp;gt;export; done </code></pre> <h3>3、DO测试:</h3> <p><img src="https://www.showdoc.com.cn/server/api/attachment/visitFile?sign=a6a4698e82849aa03a719d7de64141f6&amp;amp;file=file.png" alt="" /></p> <p><code>开关位于NPN时</code></p> <p>8DO的value=0时(默认),8DO与DOGND不导通</p> <p>赋值8DO的value=1时,8DO与DOGND导通</p> <p> </p> <p><code>开关位于PNP时,源型:输出电流流向负载</code></p> <ul> <li>接线:24V正接24_IN ,24V负接DOGON</li> </ul> <p>8DO的value=0时(默认),8DO与DOGND电压为0</p> <p>赋值8DO的value=1时,8DO与DOGND电压为+24V</p> <h3>4、DI测试</h3> <p><code>干接点</code></p> <p>8DI与DIGND断开时(有24V电压),6DI的value=0</p> <p>8DI与DIGND短接时(0V电压),6DI的value=1</p> <p> </p> <p><code>湿接点</code></p> <ul> <li>接线:24V正-接DI,24V负接DI_GND和DI_COM一起</li> </ul> <p>8DI,DI低电平或者无电源输入时(0V),8DI的value=0</p> <p>8DI,DI高电平输入时(+24V),8DI的value=1</p> <h3>5、IO控制方法</h3> <ul> <li>单个节点控制,以 gpio41 为例:</li> </ul> <pre><code class="language-shell">//设置 gpio41 为输出方向: echo out &amp;gt;/sys/class/gpio/gpio41/direction //设置 gpio41 输出低电平: echo 0 &amp;gt;/sys/class/gpio/gpio41/value //设置 gpio41 输出高电平: echo 1 &amp;gt;/sys/class/gpio/gpio41/value //IO为输出方向时:使用电压表测量pin脚3(gpio41)对pin脚1的电压是否可控:低电平为0v,高电平为3.3v //设置 gpio41 为输入: echo in &amp;gt;/sys/class/gpio/gpio41/direction </code></pre>

页面列表

ITEM_HTML