fome-fw/firmware/config/engines/rover_v8.cpp

82 lines
2.8 KiB
C++
Raw Normal View History

2014-08-29 07:52:33 -07:00
/**
* @file rover_v8.cpp
*
* V8, firing order 18436572
*
* This config overrides some values of the default configuration which is set by setDefaultConfiguration() method
*
* ROVER_V8 = 10
*
* @date Jun 27, 2014
2015-01-12 15:04:10 -08:00
* @author Andrey Belomutskiy, (c) 2012-2015
2014-08-29 07:52:33 -07:00
*/
#include "main.h"
#include "rover_v8.h"
2014-12-06 08:03:50 -08:00
void setFrankenstein_01_LCD(board_configuration_s *boardConfiguration) {
boardConfiguration->HD44780_rs = GPIOE_9;
boardConfiguration->HD44780_e = GPIOE_11;
boardConfiguration->HD44780_db4 = GPIOE_13;
boardConfiguration->HD44780_db5 = GPIOE_15;
boardConfiguration->HD44780_db6 = GPIOB_11;
boardConfiguration->HD44780_db7 = GPIOB_13;
}
2015-01-18 14:04:18 -08:00
void setRoverv8(engine_configuration_s *engineConfiguration, board_configuration_s *boardConfiguration) {
2014-08-29 07:52:33 -07:00
setOperationMode(engineConfiguration, FOUR_STROKE_CRANK_SENSOR);
2015-01-23 09:04:28 -08:00
engineConfiguration->trigger.type = TT_TOOTHED_WHEEL_36_1;
2014-08-29 07:52:33 -07:00
engineConfiguration->displacement = 3.528;
engineConfiguration->cylindersCount = 8;
engineConfiguration->firingOrder = FO_1_8_4_3_6_5_7_2;
// set_rpm_hard_limit 4000
engineConfiguration->rpmHardLimit = 4000; // yes, 4k. let's play it safe for now
// set_cranking_rpm 550
2015-01-22 17:05:54 -08:00
engineConfiguration->cranking.rpm = 550;
2014-08-29 07:52:33 -07:00
// set_whole_fuel_map 3
setWholeFuelMap(engineConfiguration, 3);
2015-01-18 14:04:18 -08:00
// set_cranking_injection_mode 0
2014-08-29 07:52:33 -07:00
engineConfiguration->crankingInjectionMode = IM_SIMULTANEOUS;
// set_injection_mode 1
engineConfiguration->injectionMode = IM_SEQUENTIAL;
// set_ignition_mode 2
engineConfiguration->ignitionMode = IM_WASTED_SPARK;
2014-11-12 19:03:34 -08:00
// Frankenstein: low side - out #1: PC14
// Frankenstein: low side - out #2: PC15
// Frankenstein: low side - out #3: PE6
// Frankenstein: low side - out #4: PC13
// Frankenstein: low side - out #5: PE4
// Frankenstein: low side - out #6: PE5
// Frankenstein: low side - out #7: PE2
// Frankenstein: low side - out #8: PE3
// Frankenstein: low side - out #9: PE0
// Frankenstein: low side - out #10: PE1
// Frankenstein: low side - out #11: PB8
// Frankenstein: low side - out #12: PB9
2014-08-29 07:52:33 -07:00
2014-11-12 19:03:34 -08:00
boardConfiguration->injectionPins[0] = GPIOB_9; // Frankenstein: low side - out #12
boardConfiguration->injectionPins[1] = GPIOB_8; // Frankenstein: low side - out #11
boardConfiguration->injectionPins[2] = GPIOE_3; // Frankenstein: low side - out #8
boardConfiguration->injectionPins[3] = GPIOE_5; // Frankenstein: low side - out #6
2014-08-29 07:52:33 -07:00
2014-11-12 19:03:34 -08:00
boardConfiguration->fuelPumpPin = GPIOC_13; // Frankenstein: low side - out #4
2014-08-29 07:52:33 -07:00
boardConfiguration->fuelPumpPinMode = OM_DEFAULT;
// set_injection_pin_mode 0
boardConfiguration->injectionPinMode = OM_DEFAULT;
2015-01-18 14:04:18 -08:00
boardConfiguration->canTxPin = GPIOB_6;
boardConfiguration->canRxPin = GPIOB_12;
engineConfiguration->canWriteEnabled = true;
engineConfiguration->canReadEnabled = false;
engineConfiguration->isCanEnabled = true;
engineConfiguration->canNbcType = CAN_BUS_MAZDA_RX8;
2014-08-29 07:52:33 -07:00
}