首页 > 评测 > 带你玩转物联网——机智云IOT KIT评测
带你玩转物联网——机智云IOT KIT评测
- [导读]
- 说起国内智能硬件厂商,避不开机智云。机智云可以说是国内最早一批做智能硬件云服务的团队。而今天评测的就是机智云 的IOTKIT 开发板套装。
{
Motor_Control(status*4,0);
}
else if (status < 5)
{
Motor_Control(0,(10-status)*4);
}
}
通过听声音能够分辨出各个不同档位的不同的电机运转声音,电机控制和调整完毕,工作正常。
但本人LED 调节的功能出现异常,无法正常调节!通过查对电路,发现电路板的电路和手册给出的电路图相同,最终找到LED 的三极管控制开关的信号来自 A0,也即单片机的PA0 控制 (高电平有效)。
查代码,LED 的控制是由函数 LED_RGB_Control() 完成,并由变量Set_LedStatus表征LED 开关。发现初始化代码void RGB_LED_Init(void) 中并没有初始化 PA0,于是先加上初始化 PA0;并置高电平。发现还有设置不了颜色的情况,于是在函数void LED_RGB_Control(uint8_t R, uint8_t G, uint8_t B) 中增加 Set_LedStatus = 0; // 清除设置标志
大体能够控制三色LED 灯。
怀疑开发板例程不该犯上面的错误!今天在资料包里看到了关于新板的固件代码,特意查了一下,原来在 GoKit 的背面有个V2.3,正好跟新固件里说明的版本一致。看资料还是不够仔细呀!嗯,决定再改用新固件来再测试一下。
编译更新固件,打开客户端软件,控制正常,唯有红外探测没有反应。
试着修改代码,在main.C 的函数void GizWits_GatherSensorData(void)里增加:
ReadTypeDef.Infrared = IR_Handle();
编译更新固件,打开客户端软件,当红外探测指示灯变化时,客户端的红外探测状态跟着变化了。
固件修改测试
参考手册关于程序中添加和删除应用的方法 (以新固件为基础)。
先设置一个控制量。拟一个控制量控制 STUNO 板的4个LED灯。
具体修改:在文件gokit.h内修改结构体定义:
在结构体ReadTypeDef_t 中增加 uint8_t UNO_LED;
在结构体WirteTypeDef_t 最后增加 uint8_t UNO_LED;
在枚举 Attr_FlagsTypeDef 最后增加 SetUNO_LED = 0x40,
在main.c 的函数void GizWits_ControlDeviceHandle() 里添加
if( (WirteTypeDef.Attr_Flags & SetUNO_LED) == SetUNO_LED) {
SetUno_LED(WirteTypeDef.UNO_LED);
}
在函数 void GizWits_GatherSensorData(void) 里添加
ReadTypeDef.UNO_LED = GetUno_LED();
在Hal_led.c 里添加宏定义和函数以便于上面的函数调用
编译更新固件,打开客户端软件,原有的都控制正常,但不见新增加的 Uno_LED 控制。莫非需要再修改这个IOE Demo app才能实现?
打开IOE Demo,发现app里显示和控制的变量来自于类JSONObject,但是没有找到它的定义。看来还不容易修改客户端软件,那就测试到这里,等后面进一步学习吧。
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
RAK831 Lite:基于树莓派3的LoRa网关... 2022-06-17
-
Imagination推出PowerVR AX2185和AX2145神经... 2022-06-17
-
ODROID-GO是一款兼容Arduino的基于ESP32的便... 2022-06-17
- PID温度控制器
预算:¥700003天前
- 摄像头的可视画面需要一直超上(linux系统,ARM)
预算:¥1000018小时前
- DICOM协议搭建(ARM架构,linux系统)
预算:¥1000017小时前
- 需MIPI摄像头隔离电路,实现3-4米能长距离
预算:¥1000017小时前
- 膨宫仪的控制板,控制流量和检测压力
预算:¥1000016分钟前
- 无创自动测量血压计 NIBP模块
预算:¥100007小时前