Browse Source

Merge pull request #29 from Nick-HZ/master

Emax BLHeli
master
sskaug 10 years ago
parent
commit
d589bf1f31
  1. 6848
      SiLabs/EMAX_BLHeli.a51
  2. 1213
      SiLabs/EMAX_BLHeliTxPgm.inc
  3. 472
      SiLabs/EMAX_BLHeli_20A.inc
  4. 426
      SiLabs/Hex files/EMAX_BLHeli_20A.hex

6848
SiLabs/EMAX_BLHeli.a51
File diff suppressed because it is too large
View File

1213
SiLabs/EMAX_BLHeliTxPgm.inc
File diff suppressed because it is too large
View File

472
SiLabs/EMAX_BLHeli_20A.inc

@ -0,0 +1,472 @@
;---------------------------------------------------------------------------
;
;
;
;
; FILE NAME: C8051F330.INC
; TARGET MCUs: C8051F330, F331
; DESCRIPTION: Register/bit definitions for the C8051F330 product family.
;
; REVISION 1.0
;
;---------------------------------------------------------------------------
;REGISTER DEFINITIONS
;
P0 DATA 080H ; PORT 0 LATCH
SP DATA 081H ; STACK POINTER
DPL DATA 082H ; DATA POINTER LOW
DPH DATA 083H ; DATA POINTER HIGH
PCON DATA 087H ; POWER CONTROL
TCON DATA 088H ; TIMER/COUNTER CONTROL
TMOD DATA 089H ; TIMER/COUNTER MODE
TL0 DATA 08AH ; TIMER/COUNTER 0 LOW
TL1 DATA 08BH ; TIMER/COUNTER 1 LOW
TH0 DATA 08CH ; TIMER/COUNTER 0 HIGH
TH1 DATA 08DH ; TIMER/COUNTER 1 HIGH
CKCON DATA 08EH ; CLOCK CONTROL
PSCTL DATA 08FH ; PROGRAM STORE R/W CONTROL
P1 DATA 090H ; PORT 1 LATCH
TMR3CN DATA 091H ; TIMER/COUNTER 3 CONTROL
TMR3RLL DATA 092H ; TIMER/COUNTER 3 RELOAD LOW
TMR3RLH DATA 093H ; TIMER/COUNTER 3 RELOAD HIGH
TMR3L DATA 094H ; TIMER/COUNTER 3 LOW
TMR3H DATA 095H ; TIMER/COUNTER 3 HIGH
IDA0L DATA 096H ; CURRENT MODE DAC0 LOW
IDA0H DATA 097H ; CURRENT MODE DAC0 HIGH
SCON0 DATA 098H ; UART0 CONTROL
SBUF0 DATA 099H ; UART0 DATA BUFFER
CPT0CN DATA 09BH ; COMPARATOR0 CONTROL
CPT0MD DATA 09DH ; COMPARATOR0 MODE SELECTION
CPT0MX DATA 09FH ; COMPARATOR0 MUX SELECTION
P2 DATA 0A0H ; PORT 2 LATCH
SPI0CFG DATA 0A1H ; SPI CONFIGURATION
SPI0CKR DATA 0A2H ; SPI CLOCK RATE CONTROL
SPI0DAT DATA 0A3H ; SPI DATA
P0MDOUT DATA 0A4H ; PORT 0 OUTPUT MODE CONFIGURATION
P1MDOUT DATA 0A5H ; PORT 1 OUTPUT MODE CONFIGURATION
P2MDOUT DATA 0A6H ; PORT 2 OUTPUT MODE CONFIGURATION
IE DATA 0A8H ; INTERRUPT ENABLE
CLKSEL DATA 0A9H ; CLOCK SELECT
EMI0CN DATA 0AAH ; EXTERNAL MEMORY INTERFACE CONTROL
OSCXCN DATA 0B1H ; EXTERNAL OSCILLATOR CONTROL
OSCICN DATA 0B2H ; INTERNAL OSCILLATOR CONTROL
OSCICL DATA 0B3H ; INTERNAL OSCILLATOR CALIBRATION
FLSCL DATA 0B6H ; FLASH SCALE
FLKEY DATA 0B7H ; FLASH LOCK AND KEY
IP DATA 0B8H ; INTERRUPT PRIORITY
IDA0CN DATA 0B9H ; CURRENT MODE DAC0 CONTROL
AMX0N DATA 0BAH ; AMUX0 NEGATIVE CHANNEL SELECT
AMX0P DATA 0BBH ; AMUX0 POSITIVE CHANNEL SELECT
ADC0CF DATA 0BCH ; ADC0 CONFIGURATION
ADC0L DATA 0BDH ; ADC0 LOW
ADC0H DATA 0BEH ; ADC0 HIGH
SMB0CN DATA 0C0H ; SMBUS CONTROL
SMB0CF DATA 0C1H ; SMBUS CONFIGURATION
SMB0DAT DATA 0C2H ; SMBUS DATA
ADC0GTL DATA 0C3H ; ADC0 GREATER-THAN COMPARE LOW
ADC0GTH DATA 0C4H ; ADC0 GREATER-THAN COMPARE HIGH
ADC0LTL DATA 0C5H ; ADC0 LESS-THAN COMPARE WORD LOW
ADC0LTH DATA 0C6H ; ADC0 LESS-THAN COMPARE WORD HIGH
TMR2CN DATA 0C8H ; TIMER/COUNTER 2 CONTROL
TMR2RLL DATA 0CAH ; TIMER/COUNTER 2 RELOAD LOW
TMR2RLH DATA 0CBH ; TIMER/COUNTER 2 RELOAD HIGH
TMR2L DATA 0CCH ; TIMER/COUNTER 2 LOW
TMR2H DATA 0CDH ; TIMER/COUNTER 2 HIGH
PSW DATA 0D0H ; PROGRAM STATUS WORD
REF0CN DATA 0D1H ; VOLTAGE REFERENCE CONTROL
P0SKIP DATA 0D4H ; PORT 0 SKIP
P1SKIP DATA 0D5H ; PORT 1 SKIP
PCA0CN DATA 0D8H ; PCA CONTROL
PCA0MD DATA 0D9H ; PCA MODE
PCA0CPM0 DATA 0DAH ; PCA MODULE 0 MODE REGISTER
PCA0CPM1 DATA 0DBH ; PCA MODULE 1 MODE REGISTER
PCA0CPM2 DATA 0DCH ; PCA MODULE 2 MODE REGISTER
ACC DATA 0E0H ; ACCUMULATOR
XBR0 DATA 0E1H ; PORT I/O CROSSBAR CONTROL 0
XBR1 DATA 0E2H ; PORT I/O CROSSBAR CONTROL 1
OSCLCN DATA 0E3H ; LOW-FREQUENCY OSCILLATOR CONTROL
IT01CF DATA 0E4H ; INT0/INT1 CONFIGURATION
EIE1 DATA 0E6H ; EXTENDED INTERRUPT ENABLE 1
ADC0CN DATA 0E8H ; ADC0 CONTROL
PCA0CPL1 DATA 0E9H ; PCA CAPTURE 1 LOW
PCA0CPH1 DATA 0EAH ; PCA CAPTURE 1 HIGH
PCA0CPL2 DATA 0EBH ; PCA CAPTURE 2 LOW
PCA0CPH2 DATA 0ECH ; PCA CAPTURE 2 HIGH
RSTSRC DATA 0EFH ; RESET SOURCE CONFIGURATION/STATUS
B DATA 0F0H ; B REGISTER
P0MDIN DATA 0F1H ; PORT 0 INPUT MODE CONFIGURATION
P1MDIN DATA 0F2H ; PORT 1 INPUT MODE CONFIGURATION
EIP1 DATA 0F6H ; EXTENDED INTERRUPT PRIORITY 1
SPI0CN DATA 0F8H ; SPI CONTROL
PCA0L DATA 0F9H ; PCA COUNTER LOW
PCA0H DATA 0FAH ; PCA COUNTER HIGH
PCA0CPL0 DATA 0FBH ; PCA CAPTURE 0 LOW
PCA0CPH0 DATA 0FCH ; PCA CAPTURE 0 HIGH
VDM0CN DATA 0FFH ; VDD MONITOR CONTROL
;
;------------------------------------------------------------------------------
;BIT DEFINITIONS
;
; TCON 088H
TF1 BIT 08FH ; TIMER 1 OVERFLOW FLAG
TR1 BIT 08EH ; TIMER 1 ON/OFF CONTROL
TF0 BIT 08DH ; TIMER 0 OVERFLOW FLAG
TR0 BIT 08CH ; TIMER 0 ON/OFF CONTROL
IE1 BIT 08BH ; EXT. INTERRUPT 1 EDGE FLAG
IT1 BIT 08AH ; EXT. INTERRUPT 1 TYPE
IE0 BIT 089H ; EXT. INTERRUPT 0 EDGE FLAG
IT0 BIT 088H ; EXT. INTERRUPT 0 TYPE
; SCON0 098H
S0MODE BIT 09FH ; UART 0 MODE
MCE0 BIT 09DH ; UART 0 MCE
REN0 BIT 09CH ; UART 0 RX ENABLE
TB80 BIT 09BH ; UART 0 TX BIT 8
RB80 BIT 09AH ; UART 0 RX BIT 8
TI0 BIT 099H ; UART 0 TX INTERRUPT FLAG
RI0 BIT 098H ; UART 0 RX INTERRUPT FLAG
; IE 0A8H
EA BIT 0AFH ; GLOBAL INTERRUPT ENABLE
ESPI0 BIT 0AEH ; SPI0 INTERRUPT ENABLE
ET2 BIT 0ADH ; TIMER 2 INTERRUPT ENABLE
ES0 BIT 0ACH ; UART0 INTERRUPT ENABLE
ET1 BIT 0ABH ; TIMER 1 INTERRUPT ENABLE
EX1 BIT 0AAH ; EXTERNAL INTERRUPT 1 ENABLE
ET0 BIT 0A9H ; TIMER 0 INTERRUPT ENABLE
EX0 BIT 0A8H ; EXTERNAL INTERRUPT 0 ENABLE
; IP 0B8H
PSPI0 BIT 0BEH ; SPI0 PRIORITY
PT2 BIT 0BDH ; TIMER 2 PRIORITY
PS0 BIT 0BCH ; UART0 PRIORITY
PT1 BIT 0BBH ; TIMER 1 PRIORITY
PX1 BIT 0BAH ; EXTERNAL INTERRUPT 1 PRIORITY
PT0 BIT 0B9H ; TIMER 0 PRIORITY
PX0 BIT 0B8H ; EXTERNAL INTERRUPT 0 PRIORITY
; SMB0CN 0C0H
MASTER BIT 0C7H ; SMBUS 0 MASTER/SLAVE
TXMODE BIT 0C6H ; SMBUS 0 TRANSMIT MODE
STA BIT 0C5H ; SMBUS 0 START FLAG
STO BIT 0C4H ; SMBUS 0 STOP FLAG
ACKRQ BIT 0C3H ; SMBUS 0 ACKNOWLEDGE REQUEST
ARBLOST BIT 0C2H ; SMBUS 0 ARBITRATION LOST
ACK BIT 0C1H ; SMBUS 0 ACKNOWLEDGE FLAG
SI BIT 0C0H ; SMBUS 0 INTERRUPT PENDING FLAG
; TMR2CN 0C8H
TF2H BIT 0CFH ; TIMER 2 HIGH BYTE OVERFLOW FLAG
TF2L BIT 0CEH ; TIMER 2 LOW BYTE OVERFLOW FLAG
TF2LEN BIT 0CDH ; TIMER 2 LOW BYTE INTERRUPT ENABLE
TF2CEN BIT 0CCH ; TIMER 2 LFO CAPTURE ENABLE
T2SPLIT BIT 0CBH ; TIMER 2 SPLIT MODE ENABLE
TR2 BIT 0CAH ; TIMER 2 ON/OFF CONTROL
T2XCLK BIT 0C8H ; TIMER 2 EXTERNAL CLOCK SELECT
; PSW 0D0H
CY BIT 0D7H ; CARRY FLAG
AC BIT 0D6H ; AUXILIARY CARRY FLAG
F0 BIT 0D5H ; USER FLAG 0
RS1 BIT 0D4H ; REGISTER BANK SELECT 1
RS0 BIT 0D3H ; REGISTER BANK SELECT 0
OV BIT 0D2H ; OVERFLOW FLAG
F1 BIT 0D1H ; USER FLAG 1
P BIT 0D0H ; ACCUMULATOR PARITY FLAG
; PCA0CN 0D8H
CF BIT 0DFH ; PCA 0 COUNTER OVERFLOW FLAG
CR BIT 0DEH ; PCA 0 COUNTER RUN CONTROL BIT
CCF2 BIT 0DAH ; PCA 0 MODULE 2 INTERRUPT FLAG
CCF1 BIT 0D9H ; PCA 0 MODULE 1 INTERRUPT FLAG
CCF0 BIT 0D8H ; PCA 0 MODULE 0 INTERRUPT FLAG
; ADC 0 WINDOW INTERRUPT FLAG
; ADC0CN 0E8H
AD0EN BIT 0EFH ; ADC 0 ENABLE
AD0TM BIT 0EEH ; ADC 0 TRACK MODE
AD0INT BIT 0EDH ; ADC 0 EOC INTERRUPT FLAG
AD0BUSY BIT 0ECH ; ADC 0 BUSY FLAG
AD0WINT BIT 0EBH ; ADC 0 WINDOW INTERRUPT FLAG
AD0CM2 BIT 0EAH ; ADC 0 CONVERT START MODE BIT 2
AD0CM1 BIT 0E9H ; ADC 0 CONVERT START MODE BIT 1
AD0CM0 BIT 0E8H ; ADC 0 CONVERT START MODE BIT 0
; SPI0CN 0F8H
SPIF BIT 0FFH ; SPI 0 INTERRUPT FLAG
WCOL BIT 0FEH ; SPI 0 WRITE COLLISION FLAG
MODF BIT 0FDH ; SPI 0 MODE FAULT FLAG
RXOVRN BIT 0FCH ; SPI 0 RX OVERRUN FLAG
NSSMD1 BIT 0FBH ; SPI 0 SLAVE SELECT MODE 1
NSSMD0 BIT 0FAH ; SPI 0 SLAVE SELECT MODE 0
TXBMT BIT 0F9H ; SPI 0 TX BUFFER EMPTY FLAG
SPIEN BIT 0F8H ; SPI 0 SPI ENABLE
;**** **** **** **** ****
; Uses internal calibrated oscillator set to 24Mhz
;**** **** **** **** ****
;**** **** **** **** ****
; Constant definitions
;**** **** **** **** ****
CSEG AT 1A40h
Eep_ESC_Layout: DB "#XP18A# " ; ESC layout tag
CSEG AT 1A50h
Eep_ESC_MCU: DB "#BLHELI#F330# " ; Project and MCU tag (16 Bytes)
PORT3_EXIST EQU 0 ; Set to 1 if MCU has port3
COMP1_USED EQU 0 ; Set to 1 if MCU has comparator 1 and it is being used
DUAL_BEC_VOLTAGE EQU 0 ; Set to 1 if dual BEC voltage is supported
DAMPED_MODE_ENABLE EQU 1 ; Damped mode disabled
NFETON_DELAY EQU 1 ; Wait delay from pfets off to nfets on
PFETON_DELAY EQU 1 ; Wait delay from nfets off to pfets on
COMP_PWM_HIGH_ON_DELAY EQU 15 ; Wait delay from pwm on until comparator can be read (for high pwm frequency)
COMP_PWM_HIGH_OFF_DELAY EQU 20 ; Wait delay from pwm off until comparator can be read (for high pwm frequency)
COMP_PWM_LOW_ON_DELAY EQU 5 ; Wait delay from pwm on until comparator can be read (for low pwm frequency)
COMP_PWM_LOW_OFF_DELAY EQU 7 ; Wait delay from pwm off until comparator can be read (for low pwm frequency)
ADC_LIMIT_L EQU 80 ; 2.8V 2013.05.31
;ADC_LIMIT_L EQU 85 ; Power supply measurement ADC value for which main motor power is limited (low byte)
ADC_LIMIT_H EQU 0 ; Power supply measurement ADC value for which main motor power is limited (2 MSBs)
TEMP_LIMIT EQU 92 ; 2013.8.20 140120 Temperature measurement ADC value for which main motor power is limited (low byte, assuming high byte is 1)
TEMP_LIMIT_STEP EQU 5 ; Temperature measurement ADC value increment for which main motor power is further limited
MAIN_SPOOLUP_TIME EQU 10 ; Main motor spoolup time
;**** **** **** **** ****
; ESC specific defaults
;**** **** **** **** ****
DEFAULT_PGM_MAIN_STARTUP_PWR EQU 10 ; 1=0.031 2=0.047 3=0.063 4=0.094 5=0.125 6=0.188 7=0.25 8=0.38 9=0.50 10=0.75 11=1.00 12=1.25 13=1.50
DEFAULT_PGM_TAIL_STARTUP_PWR EQU 10 ; 1=0.031 2=0.047 3=0.063 4=0.094 5=0.125 6=0.188 7=0.25 8=0.38 9=0.50 10=0.75 11=1.00 12=1.25 13=1.50
DEFAULT_PGM_MULTI_STARTUP_PWR EQU 10 ; 1=0.031 2=0.047 3=0.063 4=0.094 5=0.125 6=0.188 7=0.25 8=0.38 9=0.50 10=0.75 11=1.00 12=1.25 13=1.50
DEFAULT_PGM_MAIN_STARTUP_METHOD EQU 2 ; 1=Stepped 2=Direct
DEFAULT_PGM_TAIL_STARTUP_METHOD EQU 2 ; 1=Stepped 2=Direct
DEFAULT_PGM_MULTI_STARTUP_METHOD EQU 2 ; 1=Stepped 2=Direct
;*********************
; PORT 0 definitions *
;*********************
Rcp_In EQU 7 ;i
Adc_Ip EQU 6 ;i
Mux_A EQU 5 ;i
; EQU 4 ;i
Mux_B EQU 3 ;i
Comp_Com EQU 2 ;i
Mux_C EQU 1 ;i
Vref EQU 0 ;i
P0_DIGITAL EQU NOT((1 SHL Mux_A)+(1 SHL Mux_B)+(1 SHL Mux_C)+(1 SHL Comp_Com)+(1 SHL Adc_Ip)+(1 SHL Vref))
P0_INIT EQU 0FFh
P0_PUSHPULL EQU 0
P0_SKIP EQU NOT(1 SHL Rcp_In) AND 0FFh
MACRO Read_Rcp_Int
mov A, P0
jnb Flags3.PGM_RCP_PWM_POL, ($+4) ; Is pwm polarity negative?
cpl A ; Yes - invert
ENDM
MACRO Rcp_Int_Enable
orl PCA0CPM0, #01h ; Interrupt enabled
ENDM
MACRO Rcp_Int_Disable
anl PCA0CPM0, #0FEh ; Interrupt disabled
ENDM
MACRO Rcp_Int_First
anl PCA0CPM0, #0CFh
jb Flags3.PGM_RCP_PWM_POL, ($+6) ; Is pwm polarity positive?
orl PCA0CPM0, #20h ; Capture rising edge
jnb Flags3.PGM_RCP_PWM_POL, ($+6) ; Is pwm polarity negative?
orl PCA0CPM0, #10h ; Capture falling edge
ENDM
MACRO Rcp_Int_Second
anl PCA0CPM0, #0CFh
jb Flags3.PGM_RCP_PWM_POL, ($+6) ; Is pwm polarity positive?
orl PCA0CPM0, #10h ; Capture falling edge
jnb Flags3.PGM_RCP_PWM_POL, ($+6) ; Is pwm polarity negative?
orl PCA0CPM0, #20h ; Capture rising edge
ENDM
MACRO Rcp_Clear_Int_Flag
clr CCF0 ; Clear interrupt flag
ENDM
;*********************
; PORT 1 definitions *
;*********************
DriverEn EQU 7 ;o At least on some escs. Others are hardwired
; EQU 6 ;i
AnFET EQU 2 ;o "nFETs" are really the high side drivers
BnFET EQU 1 ;o
CnFET EQU 0 ;o
ApFET EQU 5 ;o "pFETs" are really the low side drivers
BpFET EQU 4 ;o
CpFET EQU 3 ;o
P1_DIGITAL EQU (1 SHL AnFET)+(1 SHL BnFET)+(1 SHL CnFET)+(1 SHL ApFET)+(1 SHL BpFET)+(1 SHL CpFET)+(1 SHL DriverEn)
P1_INIT EQU 080h
P1_PUSHPULL EQU (1 SHL AnFET)+(1 SHL BnFET)+(1 SHL CnFET)+(1 SHL ApFET)+(1 SHL BpFET)+(1 SHL CpFET)+(1 SHL DriverEn)
P1_SKIP EQU 0
MACRO AnFET_on
mov A, Current_Pwm_Limited
jz ($+12)
jb Flags3.PGM_DIR_REV, ($+5)
setb P1.AnFET
jnb Flags3.PGM_DIR_REV, ($+5)
setb P1.CnFET
ENDM
MACRO AnFET_off
jb Flags3.PGM_DIR_REV, ($+5)
clr P1.AnFET
jnb Flags3.PGM_DIR_REV, ($+5)
clr P1.CnFET
ENDM
MACRO BnFET_on
mov A, Current_Pwm_Limited
jz ($+4)
setb P1.BnFET
ENDM
MACRO BnFET_off
clr P1.BnFET
ENDM
MACRO CnFET_on
mov A, Current_Pwm_Limited
jz ($+12)
jb Flags3.PGM_DIR_REV, ($+5)
setb P1.CnFET
jnb Flags3.PGM_DIR_REV, ($+5)
setb P1.AnFET
ENDM
MACRO CnFET_off
jb Flags3.PGM_DIR_REV, ($+5)
clr P1.CnFET
jnb Flags3.PGM_DIR_REV, ($+5)
clr P1.AnFET
ENDM
MACRO All_nFETs_Off
clr P1.AnFET
clr P1.BnFET
clr P1.CnFET
ENDM
MACRO All_nFETs_On
setb P1.AnFET
setb P1.BnFET
setb P1.CnFET
ENDM
MACRO A_B_nFETs_On
setb P1.AnFET
setb P1.BnFET
ENDM
MACRO ApFET_on
jb Flags3.PGM_DIR_REV, ($+5)
setb P1.ApFET
jnb Flags3.PGM_DIR_REV, ($+5)
setb P1.CpFET
ENDM
MACRO ApFET_off
jb Flags3.PGM_DIR_REV, ($+5)
clr P1.ApFET
jnb Flags3.PGM_DIR_REV, ($+5)
clr P1.CpFET
ENDM
MACRO BpFET_on
setb P1.BpFET
ENDM
MACRO BpFET_off
clr P1.BpFET
ENDM
MACRO CpFET_on
jb Flags3.PGM_DIR_REV, ($+5)
setb P1.CpFET
jnb Flags3.PGM_DIR_REV, ($+5)
setb P1.ApFET
ENDM
MACRO CpFET_off
jb Flags3.PGM_DIR_REV, ($+5)
clr P1.CpFET
jnb Flags3.PGM_DIR_REV, ($+5)
clr P1.ApFET
ENDM
MACRO All_pFETs_Off
clr P1.ApFET
clr P1.BpFET
clr P1.CpFET
ENDM
;MACRO All_pFETs_On
; setb P1.ApFET
; setb P1.BpFET
; setb P1.CpFET
;ENDM
MACRO Set_Comp_Phase_A
jb Flags3.PGM_DIR_REV, ($+6)
mov CPT0MX, #21h ; Set comparator multiplexer to phase A
jnb Flags3.PGM_DIR_REV, ($+6)
mov CPT0MX, #01h
ENDM
MACRO Set_Comp_Phase_B
mov CPT0MX, #11h ; Set comparator multiplexer to phase B
ENDM
MACRO Set_Comp_Phase_C
jb Flags3.PGM_DIR_REV, ($+6)
mov CPT0MX, #01h ; Set comparator multiplexer to phase C
jnb Flags3.PGM_DIR_REV, ($+6)
mov CPT0MX, #21h
ENDM
MACRO Read_Comp_Out
mov A, CPT0CN ; Read comparator output
cpl A
ENDM
;*********************
; PORT 2 definitions *
;*********************
DebugPin EQU 0 ;o
P2_PUSHPULL EQU (1 SHL DebugPin)
;**********************
; MCU specific macros *
;**********************
MACRO Interrupt_Table_Definition
CSEG AT 0 ; Code segment start
jmp reset
CSEG AT 0Bh ; Timer0 interrupt
jmp t0_int
CSEG AT 2Bh ; Timer2 interrupt
jmp t2_int
CSEG AT 5Bh ; PCA interrupt
jmp pca_int
CSEG AT 73h ; Timer3 interrupt
jmp t3_int
ENDM
MACRO Initialize_Adc
mov REF0CN, #0Eh ; Set vdd (3.3V) as reference. Enable temp sensor and bias
mov ADC0CF, #58h ; ADC clock 2MHz
mov AMX0P, #Adc_Ip ; Select positive input
mov AMX0N, #11h ; Select negative input as ground
mov ADC0CN, #80h ; ADC enabled
ENDM
MACRO Set_Adc_Ip_Volt
mov AMX0P, #Adc_Ip ; Select positive input P0.6
ENDM
MACRO Set_Adc_Ip_Temp
mov AMX0P, #10h ; Select temp sensor input
ENDM
MACRO Start_Adc
mov ADC0CN, #90h ; ADC start
ENDM
MACRO Get_Adc_Status
mov A, ADC0CN
ENDM
MACRO Read_Adc_Result
mov Temp1, ADC0L
mov Temp2, ADC0H
ENDM
MACRO Stop_Adc
ENDM

