http://blog.csdn.net/qwert1213131/article/details/31035403

本文属于个人理解,能力有限,纰漏在所难免。还望指正!

【小鱼有点电】

【Espruino中文社区】

加速度计的应用范围越来越广泛。四轴飞行器、游戏手柄、跌倒检測、振动、倾角检測都会有他的身影,跟其它MEMS配合应用范围更广。Espruino已经提供了数字加速度计ADXL345的基本函数库。仅仅须要简单几句代码就能获取各轴加速度值。

数据手冊在此:点击打开链接

ADXL345支持SPI和I2C接口,本次实验使用I2C接口,也就是说须要2跟线,SDA(B6)和SCL(B7),须要注意的是这两条线要上拉4.7K电阻。

首先要依据引脚配置I2C。这里使用的是I2C1,SDA(B6)和SCL(B7):

I2C1.setup({scl:B6, sda:B7});

接着调用ADXL345的库

var accel = require("ADXL345").connect(i2c,cspin,range)

当中,cspin没实用到,range例如以下:

   
0 +/-2 g
1 +/-4 g
2 +/-8 g
3 +/-16 g

默认情况下,加速度计处于待机模式,若要获取数据。须要打开測量模式,设置为true:

accel.measure(true or false)

若要读取到数据,则调用以下的函数,就能得到x、y、z各轴的加速度,单位为g:

accel.read()

实验中通过读取x轴的数据来让3个led分别亮起,示比例如以下,还有视频

I2C1.setup({scl:B6, sda:B7});
var accel = require("ADXL345").connect(I2C1,0,3);
accel.measure(true);
clearInterval();
function led(){
if(accel.read().x<-0.25)
digitalWrite([LED3,LED2,LED1],0b100);
else if(accel.read().x>0.25)
digitalWrite([LED3,LED2,LED1],0b001);
else
digitalWrite([LED3,LED2,LED1],0b010);
}
setInterval(led,200);

【Espruino】NO.12 加速度计演示的更多相关文章

  1. 前端每日实战:12# 视频演示如何用纯 CSS 创作一种文字断开的交互特效

    效果预览 按下右侧的"点击预览"按钮在当前页面预览,点击链接全屏预览. https://codepen.io/zhang-ou/pen/LmjNgL 可交互视频教程 此视频是可以交 ...

  2. CentOS7 配置网卡端口镜像

    背景 最近一直在研究旁路监测,需要设置一个源端口镜像给两个目的端口(分别接两个监测设备),无奈ip-com交换机没配置明白,研究下使用软件实现暂时代替. 环境 发行版.内核.iptables版本信息如 ...

  3. 150个JS特效脚本

    收集了其它一些不太方便归类的JS特效,共150个,供君查阅. 1. simplyScroll simplyScroll这个jQuery插件能够让任意一组元素产生滚动动画效果,可以是自动.手动滚动,水平 ...

  4. HTTP/HTTPS自动加密上网方案

    方案介绍 涉及到的软件 BIND: 一个流行的域名解析服务器,我们可以设置哪些域名需要走加密线路. Stunnel: 使用TLS对tcp协议进行加密,也就是对tcp建立一条加密线路. SNI Prox ...

  5. HQL语句大全

    第 15 章 HQL: Hibernate查询语言 Hibernate配备了一种很强大的查询语言,这样的语言看上去很像SQL.可是不要被语法结构 上的类似所迷惑,HQL是很有意识的被设计为全然面向对象 ...

  6. Bootstrap框架的要点--栅格系统

    不同的公司要求使用框架有所不同,而Bootstrap框架在工作中使用频次较高,其中栅格系统在这一框架中的地位不容小觑,下面我们开始聊聊它吧. 简单介绍: Bootstrap提供了一套响应式.移动设备优 ...

  7. 转:H2 入门

    H2 Database做为轻量级的内嵌数据库,功能十分强大,而且运行时只需要一个jar包即可,下表是官网的描述: 更详细的对比见官网页面: http://www.h2database.com/html ...

  8. Flask 开发| Flaskr 开发内容总结

    Flaskr 开发说明 官方文档 http://flask.pocoo.org/docs/0.12/tutorial/ 演示网站 http://flaskr.it592.com/ 涉及到的内容: 连接 ...

  9. R语言入门(1)-初识R语言

    设置R语言环境为英文环境 其实不设置也行...就是报错提示的内容是中文的话, 会不太好理解.. 1. 首先在用户根目录下cat查看一下, 发现没有.Renviron文件, 这个是R语言的环境配置文件. ...

随机推荐

  1. 自定义ViewGroup实现垂直滚动

    转载请表明出处:http://write.blog.csdn.net/postedit/23692439 一般进入APP都有欢迎界面,基本都是水平滚动的,今天和大家分享一个垂直滚动的例子. 先来看看效 ...

  2. linux如何执行后台进程

    linux直接执行一个过程.电流指令结束后.或者关闭掉shell形成过程将结束. 如何在后台执行的处理 办法1 采用nohup命令,nohup命令本身的意思no hung up他说,他们将不会收到sh ...

  3. 让c#的exe只要被修改就无法运行,支持混淆和数字证书

    原文:让c#的exe只要被修改就无法运行,支持混淆和数字证书 首先用sdk的sn工具或者makecert工具生成公钥和密钥,推荐makecert,做自己的证书,我做了一个受信任的根证书放在受信任的根证 ...

  4. Fuel 5.1安装openstack I版本号环境

    声明:本博客欢迎转载,但请保留原作者信息! 作者:傅斌杰 团队:华为杭州OpenStack团队 Fuel 简单介绍 Fuel是Mirantis公司开发的部署openstack集群工具,主要功能为裸机P ...

  5. c++内存泄漏处理(积累)

    写c++程序时,常常会出现内存泄漏的问题,这里从网上找了一种非常麻烦的方法:假设想找到每一个cpp文件的内存泄漏,都必须在每一个cpp加上例如以下代码: #include <crtdbg.h&g ...

  6. Java String 类的 equals 和 ==

    public class Test_String { public static void main(String[] args) { String a = new String("aa&q ...

  7. JVM的参数详解(转)

    12年毕业到先在处理第一年外这几年纯属于打酱油,当初自学Java然后就出来找工作了,还有第一家面试就通过了挺幸运的 但之后的这段时间一直是处于吃老本的状态.最近心情真的很不好,各种黄老邪!一直处于堕落 ...

  8. 【Espruino】NO.03 从点灯开始

    http://blog.csdn.net/qwert1213131/article/details/26819773 本文属于个人理解,能力有限,纰漏在所难免,还望指正! [小鱼有点电] 点灯程序应该 ...

  9. 【转】Android内存机制分析2——分析APP内存使用情况

    上面一篇文章说了Android应用运行在dalvik里面分配的堆和栈内存区别,以及程序中什么代码会在哪里运行.今天主要是讲解一下Android里面如何分析我们程序内存使用情况.以便后续可以分析我们程序 ...

  10. Java 输出指定编码的字符串

    Java Sting类有个根据byte,字符编码来输出的构造函数.以下为java文档中的解释.public String(byte[] bytes, String charsetName) throw ...