Hello world program for I2C Accelerometer

Dependencies:   MMA8491 mbed

Committer:
AswinSivakumar
Date:
Mon Apr 24 19:01:35 2017 +0000
Revision:
1:536cdd7e80c0
Parent:
0:96ca5855e9d3
updated

Who changed what in which revision?

UserRevisionLine numberNew contents of line
AswinSivakumar 1:536cdd7e80c0 1 /*
AswinSivakumar 1:536cdd7e80c0 2 * Copyright (c) 2015 - 2016, Freescale Semiconductor, Inc.
AswinSivakumar 1:536cdd7e80c0 3 * Copyright 2016-2017 NXP
AswinSivakumar 1:536cdd7e80c0 4 *
AswinSivakumar 1:536cdd7e80c0 5 * Redistribution and use in source and binary forms, with or without modification,
AswinSivakumar 1:536cdd7e80c0 6 * are permitted provided that the following conditions are met:
AswinSivakumar 1:536cdd7e80c0 7 *
AswinSivakumar 1:536cdd7e80c0 8 * o Redistributions of source code must retain the above copyright notice, this list
AswinSivakumar 1:536cdd7e80c0 9 * of conditions and the following disclaimer.
AswinSivakumar 1:536cdd7e80c0 10 *
AswinSivakumar 1:536cdd7e80c0 11 * o Redistributions in binary form must reproduce the above copyright notice, this
AswinSivakumar 1:536cdd7e80c0 12 * list of conditions and the following disclaimer in the documentation and/or
AswinSivakumar 1:536cdd7e80c0 13 * other materials provided with the distribution.
AswinSivakumar 1:536cdd7e80c0 14 *
AswinSivakumar 1:536cdd7e80c0 15 * o Neither the name of the copyright holder nor the names of its
AswinSivakumar 1:536cdd7e80c0 16 * contributors may be used to endorse or promote products derived from this
AswinSivakumar 1:536cdd7e80c0 17 * software without specific prior written permission.
AswinSivakumar 1:536cdd7e80c0 18 *
AswinSivakumar 1:536cdd7e80c0 19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
AswinSivakumar 1:536cdd7e80c0 20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
AswinSivakumar 1:536cdd7e80c0 21 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
AswinSivakumar 1:536cdd7e80c0 22 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
AswinSivakumar 1:536cdd7e80c0 23 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
AswinSivakumar 1:536cdd7e80c0 24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
AswinSivakumar 1:536cdd7e80c0 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
AswinSivakumar 1:536cdd7e80c0 26 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
AswinSivakumar 1:536cdd7e80c0 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
AswinSivakumar 1:536cdd7e80c0 28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
AswinSivakumar 1:536cdd7e80c0 29 */
AswinSivakumar 0:96ca5855e9d3 30 #include "MMA8491.h"
AswinSivakumar 0:96ca5855e9d3 31 #include "mbed.h"
AswinSivakumar 0:96ca5855e9d3 32
AswinSivakumar 0:96ca5855e9d3 33 // Initialize Serial port
AswinSivakumar 0:96ca5855e9d3 34 Serial pc(USBTX, USBRX);
AswinSivakumar 0:96ca5855e9d3 35
AswinSivakumar 0:96ca5855e9d3 36 // Initialize pins for I2C communication for sensors. Set jumpers J6,J7 in FRDM-STBC-AGM01 board accordingly.
AswinSivakumar 0:96ca5855e9d3 37 MMA8491 accel(D14,D15,PTB1);
AswinSivakumar 0:96ca5855e9d3 38
AswinSivakumar 0:96ca5855e9d3 39
AswinSivakumar 0:96ca5855e9d3 40
AswinSivakumar 0:96ca5855e9d3 41
AswinSivakumar 0:96ca5855e9d3 42 int main()
AswinSivakumar 0:96ca5855e9d3 43 {
AswinSivakumar 0:96ca5855e9d3 44
AswinSivakumar 0:96ca5855e9d3 45
AswinSivakumar 0:96ca5855e9d3 46 float accel_data[3]; float accel_rms=0.0;
AswinSivakumar 0:96ca5855e9d3 47
AswinSivakumar 0:96ca5855e9d3 48 printf("Begin Data Acquisition....\r\n\r\n");
AswinSivakumar 0:96ca5855e9d3 49 wait(0.5);
AswinSivakumar 0:96ca5855e9d3 50
AswinSivakumar 0:96ca5855e9d3 51 while(1)
AswinSivakumar 0:96ca5855e9d3 52 {
AswinSivakumar 0:96ca5855e9d3 53 accel.acquire_MMA8491_data_g(accel_data);
AswinSivakumar 0:96ca5855e9d3 54 accel_rms = sqrt(((accel_data[0]*accel_data[0])+(accel_data[1]*accel_data[1])+(accel_data[2]*accel_data[2]))/3);
AswinSivakumar 0:96ca5855e9d3 55 printf("%4.2f,%4.2f,%4.2f,\t",accel_data[0],accel_data[1],accel_data[2]);
AswinSivakumar 0:96ca5855e9d3 56 wait(0.005);
AswinSivakumar 0:96ca5855e9d3 57
AswinSivakumar 0:96ca5855e9d3 58 printf("\n\r");
AswinSivakumar 0:96ca5855e9d3 59
AswinSivakumar 0:96ca5855e9d3 60
AswinSivakumar 0:96ca5855e9d3 61
AswinSivakumar 0:96ca5855e9d3 62 }
AswinSivakumar 0:96ca5855e9d3 63
AswinSivakumar 0:96ca5855e9d3 64 }