[WMX3] 7.IO - Set/Get OutBytes

在还没开始撰写程序前可以先开启WMX3 Console选取I/O
https://ithelp.ithome.com.tw/upload/images/20210811/20134736kZh6i9xoHj.png
图上显示的红底0.0第一个字代表位址小数点第一位代表第几个bit
点击ON/OFF的动作使用SetOutBytes,当点击ON按钮时0.0变成绿底这个状态的改变使用GetOutBytes。
https://ithelp.ithome.com.tw/upload/images/20210811/20134736v5nnQExRxM.png
其它也有Set/GetOutByte、Set/GetOutBit...可以使用

使用方法

public static int OUTPUT_ADDR_MAX = 255;
public static Io wmxApi_IO = new Io(wmxApi);
//读取
public static byte[] OUTPUT_IN = Enumerable.Repeat((byte)0x00, OUTPUT_ADDR_MAX).ToArray();
//输出
public static byte[] OUTPUT = Enumerable.Repeat((byte)0x00, OUTPUT_ADDR_MAX).ToArray();
//状态
public static byte[] bit_ON = new byte[] { 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80 };
public static byte[] bit_OFF = new byte[] { 0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f };
  • Set
//_addr : 位址
//_bit : 输出点
//ON
OUTPUT[_addr] |= bit_ON[_bit];
wmxApi_IO.SetOutByte(_addr, OUTPUT[_addr]);
//OFF
OUTPUT[_addr] &= bit_OFF[_bit];
wmxApi_IO.SetOutByte(_addr, OUTPUT[_addr]);
  • Get
wmxApi_IO.GetOutBytes(0, OUTPUT_ADDR_MAX, ref OUTPUT_IN);
  • 结果
    https://ithelp.ithome.com.tw/upload/images/20210811/20134736sEYTxpjv59.png

<<:  业务连续性委员会(Business Continuity Committee)

>>:  来尝试打破x86的习俗

应用系统的防护基准-帐号管理与存取权限

适用人员: 技术人员(开发人员)。 适用法规: 资通安全责任等级分级办法 - 附表十资通系统防护基准...

【基础影像应用篇】DAY3.物件辨识模型建立流程

开始在今日的学习前,让我们先来笔记一下此章节的学习重点吧! MusesAI小精灵带您了解影像辨识的流...

Day 09:一起了解 Angular 应用程序的启动流程(一)

启动 Angular 开发服务器 我们先打开 VS Code 的终端机面版,输入 npm start...

Day 28 | 状态管理-从官方范例来看如何使用BLoC

那今天我们就来使用bloc及flutter_bloc 这两个来实作范例,基本上我们在实作BLoC p...

到底是什麽意思?Typescript Partial<Type>

今天在翻旧code的时候,看到了 Partial 的写法,所幸来查查这到底是什麽意思.弄懂了之後看c...