获取ADC模式的IO端口AD值
由于扩展板是使用串口通信的,因此获取IO口AD值是一个通信过程,也就是先用 chkadcs()语句发送一个查询命令,扩展板根据这个查询命令返回IO口AD值;
由于通信是异步的,因此获取结果需要在异步接收事件中进行
查询命令:
void e1.chkadcs();
本命令为异步命令,执行后会立即执行下一条语句,而非等待结果返回才执行下一条
获取结果
int e1.getadc(int pin);
// pin: 引脚号 0~7; 因只有E端口有AD值,因此这里管脚对应E0~E7
// 返回值:12bit的AD值 0~4095
在页面处理中,当接收到扩展板传来的数据时,会自动调用 e1.recvExtend 事件,可以继承该事件完成页面的刷新
void e1.recvExtend(int mode, int bs, int len){
// 回调函数,mode=3表示接收到AD值
//bs: 接收数据bin数组对应的句柄 len:bin数据长度
int ad;
if(mode == 3){
// 显示接收到的AD值
ad=e1.getadc(1); //获取E1端口的AD值
m2.text=m2.text+"[E1:"+ad+"]";
}
}
本事件传入参数mode==3时表示收到IO的AD数据,不同的mode参数对应不同的功能,详细参见recvExtend事件详解
注意:
- 调用本功能前请不要忘记将管脚设置成ADC模式。