~gabe/flashlight-firmware/anduril2

396.1.1 by Selene Scriven
Reworked the config file include system so it'll include the #defined value
1
#ifndef HWDEF_FW3A_H
2
#define HWDEF_FW3A_H
3
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
4
/* BLF/TLF FW3A driver layout
5
 *           ----
6
 *   Reset -|1  8|- VCC
7
 * eswitch -|2  7|- optic nerve
8
 *     FET -|3  6|- 7x7135
9
 *     GND -|4  5|- 1x7135
10
 *           ----
11
 */
12
13
#define PWM_CHANNELS 3
14
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
15
#ifndef SWITCH_PIN
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
16
#define SWITCH_PIN   PB3    // pin 2
17
#define SWITCH_PCINT PCINT3 // pin 2 pin change interrupt
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
18
#endif
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
19
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
20
#ifndef PWM1_PIN
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
21
#define PWM1_PIN PB0        // pin 5, 1x7135 PWM
22
#define PWM1_LVL OCR0A      // OCR0A is the output compare register for PB0
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
23
#endif
24
#ifndef PWM2_PIN
25
#define PWM2_PIN PB1        // pin 6, 7x7135 PWM
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
26
#define PWM2_LVL OCR0B      // OCR0B is the output compare register for PB1
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
27
#endif
28
#ifndef PWM3_PIN
29
#define PWM3_PIN PB4        // pin 3, FET PWM
30
#define PWM3_LVL OCR1B      // OCR1B is the output compare register for PB4
31
#endif
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
32
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
33
#ifndef VISION_PIN
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
34
#define VISION_PIN PB2      // pin 7, optic nerve
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
35
//#define ADC_CHANNEL 0x01    // MUX 01 corresponds with PB2
36
//#define ADC_DIDR    ADC1D   // Digital input disable bit corresponding with PB2
37
#endif
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
38
#define ADC_PRSCL   0x06    // clk/64
39
40
// average drop across diode on this hardware
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
41
#ifndef VOLTAGE_FUDGE_FACTOR
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
42
#define VOLTAGE_FUDGE_FACTOR 5  // add 0.25V
387 by Selene Scriven
Made it easier to override hwdef-*.h values in cfg-*.h files.
43
#endif
342 by Selene Scriven
Refactored driver/hardware definition code to be one file per driver type.
44
45
//#define TEMP_DIDR   ADC4D
46
#define TEMP_CHANNEL 0b00001111
47
48
#define FAST 0xA3           // fast PWM both channels
49
#define PHASE 0xA1          // phase-correct PWM both channels
50
396.1.1 by Selene Scriven
Reworked the config file include system so it'll include the #defined value
51
#define LAYOUT_DEFINED
52
53
#endif