STM32: Timer: Added XOR Ch1-3 option to configureInputChannel

This is only valid when configuring channel 1 and affects the
TIM_CR2_TI1S bit.
This featur was added without breaking the API by setting
xor_ch1_3 to a default value of false.
STM32: GP/AF Timer: Added Master Mode Setting

For the advanced timer, master mode2 defines need to be
finished.
STM32: AdvancedTimer: Added Capture/Compare Preloaded Control

This could also be added for some general purpose timer that
also support it.
STM32: TimerBase: added OutputComparePolarity enum
STM32: TimerBase: Added new Output Compare Modes

OUTPUT_ACTIVE
OUTPUT_INACTIVE
OUTPUT_TOGGLE
OUTPUT_FOREC_INACTIVE
OUTPUT_FOREC_ACTIVE
STM32: AdvancedTimer: added more low level configureOutput method
STM32: AdvancedTimer: configureOutputChannel with quadruple

The "outputPorts quadruple" is a uint that contains four bits that
describe the itnended output setting:
Bit0: Output Enabled/Disabled
Bit1: Output Polarity
Bit2: Complementary Output Enable/Disable
Bit3: Complementary Output Polarity
STM32: AdvancedTimer: Changed to mode/output combined uint

The "mode/output" uint contains four bits
that describe the intended output setting:
Bit0: Output Enabled/Disabled
Bit1: Output Polarity
Bit2: Complementary Output Enable/Disable
Bit3: Complementary Output Polarity

As well as Mode Information (Bit6-Bit4)
which is just an OutputCompareMode constant ored with the
port output quadruple specified above.

Conflicts:
	src/xpcc/architecture/platform/cortex_m3/stm32/timer/advanced.cpp.in
	src/xpcc/architecture/platform/cortex_m3/stm32/timer/advanced.hpp.in
STM32: AdvancedTimer: setAutomaticUpdate and setOffState implemented
STM32: AdvancedTimer: complimentary channels and dead time generation working
STM32: AdvancedTimer: More Advanced Set Prescaler Method
STM32: AdvancedTimer: Preload Control for Output Channel
STM32: AdvancedTimer: setOutputIdleState
STM32: AdvancedTimer: configureOutputChannel fast method now does not touch the preload settings
STM32: AdvancedTimer: added generateEvent method

TODO: Add generateEvent method for General Purpose Timers.
STM32: GPTimer: TRIGGER_TI1_EDGE_DETECTOR available on TIM2-TIM5

Refere to STM32F4 Reference Manual on page 459
Refere to STM32F3 Reference Manual on page 493

Let's hope this is also true for STM32F2/F1 series...
STM32: GPTimer: Added output enable flag to configureOutputChannel

Sometimes you need to configure an output without actually
drving the pin.
The default value of this new flag ist true, so this does not
break the API. However it is quite a hack especially since it was
only implemented for General Purpose timers and should also
be available on other timer types....

So the timer API needs some reworking...
STM32: GPTimer: added option for One Shot Mode to set mode

defaults to false
Examples: Added STM32F3Discovery Timer example
STM32F3: Example: Timer: Now with center aligned PWM