eBoard 🐉  ①⑧⑨
Written for SIA 2017/2018
eBoard.h File Reference
#include <avr/pgmspace.h>
#include "Arduino.h"
#include "source/eagle_Comfort.h"
#include <avr/io.h>
#include <avr/interrupt.h>
#include "source/eagle_Twi.h"
#include "source/eagle_TwoWire.h"
#include "source/eagle_SPI.h"
#include <avr/wdt.h>
#include "source/eagle_SoftwareSerial.h"
#include "source/eagle_Assert.h"
#include "source/eagle_Checks.h"
#include "source/eagle_NanoMot.h"
+ Include dependency graph for eBoard.h:

Go to the source code of this file.

Namespaces

 eagle_impl
 this namespace contains all the Don't use manually classes ;)
 

Macros

#define EBOARD_VERSION   "3.1.17m"
 
#define EBOARD_VERSION_NBR   327
 
#define PREPROCESS_DEBUG   1
 
#define ARDUINO   200
 
#define EBOARD_I2C   0x1
 
#define EBOARD_LCD   0x1
 
#define EBOARD_SHIFT_REGISTER   0x1
 
#define EBOARD_BLUETOOTH   0x1
 
#define REPT_TASK
 
#define __AVR_ATmega2560__
 
#define __AVR_ATmega328P__
 
#define EBOARD_NEO   0x1
 
#define HIGHSPEED
 
#define __AVR__
 ignore me ;) More...
 
#define EBOARD_GUESSPATH   0x1
 
#define main   eVirtual_main
 
#define PIN_MAX   0x32
 
#define twi_h
 
#define EBOARD_USE_SPI   0x1
 
#define _SPI_H_INCLUDED
 
#define EBOARD_DEBUG_MODE   0x1
 
#define EBOARD_NANO   0x0
 
#define EBOARD_NANO_STEER   12
 
#define EBOARD_NANO_MAIN   13
 
#define EBOARD_CHECK_PINS   0x1
 
#define EBOARD_CHECK_PINS_PWM   0x1
 
#define EBOARD_DEBUG_SPEED   9600
 
#define EBOARD_SPI_SERVO_MAX   2
 
#define EBOARD_USE_UTILITY   0x1
 
#define EBOARD_COPY_AND_PASTE   0x1
 
#define EBOARD_PWM_SPE   1
 
#define EBOARD_CLAMP   0x1
 
#define EBOARD_USE_RESET   0x1
 
#define PIN_BLUETOOTH_STATE   0x13
 
#define PIN_BLUETOOTH_RX   0x13
 
#define PIN_BLUETOOTH_TX   0x12
 
#define PIN_MOTOR_DIR   0x4
 
#define PIN_MOTOR_SPE   0x5
 
#define PIN_SHIFT_CLK   0x6
 
#define PIN_SHIFT_DAT   0x7
 
#define PIN_SHIFT_LAT   0x8
 
#define SoftwareSerial_h
 
#define __ASSERT_USE_STDERR
 

Typedefs

typedef int optVAL_t
 

Functions

SoftwareSerial _serial (0x13, 0x12)
 this is the recomenned-to-use _serial object for bluetooth communcation :D More...
 

Variables

static bool STOP = false
 

Detailed Description

EagleoutIce 2018 IF YOU SEE THIS THIS IS THE UNPROCESSED FILE! GO TO 'SOURCE CODE' IN THE DOCS

Definition in file eBoard.h.

Macro Definition Documentation

◆ __ASSERT_USE_STDERR

#define __ASSERT_USE_STDERR
Macro or Constant :
[DEBUG_MODE] enables to use custom assert output

Definition at line 479 of file eBoard.h.

◆ __AVR__

#define __AVR__

ignore me ;)

Definition at line 90 of file eBoard.h.

◆ __AVR_ATmega2560__

#define __AVR_ATmega2560__
Macro or Constant :
This is the Macro that will be defined automatically by the ARUDINO IDE if you compile this program for an ARDUINO MEGA 2560

Definition at line 74 of file eBoard.h.

◆ __AVR_ATmega328P__

#define __AVR_ATmega328P__
Macro or Constant :
This is the Macro that will be defined automatically by the ARUDINO IDE if you compile this program for an ARDUINO UNO R3

Definition at line 78 of file eBoard.h.

◆ _SPI_H_INCLUDED

#define _SPI_H_INCLUDED
Macro or Constant :
the header macro to assure that there is a SPIClass available

