soft_bms.lst 223 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943
  1. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 1
  2. 1 .cpu cortex-m4
  3. 2 .arch armv7e-m
  4. 3 .fpu fpv4-sp-d16
  5. 4 .eabi_attribute 27, 1
  6. 5 .eabi_attribute 28, 1
  7. 6 .eabi_attribute 20, 1
  8. 7 .eabi_attribute 21, 1
  9. 8 .eabi_attribute 23, 3
  10. 9 .eabi_attribute 24, 1
  11. 10 .eabi_attribute 25, 1
  12. 11 .eabi_attribute 26, 1
  13. 12 .eabi_attribute 30, 6
  14. 13 .eabi_attribute 34, 1
  15. 14 .eabi_attribute 18, 4
  16. 15 .file "soft_bms.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .global Device1
  21. 20 .section .bss.Device1,"aw",%nobits
  22. 21 .align 2
  23. 24 Device1:
  24. 25 0000 00000000 .space 333
  25. 25 00000000
  26. 25 00000000
  27. 25 00000000
  28. 25 00000000
  29. 26 .global Device2
  30. 27 .section .bss.Device2,"aw",%nobits
  31. 28 .align 2
  32. 31 Device2:
  33. 32 0000 00000000 .space 333
  34. 32 00000000
  35. 32 00000000
  36. 32 00000000
  37. 32 00000000
  38. 33 .global bms_data
  39. 34 .section .data.bms_data,"aw"
  40. 35 .align 2
  41. 38 bms_data:
  42. 39 0000 00000000 .space 98
  43. 39 00000000
  44. 39 00000000
  45. 39 00000000
  46. 39 00000000
  47. 40 0062 FFFF .short -1
  48. 41 0064 0000 .space 2
  49. 42 .global bms_data2
  50. 43 .section .data.bms_data2,"aw"
  51. 44 .align 2
  52. 47 bms_data2:
  53. 48 0000 00000000 .space 98
  54. 48 00000000
  55. 48 00000000
  56. 48 00000000
  57. 48 00000000
  58. 49 0062 FFFF .short -1
  59. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 2
  60. 50 0064 0000 .space 2
  61. 51 .section .rodata
  62. 52 .align 2
  63. 53 .LC0:
  64. 54 0000 6F6B6365 .ascii "okcell1\000"
  65. 54 6C6C3100
  66. 55 .align 2
  67. 56 .LC1:
  68. 57 0008 6F6B6365 .ascii "okcell2\000"
  69. 57 6C6C3200
  70. 58 .align 2
  71. 59 .LC2:
  72. 60 0010 74617474 .ascii "tattu1\000"
  73. 60 753100
  74. 61 0017 00 .align 2
  75. 62 .LC3:
  76. 63 0018 74617474 .ascii "tattu2\000"
  77. 63 753200
  78. 64 001f 00 .align 2
  79. 65 .LC4:
  80. 66 0020 68657265 .ascii "herewin\000"
  81. 66 77696E00
  82. 67 .section .text.update_bms_data,"ax",%progbits
  83. 68 .align 1
  84. 69 .global update_bms_data
  85. 70 .syntax unified
  86. 71 .thumb
  87. 72 .thumb_func
  88. 74 update_bms_data:
  89. 75 .LFB133:
  90. 76 .file 1 "user_src/soft_bms.c"
  91. 1:user_src/soft_bms.c **** #include "soft_bms.h"
  92. 2:user_src/soft_bms.c **** #include "main.h"
  93. 3:user_src/soft_bms.c **** #include "soft_engine.h"
  94. 4:user_src/soft_bms.c **** #include "soft_bms.h"
  95. 5:user_src/soft_bms.c **** #include "soft_okcell.h"
  96. 6:user_src/soft_bms.c **** #include "soft_tattu.h"
  97. 7:user_src/soft_bms.c **** #include "soft_poweramp.h"
  98. 8:user_src/soft_bms.c **** #include "string.h"
  99. 9:user_src/soft_bms.c **** #include "stdio.h"
  100. 10:user_src/soft_bms.c **** #include "stdlib.h"
  101. 11:user_src/soft_bms.c **** #include "soft_herewin.h"
  102. 12:user_src/soft_bms.c **** #include "soft_crc.h"
  103. 13:user_src/soft_bms.c **** #include "soft_p_2_c.h"
  104. 14:user_src/soft_bms.c **** #include "soft_seed_device.h"
  105. 15:user_src/soft_bms.c **** #include "soft_version.h"
  106. 16:user_src/soft_bms.c **** #include "qingxie_bms.h"
  107. 17:user_src/soft_bms.c ****
  108. 18:user_src/soft_bms.c ****
  109. 19:user_src/soft_bms.c **** Vkbms_Device Device1 = {.Vkbms_Link.connect_status = COMP_NOEXIST};
  110. 20:user_src/soft_bms.c **** Vkbms_Device Device2 = {.Vkbms_Link.connect_status = COMP_NOEXIST};
  111. 21:user_src/soft_bms.c ****
  112. 22:user_src/soft_bms.c ****
  113. 23:user_src/soft_bms.c **** struct BMS_DATA bms_data = {.bms_ss = 0xFFFF}, bms_data2 = {.bms_ss = 0xFFFF};
  114. 24:user_src/soft_bms.c ****
  115. 25:user_src/soft_bms.c **** /**
  116. 26:user_src/soft_bms.c **** * @file update_bms_data
  117. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 3
  118. 27:user_src/soft_bms.c **** * @brief 更新电池信�
  119. 28:user_src/soft_bms.c **** * @param none
  120. 29:user_src/soft_bms.c **** * @details
  121. 30:user_src/soft_bms.c **** * @author Zhang Sir
  122. 31:user_src/soft_bms.c **** **/
  123. 32:user_src/soft_bms.c **** void update_bms_data( void )
  124. 33:user_src/soft_bms.c **** {
  125. 77 .loc 1 33 1
  126. 78 .cfi_startproc
  127. 79 @ args = 0, pretend = 0, frame = 8
  128. 80 @ frame_needed = 1, uses_anonymous_args = 0
  129. 81 0000 80B5 push {r7, lr}
  130. 82 .LCFI0:
  131. 83 .cfi_def_cfa_offset 8
  132. 84 .cfi_offset 7, -8
  133. 85 .cfi_offset 14, -4
  134. 86 0002 8AB0 sub sp, sp, #40
  135. 87 .LCFI1:
  136. 88 .cfi_def_cfa_offset 48
  137. 89 0004 08AF add r7, sp, #32
  138. 90 .LCFI2:
  139. 91 .cfi_def_cfa 7, 16
  140. 34:user_src/soft_bms.c **** //正方电池
  141. 35:user_src/soft_bms.c **** Check_dev_link(&okcell_device1.Okcell_Link,5000,(char *)&okcell_device1.okcell_inf,sizeof(_CELL
  142. 92 .loc 1 35 5
  143. 93 0006 7A23 movs r3, #122
  144. 94 0008 AB4A ldr r2, .L41
  145. 95 000a 41F28831 movw r1, #5000
  146. 96 000e AB48 ldr r0, .L41+4
  147. 97 0010 FFF7FEFF bl Check_dev_link
  148. 36:user_src/soft_bms.c **** Check_dev_link(&okcell_device2.Okcell_Link,5000,(char *)&okcell_device2.okcell_inf,sizeof(_CELL
  149. 98 .loc 1 36 5
  150. 99 0014 7A23 movs r3, #122
  151. 100 0016 AA4A ldr r2, .L41+8
  152. 101 0018 41F28831 movw r1, #5000
  153. 102 001c A948 ldr r0, .L41+12
  154. 103 001e FFF7FEFF bl Check_dev_link
  155. 37:user_src/soft_bms.c **** //格�电池
  156. 38:user_src/soft_bms.c **** Check_dev_link(&tattu_device1.Tattu_Link,5000,(char *)&tattu_device1.ttu_inf,sizeof(_TATTU_INFO
  157. 104 .loc 1 38 5
  158. 105 0022 4623 movs r3, #70
  159. 106 0024 A84A ldr r2, .L41+16
  160. 107 0026 41F28831 movw r1, #5000
  161. 108 002a A848 ldr r0, .L41+20
  162. 109 002c FFF7FEFF bl Check_dev_link
  163. 39:user_src/soft_bms.c **** Check_dev_link(&tattu_device2.Tattu_Link,5000,(char *)&tattu_device2.ttu_inf,sizeof(_TATTU_INFO
  164. 110 .loc 1 39 5
  165. 111 0030 4623 movs r3, #70
  166. 112 0032 A74A ldr r2, .L41+24
  167. 113 0034 41F28831 movw r1, #5000
  168. 114 0038 A648 ldr r0, .L41+28
  169. 115 003a FFF7FEFF bl Check_dev_link
  170. 40:user_src/soft_bms.c **** //�目电池
  171. 41:user_src/soft_bms.c **** //check_poweramp_link();
  172. 42:user_src/soft_bms.c **** //海盈电池
  173. 43:user_src/soft_bms.c **** Check_dev_link(&Herewin_Link,5000,(char *)&herewin_info,sizeof(herewin_bms));
  174. 116 .loc 1 43 5
  175. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 4
  176. 117 003e 3E23 movs r3, #62
  177. 118 0040 A54A ldr r2, .L41+32
  178. 119 0042 41F28831 movw r1, #5000
  179. 120 0046 A548 ldr r0, .L41+36
  180. 121 0048 FFF7FEFF bl Check_dev_link
  181. 44:user_src/soft_bms.c **** //VK电池
  182. 45:user_src/soft_bms.c **** Check_dev_link(&Device1.Vkbms_Link,5000,(char *)&Device1,sizeof(Vkbms_Device));
  183. 122 .loc 1 45 5
  184. 123 004c 40F24D13 movw r3, #333
  185. 124 0050 A34A ldr r2, .L41+40
  186. 125 0052 41F28831 movw r1, #5000
  187. 126 0056 A248 ldr r0, .L41+40
  188. 127 0058 FFF7FEFF bl Check_dev_link
  189. 46:user_src/soft_bms.c **** Check_dev_link(&Device2.Vkbms_Link,5000,(char *)&Device2,sizeof(Vkbms_Device));
  190. 128 .loc 1 46 5
  191. 129 005c 40F24D13 movw r3, #333
  192. 130 0060 A04A ldr r2, .L41+44
  193. 131 0062 41F28831 movw r1, #5000
  194. 132 0066 9F48 ldr r0, .L41+44
  195. 133 0068 FFF7FEFF bl Check_dev_link
  196. 47:user_src/soft_bms.c ****
  197. 48:user_src/soft_bms.c **** if ( okcell_device1.Okcell_Link.connect_status == COMP_NORMAL || okcell_device2.Okcell_Link.con
  198. 134 .loc 1 48 36
  199. 135 006c 9E4B ldr r3, .L41+48
  200. 136 006e 93F8D730 ldrb r3, [r3, #215] @ zero_extendqisi2
  201. 137 .loc 1 48 8
  202. 138 0072 012B cmp r3, #1
  203. 139 0074 05D0 beq .L2
  204. 140 .loc 1 48 96 discriminator 1
  205. 141 0076 9D4B ldr r3, .L41+52
  206. 142 0078 93F8D730 ldrb r3, [r3, #215] @ zero_extendqisi2
  207. 143 .loc 1 48 67 discriminator 1
  208. 144 007c 012B cmp r3, #1
  209. 145 007e 40F03983 bne .L3
  210. 146 .L2:
  211. 49:user_src/soft_bms.c **** {
  212. 50:user_src/soft_bms.c **** Dev.Bms_Link.connect_status = COMP_NORMAL;
  213. 147 .loc 1 50 37
  214. 148 0082 9B4B ldr r3, .L41+56
  215. 149 0084 0122 movs r2, #1
  216. 150 0086 83F8E021 strb r2, [r3, #480]
  217. 51:user_src/soft_bms.c ****
  218. 52:user_src/soft_bms.c **** //第一组电池
  219. 53:user_src/soft_bms.c **** if ( okcell_device1.Okcell_Link.connect_status == COMP_NORMAL )
  220. 151 .loc 1 53 40
  221. 152 008a 974B ldr r3, .L41+48
  222. 153 008c 93F8D730 ldrb r3, [r3, #215] @ zero_extendqisi2
  223. 154 .loc 1 53 12
  224. 155 0090 012B cmp r3, #1
  225. 156 0092 40F09081 bne .L4
  226. 54:user_src/soft_bms.c **** {
  227. 55:user_src/soft_bms.c **** bms_data.bms_cycle = okcell_device1.okcell_inf.cell_D3.cell_d3[4];
  228. 157 .loc 1 55 75
  229. 158 0096 944B ldr r3, .L41+48
  230. 159 0098 B3F84031 ldrh r3, [r3, #320] @ unaligned
  231. 160 009c 9AB2 uxth r2, r3
  232. 161 .loc 1 55 32
  233. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 5
  234. 162 009e 954B ldr r3, .L41+60
  235. 163 00a0 A3F85920 strh r2, [r3, #89] @ unaligned
  236. 56:user_src/soft_bms.c **** if(okcell_device1.okcell_inf.cell_D0.cell_d0[6] >= 18) //正方超18S电池10mv��
  237. 164 .loc 1 56 57
  238. 165 00a4 904B ldr r3, .L41+48
  239. 166 00a6 B3F8F830 ldrh r3, [r3, #248] @ unaligned
  240. 167 00aa 9BB2 uxth r3, r3
  241. 168 .loc 1 56 15
  242. 169 00ac 112B cmp r3, #17
  243. 170 00ae 07D9 bls .L5
  244. 57:user_src/soft_bms.c **** {
  245. 58:user_src/soft_bms.c **** bms_data.bms_volt = okcell_device1.okcell_inf.cell_D0.cell_d0[0];
  246. 171 .loc 1 58 78
  247. 172 00b0 8D4B ldr r3, .L41+48
  248. 173 00b2 B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  249. 174 00b6 9AB2 uxth r2, r3
  250. 175 .loc 1 58 35
  251. 176 00b8 8E4B ldr r3, .L41+60
  252. 177 00ba A3F85B20 strh r2, [r3, #91] @ unaligned
  253. 178 00be 0BE0 b .L6
  254. 179 .L5:
  255. 59:user_src/soft_bms.c **** }
  256. 60:user_src/soft_bms.c **** else
  257. 61:user_src/soft_bms.c **** {
  258. 62:user_src/soft_bms.c **** bms_data.bms_volt = okcell_device1.okcell_inf.cell_D0.cell_d0[0] / 10;
  259. 180 .loc 1 62 78
  260. 181 00c0 894B ldr r3, .L41+48
  261. 182 00c2 B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  262. 183 00c6 9BB2 uxth r3, r3
  263. 184 .loc 1 62 35
  264. 185 00c8 8B4A ldr r2, .L41+64
  265. 186 00ca A2FB0323 umull r2, r3, r2, r3
  266. 187 00ce DB08 lsrs r3, r3, #3
  267. 188 00d0 9AB2 uxth r2, r3
  268. 189 00d2 884B ldr r3, .L41+60
  269. 190 00d4 A3F85B20 strh r2, [r3, #91] @ unaligned
  270. 191 .L6:
  271. 63:user_src/soft_bms.c **** }
  272. 64:user_src/soft_bms.c **** bms_data.bms_temp = okcell_device1.okcell_inf.cell_D0.cell_d0[2];
  273. 192 .loc 1 64 74
  274. 193 00d8 834B ldr r3, .L41+48
  275. 194 00da B3F8F030 ldrh r3, [r3, #240] @ unaligned
  276. 195 00de 9BB2 uxth r3, r3
  277. 196 00e0 1AB2 sxth r2, r3
  278. 197 .loc 1 64 31
  279. 198 00e2 844B ldr r3, .L41+60
  280. 199 00e4 A3F85F20 strh r2, [r3, #95] @ unaligned
  281. 65:user_src/soft_bms.c **** bms_data.bms_vs = okcell_device1.okcell_inf.cell_D0.cell_d0[3];
  282. 200 .loc 1 65 72
  283. 201 00e8 7F4B ldr r3, .L41+48
  284. 202 00ea B3F8F230 ldrh r3, [r3, #242] @ unaligned
  285. 203 00ee 9BB2 uxth r3, r3
  286. 204 .loc 1 65 29
  287. 205 00f0 DAB2 uxtb r2, r3
  288. 206 00f2 804B ldr r3, .L41+60
  289. 207 00f4 83F86120 strb r2, [r3, #97]
  290. 66:user_src/soft_bms.c **** //正方电池�关心飞控对接异常�让解�,�关心异常5
  291. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 6
  292. 67:user_src/soft_bms.c **** bms_data.bms_ss = ( ( okcell_device1.okcell_inf.cell_D0.cell_d0[5] >> 8 ) != 5 ) ? ( ok
  293. 208 .loc 1 67 76
  294. 209 00f8 7B4B ldr r3, .L41+48
  295. 210 00fa B3F8F630 ldrh r3, [r3, #246] @ unaligned
  296. 211 00fe 9BB2 uxth r3, r3
  297. 212 .loc 1 67 87
  298. 213 0100 1B0A lsrs r3, r3, #8
  299. 214 0102 9BB2 uxth r3, r3
  300. 215 .loc 1 67 29
  301. 216 0104 052B cmp r3, #5
  302. 217 0106 06D0 beq .L7
  303. 218 .loc 1 67 139 discriminator 1
  304. 219 0108 774B ldr r3, .L41+48
  305. 220 010a B3F8F630 ldrh r3, [r3, #246] @ unaligned
  306. 221 010e 9BB2 uxth r3, r3
  307. 222 .loc 1 67 29 discriminator 1
  308. 223 0110 1B0A lsrs r3, r3, #8
  309. 224 0112 9BB2 uxth r3, r3
  310. 225 0114 00E0 b .L8
  311. 226 .L7:
  312. 227 .loc 1 67 29 is_stmt 0 discriminator 2
  313. 228 0116 0023 movs r3, #0
  314. 229 .L8:
  315. 230 .loc 1 67 29 discriminator 4
  316. 231 0118 764A ldr r2, .L41+60
  317. 232 011a A2F86230 strh r3, [r2, #98] @ movhi
  318. 68:user_src/soft_bms.c **** bms_data.bms_num = okcell_device1.okcell_inf.cell_D0.cell_d0[6];
  319. 233 .loc 1 68 73 is_stmt 1 discriminator 4
  320. 234 011e 724B ldr r3, .L41+48
  321. 235 0120 B3F8F830 ldrh r3, [r3, #248] @ unaligned
  322. 236 0124 9BB2 uxth r3, r3
  323. 237 .loc 1 68 30 discriminator 4
  324. 238 0126 DAB2 uxtb r2, r3
  325. 239 0128 724B ldr r3, .L41+60
  326. 240 012a 1A71 strb r2, [r3, #4]
  327. 69:user_src/soft_bms.c ****
  328. 70:user_src/soft_bms.c **** bms_data.bms_v1 = okcell_device1.okcell_inf.cell_D0.cell_d0[7];
  329. 241 .loc 1 70 72 discriminator 4
  330. 242 012c 6E4B ldr r3, .L41+48
  331. 243 012e B3F8FA30 ldrh r3, [r3, #250] @ unaligned
  332. 244 0132 9AB2 uxth r2, r3
  333. 245 .loc 1 70 29 discriminator 4
  334. 246 0134 6F4B ldr r3, .L41+60
  335. 247 0136 A3F80520 strh r2, [r3, #5] @ unaligned
  336. 71:user_src/soft_bms.c **** bms_data.bms_v2 = okcell_device1.okcell_inf.cell_D0.cell_d0[8];
  337. 248 .loc 1 71 72 discriminator 4
  338. 249 013a 6B4B ldr r3, .L41+48
  339. 250 013c B3F8FC30 ldrh r3, [r3, #252] @ unaligned
  340. 251 0140 9AB2 uxth r2, r3
  341. 252 .loc 1 71 29 discriminator 4
  342. 253 0142 6C4B ldr r3, .L41+60
  343. 254 0144 A3F80720 strh r2, [r3, #7] @ unaligned
  344. 72:user_src/soft_bms.c **** bms_data.bms_v3 = okcell_device1.okcell_inf.cell_D0.cell_d0[9];
  345. 255 .loc 1 72 72 discriminator 4
  346. 256 0148 674B ldr r3, .L41+48
  347. 257 014a B3F8FE30 ldrh r3, [r3, #254] @ unaligned
  348. 258 014e 9AB2 uxth r2, r3
  349. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 7
  350. 259 .loc 1 72 29 discriminator 4
  351. 260 0150 684B ldr r3, .L41+60
  352. 261 0152 A3F80920 strh r2, [r3, #9] @ unaligned
  353. 73:user_src/soft_bms.c **** bms_data.bms_v4 = okcell_device1.okcell_inf.cell_D0.cell_d0[10];
  354. 262 .loc 1 73 72 discriminator 4
  355. 263 0156 644B ldr r3, .L41+48
  356. 264 0158 B3F80031 ldrh r3, [r3, #256] @ unaligned
  357. 265 015c 9AB2 uxth r2, r3
  358. 266 .loc 1 73 29 discriminator 4
  359. 267 015e 654B ldr r3, .L41+60
  360. 268 0160 A3F80B20 strh r2, [r3, #11] @ unaligned
  361. 74:user_src/soft_bms.c **** bms_data.bms_v5 = okcell_device1.okcell_inf.cell_D0.cell_d0[11];
  362. 269 .loc 1 74 72 discriminator 4
  363. 270 0164 604B ldr r3, .L41+48
  364. 271 0166 B3F80231 ldrh r3, [r3, #258] @ unaligned
  365. 272 016a 9AB2 uxth r2, r3
  366. 273 .loc 1 74 29 discriminator 4
  367. 274 016c 614B ldr r3, .L41+60
  368. 275 016e A3F80D20 strh r2, [r3, #13] @ unaligned
  369. 75:user_src/soft_bms.c **** bms_data.bms_v6 = okcell_device1.okcell_inf.cell_D0.cell_d0[12];
  370. 276 .loc 1 75 72 discriminator 4
  371. 277 0172 5D4B ldr r3, .L41+48
  372. 278 0174 B3F80431 ldrh r3, [r3, #260] @ unaligned
  373. 279 0178 9AB2 uxth r2, r3
  374. 280 .loc 1 75 29 discriminator 4
  375. 281 017a 5E4B ldr r3, .L41+60
  376. 282 017c A3F80F20 strh r2, [r3, #15] @ unaligned
  377. 76:user_src/soft_bms.c **** bms_data.bms_v7 = okcell_device1.okcell_inf.cell_D0.cell_d0[13];
  378. 283 .loc 1 76 72 discriminator 4
  379. 284 0180 594B ldr r3, .L41+48
  380. 285 0182 B3F80631 ldrh r3, [r3, #262] @ unaligned
  381. 286 0186 9AB2 uxth r2, r3
  382. 287 .loc 1 76 29 discriminator 4
  383. 288 0188 5A4B ldr r3, .L41+60
  384. 289 018a A3F81120 strh r2, [r3, #17] @ unaligned
  385. 77:user_src/soft_bms.c **** bms_data.bms_v8 = okcell_device1.okcell_inf.cell_D0.cell_d0[14];
  386. 290 .loc 1 77 72 discriminator 4
  387. 291 018e 564B ldr r3, .L41+48
  388. 292 0190 B3F80831 ldrh r3, [r3, #264] @ unaligned
  389. 293 0194 9AB2 uxth r2, r3
  390. 294 .loc 1 77 29 discriminator 4
  391. 295 0196 574B ldr r3, .L41+60
  392. 296 0198 A3F81320 strh r2, [r3, #19] @ unaligned
  393. 78:user_src/soft_bms.c **** bms_data.bms_v9 = okcell_device1.okcell_inf.cell_D0.cell_d0[15];
  394. 297 .loc 1 78 72 discriminator 4
  395. 298 019c 524B ldr r3, .L41+48
  396. 299 019e B3F80A31 ldrh r3, [r3, #266] @ unaligned
  397. 300 01a2 9AB2 uxth r2, r3
  398. 301 .loc 1 78 29 discriminator 4
  399. 302 01a4 534B ldr r3, .L41+60
  400. 303 01a6 A3F81520 strh r2, [r3, #21] @ unaligned
  401. 79:user_src/soft_bms.c **** bms_data.bms_v10 = okcell_device1.okcell_inf.cell_D0.cell_d0[16];
  402. 304 .loc 1 79 73 discriminator 4
  403. 305 01aa 4F4B ldr r3, .L41+48
  404. 306 01ac B3F80C31 ldrh r3, [r3, #268] @ unaligned
  405. 307 01b0 9AB2 uxth r2, r3
  406. 308 .loc 1 79 30 discriminator 4
  407. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 8
  408. 309 01b2 504B ldr r3, .L41+60
  409. 310 01b4 A3F81720 strh r2, [r3, #23] @ unaligned
  410. 80:user_src/soft_bms.c **** bms_data.bms_v11 = okcell_device1.okcell_inf.cell_D0.cell_d0[17];
  411. 311 .loc 1 80 73 discriminator 4
  412. 312 01b8 4B4B ldr r3, .L41+48
  413. 313 01ba B3F80E31 ldrh r3, [r3, #270] @ unaligned
  414. 314 01be 9AB2 uxth r2, r3
  415. 315 .loc 1 80 30 discriminator 4
  416. 316 01c0 4C4B ldr r3, .L41+60
  417. 317 01c2 A3F81920 strh r2, [r3, #25] @ unaligned
  418. 81:user_src/soft_bms.c **** bms_data.bms_v12 = okcell_device1.okcell_inf.cell_D0.cell_d0[18];
  419. 318 .loc 1 81 73 discriminator 4
  420. 319 01c6 484B ldr r3, .L41+48
  421. 320 01c8 B3F81031 ldrh r3, [r3, #272] @ unaligned
  422. 321 01cc 9AB2 uxth r2, r3
  423. 322 .loc 1 81 30 discriminator 4
  424. 323 01ce 494B ldr r3, .L41+60
  425. 324 01d0 A3F81B20 strh r2, [r3, #27] @ unaligned
  426. 82:user_src/soft_bms.c **** bms_data.bms_v13 = okcell_device1.okcell_inf.cell_D0.cell_d0[19];
  427. 325 .loc 1 82 73 discriminator 4
  428. 326 01d4 444B ldr r3, .L41+48
  429. 327 01d6 B3F81231 ldrh r3, [r3, #274] @ unaligned
  430. 328 01da 9AB2 uxth r2, r3
  431. 329 .loc 1 82 30 discriminator 4
  432. 330 01dc 454B ldr r3, .L41+60
  433. 331 01de A3F81D20 strh r2, [r3, #29] @ unaligned
  434. 83:user_src/soft_bms.c **** bms_data.bms_v14 = okcell_device1.okcell_inf.cell_D0.cell_d0[20];
  435. 332 .loc 1 83 73 discriminator 4
  436. 333 01e2 414B ldr r3, .L41+48
  437. 334 01e4 B3F81431 ldrh r3, [r3, #276] @ unaligned
  438. 335 01e8 9AB2 uxth r2, r3
  439. 336 .loc 1 83 30 discriminator 4
  440. 337 01ea 424B ldr r3, .L41+60
  441. 338 01ec A3F81F20 strh r2, [r3, #31] @ unaligned
  442. 84:user_src/soft_bms.c **** bms_data.bms_v15 = okcell_device1.okcell_inf.cell_D0.cell_d0[21];
  443. 339 .loc 1 84 73 discriminator 4
  444. 340 01f0 3D4B ldr r3, .L41+48
  445. 341 01f2 B3F81631 ldrh r3, [r3, #278] @ unaligned
  446. 342 01f6 9AB2 uxth r2, r3
  447. 343 .loc 1 84 30 discriminator 4
  448. 344 01f8 3E4B ldr r3, .L41+60
  449. 345 01fa A3F82120 strh r2, [r3, #33] @ unaligned
  450. 85:user_src/soft_bms.c **** bms_data.bms_v16 = okcell_device1.okcell_inf.cell_D0.cell_d0[22];
  451. 346 .loc 1 85 73 discriminator 4
  452. 347 01fe 3A4B ldr r3, .L41+48
  453. 348 0200 B3F81831 ldrh r3, [r3, #280] @ unaligned
  454. 349 0204 9AB2 uxth r2, r3
  455. 350 .loc 1 85 30 discriminator 4
  456. 351 0206 3B4B ldr r3, .L41+60
  457. 352 0208 A3F82320 strh r2, [r3, #35] @ unaligned
  458. 86:user_src/soft_bms.c **** bms_data.bms_v17 = okcell_device1.okcell_inf.cell_D0.cell_d0[23];
  459. 353 .loc 1 86 73 discriminator 4
  460. 354 020c 364B ldr r3, .L41+48
  461. 355 020e B3F81A31 ldrh r3, [r3, #282] @ unaligned
  462. 356 0212 9AB2 uxth r2, r3
  463. 357 .loc 1 86 30 discriminator 4
  464. 358 0214 374B ldr r3, .L41+60
  465. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 9
  466. 359 0216 A3F82520 strh r2, [r3, #37] @ unaligned
  467. 87:user_src/soft_bms.c **** bms_data.bms_v18 = okcell_device1.okcell_inf.cell_D0.cell_d0[24];
  468. 360 .loc 1 87 73 discriminator 4
  469. 361 021a 334B ldr r3, .L41+48
  470. 362 021c B3F81C31 ldrh r3, [r3, #284] @ unaligned
  471. 363 0220 9AB2 uxth r2, r3
  472. 364 .loc 1 87 30 discriminator 4
  473. 365 0222 344B ldr r3, .L41+60
  474. 366 0224 A3F82720 strh r2, [r3, #39] @ unaligned
  475. 88:user_src/soft_bms.c **** bms_data.bms_v19 = okcell_device1.okcell_inf.cell_D0.cell_d0[25];
  476. 367 .loc 1 88 73 discriminator 4
  477. 368 0228 2F4B ldr r3, .L41+48
  478. 369 022a B3F81E31 ldrh r3, [r3, #286] @ unaligned
  479. 370 022e 9AB2 uxth r2, r3
  480. 371 .loc 1 88 30 discriminator 4
  481. 372 0230 304B ldr r3, .L41+60
  482. 373 0232 A3F82920 strh r2, [r3, #41] @ unaligned
  483. 89:user_src/soft_bms.c **** bms_data.bms_v20 = okcell_device1.okcell_inf.cell_D0.cell_d0[26];
  484. 374 .loc 1 89 73 discriminator 4
  485. 375 0236 2C4B ldr r3, .L41+48
  486. 376 0238 B3F82031 ldrh r3, [r3, #288] @ unaligned
  487. 377 023c 9AB2 uxth r2, r3
  488. 378 .loc 1 89 30 discriminator 4
  489. 379 023e 2D4B ldr r3, .L41+60
  490. 380 0240 A3F82B20 strh r2, [r3, #43] @ unaligned
  491. 90:user_src/soft_bms.c **** bms_data.bms_v21 = okcell_device1.okcell_inf.cell_D0.cell_d0[27];
  492. 381 .loc 1 90 73 discriminator 4
  493. 382 0244 284B ldr r3, .L41+48
  494. 383 0246 B3F82231 ldrh r3, [r3, #290] @ unaligned
  495. 384 024a 9AB2 uxth r2, r3
  496. 385 .loc 1 90 30 discriminator 4
  497. 386 024c 294B ldr r3, .L41+60
  498. 387 024e A3F82D20 strh r2, [r3, #45] @ unaligned
  499. 91:user_src/soft_bms.c **** bms_data.bms_v22 = okcell_device1.okcell_inf.cell_D0.cell_d0[28];
  500. 388 .loc 1 91 73 discriminator 4
  501. 389 0252 254B ldr r3, .L41+48
  502. 390 0254 B3F82431 ldrh r3, [r3, #292] @ unaligned
  503. 391 0258 9AB2 uxth r2, r3
  504. 392 .loc 1 91 30 discriminator 4
  505. 393 025a 264B ldr r3, .L41+60
  506. 394 025c A3F82F20 strh r2, [r3, #47] @ unaligned
  507. 92:user_src/soft_bms.c **** bms_data.bms_v23 = okcell_device1.okcell_inf.cell_D0.cell_d0[29];
  508. 395 .loc 1 92 73 discriminator 4
  509. 396 0260 214B ldr r3, .L41+48
  510. 397 0262 B3F82631 ldrh r3, [r3, #294] @ unaligned
  511. 398 0266 9AB2 uxth r2, r3
  512. 399 .loc 1 92 30 discriminator 4
  513. 400 0268 224B ldr r3, .L41+60
  514. 401 026a A3F83120 strh r2, [r3, #49] @ unaligned
  515. 93:user_src/soft_bms.c **** bms_data.bms_v24 = okcell_device1.okcell_inf.cell_D0.cell_d0[30];
  516. 402 .loc 1 93 73 discriminator 4
  517. 403 026e 1E4B ldr r3, .L41+48
  518. 404 0270 B3F82831 ldrh r3, [r3, #296] @ unaligned
  519. 405 0274 9AB2 uxth r2, r3
  520. 406 .loc 1 93 30 discriminator 4
  521. 407 0276 1F4B ldr r3, .L41+60
  522. 408 0278 A3F83320 strh r2, [r3, #51] @ unaligned
  523. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 10
  524. 94:user_src/soft_bms.c **** bms_data.bms_v25 = okcell_device1.okcell_inf.cell_D0.cell_d0[31];
  525. 409 .loc 1 94 73 discriminator 4
  526. 410 027c 1A4B ldr r3, .L41+48
  527. 411 027e B3F82A31 ldrh r3, [r3, #298] @ unaligned
  528. 412 0282 9AB2 uxth r2, r3
  529. 413 .loc 1 94 30 discriminator 4
  530. 414 0284 1B4B ldr r3, .L41+60
  531. 415 0286 A3F83520 strh r2, [r3, #53] @ unaligned
  532. 95:user_src/soft_bms.c **** bms_data.bms_v26 = okcell_device1.okcell_inf.cell_D0.cell_d0[32];
  533. 416 .loc 1 95 73 discriminator 4
  534. 417 028a 174B ldr r3, .L41+48
  535. 418 028c B3F82C31 ldrh r3, [r3, #300] @ unaligned
  536. 419 0290 9AB2 uxth r2, r3
  537. 420 .loc 1 95 30 discriminator 4
  538. 421 0292 184B ldr r3, .L41+60
  539. 422 0294 A3F83720 strh r2, [r3, #55] @ unaligned
  540. 96:user_src/soft_bms.c ****
  541. 97:user_src/soft_bms.c **** bms_data.bms_ids[0] = okcell_device1.okcell_inf.cell_P3.cell_p3[0];
  542. 423 .loc 1 97 76 discriminator 4
  543. 424 0298 134B ldr r3, .L41+48
  544. 425 029a 93F85621 ldrb r2, [r3, #342] @ zero_extendqisi2
  545. 426 .loc 1 97 33 discriminator 4
  546. 427 029e 154B ldr r3, .L41+60
  547. 428 02a0 83F83920 strb r2, [r3, #57]
  548. 98:user_src/soft_bms.c **** bms_data.bms_ids[1] = okcell_device1.okcell_inf.cell_P3.cell_p3[1];
  549. 429 .loc 1 98 76 discriminator 4
  550. 430 02a4 104B ldr r3, .L41+48
  551. 431 02a6 93F85721 ldrb r2, [r3, #343] @ zero_extendqisi2
  552. 432 .loc 1 98 33 discriminator 4
  553. 433 02aa 124B ldr r3, .L41+60
  554. 434 02ac 83F83A20 strb r2, [r3, #58]
  555. 435 .LBB2:
  556. 99:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  557. 436 .loc 1 99 21 discriminator 4
  558. 437 02b0 0123 movs r3, #1
  559. 438 02b2 7B60 str r3, [r7, #4]
  560. 439 .loc 1 99 13 discriminator 4
  561. 440 02b4 49E0 b .L9
  562. 441 .L42:
  563. 442 02b6 00BF .align 2
  564. 443 .L41:
  565. 444 02b8 E8000000 .word okcell_device1+232
  566. 445 02bc CF000000 .word okcell_device1+207
  567. 446 02c0 E8000000 .word okcell_device2+232
  568. 447 02c4 CF000000 .word okcell_device2+207
  569. 448 02c8 DC000000 .word tattu_device1+220
  570. 449 02cc CC000000 .word tattu_device1+204
  571. 450 02d0 DC000000 .word tattu_device2+220
  572. 451 02d4 CC000000 .word tattu_device2+204
  573. 452 02d8 00000000 .word herewin_info
  574. 453 02dc 00000000 .word Herewin_Link
  575. 454 02e0 00000000 .word Device1
  576. 455 02e4 00000000 .word Device2
  577. 456 02e8 00000000 .word okcell_device1
  578. 457 02ec 00000000 .word okcell_device2
  579. 458 02f0 00000000 .word Dev
  580. 459 02f4 00000000 .word bms_data
  581. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 11
  582. 460 02f8 CDCCCCCC .word -858993459
  583. 461 .L10:
  584. 100:user_src/soft_bms.c **** // bms_data.bms_ids[2*i] = ((okcell_device1.okcell_inf.cell_P3.cell_p3[2 + i] >> 4)
  585. 101:user_src/soft_bms.c **** // bms_data.bms_ids[2*i+1] = (okcell_device1.okcell_inf.cell_P3.cell_p3[2 + i] & 0x
  586. 102:user_src/soft_bms.c **** bms_data.bms_ids[2*i] = ((okcell_device1.okcell_inf.cell_P3.cell_p3[1 + i] >> 4) &
  587. 462 .loc 1 102 87 discriminator 3
  588. 463 02fc 7B68 ldr r3, [r7, #4]
  589. 464 02fe 0133 adds r3, r3, #1
  590. 465 .loc 1 102 84 discriminator 3
  591. 466 0300 524A ldr r2, .L43
  592. 467 0302 1344 add r3, r3, r2
  593. 468 0304 93F85631 ldrb r3, [r3, #342] @ zero_extendqisi2
  594. 469 .loc 1 102 105 discriminator 3
  595. 470 0308 1B09 lsrs r3, r3, #4
  596. 471 030a DAB2 uxtb r2, r3
  597. 472 .loc 1 102 35 discriminator 3
  598. 473 030c 7B68 ldr r3, [r7, #4]
  599. 474 030e 5B00 lsls r3, r3, #1
  600. 475 .loc 1 102 105 discriminator 3
  601. 476 0310 3032 adds r2, r2, #48
  602. 477 0312 D1B2 uxtb r1, r2
  603. 478 .loc 1 102 39 discriminator 3
  604. 479 0314 4E4A ldr r2, .L43+4
  605. 480 0316 1344 add r3, r3, r2
  606. 481 0318 0A46 mov r2, r1
  607. 482 031a 83F83920 strb r2, [r3, #57]
  608. 103:user_src/soft_bms.c **** bms_data.bms_ids[2*i+1] = (okcell_device1.okcell_inf.cell_P3.cell_p3[1 + i] & 0xf )
  609. 483 .loc 1 103 88 discriminator 3
  610. 484 031e 7B68 ldr r3, [r7, #4]
  611. 485 0320 0133 adds r3, r3, #1
  612. 486 .loc 1 103 85 discriminator 3
  613. 487 0322 4A4A ldr r2, .L43
  614. 488 0324 1344 add r3, r3, r2
  615. 489 0326 93F85631 ldrb r3, [r3, #342] @ zero_extendqisi2
  616. 490 .loc 1 103 93 discriminator 3
  617. 491 032a 03F00F03 and r3, r3, #15
  618. 492 032e DAB2 uxtb r2, r3
  619. 493 .loc 1 103 35 discriminator 3
  620. 494 0330 7B68 ldr r3, [r7, #4]
  621. 495 0332 5B00 lsls r3, r3, #1
  622. 496 .loc 1 103 37 discriminator 3
  623. 497 0334 0133 adds r3, r3, #1
  624. 498 .loc 1 103 100 discriminator 3
  625. 499 0336 3032 adds r2, r2, #48
  626. 500 0338 D1B2 uxtb r1, r2
  627. 501 .loc 1 103 41 discriminator 3
  628. 502 033a 454A ldr r2, .L43+4
  629. 503 033c 1344 add r3, r3, r2
  630. 504 033e 0A46 mov r2, r1
  631. 505 0340 83F83920 strb r2, [r3, #57]
  632. 99:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  633. 506 .loc 1 99 36 discriminator 3
  634. 507 0344 7B68 ldr r3, [r7, #4]
  635. 508 0346 0133 adds r3, r3, #1
  636. 509 0348 7B60 str r3, [r7, #4]
  637. 510 .L9:
  638. 99:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  639. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 12
  640. 511 .loc 1 99 13 discriminator 1
  641. 512 034a 7B68 ldr r3, [r7, #4]
  642. 513 034c 0A2B cmp r3, #10
  643. 514 034e D5DD ble .L10
  644. 515 .LBE2:
  645. 104:user_src/soft_bms.c **** }
  646. 105:user_src/soft_bms.c **** //memcpy( bms_data.bms_ids, "okcell", 6 );
  647. 106:user_src/soft_bms.c **** bms_data.bms_ac = okcell_device1.okcell_inf.cell_D0.cell_d0[1];
  648. 516 .loc 1 106 72
  649. 517 0350 3E4B ldr r3, .L43
  650. 518 0352 B3F8EE30 ldrh r3, [r3, #238] @ unaligned
  651. 519 0356 9BB2 uxth r3, r3
  652. 520 0358 1AB2 sxth r2, r3
  653. 521 .loc 1 106 29
  654. 522 035a 3D4B ldr r3, .L43+4
  655. 523 035c A3F85D20 strh r2, [r3, #93] @ unaligned
  656. 107:user_src/soft_bms.c **** bms_data.serial_num = FAC_OKCELL;
  657. 524 .loc 1 107 33
  658. 525 0360 3B4B ldr r3, .L43+4
  659. 526 0362 0F22 movs r2, #15
  660. 527 0364 A3F86420 strh r2, [r3, #100] @ movhi
  661. 108:user_src/soft_bms.c ****
  662. 109:user_src/soft_bms.c **** //注册
  663. 110:user_src/soft_bms.c **** if(StrArrayNull( &bms_data.bms_ids[0], sizeof( bms_data.bms_ids ) ) == false && dev_bms
  664. 528 .loc 1 110 16
  665. 529 0368 2021 movs r1, #32
  666. 530 036a 3A48 ldr r0, .L43+8
  667. 531 036c FFF7FEFF bl StrArrayNull
  668. 532 0370 0346 mov r3, r0
  669. 533 .loc 1 110 81
  670. 534 0372 83F00103 eor r3, r3, #1
  671. 535 0376 DBB2 uxtb r3, r3
  672. 536 .loc 1 110 15
  673. 537 0378 002B cmp r3, #0
  674. 538 037a 21D0 beq .L11
  675. 539 .loc 1 110 108 discriminator 1
  676. 540 037c 364B ldr r3, .L43+12
  677. 541 037e 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  678. 542 .loc 1 110 112 discriminator 1
  679. 543 0382 83F00103 eor r3, r3, #1
  680. 544 0386 DBB2 uxtb r3, r3
  681. 545 .loc 1 110 90 discriminator 1
  682. 546 0388 002B cmp r3, #0
  683. 547 038a 19D0 beq .L11
  684. 111:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  685. 548 .loc 1 111 17
  686. 549 038c 0823 movs r3, #8
  687. 550 038e 0693 str r3, [sp, #24]
  688. 551 0390 324B ldr r3, .L43+16
  689. 552 0392 0593 str r3, [sp, #20]
  690. 553 0394 0023 movs r3, #0
  691. 554 0396 0493 str r3, [sp, #16]
  692. 555 0398 0023 movs r3, #0
  693. 556 039a 0393 str r3, [sp, #12]
  694. 557 039c 0023 movs r3, #0
  695. 558 039e 0293 str r3, [sp, #8]
  696. 559 03a0 0023 movs r3, #0
  697. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 13
  698. 560 03a2 0193 str r3, [sp, #4]
  699. 561 03a4 2023 movs r3, #32
  700. 562 03a6 0093 str r3, [sp]
  701. 563 03a8 2A4B ldr r3, .L43+8
  702. 564 03aa 0022 movs r2, #0
  703. 565 03ac 0E21 movs r1, #14
  704. 566 03ae 2A48 ldr r0, .L43+12
  705. 567 03b0 FFF7FEFF bl regist_dev_info
  706. 568 03b4 04E0 b .L11
  707. 569 .L4:
  708. 112:user_src/soft_bms.c **** }
  709. 113:user_src/soft_bms.c **** else
  710. 114:user_src/soft_bms.c **** {
  711. 115:user_src/soft_bms.c **** memset( &bms_data, 0, sizeof( bms_data ) );
  712. 570 .loc 1 115 13
  713. 571 03b6 6622 movs r2, #102
  714. 572 03b8 0021 movs r1, #0
  715. 573 03ba 2548 ldr r0, .L43+4
  716. 574 03bc FFF7FEFF bl memset
  717. 575 .L11:
  718. 116:user_src/soft_bms.c **** }
  719. 117:user_src/soft_bms.c ****
  720. 118:user_src/soft_bms.c **** //第二组电池
  721. 119:user_src/soft_bms.c **** if ( okcell_device2.Okcell_Link.connect_status == COMP_NORMAL )
  722. 576 .loc 1 119 40
  723. 577 03c0 274B ldr r3, .L43+20
  724. 578 03c2 93F8D730 ldrb r3, [r3, #215] @ zero_extendqisi2
  725. 579 .loc 1 119 12
  726. 580 03c6 012B cmp r3, #1
  727. 581 03c8 40F08081 bne .L12
  728. 120:user_src/soft_bms.c **** {
  729. 121:user_src/soft_bms.c **** bms_data2.bms_cycle = okcell_device2.okcell_inf.cell_D3.cell_d3[4];
  730. 582 .loc 1 121 76
  731. 583 03cc 244B ldr r3, .L43+20
  732. 584 03ce B3F84031 ldrh r3, [r3, #320] @ unaligned
  733. 585 03d2 9AB2 uxth r2, r3
  734. 586 .loc 1 121 33
  735. 587 03d4 234B ldr r3, .L43+24
  736. 588 03d6 A3F85920 strh r2, [r3, #89] @ unaligned
  737. 122:user_src/soft_bms.c **** if(okcell_device2.okcell_inf.cell_D0.cell_d0[6] >= 18)
  738. 589 .loc 1 122 57
  739. 590 03da 214B ldr r3, .L43+20
  740. 591 03dc B3F8F830 ldrh r3, [r3, #248] @ unaligned
  741. 592 03e0 9BB2 uxth r3, r3
  742. 593 .loc 1 122 15
  743. 594 03e2 112B cmp r3, #17
  744. 595 03e4 07D9 bls .L13
  745. 123:user_src/soft_bms.c **** {
  746. 124:user_src/soft_bms.c **** bms_data2.bms_volt = okcell_device2.okcell_inf.cell_D0.cell_d0[0];
  747. 596 .loc 1 124 79
  748. 597 03e6 1E4B ldr r3, .L43+20
  749. 598 03e8 B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  750. 599 03ec 9AB2 uxth r2, r3
  751. 600 .loc 1 124 36
  752. 601 03ee 1D4B ldr r3, .L43+24
  753. 602 03f0 A3F85B20 strh r2, [r3, #91] @ unaligned
  754. 603 03f4 0BE0 b .L14
  755. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 14
  756. 604 .L13:
  757. 125:user_src/soft_bms.c **** }
  758. 126:user_src/soft_bms.c **** else
  759. 127:user_src/soft_bms.c **** {
  760. 128:user_src/soft_bms.c **** bms_data2.bms_volt = okcell_device2.okcell_inf.cell_D0.cell_d0[0] / 10;
  761. 605 .loc 1 128 79
  762. 606 03f6 1A4B ldr r3, .L43+20
  763. 607 03f8 B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  764. 608 03fc 9BB2 uxth r3, r3
  765. 609 .loc 1 128 36
  766. 610 03fe 1A4A ldr r2, .L43+28
  767. 611 0400 A2FB0323 umull r2, r3, r2, r3
  768. 612 0404 DB08 lsrs r3, r3, #3
  769. 613 0406 9AB2 uxth r2, r3
  770. 614 0408 164B ldr r3, .L43+24
  771. 615 040a A3F85B20 strh r2, [r3, #91] @ unaligned
  772. 616 .L14:
  773. 129:user_src/soft_bms.c **** }
  774. 130:user_src/soft_bms.c **** bms_data2.bms_temp = okcell_device2.okcell_inf.cell_D0.cell_d0[2];
  775. 617 .loc 1 130 75
  776. 618 040e 144B ldr r3, .L43+20
  777. 619 0410 B3F8F030 ldrh r3, [r3, #240] @ unaligned
  778. 620 0414 9BB2 uxth r3, r3
  779. 621 0416 1AB2 sxth r2, r3
  780. 622 .loc 1 130 32
  781. 623 0418 124B ldr r3, .L43+24
  782. 624 041a A3F85F20 strh r2, [r3, #95] @ unaligned
  783. 131:user_src/soft_bms.c **** bms_data2.bms_vs = okcell_device2.okcell_inf.cell_D0.cell_d0[3];
  784. 625 .loc 1 131 73
  785. 626 041e 104B ldr r3, .L43+20
  786. 627 0420 B3F8F230 ldrh r3, [r3, #242] @ unaligned
  787. 628 0424 9BB2 uxth r3, r3
  788. 629 .loc 1 131 30
  789. 630 0426 DAB2 uxtb r2, r3
  790. 631 0428 0E4B ldr r3, .L43+24
  791. 632 042a 83F86120 strb r2, [r3, #97]
  792. 132:user_src/soft_bms.c **** //正方电池�关心飞控对接异常�让解�,�关心异常5
  793. 133:user_src/soft_bms.c **** bms_data2.bms_ss = ( ( okcell_device2.okcell_inf.cell_D0.cell_d0[5] >> 8 ) != 5 ) ? ( o
  794. 633 .loc 1 133 77
  795. 634 042e 0C4B ldr r3, .L43+20
  796. 635 0430 B3F8F630 ldrh r3, [r3, #246] @ unaligned
  797. 636 0434 9BB2 uxth r3, r3
  798. 637 .loc 1 133 88
  799. 638 0436 1B0A lsrs r3, r3, #8
  800. 639 0438 9BB2 uxth r3, r3
  801. 640 .loc 1 133 30
  802. 641 043a 052B cmp r3, #5
  803. 642 043c 16D0 beq .L15
  804. 643 .loc 1 133 140 discriminator 1
  805. 644 043e 084B ldr r3, .L43+20
  806. 645 0440 B3F8F630 ldrh r3, [r3, #246] @ unaligned
  807. 646 0444 9BB2 uxth r3, r3
  808. 647 .loc 1 133 30 discriminator 1
  809. 648 0446 1B0A lsrs r3, r3, #8
  810. 649 0448 9BB2 uxth r3, r3
  811. 650 044a 10E0 b .L16
  812. 651 .L44:
  813. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 15
  814. 652 .align 2
  815. 653 .L43:
  816. 654 044c 00000000 .word okcell_device1
  817. 655 0450 00000000 .word bms_data
  818. 656 0454 39000000 .word bms_data+57
  819. 657 0458 00000000 .word dev_bms1
  820. 658 045c 00000000 .word .LC0
  821. 659 0460 00000000 .word okcell_device2
  822. 660 0464 00000000 .word bms_data2
  823. 661 0468 CDCCCCCC .word -858993459
  824. 662 .L15:
  825. 663 .loc 1 133 30 is_stmt 0 discriminator 2
  826. 664 046c 0023 movs r3, #0
  827. 665 .L16:
  828. 666 .loc 1 133 30 discriminator 4
  829. 667 046e 9B4A ldr r2, .L45
  830. 668 0470 A2F86230 strh r3, [r2, #98] @ movhi
  831. 134:user_src/soft_bms.c **** bms_data2.bms_num = okcell_device2.okcell_inf.cell_D0.cell_d0[6];
  832. 669 .loc 1 134 74 is_stmt 1 discriminator 4
  833. 670 0474 9A4B ldr r3, .L45+4
  834. 671 0476 B3F8F830 ldrh r3, [r3, #248] @ unaligned
  835. 672 047a 9BB2 uxth r3, r3
  836. 673 .loc 1 134 31 discriminator 4
  837. 674 047c DAB2 uxtb r2, r3
  838. 675 047e 974B ldr r3, .L45
  839. 676 0480 1A71 strb r2, [r3, #4]
  840. 135:user_src/soft_bms.c ****
  841. 136:user_src/soft_bms.c **** bms_data2.bms_v1 = okcell_device2.okcell_inf.cell_D0.cell_d0[7];
  842. 677 .loc 1 136 73 discriminator 4
  843. 678 0482 974B ldr r3, .L45+4
  844. 679 0484 B3F8FA30 ldrh r3, [r3, #250] @ unaligned
  845. 680 0488 9AB2 uxth r2, r3
  846. 681 .loc 1 136 30 discriminator 4
  847. 682 048a 944B ldr r3, .L45
  848. 683 048c A3F80520 strh r2, [r3, #5] @ unaligned
  849. 137:user_src/soft_bms.c **** bms_data2.bms_v2 = okcell_device2.okcell_inf.cell_D0.cell_d0[8];
  850. 684 .loc 1 137 73 discriminator 4
  851. 685 0490 934B ldr r3, .L45+4
  852. 686 0492 B3F8FC30 ldrh r3, [r3, #252] @ unaligned
  853. 687 0496 9AB2 uxth r2, r3
  854. 688 .loc 1 137 30 discriminator 4
  855. 689 0498 904B ldr r3, .L45
  856. 690 049a A3F80720 strh r2, [r3, #7] @ unaligned
  857. 138:user_src/soft_bms.c **** bms_data2.bms_v3 = okcell_device2.okcell_inf.cell_D0.cell_d0[9];
  858. 691 .loc 1 138 73 discriminator 4
  859. 692 049e 904B ldr r3, .L45+4
  860. 693 04a0 B3F8FE30 ldrh r3, [r3, #254] @ unaligned
  861. 694 04a4 9AB2 uxth r2, r3
  862. 695 .loc 1 138 30 discriminator 4
  863. 696 04a6 8D4B ldr r3, .L45
  864. 697 04a8 A3F80920 strh r2, [r3, #9] @ unaligned
  865. 139:user_src/soft_bms.c **** bms_data2.bms_v4 = okcell_device2.okcell_inf.cell_D0.cell_d0[10];
  866. 698 .loc 1 139 73 discriminator 4
  867. 699 04ac 8C4B ldr r3, .L45+4
  868. 700 04ae B3F80031 ldrh r3, [r3, #256] @ unaligned
  869. 701 04b2 9AB2 uxth r2, r3
  870. 702 .loc 1 139 30 discriminator 4
  871. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 16
  872. 703 04b4 894B ldr r3, .L45
  873. 704 04b6 A3F80B20 strh r2, [r3, #11] @ unaligned
  874. 140:user_src/soft_bms.c **** bms_data2.bms_v5 = okcell_device2.okcell_inf.cell_D0.cell_d0[11];
  875. 705 .loc 1 140 73 discriminator 4
  876. 706 04ba 894B ldr r3, .L45+4
  877. 707 04bc B3F80231 ldrh r3, [r3, #258] @ unaligned
  878. 708 04c0 9AB2 uxth r2, r3
  879. 709 .loc 1 140 30 discriminator 4
  880. 710 04c2 864B ldr r3, .L45
  881. 711 04c4 A3F80D20 strh r2, [r3, #13] @ unaligned
  882. 141:user_src/soft_bms.c **** bms_data2.bms_v6 = okcell_device2.okcell_inf.cell_D0.cell_d0[12];
  883. 712 .loc 1 141 73 discriminator 4
  884. 713 04c8 854B ldr r3, .L45+4
  885. 714 04ca B3F80431 ldrh r3, [r3, #260] @ unaligned
  886. 715 04ce 9AB2 uxth r2, r3
  887. 716 .loc 1 141 30 discriminator 4
  888. 717 04d0 824B ldr r3, .L45
  889. 718 04d2 A3F80F20 strh r2, [r3, #15] @ unaligned
  890. 142:user_src/soft_bms.c **** bms_data2.bms_v7 = okcell_device2.okcell_inf.cell_D0.cell_d0[13];
  891. 719 .loc 1 142 73 discriminator 4
  892. 720 04d6 824B ldr r3, .L45+4
  893. 721 04d8 B3F80631 ldrh r3, [r3, #262] @ unaligned
  894. 722 04dc 9AB2 uxth r2, r3
  895. 723 .loc 1 142 30 discriminator 4
  896. 724 04de 7F4B ldr r3, .L45
  897. 725 04e0 A3F81120 strh r2, [r3, #17] @ unaligned
  898. 143:user_src/soft_bms.c **** bms_data2.bms_v8 = okcell_device2.okcell_inf.cell_D0.cell_d0[14];
  899. 726 .loc 1 143 73 discriminator 4
  900. 727 04e4 7E4B ldr r3, .L45+4
  901. 728 04e6 B3F80831 ldrh r3, [r3, #264] @ unaligned
  902. 729 04ea 9AB2 uxth r2, r3
  903. 730 .loc 1 143 30 discriminator 4
  904. 731 04ec 7B4B ldr r3, .L45
  905. 732 04ee A3F81320 strh r2, [r3, #19] @ unaligned
  906. 144:user_src/soft_bms.c **** bms_data2.bms_v9 = okcell_device2.okcell_inf.cell_D0.cell_d0[15];
  907. 733 .loc 1 144 73 discriminator 4
  908. 734 04f2 7B4B ldr r3, .L45+4
  909. 735 04f4 B3F80A31 ldrh r3, [r3, #266] @ unaligned
  910. 736 04f8 9AB2 uxth r2, r3
  911. 737 .loc 1 144 30 discriminator 4
  912. 738 04fa 784B ldr r3, .L45
  913. 739 04fc A3F81520 strh r2, [r3, #21] @ unaligned
  914. 145:user_src/soft_bms.c **** bms_data2.bms_v10 = okcell_device2.okcell_inf.cell_D0.cell_d0[16];
  915. 740 .loc 1 145 74 discriminator 4
  916. 741 0500 774B ldr r3, .L45+4
  917. 742 0502 B3F80C31 ldrh r3, [r3, #268] @ unaligned
  918. 743 0506 9AB2 uxth r2, r3
  919. 744 .loc 1 145 31 discriminator 4
  920. 745 0508 744B ldr r3, .L45
  921. 746 050a A3F81720 strh r2, [r3, #23] @ unaligned
  922. 146:user_src/soft_bms.c **** bms_data2.bms_v11 = okcell_device2.okcell_inf.cell_D0.cell_d0[17];
  923. 747 .loc 1 146 74 discriminator 4
  924. 748 050e 744B ldr r3, .L45+4
  925. 749 0510 B3F80E31 ldrh r3, [r3, #270] @ unaligned
  926. 750 0514 9AB2 uxth r2, r3
  927. 751 .loc 1 146 31 discriminator 4
  928. 752 0516 714B ldr r3, .L45
  929. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 17
  930. 753 0518 A3F81920 strh r2, [r3, #25] @ unaligned
  931. 147:user_src/soft_bms.c **** bms_data2.bms_v12 = okcell_device2.okcell_inf.cell_D0.cell_d0[18];
  932. 754 .loc 1 147 74 discriminator 4
  933. 755 051c 704B ldr r3, .L45+4
  934. 756 051e B3F81031 ldrh r3, [r3, #272] @ unaligned
  935. 757 0522 9AB2 uxth r2, r3
  936. 758 .loc 1 147 31 discriminator 4
  937. 759 0524 6D4B ldr r3, .L45
  938. 760 0526 A3F81B20 strh r2, [r3, #27] @ unaligned
  939. 148:user_src/soft_bms.c **** bms_data2.bms_v13 = okcell_device2.okcell_inf.cell_D0.cell_d0[19];
  940. 761 .loc 1 148 74 discriminator 4
  941. 762 052a 6D4B ldr r3, .L45+4
  942. 763 052c B3F81231 ldrh r3, [r3, #274] @ unaligned
  943. 764 0530 9AB2 uxth r2, r3
  944. 765 .loc 1 148 31 discriminator 4
  945. 766 0532 6A4B ldr r3, .L45
  946. 767 0534 A3F81D20 strh r2, [r3, #29] @ unaligned
  947. 149:user_src/soft_bms.c **** bms_data2.bms_v14 = okcell_device2.okcell_inf.cell_D0.cell_d0[20];
  948. 768 .loc 1 149 74 discriminator 4
  949. 769 0538 694B ldr r3, .L45+4
  950. 770 053a B3F81431 ldrh r3, [r3, #276] @ unaligned
  951. 771 053e 9AB2 uxth r2, r3
  952. 772 .loc 1 149 31 discriminator 4
  953. 773 0540 664B ldr r3, .L45
  954. 774 0542 A3F81F20 strh r2, [r3, #31] @ unaligned
  955. 150:user_src/soft_bms.c **** bms_data2.bms_v15 = okcell_device2.okcell_inf.cell_D0.cell_d0[21];
  956. 775 .loc 1 150 74 discriminator 4
  957. 776 0546 664B ldr r3, .L45+4
  958. 777 0548 B3F81631 ldrh r3, [r3, #278] @ unaligned
  959. 778 054c 9AB2 uxth r2, r3
  960. 779 .loc 1 150 31 discriminator 4
  961. 780 054e 634B ldr r3, .L45
  962. 781 0550 A3F82120 strh r2, [r3, #33] @ unaligned
  963. 151:user_src/soft_bms.c **** bms_data2.bms_v16 = okcell_device2.okcell_inf.cell_D0.cell_d0[22];
  964. 782 .loc 1 151 74 discriminator 4
  965. 783 0554 624B ldr r3, .L45+4
  966. 784 0556 B3F81831 ldrh r3, [r3, #280] @ unaligned
  967. 785 055a 9AB2 uxth r2, r3
  968. 786 .loc 1 151 31 discriminator 4
  969. 787 055c 5F4B ldr r3, .L45
  970. 788 055e A3F82320 strh r2, [r3, #35] @ unaligned
  971. 152:user_src/soft_bms.c **** bms_data2.bms_v17 = okcell_device2.okcell_inf.cell_D0.cell_d0[23];
  972. 789 .loc 1 152 74 discriminator 4
  973. 790 0562 5F4B ldr r3, .L45+4
  974. 791 0564 B3F81A31 ldrh r3, [r3, #282] @ unaligned
  975. 792 0568 9AB2 uxth r2, r3
  976. 793 .loc 1 152 31 discriminator 4
  977. 794 056a 5C4B ldr r3, .L45
  978. 795 056c A3F82520 strh r2, [r3, #37] @ unaligned
  979. 153:user_src/soft_bms.c **** bms_data2.bms_v18 = okcell_device2.okcell_inf.cell_D0.cell_d0[24];
  980. 796 .loc 1 153 74 discriminator 4
  981. 797 0570 5B4B ldr r3, .L45+4
  982. 798 0572 B3F81C31 ldrh r3, [r3, #284] @ unaligned
  983. 799 0576 9AB2 uxth r2, r3
  984. 800 .loc 1 153 31 discriminator 4
  985. 801 0578 584B ldr r3, .L45
  986. 802 057a A3F82720 strh r2, [r3, #39] @ unaligned
  987. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 18
  988. 154:user_src/soft_bms.c **** bms_data2.bms_v19 = okcell_device2.okcell_inf.cell_D0.cell_d0[25];
  989. 803 .loc 1 154 74 discriminator 4
  990. 804 057e 584B ldr r3, .L45+4
  991. 805 0580 B3F81E31 ldrh r3, [r3, #286] @ unaligned
  992. 806 0584 9AB2 uxth r2, r3
  993. 807 .loc 1 154 31 discriminator 4
  994. 808 0586 554B ldr r3, .L45
  995. 809 0588 A3F82920 strh r2, [r3, #41] @ unaligned
  996. 155:user_src/soft_bms.c **** bms_data2.bms_v20 = okcell_device2.okcell_inf.cell_D0.cell_d0[26];
  997. 810 .loc 1 155 74 discriminator 4
  998. 811 058c 544B ldr r3, .L45+4
  999. 812 058e B3F82031 ldrh r3, [r3, #288] @ unaligned
  1000. 813 0592 9AB2 uxth r2, r3
  1001. 814 .loc 1 155 31 discriminator 4
  1002. 815 0594 514B ldr r3, .L45
  1003. 816 0596 A3F82B20 strh r2, [r3, #43] @ unaligned
  1004. 156:user_src/soft_bms.c **** bms_data2.bms_v21 = okcell_device2.okcell_inf.cell_D0.cell_d0[27];
  1005. 817 .loc 1 156 74 discriminator 4
  1006. 818 059a 514B ldr r3, .L45+4
  1007. 819 059c B3F82231 ldrh r3, [r3, #290] @ unaligned
  1008. 820 05a0 9AB2 uxth r2, r3
  1009. 821 .loc 1 156 31 discriminator 4
  1010. 822 05a2 4E4B ldr r3, .L45
  1011. 823 05a4 A3F82D20 strh r2, [r3, #45] @ unaligned
  1012. 157:user_src/soft_bms.c **** bms_data2.bms_v22 = okcell_device2.okcell_inf.cell_D0.cell_d0[28];
  1013. 824 .loc 1 157 74 discriminator 4
  1014. 825 05a8 4D4B ldr r3, .L45+4
  1015. 826 05aa B3F82431 ldrh r3, [r3, #292] @ unaligned
  1016. 827 05ae 9AB2 uxth r2, r3
  1017. 828 .loc 1 157 31 discriminator 4
  1018. 829 05b0 4A4B ldr r3, .L45
  1019. 830 05b2 A3F82F20 strh r2, [r3, #47] @ unaligned
  1020. 158:user_src/soft_bms.c **** bms_data2.bms_v23 = okcell_device2.okcell_inf.cell_D0.cell_d0[29];
  1021. 831 .loc 1 158 74 discriminator 4
  1022. 832 05b6 4A4B ldr r3, .L45+4
  1023. 833 05b8 B3F82631 ldrh r3, [r3, #294] @ unaligned
  1024. 834 05bc 9AB2 uxth r2, r3
  1025. 835 .loc 1 158 31 discriminator 4
  1026. 836 05be 474B ldr r3, .L45
  1027. 837 05c0 A3F83120 strh r2, [r3, #49] @ unaligned
  1028. 159:user_src/soft_bms.c **** bms_data2.bms_v24 = okcell_device2.okcell_inf.cell_D0.cell_d0[30];
  1029. 838 .loc 1 159 74 discriminator 4
  1030. 839 05c4 464B ldr r3, .L45+4
  1031. 840 05c6 B3F82831 ldrh r3, [r3, #296] @ unaligned
  1032. 841 05ca 9AB2 uxth r2, r3
  1033. 842 .loc 1 159 31 discriminator 4
  1034. 843 05cc 434B ldr r3, .L45
  1035. 844 05ce A3F83320 strh r2, [r3, #51] @ unaligned
  1036. 160:user_src/soft_bms.c **** bms_data2.bms_v25 = okcell_device2.okcell_inf.cell_D0.cell_d0[31];
  1037. 845 .loc 1 160 74 discriminator 4
  1038. 846 05d2 434B ldr r3, .L45+4
  1039. 847 05d4 B3F82A31 ldrh r3, [r3, #298] @ unaligned
  1040. 848 05d8 9AB2 uxth r2, r3
  1041. 849 .loc 1 160 31 discriminator 4
  1042. 850 05da 404B ldr r3, .L45
  1043. 851 05dc A3F83520 strh r2, [r3, #53] @ unaligned
  1044. 161:user_src/soft_bms.c **** bms_data2.bms_v26 = okcell_device2.okcell_inf.cell_D0.cell_d0[32];
  1045. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 19
  1046. 852 .loc 1 161 74 discriminator 4
  1047. 853 05e0 3F4B ldr r3, .L45+4
  1048. 854 05e2 B3F82C31 ldrh r3, [r3, #300] @ unaligned
  1049. 855 05e6 9AB2 uxth r2, r3
  1050. 856 .loc 1 161 31 discriminator 4
  1051. 857 05e8 3C4B ldr r3, .L45
  1052. 858 05ea A3F83720 strh r2, [r3, #55] @ unaligned
  1053. 162:user_src/soft_bms.c ****
  1054. 163:user_src/soft_bms.c **** bms_data2.bms_ids[0] = okcell_device1.okcell_inf.cell_P3.cell_p3[0];
  1055. 859 .loc 1 163 77 discriminator 4
  1056. 860 05ee 3D4B ldr r3, .L45+8
  1057. 861 05f0 93F85621 ldrb r2, [r3, #342] @ zero_extendqisi2
  1058. 862 .loc 1 163 34 discriminator 4
  1059. 863 05f4 394B ldr r3, .L45
  1060. 864 05f6 83F83920 strb r2, [r3, #57]
  1061. 164:user_src/soft_bms.c **** bms_data2.bms_ids[1] = okcell_device1.okcell_inf.cell_P3.cell_p3[1];
  1062. 865 .loc 1 164 77 discriminator 4
  1063. 866 05fa 3A4B ldr r3, .L45+8
  1064. 867 05fc 93F85721 ldrb r2, [r3, #343] @ zero_extendqisi2
  1065. 868 .loc 1 164 34 discriminator 4
  1066. 869 0600 364B ldr r3, .L45
  1067. 870 0602 83F83A20 strb r2, [r3, #58]
  1068. 871 .LBB3:
  1069. 165:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  1070. 872 .loc 1 165 21 discriminator 4
  1071. 873 0606 0123 movs r3, #1
  1072. 874 0608 3B60 str r3, [r7]
  1073. 875 .loc 1 165 13 discriminator 4
  1074. 876 060a 26E0 b .L17
  1075. 877 .L18:
  1076. 166:user_src/soft_bms.c **** bms_data2.bms_ids[2*i] = ((okcell_device2.okcell_inf.cell_P3.cell_p3[1 + i] >> 4) &
  1077. 878 .loc 1 166 88 discriminator 3
  1078. 879 060c 3B68 ldr r3, [r7]
  1079. 880 060e 0133 adds r3, r3, #1
  1080. 881 .loc 1 166 85 discriminator 3
  1081. 882 0610 334A ldr r2, .L45+4
  1082. 883 0612 1344 add r3, r3, r2
  1083. 884 0614 93F85631 ldrb r3, [r3, #342] @ zero_extendqisi2
  1084. 885 .loc 1 166 106 discriminator 3
  1085. 886 0618 1B09 lsrs r3, r3, #4
  1086. 887 061a DAB2 uxtb r2, r3
  1087. 888 .loc 1 166 36 discriminator 3
  1088. 889 061c 3B68 ldr r3, [r7]
  1089. 890 061e 5B00 lsls r3, r3, #1
  1090. 891 .loc 1 166 106 discriminator 3
  1091. 892 0620 3032 adds r2, r2, #48
  1092. 893 0622 D1B2 uxtb r1, r2
  1093. 894 .loc 1 166 40 discriminator 3
  1094. 895 0624 2D4A ldr r2, .L45
  1095. 896 0626 1344 add r3, r3, r2
  1096. 897 0628 0A46 mov r2, r1
  1097. 898 062a 83F83920 strb r2, [r3, #57]
  1098. 167:user_src/soft_bms.c **** bms_data2.bms_ids[2*i+1] = (okcell_device2.okcell_inf.cell_P3.cell_p3[1 + i] & 0xf
  1099. 899 .loc 1 167 89 discriminator 3
  1100. 900 062e 3B68 ldr r3, [r7]
  1101. 901 0630 0133 adds r3, r3, #1
  1102. 902 .loc 1 167 86 discriminator 3
  1103. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 20
  1104. 903 0632 2B4A ldr r2, .L45+4
  1105. 904 0634 1344 add r3, r3, r2
  1106. 905 0636 93F85631 ldrb r3, [r3, #342] @ zero_extendqisi2
  1107. 906 .loc 1 167 94 discriminator 3
  1108. 907 063a 03F00F03 and r3, r3, #15
  1109. 908 063e DAB2 uxtb r2, r3
  1110. 909 .loc 1 167 36 discriminator 3
  1111. 910 0640 3B68 ldr r3, [r7]
  1112. 911 0642 5B00 lsls r3, r3, #1
  1113. 912 .loc 1 167 38 discriminator 3
  1114. 913 0644 0133 adds r3, r3, #1
  1115. 914 .loc 1 167 101 discriminator 3
  1116. 915 0646 3032 adds r2, r2, #48
  1117. 916 0648 D1B2 uxtb r1, r2
  1118. 917 .loc 1 167 42 discriminator 3
  1119. 918 064a 244A ldr r2, .L45
  1120. 919 064c 1344 add r3, r3, r2
  1121. 920 064e 0A46 mov r2, r1
  1122. 921 0650 83F83920 strb r2, [r3, #57]
  1123. 165:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  1124. 922 .loc 1 165 36 discriminator 3
  1125. 923 0654 3B68 ldr r3, [r7]
  1126. 924 0656 0133 adds r3, r3, #1
  1127. 925 0658 3B60 str r3, [r7]
  1128. 926 .L17:
  1129. 165:user_src/soft_bms.c **** for(int i = 1; i< 11; i++){
  1130. 927 .loc 1 165 13 discriminator 1
  1131. 928 065a 3B68 ldr r3, [r7]
  1132. 929 065c 0A2B cmp r3, #10
  1133. 930 065e D5DD ble .L18
  1134. 931 .LBE3:
  1135. 168:user_src/soft_bms.c **** }
  1136. 169:user_src/soft_bms.c **** //memcpy( bms_data2.bms_ids, "okcell2", 7 );
  1137. 170:user_src/soft_bms.c **** bms_data2.bms_ac = okcell_device2.okcell_inf.cell_D0.cell_d0[1];
  1138. 932 .loc 1 170 73
  1139. 933 0660 1F4B ldr r3, .L45+4
  1140. 934 0662 B3F8EE30 ldrh r3, [r3, #238] @ unaligned
  1141. 935 0666 9BB2 uxth r3, r3
  1142. 936 0668 1AB2 sxth r2, r3
  1143. 937 .loc 1 170 30
  1144. 938 066a 1C4B ldr r3, .L45
  1145. 939 066c A3F85D20 strh r2, [r3, #93] @ unaligned
  1146. 171:user_src/soft_bms.c **** bms_data2.serial_num = FAC_OKCELL;
  1147. 940 .loc 1 171 34
  1148. 941 0670 1A4B ldr r3, .L45
  1149. 942 0672 0F22 movs r2, #15
  1150. 943 0674 A3F86420 strh r2, [r3, #100] @ movhi
  1151. 172:user_src/soft_bms.c ****
  1152. 173:user_src/soft_bms.c **** if(StrArrayNull( &bms_data2.bms_ids[0], sizeof( bms_data2.bms_ids ) ) == false && dev_b
  1153. 944 .loc 1 173 16
  1154. 945 0678 2021 movs r1, #32
  1155. 946 067a 1B48 ldr r0, .L45+12
  1156. 947 067c FFF7FEFF bl StrArrayNull
  1157. 948 0680 0346 mov r3, r0
  1158. 949 .loc 1 173 83
  1159. 950 0682 83F00103 eor r3, r3, #1
  1160. 951 0686 DBB2 uxtb r3, r3
  1161. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 21
  1162. 952 .loc 1 173 15
  1163. 953 0688 002B cmp r3, #0
  1164. 954 068a 00F06A84 beq .L37
  1165. 955 .loc 1 173 110 discriminator 1
  1166. 956 068e 174B ldr r3, .L45+16
  1167. 957 0690 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  1168. 958 .loc 1 173 114 discriminator 1
  1169. 959 0694 83F00103 eor r3, r3, #1
  1170. 960 0698 DBB2 uxtb r3, r3
  1171. 961 .loc 1 173 92 discriminator 1
  1172. 962 069a 002B cmp r3, #0
  1173. 963 069c 00F06184 beq .L37
  1174. 174:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  1175. 964 .loc 1 174 17
  1176. 965 06a0 0823 movs r3, #8
  1177. 966 06a2 0693 str r3, [sp, #24]
  1178. 967 06a4 124B ldr r3, .L45+20
  1179. 968 06a6 0593 str r3, [sp, #20]
  1180. 969 06a8 0023 movs r3, #0
  1181. 970 06aa 0493 str r3, [sp, #16]
  1182. 971 06ac 0023 movs r3, #0
  1183. 972 06ae 0393 str r3, [sp, #12]
  1184. 973 06b0 0023 movs r3, #0
  1185. 974 06b2 0293 str r3, [sp, #8]
  1186. 975 06b4 0023 movs r3, #0
  1187. 976 06b6 0193 str r3, [sp, #4]
  1188. 977 06b8 2023 movs r3, #32
  1189. 978 06ba 0093 str r3, [sp]
  1190. 979 06bc 0A4B ldr r3, .L45+12
  1191. 980 06be 0022 movs r2, #0
  1192. 981 06c0 0F21 movs r1, #15
  1193. 982 06c2 0A48 ldr r0, .L45+16
  1194. 983 06c4 FFF7FEFF bl regist_dev_info
  1195. 119:user_src/soft_bms.c **** {
  1196. 984 .loc 1 119 12
  1197. 985 06c8 00F04BBC b .L37
  1198. 986 .L12:
  1199. 175:user_src/soft_bms.c **** }
  1200. 176:user_src/soft_bms.c **** else
  1201. 177:user_src/soft_bms.c **** {
  1202. 178:user_src/soft_bms.c **** memset( &bms_data2, 0, sizeof( bms_data2 ) );
  1203. 987 .loc 1 178 13
  1204. 988 06cc 6622 movs r2, #102
  1205. 989 06ce 0021 movs r1, #0
  1206. 990 06d0 0248 ldr r0, .L45
  1207. 991 06d2 FFF7FEFF bl memset
  1208. 119:user_src/soft_bms.c **** {
  1209. 992 .loc 1 119 12
  1210. 993 06d6 00F044BC b .L37
  1211. 994 .L46:
  1212. 995 06da 00BF .align 2
  1213. 996 .L45:
  1214. 997 06dc 00000000 .word bms_data2
  1215. 998 06e0 00000000 .word okcell_device2
  1216. 999 06e4 00000000 .word okcell_device1
  1217. 1000 06e8 39000000 .word bms_data2+57
  1218. 1001 06ec 00000000 .word dev_bms2
  1219. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 22
  1220. 1002 06f0 08000000 .word .LC1
  1221. 1003 .L3:
  1222. 179:user_src/soft_bms.c **** }
  1223. 180:user_src/soft_bms.c **** }
  1224. 181:user_src/soft_bms.c **** else if(tattu_device1.Tattu_Link.connect_status == COMP_NORMAL || tattu_device2.Tattu_Link.conn
  1225. 1004 .loc 1 181 37
  1226. 1005 06f4 714B ldr r3, .L47
  1227. 1006 06f6 93F8D430 ldrb r3, [r3, #212] @ zero_extendqisi2
  1228. 1007 .loc 1 181 12
  1229. 1008 06fa 012B cmp r3, #1
  1230. 1009 06fc 05D0 beq .L21
  1231. 1010 .loc 1 181 95 discriminator 1
  1232. 1011 06fe 704B ldr r3, .L47+4
  1233. 1012 0700 93F8D430 ldrb r3, [r3, #212] @ zero_extendqisi2
  1234. 1013 .loc 1 181 68 discriminator 1
  1235. 1014 0704 012B cmp r3, #1
  1236. 1015 0706 40F0E181 bne .L22
  1237. 1016 .L21:
  1238. 182:user_src/soft_bms.c **** {
  1239. 183:user_src/soft_bms.c **** Dev.Bms_Link.connect_status = COMP_NORMAL;
  1240. 1017 .loc 1 183 37
  1241. 1018 070a 6E4B ldr r3, .L47+8
  1242. 1019 070c 0122 movs r2, #1
  1243. 1020 070e 83F8E021 strb r2, [r3, #480]
  1244. 184:user_src/soft_bms.c ****
  1245. 185:user_src/soft_bms.c **** if(tattu_device1.Tattu_Link.connect_status == COMP_NORMAL)
  1246. 1021 .loc 1 185 36
  1247. 1022 0712 6A4B ldr r3, .L47
  1248. 1023 0714 93F8D430 ldrb r3, [r3, #212] @ zero_extendqisi2
  1249. 1024 .loc 1 185 11
  1250. 1025 0718 012B cmp r3, #1
  1251. 1026 071a 40F0E380 bne .L23
  1252. 186:user_src/soft_bms.c **** {
  1253. 187:user_src/soft_bms.c **** group_num = 1;
  1254. 1027 .loc 1 187 23
  1255. 1028 071e 6A4B ldr r3, .L47+12
  1256. 1029 0720 0122 movs r2, #1
  1257. 1030 0722 1A70 strb r2, [r3]
  1258. 188:user_src/soft_bms.c **** bms_data.bms_cycle = tattu_device1.ttu_inf.tattu_cycle;
  1259. 1031 .loc 1 188 55
  1260. 1032 0724 654B ldr r3, .L47
  1261. 1033 0726 B3F8E830 ldrh r3, [r3, #232] @ unaligned
  1262. 1034 072a 9AB2 uxth r2, r3
  1263. 1035 .loc 1 188 32
  1264. 1036 072c 674B ldr r3, .L47+16
  1265. 1037 072e A3F85920 strh r2, [r3, #89] @ unaligned
  1266. 189:user_src/soft_bms.c **** bms_data.bms_volt = tattu_device1.ttu_inf.tattu_volt /10;
  1267. 1038 .loc 1 189 54
  1268. 1039 0732 624B ldr r3, .L47
  1269. 1040 0734 B3F8E030 ldrh r3, [r3, #224] @ unaligned
  1270. 1041 0738 9BB2 uxth r3, r3
  1271. 1042 .loc 1 189 31
  1272. 1043 073a 654A ldr r2, .L47+20
  1273. 1044 073c A2FB0323 umull r2, r3, r2, r3
  1274. 1045 0740 DB08 lsrs r3, r3, #3
  1275. 1046 0742 9AB2 uxth r2, r3
  1276. 1047 0744 614B ldr r3, .L47+16
  1277. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 23
  1278. 1048 0746 A3F85B20 strh r2, [r3, #91] @ unaligned
  1279. 190:user_src/soft_bms.c **** bms_data.bms_temp = tattu_device1.ttu_inf.tattu_temp * 10;
  1280. 1049 .loc 1 190 54
  1281. 1050 074a 5C4B ldr r3, .L47
  1282. 1051 074c B3F8E430 ldrh r3, [r3, #228] @ unaligned
  1283. 1052 0750 9BB2 uxth r3, r3
  1284. 1053 .loc 1 190 31
  1285. 1054 0752 1A46 mov r2, r3 @ movhi
  1286. 1055 0754 9200 lsls r2, r2, #2
  1287. 1056 0756 1344 add r3, r3, r2
  1288. 1057 0758 5B00 lsls r3, r3, #1
  1289. 1058 075a 9BB2 uxth r3, r3
  1290. 1059 075c 1AB2 sxth r2, r3
  1291. 1060 075e 5B4B ldr r3, .L47+16
  1292. 1061 0760 A3F85F20 strh r2, [r3, #95] @ unaligned
  1293. 191:user_src/soft_bms.c **** bms_data.bms_vs = tattu_device1.ttu_inf.tattu_perc;
  1294. 1062 .loc 1 191 52
  1295. 1063 0764 554B ldr r3, .L47
  1296. 1064 0766 B3F8E630 ldrh r3, [r3, #230] @ unaligned
  1297. 1065 076a 9BB2 uxth r3, r3
  1298. 1066 .loc 1 191 29
  1299. 1067 076c DAB2 uxtb r2, r3
  1300. 1068 076e 574B ldr r3, .L47+16
  1301. 1069 0770 83F86120 strb r2, [r3, #97]
  1302. 192:user_src/soft_bms.c **** bms_data.bms_ss = 0;//ttu_inf.def_info[24] & 0xc00;//æ ¼å¼�电池å�ªå…³å¿ƒéƒ¨åˆ†æŠ¥è­¦ä
  1303. 1070 .loc 1 192 29
  1304. 1071 0774 554B ldr r3, .L47+16
  1305. 1072 0776 0022 movs r2, #0
  1306. 1073 0778 A3F86220 strh r2, [r3, #98] @ movhi
  1307. 193:user_src/soft_bms.c **** bms_data.bms_num = tattu_device1.ttu_inf.tattu_cnum;
  1308. 1074 .loc 1 193 53
  1309. 1075 077c 4F4B ldr r3, .L47
  1310. 1076 077e B3F82031 ldrh r3, [r3, #288] @ unaligned
  1311. 1077 0782 9BB2 uxth r3, r3
  1312. 1078 .loc 1 193 30
  1313. 1079 0784 DAB2 uxtb r2, r3
  1314. 1080 0786 514B ldr r3, .L47+16
  1315. 1081 0788 1A71 strb r2, [r3, #4]
  1316. 194:user_src/soft_bms.c **** bms_data.bms_v1 = tattu_device1.ttu_inf.tattu_v1;
  1317. 1082 .loc 1 194 52
  1318. 1083 078a 4C4B ldr r3, .L47
  1319. 1084 078c B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  1320. 1085 0790 9AB2 uxth r2, r3
  1321. 1086 .loc 1 194 29
  1322. 1087 0792 4E4B ldr r3, .L47+16
  1323. 1088 0794 A3F80520 strh r2, [r3, #5] @ unaligned
  1324. 195:user_src/soft_bms.c **** bms_data.bms_v2 = tattu_device1.ttu_inf.tattu_v2;
  1325. 1089 .loc 1 195 52
  1326. 1090 0798 484B ldr r3, .L47
  1327. 1091 079a B3F8EE30 ldrh r3, [r3, #238] @ unaligned
  1328. 1092 079e 9AB2 uxth r2, r3
  1329. 1093 .loc 1 195 29
  1330. 1094 07a0 4A4B ldr r3, .L47+16
  1331. 1095 07a2 A3F80720 strh r2, [r3, #7] @ unaligned
  1332. 196:user_src/soft_bms.c **** bms_data.bms_v3 = tattu_device1.ttu_inf.tattu_v3;
  1333. 1096 .loc 1 196 52
  1334. 1097 07a6 454B ldr r3, .L47
  1335. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 24
  1336. 1098 07a8 B3F8F030 ldrh r3, [r3, #240] @ unaligned
  1337. 1099 07ac 9AB2 uxth r2, r3
  1338. 1100 .loc 1 196 29
  1339. 1101 07ae 474B ldr r3, .L47+16
  1340. 1102 07b0 A3F80920 strh r2, [r3, #9] @ unaligned
  1341. 197:user_src/soft_bms.c **** bms_data.bms_v4 = tattu_device1.ttu_inf.tattu_v4;
  1342. 1103 .loc 1 197 52
  1343. 1104 07b4 414B ldr r3, .L47
  1344. 1105 07b6 B3F8F230 ldrh r3, [r3, #242] @ unaligned
  1345. 1106 07ba 9AB2 uxth r2, r3
  1346. 1107 .loc 1 197 29
  1347. 1108 07bc 434B ldr r3, .L47+16
  1348. 1109 07be A3F80B20 strh r2, [r3, #11] @ unaligned
  1349. 198:user_src/soft_bms.c **** bms_data.bms_v5 = tattu_device1.ttu_inf.tattu_v5;
  1350. 1110 .loc 1 198 52
  1351. 1111 07c2 3E4B ldr r3, .L47
  1352. 1112 07c4 B3F8F430 ldrh r3, [r3, #244] @ unaligned
  1353. 1113 07c8 9AB2 uxth r2, r3
  1354. 1114 .loc 1 198 29
  1355. 1115 07ca 404B ldr r3, .L47+16
  1356. 1116 07cc A3F80D20 strh r2, [r3, #13] @ unaligned
  1357. 199:user_src/soft_bms.c **** bms_data.bms_v6 = tattu_device1.ttu_inf.tattu_v6;
  1358. 1117 .loc 1 199 52
  1359. 1118 07d0 3A4B ldr r3, .L47
  1360. 1119 07d2 B3F8F630 ldrh r3, [r3, #246] @ unaligned
  1361. 1120 07d6 9AB2 uxth r2, r3
  1362. 1121 .loc 1 199 29
  1363. 1122 07d8 3C4B ldr r3, .L47+16
  1364. 1123 07da A3F80F20 strh r2, [r3, #15] @ unaligned
  1365. 200:user_src/soft_bms.c **** bms_data.bms_v7 = tattu_device1.ttu_inf.tattu_v7;
  1366. 1124 .loc 1 200 52
  1367. 1125 07de 374B ldr r3, .L47
  1368. 1126 07e0 B3F8F830 ldrh r3, [r3, #248] @ unaligned
  1369. 1127 07e4 9AB2 uxth r2, r3
  1370. 1128 .loc 1 200 29
  1371. 1129 07e6 394B ldr r3, .L47+16
  1372. 1130 07e8 A3F81120 strh r2, [r3, #17] @ unaligned
  1373. 201:user_src/soft_bms.c **** bms_data.bms_v8 = tattu_device1.ttu_inf.tattu_v8;
  1374. 1131 .loc 1 201 52
  1375. 1132 07ec 334B ldr r3, .L47
  1376. 1133 07ee B3F8FA30 ldrh r3, [r3, #250] @ unaligned
  1377. 1134 07f2 9AB2 uxth r2, r3
  1378. 1135 .loc 1 201 29
  1379. 1136 07f4 354B ldr r3, .L47+16
  1380. 1137 07f6 A3F81320 strh r2, [r3, #19] @ unaligned
  1381. 202:user_src/soft_bms.c **** bms_data.bms_v9 = tattu_device1.ttu_inf.tattu_v9;
  1382. 1138 .loc 1 202 52
  1383. 1139 07fa 304B ldr r3, .L47
  1384. 1140 07fc B3F8FC30 ldrh r3, [r3, #252] @ unaligned
  1385. 1141 0800 9AB2 uxth r2, r3
  1386. 1142 .loc 1 202 29
  1387. 1143 0802 324B ldr r3, .L47+16
  1388. 1144 0804 A3F81520 strh r2, [r3, #21] @ unaligned
  1389. 203:user_src/soft_bms.c **** bms_data.bms_v10 = tattu_device1.ttu_inf.tattu_v10;
  1390. 1145 .loc 1 203 53
  1391. 1146 0808 2C4B ldr r3, .L47
  1392. 1147 080a B3F8FE30 ldrh r3, [r3, #254] @ unaligned
  1393. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 25
  1394. 1148 080e 9AB2 uxth r2, r3
  1395. 1149 .loc 1 203 30
  1396. 1150 0810 2E4B ldr r3, .L47+16
  1397. 1151 0812 A3F81720 strh r2, [r3, #23] @ unaligned
  1398. 204:user_src/soft_bms.c **** bms_data.bms_v11 = tattu_device1.ttu_inf.tattu_v11;
  1399. 1152 .loc 1 204 53
  1400. 1153 0816 294B ldr r3, .L47
  1401. 1154 0818 B3F80031 ldrh r3, [r3, #256] @ unaligned
  1402. 1155 081c 9AB2 uxth r2, r3
  1403. 1156 .loc 1 204 30
  1404. 1157 081e 2B4B ldr r3, .L47+16
  1405. 1158 0820 A3F81920 strh r2, [r3, #25] @ unaligned
  1406. 205:user_src/soft_bms.c **** bms_data.bms_v12 = tattu_device1.ttu_inf.tattu_v12;
  1407. 1159 .loc 1 205 53
  1408. 1160 0824 254B ldr r3, .L47
  1409. 1161 0826 B3F80231 ldrh r3, [r3, #258] @ unaligned
  1410. 1162 082a 9AB2 uxth r2, r3
  1411. 1163 .loc 1 205 30
  1412. 1164 082c 274B ldr r3, .L47+16
  1413. 1165 082e A3F81B20 strh r2, [r3, #27] @ unaligned
  1414. 206:user_src/soft_bms.c **** bms_data.bms_v13 = tattu_device1.ttu_inf.tattu_v13;
  1415. 1166 .loc 1 206 53
  1416. 1167 0832 224B ldr r3, .L47
  1417. 1168 0834 B3F80431 ldrh r3, [r3, #260] @ unaligned
  1418. 1169 0838 9AB2 uxth r2, r3
  1419. 1170 .loc 1 206 30
  1420. 1171 083a 244B ldr r3, .L47+16
  1421. 1172 083c A3F81D20 strh r2, [r3, #29] @ unaligned
  1422. 207:user_src/soft_bms.c **** bms_data.bms_v14 = tattu_device1.ttu_inf.tattu_v14;
  1423. 1173 .loc 1 207 53
  1424. 1174 0840 1E4B ldr r3, .L47
  1425. 1175 0842 B3F80631 ldrh r3, [r3, #262] @ unaligned
  1426. 1176 0846 9AB2 uxth r2, r3
  1427. 1177 .loc 1 207 30
  1428. 1178 0848 204B ldr r3, .L47+16
  1429. 1179 084a A3F81F20 strh r2, [r3, #31] @ unaligned
  1430. 208:user_src/soft_bms.c **** memcpy(bms_data.bms_ids,&tattu_device1.ttu_inf.tuattu_id[0],16);
  1431. 1180 .loc 1 208 13
  1432. 1181 084e 1022 movs r2, #16
  1433. 1182 0850 2049 ldr r1, .L47+24
  1434. 1183 0852 2148 ldr r0, .L47+28
  1435. 1184 0854 FFF7FEFF bl memcpy
  1436. 209:user_src/soft_bms.c **** //memcpy(bms_data.bms_ids, "Tattu1", 6);
  1437. 210:user_src/soft_bms.c **** bms_data.bms_ac = tattu_device1.ttu_inf.tattu_cur;
  1438. 1185 .loc 1 210 52
  1439. 1186 0858 184B ldr r3, .L47
  1440. 1187 085a B3F9E230 ldrsh r3, [r3, #226] @ unaligned
  1441. 1188 085e 1AB2 sxth r2, r3
  1442. 1189 .loc 1 210 29
  1443. 1190 0860 1A4B ldr r3, .L47+16
  1444. 1191 0862 A3F85D20 strh r2, [r3, #93] @ unaligned
  1445. 211:user_src/soft_bms.c **** bms_data.serial_num = FAC_TATTU;
  1446. 1192 .loc 1 211 33
  1447. 1193 0866 194B ldr r3, .L47+16
  1448. 1194 0868 0B22 movs r2, #11
  1449. 1195 086a A3F86420 strh r2, [r3, #100] @ movhi
  1450. 212:user_src/soft_bms.c ****
  1451. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 26
  1452. 213:user_src/soft_bms.c **** if(StrArrayNull( &bms_data.bms_ids[0], sizeof( bms_data.bms_ids ) ) == false && dev_bms
  1453. 1196 .loc 1 213 16
  1454. 1197 086e 2021 movs r1, #32
  1455. 1198 0870 1948 ldr r0, .L47+28
  1456. 1199 0872 FFF7FEFF bl StrArrayNull
  1457. 1200 0876 0346 mov r3, r0
  1458. 1201 .loc 1 213 81
  1459. 1202 0878 83F00103 eor r3, r3, #1
  1460. 1203 087c DBB2 uxtb r3, r3
  1461. 1204 .loc 1 213 15
  1462. 1205 087e 002B cmp r3, #0
  1463. 1206 0880 35D0 beq .L24
  1464. 1207 .loc 1 213 108 discriminator 1
  1465. 1208 0882 164B ldr r3, .L47+32
  1466. 1209 0884 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  1467. 1210 .loc 1 213 112 discriminator 1
  1468. 1211 0888 83F00103 eor r3, r3, #1
  1469. 1212 088c DBB2 uxtb r3, r3
  1470. 1213 .loc 1 213 90 discriminator 1
  1471. 1214 088e 002B cmp r3, #0
  1472. 1215 0890 2DD0 beq .L24
  1473. 214:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,16,NULL,0,NULL
  1474. 1216 .loc 1 214 17
  1475. 1217 0892 0723 movs r3, #7
  1476. 1218 0894 0693 str r3, [sp, #24]
  1477. 1219 0896 124B ldr r3, .L47+36
  1478. 1220 0898 0593 str r3, [sp, #20]
  1479. 1221 089a 0023 movs r3, #0
  1480. 1222 089c 0493 str r3, [sp, #16]
  1481. 1223 089e 0023 movs r3, #0
  1482. 1224 08a0 0393 str r3, [sp, #12]
  1483. 1225 08a2 0023 movs r3, #0
  1484. 1226 08a4 0293 str r3, [sp, #8]
  1485. 1227 08a6 0023 movs r3, #0
  1486. 1228 08a8 0193 str r3, [sp, #4]
  1487. 1229 08aa 1023 movs r3, #16
  1488. 1230 08ac 0093 str r3, [sp]
  1489. 1231 08ae 0A4B ldr r3, .L47+28
  1490. 1232 08b0 0022 movs r2, #0
  1491. 1233 08b2 0E21 movs r1, #14
  1492. 1234 08b4 0948 ldr r0, .L47+32
  1493. 1235 08b6 FFF7FEFF bl regist_dev_info
  1494. 1236 08ba 18E0 b .L24
  1495. 1237 .L48:
  1496. 1238 .align 2
  1497. 1239 .L47:
  1498. 1240 08bc 00000000 .word tattu_device1
  1499. 1241 08c0 00000000 .word tattu_device2
  1500. 1242 08c4 00000000 .word Dev
  1501. 1243 08c8 00000000 .word group_num
  1502. 1244 08cc 00000000 .word bms_data
  1503. 1245 08d0 CDCCCCCC .word -858993459
  1504. 1246 08d4 10010000 .word tattu_device1+272
  1505. 1247 08d8 39000000 .word bms_data+57
  1506. 1248 08dc 00000000 .word dev_bms1
  1507. 1249 08e0 10000000 .word .LC2
  1508. 1250 .L23:
  1509. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 27
  1510. 215:user_src/soft_bms.c **** }
  1511. 216:user_src/soft_bms.c **** else
  1512. 217:user_src/soft_bms.c **** {
  1513. 218:user_src/soft_bms.c **** memset( &bms_data, 0, sizeof(bms_data));
  1514. 1251 .loc 1 218 13
  1515. 1252 08e4 6622 movs r2, #102
  1516. 1253 08e6 0021 movs r1, #0
  1517. 1254 08e8 6F48 ldr r0, .L49
  1518. 1255 08ea FFF7FEFF bl memset
  1519. 1256 .L24:
  1520. 219:user_src/soft_bms.c **** }
  1521. 220:user_src/soft_bms.c ****
  1522. 221:user_src/soft_bms.c **** if(tattu_device2.Tattu_Link.connect_status == COMP_NORMAL)
  1523. 1257 .loc 1 221 36
  1524. 1258 08ee 6F4B ldr r3, .L49+4
  1525. 1259 08f0 93F8D430 ldrb r3, [r3, #212] @ zero_extendqisi2
  1526. 1260 .loc 1 221 11
  1527. 1261 08f4 012B cmp r3, #1
  1528. 1262 08f6 40F0D180 bne .L25
  1529. 222:user_src/soft_bms.c **** {
  1530. 223:user_src/soft_bms.c **** group_num = 2;
  1531. 1263 .loc 1 223 23
  1532. 1264 08fa 6D4B ldr r3, .L49+8
  1533. 1265 08fc 0222 movs r2, #2
  1534. 1266 08fe 1A70 strb r2, [r3]
  1535. 224:user_src/soft_bms.c **** bms_data2.bms_cycle = tattu_device2.ttu_inf.tattu_cycle;
  1536. 1267 .loc 1 224 56
  1537. 1268 0900 6A4B ldr r3, .L49+4
  1538. 1269 0902 B3F8E830 ldrh r3, [r3, #232] @ unaligned
  1539. 1270 0906 9AB2 uxth r2, r3
  1540. 1271 .loc 1 224 33
  1541. 1272 0908 6A4B ldr r3, .L49+12
  1542. 1273 090a A3F85920 strh r2, [r3, #89] @ unaligned
  1543. 225:user_src/soft_bms.c **** bms_data2.bms_volt = tattu_device2.ttu_inf.tattu_volt / 10;
  1544. 1274 .loc 1 225 55
  1545. 1275 090e 674B ldr r3, .L49+4
  1546. 1276 0910 B3F8E030 ldrh r3, [r3, #224] @ unaligned
  1547. 1277 0914 9BB2 uxth r3, r3
  1548. 1278 .loc 1 225 32
  1549. 1279 0916 684A ldr r2, .L49+16
  1550. 1280 0918 A2FB0323 umull r2, r3, r2, r3
  1551. 1281 091c DB08 lsrs r3, r3, #3
  1552. 1282 091e 9AB2 uxth r2, r3
  1553. 1283 0920 644B ldr r3, .L49+12
  1554. 1284 0922 A3F85B20 strh r2, [r3, #91] @ unaligned
  1555. 226:user_src/soft_bms.c **** bms_data2.bms_temp = tattu_device2.ttu_inf.tattu_temp * 10;
  1556. 1285 .loc 1 226 55
  1557. 1286 0926 614B ldr r3, .L49+4
  1558. 1287 0928 B3F8E430 ldrh r3, [r3, #228] @ unaligned
  1559. 1288 092c 9BB2 uxth r3, r3
  1560. 1289 .loc 1 226 32
  1561. 1290 092e 1A46 mov r2, r3 @ movhi
  1562. 1291 0930 9200 lsls r2, r2, #2
  1563. 1292 0932 1344 add r3, r3, r2
  1564. 1293 0934 5B00 lsls r3, r3, #1
  1565. 1294 0936 9BB2 uxth r3, r3
  1566. 1295 0938 1AB2 sxth r2, r3
  1567. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 28
  1568. 1296 093a 5E4B ldr r3, .L49+12
  1569. 1297 093c A3F85F20 strh r2, [r3, #95] @ unaligned
  1570. 227:user_src/soft_bms.c **** bms_data2.bms_vs = tattu_device2.ttu_inf.tattu_perc;
  1571. 1298 .loc 1 227 53
  1572. 1299 0940 5A4B ldr r3, .L49+4
  1573. 1300 0942 B3F8E630 ldrh r3, [r3, #230] @ unaligned
  1574. 1301 0946 9BB2 uxth r3, r3
  1575. 1302 .loc 1 227 30
  1576. 1303 0948 DAB2 uxtb r2, r3
  1577. 1304 094a 5A4B ldr r3, .L49+12
  1578. 1305 094c 83F86120 strb r2, [r3, #97]
  1579. 228:user_src/soft_bms.c **** bms_data2.bms_ss = 0;//ttu_inf.def_info[24] & 0xc00;//格�电池�关心部分报警
  1580. 1306 .loc 1 228 30
  1581. 1307 0950 584B ldr r3, .L49+12
  1582. 1308 0952 0022 movs r2, #0
  1583. 1309 0954 A3F86220 strh r2, [r3, #98] @ movhi
  1584. 229:user_src/soft_bms.c **** bms_data2.bms_num = tattu_device2.ttu_inf.tattu_cnum;
  1585. 1310 .loc 1 229 54
  1586. 1311 0958 544B ldr r3, .L49+4
  1587. 1312 095a B3F82031 ldrh r3, [r3, #288] @ unaligned
  1588. 1313 095e 9BB2 uxth r3, r3
  1589. 1314 .loc 1 229 31
  1590. 1315 0960 DAB2 uxtb r2, r3
  1591. 1316 0962 544B ldr r3, .L49+12
  1592. 1317 0964 1A71 strb r2, [r3, #4]
  1593. 230:user_src/soft_bms.c **** bms_data2.bms_v1 = tattu_device2.ttu_inf.tattu_v1;
  1594. 1318 .loc 1 230 53
  1595. 1319 0966 514B ldr r3, .L49+4
  1596. 1320 0968 B3F8EC30 ldrh r3, [r3, #236] @ unaligned
  1597. 1321 096c 9AB2 uxth r2, r3
  1598. 1322 .loc 1 230 30
  1599. 1323 096e 514B ldr r3, .L49+12
  1600. 1324 0970 A3F80520 strh r2, [r3, #5] @ unaligned
  1601. 231:user_src/soft_bms.c **** bms_data2.bms_v2 = tattu_device2.ttu_inf.tattu_v2;
  1602. 1325 .loc 1 231 53
  1603. 1326 0974 4D4B ldr r3, .L49+4
  1604. 1327 0976 B3F8EE30 ldrh r3, [r3, #238] @ unaligned
  1605. 1328 097a 9AB2 uxth r2, r3
  1606. 1329 .loc 1 231 30
  1607. 1330 097c 4D4B ldr r3, .L49+12
  1608. 1331 097e A3F80720 strh r2, [r3, #7] @ unaligned
  1609. 232:user_src/soft_bms.c **** bms_data2.bms_v3 = tattu_device2.ttu_inf.tattu_v3;
  1610. 1332 .loc 1 232 53
  1611. 1333 0982 4A4B ldr r3, .L49+4
  1612. 1334 0984 B3F8F030 ldrh r3, [r3, #240] @ unaligned
  1613. 1335 0988 9AB2 uxth r2, r3
  1614. 1336 .loc 1 232 30
  1615. 1337 098a 4A4B ldr r3, .L49+12
  1616. 1338 098c A3F80920 strh r2, [r3, #9] @ unaligned
  1617. 233:user_src/soft_bms.c **** bms_data2.bms_v4 = tattu_device2.ttu_inf.tattu_v4;
  1618. 1339 .loc 1 233 53
  1619. 1340 0990 464B ldr r3, .L49+4
  1620. 1341 0992 B3F8F230 ldrh r3, [r3, #242] @ unaligned
  1621. 1342 0996 9AB2 uxth r2, r3
  1622. 1343 .loc 1 233 30
  1623. 1344 0998 464B ldr r3, .L49+12
  1624. 1345 099a A3F80B20 strh r2, [r3, #11] @ unaligned
  1625. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 29
  1626. 234:user_src/soft_bms.c **** bms_data2.bms_v5 = tattu_device2.ttu_inf.tattu_v5;
  1627. 1346 .loc 1 234 53
  1628. 1347 099e 434B ldr r3, .L49+4
  1629. 1348 09a0 B3F8F430 ldrh r3, [r3, #244] @ unaligned
  1630. 1349 09a4 9AB2 uxth r2, r3
  1631. 1350 .loc 1 234 30
  1632. 1351 09a6 434B ldr r3, .L49+12
  1633. 1352 09a8 A3F80D20 strh r2, [r3, #13] @ unaligned
  1634. 235:user_src/soft_bms.c **** bms_data2.bms_v6 = tattu_device2.ttu_inf.tattu_v6;
  1635. 1353 .loc 1 235 53
  1636. 1354 09ac 3F4B ldr r3, .L49+4
  1637. 1355 09ae B3F8F630 ldrh r3, [r3, #246] @ unaligned
  1638. 1356 09b2 9AB2 uxth r2, r3
  1639. 1357 .loc 1 235 30
  1640. 1358 09b4 3F4B ldr r3, .L49+12
  1641. 1359 09b6 A3F80F20 strh r2, [r3, #15] @ unaligned
  1642. 236:user_src/soft_bms.c **** bms_data2.bms_v7 = tattu_device2.ttu_inf.tattu_v7;
  1643. 1360 .loc 1 236 53
  1644. 1361 09ba 3C4B ldr r3, .L49+4
  1645. 1362 09bc B3F8F830 ldrh r3, [r3, #248] @ unaligned
  1646. 1363 09c0 9AB2 uxth r2, r3
  1647. 1364 .loc 1 236 30
  1648. 1365 09c2 3C4B ldr r3, .L49+12
  1649. 1366 09c4 A3F81120 strh r2, [r3, #17] @ unaligned
  1650. 237:user_src/soft_bms.c **** bms_data2.bms_v8 = tattu_device2.ttu_inf.tattu_v8;
  1651. 1367 .loc 1 237 53
  1652. 1368 09c8 384B ldr r3, .L49+4
  1653. 1369 09ca B3F8FA30 ldrh r3, [r3, #250] @ unaligned
  1654. 1370 09ce 9AB2 uxth r2, r3
  1655. 1371 .loc 1 237 30
  1656. 1372 09d0 384B ldr r3, .L49+12
  1657. 1373 09d2 A3F81320 strh r2, [r3, #19] @ unaligned
  1658. 238:user_src/soft_bms.c **** bms_data2.bms_v9 = tattu_device2.ttu_inf.tattu_v9;
  1659. 1374 .loc 1 238 53
  1660. 1375 09d6 354B ldr r3, .L49+4
  1661. 1376 09d8 B3F8FC30 ldrh r3, [r3, #252] @ unaligned
  1662. 1377 09dc 9AB2 uxth r2, r3
  1663. 1378 .loc 1 238 30
  1664. 1379 09de 354B ldr r3, .L49+12
  1665. 1380 09e0 A3F81520 strh r2, [r3, #21] @ unaligned
  1666. 239:user_src/soft_bms.c **** bms_data2.bms_v10 = tattu_device2.ttu_inf.tattu_v10;
  1667. 1381 .loc 1 239 54
  1668. 1382 09e4 314B ldr r3, .L49+4
  1669. 1383 09e6 B3F8FE30 ldrh r3, [r3, #254] @ unaligned
  1670. 1384 09ea 9AB2 uxth r2, r3
  1671. 1385 .loc 1 239 31
  1672. 1386 09ec 314B ldr r3, .L49+12
  1673. 1387 09ee A3F81720 strh r2, [r3, #23] @ unaligned
  1674. 240:user_src/soft_bms.c **** bms_data2.bms_v11 = tattu_device2.ttu_inf.tattu_v11;
  1675. 1388 .loc 1 240 54
  1676. 1389 09f2 2E4B ldr r3, .L49+4
  1677. 1390 09f4 B3F80031 ldrh r3, [r3, #256] @ unaligned
  1678. 1391 09f8 9AB2 uxth r2, r3
  1679. 1392 .loc 1 240 31
  1680. 1393 09fa 2E4B ldr r3, .L49+12
  1681. 1394 09fc A3F81920 strh r2, [r3, #25] @ unaligned
  1682. 241:user_src/soft_bms.c **** bms_data2.bms_v12 = tattu_device2.ttu_inf.tattu_v12;
  1683. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 30
  1684. 1395 .loc 1 241 54
  1685. 1396 0a00 2A4B ldr r3, .L49+4
  1686. 1397 0a02 B3F80231 ldrh r3, [r3, #258] @ unaligned
  1687. 1398 0a06 9AB2 uxth r2, r3
  1688. 1399 .loc 1 241 31
  1689. 1400 0a08 2A4B ldr r3, .L49+12
  1690. 1401 0a0a A3F81B20 strh r2, [r3, #27] @ unaligned
  1691. 242:user_src/soft_bms.c **** bms_data2.bms_v13 = tattu_device2.ttu_inf.tattu_v13;
  1692. 1402 .loc 1 242 54
  1693. 1403 0a0e 274B ldr r3, .L49+4
  1694. 1404 0a10 B3F80431 ldrh r3, [r3, #260] @ unaligned
  1695. 1405 0a14 9AB2 uxth r2, r3
  1696. 1406 .loc 1 242 31
  1697. 1407 0a16 274B ldr r3, .L49+12
  1698. 1408 0a18 A3F81D20 strh r2, [r3, #29] @ unaligned
  1699. 243:user_src/soft_bms.c **** bms_data2.bms_v14 = tattu_device2.ttu_inf.tattu_v14;
  1700. 1409 .loc 1 243 54
  1701. 1410 0a1c 234B ldr r3, .L49+4
  1702. 1411 0a1e B3F80631 ldrh r3, [r3, #262] @ unaligned
  1703. 1412 0a22 9AB2 uxth r2, r3
  1704. 1413 .loc 1 243 31
  1705. 1414 0a24 234B ldr r3, .L49+12
  1706. 1415 0a26 A3F81F20 strh r2, [r3, #31] @ unaligned
  1707. 244:user_src/soft_bms.c **** memcpy(bms_data2.bms_ids,&tattu_device2.ttu_inf.tuattu_id[0],16);
  1708. 1416 .loc 1 244 13
  1709. 1417 0a2a 1022 movs r2, #16
  1710. 1418 0a2c 2349 ldr r1, .L49+20
  1711. 1419 0a2e 2448 ldr r0, .L49+24
  1712. 1420 0a30 FFF7FEFF bl memcpy
  1713. 245:user_src/soft_bms.c **** //memcpy(bms_data2.bms_ids, "Tattu2", 6);
  1714. 246:user_src/soft_bms.c **** bms_data2.bms_ac = tattu_device2.ttu_inf.tattu_cur;
  1715. 1421 .loc 1 246 53
  1716. 1422 0a34 1D4B ldr r3, .L49+4
  1717. 1423 0a36 B3F9E230 ldrsh r3, [r3, #226] @ unaligned
  1718. 1424 0a3a 1AB2 sxth r2, r3
  1719. 1425 .loc 1 246 30
  1720. 1426 0a3c 1D4B ldr r3, .L49+12
  1721. 1427 0a3e A3F85D20 strh r2, [r3, #93] @ unaligned
  1722. 247:user_src/soft_bms.c **** bms_data2.serial_num = FAC_TATTU;
  1723. 1428 .loc 1 247 34
  1724. 1429 0a42 1C4B ldr r3, .L49+12
  1725. 1430 0a44 0B22 movs r2, #11
  1726. 1431 0a46 A3F86420 strh r2, [r3, #100] @ movhi
  1727. 248:user_src/soft_bms.c ****
  1728. 249:user_src/soft_bms.c **** if(StrArrayNull( &bms_data2.bms_ids[0], sizeof( bms_data2.bms_ids ) ) == false && dev_b
  1729. 1432 .loc 1 249 16
  1730. 1433 0a4a 2021 movs r1, #32
  1731. 1434 0a4c 1C48 ldr r0, .L49+24
  1732. 1435 0a4e FFF7FEFF bl StrArrayNull
  1733. 1436 0a52 0346 mov r3, r0
  1734. 1437 .loc 1 249 83
  1735. 1438 0a54 83F00103 eor r3, r3, #1
  1736. 1439 0a58 DBB2 uxtb r3, r3
  1737. 1440 .loc 1 249 15
  1738. 1441 0a5a 002B cmp r3, #0
  1739. 1442 0a5c 00F08382 beq .L38
  1740. 1443 .loc 1 249 110 discriminator 1
  1741. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 31
  1742. 1444 0a60 184B ldr r3, .L49+28
  1743. 1445 0a62 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  1744. 1446 .loc 1 249 114 discriminator 1
  1745. 1447 0a66 83F00103 eor r3, r3, #1
  1746. 1448 0a6a DBB2 uxtb r3, r3
  1747. 1449 .loc 1 249 92 discriminator 1
  1748. 1450 0a6c 002B cmp r3, #0
  1749. 1451 0a6e 00F07A82 beq .L38
  1750. 250:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,16,NULL,0,NUL
  1751. 1452 .loc 1 250 17
  1752. 1453 0a72 0723 movs r3, #7
  1753. 1454 0a74 0693 str r3, [sp, #24]
  1754. 1455 0a76 144B ldr r3, .L49+32
  1755. 1456 0a78 0593 str r3, [sp, #20]
  1756. 1457 0a7a 0023 movs r3, #0
  1757. 1458 0a7c 0493 str r3, [sp, #16]
  1758. 1459 0a7e 0023 movs r3, #0
  1759. 1460 0a80 0393 str r3, [sp, #12]
  1760. 1461 0a82 0023 movs r3, #0
  1761. 1462 0a84 0293 str r3, [sp, #8]
  1762. 1463 0a86 0023 movs r3, #0
  1763. 1464 0a88 0193 str r3, [sp, #4]
  1764. 1465 0a8a 1023 movs r3, #16
  1765. 1466 0a8c 0093 str r3, [sp]
  1766. 1467 0a8e 0C4B ldr r3, .L49+24
  1767. 1468 0a90 0022 movs r2, #0
  1768. 1469 0a92 0F21 movs r1, #15
  1769. 1470 0a94 0B48 ldr r0, .L49+28
  1770. 1471 0a96 FFF7FEFF bl regist_dev_info
  1771. 221:user_src/soft_bms.c **** {
  1772. 1472 .loc 1 221 11
  1773. 1473 0a9a 64E2 b .L38
  1774. 1474 .L25:
  1775. 251:user_src/soft_bms.c **** }
  1776. 252:user_src/soft_bms.c **** else
  1777. 253:user_src/soft_bms.c **** {
  1778. 254:user_src/soft_bms.c **** memset( &bms_data2, 0, sizeof( bms_data2 ) );
  1779. 1475 .loc 1 254 13
  1780. 1476 0a9c 6622 movs r2, #102
  1781. 1477 0a9e 0021 movs r1, #0
  1782. 1478 0aa0 0448 ldr r0, .L49+12
  1783. 1479 0aa2 FFF7FEFF bl memset
  1784. 221:user_src/soft_bms.c **** {
  1785. 1480 .loc 1 221 11
  1786. 1481 0aa6 5EE2 b .L38
  1787. 1482 .L50:
  1788. 1483 .align 2
  1789. 1484 .L49:
  1790. 1485 0aa8 00000000 .word bms_data
  1791. 1486 0aac 00000000 .word tattu_device2
  1792. 1487 0ab0 00000000 .word group_num
  1793. 1488 0ab4 00000000 .word bms_data2
  1794. 1489 0ab8 CDCCCCCC .word -858993459
  1795. 1490 0abc 10010000 .word tattu_device2+272
  1796. 1491 0ac0 39000000 .word bms_data2+57
  1797. 1492 0ac4 00000000 .word dev_bms2
  1798. 1493 0ac8 18000000 .word .LC3
  1799. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 32
  1800. 1494 .L22:
  1801. 255:user_src/soft_bms.c **** }
  1802. 256:user_src/soft_bms.c **** }
  1803. 257:user_src/soft_bms.c **** // else if ( Poweramp_Link.connect_status == COMP_NORMAL )
  1804. 258:user_src/soft_bms.c **** // {
  1805. 259:user_src/soft_bms.c **** // Dev.Bms_Link.connect_status = COMP_NORMAL;
  1806. 260:user_src/soft_bms.c **** // group_num = 1;
  1807. 261:user_src/soft_bms.c ****
  1808. 262:user_src/soft_bms.c **** // //ID�足12�的从buf[0]开始存放
  1809. 263:user_src/soft_bms.c **** // bms_data.bms_cycle = poweramp_sys.amp_cycle;
  1810. 264:user_src/soft_bms.c **** // bms_data.bms_volt = ((uint16_t)poweramp_inf.amp_data[0]) / 10;
  1811. 265:user_src/soft_bms.c **** // bms_data.bms_temp = poweramp_inf.amp_data[3];
  1812. 266:user_src/soft_bms.c **** // bms_data.bms_vs = poweramp_inf.amp_data[5] / 10;
  1813. 267:user_src/soft_bms.c **** // bms_data.bms_ss = poweramp_inf.amp_data[22];
  1814. 268:user_src/soft_bms.c **** // bms_data.bms_num = 13;
  1815. 269:user_src/soft_bms.c **** // bms_data.bms_v1 = poweramp_inf.amp_data[9];
  1816. 270:user_src/soft_bms.c **** // bms_data.bms_v2 = poweramp_inf.amp_data[10];
  1817. 271:user_src/soft_bms.c **** // bms_data.bms_v3 = poweramp_inf.amp_data[11];
  1818. 272:user_src/soft_bms.c **** // bms_data.bms_v4 = poweramp_inf.amp_data[12];
  1819. 273:user_src/soft_bms.c **** // bms_data.bms_v5 = poweramp_inf.amp_data[13];
  1820. 274:user_src/soft_bms.c **** // bms_data.bms_v6 = poweramp_inf.amp_data[14];
  1821. 275:user_src/soft_bms.c **** // bms_data.bms_v7 = poweramp_inf.amp_data[15];
  1822. 276:user_src/soft_bms.c **** // bms_data.bms_v8 = poweramp_inf.amp_data[16];
  1823. 277:user_src/soft_bms.c **** // bms_data.bms_v9 = poweramp_inf.amp_data[17];
  1824. 278:user_src/soft_bms.c **** // bms_data.bms_v10 = poweramp_inf.amp_data[18];
  1825. 279:user_src/soft_bms.c **** // bms_data.bms_v11 = poweramp_inf.amp_data[19];
  1826. 280:user_src/soft_bms.c **** // bms_data.bms_v12 = poweramp_inf.amp_data[20];
  1827. 281:user_src/soft_bms.c **** // bms_data.bms_v13 = poweramp_inf.amp_data[21];
  1828. 282:user_src/soft_bms.c **** // memcpy( bms_data.bms_ids, "poweramp", 8 );
  1829. 283:user_src/soft_bms.c **** // bms_data.bms_ac = poweramp_inf.amp_data[1];
  1830. 284:user_src/soft_bms.c **** // bms_data.serial_num = FAC_POWERAMP;
  1831. 285:user_src/soft_bms.c ****
  1832. 286:user_src/soft_bms.c **** // if(dev_bms1.regist.dev == false)
  1833. 287:user_src/soft_bms.c **** // regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,"poweramp",9);
  1834. 288:user_src/soft_bms.c **** // }
  1835. 289:user_src/soft_bms.c **** else if ( Herewin_Link.connect_status == COMP_NORMAL )
  1836. 1495 .loc 1 289 27
  1837. 1496 0acc 6D4B ldr r3, .L51
  1838. 1497 0ace 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  1839. 1498 .loc 1 289 13
  1840. 1499 0ad0 012B cmp r3, #1
  1841. 1500 0ad2 40F0E980 bne .L27
  1842. 290:user_src/soft_bms.c **** {
  1843. 291:user_src/soft_bms.c **** Dev.Bms_Link.connect_status = COMP_NORMAL;
  1844. 1501 .loc 1 291 37
  1845. 1502 0ad6 6C4B ldr r3, .L51+4
  1846. 1503 0ad8 0122 movs r2, #1
  1847. 1504 0ada 83F8E021 strb r2, [r3, #480]
  1848. 292:user_src/soft_bms.c **** group_num = 1;
  1849. 1505 .loc 1 292 19
  1850. 1506 0ade 6B4B ldr r3, .L51+8
  1851. 1507 0ae0 0122 movs r2, #1
  1852. 1508 0ae2 1A70 strb r2, [r3]
  1853. 293:user_src/soft_bms.c ****
  1854. 294:user_src/soft_bms.c **** bms_data.bms_cycle = herewin_info.circulation_num;//海盈电池循环次数
  1855. 1509 .loc 1 294 42
  1856. 1510 0ae4 6A4B ldr r3, .L51+12
  1857. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 33
  1858. 1511 0ae6 B3F83330 ldrh r3, [r3, #51] @ unaligned
  1859. 1512 0aea 9AB2 uxth r2, r3
  1860. 1513 .loc 1 294 28
  1861. 1514 0aec 694B ldr r3, .L51+16
  1862. 1515 0aee A3F85920 strh r2, [r3, #89] @ unaligned
  1863. 295:user_src/soft_bms.c **** bms_data.bms_volt = herewin_info.total_vol;
  1864. 1516 .loc 1 295 41
  1865. 1517 0af2 674B ldr r3, .L51+12
  1866. 1518 0af4 B3F82330 ldrh r3, [r3, #35] @ unaligned
  1867. 1519 0af8 9AB2 uxth r2, r3
  1868. 1520 .loc 1 295 27
  1869. 1521 0afa 664B ldr r3, .L51+16
  1870. 1522 0afc A3F85B20 strh r2, [r3, #91] @ unaligned
  1871. 296:user_src/soft_bms.c ****
  1872. 297:user_src/soft_bms.c **** if(herewin_info.get_temp_flag == true)
  1873. 1523 .loc 1 297 24
  1874. 1524 0b00 634B ldr r3, .L51+12
  1875. 1525 0b02 93F83D30 ldrb r3, [r3, #61] @ zero_extendqisi2
  1876. 1526 .loc 1 297 11
  1877. 1527 0b06 002B cmp r3, #0
  1878. 1528 0b08 18D0 beq .L28
  1879. 298:user_src/soft_bms.c **** bms_data.bms_temp = ( ( herewin_info.battery_temp[0] + herewin_info.battery_temp[1] + h
  1880. 1529 .loc 1 298 62
  1881. 1530 0b0a 614B ldr r3, .L51+12
  1882. 1531 0b0c 1B78 ldrb r3, [r3] @ zero_extendqisi2
  1883. 1532 0b0e 1A46 mov r2, r3
  1884. 1533 .loc 1 298 93
  1885. 1534 0b10 5F4B ldr r3, .L51+12
  1886. 1535 0b12 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  1887. 1536 .loc 1 298 66
  1888. 1537 0b14 1344 add r3, r3, r2
  1889. 1538 .loc 1 298 124
  1890. 1539 0b16 5E4A ldr r2, .L51+12
  1891. 1540 0b18 9278 ldrb r2, [r2, #2] @ zero_extendqisi2
  1892. 1541 .loc 1 298 97
  1893. 1542 0b1a 1344 add r3, r3, r2
  1894. 1543 .loc 1 298 130
  1895. 1544 0b1c 5E4A ldr r2, .L51+20
  1896. 1545 0b1e 82FB0312 smull r1, r2, r2, r3
  1897. 1546 0b22 DB17 asrs r3, r3, #31
  1898. 1547 0b24 D31A subs r3, r2, r3
  1899. 1548 .loc 1 298 134
  1900. 1549 0b26 283B subs r3, r3, #40
  1901. 1550 .loc 1 298 31
  1902. 1551 0b28 9BB2 uxth r3, r3
  1903. 1552 0b2a 1A46 mov r2, r3 @ movhi
  1904. 1553 0b2c 9200 lsls r2, r2, #2
  1905. 1554 0b2e 1344 add r3, r3, r2
  1906. 1555 0b30 5B00 lsls r3, r3, #1
  1907. 1556 0b32 9BB2 uxth r3, r3
  1908. 1557 0b34 1AB2 sxth r2, r3
  1909. 1558 0b36 574B ldr r3, .L51+16
  1910. 1559 0b38 A3F85F20 strh r2, [r3, #95] @ unaligned
  1911. 1560 .L28:
  1912. 299:user_src/soft_bms.c ****
  1913. 300:user_src/soft_bms.c **** bms_data.bms_vs = herewin_info.SOC_info;
  1914. 1561 .loc 1 300 39
  1915. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 34
  1916. 1562 0b3c 544B ldr r3, .L51+12
  1917. 1563 0b3e 93F82720 ldrb r2, [r3, #39] @ zero_extendqisi2
  1918. 1564 .loc 1 300 25
  1919. 1565 0b42 544B ldr r3, .L51+16
  1920. 1566 0b44 83F86120 strb r2, [r3, #97]
  1921. 301:user_src/soft_bms.c ****
  1922. 302:user_src/soft_bms.c **** bms_data.bms_ss = herewin_info.warn_info;
  1923. 1567 .loc 1 302 39
  1924. 1568 0b48 514B ldr r3, .L51+12
  1925. 1569 0b4a B3F82130 ldrh r3, [r3, #33] @ unaligned
  1926. 1570 0b4e 9AB2 uxth r2, r3
  1927. 1571 .loc 1 302 25
  1928. 1572 0b50 504B ldr r3, .L51+16
  1929. 1573 0b52 A3F86220 strh r2, [r3, #98] @ movhi
  1930. 303:user_src/soft_bms.c **** bms_data.bms_num = herewin_info.battery_num;
  1931. 1574 .loc 1 303 40
  1932. 1575 0b56 4E4B ldr r3, .L51+12
  1933. 1576 0b58 93F83220 ldrb r2, [r3, #50] @ zero_extendqisi2
  1934. 1577 .loc 1 303 26
  1935. 1578 0b5c 4D4B ldr r3, .L51+16
  1936. 1579 0b5e 1A71 strb r2, [r3, #4]
  1937. 304:user_src/soft_bms.c ****
  1938. 305:user_src/soft_bms.c **** bms_data.bms_v1 = herewin_info.battery_vol[0];
  1939. 1580 .loc 1 305 51
  1940. 1581 0b60 4B4B ldr r3, .L51+12
  1941. 1582 0b62 B3F80330 ldrh r3, [r3, #3] @ unaligned
  1942. 1583 0b66 9AB2 uxth r2, r3
  1943. 1584 .loc 1 305 25
  1944. 1585 0b68 4A4B ldr r3, .L51+16
  1945. 1586 0b6a A3F80520 strh r2, [r3, #5] @ unaligned
  1946. 306:user_src/soft_bms.c **** bms_data.bms_v2 = herewin_info.battery_vol[1];
  1947. 1587 .loc 1 306 51
  1948. 1588 0b6e 484B ldr r3, .L51+12
  1949. 1589 0b70 B3F80530 ldrh r3, [r3, #5] @ unaligned
  1950. 1590 0b74 9AB2 uxth r2, r3
  1951. 1591 .loc 1 306 25
  1952. 1592 0b76 474B ldr r3, .L51+16
  1953. 1593 0b78 A3F80720 strh r2, [r3, #7] @ unaligned
  1954. 307:user_src/soft_bms.c **** bms_data.bms_v3 = herewin_info.battery_vol[2];
  1955. 1594 .loc 1 307 51
  1956. 1595 0b7c 444B ldr r3, .L51+12
  1957. 1596 0b7e B3F80730 ldrh r3, [r3, #7] @ unaligned
  1958. 1597 0b82 9AB2 uxth r2, r3
  1959. 1598 .loc 1 307 25
  1960. 1599 0b84 434B ldr r3, .L51+16
  1961. 1600 0b86 A3F80920 strh r2, [r3, #9] @ unaligned
  1962. 308:user_src/soft_bms.c **** bms_data.bms_v4 = herewin_info.battery_vol[3];
  1963. 1601 .loc 1 308 51
  1964. 1602 0b8a 414B ldr r3, .L51+12
  1965. 1603 0b8c B3F80930 ldrh r3, [r3, #9] @ unaligned
  1966. 1604 0b90 9AB2 uxth r2, r3
  1967. 1605 .loc 1 308 25
  1968. 1606 0b92 404B ldr r3, .L51+16
  1969. 1607 0b94 A3F80B20 strh r2, [r3, #11] @ unaligned
  1970. 309:user_src/soft_bms.c **** bms_data.bms_v5 = herewin_info.battery_vol[4];
  1971. 1608 .loc 1 309 51
  1972. 1609 0b98 3D4B ldr r3, .L51+12
  1973. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 35
  1974. 1610 0b9a B3F80B30 ldrh r3, [r3, #11] @ unaligned
  1975. 1611 0b9e 9AB2 uxth r2, r3
  1976. 1612 .loc 1 309 25
  1977. 1613 0ba0 3C4B ldr r3, .L51+16
  1978. 1614 0ba2 A3F80D20 strh r2, [r3, #13] @ unaligned
  1979. 310:user_src/soft_bms.c **** bms_data.bms_v6 = herewin_info.battery_vol[5];
  1980. 1615 .loc 1 310 51
  1981. 1616 0ba6 3A4B ldr r3, .L51+12
  1982. 1617 0ba8 B3F80D30 ldrh r3, [r3, #13] @ unaligned
  1983. 1618 0bac 9AB2 uxth r2, r3
  1984. 1619 .loc 1 310 25
  1985. 1620 0bae 394B ldr r3, .L51+16
  1986. 1621 0bb0 A3F80F20 strh r2, [r3, #15] @ unaligned
  1987. 311:user_src/soft_bms.c **** bms_data.bms_v7 = herewin_info.battery_vol[6];
  1988. 1622 .loc 1 311 51
  1989. 1623 0bb4 364B ldr r3, .L51+12
  1990. 1624 0bb6 B3F80F30 ldrh r3, [r3, #15] @ unaligned
  1991. 1625 0bba 9AB2 uxth r2, r3
  1992. 1626 .loc 1 311 25
  1993. 1627 0bbc 354B ldr r3, .L51+16
  1994. 1628 0bbe A3F81120 strh r2, [r3, #17] @ unaligned
  1995. 312:user_src/soft_bms.c **** bms_data.bms_v8 = herewin_info.battery_vol[7];
  1996. 1629 .loc 1 312 51
  1997. 1630 0bc2 334B ldr r3, .L51+12
  1998. 1631 0bc4 B3F81130 ldrh r3, [r3, #17] @ unaligned
  1999. 1632 0bc8 9AB2 uxth r2, r3
  2000. 1633 .loc 1 312 25
  2001. 1634 0bca 324B ldr r3, .L51+16
  2002. 1635 0bcc A3F81320 strh r2, [r3, #19] @ unaligned
  2003. 313:user_src/soft_bms.c **** bms_data.bms_v9 = herewin_info.battery_vol[8];
  2004. 1636 .loc 1 313 51
  2005. 1637 0bd0 2F4B ldr r3, .L51+12
  2006. 1638 0bd2 B3F81330 ldrh r3, [r3, #19] @ unaligned
  2007. 1639 0bd6 9AB2 uxth r2, r3
  2008. 1640 .loc 1 313 25
  2009. 1641 0bd8 2E4B ldr r3, .L51+16
  2010. 1642 0bda A3F81520 strh r2, [r3, #21] @ unaligned
  2011. 314:user_src/soft_bms.c **** bms_data.bms_v10 = herewin_info.battery_vol[9];
  2012. 1643 .loc 1 314 52
  2013. 1644 0bde 2C4B ldr r3, .L51+12
  2014. 1645 0be0 B3F81530 ldrh r3, [r3, #21] @ unaligned
  2015. 1646 0be4 9AB2 uxth r2, r3
  2016. 1647 .loc 1 314 26
  2017. 1648 0be6 2B4B ldr r3, .L51+16
  2018. 1649 0be8 A3F81720 strh r2, [r3, #23] @ unaligned
  2019. 315:user_src/soft_bms.c **** bms_data.bms_v11 = herewin_info.battery_vol[10];
  2020. 1650 .loc 1 315 52
  2021. 1651 0bec 284B ldr r3, .L51+12
  2022. 1652 0bee B3F81730 ldrh r3, [r3, #23] @ unaligned
  2023. 1653 0bf2 9AB2 uxth r2, r3
  2024. 1654 .loc 1 315 26
  2025. 1655 0bf4 274B ldr r3, .L51+16
  2026. 1656 0bf6 A3F81920 strh r2, [r3, #25] @ unaligned
  2027. 316:user_src/soft_bms.c **** bms_data.bms_v12 = herewin_info.battery_vol[11];
  2028. 1657 .loc 1 316 52
  2029. 1658 0bfa 254B ldr r3, .L51+12
  2030. 1659 0bfc B3F81930 ldrh r3, [r3, #25] @ unaligned
  2031. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 36
  2032. 1660 0c00 9AB2 uxth r2, r3
  2033. 1661 .loc 1 316 26
  2034. 1662 0c02 244B ldr r3, .L51+16
  2035. 1663 0c04 A3F81B20 strh r2, [r3, #27] @ unaligned
  2036. 317:user_src/soft_bms.c **** bms_data.bms_v13 = herewin_info.battery_vol[12];
  2037. 1664 .loc 1 317 52
  2038. 1665 0c08 214B ldr r3, .L51+12
  2039. 1666 0c0a B3F81B30 ldrh r3, [r3, #27] @ unaligned
  2040. 1667 0c0e 9AB2 uxth r2, r3
  2041. 1668 .loc 1 317 26
  2042. 1669 0c10 204B ldr r3, .L51+16
  2043. 1670 0c12 A3F81D20 strh r2, [r3, #29] @ unaligned
  2044. 318:user_src/soft_bms.c **** bms_data.bms_v14 = herewin_info.battery_vol[13];
  2045. 1671 .loc 1 318 52
  2046. 1672 0c16 1E4B ldr r3, .L51+12
  2047. 1673 0c18 B3F81D30 ldrh r3, [r3, #29] @ unaligned
  2048. 1674 0c1c 9AB2 uxth r2, r3
  2049. 1675 .loc 1 318 26
  2050. 1676 0c1e 1D4B ldr r3, .L51+16
  2051. 1677 0c20 A3F81F20 strh r2, [r3, #31] @ unaligned
  2052. 319:user_src/soft_bms.c **** memcpy( bms_data.bms_ids, "herewin", 7 );
  2053. 1678 .loc 1 319 9
  2054. 1679 0c24 0722 movs r2, #7
  2055. 1680 0c26 1D49 ldr r1, .L51+24
  2056. 1681 0c28 1D48 ldr r0, .L51+28
  2057. 1682 0c2a FFF7FEFF bl memcpy
  2058. 320:user_src/soft_bms.c **** bms_data.bms_ac = herewin_info.tolal_ele;
  2059. 1683 .loc 1 320 39
  2060. 1684 0c2e 184B ldr r3, .L51+12
  2061. 1685 0c30 B3F82530 ldrh r3, [r3, #37] @ unaligned
  2062. 1686 0c34 9BB2 uxth r3, r3
  2063. 1687 0c36 1AB2 sxth r2, r3
  2064. 1688 .loc 1 320 25
  2065. 1689 0c38 164B ldr r3, .L51+16
  2066. 1690 0c3a A3F85D20 strh r2, [r3, #93] @ unaligned
  2067. 321:user_src/soft_bms.c **** bms_data.serial_num = FAC_HEREWIN;
  2068. 1691 .loc 1 321 29
  2069. 1692 0c3e 154B ldr r3, .L51+16
  2070. 1693 0c40 0E22 movs r2, #14
  2071. 1694 0c42 A3F86420 strh r2, [r3, #100] @ movhi
  2072. 322:user_src/soft_bms.c ****
  2073. 323:user_src/soft_bms.c **** if(dev_bms1.regist.dev == false)
  2074. 1695 .loc 1 323 27
  2075. 1696 0c46 174B ldr r3, .L51+32
  2076. 1697 0c48 93F85330 ldrb r3, [r3, #83] @ zero_extendqisi2
  2077. 1698 .loc 1 323 32
  2078. 1699 0c4c 83F00103 eor r3, r3, #1
  2079. 1700 0c50 DBB2 uxtb r3, r3
  2080. 1701 .loc 1 323 11
  2081. 1702 0c52 002B cmp r3, #0
  2082. 1703 0c54 00F08A81 beq .L39
  2083. 324:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,"herewin",8);
  2084. 1704 .loc 1 324 13
  2085. 1705 0c58 0823 movs r3, #8
  2086. 1706 0c5a 0693 str r3, [sp, #24]
  2087. 1707 0c5c 0F4B ldr r3, .L51+24
  2088. 1708 0c5e 0593 str r3, [sp, #20]
  2089. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 37
  2090. 1709 0c60 0023 movs r3, #0
  2091. 1710 0c62 0493 str r3, [sp, #16]
  2092. 1711 0c64 0023 movs r3, #0
  2093. 1712 0c66 0393 str r3, [sp, #12]
  2094. 1713 0c68 0023 movs r3, #0
  2095. 1714 0c6a 0293 str r3, [sp, #8]
  2096. 1715 0c6c 0023 movs r3, #0
  2097. 1716 0c6e 0193 str r3, [sp, #4]
  2098. 1717 0c70 0023 movs r3, #0
  2099. 1718 0c72 0093 str r3, [sp]
  2100. 1719 0c74 0023 movs r3, #0
  2101. 1720 0c76 0022 movs r2, #0
  2102. 1721 0c78 0E21 movs r1, #14
  2103. 1722 0c7a 0A48 ldr r0, .L51+32
  2104. 1723 0c7c FFF7FEFF bl regist_dev_info
  2105. 325:user_src/soft_bms.c **** }
  2106. 326:user_src/soft_bms.c **** else if(Device1.Vkbms_Link.connect_status == COMP_NORMAL || Device2.Vkbms_Link.connect_status =
  2107. 327:user_src/soft_bms.c **** {
  2108. 328:user_src/soft_bms.c **** Dev.Bms_Link.connect_status = COMP_NORMAL;
  2109. 329:user_src/soft_bms.c ****
  2110. 330:user_src/soft_bms.c **** //第一组电池
  2111. 331:user_src/soft_bms.c **** if ( Device1.Vkbms_Link.connect_status == COMP_NORMAL )
  2112. 332:user_src/soft_bms.c **** {
  2113. 333:user_src/soft_bms.c **** group_num = 1;
  2114. 334:user_src/soft_bms.c **** bms_data.bms_cycle = Device1.vk_bms5.circulation_time;
  2115. 335:user_src/soft_bms.c **** bms_data.bms_volt = Device1.vk_bms2.voltage;
  2116. 336:user_src/soft_bms.c **** bms_data.bms_temp = Device1.vk_bms2.tempture;
  2117. 337:user_src/soft_bms.c **** bms_data.bms_vs = Device1.vk_bms2.persent / 10;
  2118. 338:user_src/soft_bms.c **** bms_data.bms_ss = Device1.vk_bms2.warn_flag;
  2119. 339:user_src/soft_bms.c **** bms_data.bms_num = Device1.vk_bms2.bms_num;
  2120. 340:user_src/soft_bms.c **** memcpy(&bms_data.bms_v1,&Device1.vk_bms2.bms_v1,26 * 2);
  2121. 341:user_src/soft_bms.c ****
  2122. 342:user_src/soft_bms.c **** memcpy(&bms_data.bms_ids[0],&Device1.vk_bms3.bms_id[0],20);
  2123. 343:user_src/soft_bms.c **** // bms_data.bms_ids[0] = Device1.vk_bms3.bms_id[0];
  2124. 344:user_src/soft_bms.c **** // bms_data.bms_ids[1] = Device1.vk_bms3.bms_id[1];
  2125. 345:user_src/soft_bms.c **** // for(int i = 1; i< 11; i++){
  2126. 346:user_src/soft_bms.c **** // bms_data.bms_ids[2*i] = ((Device1.vk_bms3.bms_id[1 + i] >> 4) & 0xf) + '0';
  2127. 347:user_src/soft_bms.c **** // bms_data.bms_ids[2*i+1] = (Device1.vk_bms3.bms_id[1 + i] & 0xf )+ '0';
  2128. 348:user_src/soft_bms.c **** // }
  2129. 349:user_src/soft_bms.c **** bms_data.bms_ac = (short)(Device1.vk_bms2.current / 10);
  2130. 350:user_src/soft_bms.c **** bms_data.serial_num = FAC_VK_BMS;
  2131. 351:user_src/soft_bms.c **** // if( Device1.vk_bms3.bms_type_info[0] == 'S' && Device1.vk_bms3.bms_type_info[0] == '
  2132. 352:user_src/soft_bms.c **** // && Device1.vk_bms3.bms_type_info[0] == 'A' && Device1.vk_bms3.bms_type_info[0] == '1
  2133. 353:user_src/soft_bms.c **** // {
  2134. 354:user_src/soft_bms.c **** // bms_data.serial_num = 11; //???
  2135. 355:user_src/soft_bms.c **** // }
  2136. 356:user_src/soft_bms.c ****
  2137. 357:user_src/soft_bms.c **** //厂家还没加
  2138. 358:user_src/soft_bms.c **** if(StrArrayNull( &bms_data.bms_ids[0], sizeof( bms_data.bms_ids ) ) == false && dev_bms
  2139. 359:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2140. 360:user_src/soft_bms.c **** if(StrArrayNull( (uint8_t *)&Device1.vk_bms3.bms_company_info[0], sizeof( Device1.vk_bm
  2141. 361:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2142. 362:user_src/soft_bms.c ****
  2143. 363:user_src/soft_bms.c **** }
  2144. 364:user_src/soft_bms.c **** else
  2145. 365:user_src/soft_bms.c **** {
  2146. 366:user_src/soft_bms.c **** memset( &Device1, 0, sizeof( Device1 ) );
  2147. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 38
  2148. 367:user_src/soft_bms.c **** }
  2149. 368:user_src/soft_bms.c ****
  2150. 369:user_src/soft_bms.c **** //第二组电池
  2151. 370:user_src/soft_bms.c **** if ( Device2.Vkbms_Link.connect_status == COMP_NORMAL )
  2152. 371:user_src/soft_bms.c **** {
  2153. 372:user_src/soft_bms.c **** group_num = 2;
  2154. 373:user_src/soft_bms.c **** bms_data2.bms_cycle = Device2.vk_bms5.circulation_time;
  2155. 374:user_src/soft_bms.c **** bms_data2.bms_volt = Device2.vk_bms2.voltage;
  2156. 375:user_src/soft_bms.c **** bms_data2.bms_temp = Device2.vk_bms2.tempture;
  2157. 376:user_src/soft_bms.c **** bms_data2.bms_vs = Device2.vk_bms2.persent / 10;
  2158. 377:user_src/soft_bms.c **** bms_data2.bms_ss = Device2.vk_bms2.warn_flag;
  2159. 378:user_src/soft_bms.c **** bms_data2.bms_num = Device2.vk_bms2.bms_num;
  2160. 379:user_src/soft_bms.c ****
  2161. 380:user_src/soft_bms.c **** memcpy(&bms_data2.bms_v1,&Device2.vk_bms2.bms_v1,26 * 2);
  2162. 381:user_src/soft_bms.c ****
  2163. 382:user_src/soft_bms.c **** memcpy(&bms_data2.bms_ids[0],&Device2.vk_bms3.bms_id[0],20);
  2164. 383:user_src/soft_bms.c ****
  2165. 384:user_src/soft_bms.c **** bms_data2.bms_ac = (short)(Device2.vk_bms2.current / 10);
  2166. 385:user_src/soft_bms.c **** bms_data2.serial_num = FAC_VK_BMS;
  2167. 386:user_src/soft_bms.c **** // if( Device2.vk_bms3.bms_type_info[0] == 'S' && Device2.vk_bms3.bms_type_info[0] == '
  2168. 387:user_src/soft_bms.c **** // && Device2.vk_bms3.bms_type_info[0] == 'A' && Device2.vk_bms3.bms_type_info[0] == '1
  2169. 388:user_src/soft_bms.c **** // {
  2170. 389:user_src/soft_bms.c **** // bms_data2.serial_num = 11; //???
  2171. 390:user_src/soft_bms.c **** // }
  2172. 391:user_src/soft_bms.c **** if(StrArrayNull( &bms_data2.bms_ids[0], sizeof( bms_data2.bms_ids ) ) == false && dev_b
  2173. 392:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2174. 393:user_src/soft_bms.c **** if(StrArrayNull( (uint8_t *)&Device2.vk_bms3.bms_company_info[0], sizeof( Device2.vk_bm
  2175. 394:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2176. 395:user_src/soft_bms.c ****
  2177. 396:user_src/soft_bms.c **** }
  2178. 397:user_src/soft_bms.c **** else
  2179. 398:user_src/soft_bms.c **** {
  2180. 399:user_src/soft_bms.c **** memset( &bms_data2, 0, sizeof( bms_data2 ) );
  2181. 400:user_src/soft_bms.c **** }
  2182. 401:user_src/soft_bms.c **** }
  2183. 402:user_src/soft_bms.c **** else
  2184. 403:user_src/soft_bms.c **** {
  2185. 404:user_src/soft_bms.c **** if ( Dev.Bms_Link.connect_status == COMP_NORMAL )
  2186. 405:user_src/soft_bms.c **** {
  2187. 406:user_src/soft_bms.c **** Dev.Bms_Link.connect_status = COMP_LOST;
  2188. 407:user_src/soft_bms.c **** //memset(&bms_data, 0, sizeof(bms_data));
  2189. 408:user_src/soft_bms.c **** //状�未置异常
  2190. 409:user_src/soft_bms.c **** bms_data.bms_ss = 0;
  2191. 410:user_src/soft_bms.c **** }
  2192. 411:user_src/soft_bms.c **** }
  2193. 412:user_src/soft_bms.c **** }
  2194. 1724 .loc 1 412 1
  2195. 1725 0c80 74E1 b .L39
  2196. 1726 .L52:
  2197. 1727 0c82 00BF .align 2
  2198. 1728 .L51:
  2199. 1729 0c84 00000000 .word Herewin_Link
  2200. 1730 0c88 00000000 .word Dev
  2201. 1731 0c8c 00000000 .word group_num
  2202. 1732 0c90 00000000 .word herewin_info
  2203. 1733 0c94 00000000 .word bms_data
  2204. 1734 0c98 56555555 .word 1431655766
  2205. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 39
  2206. 1735 0c9c 20000000 .word .LC4
  2207. 1736 0ca0 39000000 .word bms_data+57
  2208. 1737 0ca4 00000000 .word dev_bms1
  2209. 1738 .L27:
  2210. 326:user_src/soft_bms.c **** {
  2211. 1739 .loc 1 326 31
  2212. 1740 0ca8 B24B ldr r3, .L53
  2213. 1741 0caa 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  2214. 326:user_src/soft_bms.c **** {
  2215. 1742 .loc 1 326 12
  2216. 1743 0cac 012B cmp r3, #1
  2217. 1744 0cae 04D0 beq .L29
  2218. 326:user_src/soft_bms.c **** {
  2219. 1745 .loc 1 326 83 discriminator 1
  2220. 1746 0cb0 B14B ldr r3, .L53+4
  2221. 1747 0cb2 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  2222. 326:user_src/soft_bms.c **** {
  2223. 1748 .loc 1 326 62 discriminator 1
  2224. 1749 0cb4 012B cmp r3, #1
  2225. 1750 0cb6 40F04681 bne .L30
  2226. 1751 .L29:
  2227. 328:user_src/soft_bms.c ****
  2228. 1752 .loc 1 328 37
  2229. 1753 0cba B04B ldr r3, .L53+8
  2230. 1754 0cbc 0122 movs r2, #1
  2231. 1755 0cbe 83F8E021 strb r2, [r3, #480]
  2232. 331:user_src/soft_bms.c **** {
  2233. 1756 .loc 1 331 32
  2234. 1757 0cc2 AC4B ldr r3, .L53
  2235. 1758 0cc4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  2236. 331:user_src/soft_bms.c **** {
  2237. 1759 .loc 1 331 12
  2238. 1760 0cc6 012B cmp r3, #1
  2239. 1761 0cc8 40F09680 bne .L31
  2240. 333:user_src/soft_bms.c **** bms_data.bms_cycle = Device1.vk_bms5.circulation_time;
  2241. 1762 .loc 1 333 23
  2242. 1763 0ccc AC4B ldr r3, .L53+12
  2243. 1764 0cce 0122 movs r2, #1
  2244. 1765 0cd0 1A70 strb r2, [r3]
  2245. 334:user_src/soft_bms.c **** bms_data.bms_volt = Device1.vk_bms2.voltage;
  2246. 1766 .loc 1 334 49
  2247. 1767 0cd2 A84B ldr r3, .L53
  2248. 1768 0cd4 B3F83621 ldrh r2, [r3, #310]
  2249. 334:user_src/soft_bms.c **** bms_data.bms_volt = Device1.vk_bms2.voltage;
  2250. 1769 .loc 1 334 32
  2251. 1770 0cd8 AA4B ldr r3, .L53+16
  2252. 1771 0cda A3F85920 strh r2, [r3, #89] @ unaligned
  2253. 335:user_src/soft_bms.c **** bms_data.bms_temp = Device1.vk_bms2.tempture;
  2254. 1772 .loc 1 335 48
  2255. 1773 0cde A54B ldr r3, .L53
  2256. 1774 0ce0 B3F89620 ldrh r2, [r3, #150]
  2257. 335:user_src/soft_bms.c **** bms_data.bms_temp = Device1.vk_bms2.tempture;
  2258. 1775 .loc 1 335 31
  2259. 1776 0ce4 A74B ldr r3, .L53+16
  2260. 1777 0ce6 A3F85B20 strh r2, [r3, #91] @ unaligned
  2261. 336:user_src/soft_bms.c **** bms_data.bms_vs = Device1.vk_bms2.persent / 10;
  2262. 1778 .loc 1 336 48
  2263. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 40
  2264. 1779 0cea A24B ldr r3, .L53
  2265. 1780 0cec B3F99C20 ldrsh r2, [r3, #156]
  2266. 336:user_src/soft_bms.c **** bms_data.bms_vs = Device1.vk_bms2.persent / 10;
  2267. 1781 .loc 1 336 31
  2268. 1782 0cf0 A44B ldr r3, .L53+16
  2269. 1783 0cf2 A3F85F20 strh r2, [r3, #95] @ unaligned
  2270. 337:user_src/soft_bms.c **** bms_data.bms_ss = Device1.vk_bms2.warn_flag;
  2271. 1784 .loc 1 337 46
  2272. 1785 0cf6 9F4B ldr r3, .L53
  2273. 1786 0cf8 B3F8A030 ldrh r3, [r3, #160]
  2274. 337:user_src/soft_bms.c **** bms_data.bms_ss = Device1.vk_bms2.warn_flag;
  2275. 1787 .loc 1 337 29
  2276. 1788 0cfc A24A ldr r2, .L53+20
  2277. 1789 0cfe A2FB0323 umull r2, r3, r2, r3
  2278. 1790 0d02 DB08 lsrs r3, r3, #3
  2279. 1791 0d04 9BB2 uxth r3, r3
  2280. 1792 0d06 DAB2 uxtb r2, r3
  2281. 1793 0d08 9E4B ldr r3, .L53+16
  2282. 1794 0d0a 83F86120 strb r2, [r3, #97]
  2283. 338:user_src/soft_bms.c **** bms_data.bms_num = Device1.vk_bms2.bms_num;
  2284. 1795 .loc 1 338 46
  2285. 1796 0d0e 994B ldr r3, .L53
  2286. 1797 0d10 D3F8A230 ldr r3, [r3, #162] @ unaligned
  2287. 338:user_src/soft_bms.c **** bms_data.bms_num = Device1.vk_bms2.bms_num;
  2288. 1798 .loc 1 338 29
  2289. 1799 0d14 9AB2 uxth r2, r3
  2290. 1800 0d16 9B4B ldr r3, .L53+16
  2291. 1801 0d18 A3F86220 strh r2, [r3, #98] @ movhi
  2292. 339:user_src/soft_bms.c **** memcpy(&bms_data.bms_v1,&Device1.vk_bms2.bms_v1,26 * 2);
  2293. 1802 .loc 1 339 47
  2294. 1803 0d1c 954B ldr r3, .L53
  2295. 1804 0d1e B3F8A630 ldrh r3, [r3, #166]
  2296. 339:user_src/soft_bms.c **** memcpy(&bms_data.bms_v1,&Device1.vk_bms2.bms_v1,26 * 2);
  2297. 1805 .loc 1 339 30
  2298. 1806 0d22 DAB2 uxtb r2, r3
  2299. 1807 0d24 974B ldr r3, .L53+16
  2300. 1808 0d26 1A71 strb r2, [r3, #4]
  2301. 340:user_src/soft_bms.c ****
  2302. 1809 .loc 1 340 13
  2303. 1810 0d28 3422 movs r2, #52
  2304. 1811 0d2a 9849 ldr r1, .L53+24
  2305. 1812 0d2c 9848 ldr r0, .L53+28
  2306. 1813 0d2e FFF7FEFF bl memcpy
  2307. 342:user_src/soft_bms.c **** // bms_data.bms_ids[0] = Device1.vk_bms3.bms_id[0];
  2308. 1814 .loc 1 342 13
  2309. 1815 0d32 1422 movs r2, #20
  2310. 1816 0d34 9749 ldr r1, .L53+32
  2311. 1817 0d36 9848 ldr r0, .L53+36
  2312. 1818 0d38 FFF7FEFF bl memcpy
  2313. 349:user_src/soft_bms.c **** bms_data.serial_num = FAC_VK_BMS;
  2314. 1819 .loc 1 349 54
  2315. 1820 0d3c 8D4B ldr r3, .L53
  2316. 1821 0d3e D3F89830 ldr r3, [r3, #152]
  2317. 349:user_src/soft_bms.c **** bms_data.serial_num = FAC_VK_BMS;
  2318. 1822 .loc 1 349 63
  2319. 1823 0d42 964A ldr r2, .L53+40
  2320. 1824 0d44 82FB0312 smull r1, r2, r2, r3
  2321. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 41
  2322. 1825 0d48 9210 asrs r2, r2, #2
  2323. 1826 0d4a DB17 asrs r3, r3, #31
  2324. 1827 0d4c D31A subs r3, r2, r3
  2325. 349:user_src/soft_bms.c **** bms_data.serial_num = FAC_VK_BMS;
  2326. 1828 .loc 1 349 31
  2327. 1829 0d4e 1AB2 sxth r2, r3
  2328. 349:user_src/soft_bms.c **** bms_data.serial_num = FAC_VK_BMS;
  2329. 1830 .loc 1 349 29
  2330. 1831 0d50 8C4B ldr r3, .L53+16
  2331. 1832 0d52 A3F85D20 strh r2, [r3, #93] @ unaligned
  2332. 350:user_src/soft_bms.c **** // if( Device1.vk_bms3.bms_type_info[0] == 'S' && Device1.vk_bms3.bms_type_info[0] == '
  2333. 1833 .loc 1 350 33
  2334. 1834 0d56 8B4B ldr r3, .L53+16
  2335. 1835 0d58 0A22 movs r2, #10
  2336. 1836 0d5a A3F86420 strh r2, [r3, #100] @ movhi
  2337. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2338. 1837 .loc 1 358 16
  2339. 1838 0d5e 2021 movs r1, #32
  2340. 1839 0d60 8D48 ldr r0, .L53+36
  2341. 1840 0d62 FFF7FEFF bl StrArrayNull
  2342. 1841 0d66 0346 mov r3, r0
  2343. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2344. 1842 .loc 1 358 81
  2345. 1843 0d68 83F00103 eor r3, r3, #1
  2346. 1844 0d6c DBB2 uxtb r3, r3
  2347. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2348. 1845 .loc 1 358 15
  2349. 1846 0d6e 002B cmp r3, #0
  2350. 1847 0d70 1BD0 beq .L32
  2351. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2352. 1848 .loc 1 358 108 discriminator 1
  2353. 1849 0d72 8B4B ldr r3, .L53+44
  2354. 1850 0d74 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  2355. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2356. 1851 .loc 1 358 112 discriminator 1
  2357. 1852 0d78 83F00103 eor r3, r3, #1
  2358. 1853 0d7c DBB2 uxtb r3, r3
  2359. 358:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,(char *)bms_data.bms_ids,32,NULL,0,NULL
  2360. 1854 .loc 1 358 90 discriminator 1
  2361. 1855 0d7e 002B cmp r3, #0
  2362. 1856 0d80 13D0 beq .L32
  2363. 359:user_src/soft_bms.c **** if(StrArrayNull( (uint8_t *)&Device1.vk_bms3.bms_company_info[0], sizeof( Device1.vk_bm
  2364. 1857 .loc 1 359 17
  2365. 1858 0d82 0023 movs r3, #0
  2366. 1859 0d84 0693 str r3, [sp, #24]
  2367. 1860 0d86 0023 movs r3, #0
  2368. 1861 0d88 0593 str r3, [sp, #20]
  2369. 1862 0d8a 0023 movs r3, #0
  2370. 1863 0d8c 0493 str r3, [sp, #16]
  2371. 1864 0d8e 0023 movs r3, #0
  2372. 1865 0d90 0393 str r3, [sp, #12]
  2373. 1866 0d92 0023 movs r3, #0
  2374. 1867 0d94 0293 str r3, [sp, #8]
  2375. 1868 0d96 0023 movs r3, #0
  2376. 1869 0d98 0193 str r3, [sp, #4]
  2377. 1870 0d9a 2023 movs r3, #32
  2378. 1871 0d9c 0093 str r3, [sp]
  2379. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 42
  2380. 1872 0d9e 7E4B ldr r3, .L53+36
  2381. 1873 0da0 0022 movs r2, #0
  2382. 1874 0da2 0E21 movs r1, #14
  2383. 1875 0da4 7E48 ldr r0, .L53+44
  2384. 1876 0da6 FFF7FEFF bl regist_dev_info
  2385. 1877 .L32:
  2386. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2387. 1878 .loc 1 360 16
  2388. 1879 0daa 1421 movs r1, #20
  2389. 1880 0dac 7D48 ldr r0, .L53+48
  2390. 1881 0dae FFF7FEFF bl StrArrayNull
  2391. 1882 0db2 0346 mov r3, r0
  2392. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2393. 1883 .loc 1 360 124
  2394. 1884 0db4 83F00103 eor r3, r3, #1
  2395. 1885 0db8 DBB2 uxtb r3, r3
  2396. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2397. 1886 .loc 1 360 15
  2398. 1887 0dba 002B cmp r3, #0
  2399. 1888 0dbc 22D0 beq .L33
  2400. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2401. 1889 .loc 1 360 151 discriminator 1
  2402. 1890 0dbe 784B ldr r3, .L53+44
  2403. 1891 0dc0 93F85730 ldrb r3, [r3, #87] @ zero_extendqisi2
  2404. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2405. 1892 .loc 1 360 157 discriminator 1
  2406. 1893 0dc4 83F00103 eor r3, r3, #1
  2407. 1894 0dc8 DBB2 uxtb r3, r3
  2408. 360:user_src/soft_bms.c **** regist_dev_info(&dev_bms1,DEVICE_BMS1,false,NULL,0,NULL,0,NULL,0,&Device1.vk_bms3.b
  2409. 1895 .loc 1 360 133 discriminator 1
  2410. 1896 0dca 002B cmp r3, #0
  2411. 1897 0dcc 1AD0 beq .L33
  2412. 361:user_src/soft_bms.c ****
  2413. 1898 .loc 1 361 17
  2414. 1899 0dce 1023 movs r3, #16
  2415. 1900 0dd0 0693 str r3, [sp, #24]
  2416. 1901 0dd2 744B ldr r3, .L53+48
  2417. 1902 0dd4 0593 str r3, [sp, #20]
  2418. 1903 0dd6 0023 movs r3, #0
  2419. 1904 0dd8 0493 str r3, [sp, #16]
  2420. 1905 0dda 0023 movs r3, #0
  2421. 1906 0ddc 0393 str r3, [sp, #12]
  2422. 1907 0dde 0023 movs r3, #0
  2423. 1908 0de0 0293 str r3, [sp, #8]
  2424. 1909 0de2 0023 movs r3, #0
  2425. 1910 0de4 0193 str r3, [sp, #4]
  2426. 1911 0de6 0023 movs r3, #0
  2427. 1912 0de8 0093 str r3, [sp]
  2428. 1913 0dea 0023 movs r3, #0
  2429. 1914 0dec 0022 movs r2, #0
  2430. 1915 0dee 0E21 movs r1, #14
  2431. 1916 0df0 6B48 ldr r0, .L53+44
  2432. 1917 0df2 FFF7FEFF bl regist_dev_info
  2433. 1918 0df6 05E0 b .L33
  2434. 1919 .L31:
  2435. 366:user_src/soft_bms.c **** }
  2436. 1920 .loc 1 366 13
  2437. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 43
  2438. 1921 0df8 40F24D12 movw r2, #333
  2439. 1922 0dfc 0021 movs r1, #0
  2440. 1923 0dfe 5D48 ldr r0, .L53
  2441. 1924 0e00 FFF7FEFF bl memset
  2442. 1925 .L33:
  2443. 370:user_src/soft_bms.c **** {
  2444. 1926 .loc 1 370 32
  2445. 1927 0e04 5C4B ldr r3, .L53+4
  2446. 1928 0e06 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  2447. 370:user_src/soft_bms.c **** {
  2448. 1929 .loc 1 370 12
  2449. 1930 0e08 012B cmp r3, #1
  2450. 1931 0e0a 40F09680 bne .L34
  2451. 372:user_src/soft_bms.c **** bms_data2.bms_cycle = Device2.vk_bms5.circulation_time;
  2452. 1932 .loc 1 372 23
  2453. 1933 0e0e 5C4B ldr r3, .L53+12
  2454. 1934 0e10 0222 movs r2, #2
  2455. 1935 0e12 1A70 strb r2, [r3]
  2456. 373:user_src/soft_bms.c **** bms_data2.bms_volt = Device2.vk_bms2.voltage;
  2457. 1936 .loc 1 373 50
  2458. 1937 0e14 584B ldr r3, .L53+4
  2459. 1938 0e16 B3F83621 ldrh r2, [r3, #310]
  2460. 373:user_src/soft_bms.c **** bms_data2.bms_volt = Device2.vk_bms2.voltage;
  2461. 1939 .loc 1 373 33
  2462. 1940 0e1a 634B ldr r3, .L53+52
  2463. 1941 0e1c A3F85920 strh r2, [r3, #89] @ unaligned
  2464. 374:user_src/soft_bms.c **** bms_data2.bms_temp = Device2.vk_bms2.tempture;
  2465. 1942 .loc 1 374 49
  2466. 1943 0e20 554B ldr r3, .L53+4
  2467. 1944 0e22 B3F89620 ldrh r2, [r3, #150]
  2468. 374:user_src/soft_bms.c **** bms_data2.bms_temp = Device2.vk_bms2.tempture;
  2469. 1945 .loc 1 374 32
  2470. 1946 0e26 604B ldr r3, .L53+52
  2471. 1947 0e28 A3F85B20 strh r2, [r3, #91] @ unaligned
  2472. 375:user_src/soft_bms.c **** bms_data2.bms_vs = Device2.vk_bms2.persent / 10;
  2473. 1948 .loc 1 375 49
  2474. 1949 0e2c 524B ldr r3, .L53+4
  2475. 1950 0e2e B3F99C20 ldrsh r2, [r3, #156]
  2476. 375:user_src/soft_bms.c **** bms_data2.bms_vs = Device2.vk_bms2.persent / 10;
  2477. 1951 .loc 1 375 32
  2478. 1952 0e32 5D4B ldr r3, .L53+52
  2479. 1953 0e34 A3F85F20 strh r2, [r3, #95] @ unaligned
  2480. 376:user_src/soft_bms.c **** bms_data2.bms_ss = Device2.vk_bms2.warn_flag;
  2481. 1954 .loc 1 376 47
  2482. 1955 0e38 4F4B ldr r3, .L53+4
  2483. 1956 0e3a B3F8A030 ldrh r3, [r3, #160]
  2484. 376:user_src/soft_bms.c **** bms_data2.bms_ss = Device2.vk_bms2.warn_flag;
  2485. 1957 .loc 1 376 30
  2486. 1958 0e3e 524A ldr r2, .L53+20
  2487. 1959 0e40 A2FB0323 umull r2, r3, r2, r3
  2488. 1960 0e44 DB08 lsrs r3, r3, #3
  2489. 1961 0e46 9BB2 uxth r3, r3
  2490. 1962 0e48 DAB2 uxtb r2, r3
  2491. 1963 0e4a 574B ldr r3, .L53+52
  2492. 1964 0e4c 83F86120 strb r2, [r3, #97]
  2493. 377:user_src/soft_bms.c **** bms_data2.bms_num = Device2.vk_bms2.bms_num;
  2494. 1965 .loc 1 377 47
  2495. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 44
  2496. 1966 0e50 494B ldr r3, .L53+4
  2497. 1967 0e52 D3F8A230 ldr r3, [r3, #162] @ unaligned
  2498. 377:user_src/soft_bms.c **** bms_data2.bms_num = Device2.vk_bms2.bms_num;
  2499. 1968 .loc 1 377 30
  2500. 1969 0e56 9AB2 uxth r2, r3
  2501. 1970 0e58 534B ldr r3, .L53+52
  2502. 1971 0e5a A3F86220 strh r2, [r3, #98] @ movhi
  2503. 378:user_src/soft_bms.c ****
  2504. 1972 .loc 1 378 48
  2505. 1973 0e5e 464B ldr r3, .L53+4
  2506. 1974 0e60 B3F8A630 ldrh r3, [r3, #166]
  2507. 378:user_src/soft_bms.c ****
  2508. 1975 .loc 1 378 31
  2509. 1976 0e64 DAB2 uxtb r2, r3
  2510. 1977 0e66 504B ldr r3, .L53+52
  2511. 1978 0e68 1A71 strb r2, [r3, #4]
  2512. 380:user_src/soft_bms.c ****
  2513. 1979 .loc 1 380 13
  2514. 1980 0e6a 3422 movs r2, #52
  2515. 1981 0e6c 4F49 ldr r1, .L53+56
  2516. 1982 0e6e 5048 ldr r0, .L53+60
  2517. 1983 0e70 FFF7FEFF bl memcpy
  2518. 382:user_src/soft_bms.c ****
  2519. 1984 .loc 1 382 13
  2520. 1985 0e74 1422 movs r2, #20
  2521. 1986 0e76 4F49 ldr r1, .L53+64
  2522. 1987 0e78 4F48 ldr r0, .L53+68
  2523. 1988 0e7a FFF7FEFF bl memcpy
  2524. 384:user_src/soft_bms.c **** bms_data2.serial_num = FAC_VK_BMS;
  2525. 1989 .loc 1 384 55
  2526. 1990 0e7e 3E4B ldr r3, .L53+4
  2527. 1991 0e80 D3F89830 ldr r3, [r3, #152]
  2528. 384:user_src/soft_bms.c **** bms_data2.serial_num = FAC_VK_BMS;
  2529. 1992 .loc 1 384 64
  2530. 1993 0e84 454A ldr r2, .L53+40
  2531. 1994 0e86 82FB0312 smull r1, r2, r2, r3
  2532. 1995 0e8a 9210 asrs r2, r2, #2
  2533. 1996 0e8c DB17 asrs r3, r3, #31
  2534. 1997 0e8e D31A subs r3, r2, r3
  2535. 384:user_src/soft_bms.c **** bms_data2.serial_num = FAC_VK_BMS;
  2536. 1998 .loc 1 384 32
  2537. 1999 0e90 1AB2 sxth r2, r3
  2538. 384:user_src/soft_bms.c **** bms_data2.serial_num = FAC_VK_BMS;
  2539. 2000 .loc 1 384 30
  2540. 2001 0e92 454B ldr r3, .L53+52
  2541. 2002 0e94 A3F85D20 strh r2, [r3, #93] @ unaligned
  2542. 385:user_src/soft_bms.c **** // if( Device2.vk_bms3.bms_type_info[0] == 'S' && Device2.vk_bms3.bms_type_info[0] == '
  2543. 2003 .loc 1 385 34
  2544. 2004 0e98 434B ldr r3, .L53+52
  2545. 2005 0e9a 0A22 movs r2, #10
  2546. 2006 0e9c A3F86420 strh r2, [r3, #100] @ movhi
  2547. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2548. 2007 .loc 1 391 16
  2549. 2008 0ea0 2021 movs r1, #32
  2550. 2009 0ea2 4548 ldr r0, .L53+68
  2551. 2010 0ea4 FFF7FEFF bl StrArrayNull
  2552. 2011 0ea8 0346 mov r3, r0
  2553. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 45
  2554. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2555. 2012 .loc 1 391 83
  2556. 2013 0eaa 83F00103 eor r3, r3, #1
  2557. 2014 0eae DBB2 uxtb r3, r3
  2558. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2559. 2015 .loc 1 391 15
  2560. 2016 0eb0 002B cmp r3, #0
  2561. 2017 0eb2 1BD0 beq .L35
  2562. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2563. 2018 .loc 1 391 110 discriminator 1
  2564. 2019 0eb4 414B ldr r3, .L53+72
  2565. 2020 0eb6 93F85430 ldrb r3, [r3, #84] @ zero_extendqisi2
  2566. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2567. 2021 .loc 1 391 114 discriminator 1
  2568. 2022 0eba 83F00103 eor r3, r3, #1
  2569. 2023 0ebe DBB2 uxtb r3, r3
  2570. 391:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,(char *)bms_data2.bms_ids,32,NULL,0,NUL
  2571. 2024 .loc 1 391 92 discriminator 1
  2572. 2025 0ec0 002B cmp r3, #0
  2573. 2026 0ec2 13D0 beq .L35
  2574. 392:user_src/soft_bms.c **** if(StrArrayNull( (uint8_t *)&Device2.vk_bms3.bms_company_info[0], sizeof( Device2.vk_bm
  2575. 2027 .loc 1 392 17
  2576. 2028 0ec4 0023 movs r3, #0
  2577. 2029 0ec6 0693 str r3, [sp, #24]
  2578. 2030 0ec8 0023 movs r3, #0
  2579. 2031 0eca 0593 str r3, [sp, #20]
  2580. 2032 0ecc 0023 movs r3, #0
  2581. 2033 0ece 0493 str r3, [sp, #16]
  2582. 2034 0ed0 0023 movs r3, #0
  2583. 2035 0ed2 0393 str r3, [sp, #12]
  2584. 2036 0ed4 0023 movs r3, #0
  2585. 2037 0ed6 0293 str r3, [sp, #8]
  2586. 2038 0ed8 0023 movs r3, #0
  2587. 2039 0eda 0193 str r3, [sp, #4]
  2588. 2040 0edc 2023 movs r3, #32
  2589. 2041 0ede 0093 str r3, [sp]
  2590. 2042 0ee0 354B ldr r3, .L53+68
  2591. 2043 0ee2 0022 movs r2, #0
  2592. 2044 0ee4 0F21 movs r1, #15
  2593. 2045 0ee6 3548 ldr r0, .L53+72
  2594. 2046 0ee8 FFF7FEFF bl regist_dev_info
  2595. 2047 .L35:
  2596. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2597. 2048 .loc 1 393 16
  2598. 2049 0eec 1421 movs r1, #20
  2599. 2050 0eee 3448 ldr r0, .L53+76
  2600. 2051 0ef0 FFF7FEFF bl StrArrayNull
  2601. 2052 0ef4 0346 mov r3, r0
  2602. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2603. 2053 .loc 1 393 124
  2604. 2054 0ef6 83F00103 eor r3, r3, #1
  2605. 2055 0efa DBB2 uxtb r3, r3
  2606. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2607. 2056 .loc 1 393 15
  2608. 2057 0efc 002B cmp r3, #0
  2609. 2058 0efe 34D0 beq .L40
  2610. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2611. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 46
  2612. 2059 .loc 1 393 151 discriminator 1
  2613. 2060 0f00 2E4B ldr r3, .L53+72
  2614. 2061 0f02 93F85730 ldrb r3, [r3, #87] @ zero_extendqisi2
  2615. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2616. 2062 .loc 1 393 157 discriminator 1
  2617. 2063 0f06 83F00103 eor r3, r3, #1
  2618. 2064 0f0a DBB2 uxtb r3, r3
  2619. 393:user_src/soft_bms.c **** regist_dev_info(&dev_bms2,DEVICE_BMS2,false,NULL,0,NULL,0,NULL,0,&Device2.vk_bms3.b
  2620. 2065 .loc 1 393 133 discriminator 1
  2621. 2066 0f0c 002B cmp r3, #0
  2622. 2067 0f0e 2CD0 beq .L40
  2623. 394:user_src/soft_bms.c ****
  2624. 2068 .loc 1 394 17
  2625. 2069 0f10 1023 movs r3, #16
  2626. 2070 0f12 0693 str r3, [sp, #24]
  2627. 2071 0f14 2A4B ldr r3, .L53+76
  2628. 2072 0f16 0593 str r3, [sp, #20]
  2629. 2073 0f18 0023 movs r3, #0
  2630. 2074 0f1a 0493 str r3, [sp, #16]
  2631. 2075 0f1c 0023 movs r3, #0
  2632. 2076 0f1e 0393 str r3, [sp, #12]
  2633. 2077 0f20 0023 movs r3, #0
  2634. 2078 0f22 0293 str r3, [sp, #8]
  2635. 2079 0f24 0023 movs r3, #0
  2636. 2080 0f26 0193 str r3, [sp, #4]
  2637. 2081 0f28 0023 movs r3, #0
  2638. 2082 0f2a 0093 str r3, [sp]
  2639. 2083 0f2c 0023 movs r3, #0
  2640. 2084 0f2e 0022 movs r2, #0
  2641. 2085 0f30 0F21 movs r1, #15
  2642. 2086 0f32 2248 ldr r0, .L53+72
  2643. 2087 0f34 FFF7FEFF bl regist_dev_info
  2644. 370:user_src/soft_bms.c **** {
  2645. 2088 .loc 1 370 12
  2646. 2089 0f38 17E0 b .L40
  2647. 2090 .L34:
  2648. 399:user_src/soft_bms.c **** }
  2649. 2091 .loc 1 399 13
  2650. 2092 0f3a 6622 movs r2, #102
  2651. 2093 0f3c 0021 movs r1, #0
  2652. 2094 0f3e 1A48 ldr r0, .L53+52
  2653. 2095 0f40 FFF7FEFF bl memset
  2654. 370:user_src/soft_bms.c **** {
  2655. 2096 .loc 1 370 12
  2656. 2097 0f44 11E0 b .L40
  2657. 2098 .L30:
  2658. 404:user_src/soft_bms.c **** {
  2659. 2099 .loc 1 404 26
  2660. 2100 0f46 0D4B ldr r3, .L53+8
  2661. 2101 0f48 93F8E031 ldrb r3, [r3, #480] @ zero_extendqisi2
  2662. 404:user_src/soft_bms.c **** {
  2663. 2102 .loc 1 404 12
  2664. 2103 0f4c 012B cmp r3, #1
  2665. 2104 0f4e 0DD1 bne .L39
  2666. 406:user_src/soft_bms.c **** //memset(&bms_data, 0, sizeof(bms_data));
  2667. 2105 .loc 1 406 41
  2668. 2106 0f50 0A4B ldr r3, .L53+8
  2669. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 47
  2670. 2107 0f52 0222 movs r2, #2
  2671. 2108 0f54 83F8E021 strb r2, [r3, #480]
  2672. 409:user_src/soft_bms.c **** }
  2673. 2109 .loc 1 409 29
  2674. 2110 0f58 0A4B ldr r3, .L53+16
  2675. 2111 0f5a 0022 movs r2, #0
  2676. 2112 0f5c A3F86220 strh r2, [r3, #98] @ movhi
  2677. 2113 .loc 1 412 1
  2678. 2114 0f60 04E0 b .L39
  2679. 2115 .L37:
  2680. 119:user_src/soft_bms.c **** {
  2681. 2116 .loc 1 119 12
  2682. 2117 0f62 00BF nop
  2683. 2118 0f64 02E0 b .L39
  2684. 2119 .L38:
  2685. 221:user_src/soft_bms.c **** {
  2686. 2120 .loc 1 221 11
  2687. 2121 0f66 00BF nop
  2688. 2122 0f68 00E0 b .L39
  2689. 2123 .L40:
  2690. 370:user_src/soft_bms.c **** {
  2691. 2124 .loc 1 370 12
  2692. 2125 0f6a 00BF nop
  2693. 2126 .L39:
  2694. 2127 .loc 1 412 1
  2695. 2128 0f6c 00BF nop
  2696. 2129 0f6e 0837 adds r7, r7, #8
  2697. 2130 .LCFI3:
  2698. 2131 .cfi_def_cfa_offset 8
  2699. 2132 0f70 BD46 mov sp, r7
  2700. 2133 .LCFI4:
  2701. 2134 .cfi_def_cfa_register 13
  2702. 2135 @ sp needed
  2703. 2136 0f72 80BD pop {r7, pc}
  2704. 2137 .L54:
  2705. 2138 .align 2
  2706. 2139 .L53:
  2707. 2140 0f74 00000000 .word Device1
  2708. 2141 0f78 00000000 .word Device2
  2709. 2142 0f7c 00000000 .word Dev
  2710. 2143 0f80 00000000 .word group_num
  2711. 2144 0f84 00000000 .word bms_data
  2712. 2145 0f88 CDCCCCCC .word -858993459
  2713. 2146 0f8c A8000000 .word Device1+168
  2714. 2147 0f90 05000000 .word bms_data+5
  2715. 2148 0f94 04010000 .word Device1+260
  2716. 2149 0f98 39000000 .word bms_data+57
  2717. 2150 0f9c 67666666 .word 1717986919
  2718. 2151 0fa0 00000000 .word dev_bms1
  2719. 2152 0fa4 DC000000 .word Device1+220
  2720. 2153 0fa8 00000000 .word bms_data2
  2721. 2154 0fac A8000000 .word Device2+168
  2722. 2155 0fb0 05000000 .word bms_data2+5
  2723. 2156 0fb4 04010000 .word Device2+260
  2724. 2157 0fb8 39000000 .word bms_data2+57
  2725. 2158 0fbc 00000000 .word dev_bms2
  2726. 2159 0fc0 DC000000 .word Device2+220
  2727. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 48
  2728. 2160 .cfi_endproc
  2729. 2161 .LFE133:
  2730. 2163 .global utc_send_time
  2731. 2164 .section .data.utc_send_time,"aw"
  2732. 2167 utc_send_time:
  2733. 2168 0000 0A .byte 10
  2734. 2169 .section .text.send_msg_to_VKbms,"ax",%progbits
  2735. 2170 .align 1
  2736. 2171 .global send_msg_to_VKbms
  2737. 2172 .syntax unified
  2738. 2173 .thumb
  2739. 2174 .thumb_func
  2740. 2176 send_msg_to_VKbms:
  2741. 2177 .LFB134:
  2742. 413:user_src/soft_bms.c ****
  2743. 414:user_src/soft_bms.c ****
  2744. 415:user_src/soft_bms.c **** /**
  2745. 416:user_src/soft_bms.c **** * @file Send_VKbms_info
  2746. 417:user_src/soft_bms.c **** * @brief VK智能电池�议飞控端��
  2747. 418:user_src/soft_bms.c **** * @param none
  2748. 419:user_src/soft_bms.c **** * @details
  2749. 420:user_src/soft_bms.c **** * @author Zhang Sir
  2750. 421:user_src/soft_bms.c **** **/
  2751. 422:user_src/soft_bms.c **** uint8_t utc_send_time = 10;
  2752. 423:user_src/soft_bms.c **** void send_msg_to_VKbms(void)
  2753. 424:user_src/soft_bms.c **** {
  2754. 2178 .loc 1 424 1
  2755. 2179 .cfi_startproc
  2756. 2180 @ args = 0, pretend = 0, frame = 24
  2757. 2181 @ frame_needed = 1, uses_anonymous_args = 0
  2758. 2182 0000 80B5 push {r7, lr}
  2759. 2183 .LCFI5:
  2760. 2184 .cfi_def_cfa_offset 8
  2761. 2185 .cfi_offset 7, -8
  2762. 2186 .cfi_offset 14, -4
  2763. 2187 0002 86B0 sub sp, sp, #24
  2764. 2188 .LCFI6:
  2765. 2189 .cfi_def_cfa_offset 32
  2766. 2190 0004 00AF add r7, sp, #0
  2767. 2191 .LCFI7:
  2768. 2192 .cfi_def_cfa_register 7
  2769. 425:user_src/soft_bms.c **** static uint8_t change_dev = 1;
  2770. 426:user_src/soft_bms.c **** Vkbms_Device *ptr = NULL;
  2771. 2193 .loc 1 426 19
  2772. 2194 0006 0023 movs r3, #0
  2773. 2195 0008 7B61 str r3, [r7, #20]
  2774. 427:user_src/soft_bms.c ****
  2775. 428:user_src/soft_bms.c **** static uint32_t bms_heart_time = 0;;
  2776. 429:user_src/soft_bms.c **** unsigned int can_id = 0;
  2777. 2196 .loc 1 429 18
  2778. 2197 000a 0023 movs r3, #0
  2779. 2198 000c 3B61 str r3, [r7, #16]
  2780. 430:user_src/soft_bms.c **** uint8_t len = 0, msg_id = 0,i = 0;
  2781. 2199 .loc 1 430 13
  2782. 2200 000e 0023 movs r3, #0
  2783. 2201 0010 FB73 strb r3, [r7, #15]
  2784. 2202 .loc 1 430 22
  2785. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 49
  2786. 2203 0012 0023 movs r3, #0
  2787. 2204 0014 BB73 strb r3, [r7, #14]
  2788. 2205 .loc 1 430 33
  2789. 2206 0016 0023 movs r3, #0
  2790. 2207 0018 7B73 strb r3, [r7, #13]
  2791. 431:user_src/soft_bms.c **** uint8_t bms_can_buf[8] = {0};
  2792. 2208 .loc 1 431 13
  2793. 2209 001a 0023 movs r3, #0
  2794. 2210 001c 7B60 str r3, [r7, #4]
  2795. 2211 001e 0023 movs r3, #0
  2796. 2212 0020 BB60 str r3, [r7, #8]
  2797. 432:user_src/soft_bms.c **** uint16_t crc = 0;
  2798. 2213 .loc 1 432 14
  2799. 2214 0022 0023 movs r3, #0
  2800. 2215 0024 7B80 strh r3, [r7, #2] @ movhi
  2801. 433:user_src/soft_bms.c ****
  2802. 434:user_src/soft_bms.c **** if(change_dev == 1)
  2803. 2216 .loc 1 434 19
  2804. 2217 0026 A74B ldr r3, .L69
  2805. 2218 0028 1B78 ldrb r3, [r3] @ zero_extendqisi2
  2806. 2219 .loc 1 434 7
  2807. 2220 002a 012B cmp r3, #1
  2808. 2221 002c 05D1 bne .L56
  2809. 435:user_src/soft_bms.c **** {
  2810. 436:user_src/soft_bms.c **** change_dev = 2;
  2811. 2222 .loc 1 436 20
  2812. 2223 002e A54B ldr r3, .L69
  2813. 2224 0030 0222 movs r2, #2
  2814. 2225 0032 1A70 strb r2, [r3]
  2815. 437:user_src/soft_bms.c **** ptr = &Device1;
  2816. 2226 .loc 1 437 13
  2817. 2227 0034 A44B ldr r3, .L69+4
  2818. 2228 0036 7B61 str r3, [r7, #20]
  2819. 2229 0038 08E0 b .L57
  2820. 2230 .L56:
  2821. 438:user_src/soft_bms.c **** }
  2822. 439:user_src/soft_bms.c **** else if(change_dev == 2)
  2823. 2231 .loc 1 439 24
  2824. 2232 003a A24B ldr r3, .L69
  2825. 2233 003c 1B78 ldrb r3, [r3] @ zero_extendqisi2
  2826. 2234 .loc 1 439 12
  2827. 2235 003e 022B cmp r3, #2
  2828. 2236 0040 04D1 bne .L57
  2829. 440:user_src/soft_bms.c **** {
  2830. 441:user_src/soft_bms.c **** change_dev = 1;
  2831. 2237 .loc 1 441 20
  2832. 2238 0042 A04B ldr r3, .L69
  2833. 2239 0044 0122 movs r2, #1
  2834. 2240 0046 1A70 strb r2, [r3]
  2835. 442:user_src/soft_bms.c **** ptr = &Device2;
  2836. 2241 .loc 1 442 13
  2837. 2242 0048 A04B ldr r3, .L69+8
  2838. 2243 004a 7B61 str r3, [r7, #20]
  2839. 2244 .L57:
  2840. 443:user_src/soft_bms.c **** }
  2841. 444:user_src/soft_bms.c ****
  2842. 445:user_src/soft_bms.c **** if(ptr->Vkbms_Link.connect_status != COMP_NORMAL)
  2843. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 50
  2844. 2245 .loc 1 445 23
  2845. 2246 004c 7B69 ldr r3, [r7, #20]
  2846. 2247 004e 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  2847. 2248 .loc 1 445 7
  2848. 2249 0050 012B cmp r3, #1
  2849. 2250 0052 40F03281 bne .L68
  2850. 446:user_src/soft_bms.c **** return;
  2851. 447:user_src/soft_bms.c ****
  2852. 448:user_src/soft_bms.c **** //�手应答
  2853. 449:user_src/soft_bms.c **** if(ptr->ack_to_bms == true)
  2854. 2251 .loc 1 449 11
  2855. 2252 0056 7B69 ldr r3, [r7, #20]
  2856. 2253 0058 1B7C ldrb r3, [r3, #16] @ zero_extendqisi2
  2857. 2254 .loc 1 449 7
  2858. 2255 005a 002B cmp r3, #0
  2859. 2256 005c 1BD0 beq .L60
  2860. 450:user_src/soft_bms.c **** {
  2861. 451:user_src/soft_bms.c **** msg_id = 0x01;
  2862. 2257 .loc 1 451 16
  2863. 2258 005e 0123 movs r3, #1
  2864. 2259 0060 BB73 strb r3, [r7, #14]
  2865. 452:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  2866. 2260 .loc 1 452 25
  2867. 2261 0062 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  2868. 2262 0064 1B05 lsls r3, r3, #20
  2869. 2263 .loc 1 452 31
  2870. 2264 0066 43F46022 orr r2, r3, #917504
  2871. 2265 .loc 1 452 48
  2872. 2266 006a 7B69 ldr r3, [r7, #20]
  2873. 2267 006c 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  2874. 2268 .loc 1 452 60
  2875. 2269 006e DB02 lsls r3, r3, #11
  2876. 2270 .loc 1 452 43
  2877. 2271 0070 1343 orrs r3, r3, r2
  2878. 2272 .loc 1 452 99
  2879. 2273 0072 43F03903 orr r3, r3, #57
  2880. 2274 .loc 1 452 16
  2881. 2275 0076 3B61 str r3, [r7, #16]
  2882. 453:user_src/soft_bms.c **** len = 2;
  2883. 2276 .loc 1 453 13
  2884. 2277 0078 0223 movs r3, #2
  2885. 2278 007a FB73 strb r3, [r7, #15]
  2886. 454:user_src/soft_bms.c **** bms_can_buf[0] = 0x56;
  2887. 2279 .loc 1 454 24
  2888. 2280 007c 5623 movs r3, #86
  2889. 2281 007e 3B71 strb r3, [r7, #4]
  2890. 455:user_src/soft_bms.c **** bms_can_buf[1] = 0x31;
  2891. 2282 .loc 1 455 24
  2892. 2283 0080 3123 movs r3, #49
  2893. 2284 0082 7B71 strb r3, [r7, #5]
  2894. 456:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], len, can_id);
  2895. 2285 .loc 1 456 9
  2896. 2286 0084 F97B ldrb r1, [r7, #15] @ zero_extendqisi2
  2897. 2287 0086 3B1D adds r3, r7, #4
  2898. 2288 0088 3A69 ldr r2, [r7, #16]
  2899. 2289 008a 1846 mov r0, r3
  2900. 2290 008c FFF7FEFF bl can_send_msg_normal
  2901. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 51
  2902. 457:user_src/soft_bms.c ****
  2903. 458:user_src/soft_bms.c **** ptr->ack_to_bms = false;
  2904. 2291 .loc 1 458 25
  2905. 2292 0090 7B69 ldr r3, [r7, #20]
  2906. 2293 0092 0022 movs r2, #0
  2907. 2294 0094 1A74 strb r2, [r3, #16]
  2908. 2295 .L60:
  2909. 459:user_src/soft_bms.c **** }
  2910. 460:user_src/soft_bms.c ****
  2911. 461:user_src/soft_bms.c **** if(ptr->get_bms3_ack == false)
  2912. 2296 .loc 1 461 11
  2913. 2297 0096 7B69 ldr r3, [r7, #20]
  2914. 2298 0098 93F84A31 ldrb r3, [r3, #330] @ zero_extendqisi2
  2915. 2299 .loc 1 461 26
  2916. 2300 009c 83F00103 eor r3, r3, #1
  2917. 2301 00a0 DBB2 uxtb r3, r3
  2918. 2302 .loc 1 461 7
  2919. 2303 00a2 002B cmp r3, #0
  2920. 2304 00a4 15D0 beq .L61
  2921. 462:user_src/soft_bms.c **** {
  2922. 463:user_src/soft_bms.c **** len = 0;
  2923. 2305 .loc 1 463 13
  2924. 2306 00a6 0023 movs r3, #0
  2925. 2307 00a8 FB73 strb r3, [r7, #15]
  2926. 464:user_src/soft_bms.c **** msg_id = 0x03;//canid 4083768 3E5039
  2927. 2308 .loc 1 464 16
  2928. 2309 00aa 0323 movs r3, #3
  2929. 2310 00ac BB73 strb r3, [r7, #14]
  2930. 465:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  2931. 2311 .loc 1 465 25
  2932. 2312 00ae BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  2933. 2313 00b0 1B05 lsls r3, r3, #20
  2934. 2314 .loc 1 465 31
  2935. 2315 00b2 43F46022 orr r2, r3, #917504
  2936. 2316 .loc 1 465 48
  2937. 2317 00b6 7B69 ldr r3, [r7, #20]
  2938. 2318 00b8 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  2939. 2319 .loc 1 465 60
  2940. 2320 00ba DB02 lsls r3, r3, #11
  2941. 2321 .loc 1 465 43
  2942. 2322 00bc 1343 orrs r3, r3, r2
  2943. 2323 .loc 1 465 99
  2944. 2324 00be 43F03903 orr r3, r3, #57
  2945. 2325 .loc 1 465 16
  2946. 2326 00c2 3B61 str r3, [r7, #16]
  2947. 466:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], len, can_id);
  2948. 2327 .loc 1 466 9
  2949. 2328 00c4 F97B ldrb r1, [r7, #15] @ zero_extendqisi2
  2950. 2329 00c6 3B1D adds r3, r7, #4
  2951. 2330 00c8 3A69 ldr r2, [r7, #16]
  2952. 2331 00ca 1846 mov r0, r3
  2953. 2332 00cc FFF7FEFF bl can_send_msg_normal
  2954. 2333 00d0 3AE0 b .L62
  2955. 2334 .L61:
  2956. 467:user_src/soft_bms.c **** }
  2957. 468:user_src/soft_bms.c **** else if(ptr->get_bms4_ack == false)
  2958. 2335 .loc 1 468 16
  2959. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 52
  2960. 2336 00d2 7B69 ldr r3, [r7, #20]
  2961. 2337 00d4 93F84B31 ldrb r3, [r3, #331] @ zero_extendqisi2
  2962. 2338 .loc 1 468 31
  2963. 2339 00d8 83F00103 eor r3, r3, #1
  2964. 2340 00dc DBB2 uxtb r3, r3
  2965. 2341 .loc 1 468 12
  2966. 2342 00de 002B cmp r3, #0
  2967. 2343 00e0 15D0 beq .L63
  2968. 469:user_src/soft_bms.c **** {
  2969. 470:user_src/soft_bms.c **** len = 0;
  2970. 2344 .loc 1 470 13
  2971. 2345 00e2 0023 movs r3, #0
  2972. 2346 00e4 FB73 strb r3, [r7, #15]
  2973. 471:user_src/soft_bms.c **** msg_id = 0x04; //canid 5132344 4E5039
  2974. 2347 .loc 1 471 16
  2975. 2348 00e6 0423 movs r3, #4
  2976. 2349 00e8 BB73 strb r3, [r7, #14]
  2977. 472:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  2978. 2350 .loc 1 472 25
  2979. 2351 00ea BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  2980. 2352 00ec 1B05 lsls r3, r3, #20
  2981. 2353 .loc 1 472 31
  2982. 2354 00ee 43F46022 orr r2, r3, #917504
  2983. 2355 .loc 1 472 48
  2984. 2356 00f2 7B69 ldr r3, [r7, #20]
  2985. 2357 00f4 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  2986. 2358 .loc 1 472 60
  2987. 2359 00f6 DB02 lsls r3, r3, #11
  2988. 2360 .loc 1 472 43
  2989. 2361 00f8 1343 orrs r3, r3, r2
  2990. 2362 .loc 1 472 99
  2991. 2363 00fa 43F03903 orr r3, r3, #57
  2992. 2364 .loc 1 472 16
  2993. 2365 00fe 3B61 str r3, [r7, #16]
  2994. 473:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], len, can_id);
  2995. 2366 .loc 1 473 9
  2996. 2367 0100 F97B ldrb r1, [r7, #15] @ zero_extendqisi2
  2997. 2368 0102 3B1D adds r3, r7, #4
  2998. 2369 0104 3A69 ldr r2, [r7, #16]
  2999. 2370 0106 1846 mov r0, r3
  3000. 2371 0108 FFF7FEFF bl can_send_msg_normal
  3001. 2372 010c 1CE0 b .L62
  3002. 2373 .L63:
  3003. 474:user_src/soft_bms.c **** }
  3004. 475:user_src/soft_bms.c **** else if(ptr->get_bms5_ack == false)
  3005. 2374 .loc 1 475 16
  3006. 2375 010e 7B69 ldr r3, [r7, #20]
  3007. 2376 0110 93F84C31 ldrb r3, [r3, #332] @ zero_extendqisi2
  3008. 2377 .loc 1 475 31
  3009. 2378 0114 83F00103 eor r3, r3, #1
  3010. 2379 0118 DBB2 uxtb r3, r3
  3011. 2380 .loc 1 475 12
  3012. 2381 011a 002B cmp r3, #0
  3013. 2382 011c 14D0 beq .L62
  3014. 476:user_src/soft_bms.c **** {
  3015. 477:user_src/soft_bms.c **** len = 0;
  3016. 2383 .loc 1 477 13
  3017. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 53
  3018. 2384 011e 0023 movs r3, #0
  3019. 2385 0120 FB73 strb r3, [r7, #15]
  3020. 478:user_src/soft_bms.c **** msg_id = 0x05;//canid 6180920 5E5039
  3021. 2386 .loc 1 478 16
  3022. 2387 0122 0523 movs r3, #5
  3023. 2388 0124 BB73 strb r3, [r7, #14]
  3024. 479:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  3025. 2389 .loc 1 479 25
  3026. 2390 0126 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3027. 2391 0128 1B05 lsls r3, r3, #20
  3028. 2392 .loc 1 479 31
  3029. 2393 012a 43F46022 orr r2, r3, #917504
  3030. 2394 .loc 1 479 48
  3031. 2395 012e 7B69 ldr r3, [r7, #20]
  3032. 2396 0130 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3033. 2397 .loc 1 479 60
  3034. 2398 0132 DB02 lsls r3, r3, #11
  3035. 2399 .loc 1 479 43
  3036. 2400 0134 1343 orrs r3, r3, r2
  3037. 2401 .loc 1 479 99
  3038. 2402 0136 43F03903 orr r3, r3, #57
  3039. 2403 .loc 1 479 16
  3040. 2404 013a 3B61 str r3, [r7, #16]
  3041. 480:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3042. 2405 .loc 1 480 9
  3043. 2406 013c F97B ldrb r1, [r7, #15] @ zero_extendqisi2
  3044. 2407 013e 3B1D adds r3, r7, #4
  3045. 2408 0140 3A69 ldr r2, [r7, #16]
  3046. 2409 0142 1846 mov r0, r3
  3047. 2410 0144 FFF7FEFF bl can_send_msg_normal
  3048. 2411 .L62:
  3049. 481:user_src/soft_bms.c **** }
  3050. 482:user_src/soft_bms.c ****
  3051. 483:user_src/soft_bms.c ****
  3052. 484:user_src/soft_bms.c **** if(start_msg.key_to_bms == true)
  3053. 2412 .loc 1 484 17
  3054. 2413 0148 614B ldr r3, .L69+12
  3055. 2414 014a 9B78 ldrb r3, [r3, #2] @ zero_extendqisi2
  3056. 2415 .loc 1 484 7
  3057. 2416 014c 002B cmp r3, #0
  3058. 2417 014e 53D0 beq .L64
  3059. 485:user_src/soft_bms.c **** {
  3060. 486:user_src/soft_bms.c **** msg_id = 0x07;
  3061. 2418 .loc 1 486 16
  3062. 2419 0150 0723 movs r3, #7
  3063. 2420 0152 BB73 strb r3, [r7, #14]
  3064. 487:user_src/soft_bms.c ****
  3065. 488:user_src/soft_bms.c **** crc = Get_Crc16(&start_msg.key_data[0],20);
  3066. 2421 .loc 1 488 15
  3067. 2422 0154 1421 movs r1, #20
  3068. 2423 0156 5F48 ldr r0, .L69+16
  3069. 2424 0158 FFF7FEFF bl Get_Crc16
  3070. 2425 015c 0346 mov r3, r0
  3071. 2426 .loc 1 488 13
  3072. 2427 015e 7B80 strh r3, [r7, #2] @ movhi
  3073. 2428 0160 7B88 ldrh r3, [r7, #2]
  3074. 489:user_src/soft_bms.c ****
  3075. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 54
  3076. 490:user_src/soft_bms.c **** memcpy(&bms_can_buf[0],&crc,2);
  3077. 2429 .loc 1 490 9
  3078. 2430 0162 BB80 strh r3, [r7, #4] @ movhi
  3079. 491:user_src/soft_bms.c **** memcpy(&bms_can_buf[2],&start_msg.key_data[i],6);
  3080. 2431 .loc 1 491 51
  3081. 2432 0164 7B7B ldrb r3, [r7, #13] @ zero_extendqisi2
  3082. 2433 .loc 1 491 32
  3083. 2434 0166 5A4A ldr r2, .L69+12
  3084. 2435 0168 1344 add r3, r3, r2
  3085. 2436 016a D91D adds r1, r3, #7
  3086. 2437 .loc 1 491 9
  3087. 2438 016c 3B1D adds r3, r7, #4
  3088. 2439 016e 0233 adds r3, r3, #2
  3089. 2440 0170 0622 movs r2, #6
  3090. 2441 0172 1846 mov r0, r3
  3091. 2442 0174 FFF7FEFF bl memcpy
  3092. 492:user_src/soft_bms.c ****
  3093. 493:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x0 << 3 |
  3094. 2443 .loc 1 493 25
  3095. 2444 0178 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3096. 2445 017a 1B05 lsls r3, r3, #20
  3097. 2446 .loc 1 493 31
  3098. 2447 017c 43F46022 orr r2, r3, #917504
  3099. 2448 .loc 1 493 48
  3100. 2449 0180 7B69 ldr r3, [r7, #20]
  3101. 2450 0182 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3102. 2451 .loc 1 493 60
  3103. 2452 0184 DB02 lsls r3, r3, #11
  3104. 2453 .loc 1 493 43
  3105. 2454 0186 1343 orrs r3, r3, r2
  3106. 2455 .loc 1 493 99
  3107. 2456 0188 43F03103 orr r3, r3, #49
  3108. 2457 .loc 1 493 16
  3109. 2458 018c 3B61 str r3, [r7, #16]
  3110. 494:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], 8, can_id);
  3111. 2459 .loc 1 494 9
  3112. 2460 018e 3B1D adds r3, r7, #4
  3113. 2461 0190 3A69 ldr r2, [r7, #16]
  3114. 2462 0192 0821 movs r1, #8
  3115. 2463 0194 1846 mov r0, r3
  3116. 2464 0196 FFF7FEFF bl can_send_msg_normal
  3117. 495:user_src/soft_bms.c **** i += 6;
  3118. 2465 .loc 1 495 11
  3119. 2466 019a 7B7B ldrb r3, [r7, #13]
  3120. 2467 019c 0633 adds r3, r3, #6
  3121. 2468 019e 7B73 strb r3, [r7, #13]
  3122. 496:user_src/soft_bms.c ****
  3123. 497:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x0 << 4 | 0x0 << 3 |
  3124. 2469 .loc 1 497 25
  3125. 2470 01a0 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3126. 2471 01a2 1B05 lsls r3, r3, #20
  3127. 2472 .loc 1 497 31
  3128. 2473 01a4 43F46022 orr r2, r3, #917504
  3129. 2474 .loc 1 497 48
  3130. 2475 01a8 7B69 ldr r3, [r7, #20]
  3131. 2476 01aa 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3132. 2477 .loc 1 497 60
  3133. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 55
  3134. 2478 01ac DB02 lsls r3, r3, #11
  3135. 2479 .loc 1 497 43
  3136. 2480 01ae 1343 orrs r3, r3, r2
  3137. 2481 .loc 1 497 99
  3138. 2482 01b0 43F02203 orr r3, r3, #34
  3139. 2483 .loc 1 497 16
  3140. 2484 01b4 3B61 str r3, [r7, #16]
  3141. 498:user_src/soft_bms.c **** can_send_msg_normal(&start_msg.key_data[i], 8, can_id);
  3142. 2485 .loc 1 498 48
  3143. 2486 01b6 7B7B ldrb r3, [r7, #13] @ zero_extendqisi2
  3144. 2487 .loc 1 498 9
  3145. 2488 01b8 454A ldr r2, .L69+12
  3146. 2489 01ba 1344 add r3, r3, r2
  3147. 2490 01bc 0733 adds r3, r3, #7
  3148. 2491 01be 3A69 ldr r2, [r7, #16]
  3149. 2492 01c0 0821 movs r1, #8
  3150. 2493 01c2 1846 mov r0, r3
  3151. 2494 01c4 FFF7FEFF bl can_send_msg_normal
  3152. 499:user_src/soft_bms.c **** i += 8;
  3153. 2495 .loc 1 499 11
  3154. 2496 01c8 7B7B ldrb r3, [r7, #13]
  3155. 2497 01ca 0833 adds r3, r3, #8
  3156. 2498 01cc 7B73 strb r3, [r7, #13]
  3157. 500:user_src/soft_bms.c ****
  3158. 501:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x0 << 4 | 0x1 << 3 |
  3159. 2499 .loc 1 501 25
  3160. 2500 01ce BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3161. 2501 01d0 1B05 lsls r3, r3, #20
  3162. 2502 .loc 1 501 31
  3163. 2503 01d2 43F46022 orr r2, r3, #917504
  3164. 2504 .loc 1 501 48
  3165. 2505 01d6 7B69 ldr r3, [r7, #20]
  3166. 2506 01d8 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3167. 2507 .loc 1 501 60
  3168. 2508 01da DB02 lsls r3, r3, #11
  3169. 2509 .loc 1 501 43
  3170. 2510 01dc 1343 orrs r3, r3, r2
  3171. 2511 .loc 1 501 99
  3172. 2512 01de 43F02B03 orr r3, r3, #43
  3173. 2513 .loc 1 501 16
  3174. 2514 01e2 3B61 str r3, [r7, #16]
  3175. 502:user_src/soft_bms.c **** can_send_msg_normal(&start_msg.key_data[i], 6, can_id);
  3176. 2515 .loc 1 502 48
  3177. 2516 01e4 7B7B ldrb r3, [r7, #13] @ zero_extendqisi2
  3178. 2517 .loc 1 502 9
  3179. 2518 01e6 3A4A ldr r2, .L69+12
  3180. 2519 01e8 1344 add r3, r3, r2
  3181. 2520 01ea 0733 adds r3, r3, #7
  3182. 2521 01ec 3A69 ldr r2, [r7, #16]
  3183. 2522 01ee 0621 movs r1, #6
  3184. 2523 01f0 1846 mov r0, r3
  3185. 2524 01f2 FFF7FEFF bl can_send_msg_normal
  3186. 2525 01f6 61E0 b .L55
  3187. 2526 .L64:
  3188. 503:user_src/soft_bms.c **** }
  3189. 504:user_src/soft_bms.c **** //开�mos
  3190. 505:user_src/soft_bms.c **** else if(start_msg.mos_status == true)
  3191. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 56
  3192. 2527 .loc 1 505 22
  3193. 2528 01f8 354B ldr r3, .L69+12
  3194. 2529 01fa DB78 ldrb r3, [r3, #3] @ zero_extendqisi2
  3195. 2530 .loc 1 505 12
  3196. 2531 01fc 012B cmp r3, #1
  3197. 2532 01fe 15D1 bne .L66
  3198. 506:user_src/soft_bms.c **** {
  3199. 507:user_src/soft_bms.c **** msg_id = 0x08;
  3200. 2533 .loc 1 507 16
  3201. 2534 0200 0823 movs r3, #8
  3202. 2535 0202 BB73 strb r3, [r7, #14]
  3203. 508:user_src/soft_bms.c ****
  3204. 509:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  3205. 2536 .loc 1 509 25
  3206. 2537 0204 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3207. 2538 0206 1B05 lsls r3, r3, #20
  3208. 2539 .loc 1 509 31
  3209. 2540 0208 43F46022 orr r2, r3, #917504
  3210. 2541 .loc 1 509 48
  3211. 2542 020c 7B69 ldr r3, [r7, #20]
  3212. 2543 020e 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3213. 2544 .loc 1 509 60
  3214. 2545 0210 DB02 lsls r3, r3, #11
  3215. 2546 .loc 1 509 43
  3216. 2547 0212 1343 orrs r3, r3, r2
  3217. 2548 .loc 1 509 99
  3218. 2549 0214 43F03903 orr r3, r3, #57
  3219. 2550 .loc 1 509 16
  3220. 2551 0218 3B61 str r3, [r7, #16]
  3221. 510:user_src/soft_bms.c **** bms_can_buf[0] = 0x01;
  3222. 2552 .loc 1 510 24
  3223. 2553 021a 0123 movs r3, #1
  3224. 2554 021c 3B71 strb r3, [r7, #4]
  3225. 511:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], 1, can_id);
  3226. 2555 .loc 1 511 9
  3227. 2556 021e 3B1D adds r3, r7, #4
  3228. 2557 0220 3A69 ldr r2, [r7, #16]
  3229. 2558 0222 0121 movs r1, #1
  3230. 2559 0224 1846 mov r0, r3
  3231. 2560 0226 FFF7FEFF bl can_send_msg_normal
  3232. 2561 022a 47E0 b .L55
  3233. 2562 .L66:
  3234. 512:user_src/soft_bms.c **** }
  3235. 513:user_src/soft_bms.c **** else if(utc_time != 0 && utc_send_time > 0 )
  3236. 2563 .loc 1 513 22
  3237. 2564 022c 2A4B ldr r3, .L69+20
  3238. 2565 022e 1B68 ldr r3, [r3]
  3239. 2566 .loc 1 513 12
  3240. 2567 0230 002B cmp r3, #0
  3241. 2568 0232 20D0 beq .L67
  3242. 2569 .loc 1 513 44 discriminator 1
  3243. 2570 0234 294B ldr r3, .L69+24
  3244. 2571 0236 1B78 ldrb r3, [r3] @ zero_extendqisi2
  3245. 2572 .loc 1 513 27 discriminator 1
  3246. 2573 0238 002B cmp r3, #0
  3247. 2574 023a 1CD0 beq .L67
  3248. 514:user_src/soft_bms.c **** {
  3249. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 57
  3250. 515:user_src/soft_bms.c **** msg_id = 0x09;
  3251. 2575 .loc 1 515 16
  3252. 2576 023c 0923 movs r3, #9
  3253. 2577 023e BB73 strb r3, [r7, #14]
  3254. 516:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  3255. 2578 .loc 1 516 25
  3256. 2579 0240 BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3257. 2580 0242 1B05 lsls r3, r3, #20
  3258. 2581 .loc 1 516 31
  3259. 2582 0244 43F46022 orr r2, r3, #917504
  3260. 2583 .loc 1 516 48
  3261. 2584 0248 7B69 ldr r3, [r7, #20]
  3262. 2585 024a 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3263. 2586 .loc 1 516 60
  3264. 2587 024c DB02 lsls r3, r3, #11
  3265. 2588 .loc 1 516 43
  3266. 2589 024e 1343 orrs r3, r3, r2
  3267. 2590 .loc 1 516 99
  3268. 2591 0250 43F03903 orr r3, r3, #57
  3269. 2592 .loc 1 516 16
  3270. 2593 0254 3B61 str r3, [r7, #16]
  3271. 2594 0256 204B ldr r3, .L69+20
  3272. 2595 0258 1B68 ldr r3, [r3]
  3273. 517:user_src/soft_bms.c **** memcpy(&bms_can_buf[0],&utc_time,4);
  3274. 2596 .loc 1 517 9
  3275. 2597 025a 7B60 str r3, [r7, #4]
  3276. 518:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3277. 2598 .loc 1 518 9
  3278. 2599 025c 3B1D adds r3, r7, #4
  3279. 2600 025e 3A69 ldr r2, [r7, #16]
  3280. 2601 0260 0421 movs r1, #4
  3281. 2602 0262 1846 mov r0, r3
  3282. 2603 0264 FFF7FEFF bl can_send_msg_normal
  3283. 519:user_src/soft_bms.c ****
  3284. 520:user_src/soft_bms.c **** utc_send_time--;
  3285. 2604 .loc 1 520 22
  3286. 2605 0268 1C4B ldr r3, .L69+24
  3287. 2606 026a 1B78 ldrb r3, [r3] @ zero_extendqisi2
  3288. 2607 026c 013B subs r3, r3, #1
  3289. 2608 026e DAB2 uxtb r2, r3
  3290. 2609 0270 1A4B ldr r3, .L69+24
  3291. 2610 0272 1A70 strb r2, [r3]
  3292. 2611 0274 22E0 b .L55
  3293. 2612 .L67:
  3294. 521:user_src/soft_bms.c **** }
  3295. 522:user_src/soft_bms.c **** else if(HAL_GetTick() - bms_heart_time > 500)//实时信�应答包
  3296. 2613 .loc 1 522 13
  3297. 2614 0276 FFF7FEFF bl HAL_GetTick
  3298. 2615 027a 0246 mov r2, r0
  3299. 2616 .loc 1 522 27
  3300. 2617 027c 184B ldr r3, .L69+28
  3301. 2618 027e 1B68 ldr r3, [r3]
  3302. 2619 0280 D31A subs r3, r2, r3
  3303. 2620 .loc 1 522 12
  3304. 2621 0282 B3F5FA7F cmp r3, #500
  3305. 2622 0286 19D9 bls .L55
  3306. 523:user_src/soft_bms.c **** {
  3307. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 58
  3308. 524:user_src/soft_bms.c **** msg_id = 0x02;
  3309. 2623 .loc 1 524 16
  3310. 2624 0288 0223 movs r3, #2
  3311. 2625 028a BB73 strb r3, [r7, #14]
  3312. 525:user_src/soft_bms.c **** can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 << 3 |
  3313. 2626 .loc 1 525 25
  3314. 2627 028c BB7B ldrb r3, [r7, #14] @ zero_extendqisi2
  3315. 2628 028e 1B05 lsls r3, r3, #20
  3316. 2629 .loc 1 525 31
  3317. 2630 0290 43F46022 orr r2, r3, #917504
  3318. 2631 .loc 1 525 48
  3319. 2632 0294 7B69 ldr r3, [r7, #20]
  3320. 2633 0296 5B7C ldrb r3, [r3, #17] @ zero_extendqisi2
  3321. 2634 .loc 1 525 60
  3322. 2635 0298 DB02 lsls r3, r3, #11
  3323. 2636 .loc 1 525 43
  3324. 2637 029a 1343 orrs r3, r3, r2
  3325. 2638 .loc 1 525 99
  3326. 2639 029c 43F03903 orr r3, r3, #57
  3327. 2640 .loc 1 525 16
  3328. 2641 02a0 3B61 str r3, [r7, #16]
  3329. 526:user_src/soft_bms.c **** can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3330. 2642 .loc 1 526 9
  3331. 2643 02a2 3B1D adds r3, r7, #4
  3332. 2644 02a4 3A69 ldr r2, [r7, #16]
  3333. 2645 02a6 0021 movs r1, #0
  3334. 2646 02a8 1846 mov r0, r3
  3335. 2647 02aa FFF7FEFF bl can_send_msg_normal
  3336. 527:user_src/soft_bms.c **** bms_heart_time = HAL_GetTick();
  3337. 2648 .loc 1 527 26
  3338. 2649 02ae FFF7FEFF bl HAL_GetTick
  3339. 2650 02b2 0346 mov r3, r0
  3340. 2651 .loc 1 527 24
  3341. 2652 02b4 0A4A ldr r2, .L69+28
  3342. 2653 02b6 1360 str r3, [r2]
  3343. 2654 02b8 00E0 b .L55
  3344. 2655 .L68:
  3345. 446:user_src/soft_bms.c ****
  3346. 2656 .loc 1 446 9
  3347. 2657 02ba 00BF nop
  3348. 2658 .L55:
  3349. 528:user_src/soft_bms.c **** }
  3350. 529:user_src/soft_bms.c ****
  3351. 530:user_src/soft_bms.c ****
  3352. 531:user_src/soft_bms.c **** // if(Device1.Vkbms_Link.connect_status == COMP_NORMAL || Device2.Vkbms_Link.connect_status ==
  3353. 532:user_src/soft_bms.c **** // {
  3354. 533:user_src/soft_bms.c **** // static uint8_t bsm_step_num = 6;
  3355. 534:user_src/soft_bms.c **** // static uint32_t bms_heart_time = 0;;
  3356. 535:user_src/soft_bms.c **** // unsigned int can_id = 0;
  3357. 536:user_src/soft_bms.c **** // uint8_t len = 0, msg_id = 0,i = 0;
  3358. 537:user_src/soft_bms.c **** // uint8_t bms_can_buf[8] = {0};
  3359. 538:user_src/soft_bms.c **** // uint16_t crc = 0;
  3360. 539:user_src/soft_bms.c ****
  3361. 540:user_src/soft_bms.c **** // //上电�手
  3362. 541:user_src/soft_bms.c **** // if(Device1.ack_to_bms == true || Device2.ack_to_bms == true)
  3363. 542:user_src/soft_bms.c **** // {
  3364. 543:user_src/soft_bms.c **** // msg_id = 0x01;
  3365. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 59
  3366. 544:user_src/soft_bms.c ****
  3367. 545:user_src/soft_bms.c **** // if(Device1.ack_to_bms == true)
  3368. 546:user_src/soft_bms.c **** // {
  3369. 547:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 <<
  3370. 548:user_src/soft_bms.c **** // Device1.ack_to_bms = false;
  3371. 549:user_src/soft_bms.c **** // }
  3372. 550:user_src/soft_bms.c **** // else if (Device2.ack_to_bms == true)
  3373. 551:user_src/soft_bms.c **** // {
  3374. 552:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3375. 553:user_src/soft_bms.c **** // Device2.ack_to_bms = false;
  3376. 554:user_src/soft_bms.c **** // }
  3377. 555:user_src/soft_bms.c **** // len = 2;
  3378. 556:user_src/soft_bms.c **** // bms_can_buf[0] = 0x56;
  3379. 557:user_src/soft_bms.c **** // bms_can_buf[1] = 0x31;
  3380. 558:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3381. 559:user_src/soft_bms.c **** // }
  3382. 560:user_src/soft_bms.c ****
  3383. 561:user_src/soft_bms.c **** // //读�电池信�
  3384. 562:user_src/soft_bms.c **** // if(bms_step <= 2)
  3385. 563:user_src/soft_bms.c **** // {
  3386. 564:user_src/soft_bms.c **** // //上电��的信�
  3387. 565:user_src/soft_bms.c **** // switch (bms_step)
  3388. 566:user_src/soft_bms.c **** // {
  3389. 567:user_src/soft_bms.c **** // case 0:
  3390. 568:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3391. 569:user_src/soft_bms.c **** // {
  3392. 570:user_src/soft_bms.c **** // len = 0;
  3393. 571:user_src/soft_bms.c **** // msg_id = 0x03;//canid 4083768 3E5039
  3394. 572:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3395. 573:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3396. 574:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3397. 575:user_src/soft_bms.c **** // {
  3398. 576:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3399. 577:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3400. 578:user_src/soft_bms.c **** // }
  3401. 579:user_src/soft_bms.c **** // bsm_step_num--;
  3402. 580:user_src/soft_bms.c **** // }
  3403. 581:user_src/soft_bms.c **** // else
  3404. 582:user_src/soft_bms.c **** // {
  3405. 583:user_src/soft_bms.c **** // bsm_step_num = 5;
  3406. 584:user_src/soft_bms.c **** // bms_step = 1;
  3407. 585:user_src/soft_bms.c **** // }
  3408. 586:user_src/soft_bms.c **** // break;
  3409. 587:user_src/soft_bms.c **** // case 1:
  3410. 588:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3411. 589:user_src/soft_bms.c **** // {
  3412. 590:user_src/soft_bms.c **** // len = 0;
  3413. 591:user_src/soft_bms.c **** // msg_id = 0x04; //canid 5132344 4E5039
  3414. 592:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3415. 593:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3416. 594:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3417. 595:user_src/soft_bms.c **** // {
  3418. 596:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3419. 597:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3420. 598:user_src/soft_bms.c **** // }
  3421. 599:user_src/soft_bms.c **** // bsm_step_num--;
  3422. 600:user_src/soft_bms.c **** // }
  3423. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 60
  3424. 601:user_src/soft_bms.c **** // else
  3425. 602:user_src/soft_bms.c **** // {
  3426. 603:user_src/soft_bms.c **** // bsm_step_num = 5;
  3427. 604:user_src/soft_bms.c **** // bms_step = 2;
  3428. 605:user_src/soft_bms.c **** // }
  3429. 606:user_src/soft_bms.c **** // break;
  3430. 607:user_src/soft_bms.c **** // case 2:
  3431. 608:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3432. 609:user_src/soft_bms.c **** // {
  3433. 610:user_src/soft_bms.c **** // len = 0;
  3434. 611:user_src/soft_bms.c **** // msg_id = 0x05;//canid 6180920 5E5039
  3435. 612:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3436. 613:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3437. 614:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3438. 615:user_src/soft_bms.c **** // {
  3439. 616:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3440. 617:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3441. 618:user_src/soft_bms.c **** // }
  3442. 619:user_src/soft_bms.c **** // bsm_step_num--;
  3443. 620:user_src/soft_bms.c **** // }
  3444. 621:user_src/soft_bms.c **** // else
  3445. 622:user_src/soft_bms.c **** // {
  3446. 623:user_src/soft_bms.c **** // bsm_step_num = 5;
  3447. 624:user_src/soft_bms.c **** // bms_step = 3;
  3448. 625:user_src/soft_bms.c **** // }
  3449. 626:user_src/soft_bms.c **** // break;
  3450. 627:user_src/soft_bms.c ****
  3451. 628:user_src/soft_bms.c **** // default:
  3452. 629:user_src/soft_bms.c **** // break;
  3453. 630:user_src/soft_bms.c **** // }
  3454. 631:user_src/soft_bms.c **** // }
  3455. 632:user_src/soft_bms.c **** // //秘钥匹�
  3456. 633:user_src/soft_bms.c **** // else if(start_msg.key_to_bms == true && bsm_step_num > 0 && bms_step == 3 ) //上个ifè¯
  3457. 634:user_src/soft_bms.c **** // {
  3458. 635:user_src/soft_bms.c **** // msg_id = 0x07;
  3459. 636:user_src/soft_bms.c ****
  3460. 637:user_src/soft_bms.c **** // crc = Get_Crc16(&start_msg.key_data[0],20);
  3461. 638:user_src/soft_bms.c ****
  3462. 639:user_src/soft_bms.c **** // memcpy(&bms_can_buf[0],&crc,2);
  3463. 640:user_src/soft_bms.c **** // memcpy(&bms_can_buf[2],&start_msg.key_data[i],6);
  3464. 641:user_src/soft_bms.c ****
  3465. 642:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3466. 643:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 8, can_id);
  3467. 644:user_src/soft_bms.c **** // i += 6;
  3468. 645:user_src/soft_bms.c ****
  3469. 646:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x0 << 4 |
  3470. 647:user_src/soft_bms.c **** // can_send_msg_normal(&start_msg.key_data[i], 8, can_id);
  3471. 648:user_src/soft_bms.c **** // i += 8;
  3472. 649:user_src/soft_bms.c ****
  3473. 650:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x0 << 4 |
  3474. 651:user_src/soft_bms.c **** // can_send_msg_normal(&start_msg.key_data[i], 6, can_id);
  3475. 652:user_src/soft_bms.c ****
  3476. 653:user_src/soft_bms.c **** // bsm_step_num--;
  3477. 654:user_src/soft_bms.c **** // if(bsm_step_num == 0)
  3478. 655:user_src/soft_bms.c **** // {
  3479. 656:user_src/soft_bms.c **** // bsm_step_num = 5;
  3480. 657:user_src/soft_bms.c **** // bms_step = 4;
  3481. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 61
  3482. 658:user_src/soft_bms.c **** // }
  3483. 659:user_src/soft_bms.c **** // }
  3484. 660:user_src/soft_bms.c **** // //开�mos
  3485. 661:user_src/soft_bms.c **** // else if(start_msg.mos_status == true && bsm_step_num > 0 && (bms_step == 4 || start_msg.
  3486. 662:user_src/soft_bms.c **** // {
  3487. 663:user_src/soft_bms.c **** // msg_id = 0x08;
  3488. 664:user_src/soft_bms.c ****
  3489. 665:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3490. 666:user_src/soft_bms.c **** // bms_can_buf[0] = 0x01;
  3491. 667:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 1, can_id);
  3492. 668:user_src/soft_bms.c **** // bsm_step_num--;
  3493. 669:user_src/soft_bms.c **** // }
  3494. 670:user_src/soft_bms.c **** // else if(utc_time != 0 && utc_send_time > 0 )
  3495. 671:user_src/soft_bms.c **** // {
  3496. 672:user_src/soft_bms.c **** // msg_id = 0x09;
  3497. 673:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3498. 674:user_src/soft_bms.c **** // memcpy(&bms_can_buf[0],&utc_time,4);
  3499. 675:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3500. 676:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3501. 677:user_src/soft_bms.c **** // {
  3502. 678:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3503. 679:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3504. 680:user_src/soft_bms.c **** // }
  3505. 681:user_src/soft_bms.c **** // utc_send_time--;
  3506. 682:user_src/soft_bms.c **** // }
  3507. 683:user_src/soft_bms.c **** // else if(HAL_GetTick() - bms_heart_time > 1000)//实时信�应答包
  3508. 684:user_src/soft_bms.c **** // {
  3509. 685:user_src/soft_bms.c **** // msg_id = 0x02;
  3510. 686:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3511. 687:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3512. 688:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3513. 689:user_src/soft_bms.c **** // {
  3514. 690:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3515. 691:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3516. 692:user_src/soft_bms.c **** // }
  3517. 693:user_src/soft_bms.c **** // bms_heart_time = HAL_GetTick();
  3518. 694:user_src/soft_bms.c **** // }
  3519. 695:user_src/soft_bms.c **** // }
  3520. 696:user_src/soft_bms.c **** //开�mos
  3521. 697:user_src/soft_bms.c **** // else if(start_msg.mos_status == true)
  3522. 698:user_src/soft_bms.c **** // {
  3523. 699:user_src/soft_bms.c **** // msg_id = 0x08;
  3524. 700:user_src/soft_bms.c ****
  3525. 701:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 <<
  3526. 702:user_src/soft_bms.c **** // bms_can_buf[0] = 0x01;
  3527. 703:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 1, can_id);
  3528. 704:user_src/soft_bms.c **** // }
  3529. 705:user_src/soft_bms.c **** // else if(utc_time != 0 && utc_send_time > 0 )
  3530. 706:user_src/soft_bms.c **** // {
  3531. 707:user_src/soft_bms.c **** // msg_id = 0x09;
  3532. 708:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 <<
  3533. 709:user_src/soft_bms.c **** // memcpy(&bms_can_buf[0],&utc_time,4);
  3534. 710:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3535. 711:user_src/soft_bms.c ****
  3536. 712:user_src/soft_bms.c **** // utc_send_time--;
  3537. 713:user_src/soft_bms.c **** // }
  3538. 714:user_src/soft_bms.c **** // else if(HAL_GetTick() - bms_heart_time > 500)//实时信�应答包
  3539. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 62
  3540. 715:user_src/soft_bms.c **** // {
  3541. 716:user_src/soft_bms.c **** // msg_id = 0x02;
  3542. 717:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | ptr->source_id << 11 | 0x1 << 5 | 0x1 << 4 | 0x1 <<
  3543. 718:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3544. 719:user_src/soft_bms.c **** // bms_heart_time = HAL_GetTick();
  3545. 720:user_src/soft_bms.c **** // }
  3546. 721:user_src/soft_bms.c ****
  3547. 722:user_src/soft_bms.c ****
  3548. 723:user_src/soft_bms.c **** // if(Device1.Vkbms_Link.connect_status == COMP_NORMAL || Device2.Vkbms_Link.connect_status ==
  3549. 724:user_src/soft_bms.c **** // {
  3550. 725:user_src/soft_bms.c **** // static uint8_t bsm_step_num = 6;
  3551. 726:user_src/soft_bms.c **** // static uint32_t bms_heart_time = 0;;
  3552. 727:user_src/soft_bms.c **** // unsigned int can_id = 0;
  3553. 728:user_src/soft_bms.c **** // uint8_t len = 0, msg_id = 0,i = 0;
  3554. 729:user_src/soft_bms.c **** // uint8_t bms_can_buf[8] = {0};
  3555. 730:user_src/soft_bms.c **** // uint16_t crc = 0;
  3556. 731:user_src/soft_bms.c ****
  3557. 732:user_src/soft_bms.c **** // //上电�手
  3558. 733:user_src/soft_bms.c **** // if(Device1.ack_to_bms == true || Device2.ack_to_bms == true)
  3559. 734:user_src/soft_bms.c **** // {
  3560. 735:user_src/soft_bms.c **** // msg_id = 0x01;
  3561. 736:user_src/soft_bms.c ****
  3562. 737:user_src/soft_bms.c **** // if(Device1.ack_to_bms == true)
  3563. 738:user_src/soft_bms.c **** // {
  3564. 739:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 <<
  3565. 740:user_src/soft_bms.c **** // Device1.ack_to_bms = false;
  3566. 741:user_src/soft_bms.c **** // }
  3567. 742:user_src/soft_bms.c **** // else if (Device2.ack_to_bms == true)
  3568. 743:user_src/soft_bms.c **** // {
  3569. 744:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3570. 745:user_src/soft_bms.c **** // Device2.ack_to_bms = false;
  3571. 746:user_src/soft_bms.c **** // }
  3572. 747:user_src/soft_bms.c **** // len = 2;
  3573. 748:user_src/soft_bms.c **** // bms_can_buf[0] = 0x56;
  3574. 749:user_src/soft_bms.c **** // bms_can_buf[1] = 0x31;
  3575. 750:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3576. 751:user_src/soft_bms.c **** // }
  3577. 752:user_src/soft_bms.c ****
  3578. 753:user_src/soft_bms.c **** // //读�电池信�
  3579. 754:user_src/soft_bms.c **** // if(bms_step <= 2)
  3580. 755:user_src/soft_bms.c **** // {
  3581. 756:user_src/soft_bms.c **** // //上电��的信�
  3582. 757:user_src/soft_bms.c **** // switch (bms_step)
  3583. 758:user_src/soft_bms.c **** // {
  3584. 759:user_src/soft_bms.c **** // case 0:
  3585. 760:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3586. 761:user_src/soft_bms.c **** // {
  3587. 762:user_src/soft_bms.c **** // len = 0;
  3588. 763:user_src/soft_bms.c **** // msg_id = 0x03;//canid 4083768 3E5039
  3589. 764:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3590. 765:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3591. 766:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3592. 767:user_src/soft_bms.c **** // {
  3593. 768:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3594. 769:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3595. 770:user_src/soft_bms.c **** // }
  3596. 771:user_src/soft_bms.c **** // bsm_step_num--;
  3597. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 63
  3598. 772:user_src/soft_bms.c **** // }
  3599. 773:user_src/soft_bms.c **** // else
  3600. 774:user_src/soft_bms.c **** // {
  3601. 775:user_src/soft_bms.c **** // bsm_step_num = 5;
  3602. 776:user_src/soft_bms.c **** // bms_step = 1;
  3603. 777:user_src/soft_bms.c **** // }
  3604. 778:user_src/soft_bms.c **** // break;
  3605. 779:user_src/soft_bms.c **** // case 1:
  3606. 780:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3607. 781:user_src/soft_bms.c **** // {
  3608. 782:user_src/soft_bms.c **** // len = 0;
  3609. 783:user_src/soft_bms.c **** // msg_id = 0x04; //canid 5132344 4E5039
  3610. 784:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3611. 785:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3612. 786:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3613. 787:user_src/soft_bms.c **** // {
  3614. 788:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3615. 789:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3616. 790:user_src/soft_bms.c **** // }
  3617. 791:user_src/soft_bms.c **** // bsm_step_num--;
  3618. 792:user_src/soft_bms.c **** // }
  3619. 793:user_src/soft_bms.c **** // else
  3620. 794:user_src/soft_bms.c **** // {
  3621. 795:user_src/soft_bms.c **** // bsm_step_num = 5;
  3622. 796:user_src/soft_bms.c **** // bms_step = 2;
  3623. 797:user_src/soft_bms.c **** // }
  3624. 798:user_src/soft_bms.c **** // break;
  3625. 799:user_src/soft_bms.c **** // case 2:
  3626. 800:user_src/soft_bms.c **** // if(bsm_step_num > 0)
  3627. 801:user_src/soft_bms.c **** // {
  3628. 802:user_src/soft_bms.c **** // len = 0;
  3629. 803:user_src/soft_bms.c **** // msg_id = 0x05;//canid 6180920 5E5039
  3630. 804:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1
  3631. 805:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3632. 806:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3633. 807:user_src/soft_bms.c **** // {
  3634. 808:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 |
  3635. 809:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], len, can_id);
  3636. 810:user_src/soft_bms.c **** // }
  3637. 811:user_src/soft_bms.c **** // bsm_step_num--;
  3638. 812:user_src/soft_bms.c **** // }
  3639. 813:user_src/soft_bms.c **** // else
  3640. 814:user_src/soft_bms.c **** // {
  3641. 815:user_src/soft_bms.c **** // bsm_step_num = 5;
  3642. 816:user_src/soft_bms.c **** // bms_step = 3;
  3643. 817:user_src/soft_bms.c **** // }
  3644. 818:user_src/soft_bms.c **** // break;
  3645. 819:user_src/soft_bms.c ****
  3646. 820:user_src/soft_bms.c **** // default:
  3647. 821:user_src/soft_bms.c **** // break;
  3648. 822:user_src/soft_bms.c **** // }
  3649. 823:user_src/soft_bms.c **** // }
  3650. 824:user_src/soft_bms.c **** // //秘钥匹�
  3651. 825:user_src/soft_bms.c **** // else if(start_msg.key_to_bms == true && bsm_step_num > 0 && bms_step == 3 ) //上个ifè¯
  3652. 826:user_src/soft_bms.c **** // {
  3653. 827:user_src/soft_bms.c **** // msg_id = 0x07;
  3654. 828:user_src/soft_bms.c ****
  3655. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 64
  3656. 829:user_src/soft_bms.c **** // crc = Get_Crc16(&start_msg.key_data[0],20);
  3657. 830:user_src/soft_bms.c ****
  3658. 831:user_src/soft_bms.c **** // memcpy(&bms_can_buf[0],&crc,2);
  3659. 832:user_src/soft_bms.c **** // memcpy(&bms_can_buf[2],&start_msg.key_data[i],6);
  3660. 833:user_src/soft_bms.c ****
  3661. 834:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3662. 835:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 8, can_id);
  3663. 836:user_src/soft_bms.c **** // i += 6;
  3664. 837:user_src/soft_bms.c ****
  3665. 838:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x0 << 4 |
  3666. 839:user_src/soft_bms.c **** // can_send_msg_normal(&start_msg.key_data[i], 8, can_id);
  3667. 840:user_src/soft_bms.c **** // i += 8;
  3668. 841:user_src/soft_bms.c ****
  3669. 842:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x0 << 4 |
  3670. 843:user_src/soft_bms.c **** // can_send_msg_normal(&start_msg.key_data[i], 6, can_id);
  3671. 844:user_src/soft_bms.c ****
  3672. 845:user_src/soft_bms.c **** // bsm_step_num--;
  3673. 846:user_src/soft_bms.c **** // if(bsm_step_num == 0)
  3674. 847:user_src/soft_bms.c **** // {
  3675. 848:user_src/soft_bms.c **** // bsm_step_num = 5;
  3676. 849:user_src/soft_bms.c **** // bms_step = 4;
  3677. 850:user_src/soft_bms.c **** // }
  3678. 851:user_src/soft_bms.c **** // }
  3679. 852:user_src/soft_bms.c **** // //开�mos
  3680. 853:user_src/soft_bms.c **** // else if(start_msg.mos_status == true && bsm_step_num > 0 && (bms_step == 4 || start_msg.
  3681. 854:user_src/soft_bms.c **** // {
  3682. 855:user_src/soft_bms.c **** // msg_id = 0x08;
  3683. 856:user_src/soft_bms.c ****
  3684. 857:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3685. 858:user_src/soft_bms.c **** // bms_can_buf[0] = 0x01;
  3686. 859:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 1, can_id);
  3687. 860:user_src/soft_bms.c **** // bsm_step_num--;
  3688. 861:user_src/soft_bms.c **** // }
  3689. 862:user_src/soft_bms.c **** // else if(utc_time != 0 && utc_send_time > 0 )
  3690. 863:user_src/soft_bms.c **** // {
  3691. 864:user_src/soft_bms.c **** // msg_id = 0x09;
  3692. 865:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3693. 866:user_src/soft_bms.c **** // memcpy(&bms_can_buf[0],&utc_time,4);
  3694. 867:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3695. 868:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3696. 869:user_src/soft_bms.c **** // {
  3697. 870:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3698. 871:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 4, can_id);
  3699. 872:user_src/soft_bms.c **** // }
  3700. 873:user_src/soft_bms.c **** // utc_send_time--;
  3701. 874:user_src/soft_bms.c **** // }
  3702. 875:user_src/soft_bms.c **** // else if(HAL_GetTick() - bms_heart_time > 1000)//实时信�应答包
  3703. 876:user_src/soft_bms.c **** // {
  3704. 877:user_src/soft_bms.c **** // msg_id = 0x02;
  3705. 878:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device1.source_id << 11 | 0x1 << 5 | 0x1 << 4 |
  3706. 879:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3707. 880:user_src/soft_bms.c **** // if(Device2.Vkbms_Link.connect_status == COMP_NORMAL)
  3708. 881:user_src/soft_bms.c **** // {
  3709. 882:user_src/soft_bms.c **** // can_id = msg_id << 20 | 0x7 << 17 | Device2.source_id << 11 | 0x1 << 5 | 0x1 <<
  3710. 883:user_src/soft_bms.c **** // can_send_msg_normal(&bms_can_buf[0], 0, can_id);
  3711. 884:user_src/soft_bms.c **** // }
  3712. 885:user_src/soft_bms.c **** // bms_heart_time = HAL_GetTick();
  3713. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 65
  3714. 886:user_src/soft_bms.c **** // }
  3715. 887:user_src/soft_bms.c **** // }
  3716. 888:user_src/soft_bms.c ****
  3717. 889:user_src/soft_bms.c ****
  3718. 890:user_src/soft_bms.c **** }
  3719. 2659 .loc 1 890 1
  3720. 2660 02bc 1837 adds r7, r7, #24
  3721. 2661 .LCFI8:
  3722. 2662 .cfi_def_cfa_offset 8
  3723. 2663 02be BD46 mov sp, r7
  3724. 2664 .LCFI9:
  3725. 2665 .cfi_def_cfa_register 13
  3726. 2666 @ sp needed
  3727. 2667 02c0 80BD pop {r7, pc}
  3728. 2668 .L70:
  3729. 2669 02c2 00BF .align 2
  3730. 2670 .L69:
  3731. 2671 02c4 00000000 .word change_dev.5
  3732. 2672 02c8 00000000 .word Device1
  3733. 2673 02cc 00000000 .word Device2
  3734. 2674 02d0 00000000 .word start_msg
  3735. 2675 02d4 07000000 .word start_msg+7
  3736. 2676 02d8 00000000 .word utc_time
  3737. 2677 02dc 00000000 .word utc_send_time
  3738. 2678 02e0 00000000 .word bms_heart_time.4
  3739. 2679 .cfi_endproc
  3740. 2680 .LFE134:
  3741. 2682 .section .text.bms_function,"ax",%progbits
  3742. 2683 .align 1
  3743. 2684 .global bms_function
  3744. 2685 .syntax unified
  3745. 2686 .thumb
  3746. 2687 .thumb_func
  3747. 2689 bms_function:
  3748. 2690 .LFB135:
  3749. 891:user_src/soft_bms.c ****
  3750. 892:user_src/soft_bms.c **** /**
  3751. 893:user_src/soft_bms.c **** * @file bms_function
  3752. 894:user_src/soft_bms.c **** * @brief 智能电池检测函数
  3753. 895:user_src/soft_bms.c **** * @param none
  3754. 896:user_src/soft_bms.c **** * @details
  3755. 897:user_src/soft_bms.c **** * @author Zhang Sir
  3756. 898:user_src/soft_bms.c **** **/
  3757. 899:user_src/soft_bms.c **** void bms_function()
  3758. 900:user_src/soft_bms.c **** {
  3759. 2691 .loc 1 900 1
  3760. 2692 .cfi_startproc
  3761. 2693 @ args = 0, pretend = 0, frame = 0
  3762. 2694 @ frame_needed = 1, uses_anonymous_args = 0
  3763. 2695 0000 80B5 push {r7, lr}
  3764. 2696 .LCFI10:
  3765. 2697 .cfi_def_cfa_offset 8
  3766. 2698 .cfi_offset 7, -8
  3767. 2699 .cfi_offset 14, -4
  3768. 2700 0002 00AF add r7, sp, #0
  3769. 2701 .LCFI11:
  3770. 2702 .cfi_def_cfa_register 7
  3771. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 66
  3772. 901:user_src/soft_bms.c **** static uint32_t bms_time = 0;
  3773. 902:user_src/soft_bms.c **** static uint32_t bms_5hz_time = 0;
  3774. 903:user_src/soft_bms.c ****
  3775. 904:user_src/soft_bms.c **** if(Check_Timer_Ready(&bms_time,_10_HZ_))
  3776. 2703 .loc 1 904 8
  3777. 2704 0004 6421 movs r1, #100
  3778. 2705 0006 0B48 ldr r0, .L75
  3779. 2706 0008 FFF7FEFF bl Check_Timer_Ready
  3780. 2707 000c 0346 mov r3, r0
  3781. 2708 .loc 1 904 7
  3782. 2709 000e 002B cmp r3, #0
  3783. 2710 0010 03D0 beq .L72
  3784. 905:user_src/soft_bms.c **** {
  3785. 906:user_src/soft_bms.c **** update_bms_data();
  3786. 2711 .loc 1 906 9
  3787. 2712 0012 FFF7FEFF bl update_bms_data
  3788. 907:user_src/soft_bms.c ****
  3789. 908:user_src/soft_bms.c **** send_msg_to_VKbms();//存在�电池 ��时�� ��频率加快
  3790. 2713 .loc 1 908 9
  3791. 2714 0016 FFF7FEFF bl send_msg_to_VKbms
  3792. 2715 .L72:
  3793. 909:user_src/soft_bms.c **** }
  3794. 910:user_src/soft_bms.c ****
  3795. 911:user_src/soft_bms.c **** if(Check_Timer_Ready(&bms_5hz_time,_5_HZ_))
  3796. 2716 .loc 1 911 8
  3797. 2717 001a C821 movs r1, #200
  3798. 2718 001c 0648 ldr r0, .L75+4
  3799. 2719 001e FFF7FEFF bl Check_Timer_Ready
  3800. 2720 0022 0346 mov r3, r0
  3801. 2721 .loc 1 911 7
  3802. 2722 0024 002B cmp r3, #0
  3803. 2723 0026 03D0 beq .L74
  3804. 912:user_src/soft_bms.c **** {
  3805. 913:user_src/soft_bms.c **** //给智能电池��上电信�
  3806. 914:user_src/soft_bms.c **** send_msg_to_okcell();
  3807. 2724 .loc 1 914 9
  3808. 2725 0028 FFF7FEFF bl send_msg_to_okcell
  3809. 915:user_src/soft_bms.c **** send_msg_to_herewin();
  3810. 2726 .loc 1 915 9
  3811. 2727 002c FFF7FEFF bl send_msg_to_herewin
  3812. 2728 .L74:
  3813. 916:user_src/soft_bms.c **** //send_msg_to_poweramp();
  3814. 917:user_src/soft_bms.c **** }
  3815. 918:user_src/soft_bms.c **** }
  3816. 2729 .loc 1 918 1
  3817. 2730 0030 00BF nop
  3818. 2731 0032 80BD pop {r7, pc}
  3819. 2732 .L76:
  3820. 2733 .align 2
  3821. 2734 .L75:
  3822. 2735 0034 00000000 .word bms_time.3
  3823. 2736 0038 00000000 .word bms_5hz_time.2
  3824. 2737 .cfi_endproc
  3825. 2738 .LFE135:
  3826. 2740 .global bms_test
  3827. 2741 .section .bss.bms_test,"aw",%nobits
  3828. 2742 .align 1
  3829. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 67
  3830. 2745 bms_test:
  3831. 2746 0000 0000 .space 2
  3832. 2747 .global bms_re
  3833. 2748 .section .bss.bms_re,"aw",%nobits
  3834. 2749 .align 1
  3835. 2752 bms_re:
  3836. 2753 0000 0000 .space 2
  3837. 2754 .global fmu_send_vkbms_msgid
  3838. 2755 .section .bss.fmu_send_vkbms_msgid,"aw",%nobits
  3839. 2758 fmu_send_vkbms_msgid:
  3840. 2759 0000 00 .space 1
  3841. 2760 .section .text.BMSCanRecvHookFunction,"ax",%progbits
  3842. 2761 .align 1
  3843. 2762 .global BMSCanRecvHookFunction
  3844. 2763 .syntax unified
  3845. 2764 .thumb
  3846. 2765 .thumb_func
  3847. 2767 BMSCanRecvHookFunction:
  3848. 2768 .LFB136:
  3849. 919:user_src/soft_bms.c ****
  3850. 920:user_src/soft_bms.c ****
  3851. 921:user_src/soft_bms.c **** /**
  3852. 922:user_src/soft_bms.c **** * @file BMSCanRecvHookFunction
  3853. 923:user_src/soft_bms.c **** * @brief VK智能电池�议
  3854. 924:user_src/soft_bms.c **** * @param none
  3855. 925:user_src/soft_bms.c **** * @details
  3856. 926:user_src/soft_bms.c **** * @author Zhang Sir
  3857. 927:user_src/soft_bms.c **** **/
  3858. 928:user_src/soft_bms.c **** uint16_t bms_test = 0;
  3859. 929:user_src/soft_bms.c **** uint16_t bms_re = 0;
  3860. 930:user_src/soft_bms.c **** uint8_t fmu_send_vkbms_msgid = 0;
  3861. 931:user_src/soft_bms.c **** void BMSCanRecvHookFunction(uint32_t CanID, uint8_t data[], uint8_t len)
  3862. 932:user_src/soft_bms.c **** {
  3863. 2769 .loc 1 932 1
  3864. 2770 .cfi_startproc
  3865. 2771 @ args = 0, pretend = 0, frame = 32
  3866. 2772 @ frame_needed = 1, uses_anonymous_args = 0
  3867. 2773 0000 80B5 push {r7, lr}
  3868. 2774 .LCFI12:
  3869. 2775 .cfi_def_cfa_offset 8
  3870. 2776 .cfi_offset 7, -8
  3871. 2777 .cfi_offset 14, -4
  3872. 2778 0002 88B0 sub sp, sp, #32
  3873. 2779 .LCFI13:
  3874. 2780 .cfi_def_cfa_offset 40
  3875. 2781 0004 00AF add r7, sp, #0
  3876. 2782 .LCFI14:
  3877. 2783 .cfi_def_cfa_register 7
  3878. 2784 0006 F860 str r0, [r7, #12]
  3879. 2785 0008 B960 str r1, [r7, #8]
  3880. 2786 000a 1346 mov r3, r2
  3881. 2787 000c FB71 strb r3, [r7, #7]
  3882. 933:user_src/soft_bms.c **** uint32_t source_id = 0, msg_id = 0;
  3883. 2788 .loc 1 933 14
  3884. 2789 000e 0023 movs r3, #0
  3885. 2790 0010 BB61 str r3, [r7, #24]
  3886. 2791 .loc 1 933 29
  3887. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 68
  3888. 2792 0012 0023 movs r3, #0
  3889. 2793 0014 7B61 str r3, [r7, #20]
  3890. 934:user_src/soft_bms.c **** uint8_t bms_SOF = 0, bms_EOF = 0, frame_num = 0;
  3891. 2794 .loc 1 934 13
  3892. 2795 0016 0023 movs r3, #0
  3893. 2796 0018 FB74 strb r3, [r7, #19]
  3894. 2797 .loc 1 934 26
  3895. 2798 001a 0023 movs r3, #0
  3896. 2799 001c BB74 strb r3, [r7, #18]
  3897. 2800 .loc 1 934 39
  3898. 2801 001e 0023 movs r3, #0
  3899. 2802 0020 7B74 strb r3, [r7, #17]
  3900. 935:user_src/soft_bms.c **** static uint32_t bms1_source_id = 0;
  3901. 936:user_src/soft_bms.c **** static uint32_t pack_msg_id = 0;
  3902. 937:user_src/soft_bms.c ****
  3903. 938:user_src/soft_bms.c **** Vkbms_Device *Bmspointer = NULL;
  3904. 2803 .loc 1 938 19
  3905. 2804 0022 0023 movs r3, #0
  3906. 2805 0024 FB61 str r3, [r7, #28]
  3907. 939:user_src/soft_bms.c ****
  3908. 940:user_src/soft_bms.c **** msg_id = (CanID & VK_MSG_MASK_ID) >> 20;
  3909. 2806 .loc 1 940 39
  3910. 2807 0026 FB68 ldr r3, [r7, #12]
  3911. 2808 0028 1B0D lsrs r3, r3, #20
  3912. 2809 .loc 1 940 12
  3913. 2810 002a 03F03F03 and r3, r3, #63
  3914. 2811 002e 7B61 str r3, [r7, #20]
  3915. 941:user_src/soft_bms.c **** source_id = (CanID & VK_SRC_MASK_ID) >> 5;
  3916. 2812 .loc 1 941 42
  3917. 2813 0030 FB68 ldr r3, [r7, #12]
  3918. 2814 0032 5B09 lsrs r3, r3, #5
  3919. 2815 .loc 1 941 15
  3920. 2816 0034 03F03F03 and r3, r3, #63
  3921. 2817 0038 BB61 str r3, [r7, #24]
  3922. 942:user_src/soft_bms.c **** bms_SOF = (CanID >> 4) & 0x1;
  3923. 2818 .loc 1 942 22
  3924. 2819 003a FB68 ldr r3, [r7, #12]
  3925. 2820 003c 1B09 lsrs r3, r3, #4
  3926. 2821 .loc 1 942 28
  3927. 2822 003e DBB2 uxtb r3, r3
  3928. 2823 .loc 1 942 13
  3929. 2824 0040 03F00103 and r3, r3, #1
  3930. 2825 0044 FB74 strb r3, [r7, #19]
  3931. 943:user_src/soft_bms.c **** bms_EOF = (CanID >> 3) & 0x1;
  3932. 2826 .loc 1 943 22
  3933. 2827 0046 FB68 ldr r3, [r7, #12]
  3934. 2828 0048 DB08 lsrs r3, r3, #3
  3935. 2829 .loc 1 943 28
  3936. 2830 004a DBB2 uxtb r3, r3
  3937. 2831 .loc 1 943 13
  3938. 2832 004c 03F00103 and r3, r3, #1
  3939. 2833 0050 BB74 strb r3, [r7, #18]
  3940. 944:user_src/soft_bms.c **** frame_num = CanID & 0x7;
  3941. 2834 .loc 1 944 23
  3942. 2835 0052 FB68 ldr r3, [r7, #12]
  3943. 2836 0054 DBB2 uxtb r3, r3
  3944. 2837 .loc 1 944 15
  3945. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 69
  3946. 2838 0056 03F00703 and r3, r3, #7
  3947. 2839 005a 7B74 strb r3, [r7, #17]
  3948. 945:user_src/soft_bms.c ****
  3949. 946:user_src/soft_bms.c **** if(source_id == bms1_source_id || bms1_source_id == 0)
  3950. 2840 .loc 1 946 18
  3951. 2841 005c 9C4B ldr r3, .L114
  3952. 2842 005e 1B68 ldr r3, [r3]
  3953. 2843 .loc 1 946 7
  3954. 2844 0060 BA69 ldr r2, [r7, #24]
  3955. 2845 0062 9A42 cmp r2, r3
  3956. 2846 0064 03D0 beq .L78
  3957. 2847 .loc 1 946 54 discriminator 1
  3958. 2848 0066 9A4B ldr r3, .L114
  3959. 2849 0068 1B68 ldr r3, [r3]
  3960. 2850 .loc 1 946 36 discriminator 1
  3961. 2851 006a 002B cmp r3, #0
  3962. 2852 006c 09D1 bne .L79
  3963. 2853 .L78:
  3964. 947:user_src/soft_bms.c **** {
  3965. 948:user_src/soft_bms.c **** bms1_source_id = source_id;
  3966. 2854 .loc 1 948 24
  3967. 2855 006e 984A ldr r2, .L114
  3968. 2856 0070 BB69 ldr r3, [r7, #24]
  3969. 2857 0072 1360 str r3, [r2]
  3970. 949:user_src/soft_bms.c **** Bmspointer = &Device1;
  3971. 2858 .loc 1 949 20
  3972. 2859 0074 974B ldr r3, .L114+4
  3973. 2860 0076 FB61 str r3, [r7, #28]
  3974. 950:user_src/soft_bms.c **** Bmspointer->source_id = source_id;
  3975. 2861 .loc 1 950 31
  3976. 2862 0078 BB69 ldr r3, [r7, #24]
  3977. 2863 007a DAB2 uxtb r2, r3
  3978. 2864 007c FB69 ldr r3, [r7, #28]
  3979. 2865 007e 5A74 strb r2, [r3, #17]
  3980. 2866 0080 05E0 b .L80
  3981. 2867 .L79:
  3982. 951:user_src/soft_bms.c **** }
  3983. 952:user_src/soft_bms.c **** else
  3984. 953:user_src/soft_bms.c **** {
  3985. 954:user_src/soft_bms.c **** Bmspointer = &Device2;
  3986. 2868 .loc 1 954 20
  3987. 2869 0082 954B ldr r3, .L114+8
  3988. 2870 0084 FB61 str r3, [r7, #28]
  3989. 955:user_src/soft_bms.c **** Bmspointer->source_id = source_id;
  3990. 2871 .loc 1 955 31
  3991. 2872 0086 BB69 ldr r3, [r7, #24]
  3992. 2873 0088 DAB2 uxtb r2, r3
  3993. 2874 008a FB69 ldr r3, [r7, #28]
  3994. 2875 008c 5A74 strb r2, [r3, #17]
  3995. 2876 .L80:
  3996. 956:user_src/soft_bms.c **** }
  3997. 957:user_src/soft_bms.c ****
  3998. 958:user_src/soft_bms.c **** Bmspointer->Vkbms_Link.connect_status = COMP_NORMAL;
  3999. 2877 .loc 1 958 43
  4000. 2878 008e FB69 ldr r3, [r7, #28]
  4001. 2879 0090 0122 movs r2, #1
  4002. 2880 0092 1A72 strb r2, [r3, #8]
  4003. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 70
  4004. 959:user_src/soft_bms.c **** Bmspointer->Vkbms_Link.recv_time = HAL_GetTick();
  4005. 2881 .loc 1 959 40
  4006. 2882 0094 FFF7FEFF bl HAL_GetTick
  4007. 2883 0098 0246 mov r2, r0
  4008. 2884 .loc 1 959 38
  4009. 2885 009a FB69 ldr r3, [r7, #28]
  4010. 2886 009c 1A60 str r2, [r3] @ unaligned
  4011. 960:user_src/soft_bms.c ****
  4012. 961:user_src/soft_bms.c **** //�帧
  4013. 962:user_src/soft_bms.c **** if(bms_SOF == 1 && bms_EOF == 1)
  4014. 2887 .loc 1 962 7
  4015. 2888 009e FB7C ldrb r3, [r7, #19] @ zero_extendqisi2
  4016. 2889 00a0 012B cmp r3, #1
  4017. 2890 00a2 0AD1 bne .L81
  4018. 2891 .loc 1 962 21 discriminator 1
  4019. 2892 00a4 BB7C ldrb r3, [r7, #18] @ zero_extendqisi2
  4020. 2893 00a6 012B cmp r3, #1
  4021. 2894 00a8 07D1 bne .L81
  4022. 963:user_src/soft_bms.c **** {
  4023. 964:user_src/soft_bms.c **** memcpy(&Bmspointer->bms_can_buf[0],&data[0],len);
  4024. 2895 .loc 1 964 16
  4025. 2896 00aa FB69 ldr r3, [r7, #28]
  4026. 2897 00ac 1633 adds r3, r3, #22
  4027. 2898 .loc 1 964 9
  4028. 2899 00ae FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  4029. 2900 00b0 B968 ldr r1, [r7, #8]
  4030. 2901 00b2 1846 mov r0, r3
  4031. 2902 00b4 FFF7FEFF bl memcpy
  4032. 2903 00b8 A6E0 b .L82
  4033. 2904 .L81:
  4034. 965:user_src/soft_bms.c **** }
  4035. 966:user_src/soft_bms.c **** //多帧 帧头
  4036. 967:user_src/soft_bms.c **** else if(bms_SOF == 1 && bms_EOF == 0)
  4037. 2905 .loc 1 967 12
  4038. 2906 00ba FB7C ldrb r3, [r7, #19] @ zero_extendqisi2
  4039. 2907 00bc 012B cmp r3, #1
  4040. 2908 00be 24D1 bne .L83
  4041. 2909 .loc 1 967 26 discriminator 1
  4042. 2910 00c0 BB7C ldrb r3, [r7, #18] @ zero_extendqisi2
  4043. 2911 00c2 002B cmp r3, #0
  4044. 2912 00c4 21D1 bne .L83
  4045. 968:user_src/soft_bms.c **** {
  4046. 969:user_src/soft_bms.c **** Bmspointer->mul_frame_i = 0;
  4047. 2913 .loc 1 969 33
  4048. 2914 00c6 FB69 ldr r3, [r7, #28]
  4049. 2915 00c8 0022 movs r2, #0
  4050. 2916 00ca 1A75 strb r2, [r3, #20]
  4051. 970:user_src/soft_bms.c **** Bmspointer->mul_frame_num = 2;
  4052. 2917 .loc 1 970 35
  4053. 2918 00cc FB69 ldr r3, [r7, #28]
  4054. 2919 00ce 0222 movs r2, #2
  4055. 2920 00d0 5A75 strb r2, [r3, #21]
  4056. 971:user_src/soft_bms.c **** Bmspointer->if_mul_frame = true;
  4057. 2921 .loc 1 971 34
  4058. 2922 00d2 FB69 ldr r3, [r7, #28]
  4059. 2923 00d4 0122 movs r2, #1
  4060. 2924 00d6 9A74 strb r2, [r3, #18]
  4061. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 71
  4062. 972:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = false;
  4063. 2925 .loc 1 972 45
  4064. 2926 00d8 FB69 ldr r3, [r7, #28]
  4065. 2927 00da 0022 movs r2, #0
  4066. 2928 00dc DA74 strb r2, [r3, #19]
  4067. 973:user_src/soft_bms.c **** memcpy(&Bmspointer->bms_can_buf[Bmspointer->mul_frame_i],&data[0],len);
  4068. 2929 .loc 1 973 51
  4069. 2930 00de FB69 ldr r3, [r7, #28]
  4070. 2931 00e0 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2
  4071. 2932 .loc 1 973 16
  4072. 2933 00e2 1033 adds r3, r3, #16
  4073. 2934 00e4 FA69 ldr r2, [r7, #28]
  4074. 2935 00e6 1344 add r3, r3, r2
  4075. 2936 00e8 0633 adds r3, r3, #6
  4076. 2937 .loc 1 973 9
  4077. 2938 00ea FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  4078. 2939 00ec B968 ldr r1, [r7, #8]
  4079. 2940 00ee 1846 mov r0, r3
  4080. 2941 00f0 FFF7FEFF bl memcpy
  4081. 974:user_src/soft_bms.c **** Bmspointer->mul_frame_i += len;
  4082. 2942 .loc 1 974 33
  4083. 2943 00f4 FB69 ldr r3, [r7, #28]
  4084. 2944 00f6 1A7D ldrb r2, [r3, #20] @ zero_extendqisi2
  4085. 2945 00f8 FB79 ldrb r3, [r7, #7]
  4086. 2946 00fa 1344 add r3, r3, r2
  4087. 2947 00fc DAB2 uxtb r2, r3
  4088. 2948 00fe FB69 ldr r3, [r7, #28]
  4089. 2949 0100 1A75 strb r2, [r3, #20]
  4090. 975:user_src/soft_bms.c ****
  4091. 976:user_src/soft_bms.c **** pack_msg_id = msg_id;
  4092. 2950 .loc 1 976 21
  4093. 2951 0102 764A ldr r2, .L114+12
  4094. 2952 0104 7B69 ldr r3, [r7, #20]
  4095. 2953 0106 1360 str r3, [r2]
  4096. 2954 0108 7EE0 b .L82
  4097. 2955 .L83:
  4098. 977:user_src/soft_bms.c **** }
  4099. 978:user_src/soft_bms.c **** // 中间帧
  4100. 979:user_src/soft_bms.c **** else if(Bmspointer->if_mul_frame == true && bms_SOF == 0 && bms_EOF == 0 && pack_msg_id == msg_
  4101. 2956 .loc 1 979 23
  4102. 2957 010a FB69 ldr r3, [r7, #28]
  4103. 2958 010c 9B7C ldrb r3, [r3, #18] @ zero_extendqisi2
  4104. 2959 .loc 1 979 12
  4105. 2960 010e 002B cmp r3, #0
  4106. 2961 0110 3AD0 beq .L84
  4107. 2962 .loc 1 979 46 discriminator 1
  4108. 2963 0112 FB7C ldrb r3, [r7, #19] @ zero_extendqisi2
  4109. 2964 0114 002B cmp r3, #0
  4110. 2965 0116 37D1 bne .L84
  4111. 2966 .loc 1 979 62 discriminator 2
  4112. 2967 0118 BB7C ldrb r3, [r7, #18] @ zero_extendqisi2
  4113. 2968 011a 002B cmp r3, #0
  4114. 2969 011c 34D1 bne .L84
  4115. 2970 .loc 1 979 93 discriminator 3
  4116. 2971 011e 6F4B ldr r3, .L114+12
  4117. 2972 0120 1B68 ldr r3, [r3]
  4118. 2973 .loc 1 979 78 discriminator 3
  4119. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 72
  4120. 2974 0122 7A69 ldr r2, [r7, #20]
  4121. 2975 0124 9A42 cmp r2, r3
  4122. 2976 0126 2FD1 bne .L84
  4123. 980:user_src/soft_bms.c **** {
  4124. 981:user_src/soft_bms.c **** if(Bmspointer->mul_frame_num == frame_num /*&& ((Bmspointer->mul_frame_i + len) <= sizeof(v
  4125. 2977 .loc 1 981 22
  4126. 2978 0128 FB69 ldr r3, [r7, #28]
  4127. 2979 012a 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2
  4128. 2980 .loc 1 981 11
  4129. 2981 012c 7A7C ldrb r2, [r7, #17] @ zero_extendqisi2
  4130. 2982 012e 9A42 cmp r2, r3
  4131. 2983 0130 26D1 bne .L85
  4132. 982:user_src/soft_bms.c **** {
  4133. 983:user_src/soft_bms.c **** memcpy(&Bmspointer->bms_can_buf[Bmspointer->mul_frame_i],&data[0],len);
  4134. 2984 .loc 1 983 55
  4135. 2985 0132 FB69 ldr r3, [r7, #28]
  4136. 2986 0134 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2
  4137. 2987 .loc 1 983 20
  4138. 2988 0136 1033 adds r3, r3, #16
  4139. 2989 0138 FA69 ldr r2, [r7, #28]
  4140. 2990 013a 1344 add r3, r3, r2
  4141. 2991 013c 0633 adds r3, r3, #6
  4142. 2992 .loc 1 983 13
  4143. 2993 013e FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  4144. 2994 0140 B968 ldr r1, [r7, #8]
  4145. 2995 0142 1846 mov r0, r3
  4146. 2996 0144 FFF7FEFF bl memcpy
  4147. 984:user_src/soft_bms.c ****
  4148. 985:user_src/soft_bms.c **** Bmspointer->mul_frame_i += len;
  4149. 2997 .loc 1 985 37
  4150. 2998 0148 FB69 ldr r3, [r7, #28]
  4151. 2999 014a 1A7D ldrb r2, [r3, #20] @ zero_extendqisi2
  4152. 3000 014c FB79 ldrb r3, [r7, #7]
  4153. 3001 014e 1344 add r3, r3, r2
  4154. 3002 0150 DAB2 uxtb r2, r3
  4155. 3003 0152 FB69 ldr r3, [r7, #28]
  4156. 3004 0154 1A75 strb r2, [r3, #20]
  4157. 986:user_src/soft_bms.c **** Bmspointer->mul_frame_num++;
  4158. 3005 .loc 1 986 23
  4159. 3006 0156 FB69 ldr r3, [r7, #28]
  4160. 3007 0158 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2
  4161. 3008 .loc 1 986 38
  4162. 3009 015a 0133 adds r3, r3, #1
  4163. 3010 015c DAB2 uxtb r2, r3
  4164. 3011 015e FB69 ldr r3, [r7, #28]
  4165. 3012 0160 5A75 strb r2, [r3, #21]
  4166. 987:user_src/soft_bms.c **** if(Bmspointer->mul_frame_num == 8)
  4167. 3013 .loc 1 987 26
  4168. 3014 0162 FB69 ldr r3, [r7, #28]
  4169. 3015 0164 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2
  4170. 3016 .loc 1 987 15
  4171. 3017 0166 082B cmp r3, #8
  4172. 3018 0168 02D1 bne .L86
  4173. 988:user_src/soft_bms.c **** {
  4174. 989:user_src/soft_bms.c **** Bmspointer->mul_frame_num = 1;
  4175. 3019 .loc 1 989 43
  4176. 3020 016a FB69 ldr r3, [r7, #28]
  4177. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 73
  4178. 3021 016c 0122 movs r2, #1
  4179. 3022 016e 5A75 strb r2, [r3, #21]
  4180. 3023 .L86:
  4181. 990:user_src/soft_bms.c **** }
  4182. 991:user_src/soft_bms.c ****
  4183. 992:user_src/soft_bms.c **** if(Bmspointer->mul_frame_num >= 8)
  4184. 3024 .loc 1 992 26
  4185. 3025 0170 FB69 ldr r3, [r7, #28]
  4186. 3026 0172 5B7D ldrb r3, [r3, #21] @ zero_extendqisi2
  4187. 3027 .loc 1 992 15
  4188. 3028 0174 072B cmp r3, #7
  4189. 3029 0176 46D9 bls .L106
  4190. 993:user_src/soft_bms.c **** {
  4191. 994:user_src/soft_bms.c **** Bmspointer->mul_frame_num = 0;
  4192. 3030 .loc 1 994 43
  4193. 3031 0178 FB69 ldr r3, [r7, #28]
  4194. 3032 017a 0022 movs r2, #0
  4195. 3033 017c 5A75 strb r2, [r3, #21]
  4196. 981:user_src/soft_bms.c **** {
  4197. 3034 .loc 1 981 11
  4198. 3035 017e 42E0 b .L106
  4199. 3036 .L85:
  4200. 995:user_src/soft_bms.c **** }
  4201. 996:user_src/soft_bms.c **** }
  4202. 997:user_src/soft_bms.c **** else
  4203. 998:user_src/soft_bms.c **** {
  4204. 999:user_src/soft_bms.c **** Bmspointer->if_mul_frame = false;
  4205. 3037 .loc 1 999 38
  4206. 3038 0180 FB69 ldr r3, [r7, #28]
  4207. 3039 0182 0022 movs r2, #0
  4208. 3040 0184 9A74 strb r2, [r3, #18]
  4209. 981:user_src/soft_bms.c **** {
  4210. 3041 .loc 1 981 11
  4211. 3042 0186 3EE0 b .L106
  4212. 3043 .L84:
  4213. 1000:user_src/soft_bms.c **** }
  4214. 1001:user_src/soft_bms.c **** }
  4215. 1002:user_src/soft_bms.c **** //帧尾
  4216. 1003:user_src/soft_bms.c **** else if(bms_SOF == 0 && bms_EOF == 1 && Bmspointer->if_mul_frame == true && pack_msg_id == msg_
  4217. 3044 .loc 1 1003 12
  4218. 3045 0188 FB7C ldrb r3, [r7, #19] @ zero_extendqisi2
  4219. 3046 018a 002B cmp r3, #0
  4220. 3047 018c 3CD1 bne .L82
  4221. 3048 .loc 1 1003 26 discriminator 1
  4222. 3049 018e BB7C ldrb r3, [r7, #18] @ zero_extendqisi2
  4223. 3050 0190 012B cmp r3, #1
  4224. 3051 0192 39D1 bne .L82
  4225. 3052 .loc 1 1003 55 discriminator 2
  4226. 3053 0194 FB69 ldr r3, [r7, #28]
  4227. 3054 0196 9B7C ldrb r3, [r3, #18] @ zero_extendqisi2
  4228. 3055 .loc 1 1003 42 discriminator 2
  4229. 3056 0198 002B cmp r3, #0
  4230. 3057 019a 35D0 beq .L82
  4231. 3058 .loc 1 1003 93 discriminator 3
  4232. 3059 019c 4F4B ldr r3, .L114+12
  4233. 3060 019e 1B68 ldr r3, [r3]
  4234. 3061 .loc 1 1003 78 discriminator 3
  4235. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 74
  4236. 3062 01a0 7A69 ldr r2, [r7, #20]
  4237. 3063 01a2 9A42 cmp r2, r3
  4238. 3064 01a4 30D1 bne .L82
  4239. 1004:user_src/soft_bms.c **** {
  4240. 1005:user_src/soft_bms.c **** memcpy(&Bmspointer->bms_can_buf[Bmspointer->mul_frame_i],&data[0],len);
  4241. 3065 .loc 1 1005 51
  4242. 3066 01a6 FB69 ldr r3, [r7, #28]
  4243. 3067 01a8 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2
  4244. 3068 .loc 1 1005 16
  4245. 3069 01aa 1033 adds r3, r3, #16
  4246. 3070 01ac FA69 ldr r2, [r7, #28]
  4247. 3071 01ae 1344 add r3, r3, r2
  4248. 3072 01b0 0633 adds r3, r3, #6
  4249. 3073 .loc 1 1005 9
  4250. 3074 01b2 FA79 ldrb r2, [r7, #7] @ zero_extendqisi2
  4251. 3075 01b4 B968 ldr r1, [r7, #8]
  4252. 3076 01b6 1846 mov r0, r3
  4253. 3077 01b8 FFF7FEFF bl memcpy
  4254. 1006:user_src/soft_bms.c **** Bmspointer->mul_frame_i += len;
  4255. 3078 .loc 1 1006 33
  4256. 3079 01bc FB69 ldr r3, [r7, #28]
  4257. 3080 01be 1A7D ldrb r2, [r3, #20] @ zero_extendqisi2
  4258. 3081 01c0 FB79 ldrb r3, [r7, #7]
  4259. 3082 01c2 1344 add r3, r3, r2
  4260. 3083 01c4 DAB2 uxtb r2, r3
  4261. 3084 01c6 FB69 ldr r3, [r7, #28]
  4262. 3085 01c8 1A75 strb r2, [r3, #20]
  4263. 1007:user_src/soft_bms.c **** Bmspointer->if_mul_frame = false;
  4264. 3086 .loc 1 1007 34
  4265. 3087 01ca FB69 ldr r3, [r7, #28]
  4266. 3088 01cc 0022 movs r2, #0
  4267. 3089 01ce 9A74 strb r2, [r3, #18]
  4268. 1008:user_src/soft_bms.c ****
  4269. 1009:user_src/soft_bms.c **** //bms_test = Get_Crc16(&Bmspointer->bms_can_buf[2], Bmspointer->mul_frame_i - 2);
  4270. 1010:user_src/soft_bms.c **** //bms_re = Bmspointer->bms_can_buf[0] + (Bmspointer->bms_can_buf[1] << 8);
  4271. 1011:user_src/soft_bms.c **** if(Get_Crc16(&Bmspointer->bms_can_buf[2], Bmspointer->mul_frame_i - 2) == (Bmspointer->bms_
  4272. 3090 .loc 1 1011 12
  4273. 3091 01d0 FB69 ldr r3, [r7, #28]
  4274. 3092 01d2 03F11802 add r2, r3, #24
  4275. 3093 .loc 1 1011 61
  4276. 3094 01d6 FB69 ldr r3, [r7, #28]
  4277. 3095 01d8 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2
  4278. 3096 01da 9BB2 uxth r3, r3
  4279. 3097 .loc 1 1011 12
  4280. 3098 01dc 023B subs r3, r3, #2
  4281. 3099 01de 9BB2 uxth r3, r3
  4282. 3100 01e0 1946 mov r1, r3
  4283. 3101 01e2 1046 mov r0, r2
  4284. 3102 01e4 FFF7FEFF bl Get_Crc16
  4285. 3103 01e8 0346 mov r3, r0
  4286. 3104 01ea 1A46 mov r2, r3
  4287. 3105 .loc 1 1011 107
  4288. 3106 01ec FB69 ldr r3, [r7, #28]
  4289. 3107 01ee 9B7D ldrb r3, [r3, #22] @ zero_extendqisi2
  4290. 3108 01f0 1946 mov r1, r3
  4291. 3109 .loc 1 1011 137
  4292. 3110 01f2 FB69 ldr r3, [r7, #28]
  4293. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 75
  4294. 3111 01f4 DB7D ldrb r3, [r3, #23] @ zero_extendqisi2
  4295. 3112 .loc 1 1011 141
  4296. 3113 01f6 1B02 lsls r3, r3, #8
  4297. 3114 .loc 1 1011 111
  4298. 3115 01f8 0B44 add r3, r3, r1
  4299. 3116 .loc 1 1011 11
  4300. 3117 01fa 9A42 cmp r2, r3
  4301. 3118 01fc 04D1 bne .L82
  4302. 1012:user_src/soft_bms.c **** {
  4303. 1013:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = true;
  4304. 3119 .loc 1 1013 49
  4305. 3120 01fe FB69 ldr r3, [r7, #28]
  4306. 3121 0200 0122 movs r2, #1
  4307. 3122 0202 DA74 strb r2, [r3, #19]
  4308. 3123 0204 00E0 b .L82
  4309. 3124 .L106:
  4310. 981:user_src/soft_bms.c **** {
  4311. 3125 .loc 1 981 11
  4312. 3126 0206 00BF nop
  4313. 3127 .L82:
  4314. 1014:user_src/soft_bms.c **** }
  4315. 1015:user_src/soft_bms.c **** }
  4316. 1016:user_src/soft_bms.c ****
  4317. 1017:user_src/soft_bms.c **** switch (msg_id)
  4318. 3128 .loc 1 1017 5
  4319. 3129 0208 7B69 ldr r3, [r7, #20]
  4320. 3130 020a 013B subs r3, r3, #1
  4321. 3131 020c 082B cmp r3, #8
  4322. 3132 020e 00F2AA80 bhi .L107
  4323. 3133 0212 01A2 adr r2, .L90
  4324. 3134 0214 52F823F0 ldr pc, [r2, r3, lsl #2]
  4325. 3135 .p2align 2
  4326. 3136 .L90:
  4327. 3137 0218 3D020000 .word .L97+1
  4328. 3138 021c 61020000 .word .L96+1
  4329. 3139 0220 85020000 .word .L95+1
  4330. 3140 0224 AF020000 .word .L94+1
  4331. 3141 0228 E1020000 .word .L93+1
  4332. 3142 022c 67030000 .word .L107+1
  4333. 3143 0230 0B030000 .word .L92+1
  4334. 3144 0234 3B030000 .word .L91+1
  4335. 3145 0238 57030000 .word .L89+1
  4336. 3146 .p2align 1
  4337. 3147 .L97:
  4338. 1018:user_src/soft_bms.c **** {
  4339. 1019:user_src/soft_bms.c **** case 0X01:
  4340. 1020:user_src/soft_bms.c **** if(Bmspointer->bms_can_buf[0] == 0x56 && Bmspointer->bms_can_buf[1] == 0x31)
  4341. 3148 .loc 1 1020 35
  4342. 3149 023c FB69 ldr r3, [r7, #28]
  4343. 3150 023e 9B7D ldrb r3, [r3, #22] @ zero_extendqisi2
  4344. 3151 .loc 1 1020 11
  4345. 3152 0240 562B cmp r3, #86
  4346. 3153 0242 40F09280 bne .L108
  4347. 3154 .loc 1 1020 73 discriminator 1
  4348. 3155 0246 FB69 ldr r3, [r7, #28]
  4349. 3156 0248 DB7D ldrb r3, [r3, #23] @ zero_extendqisi2
  4350. 3157 .loc 1 1020 47 discriminator 1
  4351. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 76
  4352. 3158 024a 312B cmp r3, #49
  4353. 3159 024c 40F08D80 bne .L108
  4354. 1021:user_src/soft_bms.c **** {
  4355. 1022:user_src/soft_bms.c **** Bmspointer->ack_to_bms = true;
  4356. 3160 .loc 1 1022 36
  4357. 3161 0250 FB69 ldr r3, [r7, #28]
  4358. 3162 0252 0122 movs r2, #1
  4359. 3163 0254 1A74 strb r2, [r3, #16]
  4360. 1023:user_src/soft_bms.c **** Bmspointer->source_id = source_id;
  4361. 3164 .loc 1 1023 35
  4362. 3165 0256 BB69 ldr r3, [r7, #24]
  4363. 3166 0258 DAB2 uxtb r2, r3
  4364. 3167 025a FB69 ldr r3, [r7, #28]
  4365. 3168 025c 5A74 strb r2, [r3, #17]
  4366. 1024:user_src/soft_bms.c **** }
  4367. 1025:user_src/soft_bms.c **** break;
  4368. 3169 .loc 1 1025 9
  4369. 3170 025e 84E0 b .L108
  4370. 3171 .L96:
  4371. 1026:user_src/soft_bms.c **** case 0X02:
  4372. 1027:user_src/soft_bms.c **** if(Bmspointer->recv_mul_freme_complete == true)
  4373. 3172 .loc 1 1027 22
  4374. 3173 0260 FB69 ldr r3, [r7, #28]
  4375. 3174 0262 DB7C ldrb r3, [r3, #19] @ zero_extendqisi2
  4376. 3175 .loc 1 1027 11
  4377. 3176 0264 002B cmp r3, #0
  4378. 3177 0266 00F08280 beq .L109
  4379. 1028:user_src/soft_bms.c **** {
  4380. 1029:user_src/soft_bms.c **** memcpy(&Bmspointer->vk_bms2.voltage, &Bmspointer->bms_can_buf[2], sizeof(vkbms2));//接
  4381. 3178 .loc 1 1029 20
  4382. 3179 026a FB69 ldr r3, [r7, #28]
  4383. 3180 026c 03F19600 add r0, r3, #150
  4384. 3181 .loc 1 1029 50
  4385. 3182 0270 FB69 ldr r3, [r7, #28]
  4386. 3183 0272 1833 adds r3, r3, #24
  4387. 3184 .loc 1 1029 13
  4388. 3185 0274 4622 movs r2, #70
  4389. 3186 0276 1946 mov r1, r3
  4390. 3187 0278 FFF7FEFF bl memcpy
  4391. 1030:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = false;
  4392. 3188 .loc 1 1030 49
  4393. 3189 027c FB69 ldr r3, [r7, #28]
  4394. 3190 027e 0022 movs r2, #0
  4395. 3191 0280 DA74 strb r2, [r3, #19]
  4396. 1031:user_src/soft_bms.c **** }
  4397. 1032:user_src/soft_bms.c **** break;
  4398. 3192 .loc 1 1032 9
  4399. 3193 0282 74E0 b .L109
  4400. 3194 .L95:
  4401. 1033:user_src/soft_bms.c **** case 0X03:
  4402. 1034:user_src/soft_bms.c **** if(Bmspointer->recv_mul_freme_complete == true)
  4403. 3195 .loc 1 1034 22
  4404. 3196 0284 FB69 ldr r3, [r7, #28]
  4405. 3197 0286 DB7C ldrb r3, [r3, #19] @ zero_extendqisi2
  4406. 3198 .loc 1 1034 11
  4407. 3199 0288 002B cmp r3, #0
  4408. 3200 028a 72D0 beq .L110
  4409. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 77
  4410. 1035:user_src/soft_bms.c **** {
  4411. 1036:user_src/soft_bms.c **** memcpy(&Bmspointer->vk_bms3.bms_company_info, &Bmspointer->bms_can_buf[2], sizeof(vkbms
  4412. 3201 .loc 1 1036 20
  4413. 3202 028c FB69 ldr r3, [r7, #28]
  4414. 3203 028e 03F1DC00 add r0, r3, #220
  4415. 3204 .loc 1 1036 59
  4416. 3205 0292 FB69 ldr r3, [r7, #28]
  4417. 3206 0294 1833 adds r3, r3, #24
  4418. 3207 .loc 1 1036 13
  4419. 3208 0296 5022 movs r2, #80
  4420. 3209 0298 1946 mov r1, r3
  4421. 3210 029a FFF7FEFF bl memcpy
  4422. 1037:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = false;
  4423. 3211 .loc 1 1037 49
  4424. 3212 029e FB69 ldr r3, [r7, #28]
  4425. 3213 02a0 0022 movs r2, #0
  4426. 3214 02a2 DA74 strb r2, [r3, #19]
  4427. 1038:user_src/soft_bms.c ****
  4428. 1039:user_src/soft_bms.c **** Bmspointer->get_bms3_ack = true;
  4429. 3215 .loc 1 1039 38
  4430. 3216 02a4 FB69 ldr r3, [r7, #28]
  4431. 3217 02a6 0122 movs r2, #1
  4432. 3218 02a8 83F84A21 strb r2, [r3, #330]
  4433. 1040:user_src/soft_bms.c **** }
  4434. 1041:user_src/soft_bms.c **** break;
  4435. 3219 .loc 1 1041 9
  4436. 3220 02ac 61E0 b .L110
  4437. 3221 .L94:
  4438. 1042:user_src/soft_bms.c **** case 0X04:
  4439. 1043:user_src/soft_bms.c **** memcpy(&Bmspointer->vk_bms4.capacity, &Bmspointer->bms_can_buf[0], sizeof(vkbms4));
  4440. 3222 .loc 1 1043 16
  4441. 3223 02ae FB69 ldr r3, [r7, #28]
  4442. 3224 02b0 03F59670 add r0, r3, #300
  4443. 3225 .loc 1 1043 47
  4444. 3226 02b4 FB69 ldr r3, [r7, #28]
  4445. 3227 02b6 1633 adds r3, r3, #22
  4446. 3228 .loc 1 1043 9
  4447. 3229 02b8 0822 movs r2, #8
  4448. 3230 02ba 1946 mov r1, r3
  4449. 3231 02bc FFF7FEFF bl memcpy
  4450. 1044:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = false;
  4451. 3232 .loc 1 1044 45
  4452. 3233 02c0 FB69 ldr r3, [r7, #28]
  4453. 3234 02c2 0022 movs r2, #0
  4454. 3235 02c4 DA74 strb r2, [r3, #19]
  4455. 1045:user_src/soft_bms.c **** Bmspointer->get_bms4_ack = true;
  4456. 3236 .loc 1 1045 34
  4457. 3237 02c6 FB69 ldr r3, [r7, #28]
  4458. 3238 02c8 0122 movs r2, #1
  4459. 3239 02ca 83F84B21 strb r2, [r3, #331]
  4460. 1046:user_src/soft_bms.c **** break;
  4461. 3240 .loc 1 1046 9
  4462. 3241 02ce 55E0 b .L99
  4463. 3242 .L115:
  4464. 3243 .align 2
  4465. 3244 .L114:
  4466. 3245 02d0 00000000 .word bms1_source_id.1
  4467. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 78
  4468. 3246 02d4 00000000 .word Device1
  4469. 3247 02d8 00000000 .word Device2
  4470. 3248 02dc 00000000 .word pack_msg_id.0
  4471. 3249 .L93:
  4472. 1047:user_src/soft_bms.c **** case 0X05:
  4473. 1048:user_src/soft_bms.c **** if(Bmspointer->recv_mul_freme_complete == true)
  4474. 3250 .loc 1 1048 22
  4475. 3251 02e0 FB69 ldr r3, [r7, #28]
  4476. 3252 02e2 DB7C ldrb r3, [r3, #19] @ zero_extendqisi2
  4477. 3253 .loc 1 1048 11
  4478. 3254 02e4 002B cmp r3, #0
  4479. 3255 02e6 46D0 beq .L111
  4480. 1049:user_src/soft_bms.c **** {
  4481. 1050:user_src/soft_bms.c **** memcpy(&Bmspointer->vk_bms5.health_percent, &Bmspointer->bms_can_buf[2], sizeof(vkbms5)
  4482. 3256 .loc 1 1050 20
  4483. 3257 02e8 FB69 ldr r3, [r7, #28]
  4484. 3258 02ea 03F59A70 add r0, r3, #308
  4485. 3259 .loc 1 1050 57
  4486. 3260 02ee FB69 ldr r3, [r7, #28]
  4487. 3261 02f0 1833 adds r3, r3, #24
  4488. 3262 .loc 1 1050 13
  4489. 3263 02f2 1622 movs r2, #22
  4490. 3264 02f4 1946 mov r1, r3
  4491. 3265 02f6 FFF7FEFF bl memcpy
  4492. 1051:user_src/soft_bms.c **** Bmspointer->recv_mul_freme_complete = false;
  4493. 3266 .loc 1 1051 49
  4494. 3267 02fa FB69 ldr r3, [r7, #28]
  4495. 3268 02fc 0022 movs r2, #0
  4496. 3269 02fe DA74 strb r2, [r3, #19]
  4497. 1052:user_src/soft_bms.c **** Bmspointer->get_bms5_ack = true;
  4498. 3270 .loc 1 1052 38
  4499. 3271 0300 FB69 ldr r3, [r7, #28]
  4500. 3272 0302 0122 movs r2, #1
  4501. 3273 0304 83F84C21 strb r2, [r3, #332]
  4502. 1053:user_src/soft_bms.c **** }
  4503. 1054:user_src/soft_bms.c **** break;
  4504. 3274 .loc 1 1054 9
  4505. 3275 0308 35E0 b .L111
  4506. 3276 .L92:
  4507. 1055:user_src/soft_bms.c **** //秘钥是�匹�
  4508. 1056:user_src/soft_bms.c **** case 0x07:
  4509. 1057:user_src/soft_bms.c **** start_msg.key_to_bms = false;
  4510. 3277 .loc 1 1057 30
  4511. 3278 030a 1E4B ldr r3, .L116
  4512. 3279 030c 0022 movs r2, #0
  4513. 3280 030e 9A70 strb r2, [r3, #2]
  4514. 1058:user_src/soft_bms.c **** if(Bmspointer->bms_can_buf[0] == 0)
  4515. 3281 .loc 1 1058 35
  4516. 3282 0310 FB69 ldr r3, [r7, #28]
  4517. 3283 0312 9B7D ldrb r3, [r3, #22] @ zero_extendqisi2
  4518. 3284 .loc 1 1058 11
  4519. 3285 0314 002B cmp r3, #0
  4520. 3286 0316 06D1 bne .L103
  4521. 1059:user_src/soft_bms.c **** {
  4522. 1060:user_src/soft_bms.c **** start_msg.mos_status = true;
  4523. 3287 .loc 1 1060 34
  4524. 3288 0318 1A4B ldr r3, .L116
  4525. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 79
  4526. 3289 031a 0122 movs r2, #1
  4527. 3290 031c DA70 strb r2, [r3, #3]
  4528. 1061:user_src/soft_bms.c **** start_msg.Id_content = 1;
  4529. 3291 .loc 1 1061 34
  4530. 3292 031e 194B ldr r3, .L116
  4531. 3293 0320 0122 movs r2, #1
  4532. 3294 0322 9A71 strb r2, [r3, #6]
  4533. 3295 0324 02E0 b .L104
  4534. 3296 .L103:
  4535. 1062:user_src/soft_bms.c **** }
  4536. 1063:user_src/soft_bms.c **** else
  4537. 1064:user_src/soft_bms.c **** {
  4538. 1065:user_src/soft_bms.c **** start_msg.Id_content = 2;
  4539. 3297 .loc 1 1065 34
  4540. 3298 0326 174B ldr r3, .L116
  4541. 3299 0328 0222 movs r2, #2
  4542. 3300 032a 9A71 strb r2, [r3, #6]
  4543. 3301 .L104:
  4544. 1066:user_src/soft_bms.c **** }
  4545. 1067:user_src/soft_bms.c **** start_msg.Id = 3;
  4546. 3302 .loc 1 1067 22
  4547. 3303 032c 154B ldr r3, .L116
  4548. 3304 032e 0322 movs r2, #3
  4549. 3305 0330 5A71 strb r2, [r3, #5]
  4550. 1068:user_src/soft_bms.c **** start_msg.key_info_checking = true;
  4551. 3306 .loc 1 1068 37
  4552. 3307 0332 144B ldr r3, .L116
  4553. 3308 0334 0122 movs r2, #1
  4554. 3309 0336 5A70 strb r2, [r3, #1]
  4555. 1069:user_src/soft_bms.c ****
  4556. 1070:user_src/soft_bms.c **** break;
  4557. 3310 .loc 1 1070 9
  4558. 3311 0338 20E0 b .L99
  4559. 3312 .L91:
  4560. 1071:user_src/soft_bms.c **** case 0x08:
  4561. 1072:user_src/soft_bms.c **** start_msg.Id = 4;
  4562. 3313 .loc 1 1072 23
  4563. 3314 033a 124B ldr r3, .L116
  4564. 3315 033c 0422 movs r2, #4
  4565. 3316 033e 5A71 strb r2, [r3, #5]
  4566. 1073:user_src/soft_bms.c **** start_msg.Id_content = Bmspointer->bms_can_buf[0];
  4567. 3317 .loc 1 1073 56
  4568. 3318 0340 FB69 ldr r3, [r7, #28]
  4569. 3319 0342 9A7D ldrb r2, [r3, #22] @ zero_extendqisi2
  4570. 3320 .loc 1 1073 31
  4571. 3321 0344 0F4B ldr r3, .L116
  4572. 3322 0346 9A71 strb r2, [r3, #6]
  4573. 1074:user_src/soft_bms.c **** start_msg.key_info_checking = true;
  4574. 3323 .loc 1 1074 38
  4575. 3324 0348 0E4B ldr r3, .L116
  4576. 3325 034a 0122 movs r2, #1
  4577. 3326 034c 5A70 strb r2, [r3, #1]
  4578. 1075:user_src/soft_bms.c **** start_msg.mos_status = false;
  4579. 3327 .loc 1 1075 31
  4580. 3328 034e 0D4B ldr r3, .L116
  4581. 3329 0350 0022 movs r2, #0
  4582. 3330 0352 DA70 strb r2, [r3, #3]
  4583. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 80
  4584. 1076:user_src/soft_bms.c **** break;
  4585. 3331 .loc 1 1076 9
  4586. 3332 0354 12E0 b .L99
  4587. 3333 .L89:
  4588. 1077:user_src/soft_bms.c **** case 0x09:
  4589. 1078:user_src/soft_bms.c **** if(Bmspointer->bms_can_buf[0] == 0)
  4590. 3334 .loc 1 1078 35
  4591. 3335 0356 FB69 ldr r3, [r7, #28]
  4592. 3336 0358 9B7D ldrb r3, [r3, #22] @ zero_extendqisi2
  4593. 3337 .loc 1 1078 11
  4594. 3338 035a 002B cmp r3, #0
  4595. 3339 035c 0DD1 bne .L112
  4596. 1079:user_src/soft_bms.c **** {
  4597. 1080:user_src/soft_bms.c **** utc_send_time = 0;
  4598. 3340 .loc 1 1080 27
  4599. 3341 035e 0A4B ldr r3, .L116+4
  4600. 3342 0360 0022 movs r2, #0
  4601. 3343 0362 1A70 strb r2, [r3]
  4602. 1081:user_src/soft_bms.c **** }
  4603. 1082:user_src/soft_bms.c **** break;
  4604. 3344 .loc 1 1082 9
  4605. 3345 0364 09E0 b .L112
  4606. 3346 .L107:
  4607. 1083:user_src/soft_bms.c **** default:
  4608. 1084:user_src/soft_bms.c **** break;
  4609. 3347 .loc 1 1084 9
  4610. 3348 0366 00BF nop
  4611. 3349 0368 08E0 b .L113
  4612. 3350 .L108:
  4613. 1025:user_src/soft_bms.c **** case 0X02:
  4614. 3351 .loc 1 1025 9
  4615. 3352 036a 00BF nop
  4616. 3353 036c 06E0 b .L113
  4617. 3354 .L109:
  4618. 1032:user_src/soft_bms.c **** case 0X03:
  4619. 3355 .loc 1 1032 9
  4620. 3356 036e 00BF nop
  4621. 3357 0370 04E0 b .L113
  4622. 3358 .L110:
  4623. 1041:user_src/soft_bms.c **** case 0X04:
  4624. 3359 .loc 1 1041 9
  4625. 3360 0372 00BF nop
  4626. 3361 0374 02E0 b .L113
  4627. 3362 .L111:
  4628. 1054:user_src/soft_bms.c **** //秘钥是�匹�
  4629. 3363 .loc 1 1054 9
  4630. 3364 0376 00BF nop
  4631. 3365 0378 00E0 b .L113
  4632. 3366 .L112:
  4633. 1082:user_src/soft_bms.c **** default:
  4634. 3367 .loc 1 1082 9
  4635. 3368 037a 00BF nop
  4636. 3369 .L99:
  4637. 3370 .L113:
  4638. 1085:user_src/soft_bms.c **** }
  4639. 1086:user_src/soft_bms.c **** }
  4640. 3371 .loc 1 1086 1
  4641. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 81
  4642. 3372 037c 00BF nop
  4643. 3373 037e 2037 adds r7, r7, #32
  4644. 3374 .LCFI15:
  4645. 3375 .cfi_def_cfa_offset 8
  4646. 3376 0380 BD46 mov sp, r7
  4647. 3377 .LCFI16:
  4648. 3378 .cfi_def_cfa_register 13
  4649. 3379 @ sp needed
  4650. 3380 0382 80BD pop {r7, pc}
  4651. 3381 .L117:
  4652. 3382 .align 2
  4653. 3383 .L116:
  4654. 3384 0384 00000000 .word start_msg
  4655. 3385 0388 00000000 .word utc_send_time
  4656. 3386 .cfi_endproc
  4657. 3387 .LFE136:
  4658. 3389 .section .data.change_dev.5,"aw"
  4659. 3392 change_dev.5:
  4660. 3393 0000 01 .byte 1
  4661. 3394 .section .bss.bms_heart_time.4,"aw",%nobits
  4662. 3395 .align 2
  4663. 3398 bms_heart_time.4:
  4664. 3399 0000 00000000 .space 4
  4665. 3400 .section .bss.bms_time.3,"aw",%nobits
  4666. 3401 .align 2
  4667. 3404 bms_time.3:
  4668. 3405 0000 00000000 .space 4
  4669. 3406 .section .bss.bms_5hz_time.2,"aw",%nobits
  4670. 3407 .align 2
  4671. 3410 bms_5hz_time.2:
  4672. 3411 0000 00000000 .space 4
  4673. 3412 .section .bss.bms1_source_id.1,"aw",%nobits
  4674. 3413 .align 2
  4675. 3416 bms1_source_id.1:
  4676. 3417 0000 00000000 .space 4
  4677. 3418 .section .bss.pack_msg_id.0,"aw",%nobits
  4678. 3419 .align 2
  4679. 3422 pack_msg_id.0:
  4680. 3423 0000 00000000 .space 4
  4681. 3424 .text
  4682. 3425 .Letext0:
  4683. 3426 .file 2 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h"
  4684. 3427 .file 3 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
  4685. 3428 .file 4 "user_inc/common.h"
  4686. 3429 .file 5 "user_inc/soft_bms.h"
  4687. 3430 .file 6 "user_inc/soft_okcell.h"
  4688. 3431 .file 7 "user_inc/soft_tattu.h"
  4689. 3432 .file 8 "user_inc/soft_herewin.h"
  4690. 3433 .file 9 "user_inc/soft_p_2_c.h"
  4691. 3434 .file 10 "user_inc/soft_eft.h"
  4692. 3435 .file 11 "user_inc/soft_seed_device.h"
  4693. 3436 .file 12 "user_inc/soft_version.h"
  4694. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 82
  4695. DEFINED SYMBOLS
  4696. *ABS*:00000000 soft_bms.c
  4697. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:24 .bss.Device1:00000000 Device1
  4698. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:21 .bss.Device1:00000000 $d
  4699. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:31 .bss.Device2:00000000 Device2
  4700. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:28 .bss.Device2:00000000 $d
  4701. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:38 .data.bms_data:00000000 bms_data
  4702. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:35 .data.bms_data:00000000 $d
  4703. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:47 .data.bms_data2:00000000 bms_data2
  4704. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:44 .data.bms_data2:00000000 $d
  4705. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:52 .rodata:00000000 $d
  4706. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:68 .text.update_bms_data:00000000 $t
  4707. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:74 .text.update_bms_data:00000000 update_bms_data
  4708. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:444 .text.update_bms_data:000002b8 $d
  4709. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:463 .text.update_bms_data:000002fc $t
  4710. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:654 .text.update_bms_data:0000044c $d
  4711. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:664 .text.update_bms_data:0000046c $t
  4712. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:997 .text.update_bms_data:000006dc $d
  4713. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1005 .text.update_bms_data:000006f4 $t
  4714. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1240 .text.update_bms_data:000008bc $d
  4715. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1252 .text.update_bms_data:000008e4 $t
  4716. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1485 .text.update_bms_data:00000aa8 $d
  4717. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1496 .text.update_bms_data:00000acc $t
  4718. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1729 .text.update_bms_data:00000c84 $d
  4719. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:1740 .text.update_bms_data:00000ca8 $t
  4720. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2140 .text.update_bms_data:00000f74 $d
  4721. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2167 .data.utc_send_time:00000000 utc_send_time
  4722. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2170 .text.send_msg_to_VKbms:00000000 $t
  4723. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2176 .text.send_msg_to_VKbms:00000000 send_msg_to_VKbms
  4724. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2671 .text.send_msg_to_VKbms:000002c4 $d
  4725. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3392 .data.change_dev.5:00000000 change_dev.5
  4726. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3398 .bss.bms_heart_time.4:00000000 bms_heart_time.4
  4727. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2683 .text.bms_function:00000000 $t
  4728. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2689 .text.bms_function:00000000 bms_function
  4729. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2735 .text.bms_function:00000034 $d
  4730. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3404 .bss.bms_time.3:00000000 bms_time.3
  4731. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3410 .bss.bms_5hz_time.2:00000000 bms_5hz_time.2
  4732. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2745 .bss.bms_test:00000000 bms_test
  4733. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2742 .bss.bms_test:00000000 $d
  4734. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2752 .bss.bms_re:00000000 bms_re
  4735. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2749 .bss.bms_re:00000000 $d
  4736. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2758 .bss.fmu_send_vkbms_msgid:00000000 fmu_send_vkbms_msgid
  4737. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2759 .bss.fmu_send_vkbms_msgid:00000000 $d
  4738. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2761 .text.BMSCanRecvHookFunction:00000000 $t
  4739. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:2767 .text.BMSCanRecvHookFunction:00000000 BMSCanRecvHookFunction
  4740. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3137 .text.BMSCanRecvHookFunction:00000218 $d
  4741. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3146 .text.BMSCanRecvHookFunction:0000023c $t
  4742. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3245 .text.BMSCanRecvHookFunction:000002d0 $d
  4743. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3416 .bss.bms1_source_id.1:00000000 bms1_source_id.1
  4744. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3422 .bss.pack_msg_id.0:00000000 pack_msg_id.0
  4745. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3251 .text.BMSCanRecvHookFunction:000002e0 $t
  4746. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3384 .text.BMSCanRecvHookFunction:00000384 $d
  4747. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3395 .bss.bms_heart_time.4:00000000 $d
  4748. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3401 .bss.bms_time.3:00000000 $d
  4749. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3407 .bss.bms_5hz_time.2:00000000 $d
  4750. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3413 .bss.bms1_source_id.1:00000000 $d
  4751. C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s:3419 .bss.pack_msg_id.0:00000000 $d
  4752. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccA1lCvb.s page 83
  4753. UNDEFINED SYMBOLS
  4754. Check_dev_link
  4755. okcell_device1
  4756. okcell_device2
  4757. tattu_device1
  4758. tattu_device2
  4759. herewin_info
  4760. Herewin_Link
  4761. Dev
  4762. StrArrayNull
  4763. regist_dev_info
  4764. memset
  4765. dev_bms1
  4766. dev_bms2
  4767. memcpy
  4768. group_num
  4769. can_send_msg_normal
  4770. Get_Crc16
  4771. HAL_GetTick
  4772. start_msg
  4773. utc_time
  4774. Check_Timer_Ready
  4775. send_msg_to_okcell
  4776. send_msg_to_herewin