2012-08-23 21:44:39 -03:00
|
|
|
// -*- Mode: C++; c-basic-offset: 8; indent-tabs-mode: nil -*-
|
|
|
|
|
|
|
|
//
|
|
|
|
// Example code for the AP_HAL AVRUARTDriver, based on FastSerial
|
|
|
|
//
|
|
|
|
// This code is placed into the public domain.
|
|
|
|
//
|
|
|
|
|
|
|
|
#include <AP_Common.h>
|
2012-12-11 20:23:02 -04:00
|
|
|
#include <AP_Math.h>
|
|
|
|
#include <AP_Param.h>
|
2012-10-27 00:55:17 -03:00
|
|
|
#include <AP_Progmem.h>
|
2012-12-11 20:23:02 -04:00
|
|
|
|
2012-08-23 21:44:39 -03:00
|
|
|
#include <AP_HAL.h>
|
|
|
|
#include <AP_HAL_AVR.h>
|
|
|
|
|
2012-12-11 20:23:02 -04:00
|
|
|
#if CONFIG_HAL_BOARD == HAL_BOARD_APM2
|
|
|
|
const AP_HAL::HAL& hal = AP_HAL_AVR_APM2;
|
|
|
|
#elif CONFIG_HAL_BOARD == HAL_BOARD_APM1
|
2012-08-23 21:44:39 -03:00
|
|
|
const AP_HAL::HAL& hal = AP_HAL_AVR_APM1;
|
2012-12-11 20:23:02 -04:00
|
|
|
#endif
|
2012-08-23 21:44:39 -03:00
|
|
|
|
|
|
|
void setup(void)
|
|
|
|
{
|
|
|
|
//
|
2012-10-11 14:52:52 -03:00
|
|
|
// HAL will start serial port at 115200.
|
2012-08-23 21:44:39 -03:00
|
|
|
//
|
2012-10-11 14:52:52 -03:00
|
|
|
|
2012-08-23 21:44:39 -03:00
|
|
|
//
|
|
|
|
// Test printing things
|
|
|
|
//
|
2012-10-26 21:26:19 -03:00
|
|
|
hal.console->print("test");
|
|
|
|
hal.console->println(" begin");
|
|
|
|
hal.console->println(1000);
|
|
|
|
hal.console->println(1000, 8);
|
|
|
|
hal.console->println(1000, 10);
|
|
|
|
hal.console->println(1000, 16);
|
|
|
|
hal.console->println_P(PSTR("progmem"));
|
2012-12-18 20:17:51 -04:00
|
|
|
int x = 3;
|
|
|
|
int *ptr = &x;
|
|
|
|
hal.console->printf("printf %d %u %#x %p %f %S\n", -1000, 1000, 1000, ptr, 1.2345, PSTR("progmem"));
|
|
|
|
hal.console->printf_P(PSTR("printf_P %d %u %#x %p %f %S\n"), -1000, 1000, 1000, ptr, 1.2345, PSTR("progmem"));
|
2012-10-26 21:26:19 -03:00
|
|
|
hal.console->println("done");
|
2012-08-23 21:44:39 -03:00
|
|
|
}
|
|
|
|
|
|
|
|
void loop(void)
|
|
|
|
{
|
|
|
|
int c;
|
|
|
|
//
|
|
|
|
// Perform a simple loopback operation.
|
|
|
|
//
|
2012-10-26 21:29:11 -03:00
|
|
|
c = hal.console->read();
|
2012-08-23 21:44:39 -03:00
|
|
|
if (-1 != c)
|
2012-10-26 21:29:11 -03:00
|
|
|
hal.console->write(c);
|
2012-08-23 21:44:39 -03:00
|
|
|
}
|
|
|
|
|
2012-12-03 20:25:11 -04:00
|
|
|
AP_HAL_MAIN();
|