Mbed Cloud Example Project - LPC546xx (Completed Version)
Fork of mbed-cloud-example-lpc546xx by
Bonus_Code_Additions_Accel.txt@10:f30cd412e968, 2018-10-11 (annotated)
- Committer:
- clarkjarvis
- Date:
- Thu Oct 11 18:59:07 2018 +0000
- Revision:
- 10:f30cd412e968
Updated Resource Creation to align with Open Mobile Alliance Registry
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
clarkjarvis | 10:f30cd412e968 | 1 | Bonus Lab Steps |
clarkjarvis | 10:f30cd412e968 | 2 | |
clarkjarvis | 10:f30cd412e968 | 3 | Add the X-Value of the onboard Acceleromter |
clarkjarvis | 10:f30cd412e968 | 4 | Requires importing the MMA8652 library into project |
clarkjarvis | 10:f30cd412e968 | 5 | https://os.mbed.com/components/MMA8652-Accelerometer/ |
clarkjarvis | 10:f30cd412e968 | 6 | |
clarkjarvis | 10:f30cd412e968 | 7 | |
clarkjarvis | 10:f30cd412e968 | 8 | // Include MMA8652 header file |
clarkjarvis | 10:f30cd412e968 | 9 | #include "MMA8652.h" |
clarkjarvis | 10:f30cd412e968 | 10 | |
clarkjarvis | 10:f30cd412e968 | 11 | |
clarkjarvis | 10:f30cd412e968 | 12 | // Create an instantiation of the accelerometer |
clarkjarvis | 10:f30cd412e968 | 13 | MMA8652 acc(P3_23, P3_24); |
clarkjarvis | 10:f30cd412e968 | 14 | |
clarkjarvis | 10:f30cd412e968 | 15 | // Add an empty callback to support the observability of the GET request |
clarkjarvis | 10:f30cd412e968 | 16 | void accel_callback(const M2MBase& object, const NoticationDeliveryStatus status){} |
clarkjarvis | 10:f30cd412e968 | 17 | |
clarkjarvis | 10:f30cd412e968 | 18 | // Add Mbed Cloud Client Resource |
clarkjarvis | 10:f30cd412e968 | 19 | MbedCloudClientResource *accel = mbedClient.create_resource("3313/0/5702", "accel_resource"); // Accelerometer / Instance / X Value |
clarkjarvis | 10:f30cd412e968 | 20 | accel->set_value("0"); |
clarkjarvis | 10:f30cd412e968 | 21 | accel->methods(M2MMethod::GET); |
clarkjarvis | 10:f30cd412e968 | 22 | accel->observable(true); |
clarkjarvis | 10:f30cd412e968 | 23 | accel->attach_notification_callback(accel_callback); |
clarkjarvis | 10:f30cd412e968 | 24 | |
clarkjarvis | 10:f30cd412e968 | 25 | |
clarkjarvis | 10:f30cd412e968 | 26 | // Add local variables to main() to handle storing accelerometer data |
clarkjarvis | 10:f30cd412e968 | 27 | float acc_data[3]; |
clarkjarvis | 10:f30cd412e968 | 28 | char buffer[10]; |
clarkjarvis | 10:f30cd412e968 | 29 | |
clarkjarvis | 10:f30cd412e968 | 30 | |
clarkjarvis | 10:f30cd412e968 | 31 | // Add code to main while loop to periodically read and set accelerometer data |
clarkjarvis | 10:f30cd412e968 | 32 | acc.ReadXYZ(acc_data); |
clarkjarvis | 10:f30cd412e968 | 33 | int size = snprintf(buffer,10,"%1.4f",acc_data[0]); |
clarkjarvis | 10:f30cd412e968 | 34 | accel->set_value(buffer); |