Definition at line 170 of file eBoard.h.

◆ ARDUINO

#define ARDUINO   200

Definition at line 49 of file eBoard.h.

◆ EBOARD_BLUETOOTH

#define EBOARD_BLUETOOTH   0x1
Macro or Constant :
This will appear as 0x1 in the docs but the real default value is 0x0

Definition at line 66 of file eBoard.h.

◆ EBOARD_CHECK_PINS

#define EBOARD_CHECK_PINS   0x1
Macro or Constant :
this is a copy and paste guard to check if the pins used are still in Bound... it was designed for digital pins and shouldnt be disabled

Definition at line 244 of file eBoard.h.

◆ EBOARD_CHECK_PINS_PWM

#define EBOARD_CHECK_PINS_PWM   0x1
Macro or Constant :
this should be disabled when reaching RELEASED-state. This will check if an PWM-controlled pin is really capable of HPWM ^^

Definition at line 270 of file eBoard.h.

◆ EBOARD_CLAMP

#define EBOARD_CLAMP   0x1
Macro or Constant :
set this to 0x0 to disable clamp

Definition at line 349 of file eBoard.h.

◆ EBOARD_COPY_AND_PASTE

#define EBOARD_COPY_AND_PASTE   0x1
Macro or Constant :
unable to disable

Definition at line 314 of file eBoard.h.

◆ EBOARD_DEBUG_MODE

#define EBOARD_DEBUG_MODE   0x1
Macro or Constant :
you should definitly set EBOARD_DEBUG_MODE to 0x0 when completed developing. This will shrink the size of the program :D

Definition at line 203 of file eBoard.h.

◆ EBOARD_DEBUG_SPEED

#define EBOARD_DEBUG_SPEED   9600
Macro or Constant :
this sets the speed of the Serial connection.... you probably don't need to change this

Definition at line 283 of file eBoard.h.

◆ EBOARD_GUESSPATH

#define EBOARD_GUESSPATH   0x1
Macro or Constant :
If this is set to 0x1 the library will guess the paths of included libraries based on your operating system

Definition at line 107 of file eBoard.h.

◆ EBOARD_I2C

#define EBOARD_I2C   0x1
Macro or Constant :
This will appear as 0x1 in the docs but the real default value is 0x0

Definition at line 53 of file eBoard.h.

◆ EBOARD_LCD

#define EBOARD_LCD   0x1
Macro or Constant :
This will appear as 0x1 in the docs but the real default value is 0x0 This will enable the support for the OLED I²C 128x64 Monochrome display

Definition at line 58 of file eBoard.h.

◆ EBOARD_NANO

#define EBOARD_NANO   0x0
Macro or Constant :
this will disable soccerBoard class DynamixelBoard etc!

Definition at line 215 of file eBoard.h.

◆ EBOARD_NANO_MAIN

#define EBOARD_NANO_MAIN   13
Macro or Constant :
Data pin of the main Motor

Definition at line 229 of file eBoard.h.

◆ EBOARD_NANO_STEER

#define EBOARD_NANO_STEER   12
Macro or Constant :
Data pin of the steering Motor

Definition at line 223 of file eBoard.h.

◆ EBOARD_NEO

#define EBOARD_NEO   0x1
Macro or Constant :
This will appear as 0x1 in the docs but the real default value is 0x0

Definition at line 82 of file eBoard.h.

◆ EBOARD_PWM_SPE

#define EBOARD_PWM_SPE   1
Macro or Constant :
duty cycle for async task execution... should be higher than 1

Definition at line 319 of file eBoard.h.

◆ EBOARD_SHIFT_REGISTER

#define EBOARD_SHIFT_REGISTER   0x1
Macro or Constant :
This will appear as 0x1 in the docs but the real default value is 0x0

Definition at line 62 of file eBoard.h.

◆ EBOARD_SPI_SERVO_MAX

#define EBOARD_SPI_SERVO_MAX   2
Macro or Constant :
this sets the amount of connected servos to the shield

Definition at line 294 of file eBoard.h.

◆ EBOARD_USE_RESET

#define EBOARD_USE_RESET   0x1
Macro or Constant :
set this to 0x0 to disable software reset

Definition at line 373 of file eBoard.h.

◆ EBOARD_USE_SPI

#define EBOARD_USE_SPI   0x1
Macro or Constant :
this has to be enabled to use the shield

