Skip to content

Commit

Permalink
Add support for TBS HV boards with uncalibrated complementary PWM.
Browse files Browse the repository at this point in the history
  • Loading branch information
sim- committed Mar 29, 2014
1 parent 6fdcfcb commit 62ec2f8
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 1 deletion.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ SHELL = /bin/bash

.SUFFIXES: .inc .hex

ALL_TARGETS = afro.hex afro2.hex afro_hv.hex afro_nfet.hex arctictiger.hex birdie70a.hex bs_nfet.hex bs.hex bs40a.hex dlu40a.hex dlux.hex dys_nfet.hex hk200a.hex hm135a.hex kda.hex maytech30a.hex maytech40a.hex maytech60a.hex mkblctrl1.hex rb50a.hex rb70a.hex rct50a.hex tbs.hex tp.hex tp_8khz.hex tp_i2c.hex tp_nfet.hex tp70a.hex tgy6a.hex tgy.hex
ALL_TARGETS = afro.hex afro2.hex afro_hv.hex afro_nfet.hex arctictiger.hex birdie70a.hex bs_nfet.hex bs.hex bs40a.hex dlu40a.hex dlux.hex dys_nfet.hex hk200a.hex hm135a.hex kda.hex maytech30a.hex maytech40a.hex maytech60a.hex mkblctrl1.hex rb50a.hex rb70a.hex rct50a.hex tbs.hex tbs_hv.hex tp.hex tp_8khz.hex tp_i2c.hex tp_nfet.hex tp70a.hex tgy6a.hex tgy.hex
AUX_TARGETS = diy0.hex

all: $(ALL_TARGETS)
Expand Down
82 changes: 82 additions & 0 deletions tbs_hv.inc
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
;*****************************************
;* TBS high voltage ESC *
;* tbs.inc without inverted high-side *
;* 2014-03-25 *
;* Fuses should be lfuse=0x3f hfuse=0xca *
;*****************************************

.equ F_CPU = 16000000
.equ USE_INT0 = 0
.equ USE_I2C = 0
.equ USE_UART = 1
.equ USE_ICP = 1
.equ COMP_PWM = 1

.equ DEAD_LOW_NS = 1400 ; Not yet calibrated
.equ DEAD_HIGH_NS = 1700 ; Not yet calibrated
.equ CHECK_HARDWARE = 1

;*********************
; PORT B definitions *
;*********************
;.equ = 7
;.equ = 6
;.equ = 5 (sck)
;.equ = 4 (miso)
;.equ = 3 (mosi)
;.equ = 2
;.equ = 1
.equ rcp_in = 0 ;i r/c pulse input

.equ INIT_PB = 0
.equ DIR_PB = 0

;*********************
; PORT C definitions *
;*********************
.equ mux_b = 7 ; ADC7
.equ mux_a = 6 ; ADC6
.equ BpFET = 5 ; ADC5/SCL
.equ AnFET = 4 ; ADC4/SDA
;.equ = 3 ; ADC3
.equ mux_voltage = 2 ; ADC2 voltage input (18k from Vbat, 3.3k to gnd, 10.10V -> 1.565V at ADC7)
;.equ = 1 ; ADC1 phase input
.equ mux_c = 0 ; ADC0 phase input

.equ O_POWER = 180
.equ O_GROUND = 33

.equ INIT_PC = 0
.equ DIR_PC = (1<<AnFET)+(1<<BpFET)

.equ BpFET_port = PORTC
.equ AnFET_port = PORTC

;*********************
; PORT D definitions *
;*********************
;.equ = 7 (comparator AN1)
;.equ sense_star = 6 (comparator AN0)
.equ ApFET = 5
.equ CnFET = 4
.equ CpFET = 3
.equ BnFET = 2
.equ txd = 1
.equ rxd = 0

.equ INIT_PD = (1<<txd)
.equ DIR_PD = (1<<ApFET)+(1<<CnFET)+(1<<CpFET)+(1<<BnFET)+(1<<txd)

.equ ApFET_port = PORTD
.equ CnFET_port = PORTD
.equ CpFET_port = PORTD
.equ BnFET_port = PORTD

.MACRO RED_on
.ENDMACRO
.MACRO RED_off
.ENDMACRO
.MACRO GRN_on
.ENDMACRO
.MACRO GRN_off
.ENDMACRO
2 changes: 2 additions & 0 deletions tgy.asm
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,8 @@
#include "rct50a.inc" ; RCTimer 50A (MLF version) with all nFETs (INT0 PWM)
#elif defined(tbs_esc)
#include "tbs.inc" ; TBS 30A ESC (Team BlackSheep) with all nFETs (ICP PWM, UART)
#elif defined(tbs_hv_esc)
#include "tbs_hv.inc" ; TBS high voltage ESC (Team BlackSheep) with all nFETs (ICP PWM, UART)
#elif defined(tp_esc)
#include "tp.inc" ; TowerPro 25A/HobbyKing 18A "type 1" (INT0 PWM)
#elif defined(tp_8khz_esc)
Expand Down

0 comments on commit 62ec2f8

Please sign in to comment.