设为首页收藏labplus社区产品资料库
1482
积分值+2
520
掌控币+1
0  关注
125  粉丝
160  帖子
论坛小助手
2019年03月13日

#基础使用#掌控板之水平仪

通过掌控板x、y轴加速度计,制作一个在OLED屏显示上下左右滚动的点,这个点不会超出外面的圆。如果掌控板不是平行放置,圆中间的点就不会在正中心。从而实现水平仪的效果。

效果图:


在写程序前,我们需要先了解X 、Y、Z轴加速度到底是什么

X 、Y、Z轴方向:

X - 向前和向后倾斜

Y - 向左和向右倾斜

Z - 上下翻转


       掌控板的加速度传感器能够测量由于重力引起的加速度,传感器在加速过程中,通过对质量块所受惯性力的测量,利用牛顿第二定律获得加速度值。掌控板上的加速度计可测量加速度,测量范围为-2g 至 +2g 之间。

       掌控板的测量沿3个轴,每个轴的测量值是正数或负数,正轴越趋近重力加速度方向,其数值往正数方向增加,反之往负数方向减小,当读数为 0 时,表示沿着该特定轴“水平”放置。当检测到掌控板在X轴和Y轴方向倾斜时则范围是-1g 至+1g,而我们可以利用这一特性制作“水平仪”。

与案例程序相关的图形化模块指令

描述: 熄灭所有屏幕像素点


描述: 将缓存发送至OLED显示


描述: 绘制空心圆

参数:

x、y-空心圆中心点的坐标

半径-圆的半径值


描述: 绘制点

参数:

x、y-点的坐标

为-亮或灭


描述:从传感器的模拟值取值范围映射为自己需要的取值范围

参数:

映射-需要改变的取值范围的传感器

从-传感器原本的取值范围

到-传感器改变后的取值范围


描述:OLED屏幕是128*64像素,OLED屏长为X轴,宽为Y轴。可以画一个圆,半径为31像素,让“点”不会超出这个范围,确定点的位置用加速度X、Y轴。

加速度Y轴倾斜的值是范围1至-1,向左倾斜往1增大,向右倾斜往-1增大。通过映射把Y轴加速度的取值范围变为32至92,可以让Y轴加速度的值在OLED屏幕的中心点显示位置。

加速度X轴倾斜的值是范围-1至1,向前倾斜往-1增大,向后倾斜往1增大。通过映射把Y轴加速度的取值范围变为2至62。可以让X轴加速度的值在OLED屏幕的中心点显示位置。

映射的值有小数点,OLED屏幕是无法识别小数点的,需要将映射后的值以整型输出。


思维导图:


图形化代码示例:


0

点赞

782 次阅读