4=Li.,Dvectors@r@mon_mainDD@.text,, .dataDD@.bssimon_pge0`` mon_rgstllstackii y,yyyyyyhigopie@yyyyy y"yhigdvTy.y0y2y4y6y8y:y<y>l `dkccopie@imiigf~< incmcfmhnhgvlhvmivnttvqrsqsrussuvwxyz{|b`fI@J bLbNbMb Jkjjid0dkki i`cib`bwgMy cbHb`Obhb`nDky`La ayaiiaaiaihaihhaih2tvqsrussuvwxyz{|ddk@em@mlvpjobnm zzzz$zzFz@-./01@FI;ytMȺDfL8iN84i7i6i626iп5i57yi7i7p74i5iyfAFBD i )o%UU%  0*|01)8 @ #"#e$4!`#y#iiy##i0(i y>(i *D>*)i i@Ti iy[Fi*i  i@qi  i yx Fi i+i y*/i i@i iyFi"#e$4!`45678##iiimmmliпyi/Dilyiп;HKJ&'9:><*=giJ?@:yP?@:i]?@:yc?@:CDA BE!"#$(%LNMRTPQ;H49KSWXY?V#7@C;(iiD(>y)i i_)i)45y iiD)i)4i4y;y0ii00i04 5 yi6D0i04i 4y;y l#"i2!i!D6"!y2"i6!i!D6"!y6;yP#ia$i$D$#>iп%ya#i$i$Da$#%y;>'i'&0D'ii,D%i%i%4i 4y4 5yCiBl>iKiCiBy;yi*0D>>y;iN;i{yNiK0DW0#XyQTyJQTiK0D#XPPiY0DPTiDTyX& Ki0PPiW0&#i'#>iп%'i'&0D$'i i,$%i$%i%4i $4y$4 5y#i5#%iп>5>Ki0PPiY0DPTiDTy8TiJTTi@yN@:99:0D9>i;0DpycXicyp>lQ0l>y>y>Q >>yQ@>;0@:99:0D9>;0D>Q0>y>y>Q >>[gh^\8]0@п\z=D zIi?IIiIHiKHeiflHiHzz=88ia@  @3Beifi eybibBiпmeiпeymBiпmeiпeieiп{\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\yeiп\y4 5 y4i 4giпMDL*i0y+iěig>i?+y>i*+y>i+hiD(hyFhiheiflFgigDHng45 yg#iQwyt\  =ytytytyt yt?  s T #i%0y>0s Tiii@X]bglq45yf0MDL   0ia@yfi/i/ia@y.yfyfyfyfyfyfyf@y.file^gc200mnrt.asmV^oDUNUSED_ADA2MNRT_AEFG'H1I;JJJUL`NkPvRPRM_CMND`PRM_ADRSabcghijkjkMON_PClMON_ST0mMON_ST1nMON_PLOqMON_PHIrMON_TREGsMON_TOStAUXREG0uAUXREG1vAUXREG2wAUXREG3xAUXREG4yAUXREG5zAUXREG6{AUXREG7|TUVW XY$Z0[<\J]XftWR_OR_RDXTRNCMND$2DO_AINCDOSWITCH<GMON_PMRDMON_PMWRMON_DMRDMON_DMWRR MON_EXIT^i .text,.dataD.bssmon_mainDmon_pge0` mon_rgstl.filegBLDChall.asmV^oupotinptctempbusvtempMfunc_p  period ptctempC ptc ptctotalcounter rodflag2rodflagGPR0GPR1GPR2v_timer#. OEfilter!OEbit"brakebit#9$brakepwm%brkrmp&E'OCtrip(TPfault)O*default+OCfault,\-g.invhall/UVfault0OVfault1s234faultctr5faulttmr6faultwht7looptmr89rmp2_dly:;<=rmp2_out>?@dirnoiseAcmtndirBCDlastdirEbit_maskFGPRXGHvtimer2IpotinadjJK Lvtimer3MpresadjNpressureOpreserrPintgainQpresgainRproppresSpropgainTU!VlinrampWrmpdirXcumerrY-Z7ZA[P\cap_cntr]`^j_z`abcdefghRESETINT1INT2INT3INT4INT5 INT6 HUNG1CHUNG1EHUNG20 TRAP"NMI$HUNG2E.HUNG300HUNG322HUNG344HUNG366HUNG388HUNG3A:HUNG3C<HUNG3E>_c_int0A,MAINfM_1ftwaitingnofault iMASK#ADC04DRV1startad#loadcurl0readnd>avgbusTbustime[avgptcqptctimex<FQ[ftSW1SW2SW3SW4dontincvalidseqexitdip$slowrmpJendramp1Pslowrmps]endrampscRMP2CNTLnotripbusvsdendbusv#OEupdate26braking6Pbraking1abrakeOV dircheckloadpotrampit(4>slowloopHneggain2R\brakeOV2 f$complimb&r5|8DcomplimtJNnoclNPXdec_rmp2cdontdeclinc_rmp2prampit2{dontdecaRUN_MODE  =.b9mchkANC{chkBNCchkBNAchkCNAchkCNBfourpolechkANCbchkBNCbchkBNAbchkCNAbchkCNBbCHALL_ENDMM_1AWover24over36bp(~+6FHHmotoringQX]bglqt 'ANBANCBNCBNACNACNB7ArunmotorPHANTOM1PHANTOM2PHANTOM3PHANTOM4PHANTOM5PHANTOM6NMI_ISRLOOP.text,.dataD.bssivectors@%stacki T1PRtWDCR)pKWcSCILBAUDSpSPIBRRDpMAXCONVpDINRpA2MNRT_Cq }MSG_CNTLT3CNT tT1CMPtPDDATDIRpWSGR   + 9 K FPERIODX b externalB2_MSKCAP2FIFO$tSPICCR@pUNUSED_Cl z lowpwmATN_SWBP B5_MSK T3CON tSCIRXBUFWpx2407ANA_SWLOg  SPIRXBUFGpPCDATDIRpB_EMUMSK  MAX_TRIPB8_MSKMSG_DATA   B2_SADDR`SPICTLApCMNDMASK MON_FULL p  ! , < R pPBDATDIRp_ EVIFRA/tACTRtq p~ @    B1_SADDREVIFRB0tT2CONtSCICCRPp p ANA_SWHIwMON_CORE B10_MSKEVIFRC1tSPIPRIOp p   pPADATDIRp scicomB13_MSK T1CNTtGPTCONtSCIHBAUDRpNMI_CNTLrp* MAPSMASKAINCMASK4 B tachoutEXTDATAB0_SADDRSCICTL1QpWDKEY%pO Z k |   CAP3FBOT)tSCICTL2TpIPSRBpMON_DMAPATN_TRAP    @EV_BASEtEVERMASK@  COMCONtT1CONtADCTRL1p PORDMASK B1_MSKCAP1FIFO#tADCTRL2p ANA_UBP0% 3 EVIVRA2tDBTCONtB ANA_UBP1M ^ protoB4_MSKEVIVRB3tEVIMRA,tCAP4FIFO&tSCIPRI_pSYSSRpp MON_AR{   EVIVRC4tEVIMRB-tSCMPR1t  B7_MSKEVIMRC.tCAPCON tSCMPR2tSCITXBUFYp @   SCMPR3tSPISTSBpIFR   nopotXINT3CRzp& 1 STOPMASK; SCSR1pI SCIRXEMUVpSCSR2pT ^ SPIRXEMUFph t SACTRt  B12_MSKSPIDATIp pXINT2CRxp  p g  MON_RGSTB15_MSKB2_EADDRCAP2FBOT(t pSCSRp   CMPR1tSPI_PC1Mp,p8pOCRApBnolowpwmnosciMCMPR2tSPI_PC2NpWpcpopOCRBpGREGyB0_MSKCMPR3tppOCRCpMAX_RMP2B1_EADDR(p4pXINT1CRpp>IS0B3_MSKCAP3FIFO%tipRTI_CNTL'pMON_PMAPuBIT0T3PR tT3CMP tpSYSIVRpRORWMASK B6_MSK@BIT1p+pMSG_STATinternalBIT2 B0_EADDR]p -pIMR ,?B9_MSKBIT3 BIT10M^pABRPTATN_OKYBIT4 BIT11cpWDCNTR#po,tPRM_XTND{MSG_CMNDframe64BIT5 BIT12SCIRXSTUpRTI_CNTR!pBIT6 BIT13T2PRt BIT7BIT14T2CMPt@SNGLMASK  BIT8BIT15reverseB11_MSKBIT9PIVRp )3I2TcountB14_MSK@CAP1FBOT'tCAPFIFO"tPEDATDIRpAM_c_int0.[TgethfiydTMON_WAITg~MON_ACCHpMON_ACCLoMON_GOf_^`MON_STOPU l,k;GkUjcimw&MON_ROOT,SYS_INITT2CNTt=PHANTOM.text,etext.dataDedataD.bssendicinitpinitEXTERNAL_TABLEPM2HOST_APM2MNRT_ADM2HOST_ADM2MNRT_AINTERNAL_TABLESENDCMND_ARECVCMND_ADOAWRITE_ASWCHOPRT_AMAYBERUN_AMON_MACHINEMON_STATUSMON_TEMP0MON_TEMP1MON_TEMP2MON_TEMP3MON_TEMP4ENTR_ADRSEXIT_ADRSFIX_ETRAPFIX_ESTOPFIX_REGISTERFIX_OPTION1FIX_OPTION2FIX_PAGE_ZROFIX_OPTION3FIX_OPTION4FIX_PMAP_ADDRFIX_DMAP_ADDRMON_SAVE_COREMON_SAVE_FULLMON_EVALUATEDONE_EVALUATEMON_COMMANDINTERNAL_CMNDEXTERNAL_CMNDONLY_ETRAPRECVCMND_ENTRSENDCMND_ENTRSWCHOPRT_ENTRNOACTION_ENTRMAYBERUN_EXITRECVCMND_EXITDOAWRITE_EXITXTRNCMND_EXITAINC_TESTMON_UNUSEDMON_ADRSWRMON_EXECUTEEXIT_ETRAPMON_QUICKGOphaseAvoltsphaseBvoltsphaseCvoltsbusvtotalbusvtempCbusvoltageperiod_maxbuscurrentbuscurtotbuscurcntbuscurtmpmaxcurrentdipswitchpdipswitchdipcountercurrent_setalign_flagpdpcounterbrakefilterbrkrmpdelcurrentlimitOtempfaultlockedrotorEEpromfaultRS232faultfaultflagrmp2_delay_cntrrmp2_desiredrmp_point1rmp_point2rmpdlypctrmp2_dlysetrealtimedirdircontrolhall_counterhallcountpres_countpreserrcntpreserrtcnthall_varstimestampcmtn_trig_hallhall_state_nexthall_flaghall_state_zerohall_state_onehall_state_twohall_state_threehall_state_fourhall_state_fivehall_GPIOhall_previoushall_changehallchgcurfaultflashloaddelayfaultdonestack_startADC04DRV_INITzerorodflgstart_nxtstart_nxt1avgbuscurbuscurtimeINITA_OUT_DRVdipdebouncedebouncedoneRMP2CNTL_INITOCtripoutthermalsdthermalupdateskipthermalendthermalbusvupdatedircheck1skipoenablebrakefltrbrkrmpdoneskipbrakerunupdatepotupdatenothchange2preschecklinearrmpgainloop2neggainl2contbrakebrkrmpdone2complimtzneggainl2acomplimt2nospdcomploadpointchng_rmp2inc_rmp2adone_rmp2HALL3_DRV_INITT2_PERIOD_ISRcheckdiffcheckerrornothchangeSKIP_D_FUNC_RMPupdat_v_timerDetermine_StatecwrotationhallcheckHALL_ENDIHALL_END2INCCURTIMEhallchgcurchkinchallchgcurcheckhallchangeNOHALLCHANGEHALLCHANGEENDHALLCHECKcommutateSTATE_ANBSTATE_ANCSTATE_BNCSTATE_BNASTATE_CNASTATE_CNBSTATE_ENDnormalpwmbrakepwmjLOCKEDROTOREXITCOMMUTATION_TBLPDPINTRSTDelayloopMON_OPTION1MON_XTND_ONMON_USER_INT7MON_OPTION2B_STATXFERCMND_DMRDMON_DMAP_ADDRMON_IO_MAP_USE_NOTMON_USER_INT8SENDCMND_CMON_OPTION3B_ANAMSGFLGMON_WAIT_SNGL_NOTMON_OPTION4B_ANATPOFFB_STATWFULMON_DMAP_PAGE_DATAMON_FULL_LAZYMON_AUTO_INC_NONEMON_RGST_ANYanalogoutPlugpowerMON_WAIT_EVERALIGN_DUTYB_STATFUNCMON_WAIT_USECMND_IORDMON_RESET_MESG_DEFAULTMON_XTND_DATAMON_PMAP_PAGE_DATACAP_PERIODMON_SE_CNFG_USE_YESADC_RESULT10PM2HOST_CB_STATANYBPB_RORWMASKMON_ERROR_CHECKMON_ERROR_CHECK_BASICADC_RESULT11MON_VECTOR_BRANCHADC_RESULT12ANA_TPOFFSTAT_CMNDCMND_DMWRMON_CORE_LAZYhall_sensorsADC_RESULT13RECVCMND_CproductionADC_RESULT14MON_XTND_OFFMON_AUTO_INC_EXTRAADC_RESULT15MON_RESET_MESG_CUSTOMSTAT_STRPMON_WAIT_STOPMON_INT_ALTRB_SNGLMASKMON_XTND_DATA_ONMON_WAIT_USE_YESMON_SE_CNFG_USE_NOTMON_ERROR_CHECK_NONEspeedcompCMND_IOWRMON_PMAP_PAGEMON_PMAP_PAGE_IOMON_WAIT_EVER_YESHALL_DEBUGsensorlessB_ANASPOFFMON_RESET_MESGSWCHOPRT_CMON_WAIT_SNGLMON_CORE_EXACTMAYBERUN_CMON_VECTOR_MACROSYSTEM_INT_PERIODB_STATCMNDATN_RESETCMND_PMRDMON_IO_MAP_USE_ROMDOAWRITE_CMON_INT_ALTR_NOTMON_EMUMSKMON_DMAP_PAGE_IOMON_WAIT_USE_NOTMON_VECTORMON_WAIT_EVER_NOTMON_WAIT_STOP_YEST2_PRESCALEB_STATSTRPSTAT_RFULMON_DEBUG_YESB_ANATRPONDM2HOST_CANA_SPOFFGLB_INT_ENBMON_AR_VALUEPM2MNRT_CMON_IO_MAP_USEADC_RESULT0nospeedcompADC_RESULT1ANA_DEFAULTCMND_PMWRMON_WAIT_STOP_NOTADC_RESULT2SNG_STP_DSBMON_DEBUG_NOTMON_PMAP_ADDRMON_XTND_PROG_OFFADC_RESULT3CHSELSEQ1ANA_SWITCHptctempenCALIBRATIONADC_RESULT4CHSELSEQ2ANA_TRPONMON_DMAP_PAGEMON_XTND_PROG_ONMON_FULL_EXACTADC_RESULT5CHSELSEQ3B_STATRFULB_MAPSMASKB_AINCMASKCMND_ADRSMON_DMAP_PAGE_PROGMON_SE_CNFG_USEMON_AUTO_INC_BASICADC_RESULT6CHSELSEQ4ANA_MSGFLGCMND_NONEMON_ERROR_CHECK_EXTRAADC_RESULT7B_ANAUBP0ADC_RESULT8B_ANAUBP1B_EVERMASKstack_sizeADC_RESULT9PLL_CNTL1B_PORDMASKMON_RESET_MESG_FLOWMON_IO_MAP_USE_RAMMON_RGST_ZROSCI_PORT_C1PLL_CNTL2STAT_XFERUSR_INT_DSBMON_PMAP_PAGE_PROGMON_XTND_PROGSCI_PORT_C2MON_DEBUGAUTO_SEQ_SRPDPINT_CNTLSTAT_WFULreal_timeSTAT_ANYBPMON_XTND_DATA_OFFMON_WAIT_SNGL_YESMON_USER_INT1STAT_FUNCMON_AUTO_INCMON_USER_INT2B_STOPMASKMON_USER_INT3MON_INT_ALTR_ENBMON_USER_INT4DM2MNRT_CMON_USER_INT5B_ANASWITCHMON_USER_INT6MON_POINTERMON_IMR_SAVEMON_TEMP_ST0MON_ST0_SAVEMON_TEMP_ST1MON_INTR_ENTRYMON_INT_MSKMON_TRAP_VECMON_WAIT_B2MON_STARTMON_TEMP_PCMON_TWO_SAVEMON_ENTRYMON_RT_CNFGMON_SE_CNFGMON_PGE0_DPMON_RGST_DPMON_TRAP_ENTRYMON_RELEASEMON_TEMP_ACCHMON_TEMP_ACCLMON_RESETMON_EINTRBLDC_PWM_DRV_INITMON_ETRAPBLDC_PWM_DRV