Files
Upsilon/ion/include/ion.h
Romain Goyet 7b575a204b Merge changes I4d59900f,Ifd3d4c6b,I485bd67f,Ib2dd1d91,I29085da3, ...
* changes:
  [ion/device] Fix building console.o
  [apps/hwtest] Add CHARGE and KEYBOARD commands to lowlevel test
  [apps/hwtest] Proper MCU_SERIAL command
  [ion] Add a Ion::serialNumber function
  [apps/hwtest] Add ADC and BACKLIGHT commands to the lowlevel test
  [ion/device] Use the proper ADC channel
  [ion] Add a console facility
  [apps/hwtest] Blink the LED from the lowlevel test
  [apps/hwtest] The lowlevel test uses the UART
  [ion/device] Add USART register
  [apps] Add a lowlevel test app
  [ion/device] Add SPI registers
2017-03-07 10:15:55 +01:00

45 lines
1.0 KiB
C++

#ifndef ION_ION_H
#define ION_ION_H
#include <ion/backlight.h>
#include <ion/battery.h>
#include <ion/charset.h>
#include <ion/console.h>
#include <ion/display.h>
#include <ion/events.h>
#include <ion/keyboard.h>
#include <ion/led.h>
#include <ion/log.h>
#include <ion/power.h>
#include <stdint.h>
#include <string.h>
/* ION is not your regular library. It is a library you link against, but it
* will take care of configuring the whole environment for you. In POSIX terms,
* ION will implement the "main" function.
* Don't worry though, once all its initialization will be performed, ION will
* jump to your code at ion_app, which you have to implement yourself. */
void ion_app();
namespace Ion {
void msleep(long ms);
void usleep(long us);
const char * serialNumber();
/* CAUTION: This is a complete reset! */
void reset();
// CRC32 : non xor-ed, non reversed, direct, polynomial 4C11DB7
// Only accepts whole 32bit values
uint32_t crc32(const uint32_t * data, size_t length);
// Provides a true random number
uint32_t random();
}
#endif