123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012 |
- <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
- <html><head>
- <title>Static Call Graph - [.\Objects\Ringzle.axf]</title></head>
- <body><HR>
- <H1>Static Call Graph for image .\Objects\Ringzle.axf</H1><HR>
- <BR><P>#<CALLGRAPH># ARM Linker, 5060750: Last Updated: Tue Aug 15 15:05:40 2023
- <BR><P>
- <H3>Maximum Stack Usage = 41112 bytes + Unknown(Cycles, Untraceable Function Pointers)</H3><H3>
- Call chain for Maximum Stack Depth:</H3>
- USART2_IRQHandler ⇒ write_json_config ⇒ WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- <P>
- <H3>
- Mutually Recursive functions
- </H3> <LI><a href="#[1c]">ADC0_1_IRQHandler</a> ⇒ <a href="#[1c]">ADC0_1_IRQHandler</a><BR>
- <LI><a href="#[d6]">cJSON_Delete</a> ⇒ <a href="#[d6]">cJSON_Delete</a><BR>
- <LI><a href="#[14e]">parse_object</a> ⇒ <a href="#[f4]">parse_value</a><BR>
- <LI><a href="#[149]">parse_array</a> ⇒ <a href="#[f4]">parse_value</a><BR>
- </UL>
- <P>
- <H3>
- Function Pointers
- </H3><UL>
- <LI><a href="#[1c]">ADC0_1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[39]">ADC2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[4]">BusFault_Handler</a> from gd32f10x_it.o(i.BusFault_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[20]">CAN0_EWMC_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1f]">CAN0_RX1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[15]">DMA0_Channel0_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[16]">DMA0_Channel1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[17]">DMA0_Channel2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[18]">DMA0_Channel3_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[19]">DMA0_Channel4_IRQHandler</a> from gd32f10x_it.o(i.DMA0_Channel4_IRQHandler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1a]">DMA0_Channel5_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1b]">DMA0_Channel6_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[42]">DMA1_Channel0_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[43]">DMA1_Channel1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[44]">DMA1_Channel2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[45]">DMA1_Channel3_4_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[7]">DebugMon_Handler</a> from gd32f10x_it.o(i.DebugMon_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3a]">EXMC_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[10]">EXTI0_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[32]">EXTI10_15_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[11]">EXTI1_IRQHandler</a> from key.o(i.EXTI1_IRQHandler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[12]">EXTI2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[13]">EXTI3_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[14]">EXTI4_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[21]">EXTI5_9_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[e]">FMC_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2]">HardFault_Handler</a> from gd32f10x_it.o(i.HardFault_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2a]">I2C0_ER_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[29]">I2C0_EV_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2c]">I2C1_ER_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2b]">I2C1_EV_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[b]">LVD_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3]">MemManage_Handler</a> from gd32f10x_it.o(i.MemManage_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1]">NMI_Handler</a> from gd32f10x_it.o(i.NMI_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[8]">PendSV_Handler</a> from gd32f10x_it.o(i.PendSV_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[f]">RCU_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[33]">RTC_Alarm_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[d]">RTC_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[0]">Reset_Handler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3b]">SDIO_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2d]">SPI0_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2e]">SPI1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3d]">SPI2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[6]">SVC_Handler</a> from gd32f10x_it.o(i.SVC_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[9]">SysTick_Handler</a> from gd32f10x_it.o(i.SysTick_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[47]">SystemInit</a> from system_gd32f10x.o(i.SystemInit) referenced from startup_gd32f10x_xd.o(.text)
- <LI><a href="#[c]">TAMPER_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[22]">TIMER0_BRK_TIMER8_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[25]">TIMER0_Channel_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[24]">TIMER0_TRG_CMT_TIMER10_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[23]">TIMER0_UP_TIMER9_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[26]">TIMER1_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[27]">TIMER2_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[28]">TIMER3_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3c]">TIMER4_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[40]">TIMER5_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[41]">TIMER6_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[35]">TIMER7_BRK_TIMER11_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[38]">TIMER7_Channel_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[37]">TIMER7_TRG_CMT_TIMER13_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[36]">TIMER7_UP_TIMER12_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3e]">UART3_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[3f]">UART4_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[2f]">USART0_IRQHandler</a> from gd32f10x_it.o(i.USART0_IRQHandler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[30]">USART1_IRQHandler</a> from gd32f10x_it.o(i.USART1_IRQHandler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[31]">USART2_IRQHandler</a> from pc.o(i.USART2_IRQHandler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1d]">USBD_HP_CAN0_TX_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[1e]">USBD_LP_CAN0_RX0_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[34]">USBD_WKUP_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[5]">UsageFault_Handler</a> from gd32f10x_it.o(i.UsageFault_Handler) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[a]">WWDGT_IRQHandler</a> from startup_gd32f10x_xd.o(.text) referenced from startup_gd32f10x_xd.o(RESET)
- <LI><a href="#[48]">__main</a> from entry.o(.ARM.Collect$$$$00000000) referenced from startup_gd32f10x_xd.o(.text)
- <LI><a href="#[4a]">_sbackspace</a> from _sgetc.o(.text) referenced 2 times from __0sscanf.o(.text)
- <LI><a href="#[4b]">_scanf_char_input</a> from scanf_char.o(.text) referenced from scanf_char.o(.text)
- <LI><a href="#[49]">_sgetc</a> from _sgetc.o(.text) referenced 2 times from __0sscanf.o(.text)
- <LI><a href="#[4f]">_snputc</a> from printfa.o(i._snputc) referenced from printfa.o(i.__0vsnprintf)
- <LI><a href="#[4e]">_sputc</a> from printfa.o(i._sputc) referenced from printfa.o(i.__0sprintf)
- <LI><a href="#[54]">dlt645_hw_read</a> from dlt645_port.o(i.dlt645_hw_read) referenced from dlt645_port.o(.data)
- <LI><a href="#[53]">dlt645_hw_write</a> from dlt645_port.o(i.dlt645_hw_write) referenced from dlt645_port.o(.data)
- <LI><a href="#[4d]">fputc</a> from log.o(i.fputc) referenced from printfa.o(i.__0printf)
- <LI><a href="#[51]">free</a> from mallocr.o(i.__free$realloc) referenced from cjson.o(.data)
- <LI><a href="#[4c]">isspace</a> from isspace_o.o(.text) referenced 2 times from scanf_char.o(.text)
- <LI><a href="#[46]">main</a> from main.o(i.main) referenced from entry9a.o(.ARM.Collect$$$$0000000B)
- <LI><a href="#[50]">malloc</a> from mallocr.o(i.__malloc$realloc) referenced from cjson.o(.data)
- <LI><a href="#[52]">realloc</a> from mallocr.o(i.realloc) referenced from cjson.o(.data)
- </UL>
- <P>
- <H3>
- Global Symbols
- </H3>
- <P><STRONG><a name="[48]"></a>__main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry.o(.ARM.Collect$$$$00000000))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(.text)
- </UL>
- <P><STRONG><a name="[167]"></a>_main_stk</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry2.o(.ARM.Collect$$$$00000001))
- <P><STRONG><a name="[55]"></a>_main_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
- <BR><BR>[Calls]<UL><LI><a href="#[56]">>></a> __scatterload
- </UL>
- <P><STRONG><a name="[7e]"></a>__main_after_scatterload</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry5.o(.ARM.Collect$$$$00000004))
- <BR><BR>[Called By]<UL><LI><a href="#[56]">>></a> __scatterload
- </UL>
- <P><STRONG><a name="[168]"></a>_main_clock</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry7b.o(.ARM.Collect$$$$00000008))
- <P><STRONG><a name="[169]"></a>_main_cpp_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry8b.o(.ARM.Collect$$$$0000000A))
- <P><STRONG><a name="[16a]"></a>_main_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry9a.o(.ARM.Collect$$$$0000000B))
- <P><STRONG><a name="[16b]"></a>__rt_final_cpp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry10a.o(.ARM.Collect$$$$0000000D))
- <P><STRONG><a name="[16c]"></a>__rt_final_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, entry11a.o(.ARM.Collect$$$$0000000F))
- <P><STRONG><a name="[0]"></a>Reset_Handler</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1c]"></a>ADC0_1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR><BR>[Calls]<UL><LI><a href="#[1c]">>></a> ADC0_1_IRQHandler
- </UL>
- <BR>[Called By]<UL><LI><a href="#[1c]">>></a> ADC0_1_IRQHandler
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[39]"></a>ADC2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[20]"></a>CAN0_EWMC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1f]"></a>CAN0_RX1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[15]"></a>DMA0_Channel0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[16]"></a>DMA0_Channel1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[17]"></a>DMA0_Channel2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[18]"></a>DMA0_Channel3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1a]"></a>DMA0_Channel5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1b]"></a>DMA0_Channel6_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[42]"></a>DMA1_Channel0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[43]"></a>DMA1_Channel1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[44]"></a>DMA1_Channel2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[45]"></a>DMA1_Channel3_4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3a]"></a>EXMC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[10]"></a>EXTI0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[32]"></a>EXTI10_15_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[12]"></a>EXTI2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[13]"></a>EXTI3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[14]"></a>EXTI4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[21]"></a>EXTI5_9_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[e]"></a>FMC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2a]"></a>I2C0_ER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[29]"></a>I2C0_EV_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2c]"></a>I2C1_ER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2b]"></a>I2C1_EV_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[b]"></a>LVD_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[f]"></a>RCU_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[33]"></a>RTC_Alarm_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[d]"></a>RTC_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3b]"></a>SDIO_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2d]"></a>SPI0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2e]"></a>SPI1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3d]"></a>SPI2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[c]"></a>TAMPER_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[22]"></a>TIMER0_BRK_TIMER8_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[25]"></a>TIMER0_Channel_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[24]"></a>TIMER0_TRG_CMT_TIMER10_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[23]"></a>TIMER0_UP_TIMER9_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[26]"></a>TIMER1_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[27]"></a>TIMER2_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[28]"></a>TIMER3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3c]"></a>TIMER4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[40]"></a>TIMER5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[41]"></a>TIMER6_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[35]"></a>TIMER7_BRK_TIMER11_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[38]"></a>TIMER7_Channel_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[37]"></a>TIMER7_TRG_CMT_TIMER13_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[36]"></a>TIMER7_UP_TIMER12_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3e]"></a>UART3_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[3f]"></a>UART4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1d]"></a>USBD_HP_CAN0_TX_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1e]"></a>USBD_LP_CAN0_RX0_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[34]"></a>USBD_WKUP_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[a]"></a>WWDGT_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_gd32f10x_xd.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[f6]"></a>tolower</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, tolower.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[f5]">>></a> case_insensitive_strcmp
- </UL>
- <P><STRONG><a name="[113]"></a>__aeabi_memcpy</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, memcpya.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[140]">>></a> mmodbus_readHoldingRegisters8i
- <LI><a href="#[54]">>></a> dlt645_hw_read
- <LI><a href="#[dd]">>></a> internal_alloc
- </UL>
- <P><STRONG><a name="[133]"></a>__aeabi_memcpy4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[158]">>></a> save_config_params
- <LI><a href="#[132]">>></a> load_config_params
- </UL>
- <P><STRONG><a name="[16d]"></a>__aeabi_memcpy8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memcpya.o(.text), UNUSED)
- <P><STRONG><a name="[58]"></a>__aeabi_memset</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, memseta.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[59]">>></a> _memset$wrapper
- <LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <P><STRONG><a name="[16e]"></a>__aeabi_memset4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
- <P><STRONG><a name="[16f]"></a>__aeabi_memset8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
- <P><STRONG><a name="[57]"></a>__aeabi_memclr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, memseta.o(.text))
- <BR><BR>[Calls]<UL><LI><a href="#[58]">>></a> __aeabi_memset
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a7]">>></a> MQTT_BUFFER_READ
- <LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[81]">>></a> Clear_DMA_Buffer
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- <LI><a href="#[46]">>></a> main
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- </UL>
- <P><STRONG><a name="[ef]"></a>__aeabi_memclr4</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[158]">>></a> save_config_params
- <LI><a href="#[132]">>></a> load_config_params
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[13a]">>></a> mmodbus_init
- <LI><a href="#[53]">>></a> dlt645_hw_write
- <LI><a href="#[10e]">>></a> dlt645_2007_read_data
- <LI><a href="#[108]">>></a> dlt645_1997_read_data
- <LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- <LI><a href="#[ee]">>></a> cJSON_New_Item
- </UL>
- <P><STRONG><a name="[170]"></a>__aeabi_memclr8</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, memseta.o(.text), UNUSED)
- <P><STRONG><a name="[59]"></a>_memset$wrapper</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, memseta.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[58]">>></a> __aeabi_memset
- </UL>
- <P><STRONG><a name="[ab]"></a>strstr</STRONG> (Thumb, 36 bytes, Stack size 12 bytes, strstr.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = strstr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[148]">>></a> parseStringField
- <LI><a href="#[145]">>></a> parseIntField
- <LI><a href="#[d2]">>></a> extract_data_from_buffer
- <LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[aa]">>></a> Receive_MQTT_DataPack
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[d0]">>></a> WaitField
- </UL>
- <P><STRONG><a name="[11f]"></a>strchr</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, strchr.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[d2]">>></a> extract_data_from_buffer
- </UL>
- <P><STRONG><a name="[86]"></a>strlen</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, strlen.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[148]">>></a> parseStringField
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[145]">>></a> parseIntField
- <LI><a href="#[9f]">>></a> MQTTSubTopic
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[82]">>></a> ConnectMQTTSever
- <LI><a href="#[aa]">>></a> Receive_MQTT_DataPack
- <LI><a href="#[c8]">>></a> write_json_config
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- <LI><a href="#[f0]">>></a> cJSON_ParseWithOpts
- </UL>
- <P><STRONG><a name="[130]"></a>strcmp</STRONG> (Thumb, 28 bytes, Stack size 8 bytes, strcmp.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = strcmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[ec]">>></a> get_object_item
- </UL>
- <P><STRONG><a name="[111]"></a>memcmp</STRONG> (Thumb, 26 bytes, Stack size 12 bytes, memcmp.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = memcmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[142]">>></a> mmodbus_writeHoldingRegister16i
- <LI><a href="#[141]">>></a> mmodbus_writeCoil
- <LI><a href="#[10c]">>></a> dlt645_common_check
- </UL>
- <P><STRONG><a name="[a8]"></a>strcpy</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, strcpy.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[a7]">>></a> MQTT_BUFFER_READ
- <LI><a href="#[d5]">>></a> processHTTPjson
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[151]"></a>strncmp</STRONG> (Thumb, 30 bytes, Stack size 12 bytes, strncmp.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = strncmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f2]">>></a> skip_utf8_bom
- <LI><a href="#[f4]">>></a> parse_value
- </UL>
- <P><STRONG><a name="[5a]"></a>__0sscanf</STRONG> (Thumb, 48 bytes, Stack size 72 bytes, __0sscanf.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 264<LI>Call Chain = __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[5b]">>></a> __vfscanf_char
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[d5]">>></a> processHTTPjson
- <LI><a href="#[148]">>></a> parseStringField
- <LI><a href="#[d2]">>></a> extract_data_from_buffer
- <LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[5c]"></a>_scanf_int</STRONG> (Thumb, 332 bytes, Stack size 56 bytes, _scanf_int.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = _scanf_int
- </UL>
- <BR>[Calls]<UL><LI><a href="#[5d]">>></a> _chval
- </UL>
- <BR>[Called By]<UL><LI><a href="#[79]">>></a> __vfscanf
- </UL>
- <P><STRONG><a name="[7f]"></a>_scanf_string</STRONG> (Thumb, 224 bytes, Stack size 56 bytes, _scanf_str.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = _scanf_string
- </UL>
- <BR>[Called By]<UL><LI><a href="#[79]">>></a> __vfscanf
- </UL>
- <P><STRONG><a name="[7b]"></a>_scanf_real</STRONG> (Thumb, 0 bytes, Stack size 104 bytes, scanf_fp.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = _scanf_real
- </UL>
- <BR>[Called By]<UL><LI><a href="#[79]">>></a> __vfscanf
- <LI><a href="#[7a]">>></a> _local_sscanf
- </UL>
- <P><STRONG><a name="[62]"></a>_scanf_really_real</STRONG> (Thumb, 556 bytes, Stack size 104 bytes, scanf_fp.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[64]">>></a> __aeabi_d2f
- <LI><a href="#[63]">>></a> _is_digit
- <LI><a href="#[5e]">>></a> _fp_value
- </UL>
- <P><STRONG><a name="[65]"></a>strtol</STRONG> (Thumb, 112 bytes, Stack size 32 bytes, strtol.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = strtol ⇒ _strtoul
- </UL>
- <BR>[Calls]<UL><LI><a href="#[67]">>></a> _strtoul
- <LI><a href="#[68]">>></a> __aeabi_errno_addr
- <LI><a href="#[66]">>></a> __rt_ctype_table
- </UL>
- <BR>[Called By]<UL><LI><a href="#[145]">>></a> parseIntField
- </UL>
- <P><STRONG><a name="[15b]"></a>__aeabi_fmul</STRONG> (Thumb, 100 bytes, Stack size 8 bytes, fmul.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_fmul
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[69]"></a>__aeabi_fdiv</STRONG> (Thumb, 124 bytes, Stack size 8 bytes, fdiv.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_fdiv
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6a]">>></a> _float_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[6b]"></a>__aeabi_dadd</STRONG> (Thumb, 322 bytes, Stack size 48 bytes, dadd.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6d]">>></a> __aeabi_lasr
- <LI><a href="#[6c]">>></a> __aeabi_llsl
- <LI><a href="#[6f]">>></a> _double_round
- <LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[71]">>></a> __aeabi_drsub
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[70]">>></a> __aeabi_dsub
- <LI><a href="#[dc]">>></a> __kernel_poly
- <LI><a href="#[df]">>></a> __mathlib_dbl_infnan2
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[70]"></a>__aeabi_dsub</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[71]"></a>__aeabi_drsub</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, dadd.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_drsub ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[60]"></a>__aeabi_dmul</STRONG> (Thumb, 228 bytes, Stack size 48 bytes, dmul.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __aeabi_dmul ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[dc]">>></a> __kernel_poly
- <LI><a href="#[5e]">>></a> _fp_value
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[61]"></a>__aeabi_ddiv</STRONG> (Thumb, 222 bytes, Stack size 32 bytes, ddiv.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __aeabi_ddiv ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6f]">>></a> _double_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- <LI><a href="#[e0]">>></a> __mathlib_dbl_invalid
- <LI><a href="#[de]">>></a> __mathlib_dbl_divzero
- <LI><a href="#[5e]">>></a> _fp_value
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[72]"></a>__aeabi_ui2f</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, ffltui.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = __aeabi_ui2f ⇒ _float_epilogue
- </UL>
- <BR>[Calls]<UL><LI><a href="#[73]">>></a> _float_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[74]"></a>__aeabi_i2d</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, dflti.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = __aeabi_i2d ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- </UL>
- <P><STRONG><a name="[75]"></a>__aeabi_ui2d</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, dfltui.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = __aeabi_ui2d ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- </UL>
- <P><STRONG><a name="[15c]"></a>__aeabi_f2iz</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, ffixi.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[76]"></a>__aeabi_d2iz</STRONG> (Thumb, 62 bytes, Stack size 16 bytes, dfixi.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __aeabi_d2iz
- </UL>
- <BR>[Calls]<UL><LI><a href="#[77]">>></a> __aeabi_llsr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[14a]">>></a> parse_number
- </UL>
- <P><STRONG><a name="[9e]"></a>__aeabi_f2d</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, f2d.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[9d]">>></a> MQTTPublish
- </UL>
- <P><STRONG><a name="[171]"></a>__aeabi_cdcmpeq</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, cdcmple.o(.text), UNUSED)
- <P><STRONG><a name="[14d]"></a>__aeabi_cdcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdcmple.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[14a]">>></a> parse_number
- </UL>
- <P><STRONG><a name="[e5]"></a>__aeabi_cdrcmple</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, cdrcmple.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- <LI><a href="#[14a]">>></a> parse_number
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[64]"></a>__aeabi_d2f</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, d2f.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = __aeabi_d2f
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6a]">>></a> _float_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- <LI><a href="#[62]">>></a> _scanf_really_real
- </UL>
- <P><STRONG><a name="[172]"></a>__aeabi_uidiv</STRONG> (Thumb, 0 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
- <P><STRONG><a name="[e8]"></a>__aeabi_uidivmod</STRONG> (Thumb, 44 bytes, Stack size 12 bytes, uidiv.o(.text), UNUSED)
- <BR><BR>[Called By]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[78]"></a>__aeabi_uldivmod</STRONG> (Thumb, 98 bytes, Stack size 40 bytes, uldiv.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[77]">>></a> __aeabi_llsr
- <LI><a href="#[6c]">>></a> __aeabi_llsl
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d9]">>></a> _printf_core
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[6c]"></a>__aeabi_llsl</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, llshl.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[78]">>></a> __aeabi_uldivmod
- <LI><a href="#[6e]">>></a> _double_epilogue
- <LI><a href="#[7d]">>></a> __aeabi_d2ulz
- </UL>
- <P><STRONG><a name="[173]"></a>_ll_shift_l</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llshl.o(.text), UNUSED)
- <P><STRONG><a name="[77]"></a>__aeabi_llsr</STRONG> (Thumb, 32 bytes, Stack size 0 bytes, llushr.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[76]">>></a> __aeabi_d2iz
- <LI><a href="#[78]">>></a> __aeabi_uldivmod
- <LI><a href="#[80]">>></a> _dsqrt
- <LI><a href="#[6e]">>></a> _double_epilogue
- <LI><a href="#[7d]">>></a> __aeabi_d2ulz
- </UL>
- <P><STRONG><a name="[174]"></a>_ll_ushift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llushr.o(.text), UNUSED)
- <P><STRONG><a name="[6d]"></a>__aeabi_lasr</STRONG> (Thumb, 36 bytes, Stack size 0 bytes, llsshr.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- </UL>
- <P><STRONG><a name="[175]"></a>_ll_sshift_r</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, llsshr.o(.text), UNUSED)
- <P><STRONG><a name="[66]"></a>__rt_ctype_table</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, ctype_o.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[4c]">>></a> isspace
- <LI><a href="#[65]">>></a> strtol
- </UL>
- <P><STRONG><a name="[4c]"></a>isspace</STRONG> (Thumb, 18 bytes, Stack size 8 bytes, isspace_o.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = isspace
- </UL>
- <BR>[Calls]<UL><LI><a href="#[66]">>></a> __rt_ctype_table
- </UL>
- <BR>[Address Reference Count : 2]<UL><LI> strtod.o(.text)
- <LI> scanf_char.o(.text)
- </UL>
- <P><STRONG><a name="[5d]"></a>_chval</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, _chval.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[67]">>></a> _strtoul
- <LI><a href="#[5c]">>></a> _scanf_int
- </UL>
- <P><STRONG><a name="[5b]"></a>__vfscanf_char</STRONG> (Thumb, 20 bytes, Stack size 0 bytes, scanf_char.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 192<LI>Call Chain = __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[79]">>></a> __vfscanf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[5a]">>></a> __0sscanf
- </UL>
- <P><STRONG><a name="[49]"></a>_sgetc</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, _sgetc.o(.text))
- <BR>[Address Reference Count : 2]<UL><LI> __0sscanf.o(.text)
- <LI> strtod.o(.text)
- </UL>
- <P><STRONG><a name="[4a]"></a>_sbackspace</STRONG> (Thumb, 34 bytes, Stack size 0 bytes, _sgetc.o(.text))
- <BR>[Address Reference Count : 2]<UL><LI> __0sscanf.o(.text)
- <LI> strtod.o(.text)
- </UL>
- <P><STRONG><a name="[67]"></a>_strtoul</STRONG> (Thumb, 158 bytes, Stack size 40 bytes, _strtoul.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _strtoul
- </UL>
- <BR>[Calls]<UL><LI><a href="#[5d]">>></a> _chval
- <LI><a href="#[68]">>></a> __aeabi_errno_addr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[65]">>></a> strtol
- </UL>
- <P><STRONG><a name="[7c]"></a>__strtod_int</STRONG> (Thumb, 90 bytes, Stack size 40 bytes, strtod.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 200<LI>Call Chain = __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[7a]">>></a> _local_sscanf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[14c]">>></a> strtod
- </UL>
- <P><STRONG><a name="[176]"></a>__I$use$fp</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, iusefp.o(.text), UNUSED)
- <P><STRONG><a name="[6a]"></a>_float_round</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, fepilogue.o(.text))
- <BR><BR>[Called By]<UL><LI><a href="#[64]">>></a> __aeabi_d2f
- <LI><a href="#[69]">>></a> __aeabi_fdiv
- </UL>
- <P><STRONG><a name="[73]"></a>_float_epilogue</STRONG> (Thumb, 92 bytes, Stack size 4 bytes, fepilogue.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 4<LI>Call Chain = _float_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[72]">>></a> __aeabi_ui2f
- </UL>
- <P><STRONG><a name="[6f]"></a>_double_round</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, depilogue.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = _double_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[80]">>></a> _dsqrt
- <LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <P><STRONG><a name="[6e]"></a>_double_epilogue</STRONG> (Thumb, 156 bytes, Stack size 32 bytes, depilogue.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[77]">>></a> __aeabi_llsr
- <LI><a href="#[6c]">>></a> __aeabi_llsl
- <LI><a href="#[6f]">>></a> _double_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[75]">>></a> __aeabi_ui2d
- <LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[74]">>></a> __aeabi_i2d
- <LI><a href="#[60]">>></a> __aeabi_dmul
- <LI><a href="#[5f]">>></a> __aeabi_ul2d
- </UL>
- <P><STRONG><a name="[e2]"></a>__ARM_scalbn</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, dscalb.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __ARM_scalbn
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- <LI><a href="#[e3]">>></a> __mathlib_dbl_underflow
- <LI><a href="#[e1]">>></a> __mathlib_dbl_overflow
- </UL>
- <P><STRONG><a name="[177]"></a>scalbn</STRONG> (Thumb, 0 bytes, Stack size 16 bytes, dscalb.o(.text), UNUSED)
- <P><STRONG><a name="[5f]"></a>__aeabi_ul2d</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, dfltul.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[6e]">>></a> _double_epilogue
- </UL>
- <BR>[Called By]<UL><LI><a href="#[5e]">>></a> _fp_value
- </UL>
- <P><STRONG><a name="[7d]"></a>__aeabi_d2ulz</STRONG> (Thumb, 48 bytes, Stack size 0 bytes, dfixul.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[77]">>></a> __aeabi_llsr
- <LI><a href="#[6c]">>></a> __aeabi_llsl
- </UL>
- <BR>[Called By]<UL><LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <P><STRONG><a name="[56]"></a>__scatterload</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, init.o(.text))
- <BR><BR>[Calls]<UL><LI><a href="#[7e]">>></a> __main_after_scatterload
- </UL>
- <BR>[Called By]<UL><LI><a href="#[55]">>></a> _main_scatterload
- </UL>
- <P><STRONG><a name="[178]"></a>__scatterload_rt2</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, init.o(.text), UNUSED)
- <P><STRONG><a name="[79]"></a>__vfscanf</STRONG> (Thumb, 808 bytes, Stack size 88 bytes, _scanf.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 192<LI>Call Chain = __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[7b]">>></a> _scanf_real
- <LI><a href="#[7f]">>></a> _scanf_string
- <LI><a href="#[5c]">>></a> _scanf_int
- </UL>
- <BR>[Called By]<UL><LI><a href="#[5b]">>></a> __vfscanf_char
- </UL>
- <P><STRONG><a name="[80]"></a>_dsqrt</STRONG> (Thumb, 162 bytes, Stack size 32 bytes, dsqrt.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = _dsqrt ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[77]">>></a> __aeabi_llsr
- <LI><a href="#[6f]">>></a> _double_round
- </UL>
- <BR>[Called By]<UL><LI><a href="#[153]">>></a> sqrt
- </UL>
- <P><STRONG><a name="[4]"></a>BusFault_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_it.o(i.BusFault_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[81]"></a>Clear_DMA_Buffer</STRONG> (Thumb, 20 bytes, Stack size 8 bytes, usart.o(i.Clear_DMA_Buffer))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = Clear_DMA_Buffer
- </UL>
- <BR>[Calls]<UL><LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[aa]">>></a> Receive_MQTT_DataPack
- <LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[82]"></a>ConnectMQTTSever</STRONG> (Thumb, 196 bytes, Stack size 192 bytes, ec800m.o(i.ConnectMQTTSever))
- <BR><BR>[Stack]<UL><LI>Max Depth = 228<LI>Call Chain = ConnectMQTTSever ⇒ WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[19]"></a>DMA0_Channel4_IRQHandler</STRONG> (Thumb, 14 bytes, Stack size 8 bytes, gd32f10x_it.o(i.DMA0_Channel4_IRQHandler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = DMA0_Channel4_IRQHandler ⇒ dma_interrupt_flag_clear
- </UL>
- <BR>[Calls]<UL><LI><a href="#[87]">>></a> dma_interrupt_flag_clear
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[7]"></a>DebugMon_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, gd32f10x_it.o(i.DebugMon_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[88]"></a>EC800MGetUrl</STRONG> (Thumb, 176 bytes, Stack size 112 bytes, ec800m.o(i.EC800MGetUrl))
- <BR><BR>[Stack]<UL><LI>Max Depth = 148<LI>Call Chain = EC800MGetUrl ⇒ WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[131]">>></a> http_load_config
- </UL>
- <P><STRONG><a name="[8a]"></a>EC800MPwoerOn</STRONG> (Thumb, 82 bytes, Stack size 8 bytes, ec800m.o(i.EC800MPwoerOn))
- <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = EC800MPwoerOn ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[91]">>></a> gd_pull_EC800M_rst_up
- <LI><a href="#[8f]">>></a> gd_pull_EC800M_rst_down
- <LI><a href="#[8e]">>></a> gd_pull_EC800M_pwr_up
- <LI><a href="#[90]">>></a> gd_pull_EC800M_pwr_down
- <LI><a href="#[89]">>></a> delay_1ms
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[83]"></a>EC800MSendCmd</STRONG> (Thumb, 48 bytes, Stack size 24 bytes, ec800m.o(i.EC800MSendCmd))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = EC800MSendCmd ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[93]">>></a> usart_flag_get
- <LI><a href="#[92]">>></a> usart_data_transmit
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[9f]">>></a> MQTTSubTopic
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[94]">>></a> EC800MSetPDP
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[82]">>></a> ConnectMQTTSever
- <LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[94]"></a>EC800MSetPDP</STRONG> (Thumb, 58 bytes, Stack size 8 bytes, ec800m.o(i.EC800MSetPDP))
- <BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = EC800MSetPDP ⇒ WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[89]">>></a> delay_1ms
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[95]"></a>EC800MWaitReady</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, ec800m.o(i.EC800MWaitReady))
- <BR><BR>[Stack]<UL><LI>Max Depth = 44<LI>Call Chain = EC800MWaitReady ⇒ WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[84]">>></a> WaitResponse
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[11]"></a>EXTI1_IRQHandler</STRONG> (Thumb, 78 bytes, Stack size 8 bytes, key.o(i.EXTI1_IRQHandler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = EXTI1_IRQHandler ⇒ clear_gateway_config_block ⇒ W25Q32_Erase64K ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[98]">>></a> clear_gateway_config_block
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[96]">>></a> exti_interrupt_flag_get
- <LI><a href="#[99]">>></a> exti_interrupt_flag_clear
- <LI><a href="#[97]">>></a> gpio_input_bit_get
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[2]"></a>HardFault_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_it.o(i.HardFault_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[9a]"></a>LogPrint</STRONG> (Thumb, 136 bytes, Stack size 296 bytes, log.o(i.LogPrint))
- <BR><BR>[Stack]<UL><LI>Max Depth = 320<LI>Call Chain = LogPrint ⇒ vsnprintf
- </UL>
- <BR>[Calls]<UL><LI><a href="#[9b]">>></a> vsnprintf
- <LI><a href="#[9c]">>></a> __2printf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[46]">>></a> main
- <LI><a href="#[131]">>></a> http_load_config
- </UL>
- <P><STRONG><a name="[9d]"></a>MQTTPublish</STRONG> (Thumb, 1348 bytes, Stack size 288 bytes, ec800m.o(i.MQTTPublish))
- <BR><BR>[Stack]<UL><LI>Max Depth = 344<LI>Call Chain = MQTTPublish ⇒ malloc ⇒ internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[9e]">>></a> __aeabi_f2d
- <LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[9f]"></a>MQTTSubTopic</STRONG> (Thumb, 64 bytes, Stack size 120 bytes, ec800m.o(i.MQTTSubTopic))
- <BR><BR>[Stack]<UL><LI>Max Depth = 156<LI>Call Chain = MQTTSubTopic ⇒ WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a0]"></a>MQTT_Alarm_clock</STRONG> (Thumb, 86 bytes, Stack size 16 bytes, main.o(i.MQTT_Alarm_clock))
- <BR><BR>[Stack]<UL><LI>Max Depth = 1272<LI>Call Chain = MQTT_Alarm_clock ⇒ parseMQTTData ⇒ dlt645_read_data ⇒ dlt645_2007_read_data ⇒ dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[a2]">>></a> dlt645_read
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[a3]">>></a> gd_eval_led_toggle
- <LI><a href="#[a5]">>></a> check_ota_event
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a7]"></a>MQTT_BUFFER_READ</STRONG> (Thumb, 114 bytes, Stack size 24 bytes, mqttrecv.o(i.MQTT_BUFFER_READ))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = MQTT_BUFFER_READ
- </UL>
- <BR>[Calls]<UL><LI><a href="#[a9]">>></a> ring_buffer_read
- <LI><a href="#[a8]">>></a> strcpy
- <LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- </UL>
- <P><STRONG><a name="[3]"></a>MemManage_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_it.o(i.MemManage_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[1]"></a>NMI_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, gd32f10x_it.o(i.NMI_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[8]"></a>PendSV_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, gd32f10x_it.o(i.PendSV_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[aa]"></a>Receive_MQTT_DataPack</STRONG> (Thumb, 76 bytes, Stack size 8 bytes, mqttrecv.o(i.Receive_MQTT_DataPack))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = Receive_MQTT_DataPack ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[81]">>></a> Clear_DMA_Buffer
- <LI><a href="#[ac]">>></a> ring_buffer_write
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[ab]">>></a> strstr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- </UL>
- <P><STRONG><a name="[ad]"></a>SPI0_Init</STRONG> (Thumb, 94 bytes, Stack size 32 bytes, spi.o(i.SPI0_Init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = SPI0_Init ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[af]">>></a> spi_init
- <LI><a href="#[ae]">>></a> spi_i2s_deinit
- <LI><a href="#[b0]">>></a> spi_enable
- </UL>
- <BR>[Called By]<UL><LI><a href="#[cd]">>></a> W25Q32_Init
- </UL>
- <P><STRONG><a name="[b1]"></a>SPI0_Read</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, spi.o(i.SPI0_Read))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = SPI0_Read ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <BR>[Called By]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- </UL>
- <P><STRONG><a name="[b2]"></a>SPI0_ReadWriteByte</STRONG> (Thumb, 50 bytes, Stack size 8 bytes, spi.o(i.SPI0_ReadWriteByte))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[b3]">>></a> spi_i2s_flag_get
- <LI><a href="#[b4]">>></a> spi_i2s_data_transmit
- <LI><a href="#[b5]">>></a> spi_i2s_data_receive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- <LI><a href="#[b6]">>></a> SPI0_Write
- <LI><a href="#[b1]">>></a> SPI0_Read
- </UL>
- <P><STRONG><a name="[b6]"></a>SPI0_Write</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, spi.o(i.SPI0_Write))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = SPI0_Write ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <BR>[Called By]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- <LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- </UL>
- <P><STRONG><a name="[6]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, gd32f10x_it.o(i.SVC_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[9]"></a>SysTick_Handler</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, gd32f10x_it.o(i.SysTick_Handler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SysTick_Handler
- </UL>
- <BR>[Calls]<UL><LI><a href="#[b8]">>></a> runtime_increment
- <LI><a href="#[b7]">>></a> delay_decrement
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[47]"></a>SystemInit</STRONG> (Thumb, 198 bytes, Stack size 8 bytes, system_gd32f10x.o(i.SystemInit))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = SystemInit ⇒ system_clock_config
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ba]">>></a> nvic_vector_table_set
- <LI><a href="#[b9]">>></a> system_clock_config
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(.text)
- </UL>
- <P><STRONG><a name="[2f]"></a>USART0_IRQHandler</STRONG> (Thumb, 102 bytes, Stack size 8 bytes, gd32f10x_it.o(i.USART0_IRQHandler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = USART0_IRQHandler ⇒ Receive_MQTT_DataPack ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[bb]">>></a> usart_interrupt_flag_get
- <LI><a href="#[bc]">>></a> usart_interrupt_flag_clear
- <LI><a href="#[bd]">>></a> usart_data_receive
- <LI><a href="#[bf]">>></a> dma_transfer_number_get
- <LI><a href="#[c1]">>></a> dma_transfer_number_config
- <LI><a href="#[c0]">>></a> dma_memory_address_config
- <LI><a href="#[c2]">>></a> dma_channel_enable
- <LI><a href="#[be]">>></a> dma_channel_disable
- <LI><a href="#[aa]">>></a> Receive_MQTT_DataPack
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[30]"></a>USART1_IRQHandler</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, gd32f10x_it.o(i.USART1_IRQHandler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = USART1_IRQHandler ⇒ mmodbus_callback ⇒ usart_interrupt_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[c3]">>></a> mmodbus_callback
- <LI><a href="#[c4]">>></a> dlt_callback
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[31]"></a>USART2_IRQHandler</STRONG> (Thumb, 400 bytes, Stack size 8 bytes, pc.o(i.USART2_IRQHandler))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41112<LI>Call Chain = USART2_IRQHandler ⇒ write_json_config ⇒ WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[bb]">>></a> usart_interrupt_flag_get
- <LI><a href="#[bc]">>></a> usart_interrupt_flag_clear
- <LI><a href="#[bd]">>></a> usart_data_receive
- <LI><a href="#[c2]">>></a> dma_channel_enable
- <LI><a href="#[be]">>></a> dma_channel_disable
- <LI><a href="#[c8]">>></a> write_json_config
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[5]"></a>UsageFault_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_it.o(i.UsageFault_Handler))
- <BR>[Address Reference Count : 1]<UL><LI> startup_gd32f10x_xd.o(RESET)
- </UL>
- <P><STRONG><a name="[c9]"></a>W25Q32_Enable</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, w25q32.o(i.W25Q32_Enable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <BR>[Called By]<UL><LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- </UL>
- <P><STRONG><a name="[cc]"></a>W25Q32_Erase64K</STRONG> (Thumb, 70 bytes, Stack size 16 bytes, w25q32.o(i.W25Q32_Erase64K))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = W25Q32_Erase64K ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- <LI><a href="#[b6]">>></a> SPI0_Write
- </UL>
- <BR>[Called By]<UL><LI><a href="#[98]">>></a> clear_gateway_config_block
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[a5]">>></a> check_ota_event
- </UL>
- <P><STRONG><a name="[cd]"></a>W25Q32_Init</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, w25q32.o(i.W25Q32_Init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 60<LI>Call Chain = W25Q32_Init ⇒ SPI0_Init ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[ce]"></a>W25Q32_PageWrite</STRONG> (Thumb, 80 bytes, Stack size 16 bytes, w25q32.o(i.W25Q32_PageWrite))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- <LI><a href="#[b6]">>></a> SPI0_Write
- </UL>
- <BR>[Called By]<UL><LI><a href="#[15d]">>></a> write_struct_to_flash
- <LI><a href="#[f7]">>></a> xmodem
- </UL>
- <P><STRONG><a name="[cf]"></a>W25Q32_Read</STRONG> (Thumb, 70 bytes, Stack size 24 bytes, w25q32.o(i.W25Q32_Read))
- <BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = W25Q32_Read ⇒ SPI0_Write ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[b6]">>></a> SPI0_Write
- <LI><a href="#[b1]">>></a> SPI0_Read
- </UL>
- <BR>[Called By]<UL><LI><a href="#[132]">>></a> load_config_params
- </UL>
- <P><STRONG><a name="[ca]"></a>W25Q32_WaitBusy</STRONG> (Thumb, 44 bytes, Stack size 8 bytes, w25q32.o(i.W25Q32_WaitBusy))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <BR>[Called By]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- <LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- </UL>
- <P><STRONG><a name="[d0]"></a>WaitField</STRONG> (Thumb, 74 bytes, Stack size 24 bytes, pc.o(i.WaitField))
- <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = WaitField ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[ab]">>></a> strstr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c6]">>></a> readSIMCARD
- </UL>
- <P><STRONG><a name="[d1]"></a>WaitForUpData</STRONG> (Thumb, 140 bytes, Stack size 24 bytes, parsedevicemessage.o(i.WaitForUpData))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41088<LI>Call Chain = WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d4]">>></a> cJSON_Parse
- <LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[d5]">>></a> processHTTPjson
- <LI><a href="#[d2]">>></a> extract_data_from_buffer
- <LI><a href="#[d3]">>></a> checksum
- <LI><a href="#[81]">>></a> Clear_DMA_Buffer
- <LI><a href="#[9a]">>></a> LogPrint
- <LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c8]">>></a> write_json_config
- <LI><a href="#[131]">>></a> http_load_config
- </UL>
- <P><STRONG><a name="[84]"></a>WaitResponse</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, ec800m.o(i.WaitResponse))
- <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = WaitResponse ⇒ strstr
- </UL>
- <BR>[Calls]<UL><LI><a href="#[81]">>></a> Clear_DMA_Buffer
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[ab]">>></a> strstr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[9f]">>></a> MQTTSubTopic
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[95]">>></a> EC800MWaitReady
- <LI><a href="#[94]">>></a> EC800MSetPDP
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[82]">>></a> ConnectMQTTSever
- </UL>
- <P><STRONG><a name="[166]"></a>Xmodem_CRC16</STRONG> (Thumb, 68 bytes, Stack size 16 bytes, otaevent.o(i.Xmodem_CRC16))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = Xmodem_CRC16
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f7]">>></a> xmodem
- </UL>
- <P><STRONG><a name="[d8]"></a>__0printf</STRONG> (Thumb, 22 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[179]"></a>__1printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)
- <P><STRONG><a name="[9c]"></a>__2printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2printf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[9a]">>></a> LogPrint
- </UL>
- <P><STRONG><a name="[17a]"></a>__c89printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)
- <P><STRONG><a name="[17b]"></a>printf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0printf), UNUSED)
- <P><STRONG><a name="[da]"></a>__0sprintf</STRONG> (Thumb, 34 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[4e]">>></a> _sputc
- <LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[17c]"></a>__1sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
- <P><STRONG><a name="[85]"></a>__2sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[9f]">>></a> MQTTSubTopic
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[82]">>></a> ConnectMQTTSever
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[17d]"></a>__c89sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
- <P><STRONG><a name="[17e]"></a>sprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0sprintf), UNUSED)
- <P><STRONG><a name="[db]"></a>__0vsnprintf</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[17f]"></a>__1vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
- <P><STRONG><a name="[180]"></a>__2vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
- <P><STRONG><a name="[181]"></a>__c89vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf), UNUSED)
- <P><STRONG><a name="[9b]"></a>vsnprintf</STRONG> (Thumb, 0 bytes, Stack size 24 bytes, printfa.o(i.__0vsnprintf))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = vsnprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[9a]">>></a> LogPrint
- </UL>
- <P><STRONG><a name="[154]"></a>__ARM_fpclassify</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, fpclassify.o(i.__ARM_fpclassify))
- <BR><BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[68]"></a>__aeabi_errno_addr</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr))
- <BR><BR>[Called By]<UL><LI><a href="#[67]">>></a> _strtoul
- <LI><a href="#[65]">>></a> strtol
- </UL>
- <P><STRONG><a name="[182]"></a>__rt_errno_addr</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, errno.o(i.__aeabi_errno_addr), UNUSED)
- <P><STRONG><a name="[51]"></a>free</STRONG> (Thumb, 88 bytes, Stack size 12 bytes, mallocr.o(i.__free$realloc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = free
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[46]">>></a> main
- <LI><a href="#[52]">>></a> realloc
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> cjson.o(.data)
- </UL>
- <P><STRONG><a name="[dc]"></a>__kernel_poly</STRONG> (Thumb, 170 bytes, Stack size 24 bytes, poly.o(i.__kernel_poly))
- <BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[60]">>></a> __aeabi_dmul
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[50]"></a>malloc</STRONG> (Thumb, 64 bytes, Stack size 32 bytes, mallocr.o(i.__malloc$realloc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = malloc ⇒ internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[dd]">>></a> internal_alloc
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[46]">>></a> main
- <LI><a href="#[52]">>></a> realloc
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> cjson.o(.data)
- </UL>
- <P><STRONG><a name="[de]"></a>__mathlib_dbl_divzero</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, dunder.o(i.__mathlib_dbl_divzero))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __mathlib_dbl_divzero ⇒ __aeabi_ddiv ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[df]"></a>__mathlib_dbl_infnan2</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, dunder.o(i.__mathlib_dbl_infnan2))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = __mathlib_dbl_infnan2 ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[6b]">>></a> __aeabi_dadd
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[e0]"></a>__mathlib_dbl_invalid</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, dunder.o(i.__mathlib_dbl_invalid))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = __mathlib_dbl_invalid ⇒ __aeabi_ddiv ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[e1]"></a>__mathlib_dbl_overflow</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, dunder.o(i.__mathlib_dbl_overflow))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __mathlib_dbl_overflow ⇒ __ARM_scalbn
- </UL>
- <BR>[Calls]<UL><LI><a href="#[e2]">>></a> __ARM_scalbn
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[e3]"></a>__mathlib_dbl_underflow</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, dunder.o(i.__mathlib_dbl_underflow))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = __mathlib_dbl_underflow ⇒ __ARM_scalbn
- </UL>
- <BR>[Calls]<UL><LI><a href="#[e2]">>></a> __ARM_scalbn
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[183]"></a>__scatterload_copy</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_copy), UNUSED)
- <P><STRONG><a name="[184]"></a>__scatterload_null</STRONG> (Thumb, 2 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_null), UNUSED)
- <P><STRONG><a name="[185]"></a>__scatterload_zeroinit</STRONG> (Thumb, 14 bytes, Stack size unknown bytes, handlers.o(i.__scatterload_zeroinit), UNUSED)
- <P><STRONG><a name="[152]"></a>__set_errno</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, errno.o(i.__set_errno))
- <BR><BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- <LI><a href="#[153]">>></a> sqrt
- </UL>
- <P><STRONG><a name="[110]"></a>_crc</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, dlt645_data.o(i._crc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = _crc
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10c]">>></a> dlt645_common_check
- <LI><a href="#[109]">>></a> dlt645_send_msg
- </UL>
- <P><STRONG><a name="[63]"></a>_is_digit</STRONG> (Thumb, 14 bytes, Stack size 0 bytes, scanf_fp.o(i._is_digit), UNUSED)
- <BR><BR>[Called By]<UL><LI><a href="#[62]">>></a> _scanf_really_real
- </UL>
- <P><STRONG><a name="[d6]"></a>cJSON_Delete</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, cjson.o(i.cJSON_Delete))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16 + In Cycle
- <LI>Call Chain = cJSON_Delete ⇒ cJSON_Delete (Cycle)
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d6]">>></a> cJSON_Delete
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- <LI><a href="#[14e]">>></a> parse_object
- <LI><a href="#[149]">>></a> parse_array
- </UL>
- <P><STRONG><a name="[e9]"></a>cJSON_GetArrayItem</STRONG> (Thumb, 24 bytes, Stack size 16 bytes, cjson.o(i.cJSON_GetArrayItem))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = cJSON_GetArrayItem
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ea]">>></a> get_array_item
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[155]"></a>cJSON_GetArraySize</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, cjson.o(i.cJSON_GetArraySize))
- <BR><BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[eb]"></a>cJSON_GetObjectItem</STRONG> (Thumb, 18 bytes, Stack size 16 bytes, cjson.o(i.cJSON_GetObjectItem))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = cJSON_GetObjectItem ⇒ get_object_item ⇒ case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ec]">>></a> get_object_item
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[ed]"></a>cJSON_GetObjectItemCaseSensitive</STRONG> (Thumb, 18 bytes, Stack size 16 bytes, cjson.o(i.cJSON_GetObjectItemCaseSensitive))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = cJSON_GetObjectItemCaseSensitive ⇒ get_object_item ⇒ case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ec]">>></a> get_object_item
- </UL>
- <BR>[Called By]<UL><LI><a href="#[146]">>></a> processStringData
- <LI><a href="#[147]">>></a> processIntData
- </UL>
- <P><STRONG><a name="[156]"></a>cJSON_IsArray</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, cjson.o(i.cJSON_IsArray))
- <BR><BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[159]"></a>cJSON_IsNumber</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, cjson.o(i.cJSON_IsNumber))
- <BR><BR>[Called By]<UL><LI><a href="#[147]">>></a> processIntData
- </UL>
- <P><STRONG><a name="[157]"></a>cJSON_IsObject</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, cjson.o(i.cJSON_IsObject))
- <BR><BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[15a]"></a>cJSON_IsString</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, cjson.o(i.cJSON_IsString))
- <BR><BR>[Called By]<UL><LI><a href="#[146]">>></a> processStringData
- </UL>
- <P><STRONG><a name="[d4]"></a>cJSON_Parse</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, cjson.o(i.cJSON_Parse))
- <BR><BR>[Stack]<UL><LI>Max Depth = 432<LI>Call Chain = cJSON_Parse ⇒ cJSON_ParseWithOpts ⇒ cJSON_ParseWithLengthOpts ⇒ parse_value ⇒ parse_number ⇒ strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[f0]">>></a> cJSON_ParseWithOpts
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[d1]">>></a> WaitForUpData
- </UL>
- <P><STRONG><a name="[f1]"></a>cJSON_ParseWithLengthOpts</STRONG> (Thumb, 204 bytes, Stack size 72 bytes, cjson.o(i.cJSON_ParseWithLengthOpts))
- <BR><BR>[Stack]<UL><LI>Max Depth = 400<LI>Call Chain = cJSON_ParseWithLengthOpts ⇒ parse_value ⇒ parse_number ⇒ strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[f2]">>></a> skip_utf8_bom
- <LI><a href="#[f4]">>></a> parse_value
- <LI><a href="#[ee]">>></a> cJSON_New_Item
- <LI><a href="#[f3]">>></a> buffer_skip_whitespace
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f0]">>></a> cJSON_ParseWithOpts
- </UL>
- <P><STRONG><a name="[f0]"></a>cJSON_ParseWithOpts</STRONG> (Thumb, 40 bytes, Stack size 24 bytes, cjson.o(i.cJSON_ParseWithOpts))
- <BR><BR>[Stack]<UL><LI>Max Depth = 424<LI>Call Chain = cJSON_ParseWithOpts ⇒ cJSON_ParseWithLengthOpts ⇒ parse_value ⇒ parse_number ⇒ strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[86]">>></a> strlen
- <LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d4]">>></a> cJSON_Parse
- </UL>
- <P><STRONG><a name="[a5]"></a>check_ota_event</STRONG> (Thumb, 72 bytes, Stack size 8 bytes, otaevent.o(i.check_ota_event))
- <BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = check_ota_event ⇒ xmodem ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[cc]">>></a> W25Q32_Erase64K
- <LI><a href="#[f7]">>></a> xmodem
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- <LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[98]"></a>clear_gateway_config_block</STRONG> (Thumb, 10 bytes, Stack size 8 bytes, device_message.o(i.clear_gateway_config_block))
- <BR><BR>[Stack]<UL><LI>Max Depth = 48<LI>Call Chain = clear_gateway_config_block ⇒ W25Q32_Erase64K ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[cc]">>></a> W25Q32_Erase64K
- </UL>
- <BR>[Called By]<UL><LI><a href="#[158]">>></a> save_config_params
- <LI><a href="#[11]">>></a> EXTI1_IRQHandler
- </UL>
- <P><STRONG><a name="[f8]"></a>config_485_port</STRONG> (Thumb, 242 bytes, Stack size 40 bytes, usart.o(i.config_485_port))
- <BR><BR>[Stack]<UL><LI>Max Depth = 152<LI>Call Chain = config_485_port ⇒ usart_baudrate_set ⇒ rcu_clock_freq_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[fa]">>></a> usart_word_length_set
- <LI><a href="#[100]">>></a> usart_transmit_config
- <LI><a href="#[fb]">>></a> usart_stop_bit_set
- <LI><a href="#[ff]">>></a> usart_receive_config
- <LI><a href="#[fc]">>></a> usart_parity_config
- <LI><a href="#[102]">>></a> usart_interrupt_enable
- <LI><a href="#[fd]">>></a> usart_hardware_flow_rts_config
- <LI><a href="#[fe]">>></a> usart_hardware_flow_cts_config
- <LI><a href="#[103]">>></a> usart_flag_clear
- <LI><a href="#[101]">>></a> usart_enable
- <LI><a href="#[f9]">>></a> usart_baudrate_set
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[104]"></a>data_package_translate_to_int</STRONG> (Thumb, 254 bytes, Stack size 80 bytes, dlt645_data.o(i.data_package_translate_to_int))
- <BR><BR>[Stack]<UL><LI>Max Depth = 320<LI>Call Chain = data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[75]">>></a> __aeabi_ui2d
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[74]">>></a> __aeabi_i2d
- <LI><a href="#[60]">>></a> __aeabi_dmul
- <LI><a href="#[76]">>></a> __aeabi_d2iz
- </UL>
- <BR>[Called By]<UL><LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- </UL>
- <P><STRONG><a name="[89]"></a>delay_1ms</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, systick.o(i.delay_1ms))
- <BR><BR>[Called By]<UL><LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[9d]">>></a> MQTTPublish
- <LI><a href="#[94]">>></a> EC800MSetPDP
- <LI><a href="#[8a]">>></a> EC800MPwoerOn
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[d0]">>></a> WaitField
- <LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[11]">>></a> EXTI1_IRQHandler
- <LI><a href="#[53]">>></a> dlt645_hw_write
- </UL>
- <P><STRONG><a name="[b7]"></a>delay_decrement</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, systick.o(i.delay_decrement))
- <BR><BR>[Called By]<UL><LI><a href="#[9]">>></a> SysTick_Handler
- </UL>
- <P><STRONG><a name="[108]"></a>dlt645_1997_read_data</STRONG> (Thumb, 152 bytes, Stack size 104 bytes, dlt645_1997.o(i.dlt645_1997_read_data))
- <BR><BR>[Stack]<UL><LI>Max Depth = 520<LI>Call Chain = dlt645_1997_read_data ⇒ dlt645_1997_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[106]">>></a> dlt645_1997_parsing_data
- <LI><a href="#[109]">>></a> dlt645_send_msg
- <LI><a href="#[10a]">>></a> dlt645_receive_msg
- </UL>
- <BR>[Called By]<UL><LI><a href="#[116]">>></a> dlt645_read_data
- </UL>
- <P><STRONG><a name="[10b]"></a>dlt645_1997_recv_check</STRONG> (Thumb, 82 bytes, Stack size 40 bytes, dlt645_1997.o(i.dlt645_1997_recv_check))
- <BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = dlt645_1997_recv_check ⇒ dlt645_common_check ⇒ memcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[10c]">>></a> dlt645_common_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10a]">>></a> dlt645_receive_msg
- </UL>
- <P><STRONG><a name="[10d]"></a>dlt645_2007_parsing_data</STRONG> (Thumb, 888 bytes, Stack size 24 bytes, dlt645_2007.o(i.dlt645_2007_parsing_data))
- <BR><BR>[Stack]<UL><LI>Max Depth = 416<LI>Call Chain = dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10e]">>></a> dlt645_2007_read_data
- </UL>
- <P><STRONG><a name="[10e]"></a>dlt645_2007_read_data</STRONG> (Thumb, 174 bytes, Stack size 104 bytes, dlt645_2007.o(i.dlt645_2007_read_data))
- <BR><BR>[Stack]<UL><LI>Max Depth = 520<LI>Call Chain = dlt645_2007_read_data ⇒ dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[10d]">>></a> dlt645_2007_parsing_data
- <LI><a href="#[109]">>></a> dlt645_send_msg
- <LI><a href="#[10a]">>></a> dlt645_receive_msg
- </UL>
- <BR>[Called By]<UL><LI><a href="#[116]">>></a> dlt645_read_data
- </UL>
- <P><STRONG><a name="[10f]"></a>dlt645_2007_recv_check</STRONG> (Thumb, 84 bytes, Stack size 40 bytes, dlt645_2007.o(i.dlt645_2007_recv_check))
- <BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = dlt645_2007_recv_check ⇒ dlt645_common_check ⇒ memcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[10c]">>></a> dlt645_common_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10a]">>></a> dlt645_receive_msg
- </UL>
- <P><STRONG><a name="[10c]"></a>dlt645_common_check</STRONG> (Thumb, 124 bytes, Stack size 24 bytes, dlt645_data.o(i.dlt645_common_check))
- <BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = dlt645_common_check ⇒ memcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[111]">>></a> memcmp
- <LI><a href="#[110]">>></a> _crc
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10f]">>></a> dlt645_2007_recv_check
- <LI><a href="#[10b]">>></a> dlt645_1997_recv_check
- </UL>
- <P><STRONG><a name="[107]"></a>dlt645_data_parse_by_format_to_float</STRONG> (Thumb, 136 bytes, Stack size 72 bytes, dlt645_data.o(i.dlt645_data_parse_by_format_to_float))
- <BR><BR>[Stack]<UL><LI>Max Depth = 392<LI>Call Chain = dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[64]">>></a> __aeabi_d2f
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[74]">>></a> __aeabi_i2d
- </UL>
- <BR>[Called By]<UL><LI><a href="#[106]">>></a> dlt645_1997_parsing_data
- <LI><a href="#[10d]">>></a> dlt645_2007_parsing_data
- </UL>
- <P><STRONG><a name="[114]"></a>dlt645_init</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, dlt645_port.o(i.dlt645_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = dlt645_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a2]"></a>dlt645_read</STRONG> (Thumb, 320 bytes, Stack size 32 bytes, parsedevicemessage.o(i.dlt645_read))
- <BR><BR>[Stack]<UL><LI>Max Depth = 576<LI>Call Chain = dlt645_read ⇒ dlt645_read_data ⇒ dlt645_2007_read_data ⇒ dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- <LI><a href="#[115]">>></a> dlt645_set_addr
- <LI><a href="#[116]">>></a> dlt645_read_data
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[116]"></a>dlt645_read_data</STRONG> (Thumb, 62 bytes, Stack size 24 bytes, dlt645.o(i.dlt645_read_data))
- <BR><BR>[Stack]<UL><LI>Max Depth = 544<LI>Call Chain = dlt645_read_data ⇒ dlt645_2007_read_data ⇒ dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[10e]">>></a> dlt645_2007_read_data
- <LI><a href="#[108]">>></a> dlt645_1997_read_data
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a2]">>></a> dlt645_read
- </UL>
- <P><STRONG><a name="[10a]"></a>dlt645_receive_msg</STRONG> (Thumb, 70 bytes, Stack size 32 bytes, dlt645.o(i.dlt645_receive_msg))
- <BR><BR>[Stack]<UL><LI>Max Depth = 108<LI>Call Chain = dlt645_receive_msg ⇒ dlt645_2007_recv_check ⇒ dlt645_common_check ⇒ memcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[10f]">>></a> dlt645_2007_recv_check
- <LI><a href="#[10b]">>></a> dlt645_1997_recv_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10e]">>></a> dlt645_2007_read_data
- <LI><a href="#[108]">>></a> dlt645_1997_read_data
- </UL>
- <P><STRONG><a name="[109]"></a>dlt645_send_msg</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, dlt645.o(i.dlt645_send_msg))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = dlt645_send_msg ⇒ _crc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[110]">>></a> _crc
- </UL>
- <BR>[Called By]<UL><LI><a href="#[10e]">>></a> dlt645_2007_read_data
- <LI><a href="#[108]">>></a> dlt645_1997_read_data
- </UL>
- <P><STRONG><a name="[115]"></a>dlt645_set_addr</STRONG> (Thumb, 42 bytes, Stack size 20 bytes, dlt645.o(i.dlt645_set_addr))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = dlt645_set_addr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a2]">>></a> dlt645_read
- </UL>
- <P><STRONG><a name="[c4]"></a>dlt_callback</STRONG> (Thumb, 118 bytes, Stack size 8 bytes, dlt645_port.o(i.dlt_callback))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = dlt_callback ⇒ usart_interrupt_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[bb]">>></a> usart_interrupt_flag_get
- <LI><a href="#[bc]">>></a> usart_interrupt_flag_clear
- <LI><a href="#[bd]">>></a> usart_data_receive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[30]">>></a> USART1_IRQHandler
- </UL>
- <P><STRONG><a name="[be]"></a>dma_channel_disable</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_channel_disable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_channel_disable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[c2]"></a>dma_channel_enable</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_channel_enable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_channel_enable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- <LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[118]"></a>dma_circulation_disable</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_circulation_disable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_circulation_disable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[119]"></a>dma_config</STRONG> (Thumb, 122 bytes, Stack size 32 bytes, usart.o(i.dma_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = dma_config ⇒ dma_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[c2]">>></a> dma_channel_enable
- <LI><a href="#[11c]">>></a> dma_memory_to_memory_disable
- <LI><a href="#[11e]">>></a> dma_interrupt_enable
- <LI><a href="#[11b]">>></a> dma_init
- <LI><a href="#[11a]">>></a> dma_deinit
- <LI><a href="#[118]">>></a> dma_circulation_disable
- <LI><a href="#[11d]">>></a> usart_dma_transmit_config
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[11a]"></a>dma_deinit</STRONG> (Thumb, 112 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_deinit))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_deinit
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[11b]"></a>dma_init</STRONG> (Thumb, 302 bytes, Stack size 24 bytes, gd32f10x_dma.o(i.dma_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = dma_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[11e]"></a>dma_interrupt_enable</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_interrupt_enable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_interrupt_enable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[87]"></a>dma_interrupt_flag_clear</STRONG> (Thumb, 16 bytes, Stack size 8 bytes, gd32f10x_dma.o(i.dma_interrupt_flag_clear))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = dma_interrupt_flag_clear
- </UL>
- <BR>[Called By]<UL><LI><a href="#[19]">>></a> DMA0_Channel4_IRQHandler
- </UL>
- <P><STRONG><a name="[c0]"></a>dma_memory_address_config</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_memory_address_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_memory_address_config
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- </UL>
- <P><STRONG><a name="[11c]"></a>dma_memory_to_memory_disable</STRONG> (Thumb, 50 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_memory_to_memory_disable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_memory_to_memory_disable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[c1]"></a>dma_transfer_number_config</STRONG> (Thumb, 38 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_transfer_number_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_transfer_number_config
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- </UL>
- <P><STRONG><a name="[bf]"></a>dma_transfer_number_get</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, gd32f10x_dma.o(i.dma_transfer_number_get))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = dma_transfer_number_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[117]">>></a> dma_periph_and_channel_check
- </UL>
- <BR>[Called By]<UL><LI><a href="#[2f]">>></a> USART0_IRQHandler
- </UL>
- <P><STRONG><a name="[12d]"></a>exti_init</STRONG> (Thumb, 184 bytes, Stack size 8 bytes, gd32f10x_exti.o(i.exti_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = exti_init
- </UL>
- <BR>[Called By]<UL><LI><a href="#[12a]">>></a> gd_eval_key_init
- </UL>
- <P><STRONG><a name="[99]"></a>exti_interrupt_flag_clear</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, gd32f10x_exti.o(i.exti_interrupt_flag_clear))
- <BR><BR>[Called By]<UL><LI><a href="#[12a]">>></a> gd_eval_key_init
- <LI><a href="#[11]">>></a> EXTI1_IRQHandler
- </UL>
- <P><STRONG><a name="[96]"></a>exti_interrupt_flag_get</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, gd32f10x_exti.o(i.exti_interrupt_flag_get))
- <BR><BR>[Called By]<UL><LI><a href="#[11]">>></a> EXTI1_IRQHandler
- </UL>
- <P><STRONG><a name="[4d]"></a>fputc</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, log.o(i.fputc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = fputc ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[93]">>></a> usart_flag_get
- <LI><a href="#[92]">>></a> usart_data_transmit
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> printfa.o(i.__0printf)
- </UL>
- <P><STRONG><a name="[122]"></a>fwdgt_config</STRONG> (Thumb, 94 bytes, Stack size 12 bytes, gd32f10x_fwdgt.o(i.fwdgt_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = fwdgt_config
- </UL>
- <BR>[Called By]<UL><LI><a href="#[120]">>></a> fwdgt_init
- </UL>
- <P><STRONG><a name="[163]"></a>fwdgt_counter_reload</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_fwdgt.o(i.fwdgt_counter_reload))
- <BR><BR>[Called By]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- </UL>
- <P><STRONG><a name="[123]"></a>fwdgt_enable</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_fwdgt.o(i.fwdgt_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[120]">>></a> fwdgt_init
- </UL>
- <P><STRONG><a name="[120]"></a>fwdgt_init</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, main.o(i.fwdgt_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = fwdgt_init ⇒ fwdgt_config
- </UL>
- <BR>[Calls]<UL><LI><a href="#[121]">>></a> rcu_osci_on
- <LI><a href="#[123]">>></a> fwdgt_enable
- <LI><a href="#[122]">>></a> fwdgt_config
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[162]"></a>fwdgt_write_enable</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_fwdgt.o(i.fwdgt_write_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- </UL>
- <P><STRONG><a name="[124]"></a>gd_485_DE_pin_init</STRONG> (Thumb, 36 bytes, Stack size 8 bytes, usart.o(i.gd_485_DE_pin_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = gd_485_DE_pin_init ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[138]"></a>gd_485_DE_tx</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, usart.o(i.gd_485_DE_tx))
- <BR><BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[125]"></a>gd_EC800M_pin_init</STRONG> (Thumb, 62 bytes, Stack size 8 bytes, usart.o(i.gd_EC800M_pin_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = gd_EC800M_pin_init ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[126]"></a>gd_com_232_send</STRONG> (Thumb, 44 bytes, Stack size 16 bytes, usart.o(i.gd_com_232_send))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = gd_com_232_send ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[93]">>></a> usart_flag_get
- <LI><a href="#[92]">>></a> usart_data_transmit
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c8]">>></a> write_json_config
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- </UL>
- <P><STRONG><a name="[127]"></a>gd_com_init</STRONG> (Thumb, 210 bytes, Stack size 16 bytes, usart.o(i.gd_com_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = gd_com_init ⇒ usart_baudrate_set ⇒ rcu_clock_freq_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[128]">>></a> gpio_pin_remap_config
- <LI><a href="#[fa]">>></a> usart_word_length_set
- <LI><a href="#[100]">>></a> usart_transmit_config
- <LI><a href="#[fb]">>></a> usart_stop_bit_set
- <LI><a href="#[ff]">>></a> usart_receive_config
- <LI><a href="#[fc]">>></a> usart_parity_config
- <LI><a href="#[102]">>></a> usart_interrupt_enable
- <LI><a href="#[fd]">>></a> usart_hardware_flow_rts_config
- <LI><a href="#[fe]">>></a> usart_hardware_flow_cts_config
- <LI><a href="#[101]">>></a> usart_enable
- <LI><a href="#[129]">>></a> usart_deinit
- <LI><a href="#[f9]">>></a> usart_baudrate_set
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[12a]"></a>gd_eval_key_init</STRONG> (Thumb, 98 bytes, Stack size 16 bytes, key.o(i.gd_eval_key_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = gd_eval_key_init ⇒ nvic_irq_enable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[99]">>></a> exti_interrupt_flag_clear
- <LI><a href="#[12d]">>></a> exti_init
- <LI><a href="#[12b]">>></a> nvic_irq_enable
- <LI><a href="#[12c]">>></a> gpio_exti_source_select
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[12e]"></a>gd_eval_led_init</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, led.o(i.gd_eval_led_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 28<LI>Call Chain = gd_eval_led_init ⇒ gpio_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8b]">>></a> rcu_periph_clock_enable
- <LI><a href="#[8c]">>></a> gpio_init
- <LI><a href="#[8d]">>></a> gpio_bit_set
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a3]"></a>gd_eval_led_toggle</STRONG> (Thumb, 46 bytes, Stack size 16 bytes, led.o(i.gd_eval_led_toggle))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = gd_eval_led_toggle
- </UL>
- <BR>[Calls]<UL><LI><a href="#[97]">>></a> gpio_input_bit_get
- <LI><a href="#[12f]">>></a> gpio_bit_write
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[90]"></a>gd_pull_EC800M_pwr_down</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, usart.o(i.gd_pull_EC800M_pwr_down))
- <BR><BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- </UL>
- <P><STRONG><a name="[8e]"></a>gd_pull_EC800M_pwr_up</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, usart.o(i.gd_pull_EC800M_pwr_up))
- <BR><BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- </UL>
- <P><STRONG><a name="[8f]"></a>gd_pull_EC800M_rst_down</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, usart.o(i.gd_pull_EC800M_rst_down))
- <BR><BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- </UL>
- <P><STRONG><a name="[91]"></a>gd_pull_EC800M_rst_up</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, usart.o(i.gd_pull_EC800M_rst_up))
- <BR><BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- </UL>
- <P><STRONG><a name="[137]"></a>get_config_params</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, device_message.o(i.get_config_params))
- <BR><BR>[Called By]<UL><LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[112]"></a>gettick</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, systick.o(i.gettick))
- <BR><BR>[Called By]<UL><LI><a href="#[c3]">>></a> mmodbus_callback
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[54]">>></a> dlt645_hw_read
- </UL>
- <P><STRONG><a name="[cb]"></a>gpio_bit_reset</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_gpio.o(i.gpio_bit_reset))
- <BR><BR>[Called By]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- <LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13a]">>></a> mmodbus_init
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- <LI><a href="#[53]">>></a> dlt645_hw_write
- </UL>
- <P><STRONG><a name="[8d]"></a>gpio_bit_set</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_gpio.o(i.gpio_bit_set))
- <BR><BR>[Called By]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- <LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- <LI><a href="#[8a]">>></a> EC800MPwoerOn
- <LI><a href="#[12e]">>></a> gd_eval_led_init
- <LI><a href="#[114]">>></a> dlt645_init
- <LI><a href="#[cd]">>></a> W25Q32_Init
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[ca]">>></a> W25Q32_WaitBusy
- <LI><a href="#[c9]">>></a> W25Q32_Enable
- <LI><a href="#[53]">>></a> dlt645_hw_write
- </UL>
- <P><STRONG><a name="[12f]"></a>gpio_bit_write</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_gpio.o(i.gpio_bit_write))
- <BR><BR>[Called By]<UL><LI><a href="#[a3]">>></a> gd_eval_led_toggle
- </UL>
- <P><STRONG><a name="[12c]"></a>gpio_exti_source_select</STRONG> (Thumb, 146 bytes, Stack size 8 bytes, gd32f10x_gpio.o(i.gpio_exti_source_select))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = gpio_exti_source_select
- </UL>
- <BR>[Called By]<UL><LI><a href="#[12a]">>></a> gd_eval_key_init
- </UL>
- <P><STRONG><a name="[8c]"></a>gpio_init</STRONG> (Thumb, 172 bytes, Stack size 20 bytes, gd32f10x_gpio.o(i.gpio_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = gpio_init
- </UL>
- <BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- <LI><a href="#[12e]">>></a> gd_eval_led_init
- <LI><a href="#[12a]">>></a> gd_eval_key_init
- <LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[125]">>></a> gd_EC800M_pin_init
- <LI><a href="#[124]">>></a> gd_485_DE_pin_init
- <LI><a href="#[f8]">>></a> config_485_port
- <LI><a href="#[cd]">>></a> W25Q32_Init
- <LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <P><STRONG><a name="[97]"></a>gpio_input_bit_get</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_gpio.o(i.gpio_input_bit_get))
- <BR><BR>[Called By]<UL><LI><a href="#[a3]">>></a> gd_eval_led_toggle
- <LI><a href="#[11]">>></a> EXTI1_IRQHandler
- </UL>
- <P><STRONG><a name="[128]"></a>gpio_pin_remap_config</STRONG> (Thumb, 138 bytes, Stack size 20 bytes, gd32f10x_gpio.o(i.gpio_pin_remap_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = gpio_pin_remap_config
- </UL>
- <BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- </UL>
- <P><STRONG><a name="[131]"></a>http_load_config</STRONG> (Thumb, 34 bytes, Stack size 8 bytes, main.o(i.http_load_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41096<LI>Call Chain = http_load_config ⇒ WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[88]">>></a> EC800MGetUrl
- <LI><a href="#[9a]">>></a> LogPrint
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[132]"></a>load_config_params</STRONG> (Thumb, 62 bytes, Stack size 20488 bytes, device_message.o(i.load_config_params))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20536<LI>Call Chain = load_config_params ⇒ W25Q32_Read ⇒ SPI0_Write ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[cf]">>></a> W25Q32_Read
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[133]">>></a> __aeabi_memcpy4
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[46]"></a>main</STRONG> (Thumb, 436 bytes, Stack size 16 bytes, main.o(i.main))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41112<LI>Call Chain = main ⇒ http_load_config ⇒ WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[132]">>></a> load_config_params
- <LI><a href="#[137]">>></a> get_config_params
- <LI><a href="#[9f]">>></a> MQTTSubTopic
- <LI><a href="#[95]">>></a> EC800MWaitReady
- <LI><a href="#[94]">>></a> EC800MSetPDP
- <LI><a href="#[8a]">>></a> EC800MPwoerOn
- <LI><a href="#[82]">>></a> ConnectMQTTSever
- <LI><a href="#[9a]">>></a> LogPrint
- <LI><a href="#[134]">>></a> systick_config
- <LI><a href="#[139]">>></a> ring_buffer_init
- <LI><a href="#[121]">>></a> rcu_osci_on
- <LI><a href="#[135]">>></a> nvic_config
- <LI><a href="#[12e]">>></a> gd_eval_led_init
- <LI><a href="#[12a]">>></a> gd_eval_key_init
- <LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[125]">>></a> gd_EC800M_pin_init
- <LI><a href="#[138]">>></a> gd_485_DE_tx
- <LI><a href="#[124]">>></a> gd_485_DE_pin_init
- <LI><a href="#[119]">>></a> dma_config
- <LI><a href="#[114]">>></a> dlt645_init
- <LI><a href="#[f8]">>></a> config_485_port
- <LI><a href="#[a5]">>></a> check_ota_event
- <LI><a href="#[cd]">>></a> W25Q32_Init
- <LI><a href="#[136]">>></a> readID
- <LI><a href="#[131]">>></a> http_load_config
- <LI><a href="#[120]">>></a> fwdgt_init
- <LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- <LI><a href="#[13a]">>></a> mmodbus_init
- <LI><a href="#[a8]">>></a> strcpy
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> entry9a.o(.ARM.Collect$$$$0000000B)
- </UL>
- <P><STRONG><a name="[c3]"></a>mmodbus_callback</STRONG> (Thumb, 108 bytes, Stack size 8 bytes, mmodbus.o(i.mmodbus_callback))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = mmodbus_callback ⇒ usart_interrupt_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[112]">>></a> gettick
- <LI><a href="#[bb]">>></a> usart_interrupt_flag_get
- <LI><a href="#[bc]">>></a> usart_interrupt_flag_clear
- <LI><a href="#[bd]">>></a> usart_data_receive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[30]">>></a> USART1_IRQHandler
- </UL>
- <P><STRONG><a name="[13c]"></a>mmodbus_crc16</STRONG> (Thumb, 42 bytes, Stack size 12 bytes, mmodbus.o(i.mmodbus_crc16))
- <BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = mmodbus_crc16
- </UL>
- <BR>[Called By]<UL><LI><a href="#[142]">>></a> mmodbus_writeHoldingRegister16i
- <LI><a href="#[141]">>></a> mmodbus_writeCoil
- <LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[c8]">>></a> write_json_config
- <LI><a href="#[c7]">>></a> read_json_config
- <LI><a href="#[c6]">>></a> readSIMCARD
- <LI><a href="#[c5]">>></a> readGatewayMessage
- <LI><a href="#[140]">>></a> mmodbus_readHoldingRegisters8i
- </UL>
- <P><STRONG><a name="[13a]"></a>mmodbus_init</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, mmodbus.o(i.mmodbus_init))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = mmodbus_init
- </UL>
- <BR>[Calls]<UL><LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[13b]"></a>mmodbus_readCoils</STRONG> (Thumb, 210 bytes, Stack size 32 bytes, mmodbus.o(i.mmodbus_readCoils))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = mmodbus_readCoils ⇒ mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[113]">>></a> __aeabi_memcpy
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- </UL>
- <P><STRONG><a name="[13f]"></a>mmodbus_readHoldingRegisters16i</STRONG> (Thumb, 138 bytes, Stack size 32 bytes, mmodbus.o(i.mmodbus_readHoldingRegisters16i))
- <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = mmodbus_readHoldingRegisters16i ⇒ mmodbus_readHoldingRegisters8i ⇒ mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[140]">>></a> mmodbus_readHoldingRegisters8i
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- </UL>
- <P><STRONG><a name="[140]"></a>mmodbus_readHoldingRegisters8i</STRONG> (Thumb, 256 bytes, Stack size 32 bytes, mmodbus.o(i.mmodbus_readHoldingRegisters8i))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = mmodbus_readHoldingRegisters8i ⇒ mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[113]">>></a> __aeabi_memcpy
- </UL>
- <BR>[Called By]<UL><LI><a href="#[13f]">>></a> mmodbus_readHoldingRegisters16i
- </UL>
- <P><STRONG><a name="[13e]"></a>mmodbus_receiveRaw</STRONG> (Thumb, 90 bytes, Stack size 16 bytes, mmodbus.o(i.mmodbus_receiveRaw))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = mmodbus_receiveRaw ⇒ usart_interrupt_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[112]">>></a> gettick
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[bb]">>></a> usart_interrupt_flag_get
- <LI><a href="#[bd]">>></a> usart_data_receive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[142]">>></a> mmodbus_writeHoldingRegister16i
- <LI><a href="#[141]">>></a> mmodbus_writeCoil
- <LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[140]">>></a> mmodbus_readHoldingRegisters8i
- </UL>
- <P><STRONG><a name="[13d]"></a>mmodbus_sendRaw</STRONG> (Thumb, 236 bytes, Stack size 24 bytes, mmodbus.o(i.mmodbus_sendRaw))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[93]">>></a> usart_flag_get
- <LI><a href="#[92]">>></a> usart_data_transmit
- <LI><a href="#[112]">>></a> gettick
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[57]">>></a> __aeabi_memclr
- </UL>
- <BR>[Called By]<UL><LI><a href="#[142]">>></a> mmodbus_writeHoldingRegister16i
- <LI><a href="#[141]">>></a> mmodbus_writeCoil
- <LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[140]">>></a> mmodbus_readHoldingRegisters8i
- </UL>
- <P><STRONG><a name="[143]"></a>mmodbus_set16bitOrder</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, mmodbus.o(i.mmodbus_set16bitOrder))
- <BR><BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- </UL>
- <P><STRONG><a name="[141]"></a>mmodbus_writeCoil</STRONG> (Thumb, 134 bytes, Stack size 32 bytes, mmodbus.o(i.mmodbus_writeCoil))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = mmodbus_writeCoil ⇒ mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[111]">>></a> memcmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- </UL>
- <P><STRONG><a name="[142]"></a>mmodbus_writeHoldingRegister16i</STRONG> (Thumb, 124 bytes, Stack size 32 bytes, mmodbus.o(i.mmodbus_writeHoldingRegister16i))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = mmodbus_writeHoldingRegister16i ⇒ mmodbus_sendRaw ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[111]">>></a> memcmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- </UL>
- <P><STRONG><a name="[a1]"></a>modbusRead</STRONG> (Thumb, 846 bytes, Stack size 64 bytes, parsedevicemessage.o(i.modbusRead))
- <BR><BR>[Stack]<UL><LI>Max Depth = 304<LI>Call Chain = modbusRead ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- <LI><a href="#[143]">>></a> mmodbus_set16bitOrder
- <LI><a href="#[13f]">>></a> mmodbus_readHoldingRegisters16i
- <LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[72]">>></a> __aeabi_ui2f
- <LI><a href="#[75]">>></a> __aeabi_ui2d
- <LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[64]">>></a> __aeabi_d2f
- <LI><a href="#[9e]">>></a> __aeabi_f2d
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[135]"></a>nvic_config</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, usart.o(i.nvic_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = nvic_config ⇒ nvic_irq_enable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[144]">>></a> nvic_priority_group_set
- <LI><a href="#[12b]">>></a> nvic_irq_enable
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[12b]"></a>nvic_irq_enable</STRONG> (Thumb, 162 bytes, Stack size 24 bytes, gd32f10x_misc.o(i.nvic_irq_enable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = nvic_irq_enable
- </UL>
- <BR>[Calls]<UL><LI><a href="#[144]">>></a> nvic_priority_group_set
- </UL>
- <BR>[Called By]<UL><LI><a href="#[135]">>></a> nvic_config
- <LI><a href="#[12a]">>></a> gd_eval_key_init
- </UL>
- <P><STRONG><a name="[144]"></a>nvic_priority_group_set</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_misc.o(i.nvic_priority_group_set))
- <BR><BR>[Called By]<UL><LI><a href="#[135]">>></a> nvic_config
- <LI><a href="#[12b]">>></a> nvic_irq_enable
- </UL>
- <P><STRONG><a name="[ba]"></a>nvic_vector_table_set</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_misc.o(i.nvic_vector_table_set))
- <BR><BR>[Called By]<UL><LI><a href="#[47]">>></a> SystemInit
- </UL>
- <P><STRONG><a name="[145]"></a>parseIntField</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, parsedevicemessage.o(i.parseIntField))
- <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = parseIntField ⇒ strtol ⇒ _strtoul
- </UL>
- <BR>[Calls]<UL><LI><a href="#[86]">>></a> strlen
- <LI><a href="#[ab]">>></a> strstr
- <LI><a href="#[65]">>></a> strtol
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- </UL>
- <P><STRONG><a name="[a4]"></a>parseMQTTData</STRONG> (Thumb, 2718 bytes, Stack size 712 bytes, parsedevicemessage.o(i.parseMQTTData))
- <BR><BR>[Stack]<UL><LI>Max Depth = 1256<LI>Call Chain = parseMQTTData ⇒ dlt645_read_data ⇒ dlt645_2007_read_data ⇒ dlt645_2007_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[142]">>></a> mmodbus_writeHoldingRegister16i
- <LI><a href="#[141]">>></a> mmodbus_writeCoil
- <LI><a href="#[143]">>></a> mmodbus_set16bitOrder
- <LI><a href="#[13f]">>></a> mmodbus_readHoldingRegisters16i
- <LI><a href="#[13b]">>></a> mmodbus_readCoils
- <LI><a href="#[115]">>></a> dlt645_set_addr
- <LI><a href="#[116]">>></a> dlt645_read_data
- <LI><a href="#[d4]">>></a> cJSON_Parse
- <LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[72]">>></a> __aeabi_ui2f
- <LI><a href="#[75]">>></a> __aeabi_ui2d
- <LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[64]">>></a> __aeabi_d2f
- <LI><a href="#[a7]">>></a> MQTT_BUFFER_READ
- <LI><a href="#[146]">>></a> processStringData
- <LI><a href="#[147]">>></a> processIntData
- <LI><a href="#[9e]">>></a> __aeabi_f2d
- <LI><a href="#[84]">>></a> WaitResponse
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[9a]">>></a> LogPrint
- <LI><a href="#[a8]">>></a> strcpy
- <LI><a href="#[130]">>></a> strcmp
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[105]">>></a> pow
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[148]"></a>parseStringField</STRONG> (Thumb, 44 bytes, Stack size 24 bytes, parsedevicemessage.o(i.parseStringField))
- <BR><BR>[Stack]<UL><LI>Max Depth = 288<LI>Call Chain = parseStringField ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[86]">>></a> strlen
- <LI><a href="#[ab]">>></a> strstr
- <LI><a href="#[5a]">>></a> __0sscanf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- </UL>
- <P><STRONG><a name="[105]"></a>pow</STRONG> (Thumb, 2512 bytes, Stack size 128 bytes, pow.o(i.pow))
- <BR><BR>[Stack]<UL><LI>Max Depth = 240<LI>Call Chain = pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[71]">>></a> __aeabi_drsub
- <LI><a href="#[e2]">>></a> __ARM_scalbn
- <LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[74]">>></a> __aeabi_i2d
- <LI><a href="#[70]">>></a> __aeabi_dsub
- <LI><a href="#[60]">>></a> __aeabi_dmul
- <LI><a href="#[e5]">>></a> __aeabi_cdrcmple
- <LI><a href="#[152]">>></a> __set_errno
- <LI><a href="#[153]">>></a> sqrt
- <LI><a href="#[dc]">>></a> __kernel_poly
- <LI><a href="#[154]">>></a> __ARM_fpclassify
- <LI><a href="#[e3]">>></a> __mathlib_dbl_underflow
- <LI><a href="#[e1]">>></a> __mathlib_dbl_overflow
- <LI><a href="#[e0]">>></a> __mathlib_dbl_invalid
- <LI><a href="#[df]">>></a> __mathlib_dbl_infnan2
- <LI><a href="#[de]">>></a> __mathlib_dbl_divzero
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a4]">>></a> parseMQTTData
- <LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[104]">>></a> data_package_translate_to_int
- <LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- </UL>
- <P><STRONG><a name="[d5]"></a>processHTTPjson</STRONG> (Thumb, 906 bytes, Stack size 20512 bytes, parsedevicemessage.o(i.processHTTPjson))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41064<LI>Call Chain = processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[157]">>></a> cJSON_IsObject
- <LI><a href="#[156]">>></a> cJSON_IsArray
- <LI><a href="#[eb]">>></a> cJSON_GetObjectItem
- <LI><a href="#[155]">>></a> cJSON_GetArraySize
- <LI><a href="#[e9]">>></a> cJSON_GetArrayItem
- <LI><a href="#[146]">>></a> processStringData
- <LI><a href="#[147]">>></a> processIntData
- <LI><a href="#[158]">>></a> save_config_params
- <LI><a href="#[a8]">>></a> strcpy
- <LI><a href="#[5a]">>></a> __0sscanf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- </UL>
- <P><STRONG><a name="[d7]"></a>processHttp</STRONG> (Thumb, 912 bytes, Stack size 20504 bytes, parsedevicemessage.o(i.processHttp))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41056<LI>Call Chain = processHttp ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[148]">>></a> parseStringField
- <LI><a href="#[145]">>></a> parseIntField
- <LI><a href="#[158]">>></a> save_config_params
- <LI><a href="#[11f]">>></a> strchr
- <LI><a href="#[ab]">>></a> strstr
- <LI><a href="#[5a]">>></a> __0sscanf
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- </UL>
- <P><STRONG><a name="[147]"></a>processIntData</STRONG> (Thumb, 34 bytes, Stack size 16 bytes, parsedevicemessage.o(i.processIntData))
- <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = processIntData ⇒ cJSON_GetObjectItemCaseSensitive ⇒ get_object_item ⇒ case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[159]">>></a> cJSON_IsNumber
- <LI><a href="#[ed]">>></a> cJSON_GetObjectItemCaseSensitive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- <LI><a href="#[a4]">>></a> parseMQTTData
- </UL>
- <P><STRONG><a name="[146]"></a>processStringData</STRONG> (Thumb, 36 bytes, Stack size 16 bytes, parsedevicemessage.o(i.processStringData))
- <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = processStringData ⇒ cJSON_GetObjectItemCaseSensitive ⇒ get_object_item ⇒ case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[15a]">>></a> cJSON_IsString
- <LI><a href="#[ed]">>></a> cJSON_GetObjectItemCaseSensitive
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d5]">>></a> processHTTPjson
- <LI><a href="#[a4]">>></a> parseMQTTData
- </UL>
- <P><STRONG><a name="[164]"></a>rcu_clock_freq_get</STRONG> (Thumb, 264 bytes, Stack size 80 bytes, gd32f10x_rcu.o(i.rcu_clock_freq_get))
- <BR><BR>[Stack]<UL><LI>Max Depth = 80<LI>Call Chain = rcu_clock_freq_get
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f9]">>></a> usart_baudrate_set
- </UL>
- <P><STRONG><a name="[121]"></a>rcu_osci_on</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, gd32f10x_rcu.o(i.rcu_osci_on))
- <BR><BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- <LI><a href="#[120]">>></a> fwdgt_init
- </UL>
- <P><STRONG><a name="[8b]"></a>rcu_periph_clock_enable</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, gd32f10x_rcu.o(i.rcu_periph_clock_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[8a]">>></a> EC800MPwoerOn
- <LI><a href="#[12e]">>></a> gd_eval_led_init
- <LI><a href="#[12a]">>></a> gd_eval_key_init
- <LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[125]">>></a> gd_EC800M_pin_init
- <LI><a href="#[124]">>></a> gd_485_DE_pin_init
- <LI><a href="#[119]">>></a> dma_config
- <LI><a href="#[f8]">>></a> config_485_port
- <LI><a href="#[cd]">>></a> W25Q32_Init
- <LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <P><STRONG><a name="[15f]"></a>rcu_periph_reset_disable</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, gd32f10x_rcu.o(i.rcu_periph_reset_disable))
- <BR><BR>[Called By]<UL><LI><a href="#[ae]">>></a> spi_i2s_deinit
- <LI><a href="#[129]">>></a> usart_deinit
- </UL>
- <P><STRONG><a name="[15e]"></a>rcu_periph_reset_enable</STRONG> (Thumb, 28 bytes, Stack size 0 bytes, gd32f10x_rcu.o(i.rcu_periph_reset_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[ae]">>></a> spi_i2s_deinit
- <LI><a href="#[129]">>></a> usart_deinit
- </UL>
- <P><STRONG><a name="[c5]"></a>readGatewayMessage</STRONG> (Thumb, 180 bytes, Stack size 32 bytes, pc.o(i.readGatewayMessage))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = readGatewayMessage ⇒ malloc ⇒ internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[137]">>></a> get_config_params
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[113]">>></a> __aeabi_memcpy
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- </UL>
- <BR>[Called By]<UL><LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[136]"></a>readID</STRONG> (Thumb, 232 bytes, Stack size 52 bytes, main.o(i.readID))
- <BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = readID
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[c6]"></a>readSIMCARD</STRONG> (Thumb, 450 bytes, Stack size 152 bytes, pc.o(i.readSIMCARD))
- <BR><BR>[Stack]<UL><LI>Max Depth = 416<LI>Call Chain = readSIMCARD ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[72]">>></a> __aeabi_ui2f
- <LI><a href="#[137]">>></a> get_config_params
- <LI><a href="#[81]">>></a> Clear_DMA_Buffer
- <LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[15b]">>></a> __aeabi_fmul
- <LI><a href="#[69]">>></a> __aeabi_fdiv
- <LI><a href="#[15c]">>></a> __aeabi_f2iz
- <LI><a href="#[d0]">>></a> WaitField
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[ab]">>></a> strstr
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[5a]">>></a> __0sscanf
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[c7]"></a>read_json_config</STRONG> (Thumb, 780 bytes, Stack size 72 bytes, pc.o(i.read_json_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = read_json_config ⇒ malloc ⇒ internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[137]">>></a> get_config_params
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[86]">>></a> strlen
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[85]">>></a> __2sprintf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[52]"></a>realloc</STRONG> (Thumb, 102 bytes, Stack size 32 bytes, mallocr.o(i.realloc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 88<LI>Call Chain = realloc ⇒ malloc ⇒ internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[50]">>></a> malloc
- <LI><a href="#[51]">>></a> free
- <LI><a href="#[dd]">>></a> internal_alloc
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> cjson.o(.data)
- </UL>
- <P><STRONG><a name="[139]"></a>ring_buffer_init</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, ring_buffer.o(i.ring_buffer_init))
- <BR><BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a9]"></a>ring_buffer_read</STRONG> (Thumb, 38 bytes, Stack size 0 bytes, ring_buffer.o(i.ring_buffer_read))
- <BR><BR>[Called By]<UL><LI><a href="#[a7]">>></a> MQTT_BUFFER_READ
- </UL>
- <P><STRONG><a name="[ac]"></a>ring_buffer_write</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, ring_buffer.o(i.ring_buffer_write))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = ring_buffer_write
- </UL>
- <BR>[Called By]<UL><LI><a href="#[aa]">>></a> Receive_MQTT_DataPack
- </UL>
- <P><STRONG><a name="[b8]"></a>runtime_increment</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, systick.o(i.runtime_increment))
- <BR><BR>[Called By]<UL><LI><a href="#[9]">>></a> SysTick_Handler
- </UL>
- <P><STRONG><a name="[158]"></a>save_config_params</STRONG> (Thumb, 60 bytes, Stack size 20488 bytes, device_message.o(i.save_config_params))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20552<LI>Call Chain = save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[15d]">>></a> write_struct_to_flash
- <LI><a href="#[98]">>></a> clear_gateway_config_block
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- <LI><a href="#[133]">>></a> __aeabi_memcpy4
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d7]">>></a> processHttp
- <LI><a href="#[d5]">>></a> processHTTPjson
- </UL>
- <P><STRONG><a name="[b0]"></a>spi_enable</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_spi.o(i.spi_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <P><STRONG><a name="[b5]"></a>spi_i2s_data_receive</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, gd32f10x_spi.o(i.spi_i2s_data_receive))
- <BR><BR>[Called By]<UL><LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <P><STRONG><a name="[b4]"></a>spi_i2s_data_transmit</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, gd32f10x_spi.o(i.spi_i2s_data_transmit))
- <BR><BR>[Called By]<UL><LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <P><STRONG><a name="[ae]"></a>spi_i2s_deinit</STRONG> (Thumb, 82 bytes, Stack size 8 bytes, gd32f10x_spi.o(i.spi_i2s_deinit))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = spi_i2s_deinit
- </UL>
- <BR>[Calls]<UL><LI><a href="#[15e]">>></a> rcu_periph_reset_enable
- <LI><a href="#[15f]">>></a> rcu_periph_reset_disable
- </UL>
- <BR>[Called By]<UL><LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <P><STRONG><a name="[b3]"></a>spi_i2s_flag_get</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_spi.o(i.spi_i2s_flag_get))
- <BR><BR>[Called By]<UL><LI><a href="#[b2]">>></a> SPI0_ReadWriteByte
- </UL>
- <P><STRONG><a name="[af]"></a>spi_init</STRONG> (Thumb, 50 bytes, Stack size 0 bytes, gd32f10x_spi.o(i.spi_init))
- <BR><BR>[Called By]<UL><LI><a href="#[ad]">>></a> SPI0_Init
- </UL>
- <P><STRONG><a name="[153]"></a>sqrt</STRONG> (Thumb, 76 bytes, Stack size 24 bytes, sqrt.o(i.sqrt))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = sqrt ⇒ _dsqrt ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[152]">>></a> __set_errno
- <LI><a href="#[80]">>></a> _dsqrt
- </UL>
- <BR>[Called By]<UL><LI><a href="#[105]">>></a> pow
- </UL>
- <P><STRONG><a name="[14c]"></a>strtod</STRONG> (Thumb, 28 bytes, Stack size 16 bytes, strtod.o(i.strtod))
- <BR><BR>[Stack]<UL><LI>Max Depth = 216<LI>Call Chain = strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[7c]">>></a> __strtod_int
- </UL>
- <BR>[Called By]<UL><LI><a href="#[14a]">>></a> parse_number
- </UL>
- <P><STRONG><a name="[134]"></a>systick_config</STRONG> (Thumb, 74 bytes, Stack size 8 bytes, systick.o(i.systick_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = systick_config ⇒ NVIC_SetPriority
- </UL>
- <BR>[Calls]<UL><LI><a href="#[161]">>></a> NVIC_SetPriority
- </UL>
- <BR>[Called By]<UL><LI><a href="#[46]">>></a> main
- </UL>
- <P><STRONG><a name="[a6]"></a>task_fwdgt_reload</STRONG> (Thumb, 12 bytes, Stack size 8 bytes, main.o(i.task_fwdgt_reload))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = task_fwdgt_reload
- </UL>
- <BR>[Calls]<UL><LI><a href="#[162]">>></a> fwdgt_write_enable
- <LI><a href="#[163]">>></a> fwdgt_counter_reload
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a1]">>></a> modbusRead
- <LI><a href="#[a2]">>></a> dlt645_read
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[a0]">>></a> MQTT_Alarm_clock
- </UL>
- <P><STRONG><a name="[f9]"></a>usart_baudrate_set</STRONG> (Thumb, 136 bytes, Stack size 32 bytes, gd32f10x_usart.o(i.usart_baudrate_set))
- <BR><BR>[Stack]<UL><LI>Max Depth = 112<LI>Call Chain = usart_baudrate_set ⇒ rcu_clock_freq_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[164]">>></a> rcu_clock_freq_get
- </UL>
- <BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[bd]"></a>usart_data_receive</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_data_receive))
- <BR><BR>[Called By]<UL><LI><a href="#[c3]">>></a> mmodbus_callback
- <LI><a href="#[c4]">>></a> dlt_callback
- <LI><a href="#[2f]">>></a> USART0_IRQHandler
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- </UL>
- <P><STRONG><a name="[92]"></a>usart_data_transmit</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_data_transmit))
- <BR><BR>[Called By]<UL><LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[4d]">>></a> fputc
- <LI><a href="#[f7]">>></a> xmodem
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[53]">>></a> dlt645_hw_write
- </UL>
- <P><STRONG><a name="[129]"></a>usart_deinit</STRONG> (Thumb, 136 bytes, Stack size 8 bytes, gd32f10x_usart.o(i.usart_deinit))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = usart_deinit
- </UL>
- <BR>[Calls]<UL><LI><a href="#[15e]">>></a> rcu_periph_reset_enable
- <LI><a href="#[15f]">>></a> rcu_periph_reset_disable
- </UL>
- <BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- </UL>
- <P><STRONG><a name="[11d]"></a>usart_dma_transmit_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_dma_transmit_config))
- <BR><BR>[Called By]<UL><LI><a href="#[119]">>></a> dma_config
- </UL>
- <P><STRONG><a name="[101]"></a>usart_enable</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_enable))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[103]"></a>usart_flag_clear</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, gd32f10x_usart.o(i.usart_flag_clear))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = usart_flag_clear
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[93]"></a>usart_flag_get</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, gd32f10x_usart.o(i.usart_flag_get))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = usart_flag_get
- </UL>
- <BR>[Called By]<UL><LI><a href="#[83]">>></a> EC800MSendCmd
- <LI><a href="#[4d]">>></a> fputc
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[13d]">>></a> mmodbus_sendRaw
- <LI><a href="#[53]">>></a> dlt645_hw_write
- </UL>
- <P><STRONG><a name="[fe]"></a>usart_hardware_flow_cts_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_hardware_flow_cts_config))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[fd]"></a>usart_hardware_flow_rts_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_hardware_flow_rts_config))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[102]"></a>usart_interrupt_enable</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, gd32f10x_usart.o(i.usart_interrupt_enable))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = usart_interrupt_enable
- </UL>
- <BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[bc]"></a>usart_interrupt_flag_clear</STRONG> (Thumb, 26 bytes, Stack size 8 bytes, gd32f10x_usart.o(i.usart_interrupt_flag_clear))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = usart_interrupt_flag_clear
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c3]">>></a> mmodbus_callback
- <LI><a href="#[c4]">>></a> dlt_callback
- <LI><a href="#[2f]">>></a> USART0_IRQHandler
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[bb]"></a>usart_interrupt_flag_get</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, gd32f10x_usart.o(i.usart_interrupt_flag_get))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = usart_interrupt_flag_get
- </UL>
- <BR>[Called By]<UL><LI><a href="#[c3]">>></a> mmodbus_callback
- <LI><a href="#[c4]">>></a> dlt_callback
- <LI><a href="#[2f]">>></a> USART0_IRQHandler
- <LI><a href="#[31]">>></a> USART2_IRQHandler
- <LI><a href="#[13e]">>></a> mmodbus_receiveRaw
- </UL>
- <P><STRONG><a name="[fc]"></a>usart_parity_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_parity_config))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[ff]"></a>usart_receive_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_receive_config))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[fb]"></a>usart_stop_bit_set</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_stop_bit_set))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[100]"></a>usart_transmit_config</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_transmit_config))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[fa]"></a>usart_word_length_set</STRONG> (Thumb, 16 bytes, Stack size 0 bytes, gd32f10x_usart.o(i.usart_word_length_set))
- <BR><BR>[Called By]<UL><LI><a href="#[127]">>></a> gd_com_init
- <LI><a href="#[f8]">>></a> config_485_port
- </UL>
- <P><STRONG><a name="[c8]"></a>write_json_config</STRONG> (Thumb, 144 bytes, Stack size 16 bytes, pc.o(i.write_json_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 41104<LI>Call Chain = write_json_config ⇒ WaitForUpData ⇒ processHTTPjson ⇒ save_config_params ⇒ write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- <LI><a href="#[126]">>></a> gd_com_232_send
- <LI><a href="#[13c]">>></a> mmodbus_crc16
- <LI><a href="#[86]">>></a> strlen
- </UL>
- <BR>[Called By]<UL><LI><a href="#[31]">>></a> USART2_IRQHandler
- </UL>
- <P><STRONG><a name="[15d]"></a>write_struct_to_flash</STRONG> (Thumb, 42 bytes, Stack size 24 bytes, device_message.o(i.write_struct_to_flash))
- <BR><BR>[Stack]<UL><LI>Max Depth = 64<LI>Call Chain = write_struct_to_flash ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ce]">>></a> W25Q32_PageWrite
- </UL>
- <BR>[Called By]<UL><LI><a href="#[158]">>></a> save_config_params
- </UL>
- <P><STRONG><a name="[f7]"></a>xmodem</STRONG> (Thumb, 460 bytes, Stack size 32 bytes, otaevent.o(i.xmodem))
- <BR><BR>[Stack]<UL><LI>Max Depth = 72<LI>Call Chain = xmodem ⇒ W25Q32_PageWrite ⇒ W25Q32_Enable ⇒ W25Q32_WaitBusy ⇒ SPI0_ReadWriteByte
- </UL>
- <BR>[Calls]<UL><LI><a href="#[a6]">>></a> task_fwdgt_reload
- <LI><a href="#[ce]">>></a> W25Q32_PageWrite
- <LI><a href="#[cc]">>></a> W25Q32_Erase64K
- <LI><a href="#[92]">>></a> usart_data_transmit
- <LI><a href="#[112]">>></a> gettick
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[166]">>></a> Xmodem_CRC16
- <LI><a href="#[57]">>></a> __aeabi_memclr
- <LI><a href="#[113]">>></a> __aeabi_memcpy
- </UL>
- <BR>[Called By]<UL><LI><a href="#[a5]">>></a> check_ota_event
- </UL>
- <P>
- <H3>
- Local Symbols
- </H3>
- <P><STRONG><a name="[160]"></a>system_clock_108m_hxtal</STRONG> (Thumb, 182 bytes, Stack size 0 bytes, system_gd32f10x.o(i.system_clock_108m_hxtal))
- <BR><BR>[Called By]<UL><LI><a href="#[b9]">>></a> system_clock_config
- </UL>
- <P><STRONG><a name="[b9]"></a>system_clock_config</STRONG> (Thumb, 8 bytes, Stack size 8 bytes, system_gd32f10x.o(i.system_clock_config))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = system_clock_config
- </UL>
- <BR>[Calls]<UL><LI><a href="#[160]">>></a> system_clock_108m_hxtal
- </UL>
- <BR>[Called By]<UL><LI><a href="#[47]">>></a> SystemInit
- </UL>
- <P><STRONG><a name="[161]"></a>NVIC_SetPriority</STRONG> (Thumb, 32 bytes, Stack size 8 bytes, systick.o(i.NVIC_SetPriority))
- <BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = NVIC_SetPriority
- </UL>
- <BR>[Called By]<UL><LI><a href="#[134]">>></a> systick_config
- </UL>
- <P><STRONG><a name="[d3]"></a>checksum</STRONG> (Thumb, 66 bytes, Stack size 16 bytes, parsedevicemessage.o(i.checksum))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = checksum
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- </UL>
- <P><STRONG><a name="[d2]"></a>extract_data_from_buffer</STRONG> (Thumb, 78 bytes, Stack size 32 bytes, parsedevicemessage.o(i.extract_data_from_buffer))
- <BR><BR>[Stack]<UL><LI>Max Depth = 296<LI>Call Chain = extract_data_from_buffer ⇒ __0sscanf ⇒ __vfscanf_char ⇒ __vfscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[11f]">>></a> strchr
- <LI><a href="#[ab]">>></a> strstr
- <LI><a href="#[5a]">>></a> __0sscanf
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d1]">>></a> WaitForUpData
- </UL>
- <P><STRONG><a name="[117]"></a>dma_periph_and_channel_check</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, gd32f10x_dma.o(i.dma_periph_and_channel_check))
- <BR><BR>[Called By]<UL><LI><a href="#[bf]">>></a> dma_transfer_number_get
- <LI><a href="#[c1]">>></a> dma_transfer_number_config
- <LI><a href="#[c0]">>></a> dma_memory_address_config
- <LI><a href="#[c2]">>></a> dma_channel_enable
- <LI><a href="#[be]">>></a> dma_channel_disable
- <LI><a href="#[11c]">>></a> dma_memory_to_memory_disable
- <LI><a href="#[11e]">>></a> dma_interrupt_enable
- <LI><a href="#[11b]">>></a> dma_init
- <LI><a href="#[11a]">>></a> dma_deinit
- <LI><a href="#[118]">>></a> dma_circulation_disable
- </UL>
- <P><STRONG><a name="[f3]"></a>buffer_skip_whitespace</STRONG> (Thumb, 72 bytes, Stack size 0 bytes, cjson.o(i.buffer_skip_whitespace))
- <BR><BR>[Called By]<UL><LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- <LI><a href="#[14e]">>></a> parse_object
- <LI><a href="#[149]">>></a> parse_array
- </UL>
- <P><STRONG><a name="[ee]"></a>cJSON_New_Item</STRONG> (Thumb, 26 bytes, Stack size 16 bytes, cjson.o(i.cJSON_New_Item))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = cJSON_New_Item
- </UL>
- <BR>[Calls]<UL><LI><a href="#[ef]">>></a> __aeabi_memclr4
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- <LI><a href="#[14e]">>></a> parse_object
- <LI><a href="#[149]">>></a> parse_array
- </UL>
- <P><STRONG><a name="[f5]"></a>case_insensitive_strcmp</STRONG> (Thumb, 72 bytes, Stack size 16 bytes, cjson.o(i.case_insensitive_strcmp))
- <BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[f6]">>></a> tolower
- </UL>
- <BR>[Called By]<UL><LI><a href="#[ec]">>></a> get_object_item
- </UL>
- <P><STRONG><a name="[ea]"></a>get_array_item</STRONG> (Thumb, 30 bytes, Stack size 0 bytes, cjson.o(i.get_array_item))
- <BR><BR>[Called By]<UL><LI><a href="#[e9]">>></a> cJSON_GetArrayItem
- </UL>
- <P><STRONG><a name="[14b]"></a>get_decimal_point</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, cjson.o(i.get_decimal_point))
- <BR><BR>[Called By]<UL><LI><a href="#[14a]">>></a> parse_number
- </UL>
- <P><STRONG><a name="[ec]"></a>get_object_item</STRONG> (Thumb, 82 bytes, Stack size 24 bytes, cjson.o(i.get_object_item))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40<LI>Call Chain = get_object_item ⇒ case_insensitive_strcmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[130]">>></a> strcmp
- <LI><a href="#[f5]">>></a> case_insensitive_strcmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[ed]">>></a> cJSON_GetObjectItemCaseSensitive
- <LI><a href="#[eb]">>></a> cJSON_GetObjectItem
- </UL>
- <P><STRONG><a name="[149]"></a>parse_array</STRONG> (Thumb, 248 bytes, Stack size 24 bytes, cjson.o(i.parse_array))
- <BR><BR>[Stack]<UL><LI>Max Depth = 40 + In Cycle
- <LI>Call Chain = parse_array ⇒ parse_value (Cycle)
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[f4]">>></a> parse_value
- <LI><a href="#[ee]">>></a> cJSON_New_Item
- <LI><a href="#[f3]">>></a> buffer_skip_whitespace
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f4]">>></a> parse_value
- </UL>
- <P><STRONG><a name="[165]"></a>parse_hex4</STRONG> (Thumb, 90 bytes, Stack size 0 bytes, cjson.o(i.parse_hex4))
- <BR><BR>[Called By]<UL><LI><a href="#[150]">>></a> utf16_literal_to_utf8
- </UL>
- <P><STRONG><a name="[14a]"></a>parse_number</STRONG> (Thumb, 298 bytes, Stack size 96 bytes, cjson.o(i.parse_number))
- <BR><BR>[Stack]<UL><LI>Max Depth = 312<LI>Call Chain = parse_number ⇒ strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[14c]">>></a> strtod
- <LI><a href="#[76]">>></a> __aeabi_d2iz
- <LI><a href="#[e5]">>></a> __aeabi_cdrcmple
- <LI><a href="#[14d]">>></a> __aeabi_cdcmple
- <LI><a href="#[14b]">>></a> get_decimal_point
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f4]">>></a> parse_value
- </UL>
- <P><STRONG><a name="[14e]"></a>parse_object</STRONG> (Thumb, 318 bytes, Stack size 24 bytes, cjson.o(i.parse_object))
- <BR><BR>[Stack]<UL><LI>Max Depth = 120 + In Cycle
- <LI>Call Chain = parse_object ⇒ parse_value (Cycle)
- </UL>
- <BR>[Calls]<UL><LI><a href="#[d6]">>></a> cJSON_Delete
- <LI><a href="#[f4]">>></a> parse_value
- <LI><a href="#[14f]">>></a> parse_string
- <LI><a href="#[ee]">>></a> cJSON_New_Item
- <LI><a href="#[f3]">>></a> buffer_skip_whitespace
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f4]">>></a> parse_value
- </UL>
- <P><STRONG><a name="[14f]"></a>parse_string</STRONG> (Thumb, 396 bytes, Stack size 40 bytes, cjson.o(i.parse_string))
- <BR><BR>[Stack]<UL><LI>Max Depth = 96<LI>Call Chain = parse_string ⇒ utf16_literal_to_utf8
- </UL>
- <BR>[Calls]<UL><LI><a href="#[150]">>></a> utf16_literal_to_utf8
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f4]">>></a> parse_value
- <LI><a href="#[14e]">>></a> parse_object
- </UL>
- <P><STRONG><a name="[f4]"></a>parse_value</STRONG> (Thumb, 290 bytes, Stack size 16 bytes, cjson.o(i.parse_value))
- <BR><BR>[Stack]<UL><LI>Max Depth = 328<LI>Call Chain = parse_value ⇒ parse_number ⇒ strtod ⇒ __strtod_int ⇒ _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[151]">>></a> strncmp
- <LI><a href="#[14f]">>></a> parse_string
- <LI><a href="#[14e]">>></a> parse_object
- <LI><a href="#[14a]">>></a> parse_number
- <LI><a href="#[149]">>></a> parse_array
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- <LI><a href="#[14e]">>></a> parse_object
- <LI><a href="#[149]">>></a> parse_array
- </UL>
- <P><STRONG><a name="[f2]"></a>skip_utf8_bom</STRONG> (Thumb, 56 bytes, Stack size 8 bytes, cjson.o(i.skip_utf8_bom))
- <BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = skip_utf8_bom ⇒ strncmp
- </UL>
- <BR>[Calls]<UL><LI><a href="#[151]">>></a> strncmp
- </UL>
- <BR>[Called By]<UL><LI><a href="#[f1]">>></a> cJSON_ParseWithLengthOpts
- </UL>
- <P><STRONG><a name="[150]"></a>utf16_literal_to_utf8</STRONG> (Thumb, 300 bytes, Stack size 56 bytes, cjson.o(i.utf16_literal_to_utf8))
- <BR><BR>[Stack]<UL><LI>Max Depth = 56<LI>Call Chain = utf16_literal_to_utf8
- </UL>
- <BR>[Calls]<UL><LI><a href="#[165]">>></a> parse_hex4
- </UL>
- <BR>[Called By]<UL><LI><a href="#[14f]">>></a> parse_string
- </UL>
- <P><STRONG><a name="[54]"></a>dlt645_hw_read</STRONG> (Thumb, 92 bytes, Stack size 24 bytes, dlt645_port.o(i.dlt645_hw_read))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = dlt645_hw_read
- </UL>
- <BR>[Calls]<UL><LI><a href="#[112]">>></a> gettick
- <LI><a href="#[113]">>></a> __aeabi_memcpy
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> dlt645_port.o(.data)
- </UL>
- <P><STRONG><a name="[53]"></a>dlt645_hw_write</STRONG> (Thumb, 98 bytes, Stack size 24 bytes, dlt645_port.o(i.dlt645_hw_write))
- <BR><BR>[Stack]<UL><LI>Max Depth = 32<LI>Call Chain = dlt645_hw_write ⇒ usart_flag_get
- </UL>
- <BR>[Calls]<UL><LI><a href="#[8d]">>></a> gpio_bit_set
- <LI><a href="#[93]">>></a> usart_flag_get
- <LI><a href="#[92]">>></a> usart_data_transmit
- <LI><a href="#[89]">>></a> delay_1ms
- <LI><a href="#[cb]">>></a> gpio_bit_reset
- <LI><a href="#[ef]">>></a> __aeabi_memclr4
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> dlt645_port.o(.data)
- </UL>
- <P><STRONG><a name="[106]"></a>dlt645_1997_parsing_data</STRONG> (Thumb, 206 bytes, Stack size 24 bytes, dlt645_1997.o(i.dlt645_1997_parsing_data))
- <BR><BR>[Stack]<UL><LI>Max Depth = 416<LI>Call Chain = dlt645_1997_parsing_data ⇒ dlt645_data_parse_by_format_to_float ⇒ data_package_translate_to_int ⇒ pow ⇒ __kernel_poly ⇒ __aeabi_dadd ⇒ _double_epilogue ⇒ _double_round
- </UL>
- <BR>[Calls]<UL><LI><a href="#[107]">>></a> dlt645_data_parse_by_format_to_float
- </UL>
- <BR>[Called By]<UL><LI><a href="#[108]">>></a> dlt645_1997_read_data
- </UL>
- <P><STRONG><a name="[e4]"></a>_fp_digits</STRONG> (Thumb, 366 bytes, Stack size 64 bytes, printfa.o(i._fp_digits), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[6b]">>></a> __aeabi_dadd
- <LI><a href="#[60]">>></a> __aeabi_dmul
- <LI><a href="#[e5]">>></a> __aeabi_cdrcmple
- <LI><a href="#[78]">>></a> __aeabi_uldivmod
- <LI><a href="#[7d]">>></a> __aeabi_d2ulz
- </UL>
- <BR>[Called By]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[d9]"></a>_printf_core</STRONG> (Thumb, 1744 bytes, Stack size 136 bytes, printfa.o(i._printf_core), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[78]">>></a> __aeabi_uldivmod
- <LI><a href="#[e8]">>></a> __aeabi_uidivmod
- <LI><a href="#[e6]">>></a> _printf_pre_padding
- <LI><a href="#[e7]">>></a> _printf_post_padding
- <LI><a href="#[e4]">>></a> _fp_digits
- </UL>
- <BR>[Called By]<UL><LI><a href="#[db]">>></a> __0vsnprintf
- <LI><a href="#[da]">>></a> __0sprintf
- <LI><a href="#[d8]">>></a> __0printf
- </UL>
- <P><STRONG><a name="[e7]"></a>_printf_post_padding</STRONG> (Thumb, 36 bytes, Stack size 24 bytes, printfa.o(i._printf_post_padding), UNUSED)
- <BR><BR>[Called By]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[e6]"></a>_printf_pre_padding</STRONG> (Thumb, 46 bytes, Stack size 24 bytes, printfa.o(i._printf_pre_padding), UNUSED)
- <BR><BR>[Called By]<UL><LI><a href="#[d9]">>></a> _printf_core
- </UL>
- <P><STRONG><a name="[4f]"></a>_snputc</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, printfa.o(i._snputc))
- <BR>[Address Reference Count : 1]<UL><LI> printfa.o(i.__0vsnprintf)
- </UL>
- <P><STRONG><a name="[4e]"></a>_sputc</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, printfa.o(i._sputc))
- <BR><BR>[Called By]<UL><LI><a href="#[da]">>></a> __0sprintf
- </UL>
- <BR>[Address Reference Count : 1]<UL><LI> printfa.o(i.__0sprintf)
- </UL>
- <P><STRONG><a name="[dd]"></a>internal_alloc</STRONG> (Thumb, 76 bytes, Stack size 24 bytes, mallocr.o(i.internal_alloc))
- <BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = internal_alloc
- </UL>
- <BR>[Calls]<UL><LI><a href="#[113]">>></a> __aeabi_memcpy
- </UL>
- <BR>[Called By]<UL><LI><a href="#[52]">>></a> realloc
- <LI><a href="#[50]">>></a> malloc
- </UL>
- <P><STRONG><a name="[5e]"></a>_fp_value</STRONG> (Thumb, 296 bytes, Stack size 64 bytes, scanf_fp.o(.text), UNUSED)
- <BR><BR>[Calls]<UL><LI><a href="#[61]">>></a> __aeabi_ddiv
- <LI><a href="#[60]">>></a> __aeabi_dmul
- <LI><a href="#[5f]">>></a> __aeabi_ul2d
- </UL>
- <BR>[Called By]<UL><LI><a href="#[62]">>></a> _scanf_really_real
- </UL>
- <P><STRONG><a name="[4b]"></a>_scanf_char_input</STRONG> (Thumb, 12 bytes, Stack size 0 bytes, scanf_char.o(.text))
- <BR>[Address Reference Count : 1]<UL><LI> scanf_char.o(.text)
- </UL>
- <P><STRONG><a name="[7a]"></a>_local_sscanf</STRONG> (Thumb, 54 bytes, Stack size 56 bytes, strtod.o(.text))
- <BR><BR>[Stack]<UL><LI>Max Depth = 160<LI>Call Chain = _local_sscanf ⇒ _scanf_real
- </UL>
- <BR>[Calls]<UL><LI><a href="#[7b]">>></a> _scanf_real
- </UL>
- <BR>[Called By]<UL><LI><a href="#[7c]">>></a> __strtod_int
- </UL>
- <P>
- <H3>
- Undefined Global Symbols
- </H3><HR></body></html>
|