LED点灯测试
先从最简单的开始,经典的Hello World。
放了一个Interval,一个RGB LED,通过Toggle RedLED 事件可以让套件左上角的RGB LED周期红色亮灭,但是屏幕是空白的。
下面在屏幕上加点内容,加个Text Page,修改一下标题和标签,连到RGB LED上。
这次屏幕上有东西了。
到这一步为止非常简单,就放一下控件,修改一下属性,功能就完成了。
下面想让屏幕内容也动起来,试着取出RGB LED的状态,显示到屏幕上。直接查看LED到Text Page的连接属性,好像没有这样的属性。试试Type Convension、Function都无效,似乎触发机制不对?这里暂时没搞明白,还得看文档。
哪位同学知道原因给指点一下,多谢了。
读取传感器
套件里面集成了那么都传感器,读取一下试试。先从最简单的温度开始吧:
温度数据直接输出给Text Page:
Text Page挺聪明,直接把温度传感器的输出给显示出来了。
不过显示格式不是太理想,还缺少类别、单位,加个function转换一下:
把温度转换为整数,前面加上温度标签“TEMP”,后面加上单位“℃”,不过好像没有这个符号,就用个C代替吧:
再换个复杂点的,来个3轴陀螺仪:
没问题,3个坐标的值都给显示出来了。啊,忘加页面标题了。
换3轴加速度计试试……怎么页面右边控件区找不到加速度计?
试着点击下面“Add Element”,弹出一个“Element/Library Manager”:
选中FXOS8700,确定,控件区就有了3轴加速度、磁力计:
在页面上加上FXOS8700,连接到Text Page,再把Interval时间改短一点,让数值刷新更快一点:
套件平面朝上,平放在桌子上,显示前两个数(x,y?)为接近0,而第3个数(z?)为-0.98,应该是屏幕朝向为z轴正方向。
把套件向左旋转90度立起来,第一个数(x)变为了0.998,屏幕向后倾斜约45度,x和z变为了0.7左右:
磁力计测试:
记得FXOS8700同时包含3轴加速度和3轴磁力计,原以为屏幕上会同时出现6组数字,实际只有加速度计。点击查看IDE中FXOS8700控件的属性,从Interval触发的Event为Get Accelerometer Data, 修改为Get Magnetometer Data,FXOS8700输出也改为Magnetometer Data, Text Page 标题也相应修改一下,再次编译、下载。不知是网络还是服务器原因,编译过程感觉用时越来越长,耐心等待了一分左右钟,出现了编译成功的提示。
准备了一张比较高大上的方位图,试试磁力计的准确性
把套件屏幕朝上放在桌面上,以屏幕顶端指向为准,朝北和南时x约为0,y分别为负和正的最大值,朝东和西时x分别为负和正的最大值,y基本为0。z一直保持在14左右。
不知是办公桌上电器太多,还是楼下变电室的影响,再或者有什么神秘力量影响?3轴罗盘测出来的方位和我的乾坤八卦图有点对不上
一定是有什么妖魔鬼怪在捣乱,看我稀土仙丹镇住妖邪!在周围转了一圈,罗盘的读数彻底乱套了
蜂鸣器测试
还是利用3轴磁力计,加上蜂鸣器,用磁力计读数来控制蜂鸣器。
加个判断器,用x轴坐标值作条件,达到某一值了就打开蜂鸣器,不符合就关闭,免得老响。实测得两个判断器,一个负责开,一个负责关。
好了,一个“寻宝神器”诞生了,找不着北时可以用
感想
NXP Rapid Studio 这个Web IDE功能还是比较强的,基本不用写代码就可以完成很多功能,只是熟悉了写代码,一些复杂点的功能感觉不如直接用代码直接,好在Web IDE也提供了源代码编辑功能,而最终项目生成的还是C代码。只是这个atmosphere iot IDE的文档资料有点缺少,把官方网站翻了一遍,也只有有限的一点手册资料,很多功能还得自己摸索。
此内容由EEWORLD论坛网友jf8loo原创,如需转载或用于商业用途需征得作者同意并注明出处