IOIO 上的单精度输入数

Number of single precision inputs on IOIO

看这个页面提到双精度数字脉冲输入(32位定时器)可以分为2个单精度16位定时器。

https://github.com/ytai/ioio/wiki/Pulse-Input

上面说有3个单模块和3个双模块

这是否意味着9个引脚可以用于单精度脉冲输入? (3单+3*2)?

这是正确的吗?

使用现有的支持代码,您最多可以执行 6 (3+3) 个并发频道。通过对底层代码进行一些调整,您可以获得多达 9 个单精度通道。

具体来说,在文件 software/IOIOLib/src/ioio/lib/impl/Board.java 中,搜索硬件 class 实例的创建位置,注意 ctor 的参数 5 和 6 是双和单精度输入捕获(脉冲输入)模块编号。例如:

static final Hardware IOIO0004 = new Hardware(MAP_IOIO0004,
            9, 4, 3, new int[] {0, 2, 4}, new int[] { 6, 7, 8 },
            new int[][] {{ 4, 5 }, { 1, 2 }, { 26, 25 }},
            new int[] { 36, 37, 38 });

如果替换:

new int[] {0, 2, 4}, new int[] { 6, 7, 8 }

与:

new int[] {}, new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8 }

你会得到 9 个单精度模块和 0 个双精度模块等