426
SiLabs/Hex files/EMAX_BLHeli_20A.hex

@ -0,0 +1,426 @@
:030000000212CE1B
:03000B000200B838
:03002B000203E9E4
:03005B000204E5B7
:030073000204DBA9
:1000800002030406080C10182030406080020304AC
:1000900006080C101820304080FF0406080C1018C9
:1000A0002030406080A0C000000001010003020277
:1000B0000106050D04020402C2AFC0D0C0E02062F8
:1000C0000D302F02E47330680280F90203D5306BE3
:1000D00006C292C291C29085258AC262E525F4705B
:1000E0000221C8055C306813207219758B00D0E0BE
:1000F000D0D0C292C291C290D2AF32C292C291C24B
:10010000900201B8D276C277E560601CC3E55C144A
:1001100095604014C276D277C3E55C955F500302C8
:1001200001B8755C000201B82074030201B8D277EF
:10013000C292C291C290E53A20E24020E1167401D9
:10014000D5E0FDE525600A207C02D290307C02D209
:10015000920201B820E0167401D5E0FDE525600AA1
:10016000207C02D290307C02D2920201B87401D578
:10017000E0FDE5256002D2910201B820E12720E0F0
:100180000E7401D5E0FDE5256002D2910201B8743C
:1001900001D5E0FDE525600A207C02D292307C0288
:1001A000D2900201B87401D5E0FDE525600A207CFB
:1001B00002D292307C02D290758B00D0E0D0D0C2B7
:1001C00092C291C290D2AF32D0E0D0D0D2AF3261E1
:1001D000D5E525600A207C02D292307C02D290C202
:1001E0009161D5E5256002D291207C02C290307CDD
:1001F00002C29261D5E525600A207C02D290307C53
:1002000002D292207C02C292307C02C29061D52040
:100210007C02C295307C02C293E525600A207C02F4
:10022000D292307C02D290207C02C293307C02C2F7
:1002300095C29161D5207C02C295307C02C2932088
:100240007C02C293307C02C2957401D5E0FDE525A5
:10025000600A207C02D292307C02D290C29161D599
:10026000207C02C295307C02C293E525600A207C86
:1002700002D292307C02D290C294C29161D5207C8D
:1002800002C295307C02C293C2947401D5E0FDE5B0
:1002900025600A207C02D292307C02D290C2916109
:1002A000D5C294E5256002D291207C02C295307CB3
:1002B00002C293207C02C290307C02C29261D5C2FD
:1002C00094207C02C295307C02C2937401D5E0FD7B
:1002D000E5256002D291207C02C290307C02C2925D
:1002E00061D5C294E5256002D291207C02C2933090
:1002F0007C02C295207C02C290307C02C29261D501
:10030000C294207C02C293307C02C2957401D5E075
:10031000FDE5256002D291207C02C290307C02C2B1
:100320009261D5207C02C293307C02C295E52560A3
:100330000A207C02D290307C02D292C294207C02AD
:10034000C292307C02C29061D5207C02C293307C84
:1003500002C295C2947401D5E0FDE525600A207CB7
:1003600002D290307C02D292207C02C292307C0277
:10037000C29061D5207C02C293307C02C295E525F3
:10038000600A207C02D290307C02D292207C02C291
:1003900095307C02C293207C02C292307C02C290D3
:1003A00061D5207C02C293307C02C295207C02C2BF
:1003B00095307C02C2937401D5E0FDE525600A20EA
:1003C0007C02D290307C02D292207C02C292307C9D
:1003D00002C29061D5E525F4F58A758B00755B0046
:1003E000D262D0E0D0D0D2AF32C2AFC0D0C0E0D263
:1003F000D3C2CEE5286002813578007900E58030EF
:100400007D01F430E70278FF53DACF207D0343DA31
:1004100020307D0343DA10C2D8C271E580307D01FF
:10042000F430E70279FFC3E89970CE306103752894
:10043000288853D270E52960041529813D20700277
:10044000819BE553F8C270C3E8955A5003E55AF80A
:10045000E52D540670458822306B12C3E52295576E
:100460004005855722816DE522240BF5227883B65D
:0E0470000129C3E5229524401278A196400D83
:10047E00E52426F52450097524FF02048E852224D6
:10048E00852425C3E5249557400385572520CF099C
:10049E00D0E0D0D0C2D3D2AF32C2CF7801E528603F
:1004AE00021528C3E5539401400575560081C4E535
:1004BE00560460020556E558C3240A50057558FFC8
:1004CE0081D2F558D0E0D0D0C2D3D2AF32C2AF5322
:1004DE00917FC260D2AF32C2AFC0D0C0E0C0F0D206
:1004EE00D3A8FBA9FCC2D8307102A14853DACF20A1
:1004FE007D0343DA10307D0343DA20D271E580307C
:10050E007D01F420E702A11C88268927C18453DAD5
:10051E00CF207D0343DA20307D0343DA10C2D8C2E8
:10052E00717401552F7002C1787800E580307D011D
:10053E00F430E702C1788853C17853DACF207D03B7
:10054E0043DA20307D0343DA10C271206102A1B874
:10055E0053DACF207D0343DA10307D0343DA20C215
:10056E00D8D271884E894FC3E8954CF8E9954DF96C
:10057E007AFAC3E89498E994085002C178C3E895D2
:10058E0050FCE99551FD30E708ECF42401FCEDF444
:10059E00FD7552007008C3EC9A50037552018850D5
:1005AE008951A84EA94F884C894DE4FBC3E8952686
:1005BE00F8E99527F9E9C313F9E813F8E9C313F934
:1005CE00E813F8C3E894FAE994005007E530B40153
:1005DE0002C149E9C313FDE813FC206118C3EC9472
:1005EE001CED94024003020678ED7009C3EC94C82A
:1005FE0050030206847400207E037897E624FAFEE8
:10060E00E43400FFC3EC9EFCED9FFD5006780079AC
:10061E0000C161C3EC94FFED9400400678FF7900B1
:10062E00C161EC8567F0A4C5F0A2F733F8790040FC
:10063E000302066C78FF790002066CC3E894F0E9B9
:10064E0094005026C3E89414E99400401DE4D2E0CF
:10065E00FBC16CC3E894FFE99400400278FF885315
:10066E00D2707401F4552F4BF52F7528287401554F
:10067E002F70037528407529067401552F70037568
:10068E00290AD0F0D0E0D0D0C2D3D2AF327901C196
:10069E00B37903C1B3790AC1B3791EC1B37964C109
:1006AE00B379C8C1B37817E4D5E0FDD8FAD9F622EC
:1006BE007C05D1AFDCFC22C2AF1208E51208EB12AA
:1006CE0008F1D1A31208E51208EB1208F1D2AF22FD
:1006DE00C2AF1208F11208EB1208E5D1A31208F10D
:1006EE001208EB1208E5D1A3D2AF22AE69AF6AC2EF
:1006FE00AF30662EC3EE940540196001FE1208F16C
:10070E001208F11208F11208F11208F1D1A7BE0574
:10071E0002E1691208E51208E51208E5D1ABDEF335
:10072E00E169E4FEC3EF940A40070E0E600DFFE18F
:10073E0049C3EF9405401B0E6001FF1208EB12082F
:10074E00EB1208EBD1A7DEF3BF0A02E169BF050287
:10075E00E169D1AB1208F7D1ABDFF7D2AF227F0040
:10076E00756C007B08E580307D01F420E703308F47
:10077E00F4758A00758C00D28CE580307D01F430E2
:10078E00E703308FF4C28C858A53C3E5539414402B
:10079E0020C3E553944E5005EF23FFE1C1C3E5534B
:1007AE009466400DC3E55394CC5006EF2304FFE14D
:1007BE00C1D27F308F04D27FE1CCDBA98F6C227C3B
:1007CE003079D0756C00F16CA76C09DCF92279D008
:1007DE007C30BC2D057883020815BC2C057884026C
:1007EE000815BC2B057885020815BC2805788802EB
:1007FE000815BC27057889020815BC1C05789402DB
:10080E000815BC1B0B7895876CA66C121807C2AF27
:10081E0009DCBF22C2AFD28C7B08E56CD28730E7F1
:10082E0005758A670137758ACD758CFFC28D308D3F
:10083E00FDC287758ACD758CFFC28D308DFD23DB91
:10084E00DB22C28775A4807C307880866C081122EA
:10085E00DCF975A47FD28722756D007C3079D0E7E4
:0F086E00C3356DF56D09DCF7227F007C2F79D043
:10087D00E7C33FFF09DCF9F404F722756C0012069B
:10088D00A3C27F758B00758D00D28EC28F12076C3F
:10089D00207FE8E56CB4050812069F115002088808
:1008AD00B409D8756C00758B00758D00D28EC28F12
:1008BD001207CD1166E56D70C279D0E7B466BC1232
:1008CD00069BC28775A480756C88112275A47FD292
:1008DD00871207DC020888227A127B6401FD7A0EEA
:1008ED007B7801FD7A0C7BA001FD7A097BB401FDBB
:1008FD00AC257525017902B27CE4C294D5E0FDE505
:10090D00256002D291D5E0FDC291D5E0FDD294D5FE
:10091D00E0FDE525600A207C02D292307C02D29067
:10092D00E568D5E0FD207C02C292307C02C2907455
:10093D0064D5E0FDD9C1EAF8D5E0FDD8FBDBB1C245
:10094D00948C2522C37C007D0075F00005F0EA3300
:10095D00FAEB33FB50F6EB13FBEA13FAC3E9FFE8AE
:10096D00FEE89AF8E99BF95004EFF9EEF8B3EC3391
:10097D00FCED33FDD5F0DFEDF9ECF822E889F08AD6
:10098D0020D2D4F8A9F07B0030F70B7BFFF42401C3
:10099D00F8E9F43400F9E88520F0A4ADF0F8E98524
:1009AD0020F0A4AFF0FEED2EF974003FFA7C04C3E5
:1009BD00EA13FAE913F9E813F8DCF48BF030F70ACF
:1009CD00E8F42401F8E9F43400F9E889F0C2D4F828
:1009DD00A9F0227883B60103020A40C3E5539401BE
:1009ED004003020A05852224E4F53CF53DF53EF56C
:1009FD003FF540F545020A407883E6FC754501E573
:100A0D0022F523783879C7AA38AB39C3EB13FBEA43
:100A1D0013FAEC141414146014C3EB13FBEA13FA59
:100A2D00EC1414146007C3EB13FBEA13FA3151886D
:100A3D003C893D22E5456034C3E53C9523F8E53D11
:100A4D009400F9500CC3E89480E994FF4016020A13
:100A5D0075C3E8947FE994005003020A75787F7995
:100A6D0000020A75788079FF8841894222E5456048
:100A7D0058E541253EF8E542353FF9854220E43001
:100A8D000701F43540FA30E709C3EA94F040150246
:100A9D000AB7C3EA940F5003020AB778FF79FF7AB9
:100AAD000F020AB7780079007AF0C3E52495575004
:100ABD0006E524600941D0E54220E70D41D0E5422D
:100ACD0030E706883E893F8A4022E5457003020BD8
:100ADD003A789FE6FAC3E54133F8E54233F93189B7
:100AED00E930E70BC3E89480E994FF40136111C32B
:100AFD00E8947FE9940050026111787F79006111CB
:100B0D00788079FFE820E715C3E52398F84009C3FD
:100B1D00E894014003020B387801020B38E8F42405
:100B2D00012523F84003020B3878FF884322E54561
:100B3D007003020B9C78A0E6FAA83FA9403189E921
:100B4D0030E70CC3E89401E994FF4016020B73C320
:100B5D00E894FFE994005003020B7378FF790002CB
:100B6D000B73780179FFE920E715C3E54398F84049
:100B7D0009C3E894014003020B9A7800020B9AE82E
:100B8D00F424012543F84003020B9A78FF882422B0
:100B9D007564007884E6F520207C02C290307C02DA
:100BAD00C292E5256002D291207C03759F01307CB5
:100BBD0003759F21753A0675E890E5E820ECD1A8FC
:100BCD00BDA9BE121139756150756200C374001351
:100BDD00FD745013FC74502C2403FC74003DFDEC8B
:100BED00FAEDFB0564C3E89AE99B4014E5612450D6
:100BFD00F561E5623400F562EA2CFAEB3DFB80E32A
:100C0D00AE61AF62C3E56213F9E56113F8C3E91391
:100C1D00F9E813F87A02C3E913F9E813F8DAF7AA39
:100C2D0020BA0409756100756200020C4B1AEA6066
:100C3D0009C3EE28FEEF39FFDAF78E618F62227558
:100C4D00E890227884E6FFE5E820ECF7A8BDA9BE80
:100C5D000563C3E56394084052756300E97007E5C9
:0E0C6D0066601B020C7FC3E895666010E566AA
:100C7B005006600C14020C8B0460F9020C8BE566B9
:100C8B00F566C3945CF840217557C0C3E89405F82A
:100C9B004017755780C3E89405F8400D755740C34E
:100CAB00E89405F8400375571075BB0622EFC39403
:100CBB0004603BC3E894FFE994035032C3E89561A9
:100CCB00E9956250297885E6C39401600BE557944A
:100CDB0005500BD20702170BE5579450401AE565E8
:100CEB0060041565A1037565051557020D03756540
:100CFB0005E557F460020557A857C3E52498500241
:100D0B00A8248825C3E5259558400B855825E5581B
:100D1B00F46003855857C3E563B4070375BB102212
:100D2B003069027832306A027878E52D54066021FA
:100D3B00E879A287F0A4C5F0A2F733F8C3E895577A
:100D4B004002A857882288248825306904C3E8F517
:100D5B00592275380075390822A846A947759100A4
:100D6B00C3E498F594E499F595759104D26075C830
:100D7B0020A8CCA9CD75C824AA36AB3788368937BD
:100D8B00C3E89AF8E99BF9AA38AB39C3EB13FDEA30
:100D9B0013FCC3ED13FDEC13FCC3EA9CFAEB9DFBB8
:100DAB00EA28FAEB39FB8A388B394001227538FF78
:100DBB007539FF22306002A1BF759100C3E49548DD
:100DCB00F594E49549F595759104D260227894E6F3
:100DDB00FF7E103063027F05306B047F037E00A91A
:100DEB0039A8387A04C3E913F9E813F8DAF7C3E83A
:100DFB009EF8E99400F94009C3E89402E994005085
:100E0B00047802E4F9E9FBE8FAC3E913FDE813FC03
:100E1B00C3EF9403602EEF20E00DE82CF8E93DF9C9
:100E2B00ECFAEDFB020E3CE828F8E939F97A02E41A
:100E3B00FBC3EF9403400D8A4A8B4B884689478C42
:100E4B00488D4922884A894B8A468B478C488D4965
:100E5B0022306002C15C759100C3E49538F594E4CF
:100E6B009539F595759104D26022753B007520007C
:100E7B00020E84753B00752040D2AF053B2060010C
:100E8B0022759D00E539C313C313F8086030307227
:100E9B0006C313C313F808C3E8940A4002780A3058
:100EAB007508C3E8940440027804C3E539940840FC
:100EBB000D759D02C3E53994104003759D032060A9
:100ECB0003D2AF22790F2075027905D2AF0000C291
:100EDB00AF20620A791420750279073077E0306B06
:100EEB00027978C3E58B99206B0240F740D0E59BE4
:100EFB00F4F45440B52002C184D8C3D2AF22C263EC
:100F0B00789DE6146007E53B147002D263306B0BDF
:100F1B000535206010753500020F302060071581F4
:100F2B00158102170B22759100C3E4954AF594E4E1
:100F3B00954BF595759104D26022AE2530634F78B1
:100F4B00A4E6FFBF010BD264752500C292C291C209
:100F5B0090B1C4306403752500306002E15EBF02BE
:100F6B000BD264752500C292C291C29078A3B601D0
:100F7B000DB1C4306403752500306002E17EBF0300
:100F8B000BD264752500C292C291C290F1313064CC
:100F9B0003752500306002E199306304C2648E252D
:100FAB0022C2AFC294207203020FCB90034930765A
:100FBB000F207C02C293307C02C2957401D5E0FDF8
:100FCB00207C02D295307C02D293759F11753A0228
:100FDB00D2AF22C2AF207203021000900300307612
:100FEB0017C294207C02C293307C02C2957401D547
:100FFB00E0FD0210039001E3207C02C290307C02E2
:10100B00C292306206E5256002D291207C03759F67
:10101B0001307C03759F21753A03D2AF22C2AF20FA
:10102B007C02C295307C02C293207203021047905F
:10103B0002BF307607C2947401D5E0FD207C02D24A
:10104B0093307C02D295207C03759F21307C0375F5
:10105B009F01753A04D2AF22C2AF207203021085F2
:0E106B0090027E307617207C02C295307C0207
:10107900C293C2947401D5E0FD0210889001D1C2D7
:101089009130620EE525600A207C02D292307C0202
:10109900D290759F11753A05D2AF22C2AF207C025A
:1010A900C293307C02C2952072030210CB900235A4
:1010B90030760F207C02C295307C02C2937401D530
:1010C900E0FDD294207C03759F01307C03759F213C
:1010D900753A06D2AF22C2AF2072030211099003FA
:1010E900A230761F207C02C295307C02C293207CFC
:1010F90002C293307C02C2957401D5E0FD02110C45
:101109009001F5207C02C292307C02C29030620EBE
:10111900E525600A207C02D290307C02D292207CA4
:1011290003759F21307C03759F01753A01D2AF2267
:101139009001CFC295C294C293C292C291C2902229
:10114900788076667881760978827609788376015F
:101159007886760378847602788576017888760AA7
:10116900789176017892760578947603789C760D55
:101179007895760178897601789D7602788A760164
:10118900788B760178877600788E7601788F76006D
:10119900789076B478977625789876D0789976503D
:1011A900789A7664789B7602789E7600227895E61E
:1011B900FFC272C274C273C276D277755F09756055
:1011C90001752BFAC3BF0103021227D272D276C26C
:1011D90077755F05756001752B3CC3BF0203021269
:1011E90027D274755F05756002752B1EC3BF030393
:1011F900021227755F05756003752B19C3BF0403B8
:10120900021227D273755F05756004752B14C3BF6D
:101219000503021227755F05756005752B0A788924
:10122900E6FFC27C788AE630E102D27CC27D788B07
:10123900E630E102D27DC3EF94016008758E01D2D8
:1012490075021252758E00C275227881E6149000DB
:101259008093789FF67882E6149000809378A0F6C0
:10126900313922789CE61490008D9378A1F63139B2
:10127900227888E61490009A9378A2F63139227878
:101289009DE6149000A79378A3F6789DE614900044
:10129900AC9378A4F6313922227897E6FA7898E661
:1012A900FB307E047A007BFFC3EB9AFCC394825027
:1012B900027C827567000567EC8567F0A4C3E5F0D9
:1012C900948040F222C2D353D9BF7581C043FF80B5
:1012D9007903D5E0FDD9FB75EF0243B203E5B324E9
:1012E900044002F5B37580FF75A40075F19075D4BB
:1012F9007F75908075A5BF75F2BF75D50075A6017C
:1013090075E2413139E4F8F6D8FD31491217533104
:10131900B65153516C517A518851A151A27899868D
:1013290068313975885075890275C82475910475B5
:10133900D8401206BE1206BE75A82275B80275E617
:101349009075F610759B80759D0375D10E75BC5807
:1013590075BB0675BA1175E88012069BD2AF120BE0
:101369009D43DA0153DACF207D0343DA20307D0330
:1013790043DA10C2D8C2711206AF753001D2617A50
:1013890005E552702812069FE553C394E64005759A
:1013990033006188E553C3941E5005753300618895
:1013A9000533E533C3940550047A05618A12069F13
:1013B900E553C3940240C8E52F5401855554F555AA
:1013C900B554BCDABCC26153DACF207D0343DA20BD
:1013D900307D0343DA10C2D8C2711206AB12069FE0
:1013E90078027401552F70027800C3E5539840EDD7
:1013F9001206AF75440012069F788EE6C394015019
:10140900030214DFE530C39401500302153C7897B9
:10141900E6F56E7401552F601AC2AF1208EB120877
:10142900F11208E5758911758E0275F18075D4FF81
:101439001208887F05D27E51A21206ABC2AFC27EC6
:1014490051A2C3E55394DCD2AF4004DFE8816DC3F8
:10145900E553956E500281E9C2AF1208E51206AB59
:0F146900D2AF813CC3E55394057898F61208770B
:10147800121807C2AF1208E51208E51206A71208EB
:10148800F71208F7D2AF1206BE1206BEC3E5539490
:10149800D75009C3E553943C50F281A7121C9D7F95
:1014A80005D27E51A21206ABC2AFC27E51A2C3E5DD
:1014B80053943CD2AF50E8DFE8E55324057897F61B
:1014C80012087712180712175331B65153516C513D
:1014D8007A518851A151A2C3E553954440038553DD
:1014E800441206ABC3E5539401400280F4C2AF1224
:1014F80008E51208E51208E51206BEAF641208E511
:101508001208E51206A7DFF51206AF1206AF120899
:10151800E51206A71206A71208EB1206A71206A7DD
:101528001208F11206A71206A7D2AF1206AB120BC9
:101538009D7530007F32C20712069FE52870026150
:1015480086C3E553940840ECDFEE2007EB1206ABA8
:10155800E5287003021386D2A93139E4F522F52370
:10156800F524F5257557FF7887865AF53CF53DF53E
:101578003EF53FF540F563F545F52CF52DF556F5A7
:101588002BF564F565755300120D5D75630875BB21
:101598001012069B120C4CE5E820ECFBA8BDA9BE76
:1015A800E97001F88866120C5075630875BB1078ED
:1015B80089E6FE760131B67889EEF6D269C2AF12B5
:1015C8000D2B852257852258D2AFC2697525007523
:1015D8005D00755E01D268D26B75350011A411DF0C
:1015E800120D64120D5D0215FB31B611DF75630033
:1015F80075BB06120E7E120F09120F311209E01286
:101608000F45120FAC120D64120DBF120DD8120E39
:101618005C120E75120F09120F31120A41120F4592
:10162800120FDE120D64120DBF120DD8120E5C12CD
:101638000E7E120F09120F31120A7A120F45112865
:10164800120D64120DBF120DD8120E5C120E751217
:101658000F09120F31120AD7120F451163120D64C8
:10166800120DBF120DD8120E5C120E7E120F091247
:101678000F31120B3B120F4511A4120D64120DBF4E
:10168800120DD8120E5C120E75120C4C120F0912A4
:101698000F31120C50120F4511DF120D64120DBFDD
:1016A800120DD8120E5C306B2A855957855958751A
:1016B8005D00755E01C3E5359464400AC26BD26C67
:1016C8007534140216DBC3E553940140030215FB7D
:1016D80002170B306C19E534147005C26C0215F151
:1016E800F534C3E553940140030215FB02170BC3FD
:1016F800E556952B500DE5286009C3E53994F0505F
:1017080002A1FB31397889E6FE760131B67889EE97
:10171800F6E4F522F523F524F525F55AC2681206F4
:101728009B31391206A3C2A9207202E14B2074042E
:10173800D291E14B207306D292D291E14BD292D250
:1017480091D290E52870026186A140901A0F782006
:10175800121C00E520B4550CA3121C00E520B4AA05
:1017680003021777314912087712180702180690F2
:101778001A037880121C00A308121C00A308121C6C
:1017880000A308121C00A308121C00A308121C00C6
:10179800A308121C00A308A308121C00A308121C0B
:1017A80000A308121C00A308121C00A308A308A386
:1017B80008121C00A308A308121C00A308121C008E
:1017C800A308121C00A308A308121C00A308121CDB
:1017D80000A308A308121C00A308121C00A30812E7
:1017E8001C00A308121C00A308121C00A308121C4A
:1017F80000A308121C00A308121C00901A2222C27F
:10180800AF121C19901A00740A121C05A374021254
:101818001C05A37410121C05901A037880121C046E
:10182800A308121C04A308121C04A308121C04A376
:1018380008121C04A308121C04A308121C04A30801
:10184800A308121C04A308121C04A308121C04A356
:1018580008121C04A308A308A308121C04A308A3C5
:0F18680008121C04A308121C04A308121C04A3DA
:1018770008A308121C04A308121C04A308A3081237
:101887001C04A308121C04A308121C04A308121C9E
:1018970004A308121C04A308121C04A308121C04A6
:0E18A700A308121C04121C30901A22D2AF2289
:101A00000A021066090901020103FF0A01010155DA
:101A1000AA01FFFF0105FF0301FF25D05064020D5D
:031A20000200FFC2
:101A400023585031384123202020202020202020DE
:101A500023424C48454C4923463333302320202031
:101A60002020202020202020202020202020202076
:101C0000E493F622E6438F01538FFD75EF0275B71B
:101C1000A575B7F1F0538FFE22438F02438F0175F4
:101C2000EF0275B7A575B7F1901A0FF0538FFC222C
:101C3000901A0F74559105901A1074AA9105227A82
:101C40003079D07820901A409100E520F709A3DA86
:101C5000F7227A3079D0901A40E7910509A3DAF992
:101C600022AB69A86ABB01057995021C9ABB0205E3
:101C70007994021C9ABB03057988021C9ABB04055F
:101C80007983021C9ABB05057989021C9ABB06055B
:101C90007984021C9A7985021C9AE8F7221206C5FB
:101CA000D2667C0A1206AFC3E5539401400BC3E52C
:101CB0005394FF40EDDCED81DE7C0A1206AFC3E5F4
:101CC0005394015005DCF4A19EC3E55394FF40E911
:101CD0001211491208771218071206DE81A27569DF
:101CE000011206F97C0AAD531206AFC3ED9553708D
:101CF000F5C3E55394014053C3E55394FF5002816B
:101D0000E6306621DCE00569E569940840D37C0A89
:101D10001206AFC3E55394014076C3E55394FF40E8
:101D2000EFDCED81DED2669161120877121807129E
:101D300006DE7C0A1206AFC3E55394014052C3E5A8
:101D40005394FF40EFDCED7C01A1017C0A1206AF49
:101D5000C3E55394FF508FC3E553940150EFDCED7E
:101D6000C266756A011206F97C0A1206AFC3E55312
:101D700094FF508DC3E553940150EFDCED056AE507
:101D800069149000B193F808C3E56A9850D4A1652E
:0F1D90007C0A1206AFC3E553940150F6DCF4222F
:00000001FF
Loading…
Cancel
Save