stm32f4xx_hal_uart.lst 627 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027
  1. ARM GAS /tmp/ccGtkZvD.s page 1
  2. 1 .cpu cortex-m4
  3. 2 .arch armv7e-m
  4. 3 .fpu fpv4-sp-d16
  5. 4 .eabi_attribute 27, 1
  6. 5 .eabi_attribute 28, 1
  7. 6 .eabi_attribute 20, 1
  8. 7 .eabi_attribute 21, 1
  9. 8 .eabi_attribute 23, 3
  10. 9 .eabi_attribute 24, 1
  11. 10 .eabi_attribute 25, 1
  12. 11 .eabi_attribute 26, 1
  13. 12 .eabi_attribute 30, 1
  14. 13 .eabi_attribute 34, 1
  15. 14 .eabi_attribute 18, 4
  16. 15 .file "stm32f4xx_hal_uart.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .section .text.UART_EndTxTransfer,"ax",%progbits
  21. 20 .align 1
  22. 21 .syntax unified
  23. 22 .thumb
  24. 23 .thumb_func
  25. 25 UART_EndTxTransfer:
  26. 26 .LVL0:
  27. 27 .LFB174:
  28. 28 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c"
  29. 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  30. 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
  31. 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @file stm32f4xx_hal_uart.c
  32. 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @author MCD Application Team
  33. 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART HAL module driver.
  34. 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This file provides firmware functions to manage the following
  35. 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * functionalities of the Universal Asynchronous Receiver Transmitter Peripheral (UART).
  36. 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Initialization and de-initialization functions
  37. 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + IO operation functions
  38. 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Peripheral Control functions
  39. 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Peripheral State and Errors functions
  40. 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
  41. 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  42. 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### How to use this driver #####
  43. 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  44. 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  45. 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The UART HAL driver can be used as follows:
  46. 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  47. 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Declare a UART_HandleTypeDef handle structure (eg. UART_HandleTypeDef huart).
  48. 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Initialize the UART low level resources by implementing the HAL_UART_MspInit() API:
  49. 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) Enable the USARTx interface clock.
  50. 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) UART pins configuration:
  51. 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the clock for the UART GPIOs.
  52. 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure these UART pins (TX as alternate function pull-up, RX as alternate func
  53. 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) NVIC configuration if you need to use interrupt process (HAL_UART_Transmit_IT()
  54. 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_Receive_IT() APIs):
  55. 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the USARTx interrupt priority.
  56. 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the NVIC USART IRQ handle.
  57. 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) DMA Configuration if you need to use DMA process (HAL_UART_Transmit_DMA()
  58. 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_Receive_DMA() APIs):
  59. ARM GAS /tmp/ccGtkZvD.s page 2
  60. 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Declare a DMA handle structure for the Tx/Rx stream.
  61. 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the DMAx interface clock.
  62. 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the declared DMA handle structure with the required
  63. 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Tx/Rx parameters.
  64. 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the DMA Tx/Rx stream.
  65. 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Associate the initialized DMA handle to the UART DMA Tx/Rx handle.
  66. 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the priority and enable the NVIC for the transfer complete
  67. 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** interrupt on the DMA Tx/Rx stream.
  68. 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the USARTx interrupt priority and enable the NVIC USART IRQ handle
  69. 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (used for last byte sending completion detection in DMA non circular mode)
  70. 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  71. 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Program the Baud Rate, Word Length, Stop Bit, Parity, Hardware
  72. 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** flow control and Mode(Receiver/Transmitter) in the huart Init structure.
  73. 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  74. 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the UART asynchronous mode, initialize the UART registers by calling
  75. 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_Init() API.
  76. 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  77. 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the UART Half duplex mode, initialize the UART registers by calling
  78. 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_HalfDuplex_Init() API.
  79. 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  80. 51:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the LIN mode, initialize the UART registers by calling the HAL_LIN_Init() API.
  81. 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  82. 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the Multi-Processor mode, initialize the UART registers by calling
  83. 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_MultiProcessor_Init() API.
  84. 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  85. 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  86. 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) The specific UART interrupts (Transmission complete interrupt,
  87. 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RXNE interrupt and Error Interrupts) will be managed using the macros
  88. 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT() and __HAL_UART_DISABLE_IT() inside the transmit
  89. 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and receive process.
  90. 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  91. 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  92. 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) These APIs (HAL_UART_Init() and HAL_HalfDuplex_Init()) configure also the
  93. 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** low level Hardware GPIO, CLOCK, CORTEX...etc) by calling the customized
  94. 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit() API.
  95. 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  96. 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Callback registration #####
  97. 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==================================
  98. 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  99. 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  100. 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The compilation define USE_HAL_UART_REGISTER_CALLBACKS when set to 1
  101. 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** allows the user to configure dynamically the driver callbacks.
  102. 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  103. 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  104. 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Use Function @ref HAL_UART_RegisterCallback() to register a user callback.
  105. 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Function @ref HAL_UART_RegisterCallback() allows to register following callbacks:
  106. 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxHalfCpltCallback : Tx Half Complete Callback.
  107. 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxCpltCallback : Tx Complete Callback.
  108. 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxHalfCpltCallback : Rx Half Complete Callback.
  109. 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxCpltCallback : Rx Complete Callback.
  110. 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) ErrorCallback : Error Callback.
  111. 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortCpltCallback : Abort Complete Callback.
  112. 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortTransmitCpltCallback : Abort Transmit Complete Callback.
  113. 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortReceiveCpltCallback : Abort Receive Complete Callback.
  114. 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspInitCallback : UART MspInit.
  115. 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspDeInitCallback : UART MspDeInit.
  116. 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
  117. ARM GAS /tmp/ccGtkZvD.s page 3
  118. 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and a pointer to the user callback function.
  119. 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  120. 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  121. 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Use function @ref HAL_UART_UnRegisterCallback() to reset a callback to the default
  122. 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** weak (surcharged) function.
  123. 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @ref HAL_UART_UnRegisterCallback() takes as parameters the HAL peripheral handle,
  124. 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and the Callback ID.
  125. 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This function allows to reset following callbacks:
  126. 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxHalfCpltCallback : Tx Half Complete Callback.
  127. 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxCpltCallback : Tx Complete Callback.
  128. 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxHalfCpltCallback : Rx Half Complete Callback.
  129. 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxCpltCallback : Rx Complete Callback.
  130. 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) ErrorCallback : Error Callback.
  131. 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortCpltCallback : Abort Complete Callback.
  132. 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortTransmitCpltCallback : Abort Transmit Complete Callback.
  133. 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortReceiveCpltCallback : Abort Receive Complete Callback.
  134. 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspInitCallback : UART MspInit.
  135. 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspDeInitCallback : UART MspDeInit.
  136. 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  137. 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  138. 108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** By default, after the @ref HAL_UART_Init() and when the state is HAL_UART_STATE_RESET
  139. 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** all callbacks are set to the corresponding weak (surcharged) functions:
  140. 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** examples @ref HAL_UART_TxCpltCallback(), @ref HAL_UART_RxHalfCpltCallback().
  141. 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Exception done for MspInit and MspDeInit functions that are respectively
  142. 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** reset to the legacy weak (surcharged) functions in the @ref HAL_UART_Init()
  143. 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and @ref HAL_UART_DeInit() only when these callbacks are null (not registered beforehand).
  144. 114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** If not, MspInit or MspDeInit are not null, the @ref HAL_UART_Init() and @ref HAL_UART_DeInit()
  145. 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand).
  146. 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  147. 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  148. 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Callbacks can be registered/unregistered in HAL_UART_STATE_READY state only.
  149. 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Exception done MspInit/MspDeInit that can be registered/unregistered
  150. 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in HAL_UART_STATE_READY or HAL_UART_STATE_RESET state, thus registered (user)
  151. 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MspInit/DeInit callbacks can be used during the Init/DeInit.
  152. 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** In that case first register the MspInit/MspDeInit user callbacks
  153. 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** using @ref HAL_UART_RegisterCallback() before calling @ref HAL_UART_DeInit()
  154. 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** or @ref HAL_UART_Init() function.
  155. 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  156. 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  157. 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** When The compilation define USE_HAL_UART_REGISTER_CALLBACKS is set to 0 or
  158. 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** not defined, the callback registration feature is not available
  159. 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and weak (surcharged) callbacks are used.
  160. 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  161. 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  162. 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Three operation modes are available within this driver :
  163. 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  164. 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** Polling mode IO operation ***
  165. 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** =================================
  166. 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  167. 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Send an amount of data in blocking mode using HAL_UART_Transmit()
  168. 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Receive an amount of data in blocking mode using HAL_UART_Receive()
  169. 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  170. 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** Interrupt mode IO operation ***
  171. 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===================================
  172. 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  173. 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Send an amount of data in non blocking mode using HAL_UART_Transmit_IT()
  174. 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of transfer HAL_UART_TxCpltCallback is executed and user can
  175. ARM GAS /tmp/ccGtkZvD.s page 4
  176. 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxCpltCallback
  177. 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Receive an amount of data in non blocking mode using HAL_UART_Receive_IT()
  178. 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of transfer HAL_UART_RxCpltCallback is executed and user can
  179. 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxCpltCallback
  180. 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) In case of transfer Error, HAL_UART_ErrorCallback() function is executed and user can
  181. 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_ErrorCallback
  182. 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  183. 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** DMA mode IO operation ***
  184. 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================
  185. 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  186. 155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Send an amount of data in non blocking mode (DMA) using HAL_UART_Transmit_DMA()
  187. 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of half transfer HAL_UART_TxHalfCpltCallback is executed and user ca
  188. 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxHalfCpltCallback
  189. 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of transfer HAL_UART_TxCpltCallback is executed and user can
  190. 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxCpltCallback
  191. 160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Receive an amount of data in non blocking mode (DMA) using HAL_UART_Receive_DMA()
  192. 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of half transfer HAL_UART_RxHalfCpltCallback is executed and user can
  193. 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxHalfCpltCallback
  194. 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of transfer HAL_UART_RxCpltCallback is executed and user can
  195. 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxCpltCallback
  196. 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) In case of transfer Error, HAL_UART_ErrorCallback() function is executed and user can
  197. 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_ErrorCallback
  198. 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Pause the DMA Transfer using HAL_UART_DMAPause()
  199. 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Resume the DMA Transfer using HAL_UART_DMAResume()
  200. 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Stop the DMA Transfer using HAL_UART_DMAStop()
  201. 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  202. 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** UART HAL driver macros list ***
  203. 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** =============================================
  204. 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  205. 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Below the list of most used macros in UART HAL driver.
  206. 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  207. 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_ENABLE: Enable the UART peripheral
  208. 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_DISABLE: Disable the UART peripheral
  209. 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_GET_FLAG : Check whether the specified UART flag is set or not
  210. 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_CLEAR_FLAG : Clear the specified UART pending flag
  211. 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_ENABLE_IT: Enable the specified UART interrupt
  212. 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_DISABLE_IT: Disable the specified UART interrupt
  213. 182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_GET_IT_SOURCE: Check whether the specified UART interrupt has occurred or not
  214. 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  215. 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  216. 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) You can refer to the UART HAL driver header file for more useful macros
  217. 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  218. 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
  219. 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  220. 189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) Additionnal remark: If the parity is enabled, then the MSB bit of the data written
  221. 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the data register is transmitted but is changed by the parity bit.
  222. 191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Depending on the frame length defined by the M bit (8-bits or 9-bits),
  223. 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the possible UART frame formats are as listed in the following table:
  224. 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** +-------------------------------------------------------------+
  225. 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | M bit | PCE bit | UART frame |
  226. 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------------------|---------------------------------------|
  227. 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 0 | 0 | | SB | 8 bit data | STB | |
  228. 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
  229. 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 0 | 1 | | SB | 7 bit data | PB | STB | |
  230. 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
  231. 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 1 | 0 | | SB | 9 bit data | STB | |
  232. 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
  233. ARM GAS /tmp/ccGtkZvD.s page 5
  234. 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 1 | 1 | | SB | 8 bit data | PB | STB | |
  235. 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** +-------------------------------------------------------------+
  236. 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
  237. 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @attention
  238. 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  239. 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * <h2><center>&copy; Copyright (c) 2016 STMicroelectronics.
  240. 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * All rights reserved.</center></h2>
  241. 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  242. 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This software component is licensed by ST under BSD 3-Clause license,
  243. 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the "License"; You may not use this file except in compliance with the
  244. 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * License. You may obtain a copy of the License at:
  245. 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * opensource.org/licenses/BSD-3-Clause
  246. 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  247. 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
  248. 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  249. 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  250. 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Includes ------------------------------------------------------------------*/
  251. 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #include "stm32f4xx_hal.h"
  252. 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  253. 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup STM32F4xx_HAL_Driver
  254. 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  255. 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  256. 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  257. 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART UART
  258. 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief HAL UART module driver
  259. 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  260. 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  261. 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #ifdef HAL_UART_MODULE_ENABLED
  262. 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  263. 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private typedef -----------------------------------------------------------*/
  264. 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private define ------------------------------------------------------------*/
  265. 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup UART_Private_Constants
  266. 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  267. 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  268. 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  269. 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  270. 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  271. 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private macro -------------------------------------------------------------*/
  272. 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private variables ---------------------------------------------------------*/
  273. 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private function prototypes -----------------------------------------------*/
  274. 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup UART_Private_Functions UART Private Functions
  275. 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  276. 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  277. 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  278. 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  279. 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void UART_InitCallbacksToDefault(UART_HandleTypeDef *huart);
  280. 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  281. 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndTxTransfer(UART_HandleTypeDef *huart);
  282. 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndRxTransfer(UART_HandleTypeDef *huart);
  283. 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATransmitCplt(DMA_HandleTypeDef *hdma);
  284. 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAReceiveCplt(DMA_HandleTypeDef *hdma);
  285. 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxHalfCplt(DMA_HandleTypeDef *hdma);
  286. 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxHalfCplt(DMA_HandleTypeDef *hdma);
  287. 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAError(DMA_HandleTypeDef *hdma);
  288. 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAAbortOnError(DMA_HandleTypeDef *hdma);
  289. 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxAbortCallback(DMA_HandleTypeDef *hdma);
  290. 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxAbortCallback(DMA_HandleTypeDef *hdma);
  291. ARM GAS /tmp/ccGtkZvD.s page 6
  292. 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxOnlyAbortCallback(DMA_HandleTypeDef *hdma);
  293. 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxOnlyAbortCallback(DMA_HandleTypeDef *hdma);
  294. 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Transmit_IT(UART_HandleTypeDef *huart);
  295. 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_EndTransmit_IT(UART_HandleTypeDef *huart);
  296. 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Receive_IT(UART_HandleTypeDef *huart);
  297. 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, Flag
  298. 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_SetConfig(UART_HandleTypeDef *huart);
  299. 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  300. 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  301. 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  302. 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  303. 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  304. 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Exported functions ---------------------------------------------------------*/
  305. 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions UART Exported Functions
  306. 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  307. 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  308. 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  309. 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group1 Initialization and de-initialization functions
  310. 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initialization and Configuration functions
  311. 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  312. 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
  313. 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
  314. 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Initialization and Configuration functions #####
  315. 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
  316. 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  317. 284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to initialize the USARTx or the UARTy
  318. 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in asynchronous mode.
  319. 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) For the asynchronous mode only these parameters can be configured:
  320. 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Baud Rate
  321. 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Word Length
  322. 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Stop Bit
  323. 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Parity: If the parity is enabled, then the MSB bit of the data written
  324. 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the data register is transmitted but is changed by the parity bit.
  325. 292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Depending on the frame length defined by the M bit (8-bits or 9-bits),
  326. 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** please refer to Reference manual for possible UART frame formats.
  327. 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Hardware flow control
  328. 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Receiver/transmitter modes
  329. 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Over Sampling Method
  330. 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  331. 298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL_UART_Init(), HAL_HalfDuplex_Init(), HAL_LIN_Init() and HAL_MultiProcessor_Init() APIs
  332. 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** follow respectively the UART asynchronous, UART Half duplex, LIN and Multi-Processor configurat
  333. 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** procedures (details for the procedures are available in reference manual
  334. 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (RM0430 for STM32F4X3xx MCUs and RM0402 for STM32F412xx MCUs
  335. 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0383 for STM32F411xC/E MCUs and RM0401 for STM32F410xx MCUs
  336. 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0090 for STM32F4X5xx/STM32F4X7xx/STM32F429xx/STM32F439xx MCUs
  337. 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0390 for STM32F446xx MCUs and RM0386 for STM32F469xx/STM32F479xx MCUs)).
  338. 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  339. 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
  340. 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  341. 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  342. 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  343. 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  344. 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the UART mode according to the specified parameters in
  345. 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the UART_InitTypeDef and create the associated handle.
  346. 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  347. 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  348. 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  349. ARM GAS /tmp/ccGtkZvD.s page 7
  350. 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  351. 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Init(UART_HandleTypeDef *huart)
  352. 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  353. 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  354. 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
  355. 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  356. 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  357. 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  358. 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  359. 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  360. 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.HwFlowCtl != UART_HWCONTROL_NONE)
  361. 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  362. 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* The hardware flow control is available only for USART1, USART2, USART3 and USART6 */
  363. 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HWFLOW_INSTANCE(huart->Instance));
  364. 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HARDWARE_FLOW_CONTROL(huart->Init.HwFlowCtl));
  365. 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  366. 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  367. 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  368. 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  369. 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  370. 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
  371. 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  372. 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  373. 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
  374. 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  375. 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
  376. 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
  377. 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  378. 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  379. 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
  380. 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  381. 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
  382. 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  383. 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
  384. 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  385. 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  386. 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
  387. 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
  388. 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  389. 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
  390. 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
  391. 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  392. 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  393. 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  394. 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  395. 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  396. 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
  397. 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
  398. 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  399. 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
  400. 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
  401. 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  402. 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In asynchronous mode, the following bits must be kept cleared:
  403. 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
  404. 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register.*/
  405. 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
  406. 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
  407. ARM GAS /tmp/ccGtkZvD.s page 8
  408. 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  409. 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
  410. 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
  411. 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  412. 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state */
  413. 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  414. 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  415. 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  416. 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  417. 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  418. 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  419. 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  420. 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  421. 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the half-duplex mode according to the specified
  422. 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
  423. 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  424. 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  425. 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  426. 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  427. 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_Init(UART_HandleTypeDef *huart)
  428. 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  429. 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  430. 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
  431. 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  432. 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  433. 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  434. 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  435. 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  436. 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HALFDUPLEX_INSTANCE(huart->Instance));
  437. 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
  438. 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  439. 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  440. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
  441. 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  442. 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
  443. 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
  444. 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  445. 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  446. 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
  447. 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  448. 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
  449. 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  450. 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
  451. 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  452. 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  453. 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
  454. 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
  455. 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  456. 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
  457. 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
  458. 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  459. 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  460. 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  461. 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  462. 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  463. 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
  464. 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
  465. ARM GAS /tmp/ccGtkZvD.s page 9
  466. 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  467. 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
  468. 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
  469. 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  470. 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In half-duplex mode, the following bits must be kept cleared:
  471. 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
  472. 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN and IREN bits in the USART_CR3 register.*/
  473. 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
  474. 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_IREN | USART_CR3_SCEN));
  475. 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  476. 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the Half-Duplex mode by setting the HDSEL bit in the CR3 register */
  477. 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_HDSEL);
  478. 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  479. 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
  480. 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
  481. 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  482. 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state*/
  483. 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  484. 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  485. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  486. 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  487. 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  488. 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  489. 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  490. 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  491. 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the LIN mode according to the specified
  492. 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
  493. 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  494. 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  495. 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param BreakDetectLength Specifies the LIN break detection length.
  496. 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
  497. 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_LINBREAKDETECTLENGTH_10B: 10-bit break detection
  498. 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_LINBREAKDETECTLENGTH_11B: 11-bit break detection
  499. 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  500. 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  501. 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_LIN_Init(UART_HandleTypeDef *huart, uint32_t BreakDetectLength)
  502. 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  503. 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  504. 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
  505. 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  506. 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  507. 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  508. 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  509. 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the LIN UART instance */
  510. 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_INSTANCE(huart->Instance));
  511. 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  512. 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Break detection length parameter */
  513. 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_BREAK_DETECT_LENGTH(BreakDetectLength));
  514. 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_WORD_LENGTH(huart->Init.WordLength));
  515. 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_OVERSAMPLING(huart->Init.OverSampling));
  516. 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  517. 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
  518. 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  519. 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
  520. 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
  521. 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  522. 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  523. ARM GAS /tmp/ccGtkZvD.s page 10
  524. 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
  525. 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  526. 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
  527. 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  528. 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
  529. 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  530. 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  531. 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
  532. 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
  533. 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  534. 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
  535. 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
  536. 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  537. 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  538. 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  539. 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  540. 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  541. 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
  542. 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
  543. 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  544. 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
  545. 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
  546. 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  547. 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In LIN mode, the following bits must be kept cleared:
  548. 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - CLKEN bits in the USART_CR2 register,
  549. 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register.*/
  550. 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_CLKEN));
  551. 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_HDSEL | USART_CR3_IREN | USART_CR3_SCEN));
  552. 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  553. 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the LIN mode by setting the LINEN bit in the CR2 register */
  554. 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, USART_CR2_LINEN);
  555. 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  556. 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the USART LIN Break detection length. */
  557. 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, USART_CR2_LBDL);
  558. 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, BreakDetectLength);
  559. 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  560. 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
  561. 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
  562. 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  563. 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state*/
  564. 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  565. 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  566. 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  567. 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  568. 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  569. 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  570. 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  571. 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  572. 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the Multi-Processor mode according to the specified
  573. 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
  574. 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  575. 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  576. 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Address USART address
  577. 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param WakeUpMethod specifies the USART wake-up method.
  578. 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
  579. 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_WAKEUPMETHOD_IDLELINE: Wake-up by an idle line detection
  580. 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_WAKEUPMETHOD_ADDRESSMARK: Wake-up by an address mark
  581. ARM GAS /tmp/ccGtkZvD.s page 11
  582. 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  583. 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  584. 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_Init(UART_HandleTypeDef *huart, uint8_t Address, uint32_t Wake
  585. 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  586. 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  587. 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
  588. 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  589. 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  590. 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  591. 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  592. 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  593. 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  594. 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  595. 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Address & wake up method parameters */
  596. 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WAKEUPMETHOD(WakeUpMethod));
  597. 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_ADDRESS(Address));
  598. 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
  599. 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  600. 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  601. 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
  602. 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  603. 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
  604. 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
  605. 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  606. 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  607. 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
  608. 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  609. 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
  610. 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  611. 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
  612. 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  613. 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  614. 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
  615. 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
  616. 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  617. 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
  618. 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
  619. 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  620. 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  621. 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  622. 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  623. 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  624. 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
  625. 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
  626. 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  627. 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
  628. 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
  629. 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  630. 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In Multi-Processor mode, the following bits must be kept cleared:
  631. 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
  632. 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register */
  633. 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
  634. 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
  635. 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  636. 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the USART address node */
  637. 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, USART_CR2_ADD);
  638. 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, Address);
  639. ARM GAS /tmp/ccGtkZvD.s page 12
  640. 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  641. 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the wake up method by setting the WAKE bit in the CR1 register */
  642. 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_WAKE);
  643. 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, WakeUpMethod);
  644. 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  645. 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
  646. 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
  647. 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  648. 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state */
  649. 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  650. 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  651. 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  652. 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  653. 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  654. 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  655. 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  656. 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  657. 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DeInitializes the UART peripheral.
  658. 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  659. 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  660. 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  661. 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  662. 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DeInit(UART_HandleTypeDef *huart)
  663. 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  664. 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  665. 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
  666. 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  667. 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  668. 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  669. 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  670. 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  671. 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  672. 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  673. 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  674. 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  675. 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the Peripheral */
  676. 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
  677. 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  678. 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  679. 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspDeInitCallback == NULL)
  680. 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  681. 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit;
  682. 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  683. 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DeInit the low level hardware */
  684. 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback(huart);
  685. 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  686. 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DeInit the low level hardware */
  687. 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspDeInit(huart);
  688. 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  689. 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  690. 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  691. 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_RESET;
  692. 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_RESET;
  693. 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  694. 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlock */
  695. 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  696. 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  697. ARM GAS /tmp/ccGtkZvD.s page 13
  698. 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  699. 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  700. 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  701. 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  702. 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART MSP Init.
  703. 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  704. 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  705. 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  706. 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  707. 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_MspInit(UART_HandleTypeDef *huart)
  708. 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  709. 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  710. 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  711. 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  712. 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_MspInit could be implemented in the user file
  713. 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  714. 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  715. 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  716. 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  717. 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART MSP DeInit.
  718. 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  719. 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  720. 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  721. 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  722. 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_MspDeInit(UART_HandleTypeDef *huart)
  723. 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  724. 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  725. 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  726. 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  727. 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_MspDeInit could be implemented in the user file
  728. 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  729. 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  730. 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  731. 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  732. 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  733. 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Register a User UART Callback
  734. 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * To be used instead of the weak predefined callback
  735. 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart uart handle
  736. 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param CallbackID ID of the callback to be registered
  737. 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
  738. 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_HALFCOMPLETE_CB_ID Tx Half Complete Callback ID
  739. 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_COMPLETE_CB_ID Tx Complete Callback ID
  740. 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_HALFCOMPLETE_CB_ID Rx Half Complete Callback ID
  741. 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_COMPLETE_CB_ID Rx Complete Callback ID
  742. 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ERROR_CB_ID Error Callback ID
  743. 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_COMPLETE_CB_ID Abort Complete Callback ID
  744. 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID Abort Transmit Complete Callback ID
  745. 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID Abort Receive Complete Callback ID
  746. 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPINIT_CB_ID MspInit Callback ID
  747. 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPDEINIT_CB_ID MspDeInit Callback ID
  748. 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pCallback pointer to the Callback function
  749. 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  750. 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  751. 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_RegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef C
  752. 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  753. 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef status = HAL_OK;
  754. 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  755. ARM GAS /tmp/ccGtkZvD.s page 14
  756. 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (pCallback == NULL)
  757. 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  758. 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  759. 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  760. 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  761. 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  762. 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  763. 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process locked */
  764. 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  765. 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  766. 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
  767. 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  768. 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
  769. 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  770. 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_HALFCOMPLETE_CB_ID :
  771. 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = pCallback;
  772. 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  773. 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  774. 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_COMPLETE_CB_ID :
  775. 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = pCallback;
  776. 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  777. 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  778. 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_HALFCOMPLETE_CB_ID :
  779. 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = pCallback;
  780. 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  781. 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  782. 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_COMPLETE_CB_ID :
  783. 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = pCallback;
  784. 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  785. 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  786. 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ERROR_CB_ID :
  787. 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = pCallback;
  788. 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  789. 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  790. 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_COMPLETE_CB_ID :
  791. 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = pCallback;
  792. 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  793. 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  794. 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID :
  795. 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = pCallback;
  796. 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  797. 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  798. 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID :
  799. 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = pCallback;
  800. 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  801. 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  802. 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
  803. 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = pCallback;
  804. 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  805. 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  806. 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
  807. 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = pCallback;
  808. 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  809. 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  810. 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
  811. 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  812. 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  813. ARM GAS /tmp/ccGtkZvD.s page 15
  814. 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  815. 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  816. 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  817. 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  818. 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  819. 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  820. 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else if (huart->gState == HAL_UART_STATE_RESET)
  821. 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  822. 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
  823. 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  824. 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
  825. 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = pCallback;
  826. 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  827. 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  828. 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
  829. 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = pCallback;
  830. 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  831. 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  832. 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
  833. 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  834. 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  835. 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  836. 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  837. 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  838. 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  839. 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  840. 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  841. 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  842. 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  843. 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  844. 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  845. 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  846. 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  847. 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  848. 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  849. 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  850. 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Release Lock */
  851. 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  852. 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  853. 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return status;
  854. 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  855. 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  856. 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  857. 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Unregister an UART Callback
  858. 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * UART callaback is redirected to the weak predefined callback
  859. 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart uart handle
  860. 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param CallbackID ID of the callback to be unregistered
  861. 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
  862. 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_HALFCOMPLETE_CB_ID Tx Half Complete Callback ID
  863. 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_COMPLETE_CB_ID Tx Complete Callback ID
  864. 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_HALFCOMPLETE_CB_ID Rx Half Complete Callback ID
  865. 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_COMPLETE_CB_ID Rx Complete Callback ID
  866. 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ERROR_CB_ID Error Callback ID
  867. 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_COMPLETE_CB_ID Abort Complete Callback ID
  868. 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID Abort Transmit Complete Callback ID
  869. 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID Abort Receive Complete Callback ID
  870. 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPINIT_CB_ID MspInit Callback ID
  871. ARM GAS /tmp/ccGtkZvD.s page 16
  872. 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPDEINIT_CB_ID MspDeInit Callback ID
  873. 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  874. 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  875. 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_UnRegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef
  876. 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  877. 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef status = HAL_OK;
  878. 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  879. 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process locked */
  880. 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  881. 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  882. 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_UART_STATE_READY == huart->gState)
  883. 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  884. 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
  885. 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  886. 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_HALFCOMPLETE_CB_ID :
  887. 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = HAL_UART_TxHalfCpltCallback; /* Legacy weak TxHa
  888. 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  889. 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  890. 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_COMPLETE_CB_ID :
  891. 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = HAL_UART_TxCpltCallback; /* Legacy weak TxCpl
  892. 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  893. 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  894. 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_HALFCOMPLETE_CB_ID :
  895. 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = HAL_UART_RxHalfCpltCallback; /* Legacy weak RxHal
  896. 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  897. 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  898. 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_COMPLETE_CB_ID :
  899. 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = HAL_UART_RxCpltCallback; /* Legacy weak RxCpl
  900. 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  901. 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  902. 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ERROR_CB_ID :
  903. 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = HAL_UART_ErrorCallback; /* Legacy weak Error
  904. 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  905. 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  906. 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_COMPLETE_CB_ID :
  907. 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = HAL_UART_AbortCpltCallback; /* Legacy weak Abort
  908. 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  909. 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  910. 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID :
  911. 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = HAL_UART_AbortTransmitCpltCallback; /* Legacy weak Abort
  912. 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  913. 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  914. 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID :
  915. 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = HAL_UART_AbortReceiveCpltCallback; /* Legacy weak Abort
  916. 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  917. 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  918. 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
  919. 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit; /* Legacy weak MspIn
  920. 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  921. 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  922. 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
  923. 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit; /* Legacy weak MspDe
  924. 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  925. 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  926. 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
  927. 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  928. 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  929. ARM GAS /tmp/ccGtkZvD.s page 17
  930. 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  931. 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  932. 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  933. 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  934. 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  935. 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  936. 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else if (HAL_UART_STATE_RESET == huart->gState)
  937. 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  938. 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
  939. 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  940. 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
  941. 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
  942. 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  943. 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  944. 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
  945. 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit;
  946. 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  947. 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  948. 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
  949. 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  950. 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  951. 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  952. 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  953. 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  954. 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
  955. 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  956. 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  957. 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  958. 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  959. 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
  960. 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
  961. 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  962. 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
  963. 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
  964. 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  965. 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  966. 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Release Lock */
  967. 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  968. 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  969. 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return status;
  970. 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  971. 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  972. 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  973. 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  974. 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  975. 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  976. 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  977. 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group2 IO operation functions
  978. 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Transmit and Receive functions
  979. 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  980. 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
  981. 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
  982. 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### IO operation functions #####
  983. 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
  984. 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to manage the UART asynchronous
  985. 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and Half duplex data transfers.
  986. 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  987. ARM GAS /tmp/ccGtkZvD.s page 18
  988. 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) There are two modes of transfer:
  989. 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Blocking mode: The communication is performed in polling mode.
  990. 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL status of all data processing is returned by the same function
  991. 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** after finishing transfer.
  992. 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Non-Blocking mode: The communication is performed using Interrupts
  993. 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** or DMA, these API's return the HAL status.
  994. 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The end of the data processing will be indicated through the
  995. 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dedicated UART IRQ when using Interrupt mode or the DMA IRQ when
  996. 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** using DMA mode.
  997. 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL_UART_TxCpltCallback(), HAL_UART_RxCpltCallback() user callbacks
  998. 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will be executed respectively at the end of the transmit or receive process
  999. 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL_UART_ErrorCallback()user callback will be executed when a communication error is
  1000. 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1001. 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Blocking mode API's are :
  1002. 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit()
  1003. 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive()
  1004. 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1005. 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode API's with Interrupt are :
  1006. 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit_IT()
  1007. 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive_IT()
  1008. 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_IRQHandler()
  1009. 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1010. 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode API's with DMA are :
  1011. 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit_DMA()
  1012. 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive_DMA()
  1013. 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAPause()
  1014. 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAResume()
  1015. 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAStop()
  1016. 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1017. 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) A set of Transfer Complete Callbacks are provided in Non_Blocking mode:
  1018. 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_TxHalfCpltCallback()
  1019. 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_TxCpltCallback()
  1020. 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_RxHalfCpltCallback()
  1021. 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_RxCpltCallback()
  1022. 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_ErrorCallback()
  1023. 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1024. 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode transfers could be aborted using Abort API's :
  1025. 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Abort()
  1026. 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmit()
  1027. 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceive()
  1028. 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Abort_IT()
  1029. 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmit_IT()
  1030. 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceive_IT()
  1031. 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1032. 987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For Abort services based on interrupts (HAL_UART_Abortxxx_IT), a set of Abort Complete Call
  1033. 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortCpltCallback()
  1034. 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmitCpltCallback()
  1035. 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceiveCpltCallback()
  1036. 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1037. 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) In Non-Blocking mode transfers, possible errors are split into 2 categories.
  1038. 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Errors are handled as follows :
  1039. 994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Error is considered as Recoverable and non blocking : Transfer could go till end, but er
  1040. 995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** to be evaluated by user : this concerns Frame Error, Parity Error or Noise Error in Inte
  1041. 996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Received character is then retrieved and stored in Rx buffer, Error code is set to allow
  1042. 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_ErrorCallback() user callback is executed. Transfer is kept ongoing on UART
  1043. 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** If user wants to abort it, Abort services should be called by user.
  1044. 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Error is considered as Blocking : Transfer could not be completed properly and is aborte
  1045. ARM GAS /tmp/ccGtkZvD.s page 19
  1046. 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This concerns Overrun Error In Interrupt mode reception and all errors in DMA mode.
  1047. 1001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Error code is set to allow user to identify error type, and HAL_UART_ErrorCallback() use
  1048. 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1049. 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** -@- In the Half duplex communication, it is forbidden to run the transmit
  1050. 1004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and receive process in parallel, the UART state HAL_UART_STATE_BUSY_TX_RX can't be useful.
  1051. 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1052. 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
  1053. 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  1054. 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1055. 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1056. 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1057. 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in blocking mode.
  1058. 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1059. 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1060. 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1061. 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
  1062. 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
  1063. 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1064. 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1065. 1019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint3
  1066. 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1067. 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  1068. 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
  1069. 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1070. 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
  1071. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
  1072. 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1073. 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1074. 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1075. 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1076. 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1077. 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1078. 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1079. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1080. 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1081. 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1082. 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  1083. 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1084. 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init tickstart for timeout managment */
  1085. 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tickstart = HAL_GetTick();
  1086. 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1087. 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  1088. 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  1089. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->TxXferCount > 0U)
  1090. 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1091. 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount--;
  1092. 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  1093. 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1094. 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK)
  1095. 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1096. 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1097. 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1098. 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) pData;
  1099. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (*tmp & (uint16_t)0x01FF);
  1100. 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  1101. 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1102. 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  1103. ARM GAS /tmp/ccGtkZvD.s page 20
  1104. 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1105. 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1106. 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1107. 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  1108. 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1109. 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1110. 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1111. 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1112. 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK)
  1113. 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1114. 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1115. 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1116. 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (*pData++ & (uint8_t)0xFF);
  1117. 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1118. 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1119. 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1120. 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TC, RESET, tickstart, Timeout) != HAL_OK)
  1121. 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1122. 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1123. 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1124. 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1125. 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Tx process, restore huart->gState to Ready */
  1126. 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1127. 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1128. 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1129. 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1130. 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1131. 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1132. 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1133. 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1134. 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1135. 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1136. 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1137. 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1138. 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1139. 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1140. 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in blocking mode.
  1141. 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1142. 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1143. 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1144. 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
  1145. 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
  1146. 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1147. 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1148. 1101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32
  1149. 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1150. 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  1151. 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
  1152. 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1153. 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
  1154. 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
  1155. 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1156. 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1157. 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1158. 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1159. 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1160. 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1161. ARM GAS /tmp/ccGtkZvD.s page 21
  1162. 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1163. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1164. 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1165. 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1166. 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  1167. 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1168. 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init tickstart for timeout managment */
  1169. 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tickstart = HAL_GetTick();
  1170. 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1171. 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  1172. 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  1173. 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1174. 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the remain data to be received */
  1175. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->RxXferCount > 0U)
  1176. 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1177. 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount--;
  1178. 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  1179. 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1180. 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK
  1181. 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1182. 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1183. 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1184. 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) pData;
  1185. 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  1186. 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1187. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x01FF);
  1188. 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  1189. 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1190. 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1191. 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1192. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x00FF);
  1193. 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  1194. 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1195. 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1196. 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1197. 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1198. 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1199. 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK
  1200. 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1201. 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1202. 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1203. 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  1204. 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1205. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *pData++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x00FF);
  1206. 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1207. 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1208. 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1209. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *pData++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x007F);
  1210. 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1211. 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1212. 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1213. 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1214. 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1215. 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
  1216. 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  1217. 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1218. 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1219. ARM GAS /tmp/ccGtkZvD.s page 22
  1220. 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1221. 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1222. 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1223. 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1224. 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1225. 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1226. 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1227. 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1228. 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1229. 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1230. 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1231. 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
  1232. 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1233. 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1234. 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1235. 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
  1236. 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1237. 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1238. 1189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Transmit_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
  1239. 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1240. 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
  1241. 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
  1242. 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1243. 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1244. 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1245. 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1246. 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1247. 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1248. 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1249. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1250. 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1251. 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr = pData;
  1252. 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  1253. 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  1254. 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1255. 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1256. 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  1257. 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1258. 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1259. 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1260. 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1261. 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit data register empty Interrupt */
  1262. 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_TXE);
  1263. 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1264. 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1265. 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1266. 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1267. 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1268. 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1269. 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1270. 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1271. 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1272. 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1273. 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode.
  1274. 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1275. 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1276. 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1277. ARM GAS /tmp/ccGtkZvD.s page 23
  1278. 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
  1279. 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1280. 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1281. 1231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
  1282. 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1283. 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
  1284. 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
  1285. 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1286. 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1287. 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1288. 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1289. 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1290. 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1291. 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1292. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1293. 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1294. 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr = pData;
  1295. 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  1296. 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  1297. 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1298. 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1299. 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  1300. 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1301. 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1302. 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1303. 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1304. 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Parity Error Interrupt */
  1305. 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_PE);
  1306. 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1307. 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Error Interrupt: (Frame error, noise error, overrun error) */
  1308. 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_ERR);
  1309. 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1310. 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Data Register not empty Interrupt */
  1311. 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_RXNE);
  1312. 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1313. 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1314. 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1315. 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1316. 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1317. 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1318. 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1319. 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1320. 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1321. 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1322. 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
  1323. 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1324. 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1325. 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1326. 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
  1327. 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1328. 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1329. 1279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Transmit_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
  1330. 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1331. 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  1332. 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1333. 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
  1334. 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
  1335. ARM GAS /tmp/ccGtkZvD.s page 24
  1336. 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1337. 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1338. 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1339. 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1340. 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1341. 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1342. 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1343. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1344. 1293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1345. 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr = pData;
  1346. 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  1347. 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  1348. 1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1349. 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1350. 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  1351. 1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1352. 1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA transfer complete callback */
  1353. 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferCpltCallback = UART_DMATransmitCplt;
  1354. 1303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1355. 1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Half transfer complete callback */
  1356. 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferHalfCpltCallback = UART_DMATxHalfCplt;
  1357. 1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1358. 1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA error callback */
  1359. 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferErrorCallback = UART_DMAError;
  1360. 1309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1361. 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA abort callback */
  1362. 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  1363. 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1364. 1313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART transmit DMA stream */
  1365. 1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint32_t *)&pData;
  1366. 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Start_IT(huart->hdmatx, *(uint32_t *)tmp, (uint32_t)&huart->Instance->DR, Size);
  1367. 1316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1368. 1317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear the TC flag in the SR register by writing 0 to it */
  1369. 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_FLAG(huart, UART_FLAG_TC);
  1370. 1319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1371. 1320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1372. 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1373. 1322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1374. 1323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA transfer for transmit request by setting the DMAT bit
  1375. 1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
  1376. 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1377. 1326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1378. 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1379. 1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1380. 1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1381. 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1382. 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1383. 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1384. 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1385. 1334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1386. 1335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1387. 1336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode.
  1388. 1337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1389. 1338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1390. 1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
  1391. 1340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
  1392. 1341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note When the UART parity is enabled (PCE = 1) the received data contains the parity bit.
  1393. ARM GAS /tmp/ccGtkZvD.s page 25
  1394. 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1395. 1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1396. 1344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Receive_DMA(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size)
  1397. 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1398. 1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  1399. 1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1400. 1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
  1401. 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
  1402. 1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1403. 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
  1404. 1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1405. 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
  1406. 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1407. 1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1408. 1356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1409. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1410. 1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1411. 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr = pData;
  1412. 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  1413. 1361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1414. 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1415. 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  1416. 1364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1417. 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA transfer complete callback */
  1418. 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferCpltCallback = UART_DMAReceiveCplt;
  1419. 1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1420. 1368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Half transfer complete callback */
  1421. 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferHalfCpltCallback = UART_DMARxHalfCplt;
  1422. 1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1423. 1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA error callback */
  1424. 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferErrorCallback = UART_DMAError;
  1425. 1373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1426. 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA abort callback */
  1427. 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  1428. 1376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1429. 1377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA stream */
  1430. 1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint32_t *)&pData;
  1431. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Start_IT(huart->hdmarx, (uint32_t)&huart->Instance->DR, *(uint32_t *)tmp, Size);
  1432. 1380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1433. 1381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear the Overrun flag just before enabling the DMA Rx request: can be mandatory for the sec
  1434. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_OREFLAG(huart);
  1435. 1383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1436. 1384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1437. 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1438. 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1439. 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Parity Error Interrupt */
  1440. 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_PEIE);
  1441. 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1442. 1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Error Interrupt: (Frame error, noise error, overrun error) */
  1443. 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1444. 1392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1445. 1393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA transfer for the receiver request by setting the DMAR bit
  1446. 1394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
  1447. 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1448. 1396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1449. 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1450. 1398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1451. ARM GAS /tmp/ccGtkZvD.s page 26
  1452. 1399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1453. 1400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1454. 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  1455. 1402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1456. 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1457. 1404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1458. 1405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1459. 1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Pauses the DMA Transfer.
  1460. 1407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1461. 1408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1462. 1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1463. 1410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1464. 1411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart)
  1465. 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1466. 1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  1467. 1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1468. 1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1469. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1470. 1417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1471. 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
  1472. 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  1473. 1420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1474. 1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request */
  1475. 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1476. 1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1477. 1424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1478. 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
  1479. 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  1480. 1427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1481. 1428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  1482. 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_PEIE);
  1483. 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1484. 1431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1485. 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request */
  1486. 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1487. 1434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1488. 1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1489. 1436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1490. 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1491. 1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1492. 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1493. 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1494. 1441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1495. 1442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1496. 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Resumes the DMA Transfer.
  1497. 1444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1498. 1445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1499. 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1500. 1447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1501. 1448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart)
  1502. 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1503. 1450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  1504. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  1505. 1452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1506. 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_BUSY_TX)
  1507. 1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1508. 1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART DMA Tx request */
  1509. ARM GAS /tmp/ccGtkZvD.s page 27
  1510. 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1511. 1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1512. 1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1513. 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_BUSY_RX)
  1514. 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1515. 1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear the Overrun flag before resuming the Rx transfer*/
  1516. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_OREFLAG(huart);
  1517. 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1518. 1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reenable PE and ERR (Frame error, noise error, overrun error) interrupts */
  1519. 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_PEIE);
  1520. 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1521. 1467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1522. 1468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART DMA Rx request */
  1523. 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1524. 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1525. 1471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1526. 1472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  1527. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  1528. 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1529. 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1530. 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1531. 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1532. 1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1533. 1479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Stops the DMA Transfer.
  1534. 1480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  1535. 1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  1536. 1482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1537. 1483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1538. 1484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart)
  1539. 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1540. 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  1541. 1487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* The Lock is not implemented on this API to allow the user application
  1542. 1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** to call the HAL UART API under callbacks HAL_UART_TxCpltCallback() / HAL_UART_RxCpltCallback()
  1543. 1489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** when calling HAL_DMA_Abort() API the DMA TX/RX Transfer complete interrupt is generated
  1544. 1490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and the correspond call back is executed HAL_UART_TxCpltCallback() / HAL_UART_RxCpltCallback()
  1545. 1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1546. 1492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1547. 1493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Tx request if ongoing */
  1548. 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
  1549. 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  1550. 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1551. 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1552. 1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1553. 1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream */
  1554. 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1555. 1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1556. 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Abort(huart->hdmatx);
  1557. 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1558. 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
  1559. 1505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1560. 1506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1561. 1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Rx request if ongoing */
  1562. 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
  1563. 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  1564. 1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1565. 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1566. 1512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1567. ARM GAS /tmp/ccGtkZvD.s page 28
  1568. 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream */
  1569. 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  1570. 1515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1571. 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Abort(huart->hdmarx);
  1572. 1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1573. 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
  1574. 1519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1575. 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1576. 1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1577. 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1578. 1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1579. 1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1580. 1525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing transfers (blocking mode).
  1581. 1526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1582. 1527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing transfer started in Interrupt or
  1583. 1528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1584. 1529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx and Rx)
  1585. 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1586. 1531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort (in case of transfer in DMA mode)
  1587. 1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1588. 1533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
  1589. 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1590. 1535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1591. 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Abort(UART_HandleTypeDef *huart)
  1592. 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1593. 1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  1594. 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_
  1595. 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1596. 1541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1597. 1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
  1598. 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
  1599. 1544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1600. 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1601. 1546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1602. 1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream: use blocking DMA Abort API (no callback) */
  1603. 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1604. 1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1605. 1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
  1606. 1551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
  1607. 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  1608. 1553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1609. 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmatx) != HAL_OK)
  1610. 1555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1611. 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmatx) == HAL_DMA_ERROR_TIMEOUT)
  1612. 1557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1613. 1558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
  1614. 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
  1615. 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1616. 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1617. 1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1618. 1563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1619. 1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1620. 1565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1621. 1566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1622. 1567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
  1623. 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  1624. 1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1625. ARM GAS /tmp/ccGtkZvD.s page 29
  1626. 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1627. 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1628. 1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream: use blocking DMA Abort API (no callback) */
  1629. 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  1630. 1574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1631. 1575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
  1632. 1576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
  1633. 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  1634. 1578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1635. 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmarx) != HAL_OK)
  1636. 1580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1637. 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmarx) == HAL_DMA_ERROR_TIMEOUT)
  1638. 1582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1639. 1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
  1640. 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
  1641. 1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1642. 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1643. 1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1644. 1588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1645. 1589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1646. 1590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1647. 1591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1648. 1592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx and Rx transfer counters */
  1649. 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  1650. 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  1651. 1595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1652. 1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
  1653. 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1654. 1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1655. 1599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState and huart->gState to Ready */
  1656. 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  1657. 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1658. 1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1659. 1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1660. 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1661. 1605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1662. 1606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1663. 1607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Transmit transfer (blocking mode).
  1664. 1608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1665. 1609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing Tx transfer started in Interrupt
  1666. 1610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1667. 1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx)
  1668. 1612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1669. 1613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort (in case of transfer in DMA mode)
  1670. 1614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1671. 1615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
  1672. 1616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1673. 1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1674. 1618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortTransmit(UART_HandleTypeDef *huart)
  1675. 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1676. 1620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  1677. 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
  1678. 1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1679. 1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
  1680. 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
  1681. 1625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1682. 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1683. ARM GAS /tmp/ccGtkZvD.s page 30
  1684. 1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1685. 1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use blocking DMA Abort API (no callback) */
  1686. 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1687. 1630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1688. 1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
  1689. 1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
  1690. 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  1691. 1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1692. 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmatx) != HAL_OK)
  1693. 1636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1694. 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmatx) == HAL_DMA_ERROR_TIMEOUT)
  1695. 1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1696. 1639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
  1697. 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
  1698. 1641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1699. 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1700. 1643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1701. 1644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1702. 1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1703. 1646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1704. 1647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1705. 1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
  1706. 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  1707. 1650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1708. 1651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
  1709. 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1710. 1653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1711. 1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1712. 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1713. 1656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1714. 1657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1715. 1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Receive transfer (blocking mode).
  1716. 1659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1717. 1660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing Rx transfer started in Interrupt
  1718. 1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1719. 1662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Rx)
  1720. 1663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1721. 1664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort (in case of transfer in DMA mode)
  1722. 1665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1723. 1666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
  1724. 1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1725. 1668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1726. 1669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortReceive(UART_HandleTypeDef *huart)
  1727. 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1728. 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  1729. 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
  1730. 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1731. 1674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1732. 1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
  1733. 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  1734. 1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1735. 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1736. 1679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1737. 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use blocking DMA Abort API (no callback) */
  1738. 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  1739. 1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1740. 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
  1741. ARM GAS /tmp/ccGtkZvD.s page 31
  1742. 1684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
  1743. 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  1744. 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1745. 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmarx) != HAL_OK)
  1746. 1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1747. 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmarx) == HAL_DMA_ERROR_TIMEOUT)
  1748. 1690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1749. 1691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
  1750. 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
  1751. 1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1752. 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  1753. 1695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1754. 1696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1755. 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1756. 1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1757. 1699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1758. 1700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
  1759. 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  1760. 1702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1761. 1703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
  1762. 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  1763. 1705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1764. 1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1765. 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1766. 1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1767. 1709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1768. 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing transfers (Interrupt mode).
  1769. 1711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1770. 1712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing transfer started in Interrupt or
  1771. 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1772. 1714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx and Rx)
  1773. 1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1774. 1716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort_IT (in case of transfer in DMA mode)
  1775. 1717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1776. 1718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
  1777. 1719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
  1778. 1720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
  1779. 1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1780. 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1781. 1723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Abort_IT(UART_HandleTypeDef *huart)
  1782. 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1783. 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
  1784. 1726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1785. 1727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  1786. 1728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE | USART_CR1_
  1787. 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1788. 1730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1789. 1731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If DMA Tx and/or DMA Rx Handles are associated to UART Handle, DMA Abort complete callbacks sh
  1790. 1732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** before any call to DMA Abort functions */
  1791. 1733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Tx Handle is valid */
  1792. 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1793. 1735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1794. 1736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set DMA Abort Complete callback if UART DMA Tx request if enabled.
  1795. 1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Otherwise, set it to NULL */
  1796. 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
  1797. 1739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1798. 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = UART_DMATxAbortCallback;
  1799. ARM GAS /tmp/ccGtkZvD.s page 32
  1800. 1741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1801. 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1802. 1743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1803. 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  1804. 1745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1805. 1746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1806. 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Rx Handle is valid */
  1807. 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  1808. 1749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1809. 1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set DMA Abort Complete callback if UART DMA Rx request if enabled.
  1810. 1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Otherwise, set it to NULL */
  1811. 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  1812. 1753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1813. 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMARxAbortCallback;
  1814. 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1815. 1756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1816. 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1817. 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  1818. 1759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1819. 1760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1820. 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1821. 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
  1822. 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
  1823. 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1824. 1765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable DMA Tx at UART level */
  1825. 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1826. 1767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1827. 1768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use non blocking DMA Abort API (callback) */
  1828. 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1829. 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1830. 1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Tx DMA Abort callback has already been initialised :
  1831. 1772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
  1832. 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1833. 1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA TX */
  1834. 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmatx) != HAL_OK)
  1835. 1776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1836. 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  1837. 1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1838. 1779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1839. 1780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1840. 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x00U;
  1841. 1782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1842. 1783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1843. 1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1844. 1785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1845. 1786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
  1846. 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  1847. 1788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1848. 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  1849. 1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1850. 1791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use non blocking DMA Abort API (callback) */
  1851. 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  1852. 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1853. 1794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Rx DMA Abort callback has already been initialised :
  1854. 1795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
  1855. 1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1856. 1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA RX */
  1857. ARM GAS /tmp/ccGtkZvD.s page 33
  1858. 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
  1859. 1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1860. 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  1861. 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
  1862. 1802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1863. 1803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1864. 1804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1865. 1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x00U;
  1866. 1806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1867. 1807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1868. 1808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1869. 1809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1870. 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* if no DMA abort complete callback execution is required => call user Abort Complete callback *
  1871. 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (AbortCplt == 0x01U)
  1872. 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1873. 1813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx and Rx transfer counters */
  1874. 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  1875. 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  1876. 1816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1877. 1817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
  1878. 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  1879. 1819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1880. 1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
  1881. 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1882. 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  1883. 1823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1884. 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
  1885. 1825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  1886. 1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
  1887. 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
  1888. 1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  1889. 1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
  1890. 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
  1891. 1831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  1892. 1832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1893. 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1894. 1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1895. 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1896. 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1897. 1837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1898. 1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Transmit transfer (Interrupt mode).
  1899. 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1900. 1840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing Tx transfer started in Interrupt
  1901. 1841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1902. 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx)
  1903. 1843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1904. 1844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort_IT (in case of transfer in DMA mode)
  1905. 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1906. 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
  1907. 1847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
  1908. 1848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
  1909. 1849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1910. 1850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1911. 1851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortTransmit_IT(UART_HandleTypeDef *huart)
  1912. 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1913. 1853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  1914. 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
  1915. ARM GAS /tmp/ccGtkZvD.s page 34
  1916. 1855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1917. 1856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
  1918. 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
  1919. 1858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1920. 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  1921. 1860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1922. 1861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use blocking DMA Abort API (no callback) */
  1923. 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  1924. 1863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1925. 1864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
  1926. 1865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
  1927. 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = UART_DMATxOnlyAbortCallback;
  1928. 1867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1929. 1868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA TX */
  1930. 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmatx) != HAL_OK)
  1931. 1870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1932. 1871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly huart->hdmatx->XferAbortCallback function in case of error */
  1933. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback(huart->hdmatx);
  1934. 1873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1935. 1874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1936. 1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1937. 1876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1938. 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
  1939. 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  1940. 1879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1941. 1880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
  1942. 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1943. 1882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1944. 1883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
  1945. 1884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  1946. 1885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
  1947. 1886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
  1948. 1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  1949. 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
  1950. 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
  1951. 1890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  1952. 1891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1953. 1892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1954. 1893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  1955. 1894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1956. 1895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
  1957. 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  1958. 1897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1959. 1898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
  1960. 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  1961. 1900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1962. 1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
  1963. 1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  1964. 1903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
  1965. 1904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
  1966. 1905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  1967. 1906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
  1968. 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
  1969. 1908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  1970. 1909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1971. 1910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1972. 1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  1973. ARM GAS /tmp/ccGtkZvD.s page 35
  1974. 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  1975. 1913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1976. 1914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  1977. 1915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Receive transfer (Interrupt mode).
  1978. 1916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  1979. 1917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure could be used for aborting any ongoing Rx transfer started in Interrupt
  1980. 1918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
  1981. 1919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Rx)
  1982. 1920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
  1983. 1921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Abort DMA transfer by calling HAL_DMA_Abort_IT (in case of transfer in DMA mode)
  1984. 1922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
  1985. 1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
  1986. 1924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
  1987. 1925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
  1988. 1926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  1989. 1927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  1990. 1928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortReceive_IT(UART_HandleTypeDef *huart)
  1991. 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1992. 1930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  1993. 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
  1994. 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  1995. 1933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  1996. 1934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
  1997. 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  1998. 1936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  1999. 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  2000. 1938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2001. 1939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use blocking DMA Abort API (no callback) */
  2002. 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  2003. 1941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2004. 1942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
  2005. 1943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
  2006. 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMARxOnlyAbortCallback;
  2007. 1945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2008. 1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA RX */
  2009. 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
  2010. 1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2011. 1949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly huart->hdmarx->XferAbortCallback function in case of error */
  2012. 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback(huart->hdmarx);
  2013. 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2014. 1952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2015. 1953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2016. 1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2017. 1955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
  2018. 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2019. 1957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2020. 1958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
  2021. 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2022. 1960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2023. 1961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
  2024. 1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2025. 1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
  2026. 1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
  2027. 1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2028. 1966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
  2029. 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
  2030. 1968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2031. ARM GAS /tmp/ccGtkZvD.s page 36
  2032. 1969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2033. 1970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2034. 1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2035. 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2036. 1973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
  2037. 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2038. 1975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2039. 1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
  2040. 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2041. 1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2042. 1979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
  2043. 1980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2044. 1981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
  2045. 1982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
  2046. 1983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2047. 1984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
  2048. 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
  2049. 1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2050. 1987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2051. 1988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2052. 1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2053. 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2054. 1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2055. 1992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2056. 1993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief This function handles UART interrupt request.
  2057. 1994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2058. 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2059. 1996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2060. 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2061. 1998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void HAL_UART_IRQHandler(UART_HandleTypeDef *huart)
  2062. 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2063. 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t isrflags = READ_REG(huart->Instance->SR);
  2064. 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
  2065. 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr3its = READ_REG(huart->Instance->CR3);
  2066. 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t errorflags = 0x00U;
  2067. 2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  2068. 2005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2069. 2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If no error occurs */
  2070. 2007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** errorflags = (isrflags & (uint32_t)(USART_SR_PE | USART_SR_FE | USART_SR_ORE | USART_SR_NE));
  2071. 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (errorflags == RESET)
  2072. 2009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2073. 2010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Receiver -------------------------------------------------*/
  2074. 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_RXNE) != RESET) && ((cr1its & USART_CR1_RXNEIE) != RESET))
  2075. 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2076. 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Receive_IT(huart);
  2077. 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2078. 2015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2079. 2016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2080. 2017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2081. 2018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If some errors occur */
  2082. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((errorflags != RESET) && (((cr3its & USART_CR3_EIE) != RESET) || ((cr1its & (USART_CR1_RXNEIE
  2083. 2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2084. 2021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART parity error interrupt occurred ----------------------------------*/
  2085. 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_PE) != RESET) && ((cr1its & USART_CR1_PEIE) != RESET))
  2086. 2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2087. 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_PE;
  2088. 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2089. ARM GAS /tmp/ccGtkZvD.s page 37
  2090. 2026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2091. 2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART noise error interrupt occurred -----------------------------------*/
  2092. 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_NE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
  2093. 2029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2094. 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_NE;
  2095. 2031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2096. 2032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2097. 2033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART frame error interrupt occurred -----------------------------------*/
  2098. 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_FE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
  2099. 2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2100. 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_FE;
  2101. 2037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2102. 2038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2103. 2039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Over-Run interrupt occurred --------------------------------------*/
  2104. 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_ORE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
  2105. 2041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2106. 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_ORE;
  2107. 2043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2108. 2044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2109. 2045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call UART Error Call back function if need be --------------------------*/
  2110. 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->ErrorCode != HAL_UART_ERROR_NONE)
  2111. 2047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2112. 2048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Receiver -----------------------------------------------*/
  2113. 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_RXNE) != RESET) && ((cr1its & USART_CR1_RXNEIE) != RESET))
  2114. 2050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2115. 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Receive_IT(huart);
  2116. 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2117. 2053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2118. 2054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If Overrun error occurs, or if any error occurs in DMA mode reception,
  2119. 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** consider error as blocking */
  2120. 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
  2121. 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((huart->ErrorCode & HAL_UART_ERROR_ORE) != RESET) || dmarequest)
  2122. 2058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2123. 2059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Blocking error : transfer is aborted
  2124. 2060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set the UART state ready to be able to start again the process,
  2125. 2061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Disable Rx Interrupts, and disable Rx DMA request, if ongoing */
  2126. 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
  2127. 2063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2128. 2064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
  2129. 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
  2130. 2066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2131. 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  2132. 2068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2133. 2069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream */
  2134. 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  2135. 2071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2136. 2072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
  2137. 2073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_ErrorCallback() at end of DMA abort procedure */
  2138. 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMAAbortOnError;
  2139. 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
  2140. 2076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2141. 2077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly XferAbortCallback function in case of error */
  2142. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback(huart->hdmarx);
  2143. 2079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2144. 2080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2145. 2081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2146. 2082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2147. ARM GAS /tmp/ccGtkZvD.s page 38
  2148. 2083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user error callback */
  2149. 2084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2150. 2085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
  2151. 2086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
  2152. 2087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2153. 2088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
  2154. 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
  2155. 2090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2156. 2091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2157. 2092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2158. 2093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2159. 2094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2160. 2095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user error callback */
  2161. 2096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2162. 2097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
  2163. 2098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
  2164. 2099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2165. 2100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
  2166. 2101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
  2167. 2102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2168. 2103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2169. 2104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2170. 2105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2171. 2106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2172. 2107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Non Blocking error : transfer could go on.
  2173. 2108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Error is notified to user through user error callback */
  2174. 2109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2175. 2110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
  2176. 2111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
  2177. 2112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2178. 2113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
  2179. 2114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
  2180. 2115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2181. 2116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2182. 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  2183. 2118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2184. 2119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2185. 2120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2186. 2121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** } /* End if some error occurs */
  2187. 2122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2188. 2123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Transmitter ------------------------------------------------*/
  2189. 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_TXE) != RESET) && ((cr1its & USART_CR1_TXEIE) != RESET))
  2190. 2125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2191. 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Transmit_IT(huart);
  2192. 2127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2193. 2128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2194. 2129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2195. 2130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Transmitter end --------------------------------------------*/
  2196. 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_TC) != RESET) && ((cr1its & USART_CR1_TCIE) != RESET))
  2197. 2132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2198. 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTransmit_IT(huart);
  2199. 2134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2200. 2135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2201. 2136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2202. 2137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2203. 2138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2204. 2139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Tx Transfer completed callbacks.
  2205. ARM GAS /tmp/ccGtkZvD.s page 39
  2206. 2140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2207. 2141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2208. 2142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2209. 2143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2210. 2144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
  2211. 2145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2212. 2146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2213. 2147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2214. 2148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  2215. 2149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_TxCpltCallback could be implemented in the user file
  2216. 2150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2217. 2151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2218. 2152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2219. 2153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2220. 2154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Tx Half Transfer completed callbacks.
  2221. 2155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2222. 2156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2223. 2157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2224. 2158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2225. 2159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_TxHalfCpltCallback(UART_HandleTypeDef *huart)
  2226. 2160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2227. 2161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2228. 2162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2229. 2163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  2230. 2164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_TxHalfCpltCallback could be implemented in the user file
  2231. 2165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2232. 2166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2233. 2167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2234. 2168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2235. 2169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Rx Transfer completed callbacks.
  2236. 2170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2237. 2171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2238. 2172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2239. 2173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2240. 2174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
  2241. 2175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2242. 2176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2243. 2177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2244. 2178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  2245. 2179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_RxCpltCallback could be implemented in the user file
  2246. 2180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2247. 2181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2248. 2182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2249. 2183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2250. 2184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Rx Half Transfer completed callbacks.
  2251. 2185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2252. 2186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2253. 2187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2254. 2188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2255. 2189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_RxHalfCpltCallback(UART_HandleTypeDef *huart)
  2256. 2190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2257. 2191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2258. 2192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2259. 2193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  2260. 2194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_RxHalfCpltCallback could be implemented in the user file
  2261. 2195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2262. 2196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2263. ARM GAS /tmp/ccGtkZvD.s page 40
  2264. 2197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2265. 2198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2266. 2199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART error callbacks.
  2267. 2200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2268. 2201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2269. 2202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2270. 2203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2271. 2204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart)
  2272. 2205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2273. 2206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2274. 2207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2275. 2208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  2276. 2209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_ErrorCallback could be implemented in the user file
  2277. 2210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2278. 2211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2279. 2212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2280. 2213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2281. 2214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Complete callback.
  2282. 2215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2283. 2216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2284. 2217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2285. 2218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortCpltCallback(UART_HandleTypeDef *huart)
  2286. 2219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2287. 2220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2288. 2221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2289. 2222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2290. 2223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
  2291. 2224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortCpltCallback can be implemented in the user file.
  2292. 2225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2293. 2226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2294. 2227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2295. 2228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2296. 2229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Complete callback.
  2297. 2230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2298. 2231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2299. 2232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2300. 2233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortTransmitCpltCallback(UART_HandleTypeDef *huart)
  2301. 2234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2302. 2235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2303. 2236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2304. 2237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2305. 2238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
  2306. 2239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortTransmitCpltCallback can be implemented in the user file.
  2307. 2240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2308. 2241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2309. 2242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2310. 2243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2311. 2244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Receive Complete callback.
  2312. 2245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2313. 2246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2314. 2247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2315. 2248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortReceiveCpltCallback(UART_HandleTypeDef *huart)
  2316. 2249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2317. 2250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  2318. 2251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
  2319. 2252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2320. 2253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
  2321. ARM GAS /tmp/ccGtkZvD.s page 41
  2322. 2254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortReceiveCpltCallback can be implemented in the user file.
  2323. 2255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2324. 2256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2325. 2257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2326. 2258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2327. 2259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  2328. 2260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2329. 2261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2330. 2262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group3 Peripheral Control functions
  2331. 2263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART control functions
  2332. 2264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  2333. 2265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
  2334. 2266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  2335. 2267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Peripheral Control functions #####
  2336. 2268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  2337. 2269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  2338. 2270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to control the UART:
  2339. 2271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_LIN_SendBreak() API can be helpful to transmit the break character.
  2340. 2272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_MultiProcessor_EnterMuteMode() API can be helpful to enter the UART in mute mode.
  2341. 2273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_MultiProcessor_ExitMuteMode() API can be helpful to exit the UART mute mode by software
  2342. 2274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_HalfDuplex_EnableTransmitter() API to enable the UART transmitter and disables the UART
  2343. 2275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_HalfDuplex_EnableReceiver() API to enable the UART receiver and disables the UART trans
  2344. 2276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2345. 2277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
  2346. 2278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  2347. 2279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2348. 2280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2349. 2281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2350. 2282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Transmits break characters.
  2351. 2283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2352. 2284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2353. 2285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2354. 2286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2355. 2287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_LIN_SendBreak(UART_HandleTypeDef *huart)
  2356. 2288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2357. 2289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  2358. 2290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  2359. 2291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2360. 2292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  2361. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  2362. 2294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2363. 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  2364. 2296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2365. 2297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Send break characters */
  2366. 2298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_SBK);
  2367. 2299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2368. 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2369. 2301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2370. 2302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2371. 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2372. 2304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2373. 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2374. 2306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2375. 2307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2376. 2308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2377. 2309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enters the UART in mute mode.
  2378. 2310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2379. ARM GAS /tmp/ccGtkZvD.s page 42
  2380. 2311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2381. 2312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2382. 2313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2383. 2314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_EnterMuteMode(UART_HandleTypeDef *huart)
  2384. 2315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2385. 2316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  2386. 2317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  2387. 2318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2388. 2319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  2389. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  2390. 2321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2391. 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  2392. 2323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2393. 2324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the USART mute mode by setting the RWU bit in the CR1 register */
  2394. 2325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_RWU);
  2395. 2326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2396. 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2397. 2328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2398. 2329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2399. 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2400. 2331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2401. 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2402. 2333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2403. 2334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2404. 2335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2405. 2336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Exits the UART mute mode: wake up software.
  2406. 2337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2407. 2338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2408. 2339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2409. 2340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2410. 2341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_ExitMuteMode(UART_HandleTypeDef *huart)
  2411. 2342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2412. 2343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  2413. 2344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
  2414. 2345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2415. 2346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  2416. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  2417. 2348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2418. 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  2419. 2350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2420. 2351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the USART mute mode by clearing the RWU bit in the CR1 register */
  2421. 2352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_RWU);
  2422. 2353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2423. 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2424. 2355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2425. 2356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2426. 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2427. 2358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2428. 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2429. 2360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2430. 2361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2431. 2362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2432. 2363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enables the UART transmitter and disables the UART receiver.
  2433. 2364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2434. 2365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2435. 2366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2436. 2367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2437. ARM GAS /tmp/ccGtkZvD.s page 43
  2438. 2368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_EnableTransmitter(UART_HandleTypeDef *huart)
  2439. 2369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2440. 2370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
  2441. 2371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2442. 2372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  2443. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  2444. 2374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2445. 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  2446. 2376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2447. 2377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
  2448. 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg = huart->Instance->CR1;
  2449. 2379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2450. 2380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear TE and RE bits */
  2451. 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg &= (uint32_t)~((uint32_t)(USART_CR1_TE | USART_CR1_RE));
  2452. 2382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2453. 2383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the USART's transmit interface by setting the TE bit in the USART CR1 register */
  2454. 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg |= (uint32_t)USART_CR1_TE;
  2455. 2385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2456. 2386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Write to USART CR1 */
  2457. 2387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** WRITE_REG(huart->Instance->CR1, (uint32_t)tmpreg);
  2458. 2388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2459. 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2460. 2390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2461. 2391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2462. 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2463. 2393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2464. 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2465. 2395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2466. 2396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2467. 2397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2468. 2398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enables the UART receiver and disables the UART transmitter.
  2469. 2399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2470. 2400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2471. 2401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2472. 2402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2473. 2403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_EnableReceiver(UART_HandleTypeDef *huart)
  2474. 2404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2475. 2405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
  2476. 2406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2477. 2407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  2478. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
  2479. 2409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2480. 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
  2481. 2411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2482. 2412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
  2483. 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg = huart->Instance->CR1;
  2484. 2414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2485. 2415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear TE and RE bits */
  2486. 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg &= (uint32_t)~((uint32_t)(USART_CR1_TE | USART_CR1_RE));
  2487. 2417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2488. 2418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the USART's receive interface by setting the RE bit in the USART CR1 register */
  2489. 2419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg |= (uint32_t)USART_CR1_RE;
  2490. 2420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2491. 2421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Write to USART CR1 */
  2492. 2422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** WRITE_REG(huart->Instance->CR1, (uint32_t)tmpreg);
  2493. 2423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2494. 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2495. ARM GAS /tmp/ccGtkZvD.s page 44
  2496. 2425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2497. 2426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2498. 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2499. 2428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2500. 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2501. 2430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2502. 2431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2503. 2432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2504. 2433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  2505. 2434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2506. 2435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2507. 2436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group4 Peripheral State and Errors functions
  2508. 2437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART State and Errors functions
  2509. 2438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
  2510. 2439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
  2511. 2440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  2512. 2441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Peripheral State and Errors functions #####
  2513. 2442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
  2514. 2443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
  2515. 2444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to return the State of
  2516. 2445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART communication process, return Peripheral Errors occurred during communication
  2517. 2446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** process
  2518. 2447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_GetState() API can be helpful to check in run-time the state of the UART peripheral
  2519. 2448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_GetError() check in run-time errors that could be occurred during communication.
  2520. 2449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2521. 2450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
  2522. 2451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  2523. 2452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2524. 2453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2525. 2454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2526. 2455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Returns the UART state.
  2527. 2456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2528. 2457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2529. 2458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL state
  2530. 2459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2531. 2460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_StateTypeDef HAL_UART_GetState(UART_HandleTypeDef *huart)
  2532. 2461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2533. 2462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t temp1 = 0x00U, temp2 = 0x00U;
  2534. 2463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp1 = huart->gState;
  2535. 2464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp2 = huart->RxState;
  2536. 2465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2537. 2466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return (HAL_UART_StateTypeDef)(temp1 | temp2);
  2538. 2467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2539. 2468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2540. 2469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2541. 2470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Return the UART error code
  2542. 2471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2543. 2472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART.
  2544. 2473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval UART Error Code
  2545. 2474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2546. 2475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t HAL_UART_GetError(UART_HandleTypeDef *huart)
  2547. 2476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2548. 2477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return huart->ErrorCode;
  2549. 2478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2550. 2479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2551. 2480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2552. 2481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  2553. ARM GAS /tmp/ccGtkZvD.s page 45
  2554. 2482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2555. 2483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2556. 2484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2557. 2485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
  2558. 2486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2559. 2487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2560. 2488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Private_Functions UART Private Functions
  2561. 2489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
  2562. 2490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2563. 2491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2564. 2492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2565. 2493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initialize the callbacks to their default values.
  2566. 2494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2567. 2495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval none
  2568. 2496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2569. 2497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2570. 2498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void UART_InitCallbacksToDefault(UART_HandleTypeDef *huart)
  2571. 2499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2572. 2500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the UART Callback settings */
  2573. 2501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = HAL_UART_TxHalfCpltCallback; /* Legacy weak TxHalfCpltC
  2574. 2502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = HAL_UART_TxCpltCallback; /* Legacy weak TxCpltCallb
  2575. 2503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = HAL_UART_RxHalfCpltCallback; /* Legacy weak RxHalfCpltC
  2576. 2504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = HAL_UART_RxCpltCallback; /* Legacy weak RxCpltCallb
  2577. 2505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = HAL_UART_ErrorCallback; /* Legacy weak ErrorCallba
  2578. 2506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = HAL_UART_AbortCpltCallback; /* Legacy weak AbortCpltCa
  2579. 2507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = HAL_UART_AbortTransmitCpltCallback; /* Legacy weak AbortTransm
  2580. 2508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = HAL_UART_AbortReceiveCpltCallback; /* Legacy weak AbortReceiv
  2581. 2509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2582. 2510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2583. 2511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2584. 2512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2585. 2513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2586. 2514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART transmit process complete callback.
  2587. 2515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2588. 2516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2589. 2517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2590. 2518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2591. 2519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATransmitCplt(DMA_HandleTypeDef *hdma)
  2592. 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2593. 2521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2594. 2522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  2595. 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) == 0U)
  2596. 2524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2597. 2525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2598. 2526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2599. 2527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the DMA transfer for transmit request by setting the DMAT bit
  2600. 2528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
  2601. 2529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
  2602. 2530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2603. 2531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit Complete Interrupt */
  2604. 2532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_TCIE);
  2605. 2533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2606. 2534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2607. 2535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Circular mode */
  2608. 2536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  2609. 2537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2610. 2538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2611. ARM GAS /tmp/ccGtkZvD.s page 46
  2612. 2539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
  2613. 2540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback(huart);
  2614. 2541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2615. 2542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
  2616. 2543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxCpltCallback(huart);
  2617. 2544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2618. 2545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2619. 2546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2620. 2547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2621. 2548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2622. 2549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART transmit process half complete callback
  2623. 2550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2624. 2551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2625. 2552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2626. 2553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2627. 2554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxHalfCplt(DMA_HandleTypeDef *hdma)
  2628. 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2629. 2556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2630. 2557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2631. 2558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2632. 2559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
  2633. 2560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback(huart);
  2634. 2561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2635. 2562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
  2636. 2563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxHalfCpltCallback(huart);
  2637. 2564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2638. 2565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2639. 2566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2640. 2567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2641. 2568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART receive process complete callback.
  2642. 2569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2643. 2570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2644. 2571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2645. 2572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2646. 2573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAReceiveCplt(DMA_HandleTypeDef *hdma)
  2647. 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2648. 2575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2649. 2576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  2650. 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) == 0U)
  2651. 2578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2652. 2579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0U;
  2653. 2580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2654. 2581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  2655. 2582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_PEIE);
  2656. 2583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  2657. 2584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2658. 2585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the DMA transfer for the receiver request by setting the DMAR bit
  2659. 2586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
  2660. 2587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
  2661. 2588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2662. 2589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
  2663. 2590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2664. 2591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2665. 2592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2666. 2593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx complete callback*/
  2667. 2594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback(huart);
  2668. 2595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2669. ARM GAS /tmp/ccGtkZvD.s page 47
  2670. 2596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx complete callback*/
  2671. 2597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxCpltCallback(huart);
  2672. 2598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2673. 2599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2674. 2600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2675. 2601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2676. 2602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART receive process half complete callback
  2677. 2603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2678. 2604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2679. 2605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2680. 2606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2681. 2607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxHalfCplt(DMA_HandleTypeDef *hdma)
  2682. 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2683. 2609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2684. 2610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2685. 2611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2686. 2612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx Half complete callback*/
  2687. 2613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback(huart);
  2688. 2614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2689. 2615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx Half complete callback*/
  2690. 2616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxHalfCpltCallback(huart);
  2691. 2617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2692. 2618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2693. 2619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2694. 2620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2695. 2621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART communication error callback.
  2696. 2622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2697. 2623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2698. 2624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2699. 2625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2700. 2626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAError(DMA_HandleTypeDef *hdma)
  2701. 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2702. 2628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  2703. 2629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2704. 2630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2705. 2631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Tx request if ongoing */
  2706. 2632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
  2707. 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  2708. 2634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2709. 2635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2710. 2636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
  2711. 2637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2712. 2638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2713. 2639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Rx request if ongoing */
  2714. 2640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
  2715. 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  2716. 2642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2717. 2643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2718. 2644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
  2719. 2645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2720. 2646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2721. 2647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_DMA;
  2722. 2648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2723. 2649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
  2724. 2650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
  2725. 2651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2726. 2652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
  2727. ARM GAS /tmp/ccGtkZvD.s page 48
  2728. 2653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
  2729. 2654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2730. 2655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2731. 2656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2732. 2657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2733. 2658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief This function handles UART Communication Timeout.
  2734. 2659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  2735. 2660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  2736. 2661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Flag specifies the UART flag to check.
  2737. 2662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Status The new Flag status (SET or RESET).
  2738. 2663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Tickstart Tick start value
  2739. 2664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
  2740. 2665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  2741. 2666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2742. 2667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, Flag
  2743. 2668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2744. 2669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Wait until flag is set */
  2745. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while ((__HAL_UART_GET_FLAG(huart, Flag) ? SET : RESET) == Status)
  2746. 2671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2747. 2672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check for the Timeout */
  2748. 2673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (Timeout != HAL_MAX_DELAY)
  2749. 2674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2750. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((Timeout == 0U) || ((HAL_GetTick() - Tickstart) > Timeout))
  2751. 2676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2752. 2677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts for t
  2753. 2678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE));
  2754. 2679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  2755. 2680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2756. 2681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2757. 2682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2758. 2683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2759. 2684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
  2760. 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
  2761. 2686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2762. 2687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
  2763. 2688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2764. 2689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2765. 2690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2766. 2691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  2767. 2692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2768. 2693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2769. 2694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2770. 2695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief End ongoing Tx transfer on UART peripheral (following error detection or Transmit compl
  2771. 2696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2772. 2697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2773. 2698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2774. 2699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndTxTransfer(UART_HandleTypeDef *huart)
  2775. 2700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2776. 29 .loc 1 2700 1 view -0
  2777. 30 .cfi_startproc
  2778. 31 @ args = 0, pretend = 0, frame = 0
  2779. 32 @ frame_needed = 0, uses_anonymous_args = 0
  2780. 33 @ link register save eliminated.
  2781. 2701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  2782. 2702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
  2783. 34 .loc 1 2702 3 view .LVU1
  2784. 35 0000 0268 ldr r2, [r0]
  2785. ARM GAS /tmp/ccGtkZvD.s page 49
  2786. 36 0002 D368 ldr r3, [r2, #12]
  2787. 37 0004 23F0C003 bic r3, r3, #192
  2788. 38 0008 D360 str r3, [r2, #12]
  2789. 2703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2790. 2704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Tx process, restore huart->gState to Ready */
  2791. 2705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2792. 39 .loc 1 2705 3 view .LVU2
  2793. 40 .loc 1 2705 17 is_stmt 0 view .LVU3
  2794. 41 000a 2023 movs r3, #32
  2795. 42 000c 80F83930 strb r3, [r0, #57]
  2796. 2706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2797. 43 .loc 1 2706 1 view .LVU4
  2798. 44 0010 7047 bx lr
  2799. 45 .cfi_endproc
  2800. 46 .LFE174:
  2801. 48 .section .text.UART_EndRxTransfer,"ax",%progbits
  2802. 49 .align 1
  2803. 50 .syntax unified
  2804. 51 .thumb
  2805. 52 .thumb_func
  2806. 54 UART_EndRxTransfer:
  2807. 55 .LVL1:
  2808. 56 .LFB175:
  2809. 2707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2810. 2708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2811. 2709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief End ongoing Rx transfer on UART peripheral (following error detection or Reception comp
  2812. 2710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
  2813. 2711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2814. 2712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2815. 2713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndRxTransfer(UART_HandleTypeDef *huart)
  2816. 2714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2817. 57 .loc 1 2714 1 is_stmt 1 view -0
  2818. 58 .cfi_startproc
  2819. 59 @ args = 0, pretend = 0, frame = 0
  2820. 60 @ frame_needed = 0, uses_anonymous_args = 0
  2821. 61 @ link register save eliminated.
  2822. 2715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  2823. 2716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
  2824. 62 .loc 1 2716 3 view .LVU6
  2825. 63 0000 0268 ldr r2, [r0]
  2826. 64 0002 D368 ldr r3, [r2, #12]
  2827. 65 0004 23F49073 bic r3, r3, #288
  2828. 66 0008 D360 str r3, [r2, #12]
  2829. 2717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  2830. 67 .loc 1 2717 3 view .LVU7
  2831. 68 000a 0268 ldr r2, [r0]
  2832. 69 000c 5369 ldr r3, [r2, #20]
  2833. 70 000e 23F00103 bic r3, r3, #1
  2834. 71 0012 5361 str r3, [r2, #20]
  2835. 2718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2836. 2719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
  2837. 2720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2838. 72 .loc 1 2720 3 view .LVU8
  2839. 73 .loc 1 2720 18 is_stmt 0 view .LVU9
  2840. 74 0014 2023 movs r3, #32
  2841. 75 0016 80F83A30 strb r3, [r0, #58]
  2842. 2721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2843. ARM GAS /tmp/ccGtkZvD.s page 50
  2844. 76 .loc 1 2721 1 view .LVU10
  2845. 77 001a 7047 bx lr
  2846. 78 .cfi_endproc
  2847. 79 .LFE175:
  2848. 81 .section .text.UART_Transmit_IT,"ax",%progbits
  2849. 82 .align 1
  2850. 83 .syntax unified
  2851. 84 .thumb
  2852. 85 .thumb_func
  2853. 87 UART_Transmit_IT:
  2854. 88 .LVL2:
  2855. 89 .LFB181:
  2856. 2722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2857. 2723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2858. 2724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART communication abort callback, when initiated by HAL services on Error
  2859. 2725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Abort procedure following error occurrence).
  2860. 2726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2861. 2727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2862. 2728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2863. 2729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2864. 2730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAAbortOnError(DMA_HandleTypeDef *hdma)
  2865. 2731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2866. 2732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2867. 2733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2868. 2734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2869. 2735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2870. 2736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2871. 2737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
  2872. 2738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
  2873. 2739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2874. 2740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
  2875. 2741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
  2876. 2742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2877. 2743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2878. 2744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2879. 2745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2880. 2746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Tx communication abort callback, when initiated by user
  2881. 2747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Tx Abort procedure following user abort request).
  2882. 2748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note When this callback is executed, User Abort complete call back is called only if no
  2883. 2749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * Abort still ongoing for Rx DMA Handle.
  2884. 2750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2885. 2751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2886. 2752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2887. 2753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2888. 2754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxAbortCallback(DMA_HandleTypeDef *hdma)
  2889. 2755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2890. 2756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2891. 2757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2892. 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
  2893. 2759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2894. 2760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check if an Abort process is still ongoing */
  2895. 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
  2896. 2762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2897. 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx->XferAbortCallback != NULL)
  2898. 2764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2899. 2765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2900. 2766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2901. ARM GAS /tmp/ccGtkZvD.s page 51
  2902. 2767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2903. 2768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2904. 2769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* No Abort process still ongoing : All DMA channels are aborted, call user Abort Complete callba
  2905. 2770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2906. 2771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2907. 2772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2908. 2773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
  2909. 2774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  2910. 2775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2911. 2776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
  2912. 2777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2913. 2778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2914. 2779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2915. 2780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
  2916. 2781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2917. 2782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
  2918. 2783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
  2919. 2784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2920. 2785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
  2921. 2786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
  2922. 2787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2923. 2788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2924. 2789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2925. 2790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2926. 2791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Rx communication abort callback, when initiated by user
  2927. 2792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Rx Abort procedure following user abort request).
  2928. 2793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note When this callback is executed, User Abort complete call back is called only if no
  2929. 2794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * Abort still ongoing for Tx DMA Handle.
  2930. 2795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2931. 2796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2932. 2797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2933. 2798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2934. 2799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxAbortCallback(DMA_HandleTypeDef *hdma)
  2935. 2800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2936. 2801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2937. 2802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2938. 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
  2939. 2804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2940. 2805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check if an Abort process is still ongoing */
  2941. 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
  2942. 2807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2943. 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx->XferAbortCallback != NULL)
  2944. 2809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2945. 2810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  2946. 2811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2947. 2812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2948. 2813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2949. 2814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* No Abort process still ongoing : All DMA channels are aborted, call user Abort Complete callba
  2950. 2815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2951. 2816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  2952. 2817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2953. 2818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
  2954. 2819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
  2955. 2820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2956. 2821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
  2957. 2822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2958. 2823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  2959. ARM GAS /tmp/ccGtkZvD.s page 52
  2960. 2824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2961. 2825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
  2962. 2826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2963. 2827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
  2964. 2828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
  2965. 2829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2966. 2830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
  2967. 2831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
  2968. 2832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2969. 2833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2970. 2834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2971. 2835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  2972. 2836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Tx communication abort callback, when initiated by user by a call to
  2973. 2837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * HAL_UART_AbortTransmit_IT API (Abort only Tx transfer)
  2974. 2838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (This callback is executed at end of DMA Tx Abort procedure following user abort reques
  2975. 2839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * and leads to user Tx Abort Complete callback execution).
  2976. 2840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  2977. 2841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  2978. 2842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  2979. 2843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  2980. 2844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxOnlyAbortCallback(DMA_HandleTypeDef *hdma)
  2981. 2845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  2982. 2846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  2983. 2847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2984. 2848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  2985. 2849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2986. 2850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
  2987. 2851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  2988. 2852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2989. 2853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
  2990. 2854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  2991. 2855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
  2992. 2856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
  2993. 2857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  2994. 2858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
  2995. 2859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
  2996. 2860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  2997. 2861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  2998. 2862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  2999. 2863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  3000. 2864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Rx communication abort callback, when initiated by user by a call to
  3001. 2865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * HAL_UART_AbortReceive_IT API (Abort only Rx transfer)
  3002. 2866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (This callback is executed at end of DMA Rx Abort procedure following user abort reques
  3003. 2867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * and leads to user Rx Abort Complete callback execution).
  3004. 2868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
  3005. 2869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
  3006. 2870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  3007. 2871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  3008. 2872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxOnlyAbortCallback(DMA_HandleTypeDef *hdma)
  3009. 2873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3010. 2874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  3011. 2875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3012. 2876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  3013. 2877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3014. 2878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
  3015. 2879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  3016. 2880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3017. ARM GAS /tmp/ccGtkZvD.s page 53
  3018. 2881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
  3019. 2882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  3020. 2883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
  3021. 2884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
  3022. 2885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  3023. 2886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
  3024. 2887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
  3025. 2888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  3026. 2889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3027. 2890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3028. 2891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  3029. 2892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
  3030. 2893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  3031. 2894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  3032. 2895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  3033. 2896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  3034. 2897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Transmit_IT(UART_HandleTypeDef *huart)
  3035. 2898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3036. 90 .loc 1 2898 1 is_stmt 1 view -0
  3037. 91 .cfi_startproc
  3038. 92 @ args = 0, pretend = 0, frame = 0
  3039. 93 @ frame_needed = 0, uses_anonymous_args = 0
  3040. 94 @ link register save eliminated.
  3041. 2899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  3042. 95 .loc 1 2899 3 view .LVU12
  3043. 2900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3044. 2901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is ongoing */
  3045. 2902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_BUSY_TX)
  3046. 96 .loc 1 2902 3 view .LVU13
  3047. 97 .loc 1 2902 12 is_stmt 0 view .LVU14
  3048. 98 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  3049. 99 0004 DBB2 uxtb r3, r3
  3050. 100 .loc 1 2902 6 view .LVU15
  3051. 101 0006 212B cmp r3, #33
  3052. 102 0008 01D0 beq .L10
  3053. 2903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3054. 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  3055. 2905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3056. 2906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) huart->pTxBuffPtr;
  3057. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint16_t)(*tmp & (uint16_t)0x01FF);
  3058. 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3059. 2909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3060. 2910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr += 2U;
  3061. 2911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3062. 2912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3063. 2913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3064. 2914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr += 1U;
  3065. 2915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3066. 2916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3067. 2917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3068. 2918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3069. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint8_t)(*huart->pTxBuffPtr++ & (uint8_t)0x00FF);
  3070. 2920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3071. 2921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3072. 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (--huart->TxXferCount == 0U)
  3073. 2923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3074. 2924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
  3075. ARM GAS /tmp/ccGtkZvD.s page 54
  3076. 2925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_TXE);
  3077. 2926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3078. 2927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit Complete Interrupt */
  3079. 2928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_TC);
  3080. 2929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3081. 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  3082. 2931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3083. 2932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3084. 2933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3085. 2934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  3086. 103 .loc 1 2934 12 view .LVU16
  3087. 104 000a 0220 movs r0, #2
  3088. 105 .LVL3:
  3089. 2935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3090. 2936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3091. 106 .loc 1 2936 1 view .LVU17
  3092. 107 000c 7047 bx lr
  3093. 108 .LVL4:
  3094. 109 .L10:
  3095. 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3096. 110 .loc 1 2904 5 is_stmt 1 view .LVU18
  3097. 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3098. 111 .loc 1 2904 20 is_stmt 0 view .LVU19
  3099. 112 000e 8368 ldr r3, [r0, #8]
  3100. 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3101. 113 .loc 1 2904 8 view .LVU20
  3102. 114 0010 B3F5805F cmp r3, #4096
  3103. 115 0014 17D0 beq .L11
  3104. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3105. 116 .loc 1 2919 7 is_stmt 1 view .LVU21
  3106. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3107. 117 .loc 1 2919 45 is_stmt 0 view .LVU22
  3108. 118 0016 036A ldr r3, [r0, #32]
  3109. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3110. 119 .loc 1 2919 57 view .LVU23
  3111. 120 0018 5A1C adds r2, r3, #1
  3112. 121 001a 0262 str r2, [r0, #32]
  3113. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3114. 122 .loc 1 2919 39 view .LVU24
  3115. 123 001c 1A78 ldrb r2, [r3] @ zero_extendqisi2
  3116. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3117. 124 .loc 1 2919 12 view .LVU25
  3118. 125 001e 0368 ldr r3, [r0]
  3119. 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3120. 126 .loc 1 2919 27 view .LVU26
  3121. 127 0020 5A60 str r2, [r3, #4]
  3122. 128 .L7:
  3123. 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3124. 129 .loc 1 2922 5 is_stmt 1 view .LVU27
  3125. 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3126. 130 .loc 1 2922 16 is_stmt 0 view .LVU28
  3127. 131 0022 C38C ldrh r3, [r0, #38]
  3128. 132 0024 9BB2 uxth r3, r3
  3129. 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3130. 133 .loc 1 2922 9 view .LVU29
  3131. 134 0026 013B subs r3, r3, #1
  3132. 135 0028 9BB2 uxth r3, r3
  3133. ARM GAS /tmp/ccGtkZvD.s page 55
  3134. 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3135. 136 .loc 1 2922 8 view .LVU30
  3136. 137 002a C384 strh r3, [r0, #38] @ movhi
  3137. 138 002c 4BB9 cbnz r3, .L8
  3138. 2925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3139. 139 .loc 1 2925 7 is_stmt 1 view .LVU31
  3140. 140 002e 0268 ldr r2, [r0]
  3141. 141 0030 D368 ldr r3, [r2, #12]
  3142. 142 0032 23F08003 bic r3, r3, #128
  3143. 143 0036 D360 str r3, [r2, #12]
  3144. 2928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3145. 144 .loc 1 2928 7 view .LVU32
  3146. 145 0038 0268 ldr r2, [r0]
  3147. 146 003a D368 ldr r3, [r2, #12]
  3148. 147 003c 43F04003 orr r3, r3, #64
  3149. 148 0040 D360 str r3, [r2, #12]
  3150. 149 .L8:
  3151. 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3152. 150 .loc 1 2930 5 view .LVU33
  3153. 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3154. 151 .loc 1 2930 12 is_stmt 0 view .LVU34
  3155. 152 0042 0020 movs r0, #0
  3156. 153 .LVL5:
  3157. 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3158. 154 .loc 1 2930 12 view .LVU35
  3159. 155 0044 7047 bx lr
  3160. 156 .LVL6:
  3161. 157 .L11:
  3162. 2906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint16_t)(*tmp & (uint16_t)0x01FF);
  3163. 158 .loc 1 2906 7 is_stmt 1 view .LVU36
  3164. 2906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint16_t)(*tmp & (uint16_t)0x01FF);
  3165. 159 .loc 1 2906 11 is_stmt 0 view .LVU37
  3166. 160 0046 036A ldr r3, [r0, #32]
  3167. 161 .LVL7:
  3168. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3169. 162 .loc 1 2907 7 is_stmt 1 view .LVU38
  3170. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3171. 163 .loc 1 2907 40 is_stmt 0 view .LVU39
  3172. 164 0048 1B88 ldrh r3, [r3]
  3173. 165 .LVL8:
  3174. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3175. 166 .loc 1 2907 12 view .LVU40
  3176. 167 004a 0268 ldr r2, [r0]
  3177. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3178. 168 .loc 1 2907 29 view .LVU41
  3179. 169 004c C3F30803 ubfx r3, r3, #0, #9
  3180. 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3181. 170 .loc 1 2907 27 view .LVU42
  3182. 171 0050 5360 str r3, [r2, #4]
  3183. 172 .LVL9:
  3184. 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3185. 173 .loc 1 2908 7 is_stmt 1 view .LVU43
  3186. 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3187. 174 .loc 1 2908 22 is_stmt 0 view .LVU44
  3188. 175 0052 0369 ldr r3, [r0, #16]
  3189. 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3190. 176 .loc 1 2908 10 view .LVU45
  3191. ARM GAS /tmp/ccGtkZvD.s page 56
  3192. 177 0054 1BB9 cbnz r3, .L6
  3193. 2910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3194. 178 .loc 1 2910 9 is_stmt 1 view .LVU46
  3195. 2910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3196. 179 .loc 1 2910 27 is_stmt 0 view .LVU47
  3197. 180 0056 036A ldr r3, [r0, #32]
  3198. 181 0058 0233 adds r3, r3, #2
  3199. 182 005a 0362 str r3, [r0, #32]
  3200. 183 005c E1E7 b .L7
  3201. 184 .L6:
  3202. 2914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3203. 185 .loc 1 2914 9 is_stmt 1 view .LVU48
  3204. 2914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3205. 186 .loc 1 2914 27 is_stmt 0 view .LVU49
  3206. 187 005e 036A ldr r3, [r0, #32]
  3207. 188 0060 0133 adds r3, r3, #1
  3208. 189 0062 0362 str r3, [r0, #32]
  3209. 190 0064 DDE7 b .L7
  3210. 191 .cfi_endproc
  3211. 192 .LFE181:
  3212. 194 .section .text.UART_SetConfig,"ax",%progbits
  3213. 195 .align 1
  3214. 196 .syntax unified
  3215. 197 .thumb
  3216. 198 .thumb_func
  3217. 200 UART_SetConfig:
  3218. 201 .LVL10:
  3219. 202 .LFB184:
  3220. 2937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3221. 2938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  3222. 2939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Wraps up transmission in non blocking mode.
  3223. 2940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  3224. 2941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  3225. 2942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  3226. 2943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  3227. 2944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_EndTransmit_IT(UART_HandleTypeDef *huart)
  3228. 2945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3229. 2946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
  3230. 2947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_TC);
  3231. 2948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3232. 2949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Tx process is ended, restore huart->gState to Ready */
  3233. 2950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  3234. 2951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3235. 2952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  3236. 2953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
  3237. 2954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback(huart);
  3238. 2955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  3239. 2956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
  3240. 2957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxCpltCallback(huart);
  3241. 2958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  3242. 2959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3243. 2960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  3244. 2961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3245. 2962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3246. 2963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  3247. 2964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode
  3248. 2965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  3249. ARM GAS /tmp/ccGtkZvD.s page 57
  3250. 2966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  3251. 2967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
  3252. 2968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  3253. 2969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Receive_IT(UART_HandleTypeDef *huart)
  3254. 2970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3255. 2971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  3256. 2972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3257. 2973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is ongoing */
  3258. 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_BUSY_RX)
  3259. 2975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3260. 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  3261. 2977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3262. 2978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) huart->pRxBuffPtr;
  3263. 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3264. 2980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3265. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x01FF);
  3266. 2982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  3267. 2983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3268. 2984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3269. 2985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3270. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x00FF);
  3271. 2987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  3272. 2988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3273. 2989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3274. 2990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3275. 2991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3276. 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  3277. 2993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3278. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *huart->pRxBuffPtr++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x00FF);
  3279. 2995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3280. 2996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3281. 2997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3282. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *huart->pRxBuffPtr++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x007F);
  3283. 2999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3284. 3000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3285. 3001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3286. 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (--huart->RxXferCount == 0U)
  3287. 3003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3288. 3004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Data Register not empty Interrupt */
  3289. 3005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_RXNE);
  3290. 3006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3291. 3007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Parity Error Interrupt */
  3292. 3008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_PE);
  3293. 3009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3294. 3010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Error Interrupt: (Frame error, noise error, overrun error) */
  3295. 3011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_ERR);
  3296. 3012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3297. 3013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Rx process is completed, restore huart->RxState to Ready */
  3298. 3014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  3299. 3015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3300. 3016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  3301. 3017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx complete callback*/
  3302. 3018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback(huart);
  3303. 3019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  3304. 3020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx complete callback*/
  3305. 3021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxCpltCallback(huart);
  3306. 3022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  3307. ARM GAS /tmp/ccGtkZvD.s page 58
  3308. 3023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3309. 3024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  3310. 3025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3311. 3026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
  3312. 3027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3313. 3028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3314. 3029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3315. 3030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
  3316. 3031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3317. 3032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3318. 3033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3319. 3034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
  3320. 3035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Configures the UART peripheral.
  3321. 3036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
  3322. 3037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
  3323. 3038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
  3324. 3039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
  3325. 3040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_SetConfig(UART_HandleTypeDef *huart)
  3326. 3041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3327. 203 .loc 1 3041 1 is_stmt 1 view -0
  3328. 204 .cfi_startproc
  3329. 205 @ args = 0, pretend = 0, frame = 0
  3330. 206 @ frame_needed = 0, uses_anonymous_args = 0
  3331. 207 .loc 1 3041 1 is_stmt 0 view .LVU51
  3332. 208 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
  3333. 209 .LCFI0:
  3334. 210 .cfi_def_cfa_offset 32
  3335. 211 .cfi_offset 3, -32
  3336. 212 .cfi_offset 4, -28
  3337. 213 .cfi_offset 5, -24
  3338. 214 .cfi_offset 6, -20
  3339. 215 .cfi_offset 7, -16
  3340. 216 .cfi_offset 8, -12
  3341. 217 .cfi_offset 9, -8
  3342. 218 .cfi_offset 14, -4
  3343. 219 0004 0446 mov r4, r0
  3344. 3042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg;
  3345. 220 .loc 1 3042 3 is_stmt 1 view .LVU52
  3346. 3043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3347. 3044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  3348. 3045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_BAUDRATE(huart->Init.BaudRate));
  3349. 221 .loc 1 3045 3 view .LVU53
  3350. 3046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_STOPBITS(huart->Init.StopBits));
  3351. 222 .loc 1 3046 3 view .LVU54
  3352. 3047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_PARITY(huart->Init.Parity));
  3353. 223 .loc 1 3047 3 view .LVU55
  3354. 3048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_MODE(huart->Init.Mode));
  3355. 224 .loc 1 3048 3 view .LVU56
  3356. 3049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3357. 3050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR2 Configuration -----------------------*/
  3358. 3051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Configure the UART Stop Bits: Set STOP[13:12] bits
  3359. 3052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** according to huart->Init.StopBits value */
  3360. 3053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR2, USART_CR2_STOP, huart->Init.StopBits);
  3361. 225 .loc 1 3053 3 view .LVU57
  3362. 226 0006 0268 ldr r2, [r0]
  3363. 227 0008 1369 ldr r3, [r2, #16]
  3364. 228 000a 23F44053 bic r3, r3, #12288
  3365. ARM GAS /tmp/ccGtkZvD.s page 59
  3366. 229 000e C168 ldr r1, [r0, #12]
  3367. 230 0010 0B43 orrs r3, r3, r1
  3368. 231 0012 1361 str r3, [r2, #16]
  3369. 3054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3370. 3055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
  3371. 3056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Configure the UART Word Length, Parity and mode:
  3372. 3057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set the M bits according to huart->Init.WordLength value
  3373. 3058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set PCE and PS bits according to huart->Init.Parity value
  3374. 3059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set TE and RE bits according to huart->Init.Mode value
  3375. 3060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set OVER8 bit according to huart->Init.OverSampling value */
  3376. 3061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3377. 3062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg = (uint32_t)huart->Init.WordLength | huart->Init.Parity | huart->Init.Mode | huart->Init.O
  3378. 232 .loc 1 3062 3 view .LVU58
  3379. 233 .loc 1 3062 33 is_stmt 0 view .LVU59
  3380. 234 0014 8368 ldr r3, [r0, #8]
  3381. 235 .loc 1 3062 58 view .LVU60
  3382. 236 0016 0269 ldr r2, [r0, #16]
  3383. 237 .loc 1 3062 45 view .LVU61
  3384. 238 0018 1343 orrs r3, r3, r2
  3385. 239 .loc 1 3062 79 view .LVU62
  3386. 240 001a 4269 ldr r2, [r0, #20]
  3387. 241 .loc 1 3062 66 view .LVU63
  3388. 242 001c 1343 orrs r3, r3, r2
  3389. 243 .loc 1 3062 98 view .LVU64
  3390. 244 001e C269 ldr r2, [r0, #28]
  3391. 245 .loc 1 3062 10 view .LVU65
  3392. 246 0020 1A43 orrs r2, r2, r3
  3393. 247 .LVL11:
  3394. 3063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR1,
  3395. 248 .loc 1 3063 3 is_stmt 1 view .LVU66
  3396. 249 0022 0168 ldr r1, [r0]
  3397. 250 0024 CB68 ldr r3, [r1, #12]
  3398. 251 0026 23F41643 bic r3, r3, #38400
  3399. 252 002a 23F00C03 bic r3, r3, #12
  3400. 253 002e 1343 orrs r3, r3, r2
  3401. 254 0030 CB60 str r3, [r1, #12]
  3402. 3064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (uint32_t)(USART_CR1_M | USART_CR1_PCE | USART_CR1_PS | USART_CR1_TE | USART_CR1_RE |
  3403. 3065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg);
  3404. 3066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3405. 3067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR3 Configuration -----------------------*/
  3406. 3068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Configure the UART HFC: Set CTSE and RTSE bits according to huart->Init.HwFlowCtl value */
  3407. 3069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR3, (USART_CR3_RTSE | USART_CR3_CTSE), huart->Init.HwFlowCtl);
  3408. 255 .loc 1 3069 3 view .LVU67
  3409. 256 0032 0268 ldr r2, [r0]
  3410. 257 .LVL12:
  3411. 258 .loc 1 3069 3 is_stmt 0 view .LVU68
  3412. 259 0034 5369 ldr r3, [r2, #20]
  3413. 260 0036 23F44073 bic r3, r3, #768
  3414. 261 003a 8169 ldr r1, [r0, #24]
  3415. 262 003c 0B43 orrs r3, r3, r1
  3416. 263 003e 5361 str r3, [r2, #20]
  3417. 3070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3418. 3071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Over Sampling */
  3419. 3072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.OverSampling == UART_OVERSAMPLING_8)
  3420. 264 .loc 1 3072 3 is_stmt 1 view .LVU69
  3421. 265 .loc 1 3072 18 is_stmt 0 view .LVU70
  3422. 266 0040 C369 ldr r3, [r0, #28]
  3423. ARM GAS /tmp/ccGtkZvD.s page 60
  3424. 267 .loc 1 3072 6 view .LVU71
  3425. 268 0042 B3F5004F cmp r3, #32768
  3426. 269 0046 5ED0 beq .L20
  3427. 3073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3428. 3074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART BRR Configuration ---------------------*/
  3429. 3075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if defined(USART6)
  3430. 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->Instance == USART1) || (huart->Instance == USART6))
  3431. 3077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3432. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
  3433. 3079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3434. 3080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  3435. 3081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Instance == USART1)
  3436. 3082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3437. 3083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
  3438. 3084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3439. 3085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USART6 */
  3440. 3086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3441. 3087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3442. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK1Freq(), huart->Init.BaudRate);
  3443. 3089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3444. 3090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3445. 3091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3446. 3092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3447. 3093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART BRR Configuration ---------------------*/
  3448. 3094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if defined(USART6)
  3449. 3095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->Instance == USART1) || (huart->Instance == USART6))
  3450. 270 .loc 1 3095 5 is_stmt 1 view .LVU72
  3451. 271 .loc 1 3095 15 is_stmt 0 view .LVU73
  3452. 272 0048 0368 ldr r3, [r0]
  3453. 273 .loc 1 3095 8 view .LVU74
  3454. 274 004a B54A ldr r2, .L21
  3455. 275 004c 9342 cmp r3, r2
  3456. 276 004e 00F01081 beq .L17
  3457. 277 .loc 1 3095 37 discriminator 1 view .LVU75
  3458. 278 0052 02F58062 add r2, r2, #1024
  3459. 279 0056 9342 cmp r3, r2
  3460. 280 0058 00F00B81 beq .L17
  3461. 3096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3462. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
  3463. 3098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3464. 3099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
  3465. 3100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Instance == USART1)
  3466. 3101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3467. 3102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
  3468. 3103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3469. 3104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USART6 */
  3470. 3105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
  3471. 3106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3472. 3107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK1Freq(), huart->Init.BaudRate);
  3473. 281 .loc 1 3107 7 is_stmt 1 view .LVU76
  3474. 282 .loc 1 3107 30 is_stmt 0 view .LVU77
  3475. 283 005c FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3476. 284 .LVL13:
  3477. 285 .loc 1 3107 30 view .LVU78
  3478. 286 0060 00EB8000 add r0, r0, r0, lsl #2
  3479. 287 0064 00EB8000 add r0, r0, r0, lsl #2
  3480. 288 0068 6568 ldr r5, [r4, #4]
  3481. ARM GAS /tmp/ccGtkZvD.s page 61
  3482. 289 006a AD00 lsls r5, r5, #2
  3483. 290 006c B0FBF5F5 udiv r5, r0, r5
  3484. 291 0070 AC4F ldr r7, .L21+4
  3485. 292 0072 A7FB0535 umull r3, r5, r7, r5
  3486. 293 0076 6D09 lsrs r5, r5, #5
  3487. 294 0078 2E01 lsls r6, r5, #4
  3488. 295 007a FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3489. 296 .LVL14:
  3490. 297 007e 00EB8000 add r0, r0, r0, lsl #2
  3491. 298 0082 00EB8000 add r0, r0, r0, lsl #2
  3492. 299 0086 6568 ldr r5, [r4, #4]
  3493. 300 0088 AD00 lsls r5, r5, #2
  3494. 301 008a B0FBF5F5 udiv r5, r0, r5
  3495. 302 008e FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3496. 303 .LVL15:
  3497. 304 0092 00EB8000 add r0, r0, r0, lsl #2
  3498. 305 0096 00EB8000 add r0, r0, r0, lsl #2
  3499. 306 009a 6368 ldr r3, [r4, #4]
  3500. 307 009c 9B00 lsls r3, r3, #2
  3501. 308 009e B0FBF3F3 udiv r3, r0, r3
  3502. 309 00a2 A7FB0323 umull r2, r3, r7, r3
  3503. 310 00a6 5B09 lsrs r3, r3, #5
  3504. 311 00a8 4FF06408 mov r8, #100
  3505. 312 00ac 08FB1353 mls r3, r8, r3, r5
  3506. 313 00b0 1B01 lsls r3, r3, #4
  3507. 314 00b2 3233 adds r3, r3, #50
  3508. 315 00b4 A7FB0323 umull r2, r3, r7, r3
  3509. 316 00b8 5B09 lsrs r3, r3, #5
  3510. 317 00ba 03F0F003 and r3, r3, #240
  3511. 318 00be F518 adds r5, r6, r3
  3512. 319 00c0 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3513. 320 .LVL16:
  3514. 321 00c4 00EB8000 add r0, r0, r0, lsl #2
  3515. 322 00c8 00EB8000 add r0, r0, r0, lsl #2
  3516. 323 00cc 6668 ldr r6, [r4, #4]
  3517. 324 00ce B600 lsls r6, r6, #2
  3518. 325 00d0 B0FBF6F6 udiv r6, r0, r6
  3519. 326 00d4 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3520. 327 .LVL17:
  3521. 328 00d8 00EB8000 add r0, r0, r0, lsl #2
  3522. 329 00dc 00EB8000 add r0, r0, r0, lsl #2
  3523. 330 00e0 6368 ldr r3, [r4, #4]
  3524. 331 00e2 9B00 lsls r3, r3, #2
  3525. 332 00e4 B0FBF3F0 udiv r0, r0, r3
  3526. 333 00e8 A7FB0030 umull r3, r0, r7, r0
  3527. 334 00ec 4009 lsrs r0, r0, #5
  3528. 335 00ee 08FB1060 mls r0, r8, r0, r6
  3529. 336 00f2 0001 lsls r0, r0, #4
  3530. 337 00f4 3230 adds r0, r0, #50
  3531. 338 00f6 A7FB0037 umull r3, r7, r7, r0
  3532. 339 00fa C7F34317 ubfx r7, r7, #5, #4
  3533. 340 .loc 1 3107 12 view .LVU79
  3534. 341 00fe 2368 ldr r3, [r4]
  3535. 342 .loc 1 3107 30 view .LVU80
  3536. 343 0100 2F44 add r7, r7, r5
  3537. 344 .loc 1 3107 28 view .LVU81
  3538. 345 0102 9F60 str r7, [r3, #8]
  3539. ARM GAS /tmp/ccGtkZvD.s page 62
  3540. 3108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3541. 3109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3542. 3110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3543. 346 .loc 1 3110 1 view .LVU82
  3544. 347 0104 09E1 b .L12
  3545. 348 .LVL18:
  3546. 349 .L20:
  3547. 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3548. 350 .loc 1 3076 5 is_stmt 1 view .LVU83
  3549. 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3550. 351 .loc 1 3076 15 is_stmt 0 view .LVU84
  3551. 352 0106 0368 ldr r3, [r0]
  3552. 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3553. 353 .loc 1 3076 8 view .LVU85
  3554. 354 0108 854A ldr r2, .L21
  3555. 355 010a 9342 cmp r3, r2
  3556. 356 010c 5AD0 beq .L14
  3557. 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3558. 357 .loc 1 3076 37 discriminator 1 view .LVU86
  3559. 358 010e 02F58062 add r2, r2, #1024
  3560. 359 0112 9342 cmp r3, r2
  3561. 360 0114 56D0 beq .L14
  3562. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3563. 361 .loc 1 3088 7 is_stmt 1 view .LVU87
  3564. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3565. 362 .loc 1 3088 30 is_stmt 0 view .LVU88
  3566. 363 0116 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3567. 364 .LVL19:
  3568. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3569. 365 .loc 1 3088 30 view .LVU89
  3570. 366 011a 00EB8000 add r0, r0, r0, lsl #2
  3571. 367 011e 00EB8000 add r0, r0, r0, lsl #2
  3572. 368 0122 6568 ldr r5, [r4, #4]
  3573. 369 0124 6D00 lsls r5, r5, #1
  3574. 370 0126 B0FBF5F5 udiv r5, r0, r5
  3575. 371 012a 7E4F ldr r7, .L21+4
  3576. 372 012c A7FB0535 umull r3, r5, r7, r5
  3577. 373 0130 6D09 lsrs r5, r5, #5
  3578. 374 0132 4FEA0519 lsl r9, r5, #4
  3579. 375 0136 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3580. 376 .LVL20:
  3581. 377 013a 00EB8000 add r0, r0, r0, lsl #2
  3582. 378 013e 00EB8000 add r0, r0, r0, lsl #2
  3583. 379 0142 6668 ldr r6, [r4, #4]
  3584. 380 0144 7600 lsls r6, r6, #1
  3585. 381 0146 B0FBF6F6 udiv r6, r0, r6
  3586. 382 014a FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3587. 383 .LVL21:
  3588. 384 014e 00EB8000 add r0, r0, r0, lsl #2
  3589. 385 0152 00EB8000 add r0, r0, r0, lsl #2
  3590. 386 0156 6568 ldr r5, [r4, #4]
  3591. 387 0158 6D00 lsls r5, r5, #1
  3592. 388 015a B0FBF5F5 udiv r5, r0, r5
  3593. 389 015e A7FB0535 umull r3, r5, r7, r5
  3594. 390 0162 6D09 lsrs r5, r5, #5
  3595. 391 0164 4FF06408 mov r8, #100
  3596. 392 0168 08FB1565 mls r5, r8, r5, r6
  3597. ARM GAS /tmp/ccGtkZvD.s page 63
  3598. 393 016c ED00 lsls r5, r5, #3
  3599. 394 016e 3235 adds r5, r5, #50
  3600. 395 0170 A7FB0535 umull r3, r5, r7, r5
  3601. 396 0174 6D09 lsrs r5, r5, #5
  3602. 397 0176 6D00 lsls r5, r5, #1
  3603. 398 0178 05F4F875 and r5, r5, #496
  3604. 399 017c 4D44 add r5, r5, r9
  3605. 400 017e FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3606. 401 .LVL22:
  3607. 402 0182 00EB8000 add r0, r0, r0, lsl #2
  3608. 403 0186 00EB8000 add r0, r0, r0, lsl #2
  3609. 404 018a 6668 ldr r6, [r4, #4]
  3610. 405 018c 7600 lsls r6, r6, #1
  3611. 406 018e B0FBF6F6 udiv r6, r0, r6
  3612. 407 0192 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
  3613. 408 .LVL23:
  3614. 409 0196 00EB8000 add r0, r0, r0, lsl #2
  3615. 410 019a 00EB8000 add r0, r0, r0, lsl #2
  3616. 411 019e 6368 ldr r3, [r4, #4]
  3617. 412 01a0 5B00 lsls r3, r3, #1
  3618. 413 01a2 B0FBF3F3 udiv r3, r0, r3
  3619. 414 01a6 A7FB0323 umull r2, r3, r7, r3
  3620. 415 01aa 5B09 lsrs r3, r3, #5
  3621. 416 01ac 08FB1363 mls r3, r8, r3, r6
  3622. 417 01b0 DB00 lsls r3, r3, #3
  3623. 418 01b2 3233 adds r3, r3, #50
  3624. 419 01b4 A7FB0337 umull r3, r7, r7, r3
  3625. 420 01b8 C7F34217 ubfx r7, r7, #5, #3
  3626. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3627. 421 .loc 1 3088 12 view .LVU90
  3628. 422 01bc 2368 ldr r3, [r4]
  3629. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3630. 423 .loc 1 3088 30 view .LVU91
  3631. 424 01be 2F44 add r7, r7, r5
  3632. 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3633. 425 .loc 1 3088 28 view .LVU92
  3634. 426 01c0 9F60 str r7, [r3, #8]
  3635. 427 01c2 AAE0 b .L12
  3636. 428 .LVL24:
  3637. 429 .L14:
  3638. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3639. 430 .loc 1 3078 7 is_stmt 1 view .LVU93
  3640. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3641. 431 .loc 1 3078 30 is_stmt 0 view .LVU94
  3642. 432 01c4 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3643. 433 .LVL25:
  3644. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3645. 434 .loc 1 3078 30 view .LVU95
  3646. 435 01c8 00EB8000 add r0, r0, r0, lsl #2
  3647. 436 01cc 00EB8000 add r0, r0, r0, lsl #2
  3648. 437 01d0 6568 ldr r5, [r4, #4]
  3649. 438 01d2 6D00 lsls r5, r5, #1
  3650. 439 01d4 B0FBF5F5 udiv r5, r0, r5
  3651. 440 01d8 524F ldr r7, .L21+4
  3652. 441 01da A7FB0535 umull r3, r5, r7, r5
  3653. 442 01de 6D09 lsrs r5, r5, #5
  3654. 443 01e0 4FEA0519 lsl r9, r5, #4
  3655. ARM GAS /tmp/ccGtkZvD.s page 64
  3656. 444 01e4 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3657. 445 .LVL26:
  3658. 446 01e8 00EB8000 add r0, r0, r0, lsl #2
  3659. 447 01ec 00EB8000 add r0, r0, r0, lsl #2
  3660. 448 01f0 6668 ldr r6, [r4, #4]
  3661. 449 01f2 7600 lsls r6, r6, #1
  3662. 450 01f4 B0FBF6F6 udiv r6, r0, r6
  3663. 451 01f8 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3664. 452 .LVL27:
  3665. 453 01fc 00EB8000 add r0, r0, r0, lsl #2
  3666. 454 0200 00EB8000 add r0, r0, r0, lsl #2
  3667. 455 0204 6568 ldr r5, [r4, #4]
  3668. 456 0206 6D00 lsls r5, r5, #1
  3669. 457 0208 B0FBF5F5 udiv r5, r0, r5
  3670. 458 020c A7FB0535 umull r3, r5, r7, r5
  3671. 459 0210 6D09 lsrs r5, r5, #5
  3672. 460 0212 4FF06408 mov r8, #100
  3673. 461 0216 08FB1565 mls r5, r8, r5, r6
  3674. 462 021a ED00 lsls r5, r5, #3
  3675. 463 021c 3235 adds r5, r5, #50
  3676. 464 021e A7FB0535 umull r3, r5, r7, r5
  3677. 465 0222 6D09 lsrs r5, r5, #5
  3678. 466 0224 6D00 lsls r5, r5, #1
  3679. 467 0226 05F4F875 and r5, r5, #496
  3680. 468 022a 4D44 add r5, r5, r9
  3681. 469 022c FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3682. 470 .LVL28:
  3683. 471 0230 00EB8000 add r0, r0, r0, lsl #2
  3684. 472 0234 00EB8000 add r0, r0, r0, lsl #2
  3685. 473 0238 6668 ldr r6, [r4, #4]
  3686. 474 023a 7600 lsls r6, r6, #1
  3687. 475 023c B0FBF6F6 udiv r6, r0, r6
  3688. 476 0240 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3689. 477 .LVL29:
  3690. 478 0244 00EB8000 add r0, r0, r0, lsl #2
  3691. 479 0248 00EB8000 add r0, r0, r0, lsl #2
  3692. 480 024c 6368 ldr r3, [r4, #4]
  3693. 481 024e 5B00 lsls r3, r3, #1
  3694. 482 0250 B0FBF3F3 udiv r3, r0, r3
  3695. 483 0254 A7FB0323 umull r2, r3, r7, r3
  3696. 484 0258 5B09 lsrs r3, r3, #5
  3697. 485 025a 08FB1363 mls r3, r8, r3, r6
  3698. 486 025e DB00 lsls r3, r3, #3
  3699. 487 0260 3233 adds r3, r3, #50
  3700. 488 0262 A7FB0337 umull r3, r7, r7, r3
  3701. 489 0266 C7F34217 ubfx r7, r7, #5, #3
  3702. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3703. 490 .loc 1 3078 12 view .LVU96
  3704. 491 026a 2368 ldr r3, [r4]
  3705. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3706. 492 .loc 1 3078 30 view .LVU97
  3707. 493 026c 2F44 add r7, r7, r5
  3708. 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3709. 494 .loc 1 3078 28 view .LVU98
  3710. 495 026e 9F60 str r7, [r3, #8]
  3711. 496 0270 53E0 b .L12
  3712. 497 .LVL30:
  3713. ARM GAS /tmp/ccGtkZvD.s page 65
  3714. 498 .L17:
  3715. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3716. 499 .loc 1 3097 7 is_stmt 1 view .LVU99
  3717. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3718. 500 .loc 1 3097 30 is_stmt 0 view .LVU100
  3719. 501 0272 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3720. 502 .LVL31:
  3721. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3722. 503 .loc 1 3097 30 view .LVU101
  3723. 504 0276 00EB8000 add r0, r0, r0, lsl #2
  3724. 505 027a 00EB8000 add r0, r0, r0, lsl #2
  3725. 506 027e 6568 ldr r5, [r4, #4]
  3726. 507 0280 AD00 lsls r5, r5, #2
  3727. 508 0282 B0FBF5F5 udiv r5, r0, r5
  3728. 509 0286 274F ldr r7, .L21+4
  3729. 510 0288 A7FB0535 umull r3, r5, r7, r5
  3730. 511 028c 6D09 lsrs r5, r5, #5
  3731. 512 028e 2E01 lsls r6, r5, #4
  3732. 513 0290 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3733. 514 .LVL32:
  3734. 515 0294 00EB8000 add r0, r0, r0, lsl #2
  3735. 516 0298 00EB8000 add r0, r0, r0, lsl #2
  3736. 517 029c 6568 ldr r5, [r4, #4]
  3737. 518 029e AD00 lsls r5, r5, #2
  3738. 519 02a0 B0FBF5F5 udiv r5, r0, r5
  3739. 520 02a4 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3740. 521 .LVL33:
  3741. 522 02a8 00EB8000 add r0, r0, r0, lsl #2
  3742. 523 02ac 00EB8000 add r0, r0, r0, lsl #2
  3743. 524 02b0 6368 ldr r3, [r4, #4]
  3744. 525 02b2 9B00 lsls r3, r3, #2
  3745. 526 02b4 B0FBF3F3 udiv r3, r0, r3
  3746. 527 02b8 A7FB0323 umull r2, r3, r7, r3
  3747. 528 02bc 5B09 lsrs r3, r3, #5
  3748. 529 02be 4FF06408 mov r8, #100
  3749. 530 02c2 08FB1353 mls r3, r8, r3, r5
  3750. 531 02c6 1B01 lsls r3, r3, #4
  3751. 532 02c8 3233 adds r3, r3, #50
  3752. 533 02ca A7FB0323 umull r2, r3, r7, r3
  3753. 534 02ce 5B09 lsrs r3, r3, #5
  3754. 535 02d0 03F0F003 and r3, r3, #240
  3755. 536 02d4 F518 adds r5, r6, r3
  3756. 537 02d6 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3757. 538 .LVL34:
  3758. 539 02da 00EB8000 add r0, r0, r0, lsl #2
  3759. 540 02de 00EB8000 add r0, r0, r0, lsl #2
  3760. 541 02e2 6668 ldr r6, [r4, #4]
  3761. 542 02e4 B600 lsls r6, r6, #2
  3762. 543 02e6 B0FBF6F6 udiv r6, r0, r6
  3763. 544 02ea FFF7FEFF bl HAL_RCC_GetPCLK2Freq
  3764. 545 .LVL35:
  3765. 546 02ee 00EB8000 add r0, r0, r0, lsl #2
  3766. 547 02f2 00EB8000 add r0, r0, r0, lsl #2
  3767. 548 02f6 6368 ldr r3, [r4, #4]
  3768. 549 02f8 9B00 lsls r3, r3, #2
  3769. 550 02fa B0FBF3F0 udiv r0, r0, r3
  3770. 551 02fe A7FB0030 umull r3, r0, r7, r0
  3771. ARM GAS /tmp/ccGtkZvD.s page 66
  3772. 552 0302 4009 lsrs r0, r0, #5
  3773. 553 0304 08FB1060 mls r0, r8, r0, r6
  3774. 554 0308 0001 lsls r0, r0, #4
  3775. 555 030a 3230 adds r0, r0, #50
  3776. 556 030c A7FB0037 umull r3, r7, r7, r0
  3777. 557 0310 C7F34317 ubfx r7, r7, #5, #4
  3778. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3779. 558 .loc 1 3097 12 view .LVU102
  3780. 559 0314 2368 ldr r3, [r4]
  3781. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3782. 560 .loc 1 3097 30 view .LVU103
  3783. 561 0316 2F44 add r7, r7, r5
  3784. 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3785. 562 .loc 1 3097 28 view .LVU104
  3786. 563 0318 9F60 str r7, [r3, #8]
  3787. 564 .L12:
  3788. 565 .loc 1 3110 1 view .LVU105
  3789. 566 031a BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
  3790. 567 .LVL36:
  3791. 568 .L22:
  3792. 569 .loc 1 3110 1 view .LVU106
  3793. 570 031e 00BF .align 2
  3794. 571 .L21:
  3795. 572 0320 00100140 .word 1073811456
  3796. 573 0324 1F85EB51 .word 1374389535
  3797. 574 .cfi_endproc
  3798. 575 .LFE184:
  3799. 577 .section .text.UART_WaitOnFlagUntilTimeout,"ax",%progbits
  3800. 578 .align 1
  3801. 579 .syntax unified
  3802. 580 .thumb
  3803. 581 .thumb_func
  3804. 583 UART_WaitOnFlagUntilTimeout:
  3805. 584 .LVL37:
  3806. 585 .LFB173:
  3807. 2668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Wait until flag is set */
  3808. 586 .loc 1 2668 1 is_stmt 1 view -0
  3809. 587 .cfi_startproc
  3810. 588 @ args = 4, pretend = 0, frame = 0
  3811. 589 @ frame_needed = 0, uses_anonymous_args = 0
  3812. 2668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Wait until flag is set */
  3813. 590 .loc 1 2668 1 is_stmt 0 view .LVU108
  3814. 591 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr}
  3815. 592 .LCFI1:
  3816. 593 .cfi_def_cfa_offset 32
  3817. 594 .cfi_offset 3, -32
  3818. 595 .cfi_offset 4, -28
  3819. 596 .cfi_offset 5, -24
  3820. 597 .cfi_offset 6, -20
  3821. 598 .cfi_offset 7, -16
  3822. 599 .cfi_offset 8, -12
  3823. 600 .cfi_offset 9, -8
  3824. 601 .cfi_offset 14, -4
  3825. 602 0004 0546 mov r5, r0
  3826. 603 0006 0F46 mov r7, r1
  3827. 604 0008 1646 mov r6, r2
  3828. 605 000a 9946 mov r9, r3
  3829. ARM GAS /tmp/ccGtkZvD.s page 67
  3830. 606 000c DDF82080 ldr r8, [sp, #32]
  3831. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3832. 607 .loc 1 2670 3 is_stmt 1 view .LVU109
  3833. 608 .LVL38:
  3834. 609 .L25:
  3835. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3836. 610 .loc 1 2670 9 view .LVU110
  3837. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3838. 611 .loc 1 2670 11 is_stmt 0 view .LVU111
  3839. 612 0010 2C68 ldr r4, [r5]
  3840. 613 0012 2468 ldr r4, [r4]
  3841. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3842. 614 .loc 1 2670 50 view .LVU112
  3843. 615 0014 37EA0403 bics r3, r7, r4
  3844. 616 0018 0CBF ite eq
  3845. 617 001a 4FF0010C moveq ip, #1
  3846. 618 001e 4FF0000C movne ip, #0
  3847. 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3848. 619 .loc 1 2670 9 view .LVU113
  3849. 620 0022 B445 cmp ip, r6
  3850. 621 0024 1FD1 bne .L30
  3851. 2673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3852. 622 .loc 1 2673 5 is_stmt 1 view .LVU114
  3853. 2673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3854. 623 .loc 1 2673 8 is_stmt 0 view .LVU115
  3855. 624 0026 B8F1FF3F cmp r8, #-1
  3856. 625 002a F1D0 beq .L25
  3857. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3858. 626 .loc 1 2675 7 is_stmt 1 view .LVU116
  3859. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3860. 627 .loc 1 2675 10 is_stmt 0 view .LVU117
  3861. 628 002c B8F1000F cmp r8, #0
  3862. 629 0030 05D0 beq .L26
  3863. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3864. 630 .loc 1 2675 32 discriminator 1 view .LVU118
  3865. 631 0032 FFF7FEFF bl HAL_GetTick
  3866. 632 .LVL39:
  3867. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3868. 633 .loc 1 2675 46 discriminator 1 view .LVU119
  3869. 634 0036 A0EB0900 sub r0, r0, r9
  3870. 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3871. 635 .loc 1 2675 27 discriminator 1 view .LVU120
  3872. 636 003a 4045 cmp r0, r8
  3873. 637 003c E8D9 bls .L25
  3874. 638 .L26:
  3875. 2678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  3876. 639 .loc 1 2678 9 is_stmt 1 view .LVU121
  3877. 640 003e 2A68 ldr r2, [r5]
  3878. 641 0040 D368 ldr r3, [r2, #12]
  3879. 642 0042 23F4D073 bic r3, r3, #416
  3880. 643 0046 D360 str r3, [r2, #12]
  3881. 2679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3882. 644 .loc 1 2679 9 view .LVU122
  3883. 645 0048 2A68 ldr r2, [r5]
  3884. 646 004a 5369 ldr r3, [r2, #20]
  3885. 647 004c 23F00103 bic r3, r3, #1
  3886. 648 0050 5361 str r3, [r2, #20]
  3887. ARM GAS /tmp/ccGtkZvD.s page 68
  3888. 2681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  3889. 649 .loc 1 2681 9 view .LVU123
  3890. 2681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  3891. 650 .loc 1 2681 24 is_stmt 0 view .LVU124
  3892. 651 0052 2023 movs r3, #32
  3893. 652 0054 85F83930 strb r3, [r5, #57]
  3894. 2682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3895. 653 .loc 1 2682 9 is_stmt 1 view .LVU125
  3896. 2682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3897. 654 .loc 1 2682 24 is_stmt 0 view .LVU126
  3898. 655 0058 85F83A30 strb r3, [r5, #58]
  3899. 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3900. 656 .loc 1 2685 9 is_stmt 1 view .LVU127
  3901. 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3902. 657 .loc 1 2685 9 view .LVU128
  3903. 658 005c 0023 movs r3, #0
  3904. 659 005e 85F83830 strb r3, [r5, #56]
  3905. 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3906. 660 .loc 1 2685 9 view .LVU129
  3907. 2687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3908. 661 .loc 1 2687 9 view .LVU130
  3909. 2687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3910. 662 .loc 1 2687 16 is_stmt 0 view .LVU131
  3911. 663 0062 0320 movs r0, #3
  3912. 664 0064 00E0 b .L27
  3913. 665 .L30:
  3914. 2691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3915. 666 .loc 1 2691 10 view .LVU132
  3916. 667 0066 0020 movs r0, #0
  3917. 668 .L27:
  3918. 2692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3919. 669 .loc 1 2692 1 view .LVU133
  3920. 670 0068 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc}
  3921. 2692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3922. 671 .loc 1 2692 1 view .LVU134
  3923. 672 .cfi_endproc
  3924. 673 .LFE173:
  3925. 675 .section .text.HAL_UART_MspInit,"ax",%progbits
  3926. 676 .align 1
  3927. 677 .weak HAL_UART_MspInit
  3928. 678 .syntax unified
  3929. 679 .thumb
  3930. 680 .thumb_func
  3931. 682 HAL_UART_MspInit:
  3932. 683 .LVL40:
  3933. 684 .LFB135:
  3934. 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  3935. 685 .loc 1 668 1 is_stmt 1 view -0
  3936. 686 .cfi_startproc
  3937. 687 @ args = 0, pretend = 0, frame = 0
  3938. 688 @ frame_needed = 0, uses_anonymous_args = 0
  3939. 689 @ link register save eliminated.
  3940. 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  3941. 690 .loc 1 670 3 view .LVU136
  3942. 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3943. 691 .loc 1 674 1 is_stmt 0 view .LVU137
  3944. 692 0000 7047 bx lr
  3945. ARM GAS /tmp/ccGtkZvD.s page 69
  3946. 693 .cfi_endproc
  3947. 694 .LFE135:
  3948. 696 .section .text.HAL_UART_Init,"ax",%progbits
  3949. 697 .align 1
  3950. 698 .global HAL_UART_Init
  3951. 699 .syntax unified
  3952. 700 .thumb
  3953. 701 .thumb_func
  3954. 703 HAL_UART_Init:
  3955. 704 .LVL41:
  3956. 705 .LFB130:
  3957. 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  3958. 706 .loc 1 318 1 is_stmt 1 view -0
  3959. 707 .cfi_startproc
  3960. 708 @ args = 0, pretend = 0, frame = 0
  3961. 709 @ frame_needed = 0, uses_anonymous_args = 0
  3962. 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3963. 710 .loc 1 320 3 view .LVU139
  3964. 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3965. 711 .loc 1 320 6 is_stmt 0 view .LVU140
  3966. 712 0000 58B3 cbz r0, .L35
  3967. 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  3968. 713 .loc 1 318 1 view .LVU141
  3969. 714 0002 10B5 push {r4, lr}
  3970. 715 .LCFI2:
  3971. 716 .cfi_def_cfa_offset 8
  3972. 717 .cfi_offset 4, -8
  3973. 718 .cfi_offset 14, -4
  3974. 719 0004 0446 mov r4, r0
  3975. 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3976. 720 .loc 1 326 3 is_stmt 1 view .LVU142
  3977. 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  3978. 721 .loc 1 334 5 view .LVU143
  3979. 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  3980. 722 .loc 1 336 3 view .LVU144
  3981. 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3982. 723 .loc 1 337 3 view .LVU145
  3983. 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3984. 724 .loc 1 339 3 view .LVU146
  3985. 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3986. 725 .loc 1 339 12 is_stmt 0 view .LVU147
  3987. 726 0006 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  3988. 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  3989. 727 .loc 1 339 6 view .LVU148
  3990. 728 000a 0BB3 cbz r3, .L40
  3991. 729 .LVL42:
  3992. 730 .L34:
  3993. 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3994. 731 .loc 1 360 3 is_stmt 1 view .LVU149
  3995. 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  3996. 732 .loc 1 360 17 is_stmt 0 view .LVU150
  3997. 733 000c 2423 movs r3, #36
  3998. 734 000e 84F83930 strb r3, [r4, #57]
  3999. 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4000. 735 .loc 1 363 3 is_stmt 1 view .LVU151
  4001. 736 0012 2268 ldr r2, [r4]
  4002. 737 0014 D368 ldr r3, [r2, #12]
  4003. ARM GAS /tmp/ccGtkZvD.s page 70
  4004. 738 0016 23F40053 bic r3, r3, #8192
  4005. 739 001a D360 str r3, [r2, #12]
  4006. 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4007. 740 .loc 1 366 3 view .LVU152
  4008. 741 001c 2046 mov r0, r4
  4009. 742 001e FFF7FEFF bl UART_SetConfig
  4010. 743 .LVL43:
  4011. 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
  4012. 744 .loc 1 371 3 view .LVU153
  4013. 745 0022 2268 ldr r2, [r4]
  4014. 746 0024 1369 ldr r3, [r2, #16]
  4015. 747 0026 23F49043 bic r3, r3, #18432
  4016. 748 002a 1361 str r3, [r2, #16]
  4017. 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4018. 749 .loc 1 372 3 view .LVU154
  4019. 750 002c 2268 ldr r2, [r4]
  4020. 751 002e 5369 ldr r3, [r2, #20]
  4021. 752 0030 23F02A03 bic r3, r3, #42
  4022. 753 0034 5361 str r3, [r2, #20]
  4023. 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4024. 754 .loc 1 375 3 view .LVU155
  4025. 755 0036 2268 ldr r2, [r4]
  4026. 756 0038 D368 ldr r3, [r2, #12]
  4027. 757 003a 43F40053 orr r3, r3, #8192
  4028. 758 003e D360 str r3, [r2, #12]
  4029. 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4030. 759 .loc 1 378 3 view .LVU156
  4031. 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4032. 760 .loc 1 378 20 is_stmt 0 view .LVU157
  4033. 761 0040 0020 movs r0, #0
  4034. 762 0042 E063 str r0, [r4, #60]
  4035. 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4036. 763 .loc 1 379 3 is_stmt 1 view .LVU158
  4037. 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4038. 764 .loc 1 379 17 is_stmt 0 view .LVU159
  4039. 765 0044 2023 movs r3, #32
  4040. 766 0046 84F83930 strb r3, [r4, #57]
  4041. 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4042. 767 .loc 1 380 3 is_stmt 1 view .LVU160
  4043. 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4044. 768 .loc 1 380 18 is_stmt 0 view .LVU161
  4045. 769 004a 84F83A30 strb r3, [r4, #58]
  4046. 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4047. 770 .loc 1 382 3 is_stmt 1 view .LVU162
  4048. 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4049. 771 .loc 1 383 1 is_stmt 0 view .LVU163
  4050. 772 004e 10BD pop {r4, pc}
  4051. 773 .LVL44:
  4052. 774 .L40:
  4053. 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4054. 775 .loc 1 342 5 is_stmt 1 view .LVU164
  4055. 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4056. 776 .loc 1 342 17 is_stmt 0 view .LVU165
  4057. 777 0050 80F83830 strb r3, [r0, #56]
  4058. 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4059. 778 .loc 1 356 5 is_stmt 1 view .LVU166
  4060. 779 0054 FFF7FEFF bl HAL_UART_MspInit
  4061. ARM GAS /tmp/ccGtkZvD.s page 71
  4062. 780 .LVL45:
  4063. 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4064. 781 .loc 1 356 5 is_stmt 0 view .LVU167
  4065. 782 0058 D8E7 b .L34
  4066. 783 .LVL46:
  4067. 784 .L35:
  4068. 785 .LCFI3:
  4069. 786 .cfi_def_cfa_offset 0
  4070. 787 .cfi_restore 4
  4071. 788 .cfi_restore 14
  4072. 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4073. 789 .loc 1 322 12 view .LVU168
  4074. 790 005a 0120 movs r0, #1
  4075. 791 .LVL47:
  4076. 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4077. 792 .loc 1 383 1 view .LVU169
  4078. 793 005c 7047 bx lr
  4079. 794 .cfi_endproc
  4080. 795 .LFE130:
  4081. 797 .section .text.HAL_HalfDuplex_Init,"ax",%progbits
  4082. 798 .align 1
  4083. 799 .global HAL_HalfDuplex_Init
  4084. 800 .syntax unified
  4085. 801 .thumb
  4086. 802 .thumb_func
  4087. 804 HAL_HalfDuplex_Init:
  4088. 805 .LVL48:
  4089. 806 .LFB131:
  4090. 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4091. 807 .loc 1 393 1 is_stmt 1 view -0
  4092. 808 .cfi_startproc
  4093. 809 @ args = 0, pretend = 0, frame = 0
  4094. 810 @ frame_needed = 0, uses_anonymous_args = 0
  4095. 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4096. 811 .loc 1 395 3 view .LVU171
  4097. 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4098. 812 .loc 1 395 6 is_stmt 0 view .LVU172
  4099. 813 0000 0028 cmp r0, #0
  4100. 814 0002 30D0 beq .L44
  4101. 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4102. 815 .loc 1 393 1 view .LVU173
  4103. 816 0004 10B5 push {r4, lr}
  4104. 817 .LCFI4:
  4105. 818 .cfi_def_cfa_offset 8
  4106. 819 .cfi_offset 4, -8
  4107. 820 .cfi_offset 14, -4
  4108. 821 0006 0446 mov r4, r0
  4109. 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
  4110. 822 .loc 1 401 3 is_stmt 1 view .LVU174
  4111. 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  4112. 823 .loc 1 402 3 view .LVU175
  4113. 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4114. 824 .loc 1 403 3 view .LVU176
  4115. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4116. 825 .loc 1 405 3 view .LVU177
  4117. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4118. 826 .loc 1 405 12 is_stmt 0 view .LVU178
  4119. ARM GAS /tmp/ccGtkZvD.s page 72
  4120. 827 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  4121. 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4122. 828 .loc 1 405 6 view .LVU179
  4123. 829 000c 33B3 cbz r3, .L49
  4124. 830 .LVL49:
  4125. 831 .L43:
  4126. 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4127. 832 .loc 1 426 3 is_stmt 1 view .LVU180
  4128. 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4129. 833 .loc 1 426 17 is_stmt 0 view .LVU181
  4130. 834 000e 2423 movs r3, #36
  4131. 835 0010 84F83930 strb r3, [r4, #57]
  4132. 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4133. 836 .loc 1 429 3 is_stmt 1 view .LVU182
  4134. 837 0014 2268 ldr r2, [r4]
  4135. 838 0016 D368 ldr r3, [r2, #12]
  4136. 839 0018 23F40053 bic r3, r3, #8192
  4137. 840 001c D360 str r3, [r2, #12]
  4138. 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4139. 841 .loc 1 432 3 view .LVU183
  4140. 842 001e 2046 mov r0, r4
  4141. 843 0020 FFF7FEFF bl UART_SetConfig
  4142. 844 .LVL50:
  4143. 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_IREN | USART_CR3_SCEN));
  4144. 845 .loc 1 437 3 view .LVU184
  4145. 846 0024 2268 ldr r2, [r4]
  4146. 847 0026 1369 ldr r3, [r2, #16]
  4147. 848 0028 23F49043 bic r3, r3, #18432
  4148. 849 002c 1361 str r3, [r2, #16]
  4149. 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4150. 850 .loc 1 438 3 view .LVU185
  4151. 851 002e 2268 ldr r2, [r4]
  4152. 852 0030 5369 ldr r3, [r2, #20]
  4153. 853 0032 23F02203 bic r3, r3, #34
  4154. 854 0036 5361 str r3, [r2, #20]
  4155. 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4156. 855 .loc 1 441 3 view .LVU186
  4157. 856 0038 2268 ldr r2, [r4]
  4158. 857 003a 5369 ldr r3, [r2, #20]
  4159. 858 003c 43F00803 orr r3, r3, #8
  4160. 859 0040 5361 str r3, [r2, #20]
  4161. 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4162. 860 .loc 1 444 3 view .LVU187
  4163. 861 0042 2268 ldr r2, [r4]
  4164. 862 0044 D368 ldr r3, [r2, #12]
  4165. 863 0046 43F40053 orr r3, r3, #8192
  4166. 864 004a D360 str r3, [r2, #12]
  4167. 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4168. 865 .loc 1 447 3 view .LVU188
  4169. 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4170. 866 .loc 1 447 20 is_stmt 0 view .LVU189
  4171. 867 004c 0020 movs r0, #0
  4172. 868 004e E063 str r0, [r4, #60]
  4173. 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4174. 869 .loc 1 448 3 is_stmt 1 view .LVU190
  4175. 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4176. 870 .loc 1 448 17 is_stmt 0 view .LVU191
  4177. ARM GAS /tmp/ccGtkZvD.s page 73
  4178. 871 0050 2023 movs r3, #32
  4179. 872 0052 84F83930 strb r3, [r4, #57]
  4180. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4181. 873 .loc 1 449 3 is_stmt 1 view .LVU192
  4182. 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4183. 874 .loc 1 449 18 is_stmt 0 view .LVU193
  4184. 875 0056 84F83A30 strb r3, [r4, #58]
  4185. 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4186. 876 .loc 1 451 3 is_stmt 1 view .LVU194
  4187. 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4188. 877 .loc 1 452 1 is_stmt 0 view .LVU195
  4189. 878 005a 10BD pop {r4, pc}
  4190. 879 .LVL51:
  4191. 880 .L49:
  4192. 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4193. 881 .loc 1 408 5 is_stmt 1 view .LVU196
  4194. 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4195. 882 .loc 1 408 17 is_stmt 0 view .LVU197
  4196. 883 005c 80F83830 strb r3, [r0, #56]
  4197. 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4198. 884 .loc 1 422 5 is_stmt 1 view .LVU198
  4199. 885 0060 FFF7FEFF bl HAL_UART_MspInit
  4200. 886 .LVL52:
  4201. 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4202. 887 .loc 1 422 5 is_stmt 0 view .LVU199
  4203. 888 0064 D3E7 b .L43
  4204. 889 .LVL53:
  4205. 890 .L44:
  4206. 891 .LCFI5:
  4207. 892 .cfi_def_cfa_offset 0
  4208. 893 .cfi_restore 4
  4209. 894 .cfi_restore 14
  4210. 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4211. 895 .loc 1 397 12 view .LVU200
  4212. 896 0066 0120 movs r0, #1
  4213. 897 .LVL54:
  4214. 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4215. 898 .loc 1 452 1 view .LVU201
  4216. 899 0068 7047 bx lr
  4217. 900 .cfi_endproc
  4218. 901 .LFE131:
  4219. 903 .section .text.HAL_LIN_Init,"ax",%progbits
  4220. 904 .align 1
  4221. 905 .global HAL_LIN_Init
  4222. 906 .syntax unified
  4223. 907 .thumb
  4224. 908 .thumb_func
  4225. 910 HAL_LIN_Init:
  4226. 911 .LVL55:
  4227. 912 .LFB132:
  4228. 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4229. 913 .loc 1 466 1 is_stmt 1 view -0
  4230. 914 .cfi_startproc
  4231. 915 @ args = 0, pretend = 0, frame = 0
  4232. 916 @ frame_needed = 0, uses_anonymous_args = 0
  4233. 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4234. 917 .loc 1 468 3 view .LVU203
  4235. ARM GAS /tmp/ccGtkZvD.s page 74
  4236. 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4237. 918 .loc 1 468 6 is_stmt 0 view .LVU204
  4238. 919 0000 0028 cmp r0, #0
  4239. 920 0002 3BD0 beq .L53
  4240. 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4241. 921 .loc 1 466 1 view .LVU205
  4242. 922 0004 38B5 push {r3, r4, r5, lr}
  4243. 923 .LCFI6:
  4244. 924 .cfi_def_cfa_offset 16
  4245. 925 .cfi_offset 3, -16
  4246. 926 .cfi_offset 4, -12
  4247. 927 .cfi_offset 5, -8
  4248. 928 .cfi_offset 14, -4
  4249. 929 0006 0D46 mov r5, r1
  4250. 930 0008 0446 mov r4, r0
  4251. 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4252. 931 .loc 1 474 3 is_stmt 1 view .LVU206
  4253. 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_WORD_LENGTH(huart->Init.WordLength));
  4254. 932 .loc 1 477 3 view .LVU207
  4255. 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_OVERSAMPLING(huart->Init.OverSampling));
  4256. 933 .loc 1 478 3 view .LVU208
  4257. 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4258. 934 .loc 1 479 3 view .LVU209
  4259. 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4260. 935 .loc 1 481 3 view .LVU210
  4261. 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4262. 936 .loc 1 481 12 is_stmt 0 view .LVU211
  4263. 937 000a 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  4264. 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4265. 938 .loc 1 481 6 view .LVU212
  4266. 939 000e 002B cmp r3, #0
  4267. 940 0010 2FD0 beq .L58
  4268. 941 .LVL56:
  4269. 942 .L52:
  4270. 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4271. 943 .loc 1 502 3 is_stmt 1 view .LVU213
  4272. 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4273. 944 .loc 1 502 17 is_stmt 0 view .LVU214
  4274. 945 0012 2423 movs r3, #36
  4275. 946 0014 84F83930 strb r3, [r4, #57]
  4276. 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4277. 947 .loc 1 505 3 is_stmt 1 view .LVU215
  4278. 948 0018 2268 ldr r2, [r4]
  4279. 949 001a D368 ldr r3, [r2, #12]
  4280. 950 001c 23F40053 bic r3, r3, #8192
  4281. 951 0020 D360 str r3, [r2, #12]
  4282. 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4283. 952 .loc 1 508 3 view .LVU216
  4284. 953 0022 2046 mov r0, r4
  4285. 954 0024 FFF7FEFF bl UART_SetConfig
  4286. 955 .LVL57:
  4287. 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_HDSEL | USART_CR3_IREN | USART_CR3_SCEN));
  4288. 956 .loc 1 513 3 view .LVU217
  4289. 957 0028 2268 ldr r2, [r4]
  4290. 958 002a 1369 ldr r3, [r2, #16]
  4291. 959 002c 23F40063 bic r3, r3, #2048
  4292. 960 0030 1361 str r3, [r2, #16]
  4293. ARM GAS /tmp/ccGtkZvD.s page 75
  4294. 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4295. 961 .loc 1 514 3 view .LVU218
  4296. 962 0032 2268 ldr r2, [r4]
  4297. 963 0034 5369 ldr r3, [r2, #20]
  4298. 964 0036 23F02A03 bic r3, r3, #42
  4299. 965 003a 5361 str r3, [r2, #20]
  4300. 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4301. 966 .loc 1 517 3 view .LVU219
  4302. 967 003c 2268 ldr r2, [r4]
  4303. 968 003e 1369 ldr r3, [r2, #16]
  4304. 969 0040 43F48043 orr r3, r3, #16384
  4305. 970 0044 1361 str r3, [r2, #16]
  4306. 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, BreakDetectLength);
  4307. 971 .loc 1 520 3 view .LVU220
  4308. 972 0046 2268 ldr r2, [r4]
  4309. 973 0048 1369 ldr r3, [r2, #16]
  4310. 974 004a 23F02003 bic r3, r3, #32
  4311. 975 004e 1361 str r3, [r2, #16]
  4312. 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4313. 976 .loc 1 521 3 view .LVU221
  4314. 977 0050 2368 ldr r3, [r4]
  4315. 978 0052 1969 ldr r1, [r3, #16]
  4316. 979 0054 0D43 orrs r5, r5, r1
  4317. 980 .LVL58:
  4318. 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4319. 981 .loc 1 521 3 is_stmt 0 view .LVU222
  4320. 982 0056 1D61 str r5, [r3, #16]
  4321. 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4322. 983 .loc 1 524 3 is_stmt 1 view .LVU223
  4323. 984 0058 2268 ldr r2, [r4]
  4324. 985 005a D368 ldr r3, [r2, #12]
  4325. 986 005c 43F40053 orr r3, r3, #8192
  4326. 987 0060 D360 str r3, [r2, #12]
  4327. 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4328. 988 .loc 1 527 3 view .LVU224
  4329. 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4330. 989 .loc 1 527 20 is_stmt 0 view .LVU225
  4331. 990 0062 0020 movs r0, #0
  4332. 991 0064 E063 str r0, [r4, #60]
  4333. 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4334. 992 .loc 1 528 3 is_stmt 1 view .LVU226
  4335. 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4336. 993 .loc 1 528 17 is_stmt 0 view .LVU227
  4337. 994 0066 2023 movs r3, #32
  4338. 995 0068 84F83930 strb r3, [r4, #57]
  4339. 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4340. 996 .loc 1 529 3 is_stmt 1 view .LVU228
  4341. 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4342. 997 .loc 1 529 18 is_stmt 0 view .LVU229
  4343. 998 006c 84F83A30 strb r3, [r4, #58]
  4344. 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4345. 999 .loc 1 531 3 is_stmt 1 view .LVU230
  4346. 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4347. 1000 .loc 1 532 1 is_stmt 0 view .LVU231
  4348. 1001 0070 38BD pop {r3, r4, r5, pc}
  4349. 1002 .LVL59:
  4350. 1003 .L58:
  4351. ARM GAS /tmp/ccGtkZvD.s page 76
  4352. 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4353. 1004 .loc 1 484 5 is_stmt 1 view .LVU232
  4354. 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4355. 1005 .loc 1 484 17 is_stmt 0 view .LVU233
  4356. 1006 0072 80F83830 strb r3, [r0, #56]
  4357. 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4358. 1007 .loc 1 498 5 is_stmt 1 view .LVU234
  4359. 1008 0076 FFF7FEFF bl HAL_UART_MspInit
  4360. 1009 .LVL60:
  4361. 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4362. 1010 .loc 1 498 5 is_stmt 0 view .LVU235
  4363. 1011 007a CAE7 b .L52
  4364. 1012 .LVL61:
  4365. 1013 .L53:
  4366. 1014 .LCFI7:
  4367. 1015 .cfi_def_cfa_offset 0
  4368. 1016 .cfi_restore 3
  4369. 1017 .cfi_restore 4
  4370. 1018 .cfi_restore 5
  4371. 1019 .cfi_restore 14
  4372. 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4373. 1020 .loc 1 470 12 view .LVU236
  4374. 1021 007c 0120 movs r0, #1
  4375. 1022 .LVL62:
  4376. 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4377. 1023 .loc 1 532 1 view .LVU237
  4378. 1024 007e 7047 bx lr
  4379. 1025 .cfi_endproc
  4380. 1026 .LFE132:
  4381. 1028 .section .text.HAL_MultiProcessor_Init,"ax",%progbits
  4382. 1029 .align 1
  4383. 1030 .global HAL_MultiProcessor_Init
  4384. 1031 .syntax unified
  4385. 1032 .thumb
  4386. 1033 .thumb_func
  4387. 1035 HAL_MultiProcessor_Init:
  4388. 1036 .LVL63:
  4389. 1037 .LFB133:
  4390. 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4391. 1038 .loc 1 547 1 is_stmt 1 view -0
  4392. 1039 .cfi_startproc
  4393. 1040 @ args = 0, pretend = 0, frame = 0
  4394. 1041 @ frame_needed = 0, uses_anonymous_args = 0
  4395. 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4396. 1042 .loc 1 549 3 view .LVU239
  4397. 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4398. 1043 .loc 1 549 6 is_stmt 0 view .LVU240
  4399. 1044 0000 0028 cmp r0, #0
  4400. 1045 0002 40D0 beq .L62
  4401. 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4402. 1046 .loc 1 547 1 view .LVU241
  4403. 1047 0004 70B5 push {r4, r5, r6, lr}
  4404. 1048 .LCFI8:
  4405. 1049 .cfi_def_cfa_offset 16
  4406. 1050 .cfi_offset 4, -16
  4407. 1051 .cfi_offset 5, -12
  4408. 1052 .cfi_offset 6, -8
  4409. ARM GAS /tmp/ccGtkZvD.s page 77
  4410. 1053 .cfi_offset 14, -4
  4411. 1054 0006 0D46 mov r5, r1
  4412. 1055 0008 1646 mov r6, r2
  4413. 1056 000a 0446 mov r4, r0
  4414. 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4415. 1057 .loc 1 555 3 is_stmt 1 view .LVU242
  4416. 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_ADDRESS(Address));
  4417. 1058 .loc 1 558 3 view .LVU243
  4418. 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
  4419. 1059 .loc 1 559 3 view .LVU244
  4420. 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
  4421. 1060 .loc 1 560 3 view .LVU245
  4422. 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4423. 1061 .loc 1 561 3 view .LVU246
  4424. 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4425. 1062 .loc 1 563 3 view .LVU247
  4426. 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4427. 1063 .loc 1 563 12 is_stmt 0 view .LVU248
  4428. 1064 000c 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  4429. 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4430. 1065 .loc 1 563 6 view .LVU249
  4431. 1066 0010 002B cmp r3, #0
  4432. 1067 0012 33D0 beq .L67
  4433. 1068 .LVL64:
  4434. 1069 .L61:
  4435. 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4436. 1070 .loc 1 584 3 is_stmt 1 view .LVU250
  4437. 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4438. 1071 .loc 1 584 17 is_stmt 0 view .LVU251
  4439. 1072 0014 2423 movs r3, #36
  4440. 1073 0016 84F83930 strb r3, [r4, #57]
  4441. 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4442. 1074 .loc 1 587 3 is_stmt 1 view .LVU252
  4443. 1075 001a 2268 ldr r2, [r4]
  4444. 1076 001c D368 ldr r3, [r2, #12]
  4445. 1077 001e 23F40053 bic r3, r3, #8192
  4446. 1078 0022 D360 str r3, [r2, #12]
  4447. 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4448. 1079 .loc 1 590 3 view .LVU253
  4449. 1080 0024 2046 mov r0, r4
  4450. 1081 0026 FFF7FEFF bl UART_SetConfig
  4451. 1082 .LVL65:
  4452. 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
  4453. 1083 .loc 1 595 3 view .LVU254
  4454. 1084 002a 2268 ldr r2, [r4]
  4455. 1085 002c 1369 ldr r3, [r2, #16]
  4456. 1086 002e 23F49043 bic r3, r3, #18432
  4457. 1087 0032 1361 str r3, [r2, #16]
  4458. 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4459. 1088 .loc 1 596 3 view .LVU255
  4460. 1089 0034 2268 ldr r2, [r4]
  4461. 1090 0036 5369 ldr r3, [r2, #20]
  4462. 1091 0038 23F02A03 bic r3, r3, #42
  4463. 1092 003c 5361 str r3, [r2, #20]
  4464. 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, Address);
  4465. 1093 .loc 1 599 3 view .LVU256
  4466. 1094 003e 2268 ldr r2, [r4]
  4467. ARM GAS /tmp/ccGtkZvD.s page 78
  4468. 1095 0040 1369 ldr r3, [r2, #16]
  4469. 1096 0042 23F00F03 bic r3, r3, #15
  4470. 1097 0046 1361 str r3, [r2, #16]
  4471. 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4472. 1098 .loc 1 600 3 view .LVU257
  4473. 1099 0048 2368 ldr r3, [r4]
  4474. 1100 004a 1969 ldr r1, [r3, #16]
  4475. 1101 004c 0D43 orrs r5, r5, r1
  4476. 1102 004e 1D61 str r5, [r3, #16]
  4477. 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, WakeUpMethod);
  4478. 1103 .loc 1 603 3 view .LVU258
  4479. 1104 0050 2268 ldr r2, [r4]
  4480. 1105 0052 D368 ldr r3, [r2, #12]
  4481. 1106 0054 23F40063 bic r3, r3, #2048
  4482. 1107 0058 D360 str r3, [r2, #12]
  4483. 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4484. 1108 .loc 1 604 3 view .LVU259
  4485. 1109 005a 2368 ldr r3, [r4]
  4486. 1110 005c DA68 ldr r2, [r3, #12]
  4487. 1111 005e 1643 orrs r6, r6, r2
  4488. 1112 .LVL66:
  4489. 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4490. 1113 .loc 1 604 3 is_stmt 0 view .LVU260
  4491. 1114 0060 DE60 str r6, [r3, #12]
  4492. 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4493. 1115 .loc 1 607 3 is_stmt 1 view .LVU261
  4494. 1116 0062 2268 ldr r2, [r4]
  4495. 1117 0064 D368 ldr r3, [r2, #12]
  4496. 1118 0066 43F40053 orr r3, r3, #8192
  4497. 1119 006a D360 str r3, [r2, #12]
  4498. 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4499. 1120 .loc 1 610 3 view .LVU262
  4500. 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  4501. 1121 .loc 1 610 20 is_stmt 0 view .LVU263
  4502. 1122 006c 0020 movs r0, #0
  4503. 1123 006e E063 str r0, [r4, #60]
  4504. 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4505. 1124 .loc 1 611 3 is_stmt 1 view .LVU264
  4506. 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  4507. 1125 .loc 1 611 17 is_stmt 0 view .LVU265
  4508. 1126 0070 2023 movs r3, #32
  4509. 1127 0072 84F83930 strb r3, [r4, #57]
  4510. 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4511. 1128 .loc 1 612 3 is_stmt 1 view .LVU266
  4512. 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4513. 1129 .loc 1 612 18 is_stmt 0 view .LVU267
  4514. 1130 0076 84F83A30 strb r3, [r4, #58]
  4515. 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4516. 1131 .loc 1 614 3 is_stmt 1 view .LVU268
  4517. 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4518. 1132 .loc 1 615 1 is_stmt 0 view .LVU269
  4519. 1133 007a 70BD pop {r4, r5, r6, pc}
  4520. 1134 .LVL67:
  4521. 1135 .L67:
  4522. 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4523. 1136 .loc 1 566 5 is_stmt 1 view .LVU270
  4524. 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4525. ARM GAS /tmp/ccGtkZvD.s page 79
  4526. 1137 .loc 1 566 17 is_stmt 0 view .LVU271
  4527. 1138 007c 80F83830 strb r3, [r0, #56]
  4528. 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4529. 1139 .loc 1 580 5 is_stmt 1 view .LVU272
  4530. 1140 0080 FFF7FEFF bl HAL_UART_MspInit
  4531. 1141 .LVL68:
  4532. 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4533. 1142 .loc 1 580 5 is_stmt 0 view .LVU273
  4534. 1143 0084 C6E7 b .L61
  4535. 1144 .LVL69:
  4536. 1145 .L62:
  4537. 1146 .LCFI9:
  4538. 1147 .cfi_def_cfa_offset 0
  4539. 1148 .cfi_restore 4
  4540. 1149 .cfi_restore 5
  4541. 1150 .cfi_restore 6
  4542. 1151 .cfi_restore 14
  4543. 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4544. 1152 .loc 1 551 12 view .LVU274
  4545. 1153 0086 0120 movs r0, #1
  4546. 1154 .LVL70:
  4547. 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4548. 1155 .loc 1 615 1 view .LVU275
  4549. 1156 0088 7047 bx lr
  4550. 1157 .cfi_endproc
  4551. 1158 .LFE133:
  4552. 1160 .section .text.HAL_UART_MspDeInit,"ax",%progbits
  4553. 1161 .align 1
  4554. 1162 .weak HAL_UART_MspDeInit
  4555. 1163 .syntax unified
  4556. 1164 .thumb
  4557. 1165 .thumb_func
  4558. 1167 HAL_UART_MspDeInit:
  4559. 1168 .LVL71:
  4560. 1169 .LFB136:
  4561. 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  4562. 1170 .loc 1 683 1 is_stmt 1 view -0
  4563. 1171 .cfi_startproc
  4564. 1172 @ args = 0, pretend = 0, frame = 0
  4565. 1173 @ frame_needed = 0, uses_anonymous_args = 0
  4566. 1174 @ link register save eliminated.
  4567. 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  4568. 1175 .loc 1 685 3 view .LVU277
  4569. 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4570. 1176 .loc 1 689 1 is_stmt 0 view .LVU278
  4571. 1177 0000 7047 bx lr
  4572. 1178 .cfi_endproc
  4573. 1179 .LFE136:
  4574. 1181 .section .text.HAL_UART_DeInit,"ax",%progbits
  4575. 1182 .align 1
  4576. 1183 .global HAL_UART_DeInit
  4577. 1184 .syntax unified
  4578. 1185 .thumb
  4579. 1186 .thumb_func
  4580. 1188 HAL_UART_DeInit:
  4581. 1189 .LVL72:
  4582. 1190 .LFB134:
  4583. ARM GAS /tmp/ccGtkZvD.s page 80
  4584. 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4585. 1191 .loc 1 624 1 is_stmt 1 view -0
  4586. 1192 .cfi_startproc
  4587. 1193 @ args = 0, pretend = 0, frame = 0
  4588. 1194 @ frame_needed = 0, uses_anonymous_args = 0
  4589. 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4590. 1195 .loc 1 626 3 view .LVU280
  4591. 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4592. 1196 .loc 1 626 6 is_stmt 0 view .LVU281
  4593. 1197 0000 A0B1 cbz r0, .L71
  4594. 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
  4595. 1198 .loc 1 624 1 view .LVU282
  4596. 1199 0002 10B5 push {r4, lr}
  4597. 1200 .LCFI10:
  4598. 1201 .cfi_def_cfa_offset 8
  4599. 1202 .cfi_offset 4, -8
  4600. 1203 .cfi_offset 14, -4
  4601. 1204 0004 0446 mov r4, r0
  4602. 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4603. 1205 .loc 1 632 3 is_stmt 1 view .LVU283
  4604. 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4605. 1206 .loc 1 634 3 view .LVU284
  4606. 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4607. 1207 .loc 1 634 17 is_stmt 0 view .LVU285
  4608. 1208 0006 2423 movs r3, #36
  4609. 1209 0008 80F83930 strb r3, [r0, #57]
  4610. 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4611. 1210 .loc 1 637 3 is_stmt 1 view .LVU286
  4612. 1211 000c 0268 ldr r2, [r0]
  4613. 1212 000e D368 ldr r3, [r2, #12]
  4614. 1213 0010 23F40053 bic r3, r3, #8192
  4615. 1214 0014 D360 str r3, [r2, #12]
  4616. 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
  4617. 1215 .loc 1 648 3 view .LVU287
  4618. 1216 0016 FFF7FEFF bl HAL_UART_MspDeInit
  4619. 1217 .LVL73:
  4620. 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_RESET;
  4621. 1218 .loc 1 651 3 view .LVU288
  4622. 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_RESET;
  4623. 1219 .loc 1 651 20 is_stmt 0 view .LVU289
  4624. 1220 001a 0020 movs r0, #0
  4625. 1221 001c E063 str r0, [r4, #60]
  4626. 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_RESET;
  4627. 1222 .loc 1 652 3 is_stmt 1 view .LVU290
  4628. 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_RESET;
  4629. 1223 .loc 1 652 17 is_stmt 0 view .LVU291
  4630. 1224 001e 84F83900 strb r0, [r4, #57]
  4631. 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4632. 1225 .loc 1 653 3 is_stmt 1 view .LVU292
  4633. 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4634. 1226 .loc 1 653 18 is_stmt 0 view .LVU293
  4635. 1227 0022 84F83A00 strb r0, [r4, #58]
  4636. 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4637. 1228 .loc 1 656 3 is_stmt 1 view .LVU294
  4638. 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4639. 1229 .loc 1 656 3 view .LVU295
  4640. 1230 0026 84F83800 strb r0, [r4, #56]
  4641. ARM GAS /tmp/ccGtkZvD.s page 81
  4642. 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4643. 1231 .loc 1 656 3 view .LVU296
  4644. 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4645. 1232 .loc 1 658 3 view .LVU297
  4646. 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4647. 1233 .loc 1 659 1 is_stmt 0 view .LVU298
  4648. 1234 002a 10BD pop {r4, pc}
  4649. 1235 .LVL74:
  4650. 1236 .L71:
  4651. 1237 .LCFI11:
  4652. 1238 .cfi_def_cfa_offset 0
  4653. 1239 .cfi_restore 4
  4654. 1240 .cfi_restore 14
  4655. 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4656. 1241 .loc 1 628 12 view .LVU299
  4657. 1242 002c 0120 movs r0, #1
  4658. 1243 .LVL75:
  4659. 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4660. 1244 .loc 1 659 1 view .LVU300
  4661. 1245 002e 7047 bx lr
  4662. 1246 .cfi_endproc
  4663. 1247 .LFE134:
  4664. 1249 .section .text.HAL_UART_Transmit,"ax",%progbits
  4665. 1250 .align 1
  4666. 1251 .global HAL_UART_Transmit
  4667. 1252 .syntax unified
  4668. 1253 .thumb
  4669. 1254 .thumb_func
  4670. 1256 HAL_UART_Transmit:
  4671. 1257 .LVL76:
  4672. 1258 .LFB137:
  4673. 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  4674. 1259 .loc 1 1020 1 is_stmt 1 view -0
  4675. 1260 .cfi_startproc
  4676. 1261 @ args = 0, pretend = 0, frame = 0
  4677. 1262 @ frame_needed = 0, uses_anonymous_args = 0
  4678. 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  4679. 1263 .loc 1 1020 1 is_stmt 0 view .LVU302
  4680. 1264 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
  4681. 1265 .LCFI12:
  4682. 1266 .cfi_def_cfa_offset 24
  4683. 1267 .cfi_offset 4, -24
  4684. 1268 .cfi_offset 5, -20
  4685. 1269 .cfi_offset 6, -16
  4686. 1270 .cfi_offset 7, -12
  4687. 1271 .cfi_offset 8, -8
  4688. 1272 .cfi_offset 14, -4
  4689. 1273 0004 82B0 sub sp, sp, #8
  4690. 1274 .LCFI13:
  4691. 1275 .cfi_def_cfa_offset 32
  4692. 1276 0006 1E46 mov r6, r3
  4693. 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
  4694. 1277 .loc 1 1021 3 is_stmt 1 view .LVU303
  4695. 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4696. 1278 .loc 1 1022 3 view .LVU304
  4697. 1279 .LVL77:
  4698. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4699. ARM GAS /tmp/ccGtkZvD.s page 82
  4700. 1280 .loc 1 1025 3 view .LVU305
  4701. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4702. 1281 .loc 1 1025 12 is_stmt 0 view .LVU306
  4703. 1282 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  4704. 1283 .LVL78:
  4705. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4706. 1284 .loc 1 1025 12 view .LVU307
  4707. 1285 000c DBB2 uxtb r3, r3
  4708. 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4709. 1286 .loc 1 1025 6 view .LVU308
  4710. 1287 000e 202B cmp r3, #32
  4711. 1288 0010 55D1 bne .L83
  4712. 1289 0012 0446 mov r4, r0
  4713. 1290 0014 0D46 mov r5, r1
  4714. 1291 0016 9046 mov r8, r2
  4715. 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4716. 1292 .loc 1 1027 5 is_stmt 1 view .LVU309
  4717. 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4718. 1293 .loc 1 1027 8 is_stmt 0 view .LVU310
  4719. 1294 0018 0029 cmp r1, #0
  4720. 1295 001a 54D0 beq .L84
  4721. 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4722. 1296 .loc 1 1027 25 discriminator 1 view .LVU311
  4723. 1297 001c 002A cmp r2, #0
  4724. 1298 001e 54D0 beq .L85
  4725. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4726. 1299 .loc 1 1033 5 is_stmt 1 view .LVU312
  4727. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4728. 1300 .loc 1 1033 5 view .LVU313
  4729. 1301 0020 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  4730. 1302 0024 012B cmp r3, #1
  4731. 1303 0026 52D0 beq .L86
  4732. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4733. 1304 .loc 1 1033 5 discriminator 2 view .LVU314
  4734. 1305 0028 0123 movs r3, #1
  4735. 1306 002a 80F83830 strb r3, [r0, #56]
  4736. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4737. 1307 .loc 1 1033 5 discriminator 2 view .LVU315
  4738. 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  4739. 1308 .loc 1 1035 5 discriminator 2 view .LVU316
  4740. 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  4741. 1309 .loc 1 1035 22 is_stmt 0 discriminator 2 view .LVU317
  4742. 1310 002e 0023 movs r3, #0
  4743. 1311 0030 C363 str r3, [r0, #60]
  4744. 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4745. 1312 .loc 1 1036 5 is_stmt 1 discriminator 2 view .LVU318
  4746. 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4747. 1313 .loc 1 1036 19 is_stmt 0 discriminator 2 view .LVU319
  4748. 1314 0032 2123 movs r3, #33
  4749. 1315 0034 80F83930 strb r3, [r0, #57]
  4750. 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4751. 1316 .loc 1 1039 5 is_stmt 1 discriminator 2 view .LVU320
  4752. 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4753. 1317 .loc 1 1039 17 is_stmt 0 discriminator 2 view .LVU321
  4754. 1318 0038 FFF7FEFF bl HAL_GetTick
  4755. 1319 .LVL79:
  4756. 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4757. ARM GAS /tmp/ccGtkZvD.s page 83
  4758. 1320 .loc 1 1039 17 discriminator 2 view .LVU322
  4759. 1321 003c 0746 mov r7, r0
  4760. 1322 .LVL80:
  4761. 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  4762. 1323 .loc 1 1041 5 is_stmt 1 discriminator 2 view .LVU323
  4763. 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  4764. 1324 .loc 1 1041 23 is_stmt 0 discriminator 2 view .LVU324
  4765. 1325 003e A4F82480 strh r8, [r4, #36] @ movhi
  4766. 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->TxXferCount > 0U)
  4767. 1326 .loc 1 1042 5 is_stmt 1 discriminator 2 view .LVU325
  4768. 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->TxXferCount > 0U)
  4769. 1327 .loc 1 1042 24 is_stmt 0 discriminator 2 view .LVU326
  4770. 1328 0042 A4F82680 strh r8, [r4, #38] @ movhi
  4771. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4772. 1329 .loc 1 1043 5 is_stmt 1 discriminator 2 view .LVU327
  4773. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4774. 1330 .loc 1 1043 11 is_stmt 0 discriminator 2 view .LVU328
  4775. 1331 0046 10E0 b .L78
  4776. 1332 .LVL81:
  4777. 1333 .L92:
  4778. 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4779. 1334 .loc 1 1048 9 is_stmt 1 view .LVU329
  4780. 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4781. 1335 .loc 1 1048 13 is_stmt 0 view .LVU330
  4782. 1336 0048 0096 str r6, [sp]
  4783. 1337 004a 3B46 mov r3, r7
  4784. 1338 004c 0022 movs r2, #0
  4785. 1339 004e 8021 movs r1, #128
  4786. 1340 0050 2046 mov r0, r4
  4787. 1341 0052 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
  4788. 1342 .LVL82:
  4789. 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4790. 1343 .loc 1 1048 12 view .LVU331
  4791. 1344 0056 0028 cmp r0, #0
  4792. 1345 0058 3BD1 bne .L87
  4793. 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (*tmp & (uint16_t)0x01FF);
  4794. 1346 .loc 1 1052 9 is_stmt 1 view .LVU332
  4795. 1347 .LVL83:
  4796. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  4797. 1348 .loc 1 1053 9 view .LVU333
  4798. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  4799. 1349 .loc 1 1053 32 is_stmt 0 view .LVU334
  4800. 1350 005a 2B88 ldrh r3, [r5]
  4801. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  4802. 1351 .loc 1 1053 14 view .LVU335
  4803. 1352 005c 2268 ldr r2, [r4]
  4804. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  4805. 1353 .loc 1 1053 37 view .LVU336
  4806. 1354 005e C3F30803 ubfx r3, r3, #0, #9
  4807. 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  4808. 1355 .loc 1 1053 29 view .LVU337
  4809. 1356 0062 5360 str r3, [r2, #4]
  4810. 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4811. 1357 .loc 1 1054 9 is_stmt 1 view .LVU338
  4812. 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4813. 1358 .loc 1 1054 24 is_stmt 0 view .LVU339
  4814. 1359 0064 2369 ldr r3, [r4, #16]
  4815. ARM GAS /tmp/ccGtkZvD.s page 84
  4816. 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4817. 1360 .loc 1 1054 12 view .LVU340
  4818. 1361 0066 CBB9 cbnz r3, .L80
  4819. 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4820. 1362 .loc 1 1056 11 is_stmt 1 view .LVU341
  4821. 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4822. 1363 .loc 1 1056 17 is_stmt 0 view .LVU342
  4823. 1364 0068 0235 adds r5, r5, #2
  4824. 1365 .LVL84:
  4825. 1366 .L78:
  4826. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4827. 1367 .loc 1 1043 11 is_stmt 1 view .LVU343
  4828. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4829. 1368 .loc 1 1043 17 is_stmt 0 view .LVU344
  4830. 1369 006a E38C ldrh r3, [r4, #38]
  4831. 1370 006c 9BB2 uxth r3, r3
  4832. 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4833. 1371 .loc 1 1043 11 view .LVU345
  4834. 1372 006e BBB1 cbz r3, .L91
  4835. 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  4836. 1373 .loc 1 1045 7 is_stmt 1 view .LVU346
  4837. 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  4838. 1374 .loc 1 1045 12 is_stmt 0 view .LVU347
  4839. 1375 0070 E28C ldrh r2, [r4, #38]
  4840. 1376 0072 92B2 uxth r2, r2
  4841. 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  4842. 1377 .loc 1 1045 25 view .LVU348
  4843. 1378 0074 013A subs r2, r2, #1
  4844. 1379 0076 92B2 uxth r2, r2
  4845. 1380 0078 E284 strh r2, [r4, #38] @ movhi
  4846. 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4847. 1381 .loc 1 1046 7 is_stmt 1 view .LVU349
  4848. 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4849. 1382 .loc 1 1046 22 is_stmt 0 view .LVU350
  4850. 1383 007a A368 ldr r3, [r4, #8]
  4851. 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4852. 1384 .loc 1 1046 10 view .LVU351
  4853. 1385 007c B3F5805F cmp r3, #4096
  4854. 1386 0080 E2D0 beq .L92
  4855. 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4856. 1387 .loc 1 1065 9 is_stmt 1 view .LVU352
  4857. 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4858. 1388 .loc 1 1065 13 is_stmt 0 view .LVU353
  4859. 1389 0082 0096 str r6, [sp]
  4860. 1390 0084 3B46 mov r3, r7
  4861. 1391 0086 0022 movs r2, #0
  4862. 1392 0088 8021 movs r1, #128
  4863. 1393 008a 2046 mov r0, r4
  4864. 1394 008c FFF7FEFF bl UART_WaitOnFlagUntilTimeout
  4865. 1395 .LVL85:
  4866. 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4867. 1396 .loc 1 1065 12 view .LVU354
  4868. 1397 0090 08BB cbnz r0, .L88
  4869. 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4870. 1398 .loc 1 1069 9 is_stmt 1 view .LVU355
  4871. 1399 .LVL86:
  4872. 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4873. ARM GAS /tmp/ccGtkZvD.s page 85
  4874. 1400 .loc 1 1069 32 is_stmt 0 view .LVU356
  4875. 1401 0092 15F8012B ldrb r2, [r5], #1 @ zero_extendqisi2
  4876. 1402 .LVL87:
  4877. 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4878. 1403 .loc 1 1069 14 view .LVU357
  4879. 1404 0096 2368 ldr r3, [r4]
  4880. 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4881. 1405 .loc 1 1069 29 view .LVU358
  4882. 1406 0098 5A60 str r2, [r3, #4]
  4883. 1407 009a E6E7 b .L78
  4884. 1408 .LVL88:
  4885. 1409 .L80:
  4886. 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4887. 1410 .loc 1 1060 11 is_stmt 1 view .LVU359
  4888. 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4889. 1411 .loc 1 1060 17 is_stmt 0 view .LVU360
  4890. 1412 009c 0135 adds r5, r5, #1
  4891. 1413 .LVL89:
  4892. 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4893. 1414 .loc 1 1060 17 view .LVU361
  4894. 1415 009e E4E7 b .L78
  4895. 1416 .LVL90:
  4896. 1417 .L91:
  4897. 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4898. 1418 .loc 1 1073 5 is_stmt 1 view .LVU362
  4899. 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4900. 1419 .loc 1 1073 9 is_stmt 0 view .LVU363
  4901. 1420 00a0 0096 str r6, [sp]
  4902. 1421 00a2 3B46 mov r3, r7
  4903. 1422 00a4 0022 movs r2, #0
  4904. 1423 00a6 4021 movs r1, #64
  4905. 1424 00a8 2046 mov r0, r4
  4906. 1425 00aa FFF7FEFF bl UART_WaitOnFlagUntilTimeout
  4907. 1426 .LVL91:
  4908. 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  4909. 1427 .loc 1 1073 8 view .LVU364
  4910. 1428 00ae A0B9 cbnz r0, .L89
  4911. 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4912. 1429 .loc 1 1079 5 is_stmt 1 view .LVU365
  4913. 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4914. 1430 .loc 1 1079 19 is_stmt 0 view .LVU366
  4915. 1431 00b0 2023 movs r3, #32
  4916. 1432 00b2 84F83930 strb r3, [r4, #57]
  4917. 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4918. 1433 .loc 1 1082 5 is_stmt 1 view .LVU367
  4919. 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4920. 1434 .loc 1 1082 5 view .LVU368
  4921. 1435 00b6 0023 movs r3, #0
  4922. 1436 00b8 84F83830 strb r3, [r4, #56]
  4923. 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4924. 1437 .loc 1 1082 5 view .LVU369
  4925. 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4926. 1438 .loc 1 1084 5 view .LVU370
  4927. 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4928. 1439 .loc 1 1084 12 is_stmt 0 view .LVU371
  4929. 1440 00bc 00E0 b .L77
  4930. 1441 .LVL92:
  4931. ARM GAS /tmp/ccGtkZvD.s page 86
  4932. 1442 .L83:
  4933. 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4934. 1443 .loc 1 1088 12 view .LVU372
  4935. 1444 00be 0220 movs r0, #2
  4936. 1445 .LVL93:
  4937. 1446 .L77:
  4938. 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4939. 1447 .loc 1 1090 1 view .LVU373
  4940. 1448 00c0 02B0 add sp, sp, #8
  4941. 1449 .LCFI14:
  4942. 1450 .cfi_remember_state
  4943. 1451 .cfi_def_cfa_offset 24
  4944. 1452 @ sp needed
  4945. 1453 00c2 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
  4946. 1454 .LVL94:
  4947. 1455 .L84:
  4948. 1456 .LCFI15:
  4949. 1457 .cfi_restore_state
  4950. 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4951. 1458 .loc 1 1029 15 view .LVU374
  4952. 1459 00c6 0120 movs r0, #1
  4953. 1460 .LVL95:
  4954. 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4955. 1461 .loc 1 1029 15 view .LVU375
  4956. 1462 00c8 FAE7 b .L77
  4957. 1463 .LVL96:
  4958. 1464 .L85:
  4959. 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4960. 1465 .loc 1 1029 15 view .LVU376
  4961. 1466 00ca 0120 movs r0, #1
  4962. 1467 .LVL97:
  4963. 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4964. 1468 .loc 1 1029 15 view .LVU377
  4965. 1469 00cc F8E7 b .L77
  4966. 1470 .LVL98:
  4967. 1471 .L86:
  4968. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4969. 1472 .loc 1 1033 5 view .LVU378
  4970. 1473 00ce 0220 movs r0, #2
  4971. 1474 .LVL99:
  4972. 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  4973. 1475 .loc 1 1033 5 view .LVU379
  4974. 1476 00d0 F6E7 b .L77
  4975. 1477 .LVL100:
  4976. 1478 .L87:
  4977. 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4978. 1479 .loc 1 1050 18 view .LVU380
  4979. 1480 00d2 0320 movs r0, #3
  4980. 1481 00d4 F4E7 b .L77
  4981. 1482 .L88:
  4982. 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4983. 1483 .loc 1 1067 18 view .LVU381
  4984. 1484 00d6 0320 movs r0, #3
  4985. 1485 00d8 F2E7 b .L77
  4986. 1486 .L89:
  4987. 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  4988. 1487 .loc 1 1075 14 view .LVU382
  4989. ARM GAS /tmp/ccGtkZvD.s page 87
  4990. 1488 00da 0320 movs r0, #3
  4991. 1489 00dc F0E7 b .L77
  4992. 1490 .cfi_endproc
  4993. 1491 .LFE137:
  4994. 1493 .section .text.HAL_UART_Receive,"ax",%progbits
  4995. 1494 .align 1
  4996. 1495 .global HAL_UART_Receive
  4997. 1496 .syntax unified
  4998. 1497 .thumb
  4999. 1498 .thumb_func
  5000. 1500 HAL_UART_Receive:
  5001. 1501 .LVL101:
  5002. 1502 .LFB138:
  5003. 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  5004. 1503 .loc 1 1102 1 is_stmt 1 view -0
  5005. 1504 .cfi_startproc
  5006. 1505 @ args = 0, pretend = 0, frame = 0
  5007. 1506 @ frame_needed = 0, uses_anonymous_args = 0
  5008. 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  5009. 1507 .loc 1 1102 1 is_stmt 0 view .LVU384
  5010. 1508 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
  5011. 1509 .LCFI16:
  5012. 1510 .cfi_def_cfa_offset 24
  5013. 1511 .cfi_offset 4, -24
  5014. 1512 .cfi_offset 5, -20
  5015. 1513 .cfi_offset 6, -16
  5016. 1514 .cfi_offset 7, -12
  5017. 1515 .cfi_offset 8, -8
  5018. 1516 .cfi_offset 14, -4
  5019. 1517 0004 82B0 sub sp, sp, #8
  5020. 1518 .LCFI17:
  5021. 1519 .cfi_def_cfa_offset 32
  5022. 1520 0006 1E46 mov r6, r3
  5023. 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
  5024. 1521 .loc 1 1103 3 is_stmt 1 view .LVU385
  5025. 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5026. 1522 .loc 1 1104 3 view .LVU386
  5027. 1523 .LVL102:
  5028. 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5029. 1524 .loc 1 1107 3 view .LVU387
  5030. 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5031. 1525 .loc 1 1107 12 is_stmt 0 view .LVU388
  5032. 1526 0008 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
  5033. 1527 .LVL103:
  5034. 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5035. 1528 .loc 1 1107 12 view .LVU389
  5036. 1529 000c DBB2 uxtb r3, r3
  5037. 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5038. 1530 .loc 1 1107 6 view .LVU390
  5039. 1531 000e 202B cmp r3, #32
  5040. 1532 0010 5BD1 bne .L101
  5041. 1533 0012 0446 mov r4, r0
  5042. 1534 0014 0D46 mov r5, r1
  5043. 1535 0016 9046 mov r8, r2
  5044. 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5045. 1536 .loc 1 1109 5 is_stmt 1 view .LVU391
  5046. 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5047. ARM GAS /tmp/ccGtkZvD.s page 88
  5048. 1537 .loc 1 1109 8 is_stmt 0 view .LVU392
  5049. 1538 0018 0029 cmp r1, #0
  5050. 1539 001a 5AD0 beq .L102
  5051. 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5052. 1540 .loc 1 1109 25 discriminator 1 view .LVU393
  5053. 1541 001c 002A cmp r2, #0
  5054. 1542 001e 5AD0 beq .L103
  5055. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5056. 1543 .loc 1 1115 5 is_stmt 1 view .LVU394
  5057. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5058. 1544 .loc 1 1115 5 view .LVU395
  5059. 1545 0020 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  5060. 1546 0024 012B cmp r3, #1
  5061. 1547 0026 58D0 beq .L104
  5062. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5063. 1548 .loc 1 1115 5 discriminator 2 view .LVU396
  5064. 1549 0028 0123 movs r3, #1
  5065. 1550 002a 80F83830 strb r3, [r0, #56]
  5066. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5067. 1551 .loc 1 1115 5 discriminator 2 view .LVU397
  5068. 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5069. 1552 .loc 1 1117 5 discriminator 2 view .LVU398
  5070. 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5071. 1553 .loc 1 1117 22 is_stmt 0 discriminator 2 view .LVU399
  5072. 1554 002e 0023 movs r3, #0
  5073. 1555 0030 C363 str r3, [r0, #60]
  5074. 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5075. 1556 .loc 1 1118 5 is_stmt 1 discriminator 2 view .LVU400
  5076. 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5077. 1557 .loc 1 1118 20 is_stmt 0 discriminator 2 view .LVU401
  5078. 1558 0032 2223 movs r3, #34
  5079. 1559 0034 80F83A30 strb r3, [r0, #58]
  5080. 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5081. 1560 .loc 1 1121 5 is_stmt 1 discriminator 2 view .LVU402
  5082. 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5083. 1561 .loc 1 1121 17 is_stmt 0 discriminator 2 view .LVU403
  5084. 1562 0038 FFF7FEFF bl HAL_GetTick
  5085. 1563 .LVL104:
  5086. 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5087. 1564 .loc 1 1121 17 discriminator 2 view .LVU404
  5088. 1565 003c 0746 mov r7, r0
  5089. 1566 .LVL105:
  5090. 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  5091. 1567 .loc 1 1123 5 is_stmt 1 discriminator 2 view .LVU405
  5092. 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  5093. 1568 .loc 1 1123 23 is_stmt 0 discriminator 2 view .LVU406
  5094. 1569 003e A4F82C80 strh r8, [r4, #44] @ movhi
  5095. 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5096. 1570 .loc 1 1124 5 is_stmt 1 discriminator 2 view .LVU407
  5097. 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5098. 1571 .loc 1 1124 24 is_stmt 0 discriminator 2 view .LVU408
  5099. 1572 0042 A4F82E80 strh r8, [r4, #46] @ movhi
  5100. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5101. 1573 .loc 1 1127 5 is_stmt 1 discriminator 2 view .LVU409
  5102. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5103. 1574 .loc 1 1127 11 is_stmt 0 discriminator 2 view .LVU410
  5104. 1575 0046 1DE0 b .L95
  5105. ARM GAS /tmp/ccGtkZvD.s page 89
  5106. 1576 .LVL106:
  5107. 1577 .L109:
  5108. 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5109. 1578 .loc 1 1132 9 is_stmt 1 view .LVU411
  5110. 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5111. 1579 .loc 1 1132 13 is_stmt 0 view .LVU412
  5112. 1580 0048 0096 str r6, [sp]
  5113. 1581 004a 3B46 mov r3, r7
  5114. 1582 004c 0022 movs r2, #0
  5115. 1583 004e 2021 movs r1, #32
  5116. 1584 0050 2046 mov r0, r4
  5117. 1585 0052 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
  5118. 1586 .LVL107:
  5119. 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5120. 1587 .loc 1 1132 12 view .LVU413
  5121. 1588 0056 0028 cmp r0, #0
  5122. 1589 0058 41D1 bne .L105
  5123. 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  5124. 1590 .loc 1 1136 9 is_stmt 1 view .LVU414
  5125. 1591 .LVL108:
  5126. 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5127. 1592 .loc 1 1137 9 view .LVU415
  5128. 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5129. 1593 .loc 1 1137 24 is_stmt 0 view .LVU416
  5130. 1594 005a 2369 ldr r3, [r4, #16]
  5131. 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5132. 1595 .loc 1 1137 12 view .LVU417
  5133. 1596 005c 33B9 cbnz r3, .L97
  5134. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  5135. 1597 .loc 1 1139 11 is_stmt 1 view .LVU418
  5136. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  5137. 1598 .loc 1 1139 34 is_stmt 0 view .LVU419
  5138. 1599 005e 2368 ldr r3, [r4]
  5139. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  5140. 1600 .loc 1 1139 44 view .LVU420
  5141. 1601 0060 5B68 ldr r3, [r3, #4]
  5142. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  5143. 1602 .loc 1 1139 18 view .LVU421
  5144. 1603 0062 C3F30803 ubfx r3, r3, #0, #9
  5145. 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
  5146. 1604 .loc 1 1139 16 view .LVU422
  5147. 1605 0066 25F8023B strh r3, [r5], #2 @ movhi
  5148. 1606 .LVL109:
  5149. 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5150. 1607 .loc 1 1140 11 is_stmt 1 view .LVU423
  5151. 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5152. 1608 .loc 1 1140 11 is_stmt 0 view .LVU424
  5153. 1609 006a 0BE0 b .L95
  5154. 1610 .LVL110:
  5155. 1611 .L97:
  5156. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  5157. 1612 .loc 1 1144 11 is_stmt 1 view .LVU425
  5158. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  5159. 1613 .loc 1 1144 34 is_stmt 0 view .LVU426
  5160. 1614 006c 2368 ldr r3, [r4]
  5161. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  5162. 1615 .loc 1 1144 44 view .LVU427
  5163. ARM GAS /tmp/ccGtkZvD.s page 90
  5164. 1616 006e 5B68 ldr r3, [r3, #4]
  5165. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  5166. 1617 .loc 1 1144 18 view .LVU428
  5167. 1618 0070 DBB2 uxtb r3, r3
  5168. 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
  5169. 1619 .loc 1 1144 16 view .LVU429
  5170. 1620 0072 25F8013B strh r3, [r5], #1 @ movhi
  5171. 1621 .LVL111:
  5172. 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5173. 1622 .loc 1 1145 11 is_stmt 1 view .LVU430
  5174. 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5175. 1623 .loc 1 1145 11 is_stmt 0 view .LVU431
  5176. 1624 0076 05E0 b .L95
  5177. 1625 .LVL112:
  5178. 1626 .L99:
  5179. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5180. 1627 .loc 1 1161 11 is_stmt 1 view .LVU432
  5181. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5182. 1628 .loc 1 1161 37 is_stmt 0 view .LVU433
  5183. 1629 0078 2368 ldr r3, [r4]
  5184. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5185. 1630 .loc 1 1161 47 view .LVU434
  5186. 1631 007a 5B68 ldr r3, [r3, #4]
  5187. 1632 .LVL113:
  5188. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5189. 1633 .loc 1 1161 22 view .LVU435
  5190. 1634 007c 03F07F03 and r3, r3, #127
  5191. 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5192. 1635 .loc 1 1161 20 view .LVU436
  5193. 1636 0080 05F8013B strb r3, [r5], #1
  5194. 1637 .LVL114:
  5195. 1638 .L95:
  5196. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5197. 1639 .loc 1 1127 11 is_stmt 1 view .LVU437
  5198. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5199. 1640 .loc 1 1127 17 is_stmt 0 view .LVU438
  5200. 1641 0084 E38D ldrh r3, [r4, #46]
  5201. 1642 0086 9BB2 uxth r3, r3
  5202. 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5203. 1643 .loc 1 1127 11 view .LVU439
  5204. 1644 0088 C3B1 cbz r3, .L108
  5205. 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  5206. 1645 .loc 1 1129 7 is_stmt 1 view .LVU440
  5207. 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  5208. 1646 .loc 1 1129 12 is_stmt 0 view .LVU441
  5209. 1647 008a E28D ldrh r2, [r4, #46]
  5210. 1648 008c 92B2 uxth r2, r2
  5211. 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
  5212. 1649 .loc 1 1129 25 view .LVU442
  5213. 1650 008e 013A subs r2, r2, #1
  5214. 1651 0090 92B2 uxth r2, r2
  5215. 1652 0092 E285 strh r2, [r4, #46] @ movhi
  5216. 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5217. 1653 .loc 1 1130 7 is_stmt 1 view .LVU443
  5218. 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5219. 1654 .loc 1 1130 22 is_stmt 0 view .LVU444
  5220. 1655 0094 A368 ldr r3, [r4, #8]
  5221. ARM GAS /tmp/ccGtkZvD.s page 91
  5222. 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5223. 1656 .loc 1 1130 10 view .LVU445
  5224. 1657 0096 B3F5805F cmp r3, #4096
  5225. 1658 009a D5D0 beq .L109
  5226. 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5227. 1659 .loc 1 1151 9 is_stmt 1 view .LVU446
  5228. 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5229. 1660 .loc 1 1151 13 is_stmt 0 view .LVU447
  5230. 1661 009c 0096 str r6, [sp]
  5231. 1662 009e 3B46 mov r3, r7
  5232. 1663 00a0 0022 movs r2, #0
  5233. 1664 00a2 2021 movs r1, #32
  5234. 1665 00a4 2046 mov r0, r4
  5235. 1666 00a6 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
  5236. 1667 .LVL115:
  5237. 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5238. 1668 .loc 1 1151 12 view .LVU448
  5239. 1669 00aa D0B9 cbnz r0, .L106
  5240. 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5241. 1670 .loc 1 1155 9 is_stmt 1 view .LVU449
  5242. 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5243. 1671 .loc 1 1155 24 is_stmt 0 view .LVU450
  5244. 1672 00ac 2369 ldr r3, [r4, #16]
  5245. 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5246. 1673 .loc 1 1155 12 view .LVU451
  5247. 1674 00ae 002B cmp r3, #0
  5248. 1675 00b0 E2D1 bne .L99
  5249. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5250. 1676 .loc 1 1157 11 is_stmt 1 view .LVU452
  5251. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5252. 1677 .loc 1 1157 37 is_stmt 0 view .LVU453
  5253. 1678 00b2 2368 ldr r3, [r4]
  5254. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5255. 1679 .loc 1 1157 47 view .LVU454
  5256. 1680 00b4 5B68 ldr r3, [r3, #4]
  5257. 1681 .LVL116:
  5258. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5259. 1682 .loc 1 1157 20 view .LVU455
  5260. 1683 00b6 05F8013B strb r3, [r5], #1
  5261. 1684 .LVL117:
  5262. 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5263. 1685 .loc 1 1157 20 view .LVU456
  5264. 1686 00ba E3E7 b .L95
  5265. 1687 .L108:
  5266. 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5267. 1688 .loc 1 1168 5 is_stmt 1 view .LVU457
  5268. 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5269. 1689 .loc 1 1168 20 is_stmt 0 view .LVU458
  5270. 1690 00bc 2023 movs r3, #32
  5271. 1691 00be 84F83A30 strb r3, [r4, #58]
  5272. 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5273. 1692 .loc 1 1171 5 is_stmt 1 view .LVU459
  5274. 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5275. 1693 .loc 1 1171 5 view .LVU460
  5276. 1694 00c2 0020 movs r0, #0
  5277. 1695 00c4 84F83800 strb r0, [r4, #56]
  5278. 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5279. ARM GAS /tmp/ccGtkZvD.s page 92
  5280. 1696 .loc 1 1171 5 view .LVU461
  5281. 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5282. 1697 .loc 1 1173 5 view .LVU462
  5283. 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5284. 1698 .loc 1 1173 12 is_stmt 0 view .LVU463
  5285. 1699 00c8 00E0 b .L94
  5286. 1700 .LVL118:
  5287. 1701 .L101:
  5288. 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5289. 1702 .loc 1 1177 12 view .LVU464
  5290. 1703 00ca 0220 movs r0, #2
  5291. 1704 .LVL119:
  5292. 1705 .L94:
  5293. 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5294. 1706 .loc 1 1179 1 view .LVU465
  5295. 1707 00cc 02B0 add sp, sp, #8
  5296. 1708 .LCFI18:
  5297. 1709 .cfi_remember_state
  5298. 1710 .cfi_def_cfa_offset 24
  5299. 1711 @ sp needed
  5300. 1712 00ce BDE8F081 pop {r4, r5, r6, r7, r8, pc}
  5301. 1713 .LVL120:
  5302. 1714 .L102:
  5303. 1715 .LCFI19:
  5304. 1716 .cfi_restore_state
  5305. 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5306. 1717 .loc 1 1111 15 view .LVU466
  5307. 1718 00d2 0120 movs r0, #1
  5308. 1719 .LVL121:
  5309. 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5310. 1720 .loc 1 1111 15 view .LVU467
  5311. 1721 00d4 FAE7 b .L94
  5312. 1722 .LVL122:
  5313. 1723 .L103:
  5314. 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5315. 1724 .loc 1 1111 15 view .LVU468
  5316. 1725 00d6 0120 movs r0, #1
  5317. 1726 .LVL123:
  5318. 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5319. 1727 .loc 1 1111 15 view .LVU469
  5320. 1728 00d8 F8E7 b .L94
  5321. 1729 .LVL124:
  5322. 1730 .L104:
  5323. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5324. 1731 .loc 1 1115 5 view .LVU470
  5325. 1732 00da 0220 movs r0, #2
  5326. 1733 .LVL125:
  5327. 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5328. 1734 .loc 1 1115 5 view .LVU471
  5329. 1735 00dc F6E7 b .L94
  5330. 1736 .LVL126:
  5331. 1737 .L105:
  5332. 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5333. 1738 .loc 1 1134 18 view .LVU472
  5334. 1739 00de 0320 movs r0, #3
  5335. 1740 00e0 F4E7 b .L94
  5336. 1741 .L106:
  5337. ARM GAS /tmp/ccGtkZvD.s page 93
  5338. 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5339. 1742 .loc 1 1153 18 view .LVU473
  5340. 1743 00e2 0320 movs r0, #3
  5341. 1744 00e4 F2E7 b .L94
  5342. 1745 .cfi_endproc
  5343. 1746 .LFE138:
  5344. 1748 .section .text.HAL_UART_Transmit_IT,"ax",%progbits
  5345. 1749 .align 1
  5346. 1750 .global HAL_UART_Transmit_IT
  5347. 1751 .syntax unified
  5348. 1752 .thumb
  5349. 1753 .thumb_func
  5350. 1755 HAL_UART_Transmit_IT:
  5351. 1756 .LVL127:
  5352. 1757 .LFB139:
  5353. 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
  5354. 1758 .loc 1 1190 1 is_stmt 1 view -0
  5355. 1759 .cfi_startproc
  5356. 1760 @ args = 0, pretend = 0, frame = 0
  5357. 1761 @ frame_needed = 0, uses_anonymous_args = 0
  5358. 1762 @ link register save eliminated.
  5359. 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5360. 1763 .loc 1 1192 3 view .LVU475
  5361. 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5362. 1764 .loc 1 1192 12 is_stmt 0 view .LVU476
  5363. 1765 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  5364. 1766 0004 DBB2 uxtb r3, r3
  5365. 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5366. 1767 .loc 1 1192 6 view .LVU477
  5367. 1768 0006 202B cmp r3, #32
  5368. 1769 0008 19D1 bne .L112
  5369. 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5370. 1770 .loc 1 1194 5 is_stmt 1 view .LVU478
  5371. 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5372. 1771 .loc 1 1194 8 is_stmt 0 view .LVU479
  5373. 1772 000a D1B1 cbz r1, .L113
  5374. 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5375. 1773 .loc 1 1194 25 discriminator 1 view .LVU480
  5376. 1774 000c DAB1 cbz r2, .L114
  5377. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5378. 1775 .loc 1 1200 5 is_stmt 1 view .LVU481
  5379. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5380. 1776 .loc 1 1200 5 view .LVU482
  5381. 1777 000e 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  5382. 1778 0012 012B cmp r3, #1
  5383. 1779 0014 19D0 beq .L115
  5384. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5385. 1780 .loc 1 1200 5 discriminator 2 view .LVU483
  5386. 1781 0016 0123 movs r3, #1
  5387. 1782 0018 80F83830 strb r3, [r0, #56]
  5388. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5389. 1783 .loc 1 1200 5 discriminator 2 view .LVU484
  5390. 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  5391. 1784 .loc 1 1202 5 discriminator 2 view .LVU485
  5392. 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  5393. 1785 .loc 1 1202 23 is_stmt 0 discriminator 2 view .LVU486
  5394. 1786 001c 0162 str r1, [r0, #32]
  5395. ARM GAS /tmp/ccGtkZvD.s page 94
  5396. 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  5397. 1787 .loc 1 1203 5 is_stmt 1 discriminator 2 view .LVU487
  5398. 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  5399. 1788 .loc 1 1203 23 is_stmt 0 discriminator 2 view .LVU488
  5400. 1789 001e 8284 strh r2, [r0, #36] @ movhi
  5401. 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5402. 1790 .loc 1 1204 5 is_stmt 1 discriminator 2 view .LVU489
  5403. 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5404. 1791 .loc 1 1204 24 is_stmt 0 discriminator 2 view .LVU490
  5405. 1792 0020 C284 strh r2, [r0, #38] @ movhi
  5406. 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  5407. 1793 .loc 1 1206 5 is_stmt 1 discriminator 2 view .LVU491
  5408. 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  5409. 1794 .loc 1 1206 22 is_stmt 0 discriminator 2 view .LVU492
  5410. 1795 0022 0023 movs r3, #0
  5411. 1796 0024 C363 str r3, [r0, #60]
  5412. 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5413. 1797 .loc 1 1207 5 is_stmt 1 discriminator 2 view .LVU493
  5414. 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5415. 1798 .loc 1 1207 19 is_stmt 0 discriminator 2 view .LVU494
  5416. 1799 0026 2122 movs r2, #33
  5417. 1800 .LVL128:
  5418. 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5419. 1801 .loc 1 1207 19 discriminator 2 view .LVU495
  5420. 1802 0028 80F83920 strb r2, [r0, #57]
  5421. 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5422. 1803 .loc 1 1210 5 is_stmt 1 discriminator 2 view .LVU496
  5423. 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5424. 1804 .loc 1 1210 5 discriminator 2 view .LVU497
  5425. 1805 002c 80F83830 strb r3, [r0, #56]
  5426. 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5427. 1806 .loc 1 1210 5 discriminator 2 view .LVU498
  5428. 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5429. 1807 .loc 1 1213 5 discriminator 2 view .LVU499
  5430. 1808 0030 0168 ldr r1, [r0]
  5431. 1809 .LVL129:
  5432. 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5433. 1810 .loc 1 1213 5 is_stmt 0 discriminator 2 view .LVU500
  5434. 1811 0032 CA68 ldr r2, [r1, #12]
  5435. 1812 0034 42F08002 orr r2, r2, #128
  5436. 1813 0038 CA60 str r2, [r1, #12]
  5437. 1814 .LVL130:
  5438. 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5439. 1815 .loc 1 1215 5 is_stmt 1 discriminator 2 view .LVU501
  5440. 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5441. 1816 .loc 1 1215 12 is_stmt 0 discriminator 2 view .LVU502
  5442. 1817 003a 1846 mov r0, r3
  5443. 1818 .LVL131:
  5444. 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5445. 1819 .loc 1 1215 12 discriminator 2 view .LVU503
  5446. 1820 003c 7047 bx lr
  5447. 1821 .LVL132:
  5448. 1822 .L112:
  5449. 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5450. 1823 .loc 1 1219 12 view .LVU504
  5451. 1824 003e 0220 movs r0, #2
  5452. 1825 .LVL133:
  5453. ARM GAS /tmp/ccGtkZvD.s page 95
  5454. 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5455. 1826 .loc 1 1219 12 view .LVU505
  5456. 1827 0040 7047 bx lr
  5457. 1828 .LVL134:
  5458. 1829 .L113:
  5459. 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5460. 1830 .loc 1 1196 14 view .LVU506
  5461. 1831 0042 0120 movs r0, #1
  5462. 1832 .LVL135:
  5463. 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5464. 1833 .loc 1 1196 14 view .LVU507
  5465. 1834 0044 7047 bx lr
  5466. 1835 .LVL136:
  5467. 1836 .L114:
  5468. 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5469. 1837 .loc 1 1196 14 view .LVU508
  5470. 1838 0046 0120 movs r0, #1
  5471. 1839 .LVL137:
  5472. 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5473. 1840 .loc 1 1196 14 view .LVU509
  5474. 1841 0048 7047 bx lr
  5475. 1842 .LVL138:
  5476. 1843 .L115:
  5477. 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5478. 1844 .loc 1 1200 5 view .LVU510
  5479. 1845 004a 0220 movs r0, #2
  5480. 1846 .LVL139:
  5481. 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5482. 1847 .loc 1 1221 1 view .LVU511
  5483. 1848 004c 7047 bx lr
  5484. 1849 .cfi_endproc
  5485. 1850 .LFE139:
  5486. 1852 .section .text.HAL_UART_Receive_IT,"ax",%progbits
  5487. 1853 .align 1
  5488. 1854 .global HAL_UART_Receive_IT
  5489. 1855 .syntax unified
  5490. 1856 .thumb
  5491. 1857 .thumb_func
  5492. 1859 HAL_UART_Receive_IT:
  5493. 1860 .LVL140:
  5494. 1861 .LFB140:
  5495. 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
  5496. 1862 .loc 1 1232 1 is_stmt 1 view -0
  5497. 1863 .cfi_startproc
  5498. 1864 @ args = 0, pretend = 0, frame = 0
  5499. 1865 @ frame_needed = 0, uses_anonymous_args = 0
  5500. 1866 @ link register save eliminated.
  5501. 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5502. 1867 .loc 1 1234 3 view .LVU513
  5503. 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5504. 1868 .loc 1 1234 12 is_stmt 0 view .LVU514
  5505. 1869 0000 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
  5506. 1870 0004 DBB2 uxtb r3, r3
  5507. 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5508. 1871 .loc 1 1234 6 view .LVU515
  5509. 1872 0006 202B cmp r3, #32
  5510. 1873 0008 23D1 bne .L118
  5511. ARM GAS /tmp/ccGtkZvD.s page 96
  5512. 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5513. 1874 .loc 1 1236 5 is_stmt 1 view .LVU516
  5514. 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5515. 1875 .loc 1 1236 8 is_stmt 0 view .LVU517
  5516. 1876 000a 21B3 cbz r1, .L119
  5517. 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5518. 1877 .loc 1 1236 25 discriminator 1 view .LVU518
  5519. 1878 000c 2AB3 cbz r2, .L120
  5520. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5521. 1879 .loc 1 1242 5 is_stmt 1 view .LVU519
  5522. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5523. 1880 .loc 1 1242 5 view .LVU520
  5524. 1881 000e 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  5525. 1882 0012 012B cmp r3, #1
  5526. 1883 0014 23D0 beq .L121
  5527. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5528. 1884 .loc 1 1242 5 discriminator 2 view .LVU521
  5529. 1885 0016 0123 movs r3, #1
  5530. 1886 0018 80F83830 strb r3, [r0, #56]
  5531. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5532. 1887 .loc 1 1242 5 discriminator 2 view .LVU522
  5533. 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  5534. 1888 .loc 1 1244 5 discriminator 2 view .LVU523
  5535. 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  5536. 1889 .loc 1 1244 23 is_stmt 0 discriminator 2 view .LVU524
  5537. 1890 001c 8162 str r1, [r0, #40]
  5538. 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  5539. 1891 .loc 1 1245 5 is_stmt 1 discriminator 2 view .LVU525
  5540. 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
  5541. 1892 .loc 1 1245 23 is_stmt 0 discriminator 2 view .LVU526
  5542. 1893 001e 8285 strh r2, [r0, #44] @ movhi
  5543. 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5544. 1894 .loc 1 1246 5 is_stmt 1 discriminator 2 view .LVU527
  5545. 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5546. 1895 .loc 1 1246 24 is_stmt 0 discriminator 2 view .LVU528
  5547. 1896 0020 C285 strh r2, [r0, #46] @ movhi
  5548. 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5549. 1897 .loc 1 1248 5 is_stmt 1 discriminator 2 view .LVU529
  5550. 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5551. 1898 .loc 1 1248 22 is_stmt 0 discriminator 2 view .LVU530
  5552. 1899 0022 0023 movs r3, #0
  5553. 1900 0024 C363 str r3, [r0, #60]
  5554. 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5555. 1901 .loc 1 1249 5 is_stmt 1 discriminator 2 view .LVU531
  5556. 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5557. 1902 .loc 1 1249 20 is_stmt 0 discriminator 2 view .LVU532
  5558. 1903 0026 2222 movs r2, #34
  5559. 1904 .LVL141:
  5560. 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5561. 1905 .loc 1 1249 20 discriminator 2 view .LVU533
  5562. 1906 0028 80F83A20 strb r2, [r0, #58]
  5563. 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5564. 1907 .loc 1 1252 5 is_stmt 1 discriminator 2 view .LVU534
  5565. 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5566. 1908 .loc 1 1252 5 discriminator 2 view .LVU535
  5567. 1909 002c 80F83830 strb r3, [r0, #56]
  5568. 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5569. ARM GAS /tmp/ccGtkZvD.s page 97
  5570. 1910 .loc 1 1252 5 discriminator 2 view .LVU536
  5571. 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5572. 1911 .loc 1 1255 5 discriminator 2 view .LVU537
  5573. 1912 0030 0168 ldr r1, [r0]
  5574. 1913 .LVL142:
  5575. 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5576. 1914 .loc 1 1255 5 is_stmt 0 discriminator 2 view .LVU538
  5577. 1915 0032 CA68 ldr r2, [r1, #12]
  5578. 1916 0034 42F48072 orr r2, r2, #256
  5579. 1917 0038 CA60 str r2, [r1, #12]
  5580. 1918 .LVL143:
  5581. 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5582. 1919 .loc 1 1258 5 is_stmt 1 discriminator 2 view .LVU539
  5583. 1920 003a 0168 ldr r1, [r0]
  5584. 1921 003c 4A69 ldr r2, [r1, #20]
  5585. 1922 003e 42F00102 orr r2, r2, #1
  5586. 1923 0042 4A61 str r2, [r1, #20]
  5587. 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5588. 1924 .loc 1 1261 5 discriminator 2 view .LVU540
  5589. 1925 0044 0168 ldr r1, [r0]
  5590. 1926 0046 CA68 ldr r2, [r1, #12]
  5591. 1927 0048 42F02002 orr r2, r2, #32
  5592. 1928 004c CA60 str r2, [r1, #12]
  5593. 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5594. 1929 .loc 1 1263 5 discriminator 2 view .LVU541
  5595. 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5596. 1930 .loc 1 1263 12 is_stmt 0 discriminator 2 view .LVU542
  5597. 1931 004e 1846 mov r0, r3
  5598. 1932 .LVL144:
  5599. 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5600. 1933 .loc 1 1263 12 discriminator 2 view .LVU543
  5601. 1934 0050 7047 bx lr
  5602. 1935 .LVL145:
  5603. 1936 .L118:
  5604. 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5605. 1937 .loc 1 1267 12 view .LVU544
  5606. 1938 0052 0220 movs r0, #2
  5607. 1939 .LVL146:
  5608. 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5609. 1940 .loc 1 1267 12 view .LVU545
  5610. 1941 0054 7047 bx lr
  5611. 1942 .LVL147:
  5612. 1943 .L119:
  5613. 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5614. 1944 .loc 1 1238 14 view .LVU546
  5615. 1945 0056 0120 movs r0, #1
  5616. 1946 .LVL148:
  5617. 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5618. 1947 .loc 1 1238 14 view .LVU547
  5619. 1948 0058 7047 bx lr
  5620. 1949 .LVL149:
  5621. 1950 .L120:
  5622. 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5623. 1951 .loc 1 1238 14 view .LVU548
  5624. 1952 005a 0120 movs r0, #1
  5625. 1953 .LVL150:
  5626. 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5627. ARM GAS /tmp/ccGtkZvD.s page 98
  5628. 1954 .loc 1 1238 14 view .LVU549
  5629. 1955 005c 7047 bx lr
  5630. 1956 .LVL151:
  5631. 1957 .L121:
  5632. 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5633. 1958 .loc 1 1242 5 view .LVU550
  5634. 1959 005e 0220 movs r0, #2
  5635. 1960 .LVL152:
  5636. 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5637. 1961 .loc 1 1269 1 view .LVU551
  5638. 1962 0060 7047 bx lr
  5639. 1963 .cfi_endproc
  5640. 1964 .LFE140:
  5641. 1966 .section .text.HAL_UART_Transmit_DMA,"ax",%progbits
  5642. 1967 .align 1
  5643. 1968 .global HAL_UART_Transmit_DMA
  5644. 1969 .syntax unified
  5645. 1970 .thumb
  5646. 1971 .thumb_func
  5647. 1973 HAL_UART_Transmit_DMA:
  5648. 1974 .LVL153:
  5649. 1975 .LFB141:
  5650. 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  5651. 1976 .loc 1 1280 1 is_stmt 1 view -0
  5652. 1977 .cfi_startproc
  5653. 1978 @ args = 0, pretend = 0, frame = 0
  5654. 1979 @ frame_needed = 0, uses_anonymous_args = 0
  5655. 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  5656. 1980 .loc 1 1280 1 is_stmt 0 view .LVU553
  5657. 1981 0000 38B5 push {r3, r4, r5, lr}
  5658. 1982 .LCFI20:
  5659. 1983 .cfi_def_cfa_offset 16
  5660. 1984 .cfi_offset 3, -16
  5661. 1985 .cfi_offset 4, -12
  5662. 1986 .cfi_offset 5, -8
  5663. 1987 .cfi_offset 14, -4
  5664. 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5665. 1988 .loc 1 1281 3 is_stmt 1 view .LVU554
  5666. 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5667. 1989 .loc 1 1284 3 view .LVU555
  5668. 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5669. 1990 .loc 1 1284 12 is_stmt 0 view .LVU556
  5670. 1991 0002 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  5671. 1992 0006 DBB2 uxtb r3, r3
  5672. 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5673. 1993 .loc 1 1284 6 view .LVU557
  5674. 1994 0008 202B cmp r3, #32
  5675. 1995 000a 31D1 bne .L124
  5676. 1996 000c 0446 mov r4, r0
  5677. 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5678. 1997 .loc 1 1286 5 is_stmt 1 view .LVU558
  5679. 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5680. 1998 .loc 1 1286 8 is_stmt 0 view .LVU559
  5681. 1999 000e 0029 cmp r1, #0
  5682. 2000 0010 30D0 beq .L125
  5683. 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5684. 2001 .loc 1 1286 25 discriminator 1 view .LVU560
  5685. ARM GAS /tmp/ccGtkZvD.s page 99
  5686. 2002 0012 002A cmp r2, #0
  5687. 2003 0014 30D0 beq .L126
  5688. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5689. 2004 .loc 1 1292 5 is_stmt 1 view .LVU561
  5690. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5691. 2005 .loc 1 1292 5 view .LVU562
  5692. 2006 0016 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  5693. 2007 001a 012B cmp r3, #1
  5694. 2008 001c 2ED0 beq .L127
  5695. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5696. 2009 .loc 1 1292 5 discriminator 2 view .LVU563
  5697. 2010 001e 0123 movs r3, #1
  5698. 2011 0020 80F83830 strb r3, [r0, #56]
  5699. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5700. 2012 .loc 1 1292 5 discriminator 2 view .LVU564
  5701. 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  5702. 2013 .loc 1 1294 5 discriminator 2 view .LVU565
  5703. 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
  5704. 2014 .loc 1 1294 23 is_stmt 0 discriminator 2 view .LVU566
  5705. 2015 0024 0162 str r1, [r0, #32]
  5706. 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  5707. 2016 .loc 1 1295 5 is_stmt 1 discriminator 2 view .LVU567
  5708. 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
  5709. 2017 .loc 1 1295 23 is_stmt 0 discriminator 2 view .LVU568
  5710. 2018 0026 8284 strh r2, [r0, #36] @ movhi
  5711. 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5712. 2019 .loc 1 1296 5 is_stmt 1 discriminator 2 view .LVU569
  5713. 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5714. 2020 .loc 1 1296 24 is_stmt 0 discriminator 2 view .LVU570
  5715. 2021 0028 C284 strh r2, [r0, #38] @ movhi
  5716. 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  5717. 2022 .loc 1 1298 5 is_stmt 1 discriminator 2 view .LVU571
  5718. 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
  5719. 2023 .loc 1 1298 22 is_stmt 0 discriminator 2 view .LVU572
  5720. 2024 002a 0025 movs r5, #0
  5721. 2025 002c C563 str r5, [r0, #60]
  5722. 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5723. 2026 .loc 1 1299 5 is_stmt 1 discriminator 2 view .LVU573
  5724. 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5725. 2027 .loc 1 1299 19 is_stmt 0 discriminator 2 view .LVU574
  5726. 2028 002e 2123 movs r3, #33
  5727. 2029 0030 80F83930 strb r3, [r0, #57]
  5728. 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5729. 2030 .loc 1 1302 5 is_stmt 1 discriminator 2 view .LVU575
  5730. 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5731. 2031 .loc 1 1302 10 is_stmt 0 discriminator 2 view .LVU576
  5732. 2032 0034 036B ldr r3, [r0, #48]
  5733. 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5734. 2033 .loc 1 1302 37 discriminator 2 view .LVU577
  5735. 2034 0036 1248 ldr r0, .L129
  5736. 2035 .LVL154:
  5737. 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5738. 2036 .loc 1 1302 37 discriminator 2 view .LVU578
  5739. 2037 0038 D863 str r0, [r3, #60]
  5740. 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5741. 2038 .loc 1 1305 5 is_stmt 1 discriminator 2 view .LVU579
  5742. 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5743. ARM GAS /tmp/ccGtkZvD.s page 100
  5744. 2039 .loc 1 1305 10 is_stmt 0 discriminator 2 view .LVU580
  5745. 2040 003a 236B ldr r3, [r4, #48]
  5746. 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5747. 2041 .loc 1 1305 41 discriminator 2 view .LVU581
  5748. 2042 003c 1148 ldr r0, .L129+4
  5749. 2043 003e 1864 str r0, [r3, #64]
  5750. 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5751. 2044 .loc 1 1308 5 is_stmt 1 discriminator 2 view .LVU582
  5752. 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5753. 2045 .loc 1 1308 10 is_stmt 0 discriminator 2 view .LVU583
  5754. 2046 0040 236B ldr r3, [r4, #48]
  5755. 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5756. 2047 .loc 1 1308 38 discriminator 2 view .LVU584
  5757. 2048 0042 1148 ldr r0, .L129+8
  5758. 2049 0044 D864 str r0, [r3, #76]
  5759. 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5760. 2050 .loc 1 1311 5 is_stmt 1 discriminator 2 view .LVU585
  5761. 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5762. 2051 .loc 1 1311 10 is_stmt 0 discriminator 2 view .LVU586
  5763. 2052 0046 236B ldr r3, [r4, #48]
  5764. 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5765. 2053 .loc 1 1311 38 discriminator 2 view .LVU587
  5766. 2054 0048 1D65 str r5, [r3, #80]
  5767. 1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Start_IT(huart->hdmatx, *(uint32_t *)tmp, (uint32_t)&huart->Instance->DR, Size);
  5768. 2055 .loc 1 1314 5 is_stmt 1 discriminator 2 view .LVU588
  5769. 2056 .LVL155:
  5770. 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5771. 2057 .loc 1 1315 5 discriminator 2 view .LVU589
  5772. 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5773. 2058 .loc 1 1315 71 is_stmt 0 discriminator 2 view .LVU590
  5774. 2059 004a 2068 ldr r0, [r4]
  5775. 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5776. 2060 .loc 1 1315 5 discriminator 2 view .LVU591
  5777. 2061 004c 1346 mov r3, r2
  5778. 2062 004e 021D adds r2, r0, #4
  5779. 2063 .LVL156:
  5780. 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5781. 2064 .loc 1 1315 5 discriminator 2 view .LVU592
  5782. 2065 0050 206B ldr r0, [r4, #48]
  5783. 2066 0052 FFF7FEFF bl HAL_DMA_Start_IT
  5784. 2067 .LVL157:
  5785. 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5786. 2068 .loc 1 1318 5 is_stmt 1 discriminator 2 view .LVU593
  5787. 2069 0056 2368 ldr r3, [r4]
  5788. 2070 0058 6FF04002 mvn r2, #64
  5789. 2071 005c 1A60 str r2, [r3]
  5790. 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5791. 2072 .loc 1 1321 5 discriminator 2 view .LVU594
  5792. 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5793. 2073 .loc 1 1321 5 discriminator 2 view .LVU595
  5794. 2074 005e 84F83850 strb r5, [r4, #56]
  5795. 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5796. 2075 .loc 1 1321 5 discriminator 2 view .LVU596
  5797. 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5798. 2076 .loc 1 1325 5 discriminator 2 view .LVU597
  5799. 2077 0062 2268 ldr r2, [r4]
  5800. 2078 0064 5369 ldr r3, [r2, #20]
  5801. ARM GAS /tmp/ccGtkZvD.s page 101
  5802. 2079 0066 43F08003 orr r3, r3, #128
  5803. 2080 006a 5361 str r3, [r2, #20]
  5804. 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5805. 2081 .loc 1 1327 5 discriminator 2 view .LVU598
  5806. 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5807. 2082 .loc 1 1327 12 is_stmt 0 discriminator 2 view .LVU599
  5808. 2083 006c 2846 mov r0, r5
  5809. 2084 006e 00E0 b .L123
  5810. 2085 .LVL158:
  5811. 2086 .L124:
  5812. 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5813. 2087 .loc 1 1331 12 view .LVU600
  5814. 2088 0070 0220 movs r0, #2
  5815. 2089 .LVL159:
  5816. 2090 .L123:
  5817. 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5818. 2091 .loc 1 1333 1 view .LVU601
  5819. 2092 0072 38BD pop {r3, r4, r5, pc}
  5820. 2093 .LVL160:
  5821. 2094 .L125:
  5822. 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5823. 2095 .loc 1 1288 14 view .LVU602
  5824. 2096 0074 0120 movs r0, #1
  5825. 2097 .LVL161:
  5826. 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5827. 2098 .loc 1 1288 14 view .LVU603
  5828. 2099 0076 FCE7 b .L123
  5829. 2100 .LVL162:
  5830. 2101 .L126:
  5831. 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5832. 2102 .loc 1 1288 14 view .LVU604
  5833. 2103 0078 0120 movs r0, #1
  5834. 2104 .LVL163:
  5835. 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  5836. 2105 .loc 1 1288 14 view .LVU605
  5837. 2106 007a FAE7 b .L123
  5838. 2107 .LVL164:
  5839. 2108 .L127:
  5840. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5841. 2109 .loc 1 1292 5 view .LVU606
  5842. 2110 007c 0220 movs r0, #2
  5843. 2111 .LVL165:
  5844. 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5845. 2112 .loc 1 1292 5 view .LVU607
  5846. 2113 007e F8E7 b .L123
  5847. 2114 .L130:
  5848. 2115 .align 2
  5849. 2116 .L129:
  5850. 2117 0080 00000000 .word UART_DMATransmitCplt
  5851. 2118 0084 00000000 .word UART_DMATxHalfCplt
  5852. 2119 0088 00000000 .word UART_DMAError
  5853. 2120 .cfi_endproc
  5854. 2121 .LFE141:
  5855. 2123 .section .text.HAL_UART_Receive_DMA,"ax",%progbits
  5856. 2124 .align 1
  5857. 2125 .global HAL_UART_Receive_DMA
  5858. 2126 .syntax unified
  5859. ARM GAS /tmp/ccGtkZvD.s page 102
  5860. 2127 .thumb
  5861. 2128 .thumb_func
  5862. 2130 HAL_UART_Receive_DMA:
  5863. 2131 .LVL166:
  5864. 2132 .LFB142:
  5865. 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  5866. 2133 .loc 1 1345 1 is_stmt 1 view -0
  5867. 2134 .cfi_startproc
  5868. 2135 @ args = 0, pretend = 0, frame = 8
  5869. 2136 @ frame_needed = 0, uses_anonymous_args = 0
  5870. 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
  5871. 2137 .loc 1 1345 1 is_stmt 0 view .LVU609
  5872. 2138 0000 30B5 push {r4, r5, lr}
  5873. 2139 .LCFI21:
  5874. 2140 .cfi_def_cfa_offset 12
  5875. 2141 .cfi_offset 4, -12
  5876. 2142 .cfi_offset 5, -8
  5877. 2143 .cfi_offset 14, -4
  5878. 2144 0002 83B0 sub sp, sp, #12
  5879. 2145 .LCFI22:
  5880. 2146 .cfi_def_cfa_offset 24
  5881. 2147 0004 0446 mov r4, r0
  5882. 1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5883. 2148 .loc 1 1346 3 is_stmt 1 view .LVU610
  5884. 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5885. 2149 .loc 1 1349 3 view .LVU611
  5886. 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5887. 2150 .loc 1 1349 12 is_stmt 0 view .LVU612
  5888. 2151 0006 90F83A00 ldrb r0, [r0, #58] @ zero_extendqisi2
  5889. 2152 .LVL167:
  5890. 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5891. 2153 .loc 1 1349 12 view .LVU613
  5892. 2154 000a C0B2 uxtb r0, r0
  5893. 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5894. 2155 .loc 1 1349 6 view .LVU614
  5895. 2156 000c 2028 cmp r0, #32
  5896. 2157 000e 3CD1 bne .L133
  5897. 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5898. 2158 .loc 1 1351 5 is_stmt 1 view .LVU615
  5899. 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5900. 2159 .loc 1 1351 8 is_stmt 0 view .LVU616
  5901. 2160 0010 0029 cmp r1, #0
  5902. 2161 0012 3DD0 beq .L134
  5903. 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  5904. 2162 .loc 1 1351 25 discriminator 1 view .LVU617
  5905. 2163 0014 002A cmp r2, #0
  5906. 2164 0016 3DD0 beq .L135
  5907. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5908. 2165 .loc 1 1357 5 is_stmt 1 view .LVU618
  5909. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5910. 2166 .loc 1 1357 5 view .LVU619
  5911. 2167 0018 94F83830 ldrb r3, [r4, #56] @ zero_extendqisi2
  5912. 2168 001c 012B cmp r3, #1
  5913. 2169 001e 3BD0 beq .L136
  5914. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5915. 2170 .loc 1 1357 5 discriminator 2 view .LVU620
  5916. 2171 0020 0123 movs r3, #1
  5917. ARM GAS /tmp/ccGtkZvD.s page 103
  5918. 2172 0022 84F83830 strb r3, [r4, #56]
  5919. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5920. 2173 .loc 1 1357 5 discriminator 2 view .LVU621
  5921. 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  5922. 2174 .loc 1 1359 5 discriminator 2 view .LVU622
  5923. 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
  5924. 2175 .loc 1 1359 23 is_stmt 0 discriminator 2 view .LVU623
  5925. 2176 0026 A162 str r1, [r4, #40]
  5926. 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5927. 2177 .loc 1 1360 5 is_stmt 1 discriminator 2 view .LVU624
  5928. 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5929. 2178 .loc 1 1360 23 is_stmt 0 discriminator 2 view .LVU625
  5930. 2179 0028 A285 strh r2, [r4, #44] @ movhi
  5931. 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5932. 2180 .loc 1 1362 5 is_stmt 1 discriminator 2 view .LVU626
  5933. 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
  5934. 2181 .loc 1 1362 22 is_stmt 0 discriminator 2 view .LVU627
  5935. 2182 002a 0025 movs r5, #0
  5936. 2183 002c E563 str r5, [r4, #60]
  5937. 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5938. 2184 .loc 1 1363 5 is_stmt 1 discriminator 2 view .LVU628
  5939. 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5940. 2185 .loc 1 1363 20 is_stmt 0 discriminator 2 view .LVU629
  5941. 2186 002e 2223 movs r3, #34
  5942. 2187 0030 84F83A30 strb r3, [r4, #58]
  5943. 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5944. 2188 .loc 1 1366 5 is_stmt 1 discriminator 2 view .LVU630
  5945. 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5946. 2189 .loc 1 1366 10 is_stmt 0 discriminator 2 view .LVU631
  5947. 2190 0034 636B ldr r3, [r4, #52]
  5948. 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5949. 2191 .loc 1 1366 37 discriminator 2 view .LVU632
  5950. 2192 0036 1948 ldr r0, .L138
  5951. 2193 0038 D863 str r0, [r3, #60]
  5952. 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5953. 2194 .loc 1 1369 5 is_stmt 1 discriminator 2 view .LVU633
  5954. 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5955. 2195 .loc 1 1369 10 is_stmt 0 discriminator 2 view .LVU634
  5956. 2196 003a 636B ldr r3, [r4, #52]
  5957. 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5958. 2197 .loc 1 1369 41 discriminator 2 view .LVU635
  5959. 2198 003c 1848 ldr r0, .L138+4
  5960. 2199 003e 1864 str r0, [r3, #64]
  5961. 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5962. 2200 .loc 1 1372 5 is_stmt 1 discriminator 2 view .LVU636
  5963. 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5964. 2201 .loc 1 1372 10 is_stmt 0 discriminator 2 view .LVU637
  5965. 2202 0040 636B ldr r3, [r4, #52]
  5966. 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5967. 2203 .loc 1 1372 38 discriminator 2 view .LVU638
  5968. 2204 0042 1848 ldr r0, .L138+8
  5969. 2205 0044 D864 str r0, [r3, #76]
  5970. 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5971. 2206 .loc 1 1375 5 is_stmt 1 discriminator 2 view .LVU639
  5972. 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5973. 2207 .loc 1 1375 10 is_stmt 0 discriminator 2 view .LVU640
  5974. 2208 0046 636B ldr r3, [r4, #52]
  5975. ARM GAS /tmp/ccGtkZvD.s page 104
  5976. 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5977. 2209 .loc 1 1375 38 discriminator 2 view .LVU641
  5978. 2210 0048 1D65 str r5, [r3, #80]
  5979. 1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Start_IT(huart->hdmarx, (uint32_t)&huart->Instance->DR, *(uint32_t *)tmp, Size);
  5980. 2211 .loc 1 1378 5 is_stmt 1 discriminator 2 view .LVU642
  5981. 2212 .LVL168:
  5982. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5983. 2213 .loc 1 1379 5 discriminator 2 view .LVU643
  5984. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5985. 2214 .loc 1 1379 53 is_stmt 0 discriminator 2 view .LVU644
  5986. 2215 004a 2068 ldr r0, [r4]
  5987. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5988. 2216 .loc 1 1379 5 discriminator 2 view .LVU645
  5989. 2217 004c 1346 mov r3, r2
  5990. 2218 004e 0A46 mov r2, r1
  5991. 2219 .LVL169:
  5992. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5993. 2220 .loc 1 1379 5 discriminator 2 view .LVU646
  5994. 2221 0050 011D adds r1, r0, #4
  5995. 2222 .LVL170:
  5996. 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  5997. 2223 .loc 1 1379 5 discriminator 2 view .LVU647
  5998. 2224 0052 606B ldr r0, [r4, #52]
  5999. 2225 0054 FFF7FEFF bl HAL_DMA_Start_IT
  6000. 2226 .LVL171:
  6001. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6002. 2227 .loc 1 1382 5 is_stmt 1 discriminator 2 view .LVU648
  6003. 2228 .LBB2:
  6004. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6005. 2229 .loc 1 1382 5 discriminator 2 view .LVU649
  6006. 2230 0058 0195 str r5, [sp, #4]
  6007. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6008. 2231 .loc 1 1382 5 discriminator 2 view .LVU650
  6009. 2232 005a 2368 ldr r3, [r4]
  6010. 2233 005c 1A68 ldr r2, [r3]
  6011. 2234 005e 0192 str r2, [sp, #4]
  6012. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6013. 2235 .loc 1 1382 5 discriminator 2 view .LVU651
  6014. 2236 0060 5A68 ldr r2, [r3, #4]
  6015. 2237 0062 0192 str r2, [sp, #4]
  6016. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6017. 2238 .loc 1 1382 5 discriminator 2 view .LVU652
  6018. 2239 0064 019A ldr r2, [sp, #4]
  6019. 2240 .LBE2:
  6020. 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6021. 2241 .loc 1 1382 5 discriminator 2 view .LVU653
  6022. 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6023. 2242 .loc 1 1385 5 discriminator 2 view .LVU654
  6024. 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6025. 2243 .loc 1 1385 5 discriminator 2 view .LVU655
  6026. 2244 0066 84F83850 strb r5, [r4, #56]
  6027. 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6028. 2245 .loc 1 1385 5 discriminator 2 view .LVU656
  6029. 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6030. 2246 .loc 1 1388 5 discriminator 2 view .LVU657
  6031. 2247 006a DA68 ldr r2, [r3, #12]
  6032. 2248 006c 42F48072 orr r2, r2, #256
  6033. ARM GAS /tmp/ccGtkZvD.s page 105
  6034. 2249 0070 DA60 str r2, [r3, #12]
  6035. 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6036. 2250 .loc 1 1391 5 discriminator 2 view .LVU658
  6037. 2251 0072 2268 ldr r2, [r4]
  6038. 2252 0074 5369 ldr r3, [r2, #20]
  6039. 2253 0076 43F00103 orr r3, r3, #1
  6040. 2254 007a 5361 str r3, [r2, #20]
  6041. 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6042. 2255 .loc 1 1395 5 discriminator 2 view .LVU659
  6043. 2256 007c 2268 ldr r2, [r4]
  6044. 2257 007e 5369 ldr r3, [r2, #20]
  6045. 2258 0080 43F04003 orr r3, r3, #64
  6046. 2259 0084 5361 str r3, [r2, #20]
  6047. 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6048. 2260 .loc 1 1397 5 discriminator 2 view .LVU660
  6049. 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6050. 2261 .loc 1 1397 12 is_stmt 0 discriminator 2 view .LVU661
  6051. 2262 0086 2846 mov r0, r5
  6052. 2263 0088 00E0 b .L132
  6053. 2264 .LVL172:
  6054. 2265 .L133:
  6055. 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6056. 2266 .loc 1 1401 12 view .LVU662
  6057. 2267 008a 0220 movs r0, #2
  6058. 2268 .LVL173:
  6059. 2269 .L132:
  6060. 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6061. 2270 .loc 1 1403 1 view .LVU663
  6062. 2271 008c 03B0 add sp, sp, #12
  6063. 2272 .LCFI23:
  6064. 2273 .cfi_remember_state
  6065. 2274 .cfi_def_cfa_offset 12
  6066. 2275 @ sp needed
  6067. 2276 008e 30BD pop {r4, r5, pc}
  6068. 2277 .LVL174:
  6069. 2278 .L134:
  6070. 2279 .LCFI24:
  6071. 2280 .cfi_restore_state
  6072. 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6073. 2281 .loc 1 1353 14 view .LVU664
  6074. 2282 0090 0120 movs r0, #1
  6075. 2283 0092 FBE7 b .L132
  6076. 2284 .L135:
  6077. 2285 0094 0120 movs r0, #1
  6078. 2286 0096 F9E7 b .L132
  6079. 2287 .L136:
  6080. 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6081. 2288 .loc 1 1357 5 view .LVU665
  6082. 2289 0098 0220 movs r0, #2
  6083. 2290 009a F7E7 b .L132
  6084. 2291 .L139:
  6085. 2292 .align 2
  6086. 2293 .L138:
  6087. 2294 009c 00000000 .word UART_DMAReceiveCplt
  6088. 2295 00a0 00000000 .word UART_DMARxHalfCplt
  6089. 2296 00a4 00000000 .word UART_DMAError
  6090. 2297 .cfi_endproc
  6091. ARM GAS /tmp/ccGtkZvD.s page 106
  6092. 2298 .LFE142:
  6093. 2300 .section .text.HAL_UART_DMAPause,"ax",%progbits
  6094. 2301 .align 1
  6095. 2302 .global HAL_UART_DMAPause
  6096. 2303 .syntax unified
  6097. 2304 .thumb
  6098. 2305 .thumb_func
  6099. 2307 HAL_UART_DMAPause:
  6100. 2308 .LVL175:
  6101. 2309 .LFB143:
  6102. 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  6103. 2310 .loc 1 1412 1 is_stmt 1 view -0
  6104. 2311 .cfi_startproc
  6105. 2312 @ args = 0, pretend = 0, frame = 0
  6106. 2313 @ frame_needed = 0, uses_anonymous_args = 0
  6107. 2314 @ link register save eliminated.
  6108. 1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6109. 2315 .loc 1 1413 3 view .LVU667
  6110. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6111. 2316 .loc 1 1416 3 view .LVU668
  6112. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6113. 2317 .loc 1 1416 3 view .LVU669
  6114. 2318 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  6115. 2319 0004 012B cmp r3, #1
  6116. 2320 0006 31D0 beq .L144
  6117. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6118. 2321 .loc 1 1416 3 discriminator 2 view .LVU670
  6119. 2322 0008 0123 movs r3, #1
  6120. 2323 000a 80F83830 strb r3, [r0, #56]
  6121. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6122. 2324 .loc 1 1416 3 discriminator 2 view .LVU671
  6123. 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  6124. 2325 .loc 1 1418 3 discriminator 2 view .LVU672
  6125. 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  6126. 2326 .loc 1 1418 16 is_stmt 0 discriminator 2 view .LVU673
  6127. 2327 000e 0168 ldr r1, [r0]
  6128. 2328 0010 4A69 ldr r2, [r1, #20]
  6129. 2329 0012 02F08002 and r2, r2, #128
  6130. 2330 .LVL176:
  6131. 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6132. 2331 .loc 1 1419 3 is_stmt 1 discriminator 2 view .LVU674
  6133. 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6134. 2332 .loc 1 1419 13 is_stmt 0 discriminator 2 view .LVU675
  6135. 2333 0016 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  6136. 2334 001a DBB2 uxtb r3, r3
  6137. 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6138. 2335 .loc 1 1419 6 discriminator 2 view .LVU676
  6139. 2336 001c 212B cmp r3, #33
  6140. 2337 001e 0DD0 beq .L145
  6141. 2338 .L142:
  6142. 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  6143. 2339 .loc 1 1425 3 is_stmt 1 view .LVU677
  6144. 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  6145. 2340 .loc 1 1425 16 is_stmt 0 view .LVU678
  6146. 2341 0020 0168 ldr r1, [r0]
  6147. 2342 0022 4A69 ldr r2, [r1, #20]
  6148. 2343 .LVL177:
  6149. ARM GAS /tmp/ccGtkZvD.s page 107
  6150. 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  6151. 2344 .loc 1 1425 16 view .LVU679
  6152. 2345 0024 02F04002 and r2, r2, #64
  6153. 2346 .LVL178:
  6154. 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6155. 2347 .loc 1 1426 3 is_stmt 1 view .LVU680
  6156. 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6157. 2348 .loc 1 1426 13 is_stmt 0 view .LVU681
  6158. 2349 0028 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
  6159. 2350 002c DBB2 uxtb r3, r3
  6160. 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6161. 2351 .loc 1 1426 6 view .LVU682
  6162. 2352 002e 222B cmp r3, #34
  6163. 2353 0030 0BD0 beq .L146
  6164. 2354 .LVL179:
  6165. 2355 .L143:
  6166. 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6167. 2356 .loc 1 1437 3 is_stmt 1 view .LVU683
  6168. 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6169. 2357 .loc 1 1437 3 view .LVU684
  6170. 2358 0032 0023 movs r3, #0
  6171. 2359 0034 80F83830 strb r3, [r0, #56]
  6172. 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6173. 2360 .loc 1 1437 3 view .LVU685
  6174. 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6175. 2361 .loc 1 1439 3 view .LVU686
  6176. 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6177. 2362 .loc 1 1439 10 is_stmt 0 view .LVU687
  6178. 2363 0038 1846 mov r0, r3
  6179. 2364 .LVL180:
  6180. 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6181. 2365 .loc 1 1439 10 view .LVU688
  6182. 2366 003a 7047 bx lr
  6183. 2367 .LVL181:
  6184. 2368 .L145:
  6185. 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6186. 2369 .loc 1 1419 49 discriminator 1 view .LVU689
  6187. 2370 003c 002A cmp r2, #0
  6188. 2371 003e EFD0 beq .L142
  6189. 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6190. 2372 .loc 1 1422 5 is_stmt 1 view .LVU690
  6191. 2373 0040 4B69 ldr r3, [r1, #20]
  6192. 2374 0042 23F08003 bic r3, r3, #128
  6193. 2375 0046 4B61 str r3, [r1, #20]
  6194. 2376 0048 EAE7 b .L142
  6195. 2377 .L146:
  6196. 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6197. 2378 .loc 1 1426 50 is_stmt 0 discriminator 1 view .LVU691
  6198. 2379 004a 002A cmp r2, #0
  6199. 2380 004c F1D0 beq .L143
  6200. 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  6201. 2381 .loc 1 1429 5 is_stmt 1 view .LVU692
  6202. 2382 004e CB68 ldr r3, [r1, #12]
  6203. 2383 0050 23F48073 bic r3, r3, #256
  6204. 2384 0054 CB60 str r3, [r1, #12]
  6205. 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6206. 2385 .loc 1 1430 5 view .LVU693
  6207. ARM GAS /tmp/ccGtkZvD.s page 108
  6208. 2386 0056 0268 ldr r2, [r0]
  6209. 2387 .LVL182:
  6210. 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6211. 2388 .loc 1 1430 5 is_stmt 0 view .LVU694
  6212. 2389 0058 5369 ldr r3, [r2, #20]
  6213. 2390 005a 23F00103 bic r3, r3, #1
  6214. 2391 005e 5361 str r3, [r2, #20]
  6215. 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6216. 2392 .loc 1 1433 5 is_stmt 1 view .LVU695
  6217. 2393 0060 0268 ldr r2, [r0]
  6218. 2394 0062 5369 ldr r3, [r2, #20]
  6219. 2395 0064 23F04003 bic r3, r3, #64
  6220. 2396 0068 5361 str r3, [r2, #20]
  6221. 2397 006a E2E7 b .L143
  6222. 2398 .LVL183:
  6223. 2399 .L144:
  6224. 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6225. 2400 .loc 1 1416 3 is_stmt 0 view .LVU696
  6226. 2401 006c 0220 movs r0, #2
  6227. 2402 .LVL184:
  6228. 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6229. 2403 .loc 1 1440 1 view .LVU697
  6230. 2404 006e 7047 bx lr
  6231. 2405 .cfi_endproc
  6232. 2406 .LFE143:
  6233. 2408 .section .text.HAL_UART_DMAResume,"ax",%progbits
  6234. 2409 .align 1
  6235. 2410 .global HAL_UART_DMAResume
  6236. 2411 .syntax unified
  6237. 2412 .thumb
  6238. 2413 .thumb_func
  6239. 2415 HAL_UART_DMAResume:
  6240. 2416 .LVL185:
  6241. 2417 .LFB144:
  6242. 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  6243. 2418 .loc 1 1449 1 is_stmt 1 view -0
  6244. 2419 .cfi_startproc
  6245. 2420 @ args = 0, pretend = 0, frame = 8
  6246. 2421 @ frame_needed = 0, uses_anonymous_args = 0
  6247. 2422 @ link register save eliminated.
  6248. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6249. 2423 .loc 1 1451 3 view .LVU699
  6250. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6251. 2424 .loc 1 1451 3 view .LVU700
  6252. 2425 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  6253. 2426 0004 012B cmp r3, #1
  6254. 2427 0006 34D0 beq .L151
  6255. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6256. 2428 .loc 1 1451 3 discriminator 2 view .LVU701
  6257. 2429 0008 0123 movs r3, #1
  6258. 2430 000a 80F83830 strb r3, [r0, #56]
  6259. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6260. 2431 .loc 1 1451 3 discriminator 2 view .LVU702
  6261. 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6262. 2432 .loc 1 1453 3 discriminator 2 view .LVU703
  6263. 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6264. 2433 .loc 1 1453 12 is_stmt 0 discriminator 2 view .LVU704
  6265. ARM GAS /tmp/ccGtkZvD.s page 109
  6266. 2434 000e 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  6267. 2435 0012 DBB2 uxtb r3, r3
  6268. 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6269. 2436 .loc 1 1453 6 discriminator 2 view .LVU705
  6270. 2437 0014 212B cmp r3, #33
  6271. 2438 0016 09D0 beq .L157
  6272. 2439 .L149:
  6273. 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6274. 2440 .loc 1 1459 3 is_stmt 1 view .LVU706
  6275. 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6276. 2441 .loc 1 1459 12 is_stmt 0 view .LVU707
  6277. 2442 0018 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
  6278. 2443 001c DBB2 uxtb r3, r3
  6279. 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6280. 2444 .loc 1 1459 6 view .LVU708
  6281. 2445 001e 222B cmp r3, #34
  6282. 2446 0020 0AD0 beq .L158
  6283. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6284. 2447 .loc 1 1473 3 is_stmt 1 view .LVU709
  6285. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6286. 2448 .loc 1 1473 3 view .LVU710
  6287. 2449 0022 0023 movs r3, #0
  6288. 2450 0024 80F83830 strb r3, [r0, #56]
  6289. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6290. 2451 .loc 1 1473 3 view .LVU711
  6291. 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6292. 2452 .loc 1 1475 3 view .LVU712
  6293. 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6294. 2453 .loc 1 1475 10 is_stmt 0 view .LVU713
  6295. 2454 0028 1846 mov r0, r3
  6296. 2455 .LVL186:
  6297. 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6298. 2456 .loc 1 1476 1 view .LVU714
  6299. 2457 002a 7047 bx lr
  6300. 2458 .LVL187:
  6301. 2459 .L157:
  6302. 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6303. 2460 .loc 1 1456 5 is_stmt 1 view .LVU715
  6304. 2461 002c 0268 ldr r2, [r0]
  6305. 2462 002e 5369 ldr r3, [r2, #20]
  6306. 2463 0030 43F08003 orr r3, r3, #128
  6307. 2464 0034 5361 str r3, [r2, #20]
  6308. 2465 0036 EFE7 b .L149
  6309. 2466 .L158:
  6310. 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
  6311. 2467 .loc 1 1449 1 is_stmt 0 view .LVU716
  6312. 2468 0038 82B0 sub sp, sp, #8
  6313. 2469 .LCFI25:
  6314. 2470 .cfi_def_cfa_offset 8
  6315. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6316. 2471 .loc 1 1462 5 is_stmt 1 view .LVU717
  6317. 2472 .LBB3:
  6318. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6319. 2473 .loc 1 1462 5 view .LVU718
  6320. 2474 003a 0023 movs r3, #0
  6321. 2475 003c 0193 str r3, [sp, #4]
  6322. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6323. ARM GAS /tmp/ccGtkZvD.s page 110
  6324. 2476 .loc 1 1462 5 view .LVU719
  6325. 2477 003e 0368 ldr r3, [r0]
  6326. 2478 0040 1A68 ldr r2, [r3]
  6327. 2479 0042 0192 str r2, [sp, #4]
  6328. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6329. 2480 .loc 1 1462 5 view .LVU720
  6330. 2481 0044 5A68 ldr r2, [r3, #4]
  6331. 2482 0046 0192 str r2, [sp, #4]
  6332. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6333. 2483 .loc 1 1462 5 view .LVU721
  6334. 2484 0048 019A ldr r2, [sp, #4]
  6335. 2485 .LBE3:
  6336. 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6337. 2486 .loc 1 1462 5 view .LVU722
  6338. 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
  6339. 2487 .loc 1 1465 5 view .LVU723
  6340. 2488 004a DA68 ldr r2, [r3, #12]
  6341. 2489 004c 42F48072 orr r2, r2, #256
  6342. 2490 0050 DA60 str r2, [r3, #12]
  6343. 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6344. 2491 .loc 1 1466 5 view .LVU724
  6345. 2492 0052 0268 ldr r2, [r0]
  6346. 2493 0054 5369 ldr r3, [r2, #20]
  6347. 2494 0056 43F00103 orr r3, r3, #1
  6348. 2495 005a 5361 str r3, [r2, #20]
  6349. 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6350. 2496 .loc 1 1469 5 view .LVU725
  6351. 2497 005c 0268 ldr r2, [r0]
  6352. 2498 005e 5369 ldr r3, [r2, #20]
  6353. 2499 0060 43F04003 orr r3, r3, #64
  6354. 2500 0064 5361 str r3, [r2, #20]
  6355. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6356. 2501 .loc 1 1473 3 view .LVU726
  6357. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6358. 2502 .loc 1 1473 3 view .LVU727
  6359. 2503 0066 0023 movs r3, #0
  6360. 2504 0068 80F83830 strb r3, [r0, #56]
  6361. 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6362. 2505 .loc 1 1473 3 view .LVU728
  6363. 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6364. 2506 .loc 1 1475 3 view .LVU729
  6365. 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6366. 2507 .loc 1 1475 10 is_stmt 0 view .LVU730
  6367. 2508 006c 1846 mov r0, r3
  6368. 2509 .LVL188:
  6369. 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6370. 2510 .loc 1 1476 1 view .LVU731
  6371. 2511 006e 02B0 add sp, sp, #8
  6372. 2512 .LCFI26:
  6373. 2513 .cfi_def_cfa_offset 0
  6374. 2514 @ sp needed
  6375. 2515 0070 7047 bx lr
  6376. 2516 .LVL189:
  6377. 2517 .L151:
  6378. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6379. 2518 .loc 1 1451 3 view .LVU732
  6380. 2519 0072 0220 movs r0, #2
  6381. ARM GAS /tmp/ccGtkZvD.s page 111
  6382. 2520 .LVL190:
  6383. 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6384. 2521 .loc 1 1451 3 view .LVU733
  6385. 2522 0074 7047 bx lr
  6386. 2523 .cfi_endproc
  6387. 2524 .LFE144:
  6388. 2526 .section .text.HAL_UART_DMAStop,"ax",%progbits
  6389. 2527 .align 1
  6390. 2528 .global HAL_UART_DMAStop
  6391. 2529 .syntax unified
  6392. 2530 .thumb
  6393. 2531 .thumb_func
  6394. 2533 HAL_UART_DMAStop:
  6395. 2534 .LVL191:
  6396. 2535 .LFB145:
  6397. 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  6398. 2536 .loc 1 1485 1 is_stmt 1 view -0
  6399. 2537 .cfi_startproc
  6400. 2538 @ args = 0, pretend = 0, frame = 0
  6401. 2539 @ frame_needed = 0, uses_anonymous_args = 0
  6402. 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  6403. 2540 .loc 1 1485 1 is_stmt 0 view .LVU735
  6404. 2541 0000 10B5 push {r4, lr}
  6405. 2542 .LCFI27:
  6406. 2543 .cfi_def_cfa_offset 8
  6407. 2544 .cfi_offset 4, -8
  6408. 2545 .cfi_offset 14, -4
  6409. 2546 0002 0446 mov r4, r0
  6410. 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* The Lock is not implemented on this API to allow the user application
  6411. 2547 .loc 1 1486 3 is_stmt 1 view .LVU736
  6412. 2548 .LVL192:
  6413. 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  6414. 2549 .loc 1 1494 3 view .LVU737
  6415. 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  6416. 2550 .loc 1 1494 16 is_stmt 0 view .LVU738
  6417. 2551 0004 0168 ldr r1, [r0]
  6418. 2552 0006 4A69 ldr r2, [r1, #20]
  6419. 2553 .LVL193:
  6420. 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6421. 2554 .loc 1 1495 3 is_stmt 1 view .LVU739
  6422. 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6423. 2555 .loc 1 1495 13 is_stmt 0 view .LVU740
  6424. 2556 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  6425. 2557 000c DBB2 uxtb r3, r3
  6426. 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6427. 2558 .loc 1 1495 6 view .LVU741
  6428. 2559 000e 212B cmp r3, #33
  6429. 2560 0010 0AD0 beq .L165
  6430. 2561 .LVL194:
  6431. 2562 .L160:
  6432. 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  6433. 2563 .loc 1 1508 3 is_stmt 1 view .LVU742
  6434. 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  6435. 2564 .loc 1 1508 16 is_stmt 0 view .LVU743
  6436. 2565 0012 2168 ldr r1, [r4]
  6437. 2566 0014 4A69 ldr r2, [r1, #20]
  6438. 2567 0016 02F04002 and r2, r2, #64
  6439. ARM GAS /tmp/ccGtkZvD.s page 112
  6440. 2568 .LVL195:
  6441. 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6442. 2569 .loc 1 1509 3 is_stmt 1 view .LVU744
  6443. 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6444. 2570 .loc 1 1509 13 is_stmt 0 view .LVU745
  6445. 2571 001a 94F83A30 ldrb r3, [r4, #58] @ zero_extendqisi2
  6446. 2572 001e DBB2 uxtb r3, r3
  6447. 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6448. 2573 .loc 1 1509 6 view .LVU746
  6449. 2574 0020 222B cmp r3, #34
  6450. 2575 0022 11D0 beq .L166
  6451. 2576 .LVL196:
  6452. 2577 .L162:
  6453. 1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6454. 2578 .loc 1 1521 3 is_stmt 1 view .LVU747
  6455. 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6456. 2579 .loc 1 1522 1 is_stmt 0 view .LVU748
  6457. 2580 0024 0020 movs r0, #0
  6458. 2581 0026 10BD pop {r4, pc}
  6459. 2582 .LVL197:
  6460. 2583 .L165:
  6461. 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6462. 2584 .loc 1 1522 1 view .LVU749
  6463. 2585 0028 02F08002 and r2, r2, #128
  6464. 2586 .LVL198:
  6465. 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6466. 2587 .loc 1 1495 49 discriminator 1 view .LVU750
  6467. 2588 002c 002A cmp r2, #0
  6468. 2589 002e F0D0 beq .L160
  6469. 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6470. 2590 .loc 1 1497 5 is_stmt 1 view .LVU751
  6471. 2591 0030 4B69 ldr r3, [r1, #20]
  6472. 2592 0032 23F08003 bic r3, r3, #128
  6473. 2593 0036 4B61 str r3, [r1, #20]
  6474. 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6475. 2594 .loc 1 1500 5 view .LVU752
  6476. 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6477. 2595 .loc 1 1500 14 is_stmt 0 view .LVU753
  6478. 2596 0038 006B ldr r0, [r0, #48]
  6479. 2597 .LVL199:
  6480. 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6481. 2598 .loc 1 1500 8 view .LVU754
  6482. 2599 003a 08B1 cbz r0, .L161
  6483. 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6484. 2600 .loc 1 1502 7 is_stmt 1 view .LVU755
  6485. 2601 003c FFF7FEFF bl HAL_DMA_Abort
  6486. 2602 .LVL200:
  6487. 2603 .L161:
  6488. 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6489. 2604 .loc 1 1504 5 view .LVU756
  6490. 2605 0040 2046 mov r0, r4
  6491. 2606 0042 FFF7FEFF bl UART_EndTxTransfer
  6492. 2607 .LVL201:
  6493. 2608 0046 E4E7 b .L160
  6494. 2609 .LVL202:
  6495. 2610 .L166:
  6496. 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6497. ARM GAS /tmp/ccGtkZvD.s page 113
  6498. 2611 .loc 1 1509 50 is_stmt 0 discriminator 1 view .LVU757
  6499. 2612 0048 002A cmp r2, #0
  6500. 2613 004a EBD0 beq .L162
  6501. 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6502. 2614 .loc 1 1511 5 is_stmt 1 view .LVU758
  6503. 2615 004c 4B69 ldr r3, [r1, #20]
  6504. 2616 004e 23F04003 bic r3, r3, #64
  6505. 2617 0052 4B61 str r3, [r1, #20]
  6506. 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6507. 2618 .loc 1 1514 5 view .LVU759
  6508. 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6509. 2619 .loc 1 1514 14 is_stmt 0 view .LVU760
  6510. 2620 0054 606B ldr r0, [r4, #52]
  6511. 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6512. 2621 .loc 1 1514 8 view .LVU761
  6513. 2622 0056 08B1 cbz r0, .L163
  6514. 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6515. 2623 .loc 1 1516 7 is_stmt 1 view .LVU762
  6516. 2624 0058 FFF7FEFF bl HAL_DMA_Abort
  6517. 2625 .LVL203:
  6518. 2626 .L163:
  6519. 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6520. 2627 .loc 1 1518 5 view .LVU763
  6521. 2628 005c 2046 mov r0, r4
  6522. 2629 005e FFF7FEFF bl UART_EndRxTransfer
  6523. 2630 .LVL204:
  6524. 2631 0062 DFE7 b .L162
  6525. 2632 .cfi_endproc
  6526. 2633 .LFE145:
  6527. 2635 .section .text.HAL_UART_Abort,"ax",%progbits
  6528. 2636 .align 1
  6529. 2637 .global HAL_UART_Abort
  6530. 2638 .syntax unified
  6531. 2639 .thumb
  6532. 2640 .thumb_func
  6533. 2642 HAL_UART_Abort:
  6534. 2643 .LVL205:
  6535. 2644 .LFB146:
  6536. 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  6537. 2645 .loc 1 1537 1 view -0
  6538. 2646 .cfi_startproc
  6539. 2647 @ args = 0, pretend = 0, frame = 0
  6540. 2648 @ frame_needed = 0, uses_anonymous_args = 0
  6541. 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  6542. 2649 .loc 1 1537 1 is_stmt 0 view .LVU765
  6543. 2650 0000 10B5 push {r4, lr}
  6544. 2651 .LCFI28:
  6545. 2652 .cfi_def_cfa_offset 8
  6546. 2653 .cfi_offset 4, -8
  6547. 2654 .cfi_offset 14, -4
  6548. 2655 0002 0446 mov r4, r0
  6549. 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  6550. 2656 .loc 1 1539 3 is_stmt 1 view .LVU766
  6551. 2657 0004 0268 ldr r2, [r0]
  6552. 2658 0006 D368 ldr r3, [r2, #12]
  6553. 2659 0008 23F4F073 bic r3, r3, #480
  6554. 2660 000c D360 str r3, [r2, #12]
  6555. ARM GAS /tmp/ccGtkZvD.s page 114
  6556. 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6557. 2661 .loc 1 1540 3 view .LVU767
  6558. 2662 000e 0268 ldr r2, [r0]
  6559. 2663 0010 5369 ldr r3, [r2, #20]
  6560. 2664 0012 23F00103 bic r3, r3, #1
  6561. 2665 0016 5361 str r3, [r2, #20]
  6562. 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6563. 2666 .loc 1 1543 3 view .LVU768
  6564. 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6565. 2667 .loc 1 1543 7 is_stmt 0 view .LVU769
  6566. 2668 0018 0368 ldr r3, [r0]
  6567. 2669 001a 5A69 ldr r2, [r3, #20]
  6568. 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6569. 2670 .loc 1 1543 6 view .LVU770
  6570. 2671 001c 12F0800F tst r2, #128
  6571. 2672 0020 0BD0 beq .L168
  6572. 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6573. 2673 .loc 1 1545 5 is_stmt 1 view .LVU771
  6574. 2674 0022 5A69 ldr r2, [r3, #20]
  6575. 2675 0024 22F08002 bic r2, r2, #128
  6576. 2676 0028 5A61 str r2, [r3, #20]
  6577. 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6578. 2677 .loc 1 1548 5 view .LVU772
  6579. 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6580. 2678 .loc 1 1548 14 is_stmt 0 view .LVU773
  6581. 2679 002a 036B ldr r3, [r0, #48]
  6582. 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6583. 2680 .loc 1 1548 8 view .LVU774
  6584. 2681 002c 2BB1 cbz r3, .L168
  6585. 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6586. 2682 .loc 1 1552 7 is_stmt 1 view .LVU775
  6587. 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6588. 2683 .loc 1 1552 40 is_stmt 0 view .LVU776
  6589. 2684 002e 0022 movs r2, #0
  6590. 2685 0030 1A65 str r2, [r3, #80]
  6591. 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6592. 2686 .loc 1 1554 7 is_stmt 1 view .LVU777
  6593. 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6594. 2687 .loc 1 1554 11 is_stmt 0 view .LVU778
  6595. 2688 0032 006B ldr r0, [r0, #48]
  6596. 2689 .LVL206:
  6597. 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6598. 2690 .loc 1 1554 11 view .LVU779
  6599. 2691 0034 FFF7FEFF bl HAL_DMA_Abort
  6600. 2692 .LVL207:
  6601. 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6602. 2693 .loc 1 1554 10 view .LVU780
  6603. 2694 0038 D0B9 cbnz r0, .L172
  6604. 2695 .L168:
  6605. 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6606. 2696 .loc 1 1568 3 is_stmt 1 view .LVU781
  6607. 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6608. 2697 .loc 1 1568 7 is_stmt 0 view .LVU782
  6609. 2698 003a 2368 ldr r3, [r4]
  6610. 2699 003c 5A69 ldr r2, [r3, #20]
  6611. 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6612. 2700 .loc 1 1568 6 view .LVU783
  6613. ARM GAS /tmp/ccGtkZvD.s page 115
  6614. 2701 003e 12F0400F tst r2, #64
  6615. 2702 0042 0BD0 beq .L170
  6616. 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6617. 2703 .loc 1 1570 5 is_stmt 1 view .LVU784
  6618. 2704 0044 5A69 ldr r2, [r3, #20]
  6619. 2705 0046 22F04002 bic r2, r2, #64
  6620. 2706 004a 5A61 str r2, [r3, #20]
  6621. 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6622. 2707 .loc 1 1573 5 view .LVU785
  6623. 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6624. 2708 .loc 1 1573 14 is_stmt 0 view .LVU786
  6625. 2709 004c 636B ldr r3, [r4, #52]
  6626. 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6627. 2710 .loc 1 1573 8 view .LVU787
  6628. 2711 004e 2BB1 cbz r3, .L170
  6629. 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6630. 2712 .loc 1 1577 7 is_stmt 1 view .LVU788
  6631. 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6632. 2713 .loc 1 1577 40 is_stmt 0 view .LVU789
  6633. 2714 0050 0022 movs r2, #0
  6634. 2715 0052 1A65 str r2, [r3, #80]
  6635. 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6636. 2716 .loc 1 1579 7 is_stmt 1 view .LVU790
  6637. 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6638. 2717 .loc 1 1579 11 is_stmt 0 view .LVU791
  6639. 2718 0054 606B ldr r0, [r4, #52]
  6640. 2719 0056 FFF7FEFF bl HAL_DMA_Abort
  6641. 2720 .LVL208:
  6642. 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6643. 2721 .loc 1 1579 10 view .LVU792
  6644. 2722 005a 90B9 cbnz r0, .L173
  6645. 2723 .L170:
  6646. 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  6647. 2724 .loc 1 1593 3 is_stmt 1 view .LVU793
  6648. 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  6649. 2725 .loc 1 1593 22 is_stmt 0 view .LVU794
  6650. 2726 005c 0020 movs r0, #0
  6651. 2727 005e E084 strh r0, [r4, #38] @ movhi
  6652. 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6653. 2728 .loc 1 1594 3 is_stmt 1 view .LVU795
  6654. 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6655. 2729 .loc 1 1594 22 is_stmt 0 view .LVU796
  6656. 2730 0060 E085 strh r0, [r4, #46] @ movhi
  6657. 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6658. 2731 .loc 1 1597 3 is_stmt 1 view .LVU797
  6659. 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6660. 2732 .loc 1 1597 20 is_stmt 0 view .LVU798
  6661. 2733 0062 E063 str r0, [r4, #60]
  6662. 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  6663. 2734 .loc 1 1600 3 is_stmt 1 view .LVU799
  6664. 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
  6665. 2735 .loc 1 1600 18 is_stmt 0 view .LVU800
  6666. 2736 0064 2023 movs r3, #32
  6667. 2737 0066 84F83A30 strb r3, [r4, #58]
  6668. 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6669. 2738 .loc 1 1601 3 is_stmt 1 view .LVU801
  6670. 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6671. ARM GAS /tmp/ccGtkZvD.s page 116
  6672. 2739 .loc 1 1601 17 is_stmt 0 view .LVU802
  6673. 2740 006a 84F83930 strb r3, [r4, #57]
  6674. 1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6675. 2741 .loc 1 1603 3 is_stmt 1 view .LVU803
  6676. 2742 .L169:
  6677. 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6678. 2743 .loc 1 1604 1 is_stmt 0 view .LVU804
  6679. 2744 006e 10BD pop {r4, pc}
  6680. 2745 .LVL209:
  6681. 2746 .L172:
  6682. 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6683. 2747 .loc 1 1556 9 is_stmt 1 view .LVU805
  6684. 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6685. 2748 .loc 1 1556 13 is_stmt 0 view .LVU806
  6686. 2749 0070 206B ldr r0, [r4, #48]
  6687. 2750 0072 FFF7FEFF bl HAL_DMA_GetError
  6688. 2751 .LVL210:
  6689. 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6690. 2752 .loc 1 1556 12 view .LVU807
  6691. 2753 0076 2028 cmp r0, #32
  6692. 2754 0078 DFD1 bne .L168
  6693. 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6694. 2755 .loc 1 1559 11 is_stmt 1 view .LVU808
  6695. 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6696. 2756 .loc 1 1559 28 is_stmt 0 view .LVU809
  6697. 2757 007a 1023 movs r3, #16
  6698. 2758 007c E363 str r3, [r4, #60]
  6699. 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6700. 2759 .loc 1 1561 11 is_stmt 1 view .LVU810
  6701. 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6702. 2760 .loc 1 1561 18 is_stmt 0 view .LVU811
  6703. 2761 007e 0320 movs r0, #3
  6704. 2762 0080 F5E7 b .L169
  6705. 2763 .L173:
  6706. 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6707. 2764 .loc 1 1581 9 is_stmt 1 view .LVU812
  6708. 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6709. 2765 .loc 1 1581 13 is_stmt 0 view .LVU813
  6710. 2766 0082 606B ldr r0, [r4, #52]
  6711. 2767 0084 FFF7FEFF bl HAL_DMA_GetError
  6712. 2768 .LVL211:
  6713. 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6714. 2769 .loc 1 1581 12 view .LVU814
  6715. 2770 0088 2028 cmp r0, #32
  6716. 2771 008a E7D1 bne .L170
  6717. 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6718. 2772 .loc 1 1584 11 is_stmt 1 view .LVU815
  6719. 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6720. 2773 .loc 1 1584 28 is_stmt 0 view .LVU816
  6721. 2774 008c 1023 movs r3, #16
  6722. 2775 008e E363 str r3, [r4, #60]
  6723. 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6724. 2776 .loc 1 1586 11 is_stmt 1 view .LVU817
  6725. 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6726. 2777 .loc 1 1586 18 is_stmt 0 view .LVU818
  6727. 2778 0090 0320 movs r0, #3
  6728. 2779 0092 ECE7 b .L169
  6729. ARM GAS /tmp/ccGtkZvD.s page 117
  6730. 2780 .cfi_endproc
  6731. 2781 .LFE146:
  6732. 2783 .section .text.HAL_UART_AbortTransmit,"ax",%progbits
  6733. 2784 .align 1
  6734. 2785 .global HAL_UART_AbortTransmit
  6735. 2786 .syntax unified
  6736. 2787 .thumb
  6737. 2788 .thumb_func
  6738. 2790 HAL_UART_AbortTransmit:
  6739. 2791 .LVL212:
  6740. 2792 .LFB147:
  6741. 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  6742. 2793 .loc 1 1619 1 is_stmt 1 view -0
  6743. 2794 .cfi_startproc
  6744. 2795 @ args = 0, pretend = 0, frame = 0
  6745. 2796 @ frame_needed = 0, uses_anonymous_args = 0
  6746. 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  6747. 2797 .loc 1 1619 1 is_stmt 0 view .LVU820
  6748. 2798 0000 10B5 push {r4, lr}
  6749. 2799 .LCFI29:
  6750. 2800 .cfi_def_cfa_offset 8
  6751. 2801 .cfi_offset 4, -8
  6752. 2802 .cfi_offset 14, -4
  6753. 2803 0002 0446 mov r4, r0
  6754. 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6755. 2804 .loc 1 1621 3 is_stmt 1 view .LVU821
  6756. 2805 0004 0268 ldr r2, [r0]
  6757. 2806 0006 D368 ldr r3, [r2, #12]
  6758. 2807 0008 23F0C003 bic r3, r3, #192
  6759. 2808 000c D360 str r3, [r2, #12]
  6760. 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6761. 2809 .loc 1 1624 3 view .LVU822
  6762. 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6763. 2810 .loc 1 1624 7 is_stmt 0 view .LVU823
  6764. 2811 000e 0368 ldr r3, [r0]
  6765. 2812 0010 5A69 ldr r2, [r3, #20]
  6766. 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6767. 2813 .loc 1 1624 6 view .LVU824
  6768. 2814 0012 12F0800F tst r2, #128
  6769. 2815 0016 0BD0 beq .L175
  6770. 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6771. 2816 .loc 1 1626 5 is_stmt 1 view .LVU825
  6772. 2817 0018 5A69 ldr r2, [r3, #20]
  6773. 2818 001a 22F08002 bic r2, r2, #128
  6774. 2819 001e 5A61 str r2, [r3, #20]
  6775. 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6776. 2820 .loc 1 1629 5 view .LVU826
  6777. 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6778. 2821 .loc 1 1629 14 is_stmt 0 view .LVU827
  6779. 2822 0020 036B ldr r3, [r0, #48]
  6780. 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6781. 2823 .loc 1 1629 8 view .LVU828
  6782. 2824 0022 2BB1 cbz r3, .L175
  6783. 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6784. 2825 .loc 1 1633 7 is_stmt 1 view .LVU829
  6785. 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6786. 2826 .loc 1 1633 40 is_stmt 0 view .LVU830
  6787. ARM GAS /tmp/ccGtkZvD.s page 118
  6788. 2827 0024 0022 movs r2, #0
  6789. 2828 0026 1A65 str r2, [r3, #80]
  6790. 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6791. 2829 .loc 1 1635 7 is_stmt 1 view .LVU831
  6792. 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6793. 2830 .loc 1 1635 11 is_stmt 0 view .LVU832
  6794. 2831 0028 006B ldr r0, [r0, #48]
  6795. 2832 .LVL213:
  6796. 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6797. 2833 .loc 1 1635 11 view .LVU833
  6798. 2834 002a FFF7FEFF bl HAL_DMA_Abort
  6799. 2835 .LVL214:
  6800. 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6801. 2836 .loc 1 1635 10 view .LVU834
  6802. 2837 002e 28B9 cbnz r0, .L178
  6803. 2838 .L175:
  6804. 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6805. 2839 .loc 1 1649 3 is_stmt 1 view .LVU835
  6806. 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6807. 2840 .loc 1 1649 22 is_stmt 0 view .LVU836
  6808. 2841 0030 0020 movs r0, #0
  6809. 2842 0032 E084 strh r0, [r4, #38] @ movhi
  6810. 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6811. 2843 .loc 1 1652 3 is_stmt 1 view .LVU837
  6812. 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6813. 2844 .loc 1 1652 17 is_stmt 0 view .LVU838
  6814. 2845 0034 2023 movs r3, #32
  6815. 2846 0036 84F83930 strb r3, [r4, #57]
  6816. 1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6817. 2847 .loc 1 1654 3 is_stmt 1 view .LVU839
  6818. 2848 .L176:
  6819. 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6820. 2849 .loc 1 1655 1 is_stmt 0 view .LVU840
  6821. 2850 003a 10BD pop {r4, pc}
  6822. 2851 .LVL215:
  6823. 2852 .L178:
  6824. 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6825. 2853 .loc 1 1637 9 is_stmt 1 view .LVU841
  6826. 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6827. 2854 .loc 1 1637 13 is_stmt 0 view .LVU842
  6828. 2855 003c 206B ldr r0, [r4, #48]
  6829. 2856 003e FFF7FEFF bl HAL_DMA_GetError
  6830. 2857 .LVL216:
  6831. 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6832. 2858 .loc 1 1637 12 view .LVU843
  6833. 2859 0042 2028 cmp r0, #32
  6834. 2860 0044 F4D1 bne .L175
  6835. 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6836. 2861 .loc 1 1640 11 is_stmt 1 view .LVU844
  6837. 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6838. 2862 .loc 1 1640 28 is_stmt 0 view .LVU845
  6839. 2863 0046 1023 movs r3, #16
  6840. 2864 0048 E363 str r3, [r4, #60]
  6841. 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6842. 2865 .loc 1 1642 11 is_stmt 1 view .LVU846
  6843. 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6844. 2866 .loc 1 1642 18 is_stmt 0 view .LVU847
  6845. ARM GAS /tmp/ccGtkZvD.s page 119
  6846. 2867 004a 0320 movs r0, #3
  6847. 2868 004c F5E7 b .L176
  6848. 2869 .cfi_endproc
  6849. 2870 .LFE147:
  6850. 2872 .section .text.HAL_UART_AbortReceive,"ax",%progbits
  6851. 2873 .align 1
  6852. 2874 .global HAL_UART_AbortReceive
  6853. 2875 .syntax unified
  6854. 2876 .thumb
  6855. 2877 .thumb_func
  6856. 2879 HAL_UART_AbortReceive:
  6857. 2880 .LVL217:
  6858. 2881 .LFB148:
  6859. 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  6860. 2882 .loc 1 1670 1 is_stmt 1 view -0
  6861. 2883 .cfi_startproc
  6862. 2884 @ args = 0, pretend = 0, frame = 0
  6863. 2885 @ frame_needed = 0, uses_anonymous_args = 0
  6864. 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  6865. 2886 .loc 1 1670 1 is_stmt 0 view .LVU849
  6866. 2887 0000 10B5 push {r4, lr}
  6867. 2888 .LCFI30:
  6868. 2889 .cfi_def_cfa_offset 8
  6869. 2890 .cfi_offset 4, -8
  6870. 2891 .cfi_offset 14, -4
  6871. 2892 0002 0446 mov r4, r0
  6872. 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  6873. 2893 .loc 1 1672 3 is_stmt 1 view .LVU850
  6874. 2894 0004 0268 ldr r2, [r0]
  6875. 2895 0006 D368 ldr r3, [r2, #12]
  6876. 2896 0008 23F49073 bic r3, r3, #288
  6877. 2897 000c D360 str r3, [r2, #12]
  6878. 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6879. 2898 .loc 1 1673 3 view .LVU851
  6880. 2899 000e 0268 ldr r2, [r0]
  6881. 2900 0010 5369 ldr r3, [r2, #20]
  6882. 2901 0012 23F00103 bic r3, r3, #1
  6883. 2902 0016 5361 str r3, [r2, #20]
  6884. 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6885. 2903 .loc 1 1676 3 view .LVU852
  6886. 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6887. 2904 .loc 1 1676 7 is_stmt 0 view .LVU853
  6888. 2905 0018 0368 ldr r3, [r0]
  6889. 2906 001a 5A69 ldr r2, [r3, #20]
  6890. 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6891. 2907 .loc 1 1676 6 view .LVU854
  6892. 2908 001c 12F0400F tst r2, #64
  6893. 2909 0020 0BD0 beq .L180
  6894. 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6895. 2910 .loc 1 1678 5 is_stmt 1 view .LVU855
  6896. 2911 0022 5A69 ldr r2, [r3, #20]
  6897. 2912 0024 22F04002 bic r2, r2, #64
  6898. 2913 0028 5A61 str r2, [r3, #20]
  6899. 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6900. 2914 .loc 1 1681 5 view .LVU856
  6901. 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6902. 2915 .loc 1 1681 14 is_stmt 0 view .LVU857
  6903. ARM GAS /tmp/ccGtkZvD.s page 120
  6904. 2916 002a 436B ldr r3, [r0, #52]
  6905. 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6906. 2917 .loc 1 1681 8 view .LVU858
  6907. 2918 002c 2BB1 cbz r3, .L180
  6908. 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6909. 2919 .loc 1 1685 7 is_stmt 1 view .LVU859
  6910. 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6911. 2920 .loc 1 1685 40 is_stmt 0 view .LVU860
  6912. 2921 002e 0022 movs r2, #0
  6913. 2922 0030 1A65 str r2, [r3, #80]
  6914. 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6915. 2923 .loc 1 1687 7 is_stmt 1 view .LVU861
  6916. 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6917. 2924 .loc 1 1687 11 is_stmt 0 view .LVU862
  6918. 2925 0032 406B ldr r0, [r0, #52]
  6919. 2926 .LVL218:
  6920. 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6921. 2927 .loc 1 1687 11 view .LVU863
  6922. 2928 0034 FFF7FEFF bl HAL_DMA_Abort
  6923. 2929 .LVL219:
  6924. 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6925. 2930 .loc 1 1687 10 view .LVU864
  6926. 2931 0038 28B9 cbnz r0, .L183
  6927. 2932 .L180:
  6928. 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6929. 2933 .loc 1 1701 3 is_stmt 1 view .LVU865
  6930. 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6931. 2934 .loc 1 1701 22 is_stmt 0 view .LVU866
  6932. 2935 003a 0020 movs r0, #0
  6933. 2936 003c E085 strh r0, [r4, #46] @ movhi
  6934. 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6935. 2937 .loc 1 1704 3 is_stmt 1 view .LVU867
  6936. 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6937. 2938 .loc 1 1704 18 is_stmt 0 view .LVU868
  6938. 2939 003e 2023 movs r3, #32
  6939. 2940 0040 84F83A30 strb r3, [r4, #58]
  6940. 1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6941. 2941 .loc 1 1706 3 is_stmt 1 view .LVU869
  6942. 2942 .L181:
  6943. 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6944. 2943 .loc 1 1707 1 is_stmt 0 view .LVU870
  6945. 2944 0044 10BD pop {r4, pc}
  6946. 2945 .LVL220:
  6947. 2946 .L183:
  6948. 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6949. 2947 .loc 1 1689 9 is_stmt 1 view .LVU871
  6950. 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6951. 2948 .loc 1 1689 13 is_stmt 0 view .LVU872
  6952. 2949 0046 606B ldr r0, [r4, #52]
  6953. 2950 0048 FFF7FEFF bl HAL_DMA_GetError
  6954. 2951 .LVL221:
  6955. 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  6956. 2952 .loc 1 1689 12 view .LVU873
  6957. 2953 004c 2028 cmp r0, #32
  6958. 2954 004e F4D1 bne .L180
  6959. 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6960. 2955 .loc 1 1692 11 is_stmt 1 view .LVU874
  6961. ARM GAS /tmp/ccGtkZvD.s page 121
  6962. 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6963. 2956 .loc 1 1692 28 is_stmt 0 view .LVU875
  6964. 2957 0050 1023 movs r3, #16
  6965. 2958 0052 E363 str r3, [r4, #60]
  6966. 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6967. 2959 .loc 1 1694 11 is_stmt 1 view .LVU876
  6968. 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  6969. 2960 .loc 1 1694 18 is_stmt 0 view .LVU877
  6970. 2961 0054 0320 movs r0, #3
  6971. 2962 0056 F5E7 b .L181
  6972. 2963 .cfi_endproc
  6973. 2964 .LFE148:
  6974. 2966 .section .text.HAL_UART_TxCpltCallback,"ax",%progbits
  6975. 2967 .align 1
  6976. 2968 .weak HAL_UART_TxCpltCallback
  6977. 2969 .syntax unified
  6978. 2970 .thumb
  6979. 2971 .thumb_func
  6980. 2973 HAL_UART_TxCpltCallback:
  6981. 2974 .LVL222:
  6982. 2975 .LFB153:
  6983. 2145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  6984. 2976 .loc 1 2145 1 is_stmt 1 view -0
  6985. 2977 .cfi_startproc
  6986. 2978 @ args = 0, pretend = 0, frame = 0
  6987. 2979 @ frame_needed = 0, uses_anonymous_args = 0
  6988. 2980 @ link register save eliminated.
  6989. 2147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  6990. 2981 .loc 1 2147 3 view .LVU879
  6991. 2151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  6992. 2982 .loc 1 2151 1 is_stmt 0 view .LVU880
  6993. 2983 0000 7047 bx lr
  6994. 2984 .cfi_endproc
  6995. 2985 .LFE153:
  6996. 2987 .section .text.UART_DMATransmitCplt,"ax",%progbits
  6997. 2988 .align 1
  6998. 2989 .syntax unified
  6999. 2990 .thumb
  7000. 2991 .thumb_func
  7001. 2993 UART_DMATransmitCplt:
  7002. 2994 .LVL223:
  7003. 2995 .LFB168:
  7004. 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7005. 2996 .loc 1 2520 1 is_stmt 1 view -0
  7006. 2997 .cfi_startproc
  7007. 2998 @ args = 0, pretend = 0, frame = 0
  7008. 2999 @ frame_needed = 0, uses_anonymous_args = 0
  7009. 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7010. 3000 .loc 1 2520 1 is_stmt 0 view .LVU882
  7011. 3001 0000 08B5 push {r3, lr}
  7012. 3002 .LCFI31:
  7013. 3003 .cfi_def_cfa_offset 8
  7014. 3004 .cfi_offset 3, -8
  7015. 3005 .cfi_offset 14, -4
  7016. 3006 0002 0346 mov r3, r0
  7017. 2521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  7018. 3007 .loc 1 2521 3 is_stmt 1 view .LVU883
  7019. ARM GAS /tmp/ccGtkZvD.s page 122
  7020. 2521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  7021. 3008 .loc 1 2521 23 is_stmt 0 view .LVU884
  7022. 3009 0004 806B ldr r0, [r0, #56]
  7023. 3010 .LVL224:
  7024. 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7025. 3011 .loc 1 2523 3 is_stmt 1 view .LVU885
  7026. 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7027. 3012 .loc 1 2523 12 is_stmt 0 view .LVU886
  7028. 3013 0006 1B68 ldr r3, [r3]
  7029. 3014 .LVL225:
  7030. 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7031. 3015 .loc 1 2523 22 view .LVU887
  7032. 3016 0008 1B68 ldr r3, [r3]
  7033. 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7034. 3017 .loc 1 2523 6 view .LVU888
  7035. 3018 000a 13F4807F tst r3, #256
  7036. 3019 000e 0CD1 bne .L186
  7037. 2525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7038. 3020 .loc 1 2525 5 is_stmt 1 view .LVU889
  7039. 2525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7040. 3021 .loc 1 2525 24 is_stmt 0 view .LVU890
  7041. 3022 0010 0023 movs r3, #0
  7042. 3023 0012 C384 strh r3, [r0, #38] @ movhi
  7043. 2529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7044. 3024 .loc 1 2529 5 is_stmt 1 view .LVU891
  7045. 3025 0014 0268 ldr r2, [r0]
  7046. 3026 0016 5369 ldr r3, [r2, #20]
  7047. 3027 0018 23F08003 bic r3, r3, #128
  7048. 3028 001c 5361 str r3, [r2, #20]
  7049. 2532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7050. 3029 .loc 1 2532 5 view .LVU892
  7051. 3030 001e 0268 ldr r2, [r0]
  7052. 3031 0020 D368 ldr r3, [r2, #12]
  7053. 3032 0022 43F04003 orr r3, r3, #64
  7054. 3033 0026 D360 str r3, [r2, #12]
  7055. 3034 .LVL226:
  7056. 3035 .L185:
  7057. 2546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7058. 3036 .loc 1 2546 1 is_stmt 0 view .LVU893
  7059. 3037 0028 08BD pop {r3, pc}
  7060. 3038 .LVL227:
  7061. 3039 .L186:
  7062. 2543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7063. 3040 .loc 1 2543 5 is_stmt 1 view .LVU894
  7064. 3041 002a FFF7FEFF bl HAL_UART_TxCpltCallback
  7065. 3042 .LVL228:
  7066. 2546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7067. 3043 .loc 1 2546 1 is_stmt 0 view .LVU895
  7068. 3044 002e FBE7 b .L185
  7069. 3045 .cfi_endproc
  7070. 3046 .LFE168:
  7071. 3048 .section .text.UART_EndTransmit_IT,"ax",%progbits
  7072. 3049 .align 1
  7073. 3050 .syntax unified
  7074. 3051 .thumb
  7075. 3052 .thumb_func
  7076. 3054 UART_EndTransmit_IT:
  7077. ARM GAS /tmp/ccGtkZvD.s page 123
  7078. 3055 .LVL229:
  7079. 3056 .LFB182:
  7080. 2945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
  7081. 3057 .loc 1 2945 1 is_stmt 1 view -0
  7082. 3058 .cfi_startproc
  7083. 3059 @ args = 0, pretend = 0, frame = 0
  7084. 3060 @ frame_needed = 0, uses_anonymous_args = 0
  7085. 2945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
  7086. 3061 .loc 1 2945 1 is_stmt 0 view .LVU897
  7087. 3062 0000 08B5 push {r3, lr}
  7088. 3063 .LCFI32:
  7089. 3064 .cfi_def_cfa_offset 8
  7090. 3065 .cfi_offset 3, -8
  7091. 3066 .cfi_offset 14, -4
  7092. 2947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7093. 3067 .loc 1 2947 3 is_stmt 1 view .LVU898
  7094. 3068 0002 0168 ldr r1, [r0]
  7095. 3069 0004 CA68 ldr r2, [r1, #12]
  7096. 3070 0006 22F04002 bic r2, r2, #64
  7097. 3071 000a CA60 str r2, [r1, #12]
  7098. 2950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7099. 3072 .loc 1 2950 3 view .LVU899
  7100. 2950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7101. 3073 .loc 1 2950 17 is_stmt 0 view .LVU900
  7102. 3074 000c 2022 movs r2, #32
  7103. 3075 000e 80F83920 strb r2, [r0, #57]
  7104. 2957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7105. 3076 .loc 1 2957 3 is_stmt 1 view .LVU901
  7106. 3077 0012 FFF7FEFF bl HAL_UART_TxCpltCallback
  7107. 3078 .LVL230:
  7108. 2960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7109. 3079 .loc 1 2960 3 view .LVU902
  7110. 2961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7111. 3080 .loc 1 2961 1 is_stmt 0 view .LVU903
  7112. 3081 0016 0020 movs r0, #0
  7113. 3082 0018 08BD pop {r3, pc}
  7114. 3083 .cfi_endproc
  7115. 3084 .LFE182:
  7116. 3086 .section .text.HAL_UART_TxHalfCpltCallback,"ax",%progbits
  7117. 3087 .align 1
  7118. 3088 .weak HAL_UART_TxHalfCpltCallback
  7119. 3089 .syntax unified
  7120. 3090 .thumb
  7121. 3091 .thumb_func
  7122. 3093 HAL_UART_TxHalfCpltCallback:
  7123. 3094 .LVL231:
  7124. 3095 .LFB154:
  7125. 2160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  7126. 3096 .loc 1 2160 1 is_stmt 1 view -0
  7127. 3097 .cfi_startproc
  7128. 3098 @ args = 0, pretend = 0, frame = 0
  7129. 3099 @ frame_needed = 0, uses_anonymous_args = 0
  7130. 3100 @ link register save eliminated.
  7131. 2162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  7132. 3101 .loc 1 2162 3 view .LVU905
  7133. 2166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7134. 3102 .loc 1 2166 1 is_stmt 0 view .LVU906
  7135. ARM GAS /tmp/ccGtkZvD.s page 124
  7136. 3103 0000 7047 bx lr
  7137. 3104 .cfi_endproc
  7138. 3105 .LFE154:
  7139. 3107 .section .text.UART_DMATxHalfCplt,"ax",%progbits
  7140. 3108 .align 1
  7141. 3109 .syntax unified
  7142. 3110 .thumb
  7143. 3111 .thumb_func
  7144. 3113 UART_DMATxHalfCplt:
  7145. 3114 .LVL232:
  7146. 3115 .LFB169:
  7147. 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7148. 3116 .loc 1 2555 1 is_stmt 1 view -0
  7149. 3117 .cfi_startproc
  7150. 3118 @ args = 0, pretend = 0, frame = 0
  7151. 3119 @ frame_needed = 0, uses_anonymous_args = 0
  7152. 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7153. 3120 .loc 1 2555 1 is_stmt 0 view .LVU908
  7154. 3121 0000 08B5 push {r3, lr}
  7155. 3122 .LCFI33:
  7156. 3123 .cfi_def_cfa_offset 8
  7157. 3124 .cfi_offset 3, -8
  7158. 3125 .cfi_offset 14, -4
  7159. 2556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7160. 3126 .loc 1 2556 3 is_stmt 1 view .LVU909
  7161. 3127 .LVL233:
  7162. 2563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7163. 3128 .loc 1 2563 3 view .LVU910
  7164. 3129 0002 806B ldr r0, [r0, #56]
  7165. 3130 .LVL234:
  7166. 2563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7167. 3131 .loc 1 2563 3 is_stmt 0 view .LVU911
  7168. 3132 0004 FFF7FEFF bl HAL_UART_TxHalfCpltCallback
  7169. 3133 .LVL235:
  7170. 2565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7171. 3134 .loc 1 2565 1 view .LVU912
  7172. 3135 0008 08BD pop {r3, pc}
  7173. 3136 .cfi_endproc
  7174. 3137 .LFE169:
  7175. 3139 .section .text.HAL_UART_RxCpltCallback,"ax",%progbits
  7176. 3140 .align 1
  7177. 3141 .weak HAL_UART_RxCpltCallback
  7178. 3142 .syntax unified
  7179. 3143 .thumb
  7180. 3144 .thumb_func
  7181. 3146 HAL_UART_RxCpltCallback:
  7182. 3147 .LVL236:
  7183. 3148 .LFB155:
  7184. 2175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  7185. 3149 .loc 1 2175 1 is_stmt 1 view -0
  7186. 3150 .cfi_startproc
  7187. 3151 @ args = 0, pretend = 0, frame = 0
  7188. 3152 @ frame_needed = 0, uses_anonymous_args = 0
  7189. 3153 @ link register save eliminated.
  7190. 2177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  7191. 3154 .loc 1 2177 3 view .LVU914
  7192. 2181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7193. ARM GAS /tmp/ccGtkZvD.s page 125
  7194. 3155 .loc 1 2181 1 is_stmt 0 view .LVU915
  7195. 3156 0000 7047 bx lr
  7196. 3157 .cfi_endproc
  7197. 3158 .LFE155:
  7198. 3160 .section .text.UART_DMAReceiveCplt,"ax",%progbits
  7199. 3161 .align 1
  7200. 3162 .syntax unified
  7201. 3163 .thumb
  7202. 3164 .thumb_func
  7203. 3166 UART_DMAReceiveCplt:
  7204. 3167 .LVL237:
  7205. 3168 .LFB170:
  7206. 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7207. 3169 .loc 1 2574 1 is_stmt 1 view -0
  7208. 3170 .cfi_startproc
  7209. 3171 @ args = 0, pretend = 0, frame = 0
  7210. 3172 @ frame_needed = 0, uses_anonymous_args = 0
  7211. 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7212. 3173 .loc 1 2574 1 is_stmt 0 view .LVU917
  7213. 3174 0000 08B5 push {r3, lr}
  7214. 3175 .LCFI34:
  7215. 3176 .cfi_def_cfa_offset 8
  7216. 3177 .cfi_offset 3, -8
  7217. 3178 .cfi_offset 14, -4
  7218. 3179 0002 0346 mov r3, r0
  7219. 2575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  7220. 3180 .loc 1 2575 3 is_stmt 1 view .LVU918
  7221. 2575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
  7222. 3181 .loc 1 2575 23 is_stmt 0 view .LVU919
  7223. 3182 0004 806B ldr r0, [r0, #56]
  7224. 3183 .LVL238:
  7225. 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7226. 3184 .loc 1 2577 3 is_stmt 1 view .LVU920
  7227. 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7228. 3185 .loc 1 2577 12 is_stmt 0 view .LVU921
  7229. 3186 0006 1B68 ldr r3, [r3]
  7230. 3187 .LVL239:
  7231. 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7232. 3188 .loc 1 2577 22 view .LVU922
  7233. 3189 0008 1B68 ldr r3, [r3]
  7234. 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7235. 3190 .loc 1 2577 6 view .LVU923
  7236. 3191 000a 13F4807F tst r3, #256
  7237. 3192 000e 13D1 bne .L196
  7238. 2579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7239. 3193 .loc 1 2579 5 is_stmt 1 view .LVU924
  7240. 2579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7241. 3194 .loc 1 2579 24 is_stmt 0 view .LVU925
  7242. 3195 0010 0023 movs r3, #0
  7243. 3196 0012 C385 strh r3, [r0, #46] @ movhi
  7244. 2582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  7245. 3197 .loc 1 2582 5 is_stmt 1 view .LVU926
  7246. 3198 0014 0268 ldr r2, [r0]
  7247. 3199 0016 D368 ldr r3, [r2, #12]
  7248. 3200 0018 23F48073 bic r3, r3, #256
  7249. 3201 001c D360 str r3, [r2, #12]
  7250. 2583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7251. ARM GAS /tmp/ccGtkZvD.s page 126
  7252. 3202 .loc 1 2583 5 view .LVU927
  7253. 3203 001e 0268 ldr r2, [r0]
  7254. 3204 0020 5369 ldr r3, [r2, #20]
  7255. 3205 0022 23F00103 bic r3, r3, #1
  7256. 3206 0026 5361 str r3, [r2, #20]
  7257. 2587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7258. 3207 .loc 1 2587 5 view .LVU928
  7259. 3208 0028 0268 ldr r2, [r0]
  7260. 3209 002a 5369 ldr r3, [r2, #20]
  7261. 3210 002c 23F04003 bic r3, r3, #64
  7262. 3211 0030 5361 str r3, [r2, #20]
  7263. 2590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7264. 3212 .loc 1 2590 5 view .LVU929
  7265. 2590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7266. 3213 .loc 1 2590 20 is_stmt 0 view .LVU930
  7267. 3214 0032 2023 movs r3, #32
  7268. 3215 0034 80F83A30 strb r3, [r0, #58]
  7269. 3216 .L196:
  7270. 2597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7271. 3217 .loc 1 2597 3 is_stmt 1 view .LVU931
  7272. 3218 0038 FFF7FEFF bl HAL_UART_RxCpltCallback
  7273. 3219 .LVL240:
  7274. 2599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7275. 3220 .loc 1 2599 1 is_stmt 0 view .LVU932
  7276. 3221 003c 08BD pop {r3, pc}
  7277. 3222 .cfi_endproc
  7278. 3223 .LFE170:
  7279. 3225 .section .text.UART_Receive_IT,"ax",%progbits
  7280. 3226 .align 1
  7281. 3227 .syntax unified
  7282. 3228 .thumb
  7283. 3229 .thumb_func
  7284. 3231 UART_Receive_IT:
  7285. 3232 .LVL241:
  7286. 3233 .LFB183:
  7287. 2970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  7288. 3234 .loc 1 2970 1 is_stmt 1 view -0
  7289. 3235 .cfi_startproc
  7290. 3236 @ args = 0, pretend = 0, frame = 0
  7291. 3237 @ frame_needed = 0, uses_anonymous_args = 0
  7292. 2970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
  7293. 3238 .loc 1 2970 1 is_stmt 0 view .LVU934
  7294. 3239 0000 08B5 push {r3, lr}
  7295. 3240 .LCFI35:
  7296. 3241 .cfi_def_cfa_offset 8
  7297. 3242 .cfi_offset 3, -8
  7298. 3243 .cfi_offset 14, -4
  7299. 2971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7300. 3244 .loc 1 2971 3 is_stmt 1 view .LVU935
  7301. 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7302. 3245 .loc 1 2974 3 view .LVU936
  7303. 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7304. 3246 .loc 1 2974 12 is_stmt 0 view .LVU937
  7305. 3247 0002 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
  7306. 3248 0006 DBB2 uxtb r3, r3
  7307. 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7308. 3249 .loc 1 2974 6 view .LVU938
  7309. ARM GAS /tmp/ccGtkZvD.s page 127
  7310. 3250 0008 222B cmp r3, #34
  7311. 3251 000a 46D1 bne .L204
  7312. 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7313. 3252 .loc 1 2976 5 is_stmt 1 view .LVU939
  7314. 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7315. 3253 .loc 1 2976 20 is_stmt 0 view .LVU940
  7316. 3254 000c 8368 ldr r3, [r0, #8]
  7317. 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7318. 3255 .loc 1 2976 8 view .LVU941
  7319. 3256 000e B3F5805F cmp r3, #4096
  7320. 3257 0012 0FD0 beq .L207
  7321. 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7322. 3258 .loc 1 2992 7 is_stmt 1 view .LVU942
  7323. 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7324. 3259 .loc 1 2992 22 is_stmt 0 view .LVU943
  7325. 3260 0014 0369 ldr r3, [r0, #16]
  7326. 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7327. 3261 .loc 1 2992 10 view .LVU944
  7328. 3262 0016 0BBB cbnz r3, .L203
  7329. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7330. 3263 .loc 1 2994 9 is_stmt 1 view .LVU945
  7331. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7332. 3264 .loc 1 2994 47 is_stmt 0 view .LVU946
  7333. 3265 0018 0368 ldr r3, [r0]
  7334. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7335. 3266 .loc 1 2994 57 view .LVU947
  7336. 3267 001a 5A68 ldr r2, [r3, #4]
  7337. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7338. 3268 .loc 1 2994 15 view .LVU948
  7339. 3269 001c 836A ldr r3, [r0, #40]
  7340. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7341. 3270 .loc 1 2994 27 view .LVU949
  7342. 3271 001e 591C adds r1, r3, #1
  7343. 3272 0020 8162 str r1, [r0, #40]
  7344. 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7345. 3273 .loc 1 2994 30 view .LVU950
  7346. 3274 0022 1A70 strb r2, [r3]
  7347. 3275 .L202:
  7348. 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7349. 3276 .loc 1 3002 5 is_stmt 1 view .LVU951
  7350. 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7351. 3277 .loc 1 3002 16 is_stmt 0 view .LVU952
  7352. 3278 0024 C38D ldrh r3, [r0, #46]
  7353. 3279 0026 9BB2 uxth r3, r3
  7354. 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7355. 3280 .loc 1 3002 9 view .LVU953
  7356. 3281 0028 013B subs r3, r3, #1
  7357. 3282 002a 9BB2 uxth r3, r3
  7358. 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7359. 3283 .loc 1 3002 8 view .LVU954
  7360. 3284 002c C385 strh r3, [r0, #46] @ movhi
  7361. 3285 002e F3B1 cbz r3, .L208
  7362. 3026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7363. 3286 .loc 1 3026 12 view .LVU955
  7364. 3287 0030 0020 movs r0, #0
  7365. 3288 .LVL242:
  7366. 3289 .L199:
  7367. ARM GAS /tmp/ccGtkZvD.s page 128
  7368. 3032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7369. 3290 .loc 1 3032 1 view .LVU956
  7370. 3291 0032 08BD pop {r3, pc}
  7371. 3292 .LVL243:
  7372. 3293 .L207:
  7373. 2978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  7374. 3294 .loc 1 2978 7 is_stmt 1 view .LVU957
  7375. 2978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
  7376. 3295 .loc 1 2978 11 is_stmt 0 view .LVU958
  7377. 3296 0034 826A ldr r2, [r0, #40]
  7378. 3297 .LVL244:
  7379. 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7380. 3298 .loc 1 2979 7 is_stmt 1 view .LVU959
  7381. 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7382. 3299 .loc 1 2979 22 is_stmt 0 view .LVU960
  7383. 3300 0036 0369 ldr r3, [r0, #16]
  7384. 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7385. 3301 .loc 1 2979 10 view .LVU961
  7386. 3302 0038 43B9 cbnz r3, .L201
  7387. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  7388. 3303 .loc 1 2981 9 is_stmt 1 view .LVU962
  7389. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  7390. 3304 .loc 1 2981 32 is_stmt 0 view .LVU963
  7391. 3305 003a 0368 ldr r3, [r0]
  7392. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  7393. 3306 .loc 1 2981 42 view .LVU964
  7394. 3307 003c 5B68 ldr r3, [r3, #4]
  7395. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  7396. 3308 .loc 1 2981 16 view .LVU965
  7397. 3309 003e C3F30803 ubfx r3, r3, #0, #9
  7398. 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
  7399. 3310 .loc 1 2981 14 view .LVU966
  7400. 3311 0042 1380 strh r3, [r2] @ movhi
  7401. 2982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7402. 3312 .loc 1 2982 9 is_stmt 1 view .LVU967
  7403. 2982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7404. 3313 .loc 1 2982 27 is_stmt 0 view .LVU968
  7405. 3314 0044 836A ldr r3, [r0, #40]
  7406. 3315 0046 0233 adds r3, r3, #2
  7407. 3316 0048 8362 str r3, [r0, #40]
  7408. 3317 004a EBE7 b .L202
  7409. 3318 .L201:
  7410. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  7411. 3319 .loc 1 2986 9 is_stmt 1 view .LVU969
  7412. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  7413. 3320 .loc 1 2986 32 is_stmt 0 view .LVU970
  7414. 3321 004c 0368 ldr r3, [r0]
  7415. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  7416. 3322 .loc 1 2986 42 view .LVU971
  7417. 3323 004e 5B68 ldr r3, [r3, #4]
  7418. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  7419. 3324 .loc 1 2986 16 view .LVU972
  7420. 3325 0050 DBB2 uxtb r3, r3
  7421. 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
  7422. 3326 .loc 1 2986 14 view .LVU973
  7423. 3327 0052 1380 strh r3, [r2] @ movhi
  7424. 2987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7425. ARM GAS /tmp/ccGtkZvD.s page 129
  7426. 3328 .loc 1 2987 9 is_stmt 1 view .LVU974
  7427. 2987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7428. 3329 .loc 1 2987 27 is_stmt 0 view .LVU975
  7429. 3330 0054 836A ldr r3, [r0, #40]
  7430. 3331 0056 0133 adds r3, r3, #1
  7431. 3332 0058 8362 str r3, [r0, #40]
  7432. 3333 005a E3E7 b .L202
  7433. 3334 .LVL245:
  7434. 3335 .L203:
  7435. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7436. 3336 .loc 1 2998 9 is_stmt 1 view .LVU976
  7437. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7438. 3337 .loc 1 2998 47 is_stmt 0 view .LVU977
  7439. 3338 005c 0368 ldr r3, [r0]
  7440. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7441. 3339 .loc 1 2998 57 view .LVU978
  7442. 3340 005e 5B68 ldr r3, [r3, #4]
  7443. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7444. 3341 .loc 1 2998 15 view .LVU979
  7445. 3342 0060 826A ldr r2, [r0, #40]
  7446. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7447. 3343 .loc 1 2998 27 view .LVU980
  7448. 3344 0062 511C adds r1, r2, #1
  7449. 3345 0064 8162 str r1, [r0, #40]
  7450. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7451. 3346 .loc 1 2998 32 view .LVU981
  7452. 3347 0066 03F07F03 and r3, r3, #127
  7453. 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7454. 3348 .loc 1 2998 30 view .LVU982
  7455. 3349 006a 1370 strb r3, [r2]
  7456. 3350 006c DAE7 b .L202
  7457. 3351 .L208:
  7458. 3005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7459. 3352 .loc 1 3005 7 is_stmt 1 view .LVU983
  7460. 3353 006e 0268 ldr r2, [r0]
  7461. 3354 0070 D368 ldr r3, [r2, #12]
  7462. 3355 0072 23F02003 bic r3, r3, #32
  7463. 3356 0076 D360 str r3, [r2, #12]
  7464. 3008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7465. 3357 .loc 1 3008 7 view .LVU984
  7466. 3358 0078 0268 ldr r2, [r0]
  7467. 3359 007a D368 ldr r3, [r2, #12]
  7468. 3360 007c 23F48073 bic r3, r3, #256
  7469. 3361 0080 D360 str r3, [r2, #12]
  7470. 3011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7471. 3362 .loc 1 3011 7 view .LVU985
  7472. 3363 0082 0268 ldr r2, [r0]
  7473. 3364 0084 5369 ldr r3, [r2, #20]
  7474. 3365 0086 23F00103 bic r3, r3, #1
  7475. 3366 008a 5361 str r3, [r2, #20]
  7476. 3014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7477. 3367 .loc 1 3014 7 view .LVU986
  7478. 3014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7479. 3368 .loc 1 3014 22 is_stmt 0 view .LVU987
  7480. 3369 008c 2023 movs r3, #32
  7481. 3370 008e 80F83A30 strb r3, [r0, #58]
  7482. 3021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7483. ARM GAS /tmp/ccGtkZvD.s page 130
  7484. 3371 .loc 1 3021 7 is_stmt 1 view .LVU988
  7485. 3372 0092 FFF7FEFF bl HAL_UART_RxCpltCallback
  7486. 3373 .LVL246:
  7487. 3024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7488. 3374 .loc 1 3024 7 view .LVU989
  7489. 3024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7490. 3375 .loc 1 3024 14 is_stmt 0 view .LVU990
  7491. 3376 0096 0020 movs r0, #0
  7492. 3377 0098 CBE7 b .L199
  7493. 3378 .LVL247:
  7494. 3379 .L204:
  7495. 3030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7496. 3380 .loc 1 3030 12 view .LVU991
  7497. 3381 009a 0220 movs r0, #2
  7498. 3382 .LVL248:
  7499. 3030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7500. 3383 .loc 1 3030 12 view .LVU992
  7501. 3384 009c C9E7 b .L199
  7502. 3385 .cfi_endproc
  7503. 3386 .LFE183:
  7504. 3388 .section .text.HAL_UART_RxHalfCpltCallback,"ax",%progbits
  7505. 3389 .align 1
  7506. 3390 .weak HAL_UART_RxHalfCpltCallback
  7507. 3391 .syntax unified
  7508. 3392 .thumb
  7509. 3393 .thumb_func
  7510. 3395 HAL_UART_RxHalfCpltCallback:
  7511. 3396 .LVL249:
  7512. 3397 .LFB156:
  7513. 2190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  7514. 3398 .loc 1 2190 1 is_stmt 1 view -0
  7515. 3399 .cfi_startproc
  7516. 3400 @ args = 0, pretend = 0, frame = 0
  7517. 3401 @ frame_needed = 0, uses_anonymous_args = 0
  7518. 3402 @ link register save eliminated.
  7519. 2192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  7520. 3403 .loc 1 2192 3 view .LVU994
  7521. 2196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7522. 3404 .loc 1 2196 1 is_stmt 0 view .LVU995
  7523. 3405 0000 7047 bx lr
  7524. 3406 .cfi_endproc
  7525. 3407 .LFE156:
  7526. 3409 .section .text.UART_DMARxHalfCplt,"ax",%progbits
  7527. 3410 .align 1
  7528. 3411 .syntax unified
  7529. 3412 .thumb
  7530. 3413 .thumb_func
  7531. 3415 UART_DMARxHalfCplt:
  7532. 3416 .LVL250:
  7533. 3417 .LFB171:
  7534. 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7535. 3418 .loc 1 2608 1 is_stmt 1 view -0
  7536. 3419 .cfi_startproc
  7537. 3420 @ args = 0, pretend = 0, frame = 0
  7538. 3421 @ frame_needed = 0, uses_anonymous_args = 0
  7539. 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7540. 3422 .loc 1 2608 1 is_stmt 0 view .LVU997
  7541. ARM GAS /tmp/ccGtkZvD.s page 131
  7542. 3423 0000 08B5 push {r3, lr}
  7543. 3424 .LCFI36:
  7544. 3425 .cfi_def_cfa_offset 8
  7545. 3426 .cfi_offset 3, -8
  7546. 3427 .cfi_offset 14, -4
  7547. 2609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7548. 3428 .loc 1 2609 3 is_stmt 1 view .LVU998
  7549. 3429 .LVL251:
  7550. 2616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7551. 3430 .loc 1 2616 3 view .LVU999
  7552. 3431 0002 806B ldr r0, [r0, #56]
  7553. 3432 .LVL252:
  7554. 2616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7555. 3433 .loc 1 2616 3 is_stmt 0 view .LVU1000
  7556. 3434 0004 FFF7FEFF bl HAL_UART_RxHalfCpltCallback
  7557. 3435 .LVL253:
  7558. 2618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7559. 3436 .loc 1 2618 1 view .LVU1001
  7560. 3437 0008 08BD pop {r3, pc}
  7561. 3438 .cfi_endproc
  7562. 3439 .LFE171:
  7563. 3441 .section .text.HAL_UART_ErrorCallback,"ax",%progbits
  7564. 3442 .align 1
  7565. 3443 .weak HAL_UART_ErrorCallback
  7566. 3444 .syntax unified
  7567. 3445 .thumb
  7568. 3446 .thumb_func
  7569. 3448 HAL_UART_ErrorCallback:
  7570. 3449 .LVL254:
  7571. 3450 .LFB157:
  7572. 2205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  7573. 3451 .loc 1 2205 1 is_stmt 1 view -0
  7574. 3452 .cfi_startproc
  7575. 3453 @ args = 0, pretend = 0, frame = 0
  7576. 3454 @ frame_needed = 0, uses_anonymous_args = 0
  7577. 3455 @ link register save eliminated.
  7578. 2207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
  7579. 3456 .loc 1 2207 3 view .LVU1003
  7580. 2211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7581. 3457 .loc 1 2211 1 is_stmt 0 view .LVU1004
  7582. 3458 0000 7047 bx lr
  7583. 3459 .cfi_endproc
  7584. 3460 .LFE157:
  7585. 3462 .section .text.UART_DMAError,"ax",%progbits
  7586. 3463 .align 1
  7587. 3464 .syntax unified
  7588. 3465 .thumb
  7589. 3466 .thumb_func
  7590. 3468 UART_DMAError:
  7591. 3469 .LVL255:
  7592. 3470 .LFB172:
  7593. 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  7594. 3471 .loc 1 2627 1 is_stmt 1 view -0
  7595. 3472 .cfi_startproc
  7596. 3473 @ args = 0, pretend = 0, frame = 0
  7597. 3474 @ frame_needed = 0, uses_anonymous_args = 0
  7598. 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  7599. ARM GAS /tmp/ccGtkZvD.s page 132
  7600. 3475 .loc 1 2627 1 is_stmt 0 view .LVU1006
  7601. 3476 0000 10B5 push {r4, lr}
  7602. 3477 .LCFI37:
  7603. 3478 .cfi_def_cfa_offset 8
  7604. 3479 .cfi_offset 4, -8
  7605. 3480 .cfi_offset 14, -4
  7606. 2628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  7607. 3481 .loc 1 2628 3 is_stmt 1 view .LVU1007
  7608. 3482 .LVL256:
  7609. 2629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7610. 3483 .loc 1 2629 3 view .LVU1008
  7611. 2629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7612. 3484 .loc 1 2629 23 is_stmt 0 view .LVU1009
  7613. 3485 0002 846B ldr r4, [r0, #56]
  7614. 3486 .LVL257:
  7615. 2632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  7616. 3487 .loc 1 2632 3 is_stmt 1 view .LVU1010
  7617. 2632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
  7618. 3488 .loc 1 2632 16 is_stmt 0 view .LVU1011
  7619. 3489 0004 2368 ldr r3, [r4]
  7620. 3490 0006 5A69 ldr r2, [r3, #20]
  7621. 3491 .LVL258:
  7622. 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7623. 3492 .loc 1 2633 3 is_stmt 1 view .LVU1012
  7624. 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7625. 3493 .loc 1 2633 13 is_stmt 0 view .LVU1013
  7626. 3494 0008 94F83930 ldrb r3, [r4, #57] @ zero_extendqisi2
  7627. 3495 000c DBB2 uxtb r3, r3
  7628. 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7629. 3496 .loc 1 2633 6 view .LVU1014
  7630. 3497 000e 212B cmp r3, #33
  7631. 3498 0010 10D0 beq .L217
  7632. 3499 .LVL259:
  7633. 3500 .L214:
  7634. 2640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  7635. 3501 .loc 1 2640 3 is_stmt 1 view .LVU1015
  7636. 2640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
  7637. 3502 .loc 1 2640 16 is_stmt 0 view .LVU1016
  7638. 3503 0012 2368 ldr r3, [r4]
  7639. 3504 0014 5A69 ldr r2, [r3, #20]
  7640. 3505 0016 02F04002 and r2, r2, #64
  7641. 3506 .LVL260:
  7642. 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7643. 3507 .loc 1 2641 3 is_stmt 1 view .LVU1017
  7644. 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7645. 3508 .loc 1 2641 13 is_stmt 0 view .LVU1018
  7646. 3509 001a 94F83A30 ldrb r3, [r4, #58] @ zero_extendqisi2
  7647. 3510 001e DBB2 uxtb r3, r3
  7648. 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7649. 3511 .loc 1 2641 6 view .LVU1019
  7650. 3512 0020 222B cmp r3, #34
  7651. 3513 0022 11D0 beq .L218
  7652. 3514 .LVL261:
  7653. 3515 .L215:
  7654. 2647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  7655. 3516 .loc 1 2647 3 is_stmt 1 view .LVU1020
  7656. 2647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
  7657. ARM GAS /tmp/ccGtkZvD.s page 133
  7658. 3517 .loc 1 2647 20 is_stmt 0 view .LVU1021
  7659. 3518 0024 E36B ldr r3, [r4, #60]
  7660. 3519 0026 43F01003 orr r3, r3, #16
  7661. 3520 002a E363 str r3, [r4, #60]
  7662. 2653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  7663. 3521 .loc 1 2653 3 is_stmt 1 view .LVU1022
  7664. 3522 002c 2046 mov r0, r4
  7665. 3523 002e FFF7FEFF bl HAL_UART_ErrorCallback
  7666. 3524 .LVL262:
  7667. 2655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7668. 3525 .loc 1 2655 1 is_stmt 0 view .LVU1023
  7669. 3526 0032 10BD pop {r4, pc}
  7670. 3527 .LVL263:
  7671. 3528 .L217:
  7672. 2655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7673. 3529 .loc 1 2655 1 view .LVU1024
  7674. 3530 0034 02F08002 and r2, r2, #128
  7675. 3531 .LVL264:
  7676. 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7677. 3532 .loc 1 2633 49 discriminator 1 view .LVU1025
  7678. 3533 0038 002A cmp r2, #0
  7679. 3534 003a EAD0 beq .L214
  7680. 2635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
  7681. 3535 .loc 1 2635 5 is_stmt 1 view .LVU1026
  7682. 2635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
  7683. 3536 .loc 1 2635 24 is_stmt 0 view .LVU1027
  7684. 3537 003c 0023 movs r3, #0
  7685. 3538 003e E384 strh r3, [r4, #38] @ movhi
  7686. 2636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7687. 3539 .loc 1 2636 5 is_stmt 1 view .LVU1028
  7688. 3540 0040 2046 mov r0, r4
  7689. 3541 .LVL265:
  7690. 2636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7691. 3542 .loc 1 2636 5 is_stmt 0 view .LVU1029
  7692. 3543 0042 FFF7FEFF bl UART_EndTxTransfer
  7693. 3544 .LVL266:
  7694. 3545 0046 E4E7 b .L214
  7695. 3546 .LVL267:
  7696. 3547 .L218:
  7697. 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7698. 3548 .loc 1 2641 50 discriminator 1 view .LVU1030
  7699. 3549 0048 002A cmp r2, #0
  7700. 3550 004a EBD0 beq .L215
  7701. 2643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
  7702. 3551 .loc 1 2643 5 is_stmt 1 view .LVU1031
  7703. 2643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
  7704. 3552 .loc 1 2643 24 is_stmt 0 view .LVU1032
  7705. 3553 004c 0023 movs r3, #0
  7706. 3554 004e E385 strh r3, [r4, #46] @ movhi
  7707. 2644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7708. 3555 .loc 1 2644 5 is_stmt 1 view .LVU1033
  7709. 3556 0050 2046 mov r0, r4
  7710. 3557 0052 FFF7FEFF bl UART_EndRxTransfer
  7711. 3558 .LVL268:
  7712. 2644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7713. 3559 .loc 1 2644 5 is_stmt 0 view .LVU1034
  7714. 3560 0056 E5E7 b .L215
  7715. ARM GAS /tmp/ccGtkZvD.s page 134
  7716. 3561 .cfi_endproc
  7717. 3562 .LFE172:
  7718. 3564 .section .text.HAL_UART_IRQHandler,"ax",%progbits
  7719. 3565 .align 1
  7720. 3566 .global HAL_UART_IRQHandler
  7721. 3567 .syntax unified
  7722. 3568 .thumb
  7723. 3569 .thumb_func
  7724. 3571 HAL_UART_IRQHandler:
  7725. 3572 .LVL269:
  7726. 3573 .LFB152:
  7727. 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t isrflags = READ_REG(huart->Instance->SR);
  7728. 3574 .loc 1 1999 1 is_stmt 1 view -0
  7729. 3575 .cfi_startproc
  7730. 3576 @ args = 0, pretend = 0, frame = 0
  7731. 3577 @ frame_needed = 0, uses_anonymous_args = 0
  7732. 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t isrflags = READ_REG(huart->Instance->SR);
  7733. 3578 .loc 1 1999 1 is_stmt 0 view .LVU1036
  7734. 3579 0000 10B5 push {r4, lr}
  7735. 3580 .LCFI38:
  7736. 3581 .cfi_def_cfa_offset 8
  7737. 3582 .cfi_offset 4, -8
  7738. 3583 .cfi_offset 14, -4
  7739. 3584 0002 0446 mov r4, r0
  7740. 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
  7741. 3585 .loc 1 2000 3 is_stmt 1 view .LVU1037
  7742. 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
  7743. 3586 .loc 1 2000 25 is_stmt 0 view .LVU1038
  7744. 3587 0004 0268 ldr r2, [r0]
  7745. 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
  7746. 3588 .loc 1 2000 12 view .LVU1039
  7747. 3589 0006 1368 ldr r3, [r2]
  7748. 3590 .LVL270:
  7749. 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr3its = READ_REG(huart->Instance->CR3);
  7750. 3591 .loc 1 2001 3 is_stmt 1 view .LVU1040
  7751. 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr3its = READ_REG(huart->Instance->CR3);
  7752. 3592 .loc 1 2001 12 is_stmt 0 view .LVU1041
  7753. 3593 0008 D168 ldr r1, [r2, #12]
  7754. 3594 .LVL271:
  7755. 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t errorflags = 0x00U;
  7756. 3595 .loc 1 2002 3 is_stmt 1 view .LVU1042
  7757. 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t errorflags = 0x00U;
  7758. 3596 .loc 1 2002 12 is_stmt 0 view .LVU1043
  7759. 3597 000a 5269 ldr r2, [r2, #20]
  7760. 3598 .LVL272:
  7761. 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
  7762. 3599 .loc 1 2003 3 is_stmt 1 view .LVU1044
  7763. 2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7764. 3600 .loc 1 2004 3 view .LVU1045
  7765. 2007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (errorflags == RESET)
  7766. 3601 .loc 1 2007 3 view .LVU1046
  7767. 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7768. 3602 .loc 1 2008 3 view .LVU1047
  7769. 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7770. 3603 .loc 1 2008 6 is_stmt 0 view .LVU1048
  7771. 3604 000c 13F00F00 ands r0, r3, #15
  7772. 3605 .LVL273:
  7773. ARM GAS /tmp/ccGtkZvD.s page 135
  7774. 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7775. 3606 .loc 1 2008 6 view .LVU1049
  7776. 3607 0010 05D1 bne .L220
  7777. 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7778. 3608 .loc 1 2011 5 is_stmt 1 view .LVU1050
  7779. 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7780. 3609 .loc 1 2011 8 is_stmt 0 view .LVU1051
  7781. 3610 0012 13F0200F tst r3, #32
  7782. 3611 0016 02D0 beq .L220
  7783. 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7784. 3612 .loc 1 2011 47 discriminator 1 view .LVU1052
  7785. 3613 0018 11F0200F tst r1, #32
  7786. 3614 001c 13D1 bne .L236
  7787. 3615 .L220:
  7788. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7789. 3616 .loc 1 2019 3 is_stmt 1 view .LVU1053
  7790. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7791. 3617 .loc 1 2019 6 is_stmt 0 view .LVU1054
  7792. 3618 001e 28B1 cbz r0, .L222
  7793. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7794. 3619 .loc 1 2019 29 discriminator 1 view .LVU1055
  7795. 3620 0020 12F00102 ands r2, r2, #1
  7796. 3621 .LVL274:
  7797. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7798. 3622 .loc 1 2019 29 discriminator 1 view .LVU1056
  7799. 3623 0024 13D1 bne .L223
  7800. 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7801. 3624 .loc 1 2019 69 discriminator 2 view .LVU1057
  7802. 3625 0026 11F4907F tst r1, #288
  7803. 3626 002a 10D1 bne .L223
  7804. 3627 .L222:
  7805. 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7806. 3628 .loc 1 2124 3 is_stmt 1 view .LVU1058
  7807. 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7808. 3629 .loc 1 2124 6 is_stmt 0 view .LVU1059
  7809. 3630 002c 13F0800F tst r3, #128
  7810. 3631 0030 02D0 beq .L234
  7811. 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7812. 3632 .loc 1 2124 44 discriminator 1 view .LVU1060
  7813. 3633 0032 11F0800F tst r1, #128
  7814. 3634 0036 69D1 bne .L237
  7815. 3635 .L234:
  7816. 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7817. 3636 .loc 1 2131 3 is_stmt 1 view .LVU1061
  7818. 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7819. 3637 .loc 1 2131 6 is_stmt 0 view .LVU1062
  7820. 3638 0038 13F0400F tst r3, #64
  7821. 3639 003c 02D0 beq .L219
  7822. 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7823. 3640 .loc 1 2131 43 discriminator 1 view .LVU1063
  7824. 3641 003e 11F0400F tst r1, #64
  7825. 3642 0042 67D1 bne .L238
  7826. 3643 .LVL275:
  7827. 3644 .L219:
  7828. 2136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7829. 3645 .loc 1 2136 1 view .LVU1064
  7830. 3646 0044 10BD pop {r4, pc}
  7831. ARM GAS /tmp/ccGtkZvD.s page 136
  7832. 3647 .LVL276:
  7833. 3648 .L236:
  7834. 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  7835. 3649 .loc 1 2013 7 is_stmt 1 view .LVU1065
  7836. 3650 0046 2046 mov r0, r4
  7837. 3651 .LVL277:
  7838. 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  7839. 3652 .loc 1 2013 7 is_stmt 0 view .LVU1066
  7840. 3653 0048 FFF7FEFF bl UART_Receive_IT
  7841. 3654 .LVL278:
  7842. 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7843. 3655 .loc 1 2014 7 is_stmt 1 view .LVU1067
  7844. 3656 004c FAE7 b .L219
  7845. 3657 .LVL279:
  7846. 3658 .L223:
  7847. 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7848. 3659 .loc 1 2022 5 view .LVU1068
  7849. 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7850. 3660 .loc 1 2022 8 is_stmt 0 view .LVU1069
  7851. 3661 004e 13F0010F tst r3, #1
  7852. 3662 0052 06D0 beq .L224
  7853. 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7854. 3663 .loc 1 2022 45 discriminator 1 view .LVU1070
  7855. 3664 0054 11F4807F tst r1, #256
  7856. 3665 0058 03D0 beq .L224
  7857. 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7858. 3666 .loc 1 2024 7 is_stmt 1 view .LVU1071
  7859. 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7860. 3667 .loc 1 2024 24 is_stmt 0 view .LVU1072
  7861. 3668 005a E06B ldr r0, [r4, #60]
  7862. 3669 .LVL280:
  7863. 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7864. 3670 .loc 1 2024 24 view .LVU1073
  7865. 3671 005c 40F00100 orr r0, r0, #1
  7866. 3672 0060 E063 str r0, [r4, #60]
  7867. 3673 .L224:
  7868. 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7869. 3674 .loc 1 2028 5 is_stmt 1 view .LVU1074
  7870. 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7871. 3675 .loc 1 2028 8 is_stmt 0 view .LVU1075
  7872. 3676 0062 13F0040F tst r3, #4
  7873. 3677 0066 04D0 beq .L225
  7874. 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7875. 3678 .loc 1 2028 45 discriminator 1 view .LVU1076
  7876. 3679 0068 1AB1 cbz r2, .L225
  7877. 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7878. 3680 .loc 1 2030 7 is_stmt 1 view .LVU1077
  7879. 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7880. 3681 .loc 1 2030 24 is_stmt 0 view .LVU1078
  7881. 3682 006a E06B ldr r0, [r4, #60]
  7882. 3683 006c 40F00200 orr r0, r0, #2
  7883. 3684 0070 E063 str r0, [r4, #60]
  7884. 3685 .L225:
  7885. 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7886. 3686 .loc 1 2034 5 is_stmt 1 view .LVU1079
  7887. 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7888. 3687 .loc 1 2034 8 is_stmt 0 view .LVU1080
  7889. ARM GAS /tmp/ccGtkZvD.s page 137
  7890. 3688 0072 13F0020F tst r3, #2
  7891. 3689 0076 04D0 beq .L226
  7892. 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7893. 3690 .loc 1 2034 45 discriminator 1 view .LVU1081
  7894. 3691 0078 1AB1 cbz r2, .L226
  7895. 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7896. 3692 .loc 1 2036 7 is_stmt 1 view .LVU1082
  7897. 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7898. 3693 .loc 1 2036 24 is_stmt 0 view .LVU1083
  7899. 3694 007a E06B ldr r0, [r4, #60]
  7900. 3695 007c 40F00400 orr r0, r0, #4
  7901. 3696 0080 E063 str r0, [r4, #60]
  7902. 3697 .L226:
  7903. 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7904. 3698 .loc 1 2040 5 is_stmt 1 view .LVU1084
  7905. 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7906. 3699 .loc 1 2040 8 is_stmt 0 view .LVU1085
  7907. 3700 0082 13F0080F tst r3, #8
  7908. 3701 0086 04D0 beq .L227
  7909. 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7910. 3702 .loc 1 2040 46 discriminator 1 view .LVU1086
  7911. 3703 0088 1AB1 cbz r2, .L227
  7912. 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7913. 3704 .loc 1 2042 7 is_stmt 1 view .LVU1087
  7914. 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  7915. 3705 .loc 1 2042 24 is_stmt 0 view .LVU1088
  7916. 3706 008a E26B ldr r2, [r4, #60]
  7917. 3707 008c 42F00802 orr r2, r2, #8
  7918. 3708 0090 E263 str r2, [r4, #60]
  7919. 3709 .L227:
  7920. 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7921. 3710 .loc 1 2046 5 is_stmt 1 view .LVU1089
  7922. 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7923. 3711 .loc 1 2046 14 is_stmt 0 view .LVU1090
  7924. 3712 0092 E26B ldr r2, [r4, #60]
  7925. 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7926. 3713 .loc 1 2046 8 view .LVU1091
  7927. 3714 0094 002A cmp r2, #0
  7928. 3715 0096 D5D0 beq .L219
  7929. 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7930. 3716 .loc 1 2049 7 is_stmt 1 view .LVU1092
  7931. 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7932. 3717 .loc 1 2049 10 is_stmt 0 view .LVU1093
  7933. 3718 0098 13F0200F tst r3, #32
  7934. 3719 009c 02D0 beq .L229
  7935. 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7936. 3720 .loc 1 2049 49 discriminator 1 view .LVU1094
  7937. 3721 009e 11F0200F tst r1, #32
  7938. 3722 00a2 21D1 bne .L239
  7939. 3723 .LVL281:
  7940. 3724 .L229:
  7941. 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((huart->ErrorCode & HAL_UART_ERROR_ORE) != RESET) || dmarequest)
  7942. 3725 .loc 1 2056 7 is_stmt 1 view .LVU1095
  7943. 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((huart->ErrorCode & HAL_UART_ERROR_ORE) != RESET) || dmarequest)
  7944. 3726 .loc 1 2056 20 is_stmt 0 view .LVU1096
  7945. 3727 00a4 2368 ldr r3, [r4]
  7946. 3728 00a6 5B69 ldr r3, [r3, #20]
  7947. ARM GAS /tmp/ccGtkZvD.s page 138
  7948. 3729 00a8 03F04003 and r3, r3, #64
  7949. 3730 .LVL282:
  7950. 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7951. 3731 .loc 1 2057 7 is_stmt 1 view .LVU1097
  7952. 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7953. 3732 .loc 1 2057 18 is_stmt 0 view .LVU1098
  7954. 3733 00ac E26B ldr r2, [r4, #60]
  7955. 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7956. 3734 .loc 1 2057 10 view .LVU1099
  7957. 3735 00ae 12F0080F tst r2, #8
  7958. 3736 00b2 00D1 bne .L230
  7959. 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7960. 3737 .loc 1 2057 62 discriminator 1 view .LVU1100
  7961. 3738 00b4 23B3 cbz r3, .L231
  7962. 3739 .L230:
  7963. 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7964. 3740 .loc 1 2062 9 is_stmt 1 view .LVU1101
  7965. 3741 00b6 2046 mov r0, r4
  7966. 3742 00b8 FFF7FEFF bl UART_EndRxTransfer
  7967. 3743 .LVL283:
  7968. 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7969. 3744 .loc 1 2065 9 view .LVU1102
  7970. 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7971. 3745 .loc 1 2065 13 is_stmt 0 view .LVU1103
  7972. 3746 00bc 2368 ldr r3, [r4]
  7973. 3747 00be 5A69 ldr r2, [r3, #20]
  7974. 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7975. 3748 .loc 1 2065 12 view .LVU1104
  7976. 3749 00c0 12F0400F tst r2, #64
  7977. 3750 00c4 18D0 beq .L232
  7978. 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  7979. 3751 .loc 1 2067 11 is_stmt 1 view .LVU1105
  7980. 3752 00c6 5A69 ldr r2, [r3, #20]
  7981. 3753 00c8 22F04002 bic r2, r2, #64
  7982. 3754 00cc 5A61 str r2, [r3, #20]
  7983. 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7984. 3755 .loc 1 2070 11 view .LVU1106
  7985. 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7986. 3756 .loc 1 2070 20 is_stmt 0 view .LVU1107
  7987. 3757 00ce 636B ldr r3, [r4, #52]
  7988. 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7989. 3758 .loc 1 2070 14 view .LVU1108
  7990. 3759 00d0 73B1 cbz r3, .L233
  7991. 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
  7992. 3760 .loc 1 2074 13 is_stmt 1 view .LVU1109
  7993. 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
  7994. 3761 .loc 1 2074 46 is_stmt 0 view .LVU1110
  7995. 3762 00d2 124A ldr r2, .L240
  7996. 3763 00d4 1A65 str r2, [r3, #80]
  7997. 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  7998. 3764 .loc 1 2075 13 is_stmt 1 view .LVU1111
  7999. 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8000. 3765 .loc 1 2075 17 is_stmt 0 view .LVU1112
  8001. 3766 00d6 606B ldr r0, [r4, #52]
  8002. 3767 00d8 FFF7FEFF bl HAL_DMA_Abort_IT
  8003. 3768 .LVL284:
  8004. 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8005. ARM GAS /tmp/ccGtkZvD.s page 139
  8006. 3769 .loc 1 2075 16 view .LVU1113
  8007. 3770 00dc 0028 cmp r0, #0
  8008. 3771 00de B1D0 beq .L219
  8009. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8010. 3772 .loc 1 2078 15 is_stmt 1 view .LVU1114
  8011. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8012. 3773 .loc 1 2078 20 is_stmt 0 view .LVU1115
  8013. 3774 00e0 606B ldr r0, [r4, #52]
  8014. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8015. 3775 .loc 1 2078 28 view .LVU1116
  8016. 3776 00e2 036D ldr r3, [r0, #80]
  8017. 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8018. 3777 .loc 1 2078 15 view .LVU1117
  8019. 3778 00e4 9847 blx r3
  8020. 3779 .LVL285:
  8021. 3780 00e6 ADE7 b .L219
  8022. 3781 .LVL286:
  8023. 3782 .L239:
  8024. 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8025. 3783 .loc 1 2051 9 is_stmt 1 view .LVU1118
  8026. 3784 00e8 2046 mov r0, r4
  8027. 3785 00ea FFF7FEFF bl UART_Receive_IT
  8028. 3786 .LVL287:
  8029. 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8030. 3787 .loc 1 2051 9 is_stmt 0 view .LVU1119
  8031. 3788 00ee D9E7 b .L229
  8032. 3789 .LVL288:
  8033. 3790 .L233:
  8034. 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8035. 3791 .loc 1 2089 13 is_stmt 1 view .LVU1120
  8036. 3792 00f0 2046 mov r0, r4
  8037. 3793 00f2 FFF7FEFF bl HAL_UART_ErrorCallback
  8038. 3794 .LVL289:
  8039. 3795 00f6 A5E7 b .L219
  8040. 3796 .L232:
  8041. 2101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8042. 3797 .loc 1 2101 11 view .LVU1121
  8043. 3798 00f8 2046 mov r0, r4
  8044. 3799 00fa FFF7FEFF bl HAL_UART_ErrorCallback
  8045. 3800 .LVL290:
  8046. 3801 00fe A1E7 b .L219
  8047. 3802 .LVL291:
  8048. 3803 .L231:
  8049. 2114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8050. 3804 .loc 1 2114 9 view .LVU1122
  8051. 3805 0100 2046 mov r0, r4
  8052. 3806 0102 FFF7FEFF bl HAL_UART_ErrorCallback
  8053. 3807 .LVL292:
  8054. 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8055. 3808 .loc 1 2117 9 view .LVU1123
  8056. 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8057. 3809 .loc 1 2117 26 is_stmt 0 view .LVU1124
  8058. 3810 0106 0023 movs r3, #0
  8059. 3811 0108 E363 str r3, [r4, #60]
  8060. 2120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** } /* End if some error occurs */
  8061. 3812 .loc 1 2120 5 is_stmt 1 view .LVU1125
  8062. 3813 010a 9BE7 b .L219
  8063. ARM GAS /tmp/ccGtkZvD.s page 140
  8064. 3814 .LVL293:
  8065. 3815 .L237:
  8066. 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  8067. 3816 .loc 1 2126 5 view .LVU1126
  8068. 3817 010c 2046 mov r0, r4
  8069. 3818 .LVL294:
  8070. 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  8071. 3819 .loc 1 2126 5 is_stmt 0 view .LVU1127
  8072. 3820 010e FFF7FEFF bl UART_Transmit_IT
  8073. 3821 .LVL295:
  8074. 2127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8075. 3822 .loc 1 2127 5 is_stmt 1 view .LVU1128
  8076. 3823 0112 97E7 b .L219
  8077. 3824 .LVL296:
  8078. 3825 .L238:
  8079. 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  8080. 3826 .loc 1 2133 5 view .LVU1129
  8081. 3827 0114 2046 mov r0, r4
  8082. 3828 .LVL297:
  8083. 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
  8084. 3829 .loc 1 2133 5 is_stmt 0 view .LVU1130
  8085. 3830 0116 FFF7FEFF bl UART_EndTransmit_IT
  8086. 3831 .LVL298:
  8087. 2134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8088. 3832 .loc 1 2134 5 is_stmt 1 view .LVU1131
  8089. 3833 011a 93E7 b .L219
  8090. 3834 .L241:
  8091. 3835 .align 2
  8092. 3836 .L240:
  8093. 3837 011c 00000000 .word UART_DMAAbortOnError
  8094. 3838 .cfi_endproc
  8095. 3839 .LFE152:
  8096. 3841 .section .text.UART_DMAAbortOnError,"ax",%progbits
  8097. 3842 .align 1
  8098. 3843 .syntax unified
  8099. 3844 .thumb
  8100. 3845 .thumb_func
  8101. 3847 UART_DMAAbortOnError:
  8102. 3848 .LVL299:
  8103. 3849 .LFB176:
  8104. 2731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8105. 3850 .loc 1 2731 1 view -0
  8106. 3851 .cfi_startproc
  8107. 3852 @ args = 0, pretend = 0, frame = 0
  8108. 3853 @ frame_needed = 0, uses_anonymous_args = 0
  8109. 2731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8110. 3854 .loc 1 2731 1 is_stmt 0 view .LVU1133
  8111. 3855 0000 08B5 push {r3, lr}
  8112. 3856 .LCFI39:
  8113. 3857 .cfi_def_cfa_offset 8
  8114. 3858 .cfi_offset 3, -8
  8115. 3859 .cfi_offset 14, -4
  8116. 2732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8117. 3860 .loc 1 2732 3 is_stmt 1 view .LVU1134
  8118. 2732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8119. 3861 .loc 1 2732 23 is_stmt 0 view .LVU1135
  8120. 3862 0002 806B ldr r0, [r0, #56]
  8121. ARM GAS /tmp/ccGtkZvD.s page 141
  8122. 3863 .LVL300:
  8123. 2733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  8124. 3864 .loc 1 2733 3 is_stmt 1 view .LVU1136
  8125. 2733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
  8126. 3865 .loc 1 2733 22 is_stmt 0 view .LVU1137
  8127. 3866 0004 0023 movs r3, #0
  8128. 3867 0006 C385 strh r3, [r0, #46] @ movhi
  8129. 2734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8130. 3868 .loc 1 2734 3 is_stmt 1 view .LVU1138
  8131. 2734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8132. 3869 .loc 1 2734 22 is_stmt 0 view .LVU1139
  8133. 3870 0008 C384 strh r3, [r0, #38] @ movhi
  8134. 2741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8135. 3871 .loc 1 2741 3 is_stmt 1 view .LVU1140
  8136. 3872 000a FFF7FEFF bl HAL_UART_ErrorCallback
  8137. 3873 .LVL301:
  8138. 2743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8139. 3874 .loc 1 2743 1 is_stmt 0 view .LVU1141
  8140. 3875 000e 08BD pop {r3, pc}
  8141. 3876 .cfi_endproc
  8142. 3877 .LFE176:
  8143. 3879 .section .text.HAL_UART_AbortCpltCallback,"ax",%progbits
  8144. 3880 .align 1
  8145. 3881 .weak HAL_UART_AbortCpltCallback
  8146. 3882 .syntax unified
  8147. 3883 .thumb
  8148. 3884 .thumb_func
  8149. 3886 HAL_UART_AbortCpltCallback:
  8150. 3887 .LVL302:
  8151. 3888 .LFB158:
  8152. 2219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  8153. 3889 .loc 1 2219 1 is_stmt 1 view -0
  8154. 3890 .cfi_startproc
  8155. 3891 @ args = 0, pretend = 0, frame = 0
  8156. 3892 @ frame_needed = 0, uses_anonymous_args = 0
  8157. 3893 @ link register save eliminated.
  8158. 2221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8159. 3894 .loc 1 2221 3 view .LVU1143
  8160. 2226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8161. 3895 .loc 1 2226 1 is_stmt 0 view .LVU1144
  8162. 3896 0000 7047 bx lr
  8163. 3897 .cfi_endproc
  8164. 3898 .LFE158:
  8165. 3900 .section .text.HAL_UART_Abort_IT,"ax",%progbits
  8166. 3901 .align 1
  8167. 3902 .global HAL_UART_Abort_IT
  8168. 3903 .syntax unified
  8169. 3904 .thumb
  8170. 3905 .thumb_func
  8171. 3907 HAL_UART_Abort_IT:
  8172. 3908 .LVL303:
  8173. 3909 .LFB149:
  8174. 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
  8175. 3910 .loc 1 1724 1 is_stmt 1 view -0
  8176. 3911 .cfi_startproc
  8177. 3912 @ args = 0, pretend = 0, frame = 0
  8178. 3913 @ frame_needed = 0, uses_anonymous_args = 0
  8179. ARM GAS /tmp/ccGtkZvD.s page 142
  8180. 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
  8181. 3914 .loc 1 1724 1 is_stmt 0 view .LVU1146
  8182. 3915 0000 10B5 push {r4, lr}
  8183. 3916 .LCFI40:
  8184. 3917 .cfi_def_cfa_offset 8
  8185. 3918 .cfi_offset 4, -8
  8186. 3919 .cfi_offset 14, -4
  8187. 3920 0002 0446 mov r4, r0
  8188. 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8189. 3921 .loc 1 1725 3 is_stmt 1 view .LVU1147
  8190. 3922 .LVL304:
  8191. 1728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  8192. 3923 .loc 1 1728 3 view .LVU1148
  8193. 3924 0004 0268 ldr r2, [r0]
  8194. 3925 0006 D368 ldr r3, [r2, #12]
  8195. 3926 0008 23F4F073 bic r3, r3, #480
  8196. 3927 000c D360 str r3, [r2, #12]
  8197. 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8198. 3928 .loc 1 1729 3 view .LVU1149
  8199. 3929 000e 0268 ldr r2, [r0]
  8200. 3930 0010 5369 ldr r3, [r2, #20]
  8201. 3931 0012 23F00103 bic r3, r3, #1
  8202. 3932 0016 5361 str r3, [r2, #20]
  8203. 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8204. 3933 .loc 1 1734 3 view .LVU1150
  8205. 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8206. 3934 .loc 1 1734 12 is_stmt 0 view .LVU1151
  8207. 3935 0018 036B ldr r3, [r0, #48]
  8208. 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8209. 3936 .loc 1 1734 6 view .LVU1152
  8210. 3937 001a 33B1 cbz r3, .L246
  8211. 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8212. 3938 .loc 1 1738 5 is_stmt 1 view .LVU1153
  8213. 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8214. 3939 .loc 1 1738 9 is_stmt 0 view .LVU1154
  8215. 3940 001c 0268 ldr r2, [r0]
  8216. 3941 001e 5269 ldr r2, [r2, #20]
  8217. 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8218. 3942 .loc 1 1738 8 view .LVU1155
  8219. 3943 0020 12F0800F tst r2, #128
  8220. 3944 0024 1DD0 beq .L247
  8221. 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8222. 3945 .loc 1 1740 7 is_stmt 1 view .LVU1156
  8223. 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8224. 3946 .loc 1 1740 40 is_stmt 0 view .LVU1157
  8225. 3947 0026 254A ldr r2, .L258
  8226. 3948 0028 1A65 str r2, [r3, #80]
  8227. 3949 .L246:
  8228. 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8229. 3950 .loc 1 1748 3 is_stmt 1 view .LVU1158
  8230. 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8231. 3951 .loc 1 1748 12 is_stmt 0 view .LVU1159
  8232. 3952 002a 636B ldr r3, [r4, #52]
  8233. 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8234. 3953 .loc 1 1748 6 view .LVU1160
  8235. 3954 002c 33B1 cbz r3, .L248
  8236. 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8237. ARM GAS /tmp/ccGtkZvD.s page 143
  8238. 3955 .loc 1 1752 5 is_stmt 1 view .LVU1161
  8239. 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8240. 3956 .loc 1 1752 9 is_stmt 0 view .LVU1162
  8241. 3957 002e 2268 ldr r2, [r4]
  8242. 3958 0030 5269 ldr r2, [r2, #20]
  8243. 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8244. 3959 .loc 1 1752 8 view .LVU1163
  8245. 3960 0032 12F0400F tst r2, #64
  8246. 3961 0036 17D0 beq .L249
  8247. 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8248. 3962 .loc 1 1754 7 is_stmt 1 view .LVU1164
  8249. 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8250. 3963 .loc 1 1754 40 is_stmt 0 view .LVU1165
  8251. 3964 0038 214A ldr r2, .L258+4
  8252. 3965 003a 1A65 str r2, [r3, #80]
  8253. 3966 .L248:
  8254. 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8255. 3967 .loc 1 1763 3 is_stmt 1 view .LVU1166
  8256. 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8257. 3968 .loc 1 1763 7 is_stmt 0 view .LVU1167
  8258. 3969 003c 2368 ldr r3, [r4]
  8259. 3970 003e 5A69 ldr r2, [r3, #20]
  8260. 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8261. 3971 .loc 1 1763 6 view .LVU1168
  8262. 3972 0040 12F0800F tst r2, #128
  8263. 3973 0044 13D0 beq .L254
  8264. 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8265. 3974 .loc 1 1766 5 is_stmt 1 view .LVU1169
  8266. 3975 0046 5A69 ldr r2, [r3, #20]
  8267. 3976 0048 22F08002 bic r2, r2, #128
  8268. 3977 004c 5A61 str r2, [r3, #20]
  8269. 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8270. 3978 .loc 1 1769 5 view .LVU1170
  8271. 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8272. 3979 .loc 1 1769 14 is_stmt 0 view .LVU1171
  8273. 3980 004e 206B ldr r0, [r4, #48]
  8274. 3981 .LVL305:
  8275. 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8276. 3982 .loc 1 1769 8 view .LVU1172
  8277. 3983 0050 60B3 cbz r0, .L255
  8278. 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8279. 3984 .loc 1 1775 7 is_stmt 1 view .LVU1173
  8280. 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8281. 3985 .loc 1 1775 11 is_stmt 0 view .LVU1174
  8282. 3986 0052 FFF7FEFF bl HAL_DMA_Abort_IT
  8283. 3987 .LVL306:
  8284. 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8285. 3988 .loc 1 1775 10 view .LVU1175
  8286. 3989 0056 58B3 cbz r0, .L256
  8287. 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8288. 3990 .loc 1 1777 9 is_stmt 1 view .LVU1176
  8289. 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8290. 3991 .loc 1 1777 14 is_stmt 0 view .LVU1177
  8291. 3992 0058 236B ldr r3, [r4, #48]
  8292. 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8293. 3993 .loc 1 1777 42 view .LVU1178
  8294. 3994 005a 0022 movs r2, #0
  8295. ARM GAS /tmp/ccGtkZvD.s page 144
  8296. 3995 005c 1A65 str r2, [r3, #80]
  8297. 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8298. 3996 .loc 1 1725 12 view .LVU1179
  8299. 3997 005e 0121 movs r1, #1
  8300. 3998 0060 06E0 b .L250
  8301. 3999 .LVL307:
  8302. 4000 .L247:
  8303. 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8304. 4001 .loc 1 1744 7 is_stmt 1 view .LVU1180
  8305. 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8306. 4002 .loc 1 1744 40 is_stmt 0 view .LVU1181
  8307. 4003 0062 0022 movs r2, #0
  8308. 4004 0064 1A65 str r2, [r3, #80]
  8309. 4005 0066 E0E7 b .L246
  8310. 4006 .L249:
  8311. 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8312. 4007 .loc 1 1758 7 is_stmt 1 view .LVU1182
  8313. 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8314. 4008 .loc 1 1758 40 is_stmt 0 view .LVU1183
  8315. 4009 0068 0022 movs r2, #0
  8316. 4010 006a 1A65 str r2, [r3, #80]
  8317. 4011 006c E6E7 b .L248
  8318. 4012 .L254:
  8319. 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8320. 4013 .loc 1 1725 12 view .LVU1184
  8321. 4014 006e 0121 movs r1, #1
  8322. 4015 .LVL308:
  8323. 4016 .L250:
  8324. 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8325. 4017 .loc 1 1787 3 is_stmt 1 view .LVU1185
  8326. 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8327. 4018 .loc 1 1787 7 is_stmt 0 view .LVU1186
  8328. 4019 0070 2368 ldr r3, [r4]
  8329. 4020 0072 5A69 ldr r2, [r3, #20]
  8330. 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8331. 4021 .loc 1 1787 6 view .LVU1187
  8332. 4022 0074 12F0400F tst r2, #64
  8333. 4023 0078 1CD0 beq .L251
  8334. 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8335. 4024 .loc 1 1789 5 is_stmt 1 view .LVU1188
  8336. 4025 007a 5A69 ldr r2, [r3, #20]
  8337. 4026 007c 22F04002 bic r2, r2, #64
  8338. 4027 0080 5A61 str r2, [r3, #20]
  8339. 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8340. 4028 .loc 1 1792 5 view .LVU1189
  8341. 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8342. 4029 .loc 1 1792 14 is_stmt 0 view .LVU1190
  8343. 4030 0082 606B ldr r0, [r4, #52]
  8344. 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8345. 4031 .loc 1 1792 8 view .LVU1191
  8346. 4032 0084 B0B1 cbz r0, .L251
  8347. 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8348. 4033 .loc 1 1798 7 is_stmt 1 view .LVU1192
  8349. 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8350. 4034 .loc 1 1798 11 is_stmt 0 view .LVU1193
  8351. 4035 0086 FFF7FEFF bl HAL_DMA_Abort_IT
  8352. 4036 .LVL309:
  8353. ARM GAS /tmp/ccGtkZvD.s page 145
  8354. 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8355. 4037 .loc 1 1798 10 view .LVU1194
  8356. 4038 008a A8B1 cbz r0, .L252
  8357. 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
  8358. 4039 .loc 1 1800 9 is_stmt 1 view .LVU1195
  8359. 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
  8360. 4040 .loc 1 1800 14 is_stmt 0 view .LVU1196
  8361. 4041 008c 636B ldr r3, [r4, #52]
  8362. 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
  8363. 4042 .loc 1 1800 42 view .LVU1197
  8364. 4043 008e 0022 movs r2, #0
  8365. 4044 0090 1A65 str r2, [r3, #80]
  8366. 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8367. 4045 .loc 1 1801 9 is_stmt 1 view .LVU1198
  8368. 4046 .LVL310:
  8369. 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8370. 4047 .loc 1 1811 3 view .LVU1199
  8371. 4048 .L253:
  8372. 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8373. 4049 .loc 1 1814 5 view .LVU1200
  8374. 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8375. 4050 .loc 1 1814 24 is_stmt 0 view .LVU1201
  8376. 4051 0092 0023 movs r3, #0
  8377. 4052 0094 E384 strh r3, [r4, #38] @ movhi
  8378. 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8379. 4053 .loc 1 1815 5 is_stmt 1 view .LVU1202
  8380. 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8381. 4054 .loc 1 1815 24 is_stmt 0 view .LVU1203
  8382. 4055 0096 E385 strh r3, [r4, #46] @ movhi
  8383. 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8384. 4056 .loc 1 1818 5 is_stmt 1 view .LVU1204
  8385. 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8386. 4057 .loc 1 1818 22 is_stmt 0 view .LVU1205
  8387. 4058 0098 E363 str r3, [r4, #60]
  8388. 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8389. 4059 .loc 1 1821 5 is_stmt 1 view .LVU1206
  8390. 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8391. 4060 .loc 1 1821 20 is_stmt 0 view .LVU1207
  8392. 4061 009a 2023 movs r3, #32
  8393. 4062 009c 84F83930 strb r3, [r4, #57]
  8394. 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8395. 4063 .loc 1 1822 5 is_stmt 1 view .LVU1208
  8396. 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8397. 4064 .loc 1 1822 20 is_stmt 0 view .LVU1209
  8398. 4065 00a0 84F83A30 strb r3, [r4, #58]
  8399. 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8400. 4066 .loc 1 1830 5 is_stmt 1 view .LVU1210
  8401. 4067 00a4 2046 mov r0, r4
  8402. 4068 00a6 FFF7FEFF bl HAL_UART_AbortCpltCallback
  8403. 4069 .LVL311:
  8404. 4070 00aa 05E0 b .L252
  8405. 4071 .LVL312:
  8406. 4072 .L255:
  8407. 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8408. 4073 .loc 1 1725 12 is_stmt 0 view .LVU1211
  8409. 4074 00ac 0121 movs r1, #1
  8410. 4075 00ae DFE7 b .L250
  8411. ARM GAS /tmp/ccGtkZvD.s page 146
  8412. 4076 .L256:
  8413. 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8414. 4077 .loc 1 1781 19 view .LVU1212
  8415. 4078 00b0 0021 movs r1, #0
  8416. 4079 00b2 DDE7 b .L250
  8417. 4080 .LVL313:
  8418. 4081 .L251:
  8419. 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8420. 4082 .loc 1 1811 3 is_stmt 1 view .LVU1213
  8421. 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8422. 4083 .loc 1 1811 6 is_stmt 0 view .LVU1214
  8423. 4084 00b4 0029 cmp r1, #0
  8424. 4085 00b6 ECD1 bne .L253
  8425. 4086 .LVL314:
  8426. 4087 .L252:
  8427. 1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8428. 4088 .loc 1 1834 3 is_stmt 1 view .LVU1215
  8429. 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8430. 4089 .loc 1 1835 1 is_stmt 0 view .LVU1216
  8431. 4090 00b8 0020 movs r0, #0
  8432. 4091 00ba 10BD pop {r4, pc}
  8433. 4092 .LVL315:
  8434. 4093 .L259:
  8435. 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8436. 4094 .loc 1 1835 1 view .LVU1217
  8437. 4095 .align 2
  8438. 4096 .L258:
  8439. 4097 00bc 00000000 .word UART_DMATxAbortCallback
  8440. 4098 00c0 00000000 .word UART_DMARxAbortCallback
  8441. 4099 .cfi_endproc
  8442. 4100 .LFE149:
  8443. 4102 .section .text.UART_DMARxAbortCallback,"ax",%progbits
  8444. 4103 .align 1
  8445. 4104 .syntax unified
  8446. 4105 .thumb
  8447. 4106 .thumb_func
  8448. 4108 UART_DMARxAbortCallback:
  8449. 4109 .LVL316:
  8450. 4110 .LFB178:
  8451. 2800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8452. 4111 .loc 1 2800 1 is_stmt 1 view -0
  8453. 4112 .cfi_startproc
  8454. 4113 @ args = 0, pretend = 0, frame = 0
  8455. 4114 @ frame_needed = 0, uses_anonymous_args = 0
  8456. 2800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8457. 4115 .loc 1 2800 1 is_stmt 0 view .LVU1219
  8458. 4116 0000 08B5 push {r3, lr}
  8459. 4117 .LCFI41:
  8460. 4118 .cfi_def_cfa_offset 8
  8461. 4119 .cfi_offset 3, -8
  8462. 4120 .cfi_offset 14, -4
  8463. 2801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8464. 4121 .loc 1 2801 3 is_stmt 1 view .LVU1220
  8465. 2801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8466. 4122 .loc 1 2801 23 is_stmt 0 view .LVU1221
  8467. 4123 0002 806B ldr r0, [r0, #56]
  8468. 4124 .LVL317:
  8469. ARM GAS /tmp/ccGtkZvD.s page 147
  8470. 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8471. 4125 .loc 1 2803 3 is_stmt 1 view .LVU1222
  8472. 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8473. 4126 .loc 1 2803 8 is_stmt 0 view .LVU1223
  8474. 4127 0004 436B ldr r3, [r0, #52]
  8475. 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8476. 4128 .loc 1 2803 36 view .LVU1224
  8477. 4129 0006 0022 movs r2, #0
  8478. 4130 0008 1A65 str r2, [r3, #80]
  8479. 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8480. 4131 .loc 1 2806 3 is_stmt 1 view .LVU1225
  8481. 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8482. 4132 .loc 1 2806 12 is_stmt 0 view .LVU1226
  8483. 4133 000a 036B ldr r3, [r0, #48]
  8484. 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8485. 4134 .loc 1 2806 6 view .LVU1227
  8486. 4135 000c 0BB1 cbz r3, .L261
  8487. 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8488. 4136 .loc 1 2808 5 is_stmt 1 view .LVU1228
  8489. 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8490. 4137 .loc 1 2808 22 is_stmt 0 view .LVU1229
  8491. 4138 000e 1B6D ldr r3, [r3, #80]
  8492. 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8493. 4139 .loc 1 2808 8 view .LVU1230
  8494. 4140 0010 53B9 cbnz r3, .L260
  8495. 4141 .L261:
  8496. 2815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8497. 4142 .loc 1 2815 3 is_stmt 1 view .LVU1231
  8498. 2815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8499. 4143 .loc 1 2815 22 is_stmt 0 view .LVU1232
  8500. 4144 0012 0023 movs r3, #0
  8501. 4145 0014 C384 strh r3, [r0, #38] @ movhi
  8502. 2816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8503. 4146 .loc 1 2816 3 is_stmt 1 view .LVU1233
  8504. 2816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8505. 4147 .loc 1 2816 22 is_stmt 0 view .LVU1234
  8506. 4148 0016 C385 strh r3, [r0, #46] @ movhi
  8507. 2819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8508. 4149 .loc 1 2819 3 is_stmt 1 view .LVU1235
  8509. 2819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8510. 4150 .loc 1 2819 20 is_stmt 0 view .LVU1236
  8511. 4151 0018 C363 str r3, [r0, #60]
  8512. 2822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8513. 4152 .loc 1 2822 3 is_stmt 1 view .LVU1237
  8514. 2822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8515. 4153 .loc 1 2822 18 is_stmt 0 view .LVU1238
  8516. 4154 001a 2023 movs r3, #32
  8517. 4155 001c 80F83930 strb r3, [r0, #57]
  8518. 2823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8519. 4156 .loc 1 2823 3 is_stmt 1 view .LVU1239
  8520. 2823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8521. 4157 .loc 1 2823 18 is_stmt 0 view .LVU1240
  8522. 4158 0020 80F83A30 strb r3, [r0, #58]
  8523. 2831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8524. 4159 .loc 1 2831 3 is_stmt 1 view .LVU1241
  8525. 4160 0024 FFF7FEFF bl HAL_UART_AbortCpltCallback
  8526. 4161 .LVL318:
  8527. ARM GAS /tmp/ccGtkZvD.s page 148
  8528. 4162 .L260:
  8529. 2833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8530. 4163 .loc 1 2833 1 is_stmt 0 view .LVU1242
  8531. 4164 0028 08BD pop {r3, pc}
  8532. 4165 .cfi_endproc
  8533. 4166 .LFE178:
  8534. 4168 .section .text.UART_DMATxAbortCallback,"ax",%progbits
  8535. 4169 .align 1
  8536. 4170 .syntax unified
  8537. 4171 .thumb
  8538. 4172 .thumb_func
  8539. 4174 UART_DMATxAbortCallback:
  8540. 4175 .LVL319:
  8541. 4176 .LFB177:
  8542. 2755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8543. 4177 .loc 1 2755 1 is_stmt 1 view -0
  8544. 4178 .cfi_startproc
  8545. 4179 @ args = 0, pretend = 0, frame = 0
  8546. 4180 @ frame_needed = 0, uses_anonymous_args = 0
  8547. 2755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8548. 4181 .loc 1 2755 1 is_stmt 0 view .LVU1244
  8549. 4182 0000 08B5 push {r3, lr}
  8550. 4183 .LCFI42:
  8551. 4184 .cfi_def_cfa_offset 8
  8552. 4185 .cfi_offset 3, -8
  8553. 4186 .cfi_offset 14, -4
  8554. 2756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8555. 4187 .loc 1 2756 3 is_stmt 1 view .LVU1245
  8556. 2756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8557. 4188 .loc 1 2756 23 is_stmt 0 view .LVU1246
  8558. 4189 0002 806B ldr r0, [r0, #56]
  8559. 4190 .LVL320:
  8560. 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8561. 4191 .loc 1 2758 3 is_stmt 1 view .LVU1247
  8562. 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8563. 4192 .loc 1 2758 8 is_stmt 0 view .LVU1248
  8564. 4193 0004 036B ldr r3, [r0, #48]
  8565. 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8566. 4194 .loc 1 2758 36 view .LVU1249
  8567. 4195 0006 0022 movs r2, #0
  8568. 4196 0008 1A65 str r2, [r3, #80]
  8569. 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8570. 4197 .loc 1 2761 3 is_stmt 1 view .LVU1250
  8571. 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8572. 4198 .loc 1 2761 12 is_stmt 0 view .LVU1251
  8573. 4199 000a 436B ldr r3, [r0, #52]
  8574. 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8575. 4200 .loc 1 2761 6 view .LVU1252
  8576. 4201 000c 0BB1 cbz r3, .L265
  8577. 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8578. 4202 .loc 1 2763 5 is_stmt 1 view .LVU1253
  8579. 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8580. 4203 .loc 1 2763 22 is_stmt 0 view .LVU1254
  8581. 4204 000e 1B6D ldr r3, [r3, #80]
  8582. 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8583. 4205 .loc 1 2763 8 view .LVU1255
  8584. 4206 0010 53B9 cbnz r3, .L264
  8585. ARM GAS /tmp/ccGtkZvD.s page 149
  8586. 4207 .L265:
  8587. 2770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8588. 4208 .loc 1 2770 3 is_stmt 1 view .LVU1256
  8589. 2770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
  8590. 4209 .loc 1 2770 22 is_stmt 0 view .LVU1257
  8591. 4210 0012 0023 movs r3, #0
  8592. 4211 0014 C384 strh r3, [r0, #38] @ movhi
  8593. 2771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8594. 4212 .loc 1 2771 3 is_stmt 1 view .LVU1258
  8595. 2771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8596. 4213 .loc 1 2771 22 is_stmt 0 view .LVU1259
  8597. 4214 0016 C385 strh r3, [r0, #46] @ movhi
  8598. 2774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8599. 4215 .loc 1 2774 3 is_stmt 1 view .LVU1260
  8600. 2774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8601. 4216 .loc 1 2774 20 is_stmt 0 view .LVU1261
  8602. 4217 0018 C363 str r3, [r0, #60]
  8603. 2777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8604. 4218 .loc 1 2777 3 is_stmt 1 view .LVU1262
  8605. 2777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
  8606. 4219 .loc 1 2777 18 is_stmt 0 view .LVU1263
  8607. 4220 001a 2023 movs r3, #32
  8608. 4221 001c 80F83930 strb r3, [r0, #57]
  8609. 2778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8610. 4222 .loc 1 2778 3 is_stmt 1 view .LVU1264
  8611. 2778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8612. 4223 .loc 1 2778 18 is_stmt 0 view .LVU1265
  8613. 4224 0020 80F83A30 strb r3, [r0, #58]
  8614. 2786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8615. 4225 .loc 1 2786 3 is_stmt 1 view .LVU1266
  8616. 4226 0024 FFF7FEFF bl HAL_UART_AbortCpltCallback
  8617. 4227 .LVL321:
  8618. 4228 .L264:
  8619. 2788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8620. 4229 .loc 1 2788 1 is_stmt 0 view .LVU1267
  8621. 4230 0028 08BD pop {r3, pc}
  8622. 4231 .cfi_endproc
  8623. 4232 .LFE177:
  8624. 4234 .section .text.HAL_UART_AbortTransmitCpltCallback,"ax",%progbits
  8625. 4235 .align 1
  8626. 4236 .weak HAL_UART_AbortTransmitCpltCallback
  8627. 4237 .syntax unified
  8628. 4238 .thumb
  8629. 4239 .thumb_func
  8630. 4241 HAL_UART_AbortTransmitCpltCallback:
  8631. 4242 .LVL322:
  8632. 4243 .LFB159:
  8633. 2234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  8634. 4244 .loc 1 2234 1 is_stmt 1 view -0
  8635. 4245 .cfi_startproc
  8636. 4246 @ args = 0, pretend = 0, frame = 0
  8637. 4247 @ frame_needed = 0, uses_anonymous_args = 0
  8638. 4248 @ link register save eliminated.
  8639. 2236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8640. 4249 .loc 1 2236 3 view .LVU1269
  8641. 2241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8642. 4250 .loc 1 2241 1 is_stmt 0 view .LVU1270
  8643. ARM GAS /tmp/ccGtkZvD.s page 150
  8644. 4251 0000 7047 bx lr
  8645. 4252 .cfi_endproc
  8646. 4253 .LFE159:
  8647. 4255 .section .text.HAL_UART_AbortTransmit_IT,"ax",%progbits
  8648. 4256 .align 1
  8649. 4257 .global HAL_UART_AbortTransmit_IT
  8650. 4258 .syntax unified
  8651. 4259 .thumb
  8652. 4260 .thumb_func
  8653. 4262 HAL_UART_AbortTransmit_IT:
  8654. 4263 .LVL323:
  8655. 4264 .LFB150:
  8656. 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  8657. 4265 .loc 1 1852 1 is_stmt 1 view -0
  8658. 4266 .cfi_startproc
  8659. 4267 @ args = 0, pretend = 0, frame = 0
  8660. 4268 @ frame_needed = 0, uses_anonymous_args = 0
  8661. 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
  8662. 4269 .loc 1 1852 1 is_stmt 0 view .LVU1272
  8663. 4270 0000 10B5 push {r4, lr}
  8664. 4271 .LCFI43:
  8665. 4272 .cfi_def_cfa_offset 8
  8666. 4273 .cfi_offset 4, -8
  8667. 4274 .cfi_offset 14, -4
  8668. 4275 0002 0446 mov r4, r0
  8669. 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8670. 4276 .loc 1 1854 3 is_stmt 1 view .LVU1273
  8671. 4277 0004 0268 ldr r2, [r0]
  8672. 4278 0006 D368 ldr r3, [r2, #12]
  8673. 4279 0008 23F0C003 bic r3, r3, #192
  8674. 4280 000c D360 str r3, [r2, #12]
  8675. 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8676. 4281 .loc 1 1857 3 view .LVU1274
  8677. 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8678. 4282 .loc 1 1857 7 is_stmt 0 view .LVU1275
  8679. 4283 000e 0368 ldr r3, [r0]
  8680. 4284 0010 5A69 ldr r2, [r3, #20]
  8681. 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8682. 4285 .loc 1 1857 6 view .LVU1276
  8683. 4286 0012 12F0800F tst r2, #128
  8684. 4287 0016 17D0 beq .L270
  8685. 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8686. 4288 .loc 1 1859 5 is_stmt 1 view .LVU1277
  8687. 4289 0018 5A69 ldr r2, [r3, #20]
  8688. 4290 001a 22F08002 bic r2, r2, #128
  8689. 4291 001e 5A61 str r2, [r3, #20]
  8690. 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8691. 4292 .loc 1 1862 5 view .LVU1278
  8692. 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8693. 4293 .loc 1 1862 14 is_stmt 0 view .LVU1279
  8694. 4294 0020 036B ldr r3, [r0, #48]
  8695. 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8696. 4295 .loc 1 1862 8 view .LVU1280
  8697. 4296 0022 4BB1 cbz r3, .L271
  8698. 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8699. 4297 .loc 1 1866 7 is_stmt 1 view .LVU1281
  8700. 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8701. ARM GAS /tmp/ccGtkZvD.s page 151
  8702. 4298 .loc 1 1866 40 is_stmt 0 view .LVU1282
  8703. 4299 0024 0D4A ldr r2, .L274
  8704. 4300 0026 1A65 str r2, [r3, #80]
  8705. 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8706. 4301 .loc 1 1869 7 is_stmt 1 view .LVU1283
  8707. 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8708. 4302 .loc 1 1869 11 is_stmt 0 view .LVU1284
  8709. 4303 0028 006B ldr r0, [r0, #48]
  8710. 4304 .LVL324:
  8711. 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8712. 4305 .loc 1 1869 11 view .LVU1285
  8713. 4306 002a FFF7FEFF bl HAL_DMA_Abort_IT
  8714. 4307 .LVL325:
  8715. 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8716. 4308 .loc 1 1869 10 view .LVU1286
  8717. 4309 002e 90B1 cbz r0, .L272
  8718. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8719. 4310 .loc 1 1872 9 is_stmt 1 view .LVU1287
  8720. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8721. 4311 .loc 1 1872 14 is_stmt 0 view .LVU1288
  8722. 4312 0030 206B ldr r0, [r4, #48]
  8723. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8724. 4313 .loc 1 1872 22 view .LVU1289
  8725. 4314 0032 036D ldr r3, [r0, #80]
  8726. 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8727. 4315 .loc 1 1872 9 view .LVU1290
  8728. 4316 0034 9847 blx r3
  8729. 4317 .LVL326:
  8730. 4318 0036 0EE0 b .L272
  8731. 4319 .LVL327:
  8732. 4320 .L271:
  8733. 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8734. 4321 .loc 1 1878 7 is_stmt 1 view .LVU1291
  8735. 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8736. 4322 .loc 1 1878 26 is_stmt 0 view .LVU1292
  8737. 4323 0038 0023 movs r3, #0
  8738. 4324 003a C384 strh r3, [r0, #38] @ movhi
  8739. 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8740. 4325 .loc 1 1881 7 is_stmt 1 view .LVU1293
  8741. 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8742. 4326 .loc 1 1881 21 is_stmt 0 view .LVU1294
  8743. 4327 003c 2023 movs r3, #32
  8744. 4328 003e 80F83930 strb r3, [r0, #57]
  8745. 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8746. 4329 .loc 1 1889 7 is_stmt 1 view .LVU1295
  8747. 4330 0042 FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
  8748. 4331 .LVL328:
  8749. 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8750. 4332 .loc 1 1889 7 is_stmt 0 view .LVU1296
  8751. 4333 0046 06E0 b .L272
  8752. 4334 .LVL329:
  8753. 4335 .L270:
  8754. 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8755. 4336 .loc 1 1896 5 is_stmt 1 view .LVU1297
  8756. 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8757. 4337 .loc 1 1896 24 is_stmt 0 view .LVU1298
  8758. 4338 0048 0023 movs r3, #0
  8759. ARM GAS /tmp/ccGtkZvD.s page 152
  8760. 4339 004a C384 strh r3, [r0, #38] @ movhi
  8761. 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8762. 4340 .loc 1 1899 5 is_stmt 1 view .LVU1299
  8763. 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8764. 4341 .loc 1 1899 19 is_stmt 0 view .LVU1300
  8765. 4342 004c 2023 movs r3, #32
  8766. 4343 004e 80F83930 strb r3, [r0, #57]
  8767. 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8768. 4344 .loc 1 1907 5 is_stmt 1 view .LVU1301
  8769. 4345 0052 FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
  8770. 4346 .LVL330:
  8771. 4347 .L272:
  8772. 1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8773. 4348 .loc 1 1911 3 view .LVU1302
  8774. 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8775. 4349 .loc 1 1912 1 is_stmt 0 view .LVU1303
  8776. 4350 0056 0020 movs r0, #0
  8777. 4351 0058 10BD pop {r4, pc}
  8778. 4352 .LVL331:
  8779. 4353 .L275:
  8780. 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8781. 4354 .loc 1 1912 1 view .LVU1304
  8782. 4355 005a 00BF .align 2
  8783. 4356 .L274:
  8784. 4357 005c 00000000 .word UART_DMATxOnlyAbortCallback
  8785. 4358 .cfi_endproc
  8786. 4359 .LFE150:
  8787. 4361 .section .text.UART_DMATxOnlyAbortCallback,"ax",%progbits
  8788. 4362 .align 1
  8789. 4363 .syntax unified
  8790. 4364 .thumb
  8791. 4365 .thumb_func
  8792. 4367 UART_DMATxOnlyAbortCallback:
  8793. 4368 .LVL332:
  8794. 4369 .LFB179:
  8795. 2845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8796. 4370 .loc 1 2845 1 is_stmt 1 view -0
  8797. 4371 .cfi_startproc
  8798. 4372 @ args = 0, pretend = 0, frame = 0
  8799. 4373 @ frame_needed = 0, uses_anonymous_args = 0
  8800. 2845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  8801. 4374 .loc 1 2845 1 is_stmt 0 view .LVU1306
  8802. 4375 0000 08B5 push {r3, lr}
  8803. 4376 .LCFI44:
  8804. 4377 .cfi_def_cfa_offset 8
  8805. 4378 .cfi_offset 3, -8
  8806. 4379 .cfi_offset 14, -4
  8807. 2846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8808. 4380 .loc 1 2846 3 is_stmt 1 view .LVU1307
  8809. 2846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8810. 4381 .loc 1 2846 23 is_stmt 0 view .LVU1308
  8811. 4382 0002 806B ldr r0, [r0, #56]
  8812. 4383 .LVL333:
  8813. 2848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8814. 4384 .loc 1 2848 3 is_stmt 1 view .LVU1309
  8815. 2848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8816. 4385 .loc 1 2848 22 is_stmt 0 view .LVU1310
  8817. ARM GAS /tmp/ccGtkZvD.s page 153
  8818. 4386 0004 0023 movs r3, #0
  8819. 4387 0006 C384 strh r3, [r0, #38] @ movhi
  8820. 2851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8821. 4388 .loc 1 2851 3 is_stmt 1 view .LVU1311
  8822. 2851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8823. 4389 .loc 1 2851 17 is_stmt 0 view .LVU1312
  8824. 4390 0008 2023 movs r3, #32
  8825. 4391 000a 80F83930 strb r3, [r0, #57]
  8826. 2859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8827. 4392 .loc 1 2859 3 is_stmt 1 view .LVU1313
  8828. 4393 000e FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
  8829. 4394 .LVL334:
  8830. 2861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8831. 4395 .loc 1 2861 1 is_stmt 0 view .LVU1314
  8832. 4396 0012 08BD pop {r3, pc}
  8833. 4397 .cfi_endproc
  8834. 4398 .LFE179:
  8835. 4400 .section .text.HAL_UART_AbortReceiveCpltCallback,"ax",%progbits
  8836. 4401 .align 1
  8837. 4402 .weak HAL_UART_AbortReceiveCpltCallback
  8838. 4403 .syntax unified
  8839. 4404 .thumb
  8840. 4405 .thumb_func
  8841. 4407 HAL_UART_AbortReceiveCpltCallback:
  8842. 4408 .LVL335:
  8843. 4409 .LFB160:
  8844. 2249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
  8845. 4410 .loc 1 2249 1 is_stmt 1 view -0
  8846. 4411 .cfi_startproc
  8847. 4412 @ args = 0, pretend = 0, frame = 0
  8848. 4413 @ frame_needed = 0, uses_anonymous_args = 0
  8849. 4414 @ link register save eliminated.
  8850. 2251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8851. 4415 .loc 1 2251 3 view .LVU1316
  8852. 2256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8853. 4416 .loc 1 2256 1 is_stmt 0 view .LVU1317
  8854. 4417 0000 7047 bx lr
  8855. 4418 .cfi_endproc
  8856. 4419 .LFE160:
  8857. 4421 .section .text.HAL_UART_AbortReceive_IT,"ax",%progbits
  8858. 4422 .align 1
  8859. 4423 .global HAL_UART_AbortReceive_IT
  8860. 4424 .syntax unified
  8861. 4425 .thumb
  8862. 4426 .thumb_func
  8863. 4428 HAL_UART_AbortReceive_IT:
  8864. 4429 .LVL336:
  8865. 4430 .LFB151:
  8866. 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  8867. 4431 .loc 1 1929 1 is_stmt 1 view -0
  8868. 4432 .cfi_startproc
  8869. 4433 @ args = 0, pretend = 0, frame = 0
  8870. 4434 @ frame_needed = 0, uses_anonymous_args = 0
  8871. 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
  8872. 4435 .loc 1 1929 1 is_stmt 0 view .LVU1319
  8873. 4436 0000 10B5 push {r4, lr}
  8874. 4437 .LCFI45:
  8875. ARM GAS /tmp/ccGtkZvD.s page 154
  8876. 4438 .cfi_def_cfa_offset 8
  8877. 4439 .cfi_offset 4, -8
  8878. 4440 .cfi_offset 14, -4
  8879. 4441 0002 0446 mov r4, r0
  8880. 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
  8881. 4442 .loc 1 1931 3 is_stmt 1 view .LVU1320
  8882. 4443 0004 0268 ldr r2, [r0]
  8883. 4444 0006 D368 ldr r3, [r2, #12]
  8884. 4445 0008 23F49073 bic r3, r3, #288
  8885. 4446 000c D360 str r3, [r2, #12]
  8886. 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8887. 4447 .loc 1 1932 3 view .LVU1321
  8888. 4448 000e 0268 ldr r2, [r0]
  8889. 4449 0010 5369 ldr r3, [r2, #20]
  8890. 4450 0012 23F00103 bic r3, r3, #1
  8891. 4451 0016 5361 str r3, [r2, #20]
  8892. 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8893. 4452 .loc 1 1935 3 view .LVU1322
  8894. 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8895. 4453 .loc 1 1935 7 is_stmt 0 view .LVU1323
  8896. 4454 0018 0368 ldr r3, [r0]
  8897. 4455 001a 5A69 ldr r2, [r3, #20]
  8898. 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8899. 4456 .loc 1 1935 6 view .LVU1324
  8900. 4457 001c 12F0400F tst r2, #64
  8901. 4458 0020 17D0 beq .L280
  8902. 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8903. 4459 .loc 1 1937 5 is_stmt 1 view .LVU1325
  8904. 4460 0022 5A69 ldr r2, [r3, #20]
  8905. 4461 0024 22F04002 bic r2, r2, #64
  8906. 4462 0028 5A61 str r2, [r3, #20]
  8907. 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8908. 4463 .loc 1 1940 5 view .LVU1326
  8909. 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8910. 4464 .loc 1 1940 14 is_stmt 0 view .LVU1327
  8911. 4465 002a 436B ldr r3, [r0, #52]
  8912. 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8913. 4466 .loc 1 1940 8 view .LVU1328
  8914. 4467 002c 4BB1 cbz r3, .L281
  8915. 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8916. 4468 .loc 1 1944 7 is_stmt 1 view .LVU1329
  8917. 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8918. 4469 .loc 1 1944 40 is_stmt 0 view .LVU1330
  8919. 4470 002e 0D4A ldr r2, .L284
  8920. 4471 0030 1A65 str r2, [r3, #80]
  8921. 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8922. 4472 .loc 1 1947 7 is_stmt 1 view .LVU1331
  8923. 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8924. 4473 .loc 1 1947 11 is_stmt 0 view .LVU1332
  8925. 4474 0032 406B ldr r0, [r0, #52]
  8926. 4475 .LVL337:
  8927. 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8928. 4476 .loc 1 1947 11 view .LVU1333
  8929. 4477 0034 FFF7FEFF bl HAL_DMA_Abort_IT
  8930. 4478 .LVL338:
  8931. 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
  8932. 4479 .loc 1 1947 10 view .LVU1334
  8933. ARM GAS /tmp/ccGtkZvD.s page 155
  8934. 4480 0038 90B1 cbz r0, .L282
  8935. 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8936. 4481 .loc 1 1950 9 is_stmt 1 view .LVU1335
  8937. 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8938. 4482 .loc 1 1950 14 is_stmt 0 view .LVU1336
  8939. 4483 003a 606B ldr r0, [r4, #52]
  8940. 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8941. 4484 .loc 1 1950 22 view .LVU1337
  8942. 4485 003c 036D ldr r3, [r0, #80]
  8943. 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8944. 4486 .loc 1 1950 9 view .LVU1338
  8945. 4487 003e 9847 blx r3
  8946. 4488 .LVL339:
  8947. 4489 0040 0EE0 b .L282
  8948. 4490 .LVL340:
  8949. 4491 .L281:
  8950. 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8951. 4492 .loc 1 1956 7 is_stmt 1 view .LVU1339
  8952. 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8953. 4493 .loc 1 1956 26 is_stmt 0 view .LVU1340
  8954. 4494 0042 0023 movs r3, #0
  8955. 4495 0044 C385 strh r3, [r0, #46] @ movhi
  8956. 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8957. 4496 .loc 1 1959 7 is_stmt 1 view .LVU1341
  8958. 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8959. 4497 .loc 1 1959 22 is_stmt 0 view .LVU1342
  8960. 4498 0046 2023 movs r3, #32
  8961. 4499 0048 80F83A30 strb r3, [r0, #58]
  8962. 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8963. 4500 .loc 1 1967 7 is_stmt 1 view .LVU1343
  8964. 4501 004c FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
  8965. 4502 .LVL341:
  8966. 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8967. 4503 .loc 1 1967 7 is_stmt 0 view .LVU1344
  8968. 4504 0050 06E0 b .L282
  8969. 4505 .LVL342:
  8970. 4506 .L280:
  8971. 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8972. 4507 .loc 1 1974 5 is_stmt 1 view .LVU1345
  8973. 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8974. 4508 .loc 1 1974 24 is_stmt 0 view .LVU1346
  8975. 4509 0052 0023 movs r3, #0
  8976. 4510 0054 C385 strh r3, [r0, #46] @ movhi
  8977. 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8978. 4511 .loc 1 1977 5 is_stmt 1 view .LVU1347
  8979. 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8980. 4512 .loc 1 1977 20 is_stmt 0 view .LVU1348
  8981. 4513 0056 2023 movs r3, #32
  8982. 4514 0058 80F83A30 strb r3, [r0, #58]
  8983. 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  8984. 4515 .loc 1 1985 5 is_stmt 1 view .LVU1349
  8985. 4516 005c FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
  8986. 4517 .LVL343:
  8987. 4518 .L282:
  8988. 1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  8989. 4519 .loc 1 1989 3 view .LVU1350
  8990. 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8991. ARM GAS /tmp/ccGtkZvD.s page 156
  8992. 4520 .loc 1 1990 1 is_stmt 0 view .LVU1351
  8993. 4521 0060 0020 movs r0, #0
  8994. 4522 0062 10BD pop {r4, pc}
  8995. 4523 .LVL344:
  8996. 4524 .L285:
  8997. 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  8998. 4525 .loc 1 1990 1 view .LVU1352
  8999. 4526 .align 2
  9000. 4527 .L284:
  9001. 4528 0064 00000000 .word UART_DMARxOnlyAbortCallback
  9002. 4529 .cfi_endproc
  9003. 4530 .LFE151:
  9004. 4532 .section .text.UART_DMARxOnlyAbortCallback,"ax",%progbits
  9005. 4533 .align 1
  9006. 4534 .syntax unified
  9007. 4535 .thumb
  9008. 4536 .thumb_func
  9009. 4538 UART_DMARxOnlyAbortCallback:
  9010. 4539 .LVL345:
  9011. 4540 .LFB180:
  9012. 2873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  9013. 4541 .loc 1 2873 1 is_stmt 1 view -0
  9014. 4542 .cfi_startproc
  9015. 4543 @ args = 0, pretend = 0, frame = 0
  9016. 4544 @ frame_needed = 0, uses_anonymous_args = 0
  9017. 2873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
  9018. 4545 .loc 1 2873 1 is_stmt 0 view .LVU1354
  9019. 4546 0000 08B5 push {r3, lr}
  9020. 4547 .LCFI46:
  9021. 4548 .cfi_def_cfa_offset 8
  9022. 4549 .cfi_offset 3, -8
  9023. 4550 .cfi_offset 14, -4
  9024. 2874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9025. 4551 .loc 1 2874 3 is_stmt 1 view .LVU1355
  9026. 2874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9027. 4552 .loc 1 2874 23 is_stmt 0 view .LVU1356
  9028. 4553 0002 806B ldr r0, [r0, #56]
  9029. 4554 .LVL346:
  9030. 2876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9031. 4555 .loc 1 2876 3 is_stmt 1 view .LVU1357
  9032. 2876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9033. 4556 .loc 1 2876 22 is_stmt 0 view .LVU1358
  9034. 4557 0004 0023 movs r3, #0
  9035. 4558 0006 C385 strh r3, [r0, #46] @ movhi
  9036. 2879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9037. 4559 .loc 1 2879 3 is_stmt 1 view .LVU1359
  9038. 2879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9039. 4560 .loc 1 2879 18 is_stmt 0 view .LVU1360
  9040. 4561 0008 2023 movs r3, #32
  9041. 4562 000a 80F83A30 strb r3, [r0, #58]
  9042. 2887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
  9043. 4563 .loc 1 2887 3 is_stmt 1 view .LVU1361
  9044. 4564 000e FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
  9045. 4565 .LVL347:
  9046. 2889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9047. 4566 .loc 1 2889 1 is_stmt 0 view .LVU1362
  9048. 4567 0012 08BD pop {r3, pc}
  9049. ARM GAS /tmp/ccGtkZvD.s page 157
  9050. 4568 .cfi_endproc
  9051. 4569 .LFE180:
  9052. 4571 .section .text.HAL_LIN_SendBreak,"ax",%progbits
  9053. 4572 .align 1
  9054. 4573 .global HAL_LIN_SendBreak
  9055. 4574 .syntax unified
  9056. 4575 .thumb
  9057. 4576 .thumb_func
  9058. 4578 HAL_LIN_SendBreak:
  9059. 4579 .LVL348:
  9060. 4580 .LFB161:
  9061. 2288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  9062. 4581 .loc 1 2288 1 is_stmt 1 view -0
  9063. 4582 .cfi_startproc
  9064. 4583 @ args = 0, pretend = 0, frame = 0
  9065. 4584 @ frame_needed = 0, uses_anonymous_args = 0
  9066. 4585 @ link register save eliminated.
  9067. 2290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9068. 4586 .loc 1 2290 3 view .LVU1364
  9069. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9070. 4587 .loc 1 2293 3 view .LVU1365
  9071. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9072. 4588 .loc 1 2293 3 view .LVU1366
  9073. 4589 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  9074. 4590 0004 012B cmp r3, #1
  9075. 4591 0006 12D0 beq .L290
  9076. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9077. 4592 .loc 1 2293 3 discriminator 2 view .LVU1367
  9078. 4593 0008 0123 movs r3, #1
  9079. 4594 000a 80F83830 strb r3, [r0, #56]
  9080. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9081. 4595 .loc 1 2293 3 discriminator 2 view .LVU1368
  9082. 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9083. 4596 .loc 1 2295 3 discriminator 2 view .LVU1369
  9084. 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9085. 4597 .loc 1 2295 17 is_stmt 0 discriminator 2 view .LVU1370
  9086. 4598 000e 2423 movs r3, #36
  9087. 4599 0010 80F83930 strb r3, [r0, #57]
  9088. 2298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9089. 4600 .loc 1 2298 3 is_stmt 1 discriminator 2 view .LVU1371
  9090. 4601 0014 0268 ldr r2, [r0]
  9091. 4602 0016 D368 ldr r3, [r2, #12]
  9092. 4603 0018 43F00103 orr r3, r3, #1
  9093. 4604 001c D360 str r3, [r2, #12]
  9094. 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9095. 4605 .loc 1 2300 3 discriminator 2 view .LVU1372
  9096. 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9097. 4606 .loc 1 2300 17 is_stmt 0 discriminator 2 view .LVU1373
  9098. 4607 001e 2023 movs r3, #32
  9099. 4608 0020 80F83930 strb r3, [r0, #57]
  9100. 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9101. 4609 .loc 1 2303 3 is_stmt 1 discriminator 2 view .LVU1374
  9102. 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9103. 4610 .loc 1 2303 3 discriminator 2 view .LVU1375
  9104. 4611 0024 0023 movs r3, #0
  9105. 4612 0026 80F83830 strb r3, [r0, #56]
  9106. 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9107. ARM GAS /tmp/ccGtkZvD.s page 158
  9108. 4613 .loc 1 2303 3 discriminator 2 view .LVU1376
  9109. 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9110. 4614 .loc 1 2305 3 discriminator 2 view .LVU1377
  9111. 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9112. 4615 .loc 1 2305 10 is_stmt 0 discriminator 2 view .LVU1378
  9113. 4616 002a 1846 mov r0, r3
  9114. 4617 .LVL349:
  9115. 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9116. 4618 .loc 1 2305 10 discriminator 2 view .LVU1379
  9117. 4619 002c 7047 bx lr
  9118. 4620 .LVL350:
  9119. 4621 .L290:
  9120. 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9121. 4622 .loc 1 2293 3 view .LVU1380
  9122. 4623 002e 0220 movs r0, #2
  9123. 4624 .LVL351:
  9124. 2306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9125. 4625 .loc 1 2306 1 view .LVU1381
  9126. 4626 0030 7047 bx lr
  9127. 4627 .cfi_endproc
  9128. 4628 .LFE161:
  9129. 4630 .section .text.HAL_MultiProcessor_EnterMuteMode,"ax",%progbits
  9130. 4631 .align 1
  9131. 4632 .global HAL_MultiProcessor_EnterMuteMode
  9132. 4633 .syntax unified
  9133. 4634 .thumb
  9134. 4635 .thumb_func
  9135. 4637 HAL_MultiProcessor_EnterMuteMode:
  9136. 4638 .LVL352:
  9137. 4639 .LFB162:
  9138. 2315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  9139. 4640 .loc 1 2315 1 is_stmt 1 view -0
  9140. 4641 .cfi_startproc
  9141. 4642 @ args = 0, pretend = 0, frame = 0
  9142. 4643 @ frame_needed = 0, uses_anonymous_args = 0
  9143. 4644 @ link register save eliminated.
  9144. 2317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9145. 4645 .loc 1 2317 3 view .LVU1383
  9146. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9147. 4646 .loc 1 2320 3 view .LVU1384
  9148. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9149. 4647 .loc 1 2320 3 view .LVU1385
  9150. 4648 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  9151. 4649 0004 012B cmp r3, #1
  9152. 4650 0006 12D0 beq .L293
  9153. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9154. 4651 .loc 1 2320 3 discriminator 2 view .LVU1386
  9155. 4652 0008 0123 movs r3, #1
  9156. 4653 000a 80F83830 strb r3, [r0, #56]
  9157. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9158. 4654 .loc 1 2320 3 discriminator 2 view .LVU1387
  9159. 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9160. 4655 .loc 1 2322 3 discriminator 2 view .LVU1388
  9161. 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9162. 4656 .loc 1 2322 17 is_stmt 0 discriminator 2 view .LVU1389
  9163. 4657 000e 2423 movs r3, #36
  9164. 4658 0010 80F83930 strb r3, [r0, #57]
  9165. ARM GAS /tmp/ccGtkZvD.s page 159
  9166. 2325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9167. 4659 .loc 1 2325 3 is_stmt 1 discriminator 2 view .LVU1390
  9168. 4660 0014 0268 ldr r2, [r0]
  9169. 4661 0016 D368 ldr r3, [r2, #12]
  9170. 4662 0018 43F00203 orr r3, r3, #2
  9171. 4663 001c D360 str r3, [r2, #12]
  9172. 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9173. 4664 .loc 1 2327 3 discriminator 2 view .LVU1391
  9174. 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9175. 4665 .loc 1 2327 17 is_stmt 0 discriminator 2 view .LVU1392
  9176. 4666 001e 2023 movs r3, #32
  9177. 4667 0020 80F83930 strb r3, [r0, #57]
  9178. 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9179. 4668 .loc 1 2330 3 is_stmt 1 discriminator 2 view .LVU1393
  9180. 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9181. 4669 .loc 1 2330 3 discriminator 2 view .LVU1394
  9182. 4670 0024 0023 movs r3, #0
  9183. 4671 0026 80F83830 strb r3, [r0, #56]
  9184. 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9185. 4672 .loc 1 2330 3 discriminator 2 view .LVU1395
  9186. 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9187. 4673 .loc 1 2332 3 discriminator 2 view .LVU1396
  9188. 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9189. 4674 .loc 1 2332 10 is_stmt 0 discriminator 2 view .LVU1397
  9190. 4675 002a 1846 mov r0, r3
  9191. 4676 .LVL353:
  9192. 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9193. 4677 .loc 1 2332 10 discriminator 2 view .LVU1398
  9194. 4678 002c 7047 bx lr
  9195. 4679 .LVL354:
  9196. 4680 .L293:
  9197. 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9198. 4681 .loc 1 2320 3 view .LVU1399
  9199. 4682 002e 0220 movs r0, #2
  9200. 4683 .LVL355:
  9201. 2333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9202. 4684 .loc 1 2333 1 view .LVU1400
  9203. 4685 0030 7047 bx lr
  9204. 4686 .cfi_endproc
  9205. 4687 .LFE162:
  9206. 4689 .section .text.HAL_MultiProcessor_ExitMuteMode,"ax",%progbits
  9207. 4690 .align 1
  9208. 4691 .global HAL_MultiProcessor_ExitMuteMode
  9209. 4692 .syntax unified
  9210. 4693 .thumb
  9211. 4694 .thumb_func
  9212. 4696 HAL_MultiProcessor_ExitMuteMode:
  9213. 4697 .LVL356:
  9214. 4698 .LFB163:
  9215. 2342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
  9216. 4699 .loc 1 2342 1 is_stmt 1 view -0
  9217. 4700 .cfi_startproc
  9218. 4701 @ args = 0, pretend = 0, frame = 0
  9219. 4702 @ frame_needed = 0, uses_anonymous_args = 0
  9220. 4703 @ link register save eliminated.
  9221. 2344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9222. 4704 .loc 1 2344 3 view .LVU1402
  9223. ARM GAS /tmp/ccGtkZvD.s page 160
  9224. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9225. 4705 .loc 1 2347 3 view .LVU1403
  9226. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9227. 4706 .loc 1 2347 3 view .LVU1404
  9228. 4707 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  9229. 4708 0004 012B cmp r3, #1
  9230. 4709 0006 12D0 beq .L296
  9231. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9232. 4710 .loc 1 2347 3 discriminator 2 view .LVU1405
  9233. 4711 0008 0123 movs r3, #1
  9234. 4712 000a 80F83830 strb r3, [r0, #56]
  9235. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9236. 4713 .loc 1 2347 3 discriminator 2 view .LVU1406
  9237. 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9238. 4714 .loc 1 2349 3 discriminator 2 view .LVU1407
  9239. 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9240. 4715 .loc 1 2349 17 is_stmt 0 discriminator 2 view .LVU1408
  9241. 4716 000e 2423 movs r3, #36
  9242. 4717 0010 80F83930 strb r3, [r0, #57]
  9243. 2352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9244. 4718 .loc 1 2352 3 is_stmt 1 discriminator 2 view .LVU1409
  9245. 4719 0014 0268 ldr r2, [r0]
  9246. 4720 0016 D368 ldr r3, [r2, #12]
  9247. 4721 0018 23F00203 bic r3, r3, #2
  9248. 4722 001c D360 str r3, [r2, #12]
  9249. 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9250. 4723 .loc 1 2354 3 discriminator 2 view .LVU1410
  9251. 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9252. 4724 .loc 1 2354 17 is_stmt 0 discriminator 2 view .LVU1411
  9253. 4725 001e 2023 movs r3, #32
  9254. 4726 0020 80F83930 strb r3, [r0, #57]
  9255. 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9256. 4727 .loc 1 2357 3 is_stmt 1 discriminator 2 view .LVU1412
  9257. 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9258. 4728 .loc 1 2357 3 discriminator 2 view .LVU1413
  9259. 4729 0024 0023 movs r3, #0
  9260. 4730 0026 80F83830 strb r3, [r0, #56]
  9261. 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9262. 4731 .loc 1 2357 3 discriminator 2 view .LVU1414
  9263. 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9264. 4732 .loc 1 2359 3 discriminator 2 view .LVU1415
  9265. 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9266. 4733 .loc 1 2359 10 is_stmt 0 discriminator 2 view .LVU1416
  9267. 4734 002a 1846 mov r0, r3
  9268. 4735 .LVL357:
  9269. 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9270. 4736 .loc 1 2359 10 discriminator 2 view .LVU1417
  9271. 4737 002c 7047 bx lr
  9272. 4738 .LVL358:
  9273. 4739 .L296:
  9274. 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9275. 4740 .loc 1 2347 3 view .LVU1418
  9276. 4741 002e 0220 movs r0, #2
  9277. 4742 .LVL359:
  9278. 2360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9279. 4743 .loc 1 2360 1 view .LVU1419
  9280. 4744 0030 7047 bx lr
  9281. ARM GAS /tmp/ccGtkZvD.s page 161
  9282. 4745 .cfi_endproc
  9283. 4746 .LFE163:
  9284. 4748 .section .text.HAL_HalfDuplex_EnableTransmitter,"ax",%progbits
  9285. 4749 .align 1
  9286. 4750 .global HAL_HalfDuplex_EnableTransmitter
  9287. 4751 .syntax unified
  9288. 4752 .thumb
  9289. 4753 .thumb_func
  9290. 4755 HAL_HalfDuplex_EnableTransmitter:
  9291. 4756 .LVL360:
  9292. 4757 .LFB164:
  9293. 2369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
  9294. 4758 .loc 1 2369 1 is_stmt 1 view -0
  9295. 4759 .cfi_startproc
  9296. 4760 @ args = 0, pretend = 0, frame = 0
  9297. 4761 @ frame_needed = 0, uses_anonymous_args = 0
  9298. 4762 @ link register save eliminated.
  9299. 2370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9300. 4763 .loc 1 2370 3 view .LVU1421
  9301. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9302. 4764 .loc 1 2373 3 view .LVU1422
  9303. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9304. 4765 .loc 1 2373 3 view .LVU1423
  9305. 4766 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  9306. 4767 0004 012B cmp r3, #1
  9307. 4768 0006 14D0 beq .L299
  9308. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9309. 4769 .loc 1 2373 3 discriminator 2 view .LVU1424
  9310. 4770 0008 0123 movs r3, #1
  9311. 4771 000a 80F83830 strb r3, [r0, #56]
  9312. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9313. 4772 .loc 1 2373 3 discriminator 2 view .LVU1425
  9314. 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9315. 4773 .loc 1 2375 3 discriminator 2 view .LVU1426
  9316. 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9317. 4774 .loc 1 2375 17 is_stmt 0 discriminator 2 view .LVU1427
  9318. 4775 000e 2423 movs r3, #36
  9319. 4776 0010 80F83930 strb r3, [r0, #57]
  9320. 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9321. 4777 .loc 1 2378 3 is_stmt 1 discriminator 2 view .LVU1428
  9322. 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9323. 4778 .loc 1 2378 17 is_stmt 0 discriminator 2 view .LVU1429
  9324. 4779 0014 0268 ldr r2, [r0]
  9325. 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9326. 4780 .loc 1 2378 10 discriminator 2 view .LVU1430
  9327. 4781 0016 D368 ldr r3, [r2, #12]
  9328. 4782 .LVL361:
  9329. 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9330. 4783 .loc 1 2381 3 is_stmt 1 discriminator 2 view .LVU1431
  9331. 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9332. 4784 .loc 1 2381 10 is_stmt 0 discriminator 2 view .LVU1432
  9333. 4785 0018 23F00C03 bic r3, r3, #12
  9334. 4786 .LVL362:
  9335. 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9336. 4787 .loc 1 2384 3 is_stmt 1 discriminator 2 view .LVU1433
  9337. 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9338. 4788 .loc 1 2384 10 is_stmt 0 discriminator 2 view .LVU1434
  9339. ARM GAS /tmp/ccGtkZvD.s page 162
  9340. 4789 001c 43F00803 orr r3, r3, #8
  9341. 4790 .LVL363:
  9342. 2387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9343. 4791 .loc 1 2387 3 is_stmt 1 discriminator 2 view .LVU1435
  9344. 4792 0020 D360 str r3, [r2, #12]
  9345. 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9346. 4793 .loc 1 2389 3 discriminator 2 view .LVU1436
  9347. 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9348. 4794 .loc 1 2389 17 is_stmt 0 discriminator 2 view .LVU1437
  9349. 4795 0022 2023 movs r3, #32
  9350. 4796 .LVL364:
  9351. 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9352. 4797 .loc 1 2389 17 discriminator 2 view .LVU1438
  9353. 4798 0024 80F83930 strb r3, [r0, #57]
  9354. 4799 .LVL365:
  9355. 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9356. 4800 .loc 1 2392 3 is_stmt 1 discriminator 2 view .LVU1439
  9357. 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9358. 4801 .loc 1 2392 3 discriminator 2 view .LVU1440
  9359. 4802 0028 0023 movs r3, #0
  9360. 4803 002a 80F83830 strb r3, [r0, #56]
  9361. 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9362. 4804 .loc 1 2392 3 discriminator 2 view .LVU1441
  9363. 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9364. 4805 .loc 1 2394 3 discriminator 2 view .LVU1442
  9365. 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9366. 4806 .loc 1 2394 10 is_stmt 0 discriminator 2 view .LVU1443
  9367. 4807 002e 1846 mov r0, r3
  9368. 4808 .LVL366:
  9369. 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9370. 4809 .loc 1 2394 10 discriminator 2 view .LVU1444
  9371. 4810 0030 7047 bx lr
  9372. 4811 .LVL367:
  9373. 4812 .L299:
  9374. 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9375. 4813 .loc 1 2373 3 view .LVU1445
  9376. 4814 0032 0220 movs r0, #2
  9377. 4815 .LVL368:
  9378. 2395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9379. 4816 .loc 1 2395 1 view .LVU1446
  9380. 4817 0034 7047 bx lr
  9381. 4818 .cfi_endproc
  9382. 4819 .LFE164:
  9383. 4821 .section .text.HAL_HalfDuplex_EnableReceiver,"ax",%progbits
  9384. 4822 .align 1
  9385. 4823 .global HAL_HalfDuplex_EnableReceiver
  9386. 4824 .syntax unified
  9387. 4825 .thumb
  9388. 4826 .thumb_func
  9389. 4828 HAL_HalfDuplex_EnableReceiver:
  9390. 4829 .LVL369:
  9391. 4830 .LFB165:
  9392. 2404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
  9393. 4831 .loc 1 2404 1 is_stmt 1 view -0
  9394. 4832 .cfi_startproc
  9395. 4833 @ args = 0, pretend = 0, frame = 0
  9396. 4834 @ frame_needed = 0, uses_anonymous_args = 0
  9397. ARM GAS /tmp/ccGtkZvD.s page 163
  9398. 4835 @ link register save eliminated.
  9399. 2405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9400. 4836 .loc 1 2405 3 view .LVU1448
  9401. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9402. 4837 .loc 1 2408 3 view .LVU1449
  9403. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9404. 4838 .loc 1 2408 3 view .LVU1450
  9405. 4839 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
  9406. 4840 0004 012B cmp r3, #1
  9407. 4841 0006 14D0 beq .L302
  9408. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9409. 4842 .loc 1 2408 3 discriminator 2 view .LVU1451
  9410. 4843 0008 0123 movs r3, #1
  9411. 4844 000a 80F83830 strb r3, [r0, #56]
  9412. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9413. 4845 .loc 1 2408 3 discriminator 2 view .LVU1452
  9414. 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9415. 4846 .loc 1 2410 3 discriminator 2 view .LVU1453
  9416. 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9417. 4847 .loc 1 2410 17 is_stmt 0 discriminator 2 view .LVU1454
  9418. 4848 000e 2423 movs r3, #36
  9419. 4849 0010 80F83930 strb r3, [r0, #57]
  9420. 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9421. 4850 .loc 1 2413 3 is_stmt 1 discriminator 2 view .LVU1455
  9422. 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9423. 4851 .loc 1 2413 17 is_stmt 0 discriminator 2 view .LVU1456
  9424. 4852 0014 0268 ldr r2, [r0]
  9425. 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9426. 4853 .loc 1 2413 10 discriminator 2 view .LVU1457
  9427. 4854 0016 D368 ldr r3, [r2, #12]
  9428. 4855 .LVL370:
  9429. 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9430. 4856 .loc 1 2416 3 is_stmt 1 discriminator 2 view .LVU1458
  9431. 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9432. 4857 .loc 1 2416 10 is_stmt 0 discriminator 2 view .LVU1459
  9433. 4858 0018 23F00C03 bic r3, r3, #12
  9434. 4859 .LVL371:
  9435. 2419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9436. 4860 .loc 1 2419 3 is_stmt 1 discriminator 2 view .LVU1460
  9437. 2419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9438. 4861 .loc 1 2419 10 is_stmt 0 discriminator 2 view .LVU1461
  9439. 4862 001c 43F00403 orr r3, r3, #4
  9440. 4863 .LVL372:
  9441. 2422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9442. 4864 .loc 1 2422 3 is_stmt 1 discriminator 2 view .LVU1462
  9443. 4865 0020 D360 str r3, [r2, #12]
  9444. 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9445. 4866 .loc 1 2424 3 discriminator 2 view .LVU1463
  9446. 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9447. 4867 .loc 1 2424 17 is_stmt 0 discriminator 2 view .LVU1464
  9448. 4868 0022 2023 movs r3, #32
  9449. 4869 .LVL373:
  9450. 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9451. 4870 .loc 1 2424 17 discriminator 2 view .LVU1465
  9452. 4871 0024 80F83930 strb r3, [r0, #57]
  9453. 4872 .LVL374:
  9454. 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9455. ARM GAS /tmp/ccGtkZvD.s page 164
  9456. 4873 .loc 1 2427 3 is_stmt 1 discriminator 2 view .LVU1466
  9457. 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9458. 4874 .loc 1 2427 3 discriminator 2 view .LVU1467
  9459. 4875 0028 0023 movs r3, #0
  9460. 4876 002a 80F83830 strb r3, [r0, #56]
  9461. 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9462. 4877 .loc 1 2427 3 discriminator 2 view .LVU1468
  9463. 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9464. 4878 .loc 1 2429 3 discriminator 2 view .LVU1469
  9465. 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9466. 4879 .loc 1 2429 10 is_stmt 0 discriminator 2 view .LVU1470
  9467. 4880 002e 1846 mov r0, r3
  9468. 4881 .LVL375:
  9469. 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9470. 4882 .loc 1 2429 10 discriminator 2 view .LVU1471
  9471. 4883 0030 7047 bx lr
  9472. 4884 .LVL376:
  9473. 4885 .L302:
  9474. 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9475. 4886 .loc 1 2408 3 view .LVU1472
  9476. 4887 0032 0220 movs r0, #2
  9477. 4888 .LVL377:
  9478. 2430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9479. 4889 .loc 1 2430 1 view .LVU1473
  9480. 4890 0034 7047 bx lr
  9481. 4891 .cfi_endproc
  9482. 4892 .LFE165:
  9483. 4894 .section .text.HAL_UART_GetState,"ax",%progbits
  9484. 4895 .align 1
  9485. 4896 .global HAL_UART_GetState
  9486. 4897 .syntax unified
  9487. 4898 .thumb
  9488. 4899 .thumb_func
  9489. 4901 HAL_UART_GetState:
  9490. 4902 .LVL378:
  9491. 4903 .LFB166:
  9492. 2461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t temp1 = 0x00U, temp2 = 0x00U;
  9493. 4904 .loc 1 2461 1 is_stmt 1 view -0
  9494. 4905 .cfi_startproc
  9495. 4906 @ args = 0, pretend = 0, frame = 0
  9496. 4907 @ frame_needed = 0, uses_anonymous_args = 0
  9497. 4908 @ link register save eliminated.
  9498. 2462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp1 = huart->gState;
  9499. 4909 .loc 1 2462 3 view .LVU1475
  9500. 2463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp2 = huart->RxState;
  9501. 4910 .loc 1 2463 3 view .LVU1476
  9502. 2463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp2 = huart->RxState;
  9503. 4911 .loc 1 2463 16 is_stmt 0 view .LVU1477
  9504. 4912 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
  9505. 4913 .LVL379:
  9506. 2464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9507. 4914 .loc 1 2464 3 is_stmt 1 view .LVU1478
  9508. 2464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9509. 4915 .loc 1 2464 16 is_stmt 0 view .LVU1479
  9510. 4916 0004 90F83A00 ldrb r0, [r0, #58] @ zero_extendqisi2
  9511. 4917 .LVL380:
  9512. 2466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9513. ARM GAS /tmp/ccGtkZvD.s page 165
  9514. 4918 .loc 1 2466 3 is_stmt 1 view .LVU1480
  9515. 2467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9516. 4919 .loc 1 2467 1 is_stmt 0 view .LVU1481
  9517. 4920 0008 1843 orrs r0, r0, r3
  9518. 4921 .LVL381:
  9519. 2467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9520. 4922 .loc 1 2467 1 view .LVU1482
  9521. 4923 000a 7047 bx lr
  9522. 4924 .cfi_endproc
  9523. 4925 .LFE166:
  9524. 4927 .section .text.HAL_UART_GetError,"ax",%progbits
  9525. 4928 .align 1
  9526. 4929 .global HAL_UART_GetError
  9527. 4930 .syntax unified
  9528. 4931 .thumb
  9529. 4932 .thumb_func
  9530. 4934 HAL_UART_GetError:
  9531. 4935 .LVL382:
  9532. 4936 .LFB167:
  9533. 2476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return huart->ErrorCode;
  9534. 4937 .loc 1 2476 1 is_stmt 1 view -0
  9535. 4938 .cfi_startproc
  9536. 4939 @ args = 0, pretend = 0, frame = 0
  9537. 4940 @ frame_needed = 0, uses_anonymous_args = 0
  9538. 4941 @ link register save eliminated.
  9539. 2477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9540. 4942 .loc 1 2477 3 view .LVU1484
  9541. 2477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
  9542. 4943 .loc 1 2477 15 is_stmt 0 view .LVU1485
  9543. 4944 0000 C06B ldr r0, [r0, #60]
  9544. 4945 .LVL383:
  9545. 2478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
  9546. 4946 .loc 1 2478 1 view .LVU1486
  9547. 4947 0002 7047 bx lr
  9548. 4948 .cfi_endproc
  9549. 4949 .LFE167:
  9550. 4951 .text
  9551. 4952 .Letext0:
  9552. 4953 .file 2 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
  9553. 4954 .file 3 "/home/gitc/\346\241\214\351\235\242/gcc-arm-none-eabi-10.3-2021.10/arm-none-eabi/include/
  9554. 4955 .file 4 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
  9555. 4956 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
  9556. 4957 .file 6 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
  9557. 4958 .file 7 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h"
  9558. 4959 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h"
  9559. 4960 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h"
  9560. 4961 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h"
  9561. ARM GAS /tmp/ccGtkZvD.s page 166
  9562. DEFINED SYMBOLS
  9563. *ABS*:0000000000000000 stm32f4xx_hal_uart.c
  9564. /tmp/ccGtkZvD.s:20 .text.UART_EndTxTransfer:0000000000000000 $t
  9565. /tmp/ccGtkZvD.s:25 .text.UART_EndTxTransfer:0000000000000000 UART_EndTxTransfer
  9566. /tmp/ccGtkZvD.s:49 .text.UART_EndRxTransfer:0000000000000000 $t
  9567. /tmp/ccGtkZvD.s:54 .text.UART_EndRxTransfer:0000000000000000 UART_EndRxTransfer
  9568. /tmp/ccGtkZvD.s:82 .text.UART_Transmit_IT:0000000000000000 $t
  9569. /tmp/ccGtkZvD.s:87 .text.UART_Transmit_IT:0000000000000000 UART_Transmit_IT
  9570. /tmp/ccGtkZvD.s:195 .text.UART_SetConfig:0000000000000000 $t
  9571. /tmp/ccGtkZvD.s:200 .text.UART_SetConfig:0000000000000000 UART_SetConfig
  9572. /tmp/ccGtkZvD.s:572 .text.UART_SetConfig:0000000000000320 $d
  9573. /tmp/ccGtkZvD.s:578 .text.UART_WaitOnFlagUntilTimeout:0000000000000000 $t
  9574. /tmp/ccGtkZvD.s:583 .text.UART_WaitOnFlagUntilTimeout:0000000000000000 UART_WaitOnFlagUntilTimeout
  9575. /tmp/ccGtkZvD.s:676 .text.HAL_UART_MspInit:0000000000000000 $t
  9576. /tmp/ccGtkZvD.s:682 .text.HAL_UART_MspInit:0000000000000000 HAL_UART_MspInit
  9577. /tmp/ccGtkZvD.s:697 .text.HAL_UART_Init:0000000000000000 $t
  9578. /tmp/ccGtkZvD.s:703 .text.HAL_UART_Init:0000000000000000 HAL_UART_Init
  9579. /tmp/ccGtkZvD.s:798 .text.HAL_HalfDuplex_Init:0000000000000000 $t
  9580. /tmp/ccGtkZvD.s:804 .text.HAL_HalfDuplex_Init:0000000000000000 HAL_HalfDuplex_Init
  9581. /tmp/ccGtkZvD.s:904 .text.HAL_LIN_Init:0000000000000000 $t
  9582. /tmp/ccGtkZvD.s:910 .text.HAL_LIN_Init:0000000000000000 HAL_LIN_Init
  9583. /tmp/ccGtkZvD.s:1029 .text.HAL_MultiProcessor_Init:0000000000000000 $t
  9584. /tmp/ccGtkZvD.s:1035 .text.HAL_MultiProcessor_Init:0000000000000000 HAL_MultiProcessor_Init
  9585. /tmp/ccGtkZvD.s:1161 .text.HAL_UART_MspDeInit:0000000000000000 $t
  9586. /tmp/ccGtkZvD.s:1167 .text.HAL_UART_MspDeInit:0000000000000000 HAL_UART_MspDeInit
  9587. /tmp/ccGtkZvD.s:1182 .text.HAL_UART_DeInit:0000000000000000 $t
  9588. /tmp/ccGtkZvD.s:1188 .text.HAL_UART_DeInit:0000000000000000 HAL_UART_DeInit
  9589. /tmp/ccGtkZvD.s:1250 .text.HAL_UART_Transmit:0000000000000000 $t
  9590. /tmp/ccGtkZvD.s:1256 .text.HAL_UART_Transmit:0000000000000000 HAL_UART_Transmit
  9591. /tmp/ccGtkZvD.s:1494 .text.HAL_UART_Receive:0000000000000000 $t
  9592. /tmp/ccGtkZvD.s:1500 .text.HAL_UART_Receive:0000000000000000 HAL_UART_Receive
  9593. /tmp/ccGtkZvD.s:1749 .text.HAL_UART_Transmit_IT:0000000000000000 $t
  9594. /tmp/ccGtkZvD.s:1755 .text.HAL_UART_Transmit_IT:0000000000000000 HAL_UART_Transmit_IT
  9595. /tmp/ccGtkZvD.s:1853 .text.HAL_UART_Receive_IT:0000000000000000 $t
  9596. /tmp/ccGtkZvD.s:1859 .text.HAL_UART_Receive_IT:0000000000000000 HAL_UART_Receive_IT
  9597. /tmp/ccGtkZvD.s:1967 .text.HAL_UART_Transmit_DMA:0000000000000000 $t
  9598. /tmp/ccGtkZvD.s:1973 .text.HAL_UART_Transmit_DMA:0000000000000000 HAL_UART_Transmit_DMA
  9599. /tmp/ccGtkZvD.s:2117 .text.HAL_UART_Transmit_DMA:0000000000000080 $d
  9600. /tmp/ccGtkZvD.s:2993 .text.UART_DMATransmitCplt:0000000000000000 UART_DMATransmitCplt
  9601. /tmp/ccGtkZvD.s:3113 .text.UART_DMATxHalfCplt:0000000000000000 UART_DMATxHalfCplt
  9602. /tmp/ccGtkZvD.s:3468 .text.UART_DMAError:0000000000000000 UART_DMAError
  9603. /tmp/ccGtkZvD.s:2124 .text.HAL_UART_Receive_DMA:0000000000000000 $t
  9604. /tmp/ccGtkZvD.s:2130 .text.HAL_UART_Receive_DMA:0000000000000000 HAL_UART_Receive_DMA
  9605. /tmp/ccGtkZvD.s:2294 .text.HAL_UART_Receive_DMA:000000000000009c $d
  9606. /tmp/ccGtkZvD.s:3166 .text.UART_DMAReceiveCplt:0000000000000000 UART_DMAReceiveCplt
  9607. /tmp/ccGtkZvD.s:3415 .text.UART_DMARxHalfCplt:0000000000000000 UART_DMARxHalfCplt
  9608. /tmp/ccGtkZvD.s:2301 .text.HAL_UART_DMAPause:0000000000000000 $t
  9609. /tmp/ccGtkZvD.s:2307 .text.HAL_UART_DMAPause:0000000000000000 HAL_UART_DMAPause
  9610. /tmp/ccGtkZvD.s:2409 .text.HAL_UART_DMAResume:0000000000000000 $t
  9611. /tmp/ccGtkZvD.s:2415 .text.HAL_UART_DMAResume:0000000000000000 HAL_UART_DMAResume
  9612. /tmp/ccGtkZvD.s:2527 .text.HAL_UART_DMAStop:0000000000000000 $t
  9613. /tmp/ccGtkZvD.s:2533 .text.HAL_UART_DMAStop:0000000000000000 HAL_UART_DMAStop
  9614. /tmp/ccGtkZvD.s:2636 .text.HAL_UART_Abort:0000000000000000 $t
  9615. /tmp/ccGtkZvD.s:2642 .text.HAL_UART_Abort:0000000000000000 HAL_UART_Abort
  9616. /tmp/ccGtkZvD.s:2784 .text.HAL_UART_AbortTransmit:0000000000000000 $t
  9617. /tmp/ccGtkZvD.s:2790 .text.HAL_UART_AbortTransmit:0000000000000000 HAL_UART_AbortTransmit
  9618. /tmp/ccGtkZvD.s:2873 .text.HAL_UART_AbortReceive:0000000000000000 $t
  9619. ARM GAS /tmp/ccGtkZvD.s page 167
  9620. /tmp/ccGtkZvD.s:2879 .text.HAL_UART_AbortReceive:0000000000000000 HAL_UART_AbortReceive
  9621. /tmp/ccGtkZvD.s:2967 .text.HAL_UART_TxCpltCallback:0000000000000000 $t
  9622. /tmp/ccGtkZvD.s:2973 .text.HAL_UART_TxCpltCallback:0000000000000000 HAL_UART_TxCpltCallback
  9623. /tmp/ccGtkZvD.s:2988 .text.UART_DMATransmitCplt:0000000000000000 $t
  9624. /tmp/ccGtkZvD.s:3049 .text.UART_EndTransmit_IT:0000000000000000 $t
  9625. /tmp/ccGtkZvD.s:3054 .text.UART_EndTransmit_IT:0000000000000000 UART_EndTransmit_IT
  9626. /tmp/ccGtkZvD.s:3087 .text.HAL_UART_TxHalfCpltCallback:0000000000000000 $t
  9627. /tmp/ccGtkZvD.s:3093 .text.HAL_UART_TxHalfCpltCallback:0000000000000000 HAL_UART_TxHalfCpltCallback
  9628. /tmp/ccGtkZvD.s:3108 .text.UART_DMATxHalfCplt:0000000000000000 $t
  9629. /tmp/ccGtkZvD.s:3140 .text.HAL_UART_RxCpltCallback:0000000000000000 $t
  9630. /tmp/ccGtkZvD.s:3146 .text.HAL_UART_RxCpltCallback:0000000000000000 HAL_UART_RxCpltCallback
  9631. /tmp/ccGtkZvD.s:3161 .text.UART_DMAReceiveCplt:0000000000000000 $t
  9632. /tmp/ccGtkZvD.s:3226 .text.UART_Receive_IT:0000000000000000 $t
  9633. /tmp/ccGtkZvD.s:3231 .text.UART_Receive_IT:0000000000000000 UART_Receive_IT
  9634. /tmp/ccGtkZvD.s:3389 .text.HAL_UART_RxHalfCpltCallback:0000000000000000 $t
  9635. /tmp/ccGtkZvD.s:3395 .text.HAL_UART_RxHalfCpltCallback:0000000000000000 HAL_UART_RxHalfCpltCallback
  9636. /tmp/ccGtkZvD.s:3410 .text.UART_DMARxHalfCplt:0000000000000000 $t
  9637. /tmp/ccGtkZvD.s:3442 .text.HAL_UART_ErrorCallback:0000000000000000 $t
  9638. /tmp/ccGtkZvD.s:3448 .text.HAL_UART_ErrorCallback:0000000000000000 HAL_UART_ErrorCallback
  9639. /tmp/ccGtkZvD.s:3463 .text.UART_DMAError:0000000000000000 $t
  9640. /tmp/ccGtkZvD.s:3565 .text.HAL_UART_IRQHandler:0000000000000000 $t
  9641. /tmp/ccGtkZvD.s:3571 .text.HAL_UART_IRQHandler:0000000000000000 HAL_UART_IRQHandler
  9642. /tmp/ccGtkZvD.s:3837 .text.HAL_UART_IRQHandler:000000000000011c $d
  9643. /tmp/ccGtkZvD.s:3847 .text.UART_DMAAbortOnError:0000000000000000 UART_DMAAbortOnError
  9644. /tmp/ccGtkZvD.s:3842 .text.UART_DMAAbortOnError:0000000000000000 $t
  9645. /tmp/ccGtkZvD.s:3880 .text.HAL_UART_AbortCpltCallback:0000000000000000 $t
  9646. /tmp/ccGtkZvD.s:3886 .text.HAL_UART_AbortCpltCallback:0000000000000000 HAL_UART_AbortCpltCallback
  9647. /tmp/ccGtkZvD.s:3901 .text.HAL_UART_Abort_IT:0000000000000000 $t
  9648. /tmp/ccGtkZvD.s:3907 .text.HAL_UART_Abort_IT:0000000000000000 HAL_UART_Abort_IT
  9649. /tmp/ccGtkZvD.s:4097 .text.HAL_UART_Abort_IT:00000000000000bc $d
  9650. /tmp/ccGtkZvD.s:4174 .text.UART_DMATxAbortCallback:0000000000000000 UART_DMATxAbortCallback
  9651. /tmp/ccGtkZvD.s:4108 .text.UART_DMARxAbortCallback:0000000000000000 UART_DMARxAbortCallback
  9652. /tmp/ccGtkZvD.s:4103 .text.UART_DMARxAbortCallback:0000000000000000 $t
  9653. /tmp/ccGtkZvD.s:4169 .text.UART_DMATxAbortCallback:0000000000000000 $t
  9654. /tmp/ccGtkZvD.s:4235 .text.HAL_UART_AbortTransmitCpltCallback:0000000000000000 $t
  9655. /tmp/ccGtkZvD.s:4241 .text.HAL_UART_AbortTransmitCpltCallback:0000000000000000 HAL_UART_AbortTransmitCpltCallback
  9656. /tmp/ccGtkZvD.s:4256 .text.HAL_UART_AbortTransmit_IT:0000000000000000 $t
  9657. /tmp/ccGtkZvD.s:4262 .text.HAL_UART_AbortTransmit_IT:0000000000000000 HAL_UART_AbortTransmit_IT
  9658. /tmp/ccGtkZvD.s:4357 .text.HAL_UART_AbortTransmit_IT:000000000000005c $d
  9659. /tmp/ccGtkZvD.s:4367 .text.UART_DMATxOnlyAbortCallback:0000000000000000 UART_DMATxOnlyAbortCallback
  9660. /tmp/ccGtkZvD.s:4362 .text.UART_DMATxOnlyAbortCallback:0000000000000000 $t
  9661. /tmp/ccGtkZvD.s:4401 .text.HAL_UART_AbortReceiveCpltCallback:0000000000000000 $t
  9662. /tmp/ccGtkZvD.s:4407 .text.HAL_UART_AbortReceiveCpltCallback:0000000000000000 HAL_UART_AbortReceiveCpltCallback
  9663. /tmp/ccGtkZvD.s:4422 .text.HAL_UART_AbortReceive_IT:0000000000000000 $t
  9664. /tmp/ccGtkZvD.s:4428 .text.HAL_UART_AbortReceive_IT:0000000000000000 HAL_UART_AbortReceive_IT
  9665. /tmp/ccGtkZvD.s:4528 .text.HAL_UART_AbortReceive_IT:0000000000000064 $d
  9666. /tmp/ccGtkZvD.s:4538 .text.UART_DMARxOnlyAbortCallback:0000000000000000 UART_DMARxOnlyAbortCallback
  9667. /tmp/ccGtkZvD.s:4533 .text.UART_DMARxOnlyAbortCallback:0000000000000000 $t
  9668. /tmp/ccGtkZvD.s:4572 .text.HAL_LIN_SendBreak:0000000000000000 $t
  9669. /tmp/ccGtkZvD.s:4578 .text.HAL_LIN_SendBreak:0000000000000000 HAL_LIN_SendBreak
  9670. /tmp/ccGtkZvD.s:4631 .text.HAL_MultiProcessor_EnterMuteMode:0000000000000000 $t
  9671. /tmp/ccGtkZvD.s:4637 .text.HAL_MultiProcessor_EnterMuteMode:0000000000000000 HAL_MultiProcessor_EnterMuteMode
  9672. /tmp/ccGtkZvD.s:4690 .text.HAL_MultiProcessor_ExitMuteMode:0000000000000000 $t
  9673. /tmp/ccGtkZvD.s:4696 .text.HAL_MultiProcessor_ExitMuteMode:0000000000000000 HAL_MultiProcessor_ExitMuteMode
  9674. /tmp/ccGtkZvD.s:4749 .text.HAL_HalfDuplex_EnableTransmitter:0000000000000000 $t
  9675. /tmp/ccGtkZvD.s:4755 .text.HAL_HalfDuplex_EnableTransmitter:0000000000000000 HAL_HalfDuplex_EnableTransmitter
  9676. /tmp/ccGtkZvD.s:4822 .text.HAL_HalfDuplex_EnableReceiver:0000000000000000 $t
  9677. ARM GAS /tmp/ccGtkZvD.s page 168
  9678. /tmp/ccGtkZvD.s:4828 .text.HAL_HalfDuplex_EnableReceiver:0000000000000000 HAL_HalfDuplex_EnableReceiver
  9679. /tmp/ccGtkZvD.s:4895 .text.HAL_UART_GetState:0000000000000000 $t
  9680. /tmp/ccGtkZvD.s:4901 .text.HAL_UART_GetState:0000000000000000 HAL_UART_GetState
  9681. /tmp/ccGtkZvD.s:4928 .text.HAL_UART_GetError:0000000000000000 $t
  9682. /tmp/ccGtkZvD.s:4934 .text.HAL_UART_GetError:0000000000000000 HAL_UART_GetError
  9683. UNDEFINED SYMBOLS
  9684. HAL_RCC_GetPCLK1Freq
  9685. HAL_RCC_GetPCLK2Freq
  9686. HAL_GetTick
  9687. HAL_DMA_Start_IT
  9688. HAL_DMA_Abort
  9689. HAL_DMA_GetError
  9690. HAL_DMA_Abort_IT