Definition at line 163 of file eBoard.h.

◆ EBOARD_USE_UTILITY

#define EBOARD_USE_UTILITY   0x1
Macro or Constant :
this will remove multiple wrapper from compile-segment. Probably won't change program size

Definition at line 303 of file eBoard.h.

◆ EBOARD_VERSION

#define EBOARD_VERSION   "3.1.17m"
Macro or Constant :
Defines the Version of the eBoard Header as String

Definition at line 15 of file eBoard.h.

◆ EBOARD_VERSION_NBR

#define EBOARD_VERSION_NBR   327
Macro or Constant :
Defines the Version of the eBoard Header as Number

Definition at line 17 of file eBoard.h.

◆ HIGHSPEED

#define HIGHSPEED
Macro or Constant :
This isn't defined by default. If you define it the LCD will be addressed with 400kHz. This will only work if every connected device supports 400kHz I²C!
Warning
Don't do if you don't know!

Definition at line 88 of file eBoard.h.

◆ main

#define main   eVirtual_main
Macro or Constant :
This is used for copy_and_paste and renames the copied main-method

Definition at line 114 of file eBoard.h.

◆ PIN_BLUETOOTH_RX

#define PIN_BLUETOOTH_RX   0x13
Macro or Constant :
this is the RX-Pin reserved for bluetooth communication

Definition at line 399 of file eBoard.h.

◆ PIN_BLUETOOTH_STATE

#define PIN_BLUETOOTH_STATE   0x13
Macro or Constant :
this is the STATE PIN. If it is equal to the PIN_BLUETOOTH_RX it won't be used!

Definition at line 388 of file eBoard.h.

◆ PIN_BLUETOOTH_TX

#define PIN_BLUETOOTH_TX   0x12
Macro or Constant :
this is the TX-Pin reserved for bluetooth communication

Definition at line 410 of file eBoard.h.

◆ PIN_MAX

#define PIN_MAX   0x32
Macro or Constant :
This defines the Maximum to-address pin. On MEGA its 49 on UNO its 9

Definition at line 133 of file eBoard.h.

◆ PIN_MOTOR_DIR

#define PIN_MOTOR_DIR   0x4
Macro or Constant :
this is the DiOut pin reserved to control the dir of the main motor

Definition at line 420 of file eBoard.h.

◆ PIN_MOTOR_SPE

#define PIN_MOTOR_SPE   0x5
Macro or Constant :
this is the DiOut FAST_PWM [~1kHz] pin reserved to control the dir of the main motor

Definition at line 427 of file eBoard.h.

◆ PIN_SHIFT_CLK

#define PIN_SHIFT_CLK   0x6
Macro or Constant :
this is the clock pin for the SN74HC595

Definition at line 434 of file eBoard.h.

◆ PIN_SHIFT_DAT

#define PIN_SHIFT_DAT   0x7
Macro or Constant :
this is the data pin for the SN74HC595

Definition at line 440 of file eBoard.h.

◆ PIN_SHIFT_LAT

#define PIN_SHIFT_LAT   0x8
Macro or Constant :
this is the latch pin for the SN74HC595

Definition at line 446 of file eBoard.h.

◆ PREPROCESS_DEBUG

#define PREPROCESS_DEBUG   1
Macro or Constant :
determines if there should be preprocessor output from eBoard-headerfile

Definition at line 23 of file eBoard.h.

◆ REPT_TASK

#define REPT_TASK
Macro or Constant :
This constant won't be defined by default :D
This enables you to make use of the async features

Definition at line 70 of file eBoard.h.

◆ SoftwareSerial_h

#define SoftwareSerial_h

Definition at line 463 of file eBoard.h.

◆ twi_h

#define twi_h

Definition at line 145 of file eBoard.h.

Typedef Documentation

◆ optVAL_t

typedef int optVAL_t

Definition at line 196 of file eBoard.h.

Function Documentation

◆ _serial()

SoftwareSerial _serial ( 0x13  ,
0x12   
)

this is the recomenned-to-use _serial object for bluetooth communcation :D

The used pins are based on PIN_BLUETOOTH_RX and PIN_BLUETOOTH_TX

Variable Documentation

◆ STOP

bool STOP = false
static
Macro or Constant :
this will end any loop done by eBoard
Note
you can manipulate this with REPT_TASK
to avoid desync bug this won't stop the nonblocking LCD connection!

Definition at line 186 of file eBoard.h.