mirror of
https://github.com/eclipse/upm.git
synced 2025-03-17 22:17:28 +03:00

This commit cleans up multiple items with the UPM C example source. * Switch from usleep and sleep to upm_delay* methods * Include a mraa_init and check return value prior to using sensor * All example mains now return * Added include for mraa.h and upm_utilites.h to all examples * Reformatted/removed tabs * Updated author line for the examples I wrote Signed-off-by: Noel Eck <noel.eck@intel.com>
39 lines
1.0 KiB
C
39 lines
1.0 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
#include <stdlib.h>
|
|
#include <unistd.h>
|
|
#include "m24lr64e.h"
|
|
|
|
#include "upm_utilities.h"
|
|
#include "mraa.h"
|
|
|
|
int main()
|
|
{
|
|
if (mraa_init() != MRAA_SUCCESS)
|
|
{
|
|
perror("Failed to initialize mraa\n");
|
|
return -1;
|
|
}
|
|
|
|
m24lr64e_context dev = m24lr64e_init(0, M24LR64E_USER_MODE);
|
|
int addr = M24LR64E_EEPROM_I2C_LENGTH-1;
|
|
printf("address being accessed: %d\n", addr);
|
|
uint8_t byte;
|
|
if(m24lr64e_read_byte(dev, addr, &byte) != UPM_SUCCESS)
|
|
printf("error while reading value\n");
|
|
printf("value read from the device: %d\n", byte);
|
|
byte = ~byte;
|
|
printf("byte to be written: %d\n", byte);
|
|
if(m24lr64e_write_byte(dev, addr, byte) != UPM_SUCCESS)
|
|
printf("error while writing byte to the device\n");
|
|
uint8_t var;
|
|
if(m24lr64e_read_byte(dev, addr, &var) != UPM_SUCCESS)
|
|
printf("error while reading value back\n");
|
|
printf("new value at %d: %d\n", addr, var);
|
|
m24lr64e_close(dev);
|
|
printf("all done!!\n");
|
|
|
|
return 0;
|
|
}
|