Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MMA8451Q USBDevice mbed
main_lab1.cpp@0:22a7d22635fa, 2014-05-12 (annotated)
- Committer:
- mdestroyer
- Date:
- Mon May 12 12:14:48 2014 +0000
- Revision:
- 0:22a7d22635fa
Spremenil ime lab1 v lab2
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| mdestroyer | 0:22a7d22635fa | 1 | //USB Academy - Lab1 rev 01 |
| mdestroyer | 0:22a7d22635fa | 2 | //_____________________________________________________________// |
| mdestroyer | 0:22a7d22635fa | 3 | //======== INCLUDES ===========================================// |
| mdestroyer | 0:22a7d22635fa | 4 | //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯// |
| mdestroyer | 0:22a7d22635fa | 5 | #include "mbed.h" |
| mdestroyer | 0:22a7d22635fa | 6 | #include "USBSerial.h" |
| mdestroyer | 0:22a7d22635fa | 7 | #include "MMA8451Q.h" |
| mdestroyer | 0:22a7d22635fa | 8 | |
| mdestroyer | 0:22a7d22635fa | 9 | //_____________________________________________________________// |
| mdestroyer | 0:22a7d22635fa | 10 | //======== DEFINES & VARIABLES ================================// |
| mdestroyer | 0:22a7d22635fa | 11 | //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯// |
| mdestroyer | 0:22a7d22635fa | 12 | USBSerial serial; |
| mdestroyer | 0:22a7d22635fa | 13 | |
| mdestroyer | 0:22a7d22635fa | 14 | #define MMA8451_I2C_ADDRESS (0x1d<<1) |
| mdestroyer | 0:22a7d22635fa | 15 | MMA8451Q acc(PTE25, PTE24, MMA8451_I2C_ADDRESS); |
| mdestroyer | 0:22a7d22635fa | 16 | |
| mdestroyer | 0:22a7d22635fa | 17 | DigitalIn sw1(PTC3); // switch SW1 |
| mdestroyer | 0:22a7d22635fa | 18 | DigitalIn sw3(PTC12); // switch SW2 |
| mdestroyer | 0:22a7d22635fa | 19 | |
| mdestroyer | 0:22a7d22635fa | 20 | #define ON 0 //switch "ON" detection; LED "ON" state |
| mdestroyer | 0:22a7d22635fa | 21 | #define OFF 1 //switch "OFF" detection; LED "OFF" state |
| mdestroyer | 0:22a7d22635fa | 22 | |
| mdestroyer | 0:22a7d22635fa | 23 | //======== Data Structure ====================================// |
| mdestroyer | 0:22a7d22635fa | 24 | struct KL46_SENSOR_DATA { |
| mdestroyer | 0:22a7d22635fa | 25 | int sw1State; |
| mdestroyer | 0:22a7d22635fa | 26 | int sw3State; |
| mdestroyer | 0:22a7d22635fa | 27 | float accValX; |
| mdestroyer | 0:22a7d22635fa | 28 | float accValY; |
| mdestroyer | 0:22a7d22635fa | 29 | float accValZ; |
| mdestroyer | 0:22a7d22635fa | 30 | } sensorData; |
| mdestroyer | 0:22a7d22635fa | 31 | #define sD sensorData |
| mdestroyer | 0:22a7d22635fa | 32 | |
| mdestroyer | 0:22a7d22635fa | 33 | //_____________________________________________________________// |
| mdestroyer | 0:22a7d22635fa | 34 | //======== MAIN() =============================================// |
| mdestroyer | 0:22a7d22635fa | 35 | //¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯// |
| mdestroyer | 0:22a7d22635fa | 36 | int main(void) |
| mdestroyer | 0:22a7d22635fa | 37 | { |
| mdestroyer | 0:22a7d22635fa | 38 | //====== MAIN/Initialisation ================================// |
| mdestroyer | 0:22a7d22635fa | 39 | |
| mdestroyer | 0:22a7d22635fa | 40 | sw1.mode(PullUp); sw3.mode(PullUp); |
| mdestroyer | 0:22a7d22635fa | 41 | |
| mdestroyer | 0:22a7d22635fa | 42 | while (1) |
| mdestroyer | 0:22a7d22635fa | 43 | { |
| mdestroyer | 0:22a7d22635fa | 44 | //====== MAIN/While loop/Sensing data =====================// |
| mdestroyer | 0:22a7d22635fa | 45 | |
| mdestroyer | 0:22a7d22635fa | 46 | sD.sw1State = sw1; |
| mdestroyer | 0:22a7d22635fa | 47 | sD.sw3State = sw3; |
| mdestroyer | 0:22a7d22635fa | 48 | sD.accValX = acc.getAccX(); //accX[-1..1] |
| mdestroyer | 0:22a7d22635fa | 49 | sD.accValY = acc.getAccY(); //accY[-1..1] |
| mdestroyer | 0:22a7d22635fa | 50 | sD.accValZ = acc.getAccZ(); //accZ[-1..1] |
| mdestroyer | 0:22a7d22635fa | 51 | |
| mdestroyer | 0:22a7d22635fa | 52 | //====== MAIN/While loop/Data sending =====================// |
| mdestroyer | 0:22a7d22635fa | 53 | |
| mdestroyer | 0:22a7d22635fa | 54 | |
| mdestroyer | 0:22a7d22635fa | 55 | wait(0.05); // wait 50ms |
| mdestroyer | 0:22a7d22635fa | 56 | } |
| mdestroyer | 0:22a7d22635fa | 57 | } |