MMA7660使用教程

         MMA7660是一个3g-sensor,它主要用于测量倾斜角,惯性力,冲击力及震动

 工作原理:

          mma7660是一种电容式g-sensor.电容式g-sensor大多为欧美厂商,其技术是在wafer的表面做出梳状结构,当产生动作时,由侦测电容差来判断变形量,反推出加速度的值.

       与压阻式不同的是,电容式很难在同一个结构中同时感测到三个轴(X,Y,Z)的变化,通常都是X,YZ分开来的, (这也就是为什么当板子水平放置时,无论如何改变X,Y的位置,都不会有中断产生,因为这时它只能检测Z轴的变化,X,Y的变化它检测不到,只有当我们将板子倾斜一个角度后才能检测X,Y的变化) .而压阻式在同一个结构就能感测到三个轴的变化

工作模式:

        mma7660主要有三种工作模式.(通过设置MODE寄存器

        1).  Standby(待机)模式

              此时只有I2C工作,接收主机来的指令.该模式用来设置寄存器.也就是说,要想改变mma7660的任何一个寄存器的值,必须先进入Standby模式.设置完成后再进入ActiveAuto-Sleep模式.

         2).Active and Auto-Sleep (活动并且Auto-Sleep)模式 

              mma7660的工作状态分两种,一种是高频度采样,一种是低频度采样.为什么这样分呢,为了节省功耗,但是在活动时又保持足够的灵敏度

               所以说mma7660Active模式其实又分两种模式,一种是纯粹的Active模式,即进了Active模式后一直保持高的采样频率,不变.还有一种是Active& Auto-Sleep模式,就是说系统激活后先进入高频率采样,经过一定时间后,如果没检测到有活动,它就进入低频率采样 ,所以就叫做Auto-Sleep, Sleep并不是真的Sleep ,只是说降低采样频率.

低频率采样模式又叫Auto-Wake摸式,即自动唤醒模式.它不是睡眠模式, 它只是降低采样频率. 

        3). Auto-Wake (自动唤醒)模式 

             Auto-Sleep后就进入低频率采样模式,这种模式就叫做Auto-Wake摸式,即自动唤醒模式.它不是睡眠模式,它只是降低采样频率.

 寄存器:


 中断设置:


 摇晃感应的配置:

//ConfigureMMA7660FC as Shake Detection

Write to the MODEregister = 0x00                 //Standby Mode

Write to the SPCNTregister = 0x00                  //Nosleep count

Write to the INTSUregister = 0xE0            //ConfigureShake Interrupt on 3 axes

Write to the PDETregister = 0xE0                 //No tapdetection enabled

Write to the SRregister = 0x02                      //32 samples/s

Write to the PDregister = 0x00                    //Notap detection debounce count enabled

Write to the MODEregister = 0x41            //Active Mode,INT = push-pull and active low

 

//Interrupt serviceroutine

   If (Shake INT occurs)

       REGTILT=Read TILT Register ;          //Read TILT Register value    

       If (Shake =1)                       //Verify “Shake” bit inTILT register

       Shake occurs

更多代码:http://download.csdn.net/detail/markmin214/5192348

转载于:https://www.cnblogs.com/markmin214/archive/2013/03/28/2987960.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值