Commit Graph

89 Commits

Author SHA1 Message Date
blckmn b9ebf8f4fd PWM output calculations dynamic based on clock speed 2017-06-28 21:59:42 +10:00
Sean Kelly 5d646717fe Support for BigQuad deck as a CRAZYFLIE2 variant
Supported features in this commit:
- Mag enabled (both CRAZYFLIE2 and CRAZYFLIE2BQ)
- Brushless motors
- ESC passthrough for BLHeli programming
- CPPM Rx input
- VBat sensor
- Current sensor
- GPS Tx/Rx pins enabled
- I2C SDA/SCL enabled as UART1 (SDA = Rx, SCL = Tx)
2017-05-21 07:06:57 -07:00
blckmn 6e596cb252 Mixed one timerClockDivisor 2017-05-15 21:49:09 +10:00
blckmn 0d13736e2f Simplified getting timerClock 2017-05-11 13:17:58 +10:00
Martin Budden 2493c214b0 Created subdirectories in drivers directory 2017-04-12 08:06:22 +01:00
J Blackman 792941606f Initial preparation for cleaning up multiple files per MCU (#2500)
* Initial preparation for cleaning up multiple files per MCU

* Combined DSHOT for F3 and F4 (F7 todo)

* Build fixes (mixed some adjustments needed in transponder_ir.c)

* Fix F7 warnings/bugs

* Updated timer periods for transponder.

Fixed FURY including old pwm_output files.

* Added method to calculate prescaler and period on the fly for varying clock speeds.

This can be used for overclocking :)

* Consolidated led_strip

* Moved led strip to use system clock for timing (allowing overclocking)

* Fixed incorrect channel, and removed comparison warning.

* More cleanup

* Fix KIWIF4 target

* Cleaned up target.mk files
2017-03-01 19:50:23 +00:00
blckmn 3c20108a99 Performance improvement based on feedback from @martinbudden 2017-01-30 15:02:14 +01:00
Martin Budden 19901730fc Removed trailing spaces from device drivers 2016-11-11 08:11:48 +00:00
blckmn 58105c25ac Simplified Owner management 2016-11-10 18:56:13 +11:00
blckmn 159236093e Remove need for IRQ to be provided in target.c 2016-11-07 09:54:55 +11:00
Martin Budden 9124c496b6 Merge pull request #1462 from blckmn/led_mapping
Moving LED strip output pin to be configurable via resource command
2016-11-05 09:25:01 +01:00
blckmn e56f915018 Moving LED strip to be configurable via resource command 2016-11-05 13:35:20 +11:00
blckmn ff5c44b4dc Allow any allocation for motors and servos 2016-11-05 06:51:43 +11:00
blckmn 25b3f5b5ea Tidy up ints. 2016-11-01 14:16:11 +11:00
blckmn 546d8dffa8 Simplified check 2016-11-01 14:15:44 +11:00
blckmn c5bb7cfd2f Introduced TIM_USE_ flags to give defaults for reset configuration. 2016-11-01 14:15:44 +11:00
blckmn fe3ac4754e Timer code simplification in preparation of led strip being assignable.
Moved some repeated code into timer.c - preparation for allowing resource command for led strip
2016-10-23 14:16:55 +11:00
blckmn 4e529642d1 Initial implementation of DSHOT protocol (600 and 150) 2016-10-18 19:38:18 +11:00
blckmn e840bbe83c Revert "Remove superfluous timerHardware properties"
This reverts commit 4924894f41.

Just too many combinations on the F3 for using a simple mapping table - wastes too much memory.
Will move LED Strip to allocation based on timerHardware_t array once DSHOT is merged (uses same dma requirements).
2016-10-17 11:24:59 +11:00
blckmn 4924894f41 Remove superfluous timerHardware properties
-> todo: remove the IO_CFG definitions and add flags for purpose
2016-10-15 17:04:45 +11:00
blckmn 46a6e560f1 Initial IO remapping capability 2016-10-13 11:08:39 +11:00
Martin Budden 541f4d4018 Directory rearrangement to reflect cleanflight changes 2016-08-07 13:44:00 +01:00
Martin Budden 07adf66bbb Optimisation of driver header files 2016-08-07 01:14:11 +02:00
Martin Budden 141b369667 Removed trailing whitespace 2016-07-16 07:54:58 +01:00
Sami Korhonen 085e88cfd9 Fix F4 timers + fix pwm output generation 2016-07-10 11:21:32 +03:00
blckmn 67d448d8ea Improved Resource command output. 2016-07-09 17:03:16 +10:00
blckmn 924c891bf1 Update to LED STRIP to use new IO 2016-07-02 14:38:04 +10:00
Martin Budden c10129bc50 Combined timer output and inverted fields 2016-06-29 20:12:52 +01:00
Martin Budden a2d1af04aa Minor cosmetic tidying 2016-06-27 20:04:21 +01:00
Martin Budden 97fe5afd6c Converted tabs to spaces. 2016-06-27 19:26:02 +01:00
blckmn f293407a9d Renamed pin on timerHardware_t to tag for clarity 2016-06-22 21:12:38 +10:00
blckmn dbb5386f1b Removed need to specify timer peripherals in the target.h files. Now present in the MCU timer specific files. 2016-06-18 21:40:32 +10:00
blckmn 8b1cc05e1d Updated timerHardware_t to drop pinsource, and use new IO tags. 2016-06-15 05:27:59 +10:00
Martin Budden ccac8c30d6 KISSFC target 2016-06-12 22:04:02 +01:00
Martin Budden efda3d7b5b Final move of target specific code into target directory. 2016-06-11 05:20:17 +01:00
Martin Budden 38a9ba9aae Continue moving target specific code into target directory. 2016-06-10 13:05:03 +01:00
Martin Budden adb6052054 Started moving F3 PWM and timers into target.c 2016-06-09 23:23:22 +01:00
blckmn 51a99e74c6 STM32F4: USARTS 4,5,6 added
Flag initialisation for motor_pwm_protocol
Fixes for AlienFlightF4 and timers
2016-06-08 05:43:28 +10:00
sblakemore 0a3bf6e991 Add SINGULARITY target 2016-05-31 10:50:56 +10:00
DTF UHF 9386841abc Initial commit of DTFc.
Adds support for Invensense ICM-20608-G and BMP280 SPI mode.
2016-04-08 16:35:03 -04:00
borisbstyle 3cad4793e9 SPRACINGF3EVO initial support 2016-04-08 11:18:07 +02:00
Dominic Clifton bd9f93660b SPRACINGF3MINI - Cleanup PWM output mapping. Remove no-longer needed
TIM3 / OneShot workaround.
2016-03-04 22:18:37 +01:00
edusteinhorst 56e9278354 CC3D - don't share timer between PPM capture and motor output
A periodic glitch happens on AUX channels when using OneShot on CC3D,
especially with faster update loops. This is caused by a race condition
while forcing timer overflows and sharing the timer for PPM capture.
It causes the craft the fall out of the sky when using a switch to arm.

* Remap PPM in from S1_IN to S6_IN
* Remap RSSI_ADC from S6_IN to S3_IN
* Block PWM12/S6_OUT from being used with Oneshot/brushed motors so
TIM2 (PPM_IN timer) doesn't change prescaler or is manually overflowed
* Allow only one feature out of SOFTSERIAL/RSSI_ADC/SONAR, since they
will now share the same pin
* Update docs to reflect port changes and restrictions

This fixes cleanflight/cleanflight#1748,
fixes borisbstyle/betaflight#64, fixes borisbstyle/betaflight#127

fix BP6
2016-02-08 21:27:46 +01:00
Dominic Clifton 52d97869b8 SPRacingF3Mini - Initial support for new target. 2016-02-02 23:36:28 +01:00
Michael Jakob 7634e4c635 AlienFligth F3 V2 support
Updated SPI driver (SPI3 on F3 targets)
AK8963 Mag support (part of MPU9250)
MPU9250 SPI support via MPU6500 driver
Updated LED driver for alternative LED sets
Enable gyro intterupt for AlienFlight F3 targets
Update AlienWii/AlienFlight documentation
Rename AlienWii to AlienFlight
2016-02-02 23:31:55 +01:00
cmenard d174314692 Add Lux target 2016-02-02 23:03:08 +01:00
Moto Moto 2e351b0991 Add MOTOLAB build target and associated source files 2015-08-23 19:42:18 -05:00
Larry (TBS) 3b1f423c49 COLIBRI RACE support 2015-08-20 19:18:10 +01:00
Dominic Clifton d17e89cc6b Fix incorrect index access in old timer irq handler code. 2015-06-26 20:11:39 +01:00
Dominic Clifton 64b68cda59 Fix some indentation & tab usage. 2015-06-26 18:16:39 +01:00