1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431 |
- ARM GAS /tmp/ccD7nRW1.s page 1
- 1 .cpu cortex-m4
- 2 .eabi_attribute 27, 1
- 3 .eabi_attribute 28, 1
- 4 .eabi_attribute 20, 1
- 5 .eabi_attribute 21, 1
- 6 .eabi_attribute 23, 3
- 7 .eabi_attribute 24, 1
- 8 .eabi_attribute 25, 1
- 9 .eabi_attribute 26, 1
- 10 .eabi_attribute 30, 1
- 11 .eabi_attribute 34, 1
- 12 .eabi_attribute 18, 4
- 13 .file "stm32f4xx_hal_uart.c"
- 14 .text
- 15 .Ltext0:
- 16 .cfi_sections .debug_frame
- 17 .section .text.UART_EndTxTransfer,"ax",%progbits
- 18 .align 1
- 19 .syntax unified
- 20 .thumb
- 21 .thumb_func
- 22 .fpu fpv4-sp-d16
- 24 UART_EndTxTransfer:
- 25 .LFB174:
- 26 .file 1 "Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c"
- 1:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
- 3:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @file stm32f4xx_hal_uart.c
- 4:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @author MCD Application Team
- 5:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART HAL module driver.
- 6:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This file provides firmware functions to manage the following
- 7:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * functionalities of the Universal Asynchronous Receiver Transmitter Peripheral (UART).
- 8:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Initialization and de-initialization functions
- 9:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + IO operation functions
- 10:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Peripheral Control functions
- 11:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * + Peripheral State and Errors functions
- 12:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
- 13:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 14:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### How to use this driver #####
- 15:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 16:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 17:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The UART HAL driver can be used as follows:
- 18:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 19:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Declare a UART_HandleTypeDef handle structure (eg. UART_HandleTypeDef huart).
- 20:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Initialize the UART low level resources by implementing the HAL_UART_MspInit() API:
- 21:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) Enable the USARTx interface clock.
- 22:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) UART pins configuration:
- 23:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the clock for the UART GPIOs.
- 24:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure these UART pins (TX as alternate function pull-up, RX as alternate func
- 25:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) NVIC configuration if you need to use interrupt process (HAL_UART_Transmit_IT()
- 26:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_Receive_IT() APIs):
- 27:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the USARTx interrupt priority.
- 28:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the NVIC USART IRQ handle.
- 29:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (##) DMA Configuration if you need to use DMA process (HAL_UART_Transmit_DMA()
- 30:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_Receive_DMA() APIs):
- 31:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Declare a DMA handle structure for the Tx/Rx stream.
- 32:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Enable the DMAx interface clock.
- ARM GAS /tmp/ccD7nRW1.s page 2
- 33:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the declared DMA handle structure with the required
- 34:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Tx/Rx parameters.
- 35:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the DMA Tx/Rx stream.
- 36:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Associate the initialized DMA handle to the UART DMA Tx/Rx handle.
- 37:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the priority and enable the NVIC for the transfer complete
- 38:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** interrupt on the DMA Tx/Rx stream.
- 39:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+++) Configure the USARTx interrupt priority and enable the NVIC USART IRQ handle
- 40:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (used for last byte sending completion detection in DMA non circular mode)
- 41:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 42:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Program the Baud Rate, Word Length, Stop Bit, Parity, Hardware
- 43:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** flow control and Mode(Receiver/Transmitter) in the huart Init structure.
- 44:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 45:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the UART asynchronous mode, initialize the UART registers by calling
- 46:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_Init() API.
- 47:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 48:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the UART Half duplex mode, initialize the UART registers by calling
- 49:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_HalfDuplex_Init() API.
- 50:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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.
- 52:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 53:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) For the Multi-Processor mode, initialize the UART registers by calling
- 54:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_MultiProcessor_Init() API.
- 55:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 56:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 57:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) The specific UART interrupts (Transmission complete interrupt,
- 58:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RXNE interrupt and Error Interrupts) will be managed using the macros
- 59:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT() and __HAL_UART_DISABLE_IT() inside the transmit
- 60:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and receive process.
- 61:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 62:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 63:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) These APIs (HAL_UART_Init() and HAL_HalfDuplex_Init()) configure also the
- 64:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** low level Hardware GPIO, CLOCK, CORTEX...etc) by calling the customized
- 65:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit() API.
- 66:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 67:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Callback registration #####
- 68:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==================================
- 69:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 70:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 71:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The compilation define USE_HAL_UART_REGISTER_CALLBACKS when set to 1
- 72:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** allows the user to configure dynamically the driver callbacks.
- 73:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 74:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 75:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Use Function @ref HAL_UART_RegisterCallback() to register a user callback.
- 76:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Function @ref HAL_UART_RegisterCallback() allows to register following callbacks:
- 77:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxHalfCpltCallback : Tx Half Complete Callback.
- 78:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxCpltCallback : Tx Complete Callback.
- 79:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxHalfCpltCallback : Rx Half Complete Callback.
- 80:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxCpltCallback : Rx Complete Callback.
- 81:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) ErrorCallback : Error Callback.
- 82:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortCpltCallback : Abort Complete Callback.
- 83:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortTransmitCpltCallback : Abort Transmit Complete Callback.
- 84:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortReceiveCpltCallback : Abort Receive Complete Callback.
- 85:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspInitCallback : UART MspInit.
- 86:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspDeInitCallback : UART MspDeInit.
- 87:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This function takes as parameters the HAL peripheral handle, the Callback ID
- 88:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and a pointer to the user callback function.
- 89:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 3
- 90:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 91:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Use function @ref HAL_UART_UnRegisterCallback() to reset a callback to the default
- 92:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** weak (surcharged) function.
- 93:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @ref HAL_UART_UnRegisterCallback() takes as parameters the HAL peripheral handle,
- 94:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and the Callback ID.
- 95:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This function allows to reset following callbacks:
- 96:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxHalfCpltCallback : Tx Half Complete Callback.
- 97:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) TxCpltCallback : Tx Complete Callback.
- 98:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxHalfCpltCallback : Rx Half Complete Callback.
- 99:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) RxCpltCallback : Rx Complete Callback.
- 100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) ErrorCallback : Error Callback.
- 101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortCpltCallback : Abort Complete Callback.
- 102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortTransmitCpltCallback : Abort Transmit Complete Callback.
- 103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) AbortReceiveCpltCallback : Abort Receive Complete Callback.
- 104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspInitCallback : UART MspInit.
- 105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) MspDeInitCallback : UART MspDeInit.
- 106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 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
- 109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** all callbacks are set to the corresponding weak (surcharged) functions:
- 110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** examples @ref HAL_UART_TxCpltCallback(), @ref HAL_UART_RxHalfCpltCallback().
- 111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Exception done for MspInit and MspDeInit functions that are respectively
- 112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** reset to the legacy weak (surcharged) functions in the @ref HAL_UART_Init()
- 113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and @ref HAL_UART_DeInit() only when these callbacks are null (not registered beforehand).
- 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()
- 115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** keep and use the user MspInit/MspDeInit callbacks (registered beforehand).
- 116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Callbacks can be registered/unregistered in HAL_UART_STATE_READY state only.
- 119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Exception done MspInit/MspDeInit that can be registered/unregistered
- 120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in HAL_UART_STATE_READY or HAL_UART_STATE_RESET state, thus registered (user)
- 121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MspInit/DeInit callbacks can be used during the Init/DeInit.
- 122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** In that case first register the MspInit/MspDeInit user callbacks
- 123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** using @ref HAL_UART_RegisterCallback() before calling @ref HAL_UART_DeInit()
- 124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** or @ref HAL_UART_Init() function.
- 125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** When The compilation define USE_HAL_UART_REGISTER_CALLBACKS is set to 0 or
- 128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** not defined, the callback registration feature is not available
- 129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and weak (surcharged) callbacks are used.
- 130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Three operation modes are available within this driver :
- 133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** Polling mode IO operation ***
- 135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** =================================
- 136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Send an amount of data in blocking mode using HAL_UART_Transmit()
- 138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Receive an amount of data in blocking mode using HAL_UART_Receive()
- 139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** Interrupt mode IO operation ***
- 141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===================================
- 142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Send an amount of data in non blocking mode using HAL_UART_Transmit_IT()
- 144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of transfer HAL_UART_TxCpltCallback is executed and user can
- 145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxCpltCallback
- 146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Receive an amount of data in non blocking mode using HAL_UART_Receive_IT()
- ARM GAS /tmp/ccD7nRW1.s page 4
- 147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of transfer HAL_UART_RxCpltCallback is executed and user can
- 148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxCpltCallback
- 149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) In case of transfer Error, HAL_UART_ErrorCallback() function is executed and user can
- 150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_ErrorCallback
- 151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** DMA mode IO operation ***
- 153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================
- 154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 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()
- 156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of half transfer HAL_UART_TxHalfCpltCallback is executed and user ca
- 157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxHalfCpltCallback
- 158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At transmission end of transfer HAL_UART_TxCpltCallback is executed and user can
- 159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_TxCpltCallback
- 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()
- 161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of half transfer HAL_UART_RxHalfCpltCallback is executed and user can
- 162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxHalfCpltCallback
- 163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) At reception end of transfer HAL_UART_RxCpltCallback is executed and user can
- 164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_RxCpltCallback
- 165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) In case of transfer Error, HAL_UART_ErrorCallback() function is executed and user can
- 166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** add his own code by customization of function pointer HAL_UART_ErrorCallback
- 167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Pause the DMA Transfer using HAL_UART_DMAPause()
- 168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Resume the DMA Transfer using HAL_UART_DMAResume()
- 169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Stop the DMA Transfer using HAL_UART_DMAStop()
- 170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *** UART HAL driver macros list ***
- 172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** =============================================
- 173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Below the list of most used macros in UART HAL driver.
- 175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_ENABLE: Enable the UART peripheral
- 177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_DISABLE: Disable the UART peripheral
- 178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_GET_FLAG : Check whether the specified UART flag is set or not
- 179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_CLEAR_FLAG : Clear the specified UART pending flag
- 180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_ENABLE_IT: Enable the specified UART interrupt
- 181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) __HAL_UART_DISABLE_IT: Disable the specified UART interrupt
- 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
- 183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (@) You can refer to the UART HAL driver header file for more useful macros
- 186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
- 188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 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
- 190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the data register is transmitted but is changed by the parity bit.
- 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),
- 192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the possible UART frame formats are as listed in the following table:
- 193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** +-------------------------------------------------------------+
- 194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | M bit | PCE bit | UART frame |
- 195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------------------|---------------------------------------|
- 196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 0 | 0 | | SB | 8 bit data | STB | |
- 197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
- 198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 0 | 1 | | SB | 7 bit data | PB | STB | |
- 199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
- 200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 1 | 0 | | SB | 9 bit data | STB | |
- 201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** |---------|-----------|---------------------------------------|
- 202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** | 1 | 1 | | SB | 8 bit data | PB | STB | |
- 203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** +-------------------------------------------------------------+
- ARM GAS /tmp/ccD7nRW1.s page 5
- 204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
- 205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @attention
- 206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * <h2><center>© Copyright (c) 2016 STMicroelectronics.
- 208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * All rights reserved.</center></h2>
- 209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This software component is licensed by ST under BSD 3-Clause license,
- 211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the "License"; You may not use this file except in compliance with the
- 212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * License. You may obtain a copy of the License at:
- 213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * opensource.org/licenses/BSD-3-Clause
- 214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ******************************************************************************
- 216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Includes ------------------------------------------------------------------*/
- 219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #include "stm32f4xx_hal.h"
- 220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup STM32F4xx_HAL_Driver
- 222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART UART
- 226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief HAL UART module driver
- 227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #ifdef HAL_UART_MODULE_ENABLED
- 230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private typedef -----------------------------------------------------------*/
- 232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private define ------------------------------------------------------------*/
- 233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup UART_Private_Constants
- 234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private macro -------------------------------------------------------------*/
- 240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private variables ---------------------------------------------------------*/
- 241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Private function prototypes -----------------------------------------------*/
- 242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @addtogroup UART_Private_Functions UART Private Functions
- 243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void UART_InitCallbacksToDefault(UART_HandleTypeDef *huart);
- 248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndTxTransfer(UART_HandleTypeDef *huart);
- 250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndRxTransfer(UART_HandleTypeDef *huart);
- 251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATransmitCplt(DMA_HandleTypeDef *hdma);
- 252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAReceiveCplt(DMA_HandleTypeDef *hdma);
- 253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxHalfCplt(DMA_HandleTypeDef *hdma);
- 254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxHalfCplt(DMA_HandleTypeDef *hdma);
- 255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAError(DMA_HandleTypeDef *hdma);
- 256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAAbortOnError(DMA_HandleTypeDef *hdma);
- 257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxAbortCallback(DMA_HandleTypeDef *hdma);
- 258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxAbortCallback(DMA_HandleTypeDef *hdma);
- 259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxOnlyAbortCallback(DMA_HandleTypeDef *hdma);
- 260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxOnlyAbortCallback(DMA_HandleTypeDef *hdma);
- ARM GAS /tmp/ccD7nRW1.s page 6
- 261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Transmit_IT(UART_HandleTypeDef *huart);
- 262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_EndTransmit_IT(UART_HandleTypeDef *huart);
- 263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Receive_IT(UART_HandleTypeDef *huart);
- 264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, Flag
- 265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_SetConfig(UART_HandleTypeDef *huart);
- 266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Exported functions ---------------------------------------------------------*/
- 272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions UART Exported Functions
- 273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group1 Initialization and de-initialization functions
- 277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initialization and Configuration functions
- 278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
- 280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
- 281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Initialization and Configuration functions #####
- 282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
- 283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 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
- 285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in asynchronous mode.
- 286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) For the asynchronous mode only these parameters can be configured:
- 287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Baud Rate
- 288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Word Length
- 289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Stop Bit
- 290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Parity: If the parity is enabled, then the MSB bit of the data written
- 291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the data register is transmitted but is changed by the parity bit.
- 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),
- 293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** please refer to Reference manual for possible UART frame formats.
- 294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Hardware flow control
- 295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Receiver/transmitter modes
- 296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (++) Over Sampling Method
- 297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 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
- 299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** follow respectively the UART asynchronous, UART Half duplex, LIN and Multi-Processor configurat
- 300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** procedures (details for the procedures are available in reference manual
- 301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (RM0430 for STM32F4X3xx MCUs and RM0402 for STM32F412xx MCUs
- 302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0383 for STM32F411xC/E MCUs and RM0401 for STM32F410xx MCUs
- 303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0090 for STM32F4X5xx/STM32F4X7xx/STM32F429xx/STM32F439xx MCUs
- 304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** RM0390 for STM32F446xx MCUs and RM0386 for STM32F469xx/STM32F479xx MCUs)).
- 305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
- 307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the UART mode according to the specified parameters in
- 312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the UART_InitTypeDef and create the associated handle.
- 313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Init(UART_HandleTypeDef *huart)
- ARM GAS /tmp/ccD7nRW1.s page 7
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
- 321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.HwFlowCtl != UART_HWCONTROL_NONE)
- 327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* The hardware flow control is available only for USART1, USART2, USART3 and USART6 */
- 329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HWFLOW_INSTANCE(huart->Instance));
- 330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HARDWARE_FLOW_CONTROL(huart->Init.HwFlowCtl));
- 331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
- 337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
- 338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
- 340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
- 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
- 343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
- 346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
- 348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
- 350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
- 353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
- 354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
- 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
- 357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
- 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
- 364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
- 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
- 367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In asynchronous mode, the following bits must be kept cleared:
- 369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
- 370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register.*/
- 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
- 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
- 373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
- ARM GAS /tmp/ccD7nRW1.s page 8
- 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
- 376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state */
- 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the half-duplex mode according to the specified
- 387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
- 388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_Init(UART_HandleTypeDef *huart)
- 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
- 396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_HALFDUPLEX_INSTANCE(huart->Instance));
- 402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
- 403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
- 404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
- 406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
- 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
- 409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
- 412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
- 414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
- 416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
- 419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
- 420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
- 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
- 423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
- 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
- 430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
- ARM GAS /tmp/ccD7nRW1.s page 9
- 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
- 433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In half-duplex mode, the following bits must be kept cleared:
- 435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
- 436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN and IREN bits in the USART_CR3 register.*/
- 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
- 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_IREN | USART_CR3_SCEN));
- 439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the Half-Duplex mode by setting the HDSEL bit in the CR3 register */
- 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_HDSEL);
- 442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
- 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
- 445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state*/
- 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the LIN mode according to the specified
- 456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
- 457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param BreakDetectLength Specifies the LIN break detection length.
- 460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
- 461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_LINBREAKDETECTLENGTH_10B: 10-bit break detection
- 462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_LINBREAKDETECTLENGTH_11B: 11-bit break detection
- 463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_LIN_Init(UART_HandleTypeDef *huart, uint32_t BreakDetectLength)
- 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
- 469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the LIN UART instance */
- 474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_INSTANCE(huart->Instance));
- 475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Break detection length parameter */
- 477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_BREAK_DETECT_LENGTH(BreakDetectLength));
- 478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_WORD_LENGTH(huart->Init.WordLength));
- 479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_LIN_OVERSAMPLING(huart->Init.OverSampling));
- 480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
- 482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
- 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
- 485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
- 488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 10
- 489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
- 490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
- 492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
- 495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
- 496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
- 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
- 499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
- 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
- 506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
- 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
- 509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In LIN mode, the following bits must be kept cleared:
- 511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - CLKEN bits in the USART_CR2 register,
- 512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register.*/
- 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_CLKEN));
- 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_HDSEL | USART_CR3_IREN | USART_CR3_SCEN));
- 515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the LIN mode by setting the LINEN bit in the CR2 register */
- 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, USART_CR2_LINEN);
- 518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the USART LIN Break detection length. */
- 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, USART_CR2_LBDL);
- 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, BreakDetectLength);
- 522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
- 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
- 525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state*/
- 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initializes the Multi-Processor mode according to the specified
- 536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * parameters in the UART_InitTypeDef and create the associated handle.
- 537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Address USART address
- 540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param WakeUpMethod specifies the USART wake-up method.
- 541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
- 542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_WAKEUPMETHOD_IDLELINE: Wake-up by an idle line detection
- 543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg UART_WAKEUPMETHOD_ADDRESSMARK: Wake-up by an address mark
- 544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- ARM GAS /tmp/ccD7nRW1.s page 11
- 546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_Init(UART_HandleTypeDef *huart, uint8_t Address, uint32_t Wake
- 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
- 550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Address & wake up method parameters */
- 558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WAKEUPMETHOD(WakeUpMethod));
- 559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_ADDRESS(Address));
- 560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_WORD_LENGTH(huart->Init.WordLength));
- 561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_OVERSAMPLING(huart->Init.OverSampling));
- 562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_RESET)
- 564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Allocate lock resource and initialize it */
- 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Lock = HAL_UNLOCKED;
- 567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_InitCallbacksToDefault(huart);
- 570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspInitCallback == NULL)
- 572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
- 574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware */
- 577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback(huart);
- 578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the low level hardware : GPIO, CLOCK */
- 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspInit(huart);
- 581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the peripheral */
- 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
- 588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART Communication parameters */
- 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_SetConfig(huart);
- 591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* In Multi-Processor mode, the following bits must be kept cleared:
- 593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - LINEN and CLKEN bits in the USART_CR2 register,
- 594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** - SCEN, HDSEL and IREN bits in the USART_CR3 register */
- 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN));
- 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
- 597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the USART address node */
- 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR2, USART_CR2_ADD);
- 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, Address);
- 601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the wake up method by setting the WAKE bit in the CR1 register */
- ARM GAS /tmp/ccD7nRW1.s page 12
- 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_WAKE);
- 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, WakeUpMethod);
- 605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the peripheral */
- 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE(huart);
- 608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Initialize the UART state */
- 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DeInitializes the UART peripheral.
- 619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DeInit(UART_HandleTypeDef *huart)
- 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart == NULL)
- 627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the Peripheral */
- 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE(huart);
- 638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->MspDeInitCallback == NULL)
- 641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit;
- 643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DeInit the low level hardware */
- 645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback(huart);
- 646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DeInit the low level hardware */
- 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_MspDeInit(huart);
- 649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_RESET;
- 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_RESET;
- 654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlock */
- 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 13
- 660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART MSP Init.
- 663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_MspInit(UART_HandleTypeDef *huart)
- 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_MspInit could be implemented in the user file
- 673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART MSP DeInit.
- 678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_MspDeInit(UART_HandleTypeDef *huart)
- 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_MspDeInit could be implemented in the user file
- 688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Register a User UART Callback
- 694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * To be used instead of the weak predefined callback
- 695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart uart handle
- 696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param CallbackID ID of the callback to be registered
- 697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
- 698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_HALFCOMPLETE_CB_ID Tx Half Complete Callback ID
- 699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_COMPLETE_CB_ID Tx Complete Callback ID
- 700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_HALFCOMPLETE_CB_ID Rx Half Complete Callback ID
- 701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_COMPLETE_CB_ID Rx Complete Callback ID
- 702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ERROR_CB_ID Error Callback ID
- 703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_COMPLETE_CB_ID Abort Complete Callback ID
- 704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID Abort Transmit Complete Callback ID
- 705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID Abort Receive Complete Callback ID
- 706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPINIT_CB_ID MspInit Callback ID
- 707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPDEINIT_CB_ID MspDeInit Callback ID
- 708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pCallback pointer to the Callback function
- 709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_RegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef C
- 712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef status = HAL_OK;
- 714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (pCallback == NULL)
- 716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 14
- 717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process locked */
- 723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
- 726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
- 728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_HALFCOMPLETE_CB_ID :
- 730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = pCallback;
- 731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_COMPLETE_CB_ID :
- 734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = pCallback;
- 735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_HALFCOMPLETE_CB_ID :
- 738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = pCallback;
- 739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_COMPLETE_CB_ID :
- 742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = pCallback;
- 743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ERROR_CB_ID :
- 746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = pCallback;
- 747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_COMPLETE_CB_ID :
- 750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = pCallback;
- 751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID :
- 754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = pCallback;
- 755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID :
- 758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = pCallback;
- 759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
- 762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = pCallback;
- 763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
- 766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = pCallback;
- 767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
- 770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- ARM GAS /tmp/ccD7nRW1.s page 15
- 774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else if (huart->gState == HAL_UART_STATE_RESET)
- 779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
- 781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
- 783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = pCallback;
- 784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
- 787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = pCallback;
- 788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
- 791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- 795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- 805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Release Lock */
- 809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return status;
- 812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Unregister an UART Callback
- 816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * UART callaback is redirected to the weak predefined callback
- 817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart uart handle
- 818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param CallbackID ID of the callback to be unregistered
- 819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This parameter can be one of the following values:
- 820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_HALFCOMPLETE_CB_ID Tx Half Complete Callback ID
- 821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_TX_COMPLETE_CB_ID Tx Complete Callback ID
- 822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_HALFCOMPLETE_CB_ID Rx Half Complete Callback ID
- 823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_RX_COMPLETE_CB_ID Rx Complete Callback ID
- 824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ERROR_CB_ID Error Callback ID
- 825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_COMPLETE_CB_ID Abort Complete Callback ID
- 826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID Abort Transmit Complete Callback ID
- 827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID Abort Receive Complete Callback ID
- 828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPINIT_CB_ID MspInit Callback ID
- 829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @arg @ref HAL_UART_MSPDEINIT_CB_ID MspDeInit Callback ID
- 830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- ARM GAS /tmp/ccD7nRW1.s page 16
- 831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_UnRegisterCallback(UART_HandleTypeDef *huart, HAL_UART_CallbackIDTypeDef
- 833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef status = HAL_OK;
- 835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process locked */
- 837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_UART_STATE_READY == huart->gState)
- 840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
- 842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_HALFCOMPLETE_CB_ID :
- 844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = HAL_UART_TxHalfCpltCallback; /* Legacy weak TxHa
- 845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_TX_COMPLETE_CB_ID :
- 848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = HAL_UART_TxCpltCallback; /* Legacy weak TxCpl
- 849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_HALFCOMPLETE_CB_ID :
- 852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = HAL_UART_RxHalfCpltCallback; /* Legacy weak RxHal
- 853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_RX_COMPLETE_CB_ID :
- 856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = HAL_UART_RxCpltCallback; /* Legacy weak RxCpl
- 857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ERROR_CB_ID :
- 860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = HAL_UART_ErrorCallback; /* Legacy weak Error
- 861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_COMPLETE_CB_ID :
- 864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = HAL_UART_AbortCpltCallback; /* Legacy weak Abort
- 865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_TRANSMIT_COMPLETE_CB_ID :
- 868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = HAL_UART_AbortTransmitCpltCallback; /* Legacy weak Abort
- 869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_ABORT_RECEIVE_COMPLETE_CB_ID :
- 872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = HAL_UART_AbortReceiveCpltCallback; /* Legacy weak Abort
- 873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
- 876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit; /* Legacy weak MspIn
- 877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
- 880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit; /* Legacy weak MspDe
- 881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
- 884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- ARM GAS /tmp/ccD7nRW1.s page 17
- 888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else if (HAL_UART_STATE_RESET == huart->gState)
- 893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** switch (CallbackID)
- 895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPINIT_CB_ID :
- 897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspInitCallback = HAL_UART_MspInit;
- 898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** case HAL_UART_MSPDEINIT_CB_ID :
- 901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->MspDeInitCallback = HAL_UART_MspDeInit;
- 902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** default :
- 905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- 909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** break;
- 911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Update the error code */
- 916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_INVALID_CALLBACK;
- 917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Return error status */
- 919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** status = HAL_ERROR;
- 920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Release Lock */
- 923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return status;
- 926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group2 IO operation functions
- 934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Transmit and Receive functions
- 935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
- 937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
- 938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### IO operation functions #####
- 939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ===============================================================================
- 940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to manage the UART asynchronous
- 941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and Half duplex data transfers.
- 942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) There are two modes of transfer:
- 944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Blocking mode: The communication is performed in polling mode.
- ARM GAS /tmp/ccD7nRW1.s page 18
- 945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL status of all data processing is returned by the same function
- 946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** after finishing transfer.
- 947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Non-Blocking mode: The communication is performed using Interrupts
- 948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** or DMA, these API's return the HAL status.
- 949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The end of the data processing will be indicated through the
- 950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dedicated UART IRQ when using Interrupt mode or the DMA IRQ when
- 951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** using DMA mode.
- 952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL_UART_TxCpltCallback(), HAL_UART_RxCpltCallback() user callbacks
- 953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will be executed respectively at the end of the transmit or receive process
- 954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** The HAL_UART_ErrorCallback()user callback will be executed when a communication error is
- 955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Blocking mode API's are :
- 957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit()
- 958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive()
- 959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode API's with Interrupt are :
- 961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit_IT()
- 962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive_IT()
- 963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_IRQHandler()
- 964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode API's with DMA are :
- 966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Transmit_DMA()
- 967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Receive_DMA()
- 968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAPause()
- 969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAResume()
- 970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_DMAStop()
- 971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) A set of Transfer Complete Callbacks are provided in Non_Blocking mode:
- 973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_TxHalfCpltCallback()
- 974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_TxCpltCallback()
- 975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_RxHalfCpltCallback()
- 976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_RxCpltCallback()
- 977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_ErrorCallback()
- 978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) Non-Blocking mode transfers could be aborted using Abort API's :
- 980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Abort()
- 981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmit()
- 982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceive()
- 983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_Abort_IT()
- 984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmit_IT()
- 985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceive_IT()
- 986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortCpltCallback()
- 989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortTransmitCpltCallback()
- 990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_AbortReceiveCpltCallback()
- 991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (#) In Non-Blocking mode transfers, possible errors are split into 2 categories.
- 993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Errors are handled as follows :
- 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
- 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
- 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
- 997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and HAL_UART_ErrorCallback() user callback is executed. Transfer is kept ongoing on UART
- 998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** If user wants to abort it, Abort services should be called by user.
- 999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) Error is considered as Blocking : Transfer could not be completed properly and is aborte
- 1000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This concerns Overrun Error In Interrupt mode reception and all errors in DMA mode.
- 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
- ARM GAS /tmp/ccD7nRW1.s page 19
- 1002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** -@- In the Half duplex communication, it is forbidden to run the transmit
- 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.
- 1005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
- 1007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 1008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in blocking mode.
- 1012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
- 1016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
- 1017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 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
- 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 1022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
- 1023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
- 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
- 1026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- 1028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init tickstart for timeout managment */
- 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tickstart = HAL_GetTick();
- 1040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
- 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->TxXferCount > 0U)
- 1044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount--;
- 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 1047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK)
- 1049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) pData;
- 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (*tmp & (uint16_t)0x01FF);
- 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 1055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
- 1057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- ARM GAS /tmp/ccD7nRW1.s page 20
- 1059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
- 1061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TXE, RESET, tickstart, Timeout) != HAL_OK)
- 1066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (*pData++ & (uint8_t)0xFF);
- 1070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_TC, RESET, tickstart, Timeout) != HAL_OK)
- 1074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Tx process, restore huart->gState to Ready */
- 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in blocking mode.
- 1094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
- 1098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
- 1099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 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
- 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 1104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tickstart = 0U;
- 1105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
- 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
- 1108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- 1110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- ARM GAS /tmp/ccD7nRW1.s page 21
- 1116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init tickstart for timeout managment */
- 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tickstart = HAL_GetTick();
- 1122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
- 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
- 1125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the remain data to be received */
- 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->RxXferCount > 0U)
- 1128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount--;
- 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 1131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK
- 1133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) pData;
- 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 1138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x01FF);
- 1140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
- 1141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x00FF);
- 1145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
- 1146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (UART_WaitOnFlagUntilTimeout(huart, UART_FLAG_RXNE, RESET, tickstart, Timeout) != HAL_OK
- 1152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 1156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *pData++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x00FF);
- 1158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *pData++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x007F);
- 1162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
- 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 22
- 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
- 1183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
- 1187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 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)
- 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
- 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
- 1193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- 1195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr = pData;
- 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
- 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit data register empty Interrupt */
- 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_TXE);
- 1214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode.
- 1225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
- 1229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- ARM GAS /tmp/ccD7nRW1.s page 23
- 1230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 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)
- 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
- 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
- 1235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- 1237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr = pData;
- 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
- 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
- 1247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Parity Error Interrupt */
- 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_PE);
- 1256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Error Interrupt: (Frame error, noise error, overrun error) */
- 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_ERR);
- 1259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Data Register not empty Interrupt */
- 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_RXNE);
- 1262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
- 1273:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be sent
- 1277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 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)
- 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
- 1282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
- 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_READY)
- 1285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- ARM GAS /tmp/ccD7nRW1.s page 24
- 1287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr = pData;
- 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
- 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA transfer complete callback */
- 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferCpltCallback = UART_DMATransmitCplt;
- 1303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Half transfer complete callback */
- 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferHalfCpltCallback = UART_DMATxHalfCplt;
- 1306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA error callback */
- 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferErrorCallback = UART_DMAError;
- 1309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA abort callback */
- 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 1312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART transmit DMA stream */
- 1314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint32_t *)&pData;
- 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);
- 1316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear the TC flag in the SR register by writing 0 to it */
- 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_FLAG(huart, UART_FLAG_TC);
- 1319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA transfer for transmit request by setting the DMAT bit
- 1324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
- 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode.
- 1337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param pData Pointer to data buffer
- 1340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Size Amount of data to be received
- 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.
- 1342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- ARM GAS /tmp/ccD7nRW1.s page 25
- 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)
- 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
- 1347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
- 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_READY)
- 1350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((pData == NULL) || (Size == 0U))
- 1352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_ERROR;
- 1354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr = pData;
- 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
- 1361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA transfer complete callback */
- 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferCpltCallback = UART_DMAReceiveCplt;
- 1367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Half transfer complete callback */
- 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferHalfCpltCallback = UART_DMARxHalfCplt;
- 1370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA error callback */
- 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferErrorCallback = UART_DMAError;
- 1373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the DMA abort callback */
- 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- 1376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA stream */
- 1378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint32_t *)&pData;
- 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);
- 1380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_OREFLAG(huart);
- 1383:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Parity Error Interrupt */
- 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_PEIE);
- 1389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Error Interrupt: (Frame error, noise error, overrun error) */
- 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the DMA transfer for the receiver request by setting the DMAR bit
- 1394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
- 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 26
- 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 1402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Pauses the DMA Transfer.
- 1407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAPause(UART_HandleTypeDef *huart)
- 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 1414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
- 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 1420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request */
- 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
- 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- 1427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_PEIE);
- 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request */
- 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Resumes the DMA Transfer.
- 1444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAResume(UART_HandleTypeDef *huart)
- 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 1452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_BUSY_TX)
- 1454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART DMA Tx request */
- 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 27
- 1458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_BUSY_RX)
- 1460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear the Overrun flag before resuming the Rx transfer*/
- 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_CLEAR_OREFLAG(huart);
- 1463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reenable PE and ERR (Frame error, noise error, overrun error) interrupts */
- 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_PEIE);
- 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART DMA Rx request */
- 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 1474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Stops the DMA Transfer.
- 1480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_DMAStop(UART_HandleTypeDef *huart)
- 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 1487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* The Lock is not implemented on this API to allow the user application
- 1488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** to call the HAL UART API under callbacks HAL_UART_TxCpltCallback() / HAL_UART_RxCpltCallback()
- 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
- 1490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** and the correspond call back is executed HAL_UART_TxCpltCallback() / HAL_UART_RxCpltCallback()
- 1491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Tx request if ongoing */
- 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
- 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 1496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream */
- 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Abort(huart->hdmatx);
- 1503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
- 1505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Rx request if ongoing */
- 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
- 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- 1510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream */
- 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- ARM GAS /tmp/ccD7nRW1.s page 28
- 1515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_DMA_Abort(huart->hdmarx);
- 1517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
- 1519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing transfers (blocking mode).
- 1526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx and Rx)
- 1530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
- 1534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Abort(UART_HandleTypeDef *huart)
- 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 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_
- 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
- 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
- 1544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream: use blocking DMA Abort API (no callback) */
- 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
- 1551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
- 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 1553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmatx) != HAL_OK)
- 1555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmatx) == HAL_DMA_ERROR_TIMEOUT)
- 1557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
- 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
- 1560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
- 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 1569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 29
- 1572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream: use blocking DMA Abort API (no callback) */
- 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 1574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
- 1576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
- 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- 1578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmarx) != HAL_OK)
- 1580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmarx) == HAL_DMA_ERROR_TIMEOUT)
- 1582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
- 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
- 1585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx and Rx transfer counters */
- 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 1595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
- 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState and huart->gState to Ready */
- 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Transmit transfer (blocking mode).
- 1608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx)
- 1612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
- 1616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortTransmit(UART_HandleTypeDef *huart)
- 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
- 1622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
- 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
- 1625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use blocking DMA Abort API (no callback) */
- ARM GAS /tmp/ccD7nRW1.s page 30
- 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
- 1632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
- 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 1634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmatx) != HAL_OK)
- 1636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmatx) == HAL_DMA_ERROR_TIMEOUT)
- 1638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
- 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
- 1641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
- 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 1650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
- 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Receive transfer (blocking mode).
- 1659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Rx)
- 1663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in blocking mode : when exiting function, Abort is considere
- 1667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortReceive(UART_HandleTypeDef *huart)
- 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
- 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
- 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 1677:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use blocking DMA Abort API (no callback) */
- 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 1682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback to Null.
- 1684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** No call back execution at end of DMA abort procedure */
- 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- ARM GAS /tmp/ccD7nRW1.s page 31
- 1686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort(huart->hdmarx) != HAL_OK)
- 1688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_GetError(huart->hdmarx) == HAL_DMA_ERROR_TIMEOUT)
- 1690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set error code to DMA */
- 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_DMA;
- 1693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 1695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
- 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 1702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
- 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing transfers (Interrupt mode).
- 1711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx and Rx)
- 1715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
- 1719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
- 1720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
- 1721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_Abort_IT(UART_HandleTypeDef *huart)
- 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
- 1726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 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_
- 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 1732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** before any call to DMA Abort functions */
- 1733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Tx Handle is valid */
- 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set DMA Abort Complete callback if UART DMA Tx request if enabled.
- 1737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Otherwise, set it to NULL */
- 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
- 1739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = UART_DMATxAbortCallback;
- 1741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- ARM GAS /tmp/ccD7nRW1.s page 32
- 1743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 1745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Rx Handle is valid */
- 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 1749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set DMA Abort Complete callback if UART DMA Rx request if enabled.
- 1751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Otherwise, set it to NULL */
- 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 1753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMARxAbortCallback;
- 1755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- 1759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
- 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
- 1764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable DMA Tx at UART level */
- 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use non blocking DMA Abort API (callback) */
- 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Tx DMA Abort callback has already been initialised :
- 1772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
- 1773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA TX */
- 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmatx) != HAL_OK)
- 1776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 1778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x00U;
- 1782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
- 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 1788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use non blocking DMA Abort API (callback) */
- 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 1793:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Rx DMA Abort callback has already been initialised :
- 1795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
- 1796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA RX */
- 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
- 1799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 33
- 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
- 1802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x00U;
- 1806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* if no DMA abort complete callback execution is required => call user Abort Complete callback *
- 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (AbortCplt == 0x01U)
- 1812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx and Rx transfer counters */
- 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 1816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
- 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 1819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
- 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
- 1825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 1826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
- 1827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
- 1828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 1829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
- 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
- 1831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 1832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1836:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1838:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Transmit transfer (Interrupt mode).
- 1839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Tx)
- 1843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
- 1847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
- 1848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
- 1849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortTransmit_IT(UART_HandleTypeDef *huart)
- 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
- 1855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Tx request if enabled */
- ARM GAS /tmp/ccD7nRW1.s page 34
- 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT))
- 1858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 1860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Tx stream : use blocking DMA Abort API (no callback) */
- 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 1863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1864:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
- 1865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
- 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = UART_DMATxOnlyAbortCallback;
- 1867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA TX */
- 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmatx) != HAL_OK)
- 1870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly huart->hdmatx->XferAbortCallback function in case of error */
- 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback(huart->hdmatx);
- 1873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
- 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 1879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
- 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
- 1884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 1885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
- 1886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
- 1887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 1888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
- 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
- 1890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 1891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Tx transfer counter */
- 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 1897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
- 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 1900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
- 1902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 1903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
- 1904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
- 1905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 1906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
- 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
- 1908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 1909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 35
- 1914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Abort ongoing Receive transfer (Interrupt mode).
- 1916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 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
- 1918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * This procedure performs following operations :
- 1919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable UART Interrupts (Rx)
- 1920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Disable the DMA transfer in the peripheral register (if enabled)
- 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)
- 1922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - Set handle State to READY
- 1923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * - At abort completion, call user abort complete callback
- 1924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @note This procedure is executed in Interrupt mode, meaning that abort procedure could be
- 1925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * considered as completed only when user abort complete callback is executed (not when ex
- 1926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 1927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_UART_AbortReceive_IT(UART_HandleTypeDef *huart)
- 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
- 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
- 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 1936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 1938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream : use blocking DMA Abort API (no callback) */
- 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 1941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
- 1943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_AbortCpltCallback() at end of DMA abort procedure */
- 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMARxOnlyAbortCallback;
- 1945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort DMA RX */
- 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
- 1948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly huart->hdmarx->XferAbortCallback function in case of error */
- 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback(huart->hdmarx);
- 1951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
- 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 1957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
- 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
- 1962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 1963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
- 1964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
- 1965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 1966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
- 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
- 1968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 1969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 36
- 1971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 1972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset Rx transfer counter */
- 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 1975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
- 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 1978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* As no DMA to be aborted, call directly user Abort complete callback */
- 1980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 1981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
- 1982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
- 1983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 1984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
- 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
- 1986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 1987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 1993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief This function handles UART interrupt request.
- 1994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 1995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 1996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 1997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 1998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void HAL_UART_IRQHandler(UART_HandleTypeDef *huart)
- 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t isrflags = READ_REG(huart->Instance->SR);
- 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
- 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr3its = READ_REG(huart->Instance->CR3);
- 2003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t errorflags = 0x00U;
- 2004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 2005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If no error occurs */
- 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));
- 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (errorflags == RESET)
- 2009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Receiver -------------------------------------------------*/
- 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_RXNE) != RESET) && ((cr1its & USART_CR1_RXNEIE) != RESET))
- 2012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Receive_IT(huart);
- 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If some errors occur */
- 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((errorflags != RESET) && (((cr3its & USART_CR3_EIE) != RESET) || ((cr1its & (USART_CR1_RXNEIE
- 2020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART parity error interrupt occurred ----------------------------------*/
- 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_PE) != RESET) && ((cr1its & USART_CR1_PEIE) != RESET))
- 2023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_PE;
- 2025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART noise error interrupt occurred -----------------------------------*/
- ARM GAS /tmp/ccD7nRW1.s page 37
- 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_NE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
- 2029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_NE;
- 2031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART frame error interrupt occurred -----------------------------------*/
- 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_FE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
- 2035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_FE;
- 2037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART Over-Run interrupt occurred --------------------------------------*/
- 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_ORE) != RESET) && ((cr3its & USART_CR3_EIE) != RESET))
- 2041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_ORE;
- 2043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call UART Error Call back function if need be --------------------------*/
- 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->ErrorCode != HAL_UART_ERROR_NONE)
- 2047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Receiver -----------------------------------------------*/
- 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_RXNE) != RESET) && ((cr1its & USART_CR1_RXNEIE) != RESET))
- 2050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Receive_IT(huart);
- 2052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* If Overrun error occurs, or if any error occurs in DMA mode reception,
- 2055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** consider error as blocking */
- 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
- 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((huart->ErrorCode & HAL_UART_ERROR_ORE) != RESET) || dmarequest)
- 2058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Blocking error : transfer is aborted
- 2060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set the UART state ready to be able to start again the process,
- 2061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Disable Rx Interrupts, and disable Rx DMA request, if ongoing */
- 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
- 2063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2064:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART DMA Rx request if enabled */
- 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR))
- 2066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 2068:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Abort the UART DMA Rx stream */
- 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 2071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Set the UART DMA Abort callback :
- 2073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** will lead to call HAL_UART_ErrorCallback() at end of DMA abort procedure */
- 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = UART_DMAAbortOnError;
- 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
- 2076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call Directly XferAbortCallback function in case of error */
- 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback(huart->hdmarx);
- 2079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user error callback */
- 2084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- ARM GAS /tmp/ccD7nRW1.s page 38
- 2085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
- 2086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
- 2087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
- 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
- 2090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user error callback */
- 2096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
- 2098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
- 2099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
- 2101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
- 2102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Non Blocking error : transfer could go on.
- 2108:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Error is notified to user through user error callback */
- 2109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2110:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
- 2111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
- 2112:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2113:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
- 2114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
- 2115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2116:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 2118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2119:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2120:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** } /* End if some error occurs */
- 2122:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Transmitter ------------------------------------------------*/
- 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_TXE) != RESET) && ((cr1its & USART_CR1_TXEIE) != RESET))
- 2125:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_Transmit_IT(huart);
- 2127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2128:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* UART in mode Transmitter end --------------------------------------------*/
- 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((isrflags & USART_SR_TC) != RESET) && ((cr1its & USART_CR1_TCIE) != RESET))
- 2132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTransmit_IT(huart);
- 2134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2135:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2136:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2138:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Tx Transfer completed callbacks.
- 2140:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2141:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- ARM GAS /tmp/ccD7nRW1.s page 39
- 2142:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2143:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
- 2145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2146:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2147:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2148:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 2149:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_TxCpltCallback could be implemented in the user file
- 2150:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2152:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2154:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Tx Half Transfer completed callbacks.
- 2155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2156:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2158:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2159:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_TxHalfCpltCallback(UART_HandleTypeDef *huart)
- 2160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2162:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2163:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 2164:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_TxHalfCpltCallback could be implemented in the user file
- 2165:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2166:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2167:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2169:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Rx Transfer completed callbacks.
- 2170:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2172:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2174:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
- 2175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2176:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2178:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 2179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_RxCpltCallback could be implemented in the user file
- 2180:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2181:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2182:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2183:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2184:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Rx Half Transfer completed callbacks.
- 2185:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2186:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2187:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2188:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2189:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_RxHalfCpltCallback(UART_HandleTypeDef *huart)
- 2190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2191:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2193:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 2194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_RxHalfCpltCallback could be implemented in the user file
- 2195:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2197:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2198:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- ARM GAS /tmp/ccD7nRW1.s page 40
- 2199:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART error callbacks.
- 2200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2201:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_ErrorCallback(UART_HandleTypeDef *huart)
- 2205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2208:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE: This function should not be modified, when the callback is needed,
- 2209:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_ErrorCallback could be implemented in the user file
- 2210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2211:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2212:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2214:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Complete callback.
- 2215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2216:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2217:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2218:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortCpltCallback(UART_HandleTypeDef *huart)
- 2219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2220:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2222:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2223:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
- 2224:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortCpltCallback can be implemented in the user file.
- 2225:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2226:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2227:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2228:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2229:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Complete callback.
- 2230:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2231:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2233:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortTransmitCpltCallback(UART_HandleTypeDef *huart)
- 2234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2235:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2237:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
- 2239:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortTransmitCpltCallback can be implemented in the user file.
- 2240:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2241:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2243:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART Abort Receive Complete callback.
- 2245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2247:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __weak void HAL_UART_AbortReceiveCpltCallback(UART_HandleTypeDef *huart)
- 2249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2250:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2251:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UNUSED(huart);
- 2252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2253:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* NOTE : This function should not be modified, when the callback is needed,
- 2254:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** the HAL_UART_AbortReceiveCpltCallback can be implemented in the user file.
- 2255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- ARM GAS /tmp/ccD7nRW1.s page 41
- 2256:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2257:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2259:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 2260:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2262:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group3 Peripheral Control functions
- 2263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART control functions
- 2264:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 2265:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
- 2266:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 2267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Peripheral Control functions #####
- 2268:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 2269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 2270:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to control the UART:
- 2271:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_LIN_SendBreak() API can be helpful to transmit the break character.
- 2272:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_MultiProcessor_EnterMuteMode() API can be helpful to enter the UART in mute mode.
- 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
- 2274:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_HalfDuplex_EnableTransmitter() API to enable the UART transmitter and disables the UART
- 2275:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_HalfDuplex_EnableReceiver() API to enable the UART receiver and disables the UART trans
- 2276:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2277:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
- 2278:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 2279:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2281:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2282:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Transmits break characters.
- 2283:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2285:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2287:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_LIN_SendBreak(UART_HandleTypeDef *huart)
- 2288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2289:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 2290:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 2291:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 2294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 2296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2297:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Send break characters */
- 2298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_SBK);
- 2299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2301:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2304:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2307:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2309:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enters the UART in mute mode.
- 2310:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2312:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- ARM GAS /tmp/ccD7nRW1.s page 42
- 2313:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2314:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_EnterMuteMode(UART_HandleTypeDef *huart)
- 2315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2316:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 2317:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 2318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2319:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 2321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 2323:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2324:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the USART mute mode by setting the RWU bit in the CR1 register */
- 2325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_RWU);
- 2326:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2328:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2329:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2334:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2335:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2336:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Exits the UART mute mode: wake up software.
- 2337:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2338:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2340:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2341:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_MultiProcessor_ExitMuteMode(UART_HandleTypeDef *huart)
- 2342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2343:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 2344:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_INSTANCE(huart->Instance));
- 2345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2346:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 2348:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 2350:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the USART mute mode by clearing the RWU bit in the CR1 register */
- 2352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_RWU);
- 2353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2355:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2358:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2361:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enables the UART transmitter and disables the UART receiver.
- 2364:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2365:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2367:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2368:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_EnableTransmitter(UART_HandleTypeDef *huart)
- 2369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 43
- 2370:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
- 2371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 2374:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 2376:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2377:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
- 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg = huart->Instance->CR1;
- 2379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear TE and RE bits */
- 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg &= (uint32_t)~((uint32_t)(USART_CR1_TE | USART_CR1_RE));
- 2382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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 */
- 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg |= (uint32_t)USART_CR1_TE;
- 2385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2386:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Write to USART CR1 */
- 2387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** WRITE_REG(huart->Instance->CR1, (uint32_t)tmpreg);
- 2388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2390:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2396:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2398:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Enables the UART receiver and disables the UART transmitter.
- 2399:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2400:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2402:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_StatusTypeDef HAL_HalfDuplex_EnableReceiver(UART_HandleTypeDef *huart)
- 2404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
- 2406:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2407:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_LOCK(huart);
- 2409:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY;
- 2411:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
- 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg = huart->Instance->CR1;
- 2414:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2415:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Clear TE and RE bits */
- 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg &= (uint32_t)~((uint32_t)(USART_CR1_TE | USART_CR1_RE));
- 2417:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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 */
- 2419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg |= (uint32_t)USART_CR1_RE;
- 2420:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2421:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Write to USART CR1 */
- 2422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** WRITE_REG(huart->Instance->CR1, (uint32_t)tmpreg);
- 2423:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- ARM GAS /tmp/ccD7nRW1.s page 44
- 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2428:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2431:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 2434:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2435:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2436:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Exported_Functions_Group4 Peripheral State and Errors functions
- 2437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief UART State and Errors functions
- 2438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *
- 2439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @verbatim
- 2440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 2441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ##### Peripheral State and Errors functions #####
- 2442:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** ==============================================================================
- 2443:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** [..]
- 2444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** This subsection provides a set of functions allowing to return the State of
- 2445:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART communication process, return Peripheral Errors occurred during communication
- 2446:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** process
- 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
- 2448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** (+) HAL_UART_GetError() check in run-time errors that could be occurred during communication.
- 2449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2450:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** @endverbatim
- 2451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 2452:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2454:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2455:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Returns the UART state.
- 2456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2457:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2458:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL state
- 2459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2460:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_StateTypeDef HAL_UART_GetState(UART_HandleTypeDef *huart)
- 2461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t temp1 = 0x00U, temp2 = 0x00U;
- 2463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp1 = huart->gState;
- 2464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp2 = huart->RxState;
- 2465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return (HAL_UART_StateTypeDef)(temp1 | temp2);
- 2467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Return the UART error code
- 2471:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2472:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART.
- 2473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval UART Error Code
- 2474:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t HAL_UART_GetError(UART_HandleTypeDef *huart)
- 2476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return huart->ErrorCode;
- 2478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2479:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2480:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 2482:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2483:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 45
- 2484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @}
- 2486:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2487:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2488:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /** @defgroup UART_Private_Functions UART Private Functions
- 2489:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @{
- 2490:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2491:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2492:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2493:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Initialize the callbacks to their default values.
- 2494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval none
- 2496:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** void UART_InitCallbacksToDefault(UART_HandleTypeDef *huart)
- 2499:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Init the UART Callback settings */
- 2501:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback = HAL_UART_TxHalfCpltCallback; /* Legacy weak TxHalfCpltC
- 2502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback = HAL_UART_TxCpltCallback; /* Legacy weak TxCpltCallb
- 2503:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback = HAL_UART_RxHalfCpltCallback; /* Legacy weak RxHalfCpltC
- 2504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback = HAL_UART_RxCpltCallback; /* Legacy weak RxCpltCallb
- 2505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback = HAL_UART_ErrorCallback; /* Legacy weak ErrorCallba
- 2506:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback = HAL_UART_AbortCpltCallback; /* Legacy weak AbortCpltCa
- 2507:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback = HAL_UART_AbortTransmitCpltCallback; /* Legacy weak AbortTransm
- 2508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback = HAL_UART_AbortReceiveCpltCallback; /* Legacy weak AbortReceiv
- 2509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2510:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2512:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART transmit process complete callback.
- 2515:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2519:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATransmitCplt(DMA_HandleTypeDef *hdma)
- 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
- 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) == 0U)
- 2524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 2526:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the DMA transfer for transmit request by setting the DMAT bit
- 2528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
- 2529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAT);
- 2530:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit Complete Interrupt */
- 2532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, USART_CR1_TCIE);
- 2533:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2534:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2535:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Circular mode */
- 2536:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2538:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
- 2540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback(huart);
- ARM GAS /tmp/ccD7nRW1.s page 46
- 2541:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2542:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
- 2543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxCpltCallback(huart);
- 2544:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2546:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART transmit process half complete callback
- 2550:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2553:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxHalfCplt(DMA_HandleTypeDef *hdma)
- 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2557:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2558:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
- 2560:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxHalfCpltCallback(huart);
- 2561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2562:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
- 2563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxHalfCpltCallback(huart);
- 2564:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2565:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2567:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART receive process complete callback.
- 2569:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2571:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2572:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAReceiveCplt(DMA_HandleTypeDef *hdma)
- 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2576:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
- 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((hdma->Instance->CR & DMA_SxCR_CIRC) == 0U)
- 2578:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0U;
- 2580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 2582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, USART_CR1_PEIE);
- 2583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2585:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the DMA transfer for the receiver request by setting the DMAR bit
- 2586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** in the UART CR3 register */
- 2587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_DMAR);
- 2588:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2589:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
- 2590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 2591:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2592:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx complete callback*/
- 2594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback(huart);
- 2595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx complete callback*/
- 2597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxCpltCallback(huart);
- ARM GAS /tmp/ccD7nRW1.s page 47
- 2598:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2602:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART receive process half complete callback
- 2603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2605:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2606:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxHalfCplt(DMA_HandleTypeDef *hdma)
- 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2609:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx Half complete callback*/
- 2613:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxHalfCpltCallback(huart);
- 2614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2615:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx Half complete callback*/
- 2616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxHalfCpltCallback(huart);
- 2617:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2618:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2620:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART communication error callback.
- 2622:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2623:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2625:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAError(DMA_HandleTypeDef *hdma)
- 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 2629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2630:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2631:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Tx request if ongoing */
- 2632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAT);
- 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 2634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 2636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
- 2637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2638:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2639:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Stop UART DMA Rx request if ongoing */
- 2640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** dmarequest = HAL_IS_BIT_SET(huart->Instance->CR3, USART_CR3_DMAR);
- 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- 2642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
- 2645:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2646:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode |= HAL_UART_ERROR_DMA;
- 2648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
- 2650:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
- 2651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
- 2653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
- 2654:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- ARM GAS /tmp/ccD7nRW1.s page 48
- 2655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2657:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief This function handles UART Communication Timeout.
- 2659:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2660:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2661:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Flag specifies the UART flag to check.
- 2662:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Status The new Flag status (SET or RESET).
- 2663:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Tickstart Tick start value
- 2664:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param Timeout Timeout duration
- 2665:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2666:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2667:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_WaitOnFlagUntilTimeout(UART_HandleTypeDef *huart, uint32_t Flag, Flag
- 2668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2669:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Wait until flag is set */
- 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while ((__HAL_UART_GET_FLAG(huart, Flag) ? SET : RESET) == Status)
- 2671:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check for the Timeout */
- 2673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (Timeout != HAL_MAX_DELAY)
- 2674:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((Timeout == 0U) || ((HAL_GetTick() - Tickstart) > Timeout))
- 2676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 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
- 2678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE | USART_CR1_TXEIE));
- 2679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2680:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 2683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2684:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Unlocked */
- 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UNLOCK(huart);
- 2686:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_TIMEOUT;
- 2688:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2690:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2693:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2695:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief End ongoing Tx transfer on UART peripheral (following error detection or Transmit compl
- 2696:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2697:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2698:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2699:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndTxTransfer(UART_HandleTypeDef *huart)
- 2700:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 27 .loc 1 2700 0
- 28 .cfi_startproc
- 29 @ args = 0, pretend = 0, frame = 0
- 30 @ frame_needed = 0, uses_anonymous_args = 0
- 31 @ link register save eliminated.
- 32 .LVL0:
- 2701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 2702:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_TXEIE | USART_CR1_TCIE));
- 33 .loc 1 2702 0
- 34 0000 0268 ldr r2, [r0]
- 35 0002 D368 ldr r3, [r2, #12]
- ARM GAS /tmp/ccD7nRW1.s page 49
- 36 0004 23F0C003 bic r3, r3, #192
- 37 0008 D360 str r3, [r2, #12]
- 2703:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Tx process, restore huart->gState to Ready */
- 2705:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 38 .loc 1 2705 0
- 39 000a 2023 movs r3, #32
- 40 000c 80F83930 strb r3, [r0, #57]
- 41 0010 7047 bx lr
- 42 .cfi_endproc
- 43 .LFE174:
- 45 .section .text.UART_EndRxTransfer,"ax",%progbits
- 46 .align 1
- 47 .syntax unified
- 48 .thumb
- 49 .thumb_func
- 50 .fpu fpv4-sp-d16
- 52 UART_EndRxTransfer:
- 53 .LFB175:
- 2706:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2708:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2709:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief End ongoing Rx transfer on UART peripheral (following error detection or Reception comp
- 2710:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart UART handle.
- 2711:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2712:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2713:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_EndRxTransfer(UART_HandleTypeDef *huart)
- 2714:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 54 .loc 1 2714 0
- 55 .cfi_startproc
- 56 @ args = 0, pretend = 0, frame = 0
- 57 @ frame_needed = 0, uses_anonymous_args = 0
- 58 @ link register save eliminated.
- 59 .LVL1:
- 2715:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 2716:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR1, (USART_CR1_RXNEIE | USART_CR1_PEIE));
- 60 .loc 1 2716 0
- 61 0000 0268 ldr r2, [r0]
- 62 0002 D368 ldr r3, [r2, #12]
- 63 0004 23F49073 bic r3, r3, #288
- 64 0008 D360 str r3, [r2, #12]
- 2717:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 65 .loc 1 2717 0
- 66 000a 0268 ldr r2, [r0]
- 67 000c 5369 ldr r3, [r2, #20]
- 68 000e 23F00103 bic r3, r3, #1
- 69 0012 5361 str r3, [r2, #20]
- 2718:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2719:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* At end of Rx process, restore huart->RxState to Ready */
- 2720:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 70 .loc 1 2720 0
- 71 0014 2023 movs r3, #32
- 72 0016 80F83A30 strb r3, [r0, #58]
- 73 001a 7047 bx lr
- 74 .cfi_endproc
- 75 .LFE175:
- 77 .section .text.UART_Transmit_IT,"ax",%progbits
- ARM GAS /tmp/ccD7nRW1.s page 50
- 78 .align 1
- 79 .syntax unified
- 80 .thumb
- 81 .thumb_func
- 82 .fpu fpv4-sp-d16
- 84 UART_Transmit_IT:
- 85 .LFB181:
- 2721:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2722:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2723:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART communication abort callback, when initiated by HAL services on Error
- 2725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Abort procedure following error occurrence).
- 2726:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2727:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2730:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMAAbortOnError(DMA_HandleTypeDef *hdma)
- 2731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 2735:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2736:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2737:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered error callback*/
- 2738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCallback(huart);
- 2739:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak error callback*/
- 2741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_ErrorCallback(huart);
- 2742:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2743:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2745:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2746:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Tx communication abort callback, when initiated by user
- 2747:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Tx Abort procedure following user abort request).
- 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
- 2749:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * Abort still ongoing for Rx DMA Handle.
- 2750:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2751:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2753:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxAbortCallback(DMA_HandleTypeDef *hdma)
- 2755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2757:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmatx->XferAbortCallback = NULL;
- 2759:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2760:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check if an Abort process is still ongoing */
- 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx != NULL)
- 2762:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmarx->XferAbortCallback != NULL)
- 2764:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2765:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2767:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2768:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 2770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- ARM GAS /tmp/ccD7nRW1.s page 51
- 2771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2772:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2773:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
- 2774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 2775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2776:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
- 2777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 2779:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2780:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
- 2781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2782:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
- 2783:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
- 2784:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2785:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
- 2786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
- 2787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2788:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2790:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2791:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief DMA UART Rx communication abort callback, when initiated by user
- 2792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * (To be called at end of DMA Rx Abort procedure following user abort request).
- 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
- 2794:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * Abort still ongoing for Tx DMA Handle.
- 2795:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2796:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2797:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2799:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxAbortCallback(DMA_HandleTypeDef *hdma)
- 2800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2802:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->hdmarx->XferAbortCallback = NULL;
- 2804:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check if an Abort process is still ongoing */
- 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx != NULL)
- 2807:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->hdmatx->XferAbortCallback != NULL)
- 2809:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2810:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 2811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2812:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2813:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 2815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 2816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2817:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Reset ErrorCode */
- 2819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->ErrorCode = HAL_UART_ERROR_NONE;
- 2820:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState and huart->RxState to Ready */
- 2822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 2824:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2825:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
- 2826:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2827:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort complete callback */
- ARM GAS /tmp/ccD7nRW1.s page 52
- 2828:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortCpltCallback(huart);
- 2829:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort complete callback */
- 2831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortCpltCallback(huart);
- 2832:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2833:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2834:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 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
- 2837:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * HAL_UART_AbortTransmit_IT API (Abort only Tx transfer)
- 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
- 2839:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * and leads to user Tx Abort Complete callback execution).
- 2840:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2841:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2842:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2843:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2844:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMATxOnlyAbortCallback(DMA_HandleTypeDef *hdma)
- 2845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2847:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 2849:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2850:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->gState to Ready */
- 2851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2853:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
- 2854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2855:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Transmit Complete Callback */
- 2856:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortTransmitCpltCallback(huart);
- 2857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2858:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Transmit Complete Callback */
- 2859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortTransmitCpltCallback(huart);
- 2860:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2861:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2863:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 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
- 2865:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * HAL_UART_AbortReceive_IT API (Abort only Rx transfer)
- 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
- 2867:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * and leads to user Rx Abort Complete callback execution).
- 2868:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param hdma Pointer to a DMA_HandleTypeDef structure that contains
- 2869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified DMA module.
- 2870:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 2871:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_DMARxOnlyAbortCallback(DMA_HandleTypeDef *hdma)
- 2873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2875:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2877:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Restore huart->RxState to Ready */
- 2879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 2880:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call user Abort complete callback */
- 2882:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2883:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call registered Abort Receive Complete Callback */
- 2884:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->AbortReceiveCpltCallback(huart);
- ARM GAS /tmp/ccD7nRW1.s page 53
- 2885:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2886:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Call legacy weak Abort Receive Complete Callback */
- 2887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_AbortReceiveCpltCallback(huart);
- 2888:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2890:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2891:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2892:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Sends an amount of data in non blocking mode.
- 2893:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2894:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2895:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2897:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Transmit_IT(UART_HandleTypeDef *huart)
- 2898:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 86 .loc 1 2898 0
- 87 .cfi_startproc
- 88 @ args = 0, pretend = 0, frame = 0
- 89 @ frame_needed = 0, uses_anonymous_args = 0
- 90 @ link register save eliminated.
- 91 .LVL2:
- 2899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 2900:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2901:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is ongoing */
- 2902:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->gState == HAL_UART_STATE_BUSY_TX)
- 92 .loc 1 2902 0
- 93 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 94 0004 DBB2 uxtb r3, r3
- 95 0006 212B cmp r3, #33
- 96 0008 01D0 beq .L10
- 2903:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 2905:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) huart->pTxBuffPtr;
- 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint16_t)(*tmp & (uint16_t)0x01FF);
- 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 2909:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr += 2U;
- 2911:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2913:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pTxBuffPtr += 1U;
- 2915:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2916:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2917:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2918:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint8_t)(*huart->pTxBuffPtr++ & (uint8_t)0x00FF);
- 2920:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2921:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (--huart->TxXferCount == 0U)
- 2923:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2924:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
- 2925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_TXE);
- 2926:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2927:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Enable the UART Transmit Complete Interrupt */
- 2928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_ENABLE_IT(huart, UART_IT_TC);
- 2929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- ARM GAS /tmp/ccD7nRW1.s page 54
- 2931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2933:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2934:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 97 .loc 1 2934 0
- 98 000a 0220 movs r0, #2
- 99 .LVL3:
- 100 000c 7047 bx lr
- 101 .LVL4:
- 102 .L10:
- 2904:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 103 .loc 1 2904 0
- 104 000e 8368 ldr r3, [r0, #8]
- 105 0010 B3F5805F cmp r3, #4096
- 106 0014 17D0 beq .L11
- 2919:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 107 .loc 1 2919 0
- 108 0016 0268 ldr r2, [r0]
- 109 0018 036A ldr r3, [r0, #32]
- 110 001a 591C adds r1, r3, #1
- 111 001c 0162 str r1, [r0, #32]
- 112 001e 1B78 ldrb r3, [r3] @ zero_extendqisi2
- 113 0020 5360 str r3, [r2, #4]
- 114 .L7:
- 2922:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 115 .loc 1 2922 0
- 116 0022 C38C ldrh r3, [r0, #38]
- 117 0024 9BB2 uxth r3, r3
- 118 0026 013B subs r3, r3, #1
- 119 0028 9BB2 uxth r3, r3
- 120 002a C384 strh r3, [r0, #38] @ movhi
- 121 002c DBB9 cbnz r3, .L9
- 2925:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 122 .loc 1 2925 0
- 123 002e 0268 ldr r2, [r0]
- 124 0030 D368 ldr r3, [r2, #12]
- 125 0032 23F08003 bic r3, r3, #128
- 126 0036 D360 str r3, [r2, #12]
- 2928:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 127 .loc 1 2928 0
- 128 0038 0268 ldr r2, [r0]
- 129 003a D368 ldr r3, [r2, #12]
- 130 003c 43F04003 orr r3, r3, #64
- 131 0040 D360 str r3, [r2, #12]
- 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 132 .loc 1 2930 0
- 133 0042 0020 movs r0, #0
- 134 .LVL5:
- 135 0044 7047 bx lr
- 136 .LVL6:
- 137 .L11:
- 2906:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->DR = (uint16_t)(*tmp & (uint16_t)0x01FF);
- 138 .loc 1 2906 0
- 139 0046 036A ldr r3, [r0, #32]
- 140 .LVL7:
- 2907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 141 .loc 1 2907 0
- ARM GAS /tmp/ccD7nRW1.s page 55
- 142 0048 0268 ldr r2, [r0]
- 143 004a 1B88 ldrh r3, [r3]
- 144 .LVL8:
- 145 004c C3F30803 ubfx r3, r3, #0, #9
- 146 0050 5360 str r3, [r2, #4]
- 147 .LVL9:
- 2908:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 148 .loc 1 2908 0
- 149 0052 0369 ldr r3, [r0, #16]
- 150 0054 1BB9 cbnz r3, .L6
- 2910:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 151 .loc 1 2910 0
- 152 0056 036A ldr r3, [r0, #32]
- 153 0058 0233 adds r3, r3, #2
- 154 005a 0362 str r3, [r0, #32]
- 155 005c E1E7 b .L7
- 156 .L6:
- 2914:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 157 .loc 1 2914 0
- 158 005e 036A ldr r3, [r0, #32]
- 159 0060 0133 adds r3, r3, #1
- 160 0062 0362 str r3, [r0, #32]
- 161 0064 DDE7 b .L7
- 162 .L9:
- 2930:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 163 .loc 1 2930 0
- 164 0066 0020 movs r0, #0
- 165 .LVL10:
- 2935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2936:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 166 .loc 1 2936 0
- 167 0068 7047 bx lr
- 168 .cfi_endproc
- 169 .LFE181:
- 171 .section .text.UART_SetConfig,"ax",%progbits
- 172 .align 1
- 173 .syntax unified
- 174 .thumb
- 175 .thumb_func
- 176 .fpu fpv4-sp-d16
- 178 UART_SetConfig:
- 179 .LFB184:
- 2937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2938:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2939:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Wraps up transmission in non blocking mode.
- 2940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2941:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2942:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2943:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_EndTransmit_IT(UART_HandleTypeDef *huart)
- 2945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2946:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
- 2947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_TC);
- 2948:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2949:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Tx process is ended, restore huart->gState to Ready */
- 2950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 2951:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 56
- 2952:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 2953:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Tx complete callback*/
- 2954:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxCpltCallback(huart);
- 2955:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 2956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Tx complete callback*/
- 2957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_TxCpltCallback(huart);
- 2958:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2960:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 2961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2962:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2963:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 2964:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Receives an amount of data in non blocking mode
- 2965:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 2966:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 2967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval HAL status
- 2968:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 2969:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static HAL_StatusTypeDef UART_Receive_IT(UART_HandleTypeDef *huart)
- 2970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2971:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 2972:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2973:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is ongoing */
- 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->RxState == HAL_UART_STATE_BUSY_RX)
- 2975:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 2977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmp = (uint16_t *) huart->pRxBuffPtr;
- 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 2980:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x01FF);
- 2982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
- 2983:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2984:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *tmp = (uint16_t)(huart->Instance->DR & (uint16_t)0x00FF);
- 2987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
- 2988:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2989:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2991:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 2993:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *huart->pRxBuffPtr++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x00FF);
- 2995:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2996:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 2997:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** *huart->pRxBuffPtr++ = (uint8_t)(huart->Instance->DR & (uint8_t)0x007F);
- 2999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (--huart->RxXferCount == 0U)
- 3003:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3004:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Data Register not empty Interrupt */
- 3005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_RXNE);
- 3006:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3007:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Parity Error Interrupt */
- 3008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_PE);
- ARM GAS /tmp/ccD7nRW1.s page 57
- 3009:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3010:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Error Interrupt: (Frame error, noise error, overrun error) */
- 3011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** __HAL_UART_DISABLE_IT(huart, UART_IT_ERR);
- 3012:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Rx process is completed, restore huart->RxState to Ready */
- 3014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 3015:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3016:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- 3017:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call registered Rx complete callback*/
- 3018:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxCpltCallback(huart);
- 3019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 3020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*Call legacy weak Rx complete callback*/
- 3021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** HAL_UART_RxCpltCallback(huart);
- 3022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3023:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 3025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_OK;
- 3027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 3029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return HAL_BUSY;
- 3031:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /**
- 3035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @brief Configures the UART peripheral.
- 3036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @param huart Pointer to a UART_HandleTypeDef structure that contains
- 3037:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * the configuration information for the specified UART module.
- 3038:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** * @retval None
- 3039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** */
- 3040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** static void UART_SetConfig(UART_HandleTypeDef *huart)
- 3041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 180 .loc 1 3041 0
- 181 .cfi_startproc
- 182 @ args = 0, pretend = 0, frame = 0
- 183 @ frame_needed = 0, uses_anonymous_args = 0
- 184 .LVL11:
- 185 0000 2DE9F047 push {r4, r5, r6, r7, r8, r9, r10, lr}
- 186 .LCFI0:
- 187 .cfi_def_cfa_offset 32
- 188 .cfi_offset 4, -32
- 189 .cfi_offset 5, -28
- 190 .cfi_offset 6, -24
- 191 .cfi_offset 7, -20
- 192 .cfi_offset 8, -16
- 193 .cfi_offset 9, -12
- 194 .cfi_offset 10, -8
- 195 .cfi_offset 14, -4
- 196 0004 0446 mov r4, r0
- 3042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg;
- 3043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3044:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 3045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_BAUDRATE(huart->Init.BaudRate));
- 3046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_STOPBITS(huart->Init.StopBits));
- 3047:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_PARITY(huart->Init.Parity));
- 3048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** assert_param(IS_UART_MODE(huart->Init.Mode));
- ARM GAS /tmp/ccD7nRW1.s page 58
- 3049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR2 Configuration -----------------------*/
- 3051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Configure the UART Stop Bits: Set STOP[13:12] bits
- 3052:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** according to huart->Init.StopBits value */
- 3053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR2, USART_CR2_STOP, huart->Init.StopBits);
- 197 .loc 1 3053 0
- 198 0006 0268 ldr r2, [r0]
- 199 0008 1369 ldr r3, [r2, #16]
- 200 000a 23F44053 bic r3, r3, #12288
- 201 000e C168 ldr r1, [r0, #12]
- 202 0010 0B43 orrs r3, r3, r1
- 203 0012 1361 str r3, [r2, #16]
- 3054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3055:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR1 Configuration -----------------------*/
- 3056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Configure the UART Word Length, Parity and mode:
- 3057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set the M bits according to huart->Init.WordLength value
- 3058:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set PCE and PS bits according to huart->Init.Parity value
- 3059:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set TE and RE bits according to huart->Init.Mode value
- 3060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** Set OVER8 bit according to huart->Init.OverSampling value */
- 3061:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 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
- 204 .loc 1 3062 0
- 205 0014 8368 ldr r3, [r0, #8]
- 206 0016 0269 ldr r2, [r0, #16]
- 207 0018 1343 orrs r3, r3, r2
- 208 001a 4269 ldr r2, [r0, #20]
- 209 001c 1343 orrs r3, r3, r2
- 210 001e C269 ldr r2, [r0, #28]
- 211 0020 1343 orrs r3, r3, r2
- 212 .LVL12:
- 3063:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR1,
- 213 .loc 1 3063 0
- 214 0022 0168 ldr r1, [r0]
- 215 0024 CA68 ldr r2, [r1, #12]
- 216 0026 22F41642 bic r2, r2, #38400
- 217 002a 22F00C02 bic r2, r2, #12
- 218 002e 1343 orrs r3, r3, r2
- 219 .LVL13:
- 220 0030 CB60 str r3, [r1, #12]
- 221 .LVL14:
- 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 |
- 3065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** tmpreg);
- 3066:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART CR3 Configuration -----------------------*/
- 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 */
- 3069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** MODIFY_REG(huart->Instance->CR3, (USART_CR3_RTSE | USART_CR3_CTSE), huart->Init.HwFlowCtl);
- 222 .loc 1 3069 0
- 223 0032 0268 ldr r2, [r0]
- 224 0034 5369 ldr r3, [r2, #20]
- 225 0036 23F44073 bic r3, r3, #768
- 226 003a 8169 ldr r1, [r0, #24]
- 227 003c 0B43 orrs r3, r3, r1
- 228 003e 5361 str r3, [r2, #20]
- 3070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3071:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the Over Sampling */
- 3072:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.OverSampling == UART_OVERSAMPLING_8)
- 229 .loc 1 3072 0
- ARM GAS /tmp/ccD7nRW1.s page 59
- 230 0040 C369 ldr r3, [r0, #28]
- 231 0042 B3F5004F cmp r3, #32768
- 232 0046 62D0 beq .L20
- 3073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART BRR Configuration ---------------------*/
- 3075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if defined(USART6)
- 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->Instance == USART1) || (huart->Instance == USART6))
- 3077:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
- 3079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3080:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 3081:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Instance == USART1)
- 3082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3083:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
- 3084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3085:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USART6 */
- 3086:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 3087:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING8(HAL_RCC_GetPCLK1Freq(), huart->Init.BaudRate);
- 3089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3091:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 3092:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3093:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /*-------------------------- USART BRR Configuration ---------------------*/
- 3094:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if defined(USART6)
- 3095:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->Instance == USART1) || (huart->Instance == USART6))
- 233 .loc 1 3095 0
- 234 0048 D0F80080 ldr r8, [r0]
- 235 004c BB4B ldr r3, .L21
- 236 004e 9845 cmp r8, r3
- 237 0050 00F01B81 beq .L17
- 238 .loc 1 3095 0 is_stmt 0 discriminator 1
- 239 0054 03F58063 add r3, r3, #1024
- 240 0058 9845 cmp r8, r3
- 241 005a 00F01681 beq .L17
- 3096:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
- 3098:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3099:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #else
- 3100:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Instance == USART1)
- 3101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK2Freq(), huart->Init.BaudRate);
- 3103:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3104:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USART6 */
- 3105:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** else
- 3106:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->Instance->BRR = UART_BRR_SAMPLING16(HAL_RCC_GetPCLK1Freq(), huart->Init.BaudRate);
- 242 .loc 1 3107 0 is_stmt 1
- 243 005e FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 244 .LVL15:
- 245 0062 00EB8000 add r0, r0, r0, lsl #2
- 246 0066 00EB8000 add r0, r0, r0, lsl #2
- 247 006a 6568 ldr r5, [r4, #4]
- 248 006c AD00 lsls r5, r5, #2
- 249 006e B0FBF5F5 udiv r5, r0, r5
- 250 0072 B34F ldr r7, .L21+4
- 251 0074 A7FB0535 umull r3, r5, r7, r5
- ARM GAS /tmp/ccD7nRW1.s page 60
- 252 0078 6D09 lsrs r5, r5, #5
- 253 007a 2E01 lsls r6, r5, #4
- 254 007c FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 255 .LVL16:
- 256 0080 00EB8000 add r0, r0, r0, lsl #2
- 257 0084 00EB8000 add r0, r0, r0, lsl #2
- 258 0088 6568 ldr r5, [r4, #4]
- 259 008a AD00 lsls r5, r5, #2
- 260 008c B0FBF5FA udiv r10, r0, r5
- 261 0090 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 262 .LVL17:
- 263 0094 00EB8000 add r0, r0, r0, lsl #2
- 264 0098 00EB8000 add r0, r0, r0, lsl #2
- 265 009c 6568 ldr r5, [r4, #4]
- 266 009e AD00 lsls r5, r5, #2
- 267 00a0 B0FBF5F5 udiv r5, r0, r5
- 268 00a4 A7FB0535 umull r3, r5, r7, r5
- 269 00a8 6D09 lsrs r5, r5, #5
- 270 00aa 4FF06409 mov r9, #100
- 271 00ae 09FB15A5 mls r5, r9, r5, r10
- 272 00b2 2D01 lsls r5, r5, #4
- 273 00b4 3235 adds r5, r5, #50
- 274 00b6 A7FB0535 umull r3, r5, r7, r5
- 275 00ba 6D09 lsrs r5, r5, #5
- 276 00bc 05F0F005 and r5, r5, #240
- 277 00c0 3544 add r5, r5, r6
- 278 00c2 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 279 .LVL18:
- 280 00c6 00EB8000 add r0, r0, r0, lsl #2
- 281 00ca 00EB8000 add r0, r0, r0, lsl #2
- 282 00ce 6668 ldr r6, [r4, #4]
- 283 00d0 B600 lsls r6, r6, #2
- 284 00d2 B0FBF6F6 udiv r6, r0, r6
- 285 00d6 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 286 .LVL19:
- 287 00da 00EB8000 add r0, r0, r0, lsl #2
- 288 00de 00EB8000 add r0, r0, r0, lsl #2
- 289 00e2 6368 ldr r3, [r4, #4]
- 290 00e4 9B00 lsls r3, r3, #2
- 291 00e6 B0FBF3F0 udiv r0, r0, r3
- 292 00ea A7FB0030 umull r3, r0, r7, r0
- 293 00ee 4009 lsrs r0, r0, #5
- 294 00f0 09FB1069 mls r9, r9, r0, r6
- 295 00f4 4FEA0919 lsl r9, r9, #4
- 296 00f8 09F13209 add r9, r9, #50
- 297 00fc A7FB0937 umull r3, r7, r7, r9
- 298 0100 C7F34317 ubfx r7, r7, #5, #4
- 299 0104 2F44 add r7, r7, r5
- 300 0106 C8F80870 str r7, [r8, #8]
- 301 010a BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
- 302 .LVL20:
- 303 .L20:
- 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 304 .loc 1 3076 0
- 305 010e D0F80080 ldr r8, [r0]
- 306 0112 03F18043 add r3, r3, #1073741824
- 307 0116 03F51043 add r3, r3, #36864
- ARM GAS /tmp/ccD7nRW1.s page 61
- 308 011a 9845 cmp r8, r3
- 309 011c 5CD0 beq .L14
- 3076:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 310 .loc 1 3076 0 is_stmt 0 discriminator 1
- 311 011e 03F58063 add r3, r3, #1024
- 312 0122 9845 cmp r8, r3
- 313 0124 58D0 beq .L14
- 3088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 314 .loc 1 3088 0 is_stmt 1
- 315 0126 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 316 .LVL21:
- 317 012a 00EB8000 add r0, r0, r0, lsl #2
- 318 012e 00EB8000 add r0, r0, r0, lsl #2
- 319 0132 6568 ldr r5, [r4, #4]
- 320 0134 6D00 lsls r5, r5, #1
- 321 0136 B0FBF5F5 udiv r5, r0, r5
- 322 013a 814F ldr r7, .L21+4
- 323 013c A7FB0535 umull r3, r5, r7, r5
- 324 0140 6D09 lsrs r5, r5, #5
- 325 0142 2E01 lsls r6, r5, #4
- 326 0144 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 327 .LVL22:
- 328 0148 00EB8000 add r0, r0, r0, lsl #2
- 329 014c 00EB8000 add r0, r0, r0, lsl #2
- 330 0150 6568 ldr r5, [r4, #4]
- 331 0152 6D00 lsls r5, r5, #1
- 332 0154 B0FBF5FA udiv r10, r0, r5
- 333 0158 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 334 .LVL23:
- 335 015c 00EB8000 add r0, r0, r0, lsl #2
- 336 0160 00EB8000 add r0, r0, r0, lsl #2
- 337 0164 6568 ldr r5, [r4, #4]
- 338 0166 6D00 lsls r5, r5, #1
- 339 0168 B0FBF5F5 udiv r5, r0, r5
- 340 016c A7FB0535 umull r3, r5, r7, r5
- 341 0170 6D09 lsrs r5, r5, #5
- 342 0172 4FF06409 mov r9, #100
- 343 0176 09FB15A5 mls r5, r9, r5, r10
- 344 017a ED00 lsls r5, r5, #3
- 345 017c 3235 adds r5, r5, #50
- 346 017e A7FB0535 umull r3, r5, r7, r5
- 347 0182 6D09 lsrs r5, r5, #5
- 348 0184 6D00 lsls r5, r5, #1
- 349 0186 05F4F875 and r5, r5, #496
- 350 018a 3544 add r5, r5, r6
- 351 018c FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 352 .LVL24:
- 353 0190 00EB8000 add r0, r0, r0, lsl #2
- 354 0194 00EB8000 add r0, r0, r0, lsl #2
- 355 0198 6668 ldr r6, [r4, #4]
- 356 019a 7600 lsls r6, r6, #1
- 357 019c B0FBF6F6 udiv r6, r0, r6
- 358 01a0 FFF7FEFF bl HAL_RCC_GetPCLK1Freq
- 359 .LVL25:
- 360 01a4 00EB8000 add r0, r0, r0, lsl #2
- 361 01a8 00EB8000 add r0, r0, r0, lsl #2
- 362 01ac 6368 ldr r3, [r4, #4]
- ARM GAS /tmp/ccD7nRW1.s page 62
- 363 01ae 5B00 lsls r3, r3, #1
- 364 01b0 B0FBF3F3 udiv r3, r0, r3
- 365 01b4 A7FB0323 umull r2, r3, r7, r3
- 366 01b8 5B09 lsrs r3, r3, #5
- 367 01ba 09FB1369 mls r9, r9, r3, r6
- 368 01be 4FEAC909 lsl r9, r9, #3
- 369 01c2 09F13209 add r9, r9, #50
- 370 01c6 A7FB0937 umull r3, r7, r7, r9
- 371 01ca C7F34217 ubfx r7, r7, #5, #3
- 372 01ce 2F44 add r7, r7, r5
- 373 01d0 C8F80870 str r7, [r8, #8]
- 374 01d4 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
- 375 .LVL26:
- 376 .L14:
- 3078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 377 .loc 1 3078 0
- 378 01d8 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 379 .LVL27:
- 380 01dc 00EB8000 add r0, r0, r0, lsl #2
- 381 01e0 00EB8000 add r0, r0, r0, lsl #2
- 382 01e4 6568 ldr r5, [r4, #4]
- 383 01e6 6D00 lsls r5, r5, #1
- 384 01e8 B0FBF5F5 udiv r5, r0, r5
- 385 01ec 544F ldr r7, .L21+4
- 386 01ee A7FB0535 umull r3, r5, r7, r5
- 387 01f2 6D09 lsrs r5, r5, #5
- 388 01f4 2E01 lsls r6, r5, #4
- 389 01f6 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 390 .LVL28:
- 391 01fa 00EB8000 add r0, r0, r0, lsl #2
- 392 01fe 00EB8000 add r0, r0, r0, lsl #2
- 393 0202 6568 ldr r5, [r4, #4]
- 394 0204 6D00 lsls r5, r5, #1
- 395 0206 B0FBF5FA udiv r10, r0, r5
- 396 020a FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 397 .LVL29:
- 398 020e 00EB8000 add r0, r0, r0, lsl #2
- 399 0212 00EB8000 add r0, r0, r0, lsl #2
- 400 0216 6568 ldr r5, [r4, #4]
- 401 0218 6D00 lsls r5, r5, #1
- 402 021a B0FBF5F5 udiv r5, r0, r5
- 403 021e A7FB0535 umull r3, r5, r7, r5
- 404 0222 6D09 lsrs r5, r5, #5
- 405 0224 4FF06409 mov r9, #100
- 406 0228 09FB15A5 mls r5, r9, r5, r10
- 407 022c ED00 lsls r5, r5, #3
- 408 022e 3235 adds r5, r5, #50
- 409 0230 A7FB0535 umull r3, r5, r7, r5
- 410 0234 6D09 lsrs r5, r5, #5
- 411 0236 6D00 lsls r5, r5, #1
- 412 0238 05F4F875 and r5, r5, #496
- 413 023c 3544 add r5, r5, r6
- 414 023e FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 415 .LVL30:
- 416 0242 00EB8000 add r0, r0, r0, lsl #2
- 417 0246 00EB8000 add r0, r0, r0, lsl #2
- 418 024a 6668 ldr r6, [r4, #4]
- ARM GAS /tmp/ccD7nRW1.s page 63
- 419 024c 7600 lsls r6, r6, #1
- 420 024e B0FBF6F6 udiv r6, r0, r6
- 421 0252 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 422 .LVL31:
- 423 0256 00EB8000 add r0, r0, r0, lsl #2
- 424 025a 00EB8000 add r0, r0, r0, lsl #2
- 425 025e 6368 ldr r3, [r4, #4]
- 426 0260 5B00 lsls r3, r3, #1
- 427 0262 B0FBF3F3 udiv r3, r0, r3
- 428 0266 A7FB0323 umull r2, r3, r7, r3
- 429 026a 5B09 lsrs r3, r3, #5
- 430 026c 09FB1369 mls r9, r9, r3, r6
- 431 0270 4FEAC909 lsl r9, r9, #3
- 432 0274 09F13209 add r9, r9, #50
- 433 0278 A7FB0937 umull r3, r7, r7, r9
- 434 027c C7F34217 ubfx r7, r7, #5, #3
- 435 0280 2F44 add r7, r7, r5
- 436 0282 C8F80870 str r7, [r8, #8]
- 437 0286 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
- 438 .LVL32:
- 439 .L17:
- 3097:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 440 .loc 1 3097 0
- 441 028a FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 442 .LVL33:
- 443 028e 00EB8000 add r0, r0, r0, lsl #2
- 444 0292 00EB8000 add r0, r0, r0, lsl #2
- 445 0296 6568 ldr r5, [r4, #4]
- 446 0298 AD00 lsls r5, r5, #2
- 447 029a B0FBF5F5 udiv r5, r0, r5
- 448 029e 284F ldr r7, .L21+4
- 449 02a0 A7FB0535 umull r3, r5, r7, r5
- 450 02a4 6D09 lsrs r5, r5, #5
- 451 02a6 2E01 lsls r6, r5, #4
- 452 02a8 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 453 .LVL34:
- 454 02ac 00EB8000 add r0, r0, r0, lsl #2
- 455 02b0 00EB8000 add r0, r0, r0, lsl #2
- 456 02b4 6568 ldr r5, [r4, #4]
- 457 02b6 AD00 lsls r5, r5, #2
- 458 02b8 B0FBF5FA udiv r10, r0, r5
- 459 02bc FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 460 .LVL35:
- 461 02c0 00EB8000 add r0, r0, r0, lsl #2
- 462 02c4 00EB8000 add r0, r0, r0, lsl #2
- 463 02c8 6568 ldr r5, [r4, #4]
- 464 02ca AD00 lsls r5, r5, #2
- 465 02cc B0FBF5F5 udiv r5, r0, r5
- 466 02d0 A7FB0535 umull r3, r5, r7, r5
- 467 02d4 6D09 lsrs r5, r5, #5
- 468 02d6 4FF06409 mov r9, #100
- 469 02da 09FB15A5 mls r5, r9, r5, r10
- 470 02de 2D01 lsls r5, r5, #4
- 471 02e0 3235 adds r5, r5, #50
- 472 02e2 A7FB0535 umull r3, r5, r7, r5
- 473 02e6 6D09 lsrs r5, r5, #5
- 474 02e8 05F0F005 and r5, r5, #240
- ARM GAS /tmp/ccD7nRW1.s page 64
- 475 02ec 3544 add r5, r5, r6
- 476 02ee FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 477 .LVL36:
- 478 02f2 00EB8000 add r0, r0, r0, lsl #2
- 479 02f6 00EB8000 add r0, r0, r0, lsl #2
- 480 02fa 6668 ldr r6, [r4, #4]
- 481 02fc B600 lsls r6, r6, #2
- 482 02fe B0FBF6F6 udiv r6, r0, r6
- 483 0302 FFF7FEFF bl HAL_RCC_GetPCLK2Freq
- 484 .LVL37:
- 485 0306 00EB8000 add r0, r0, r0, lsl #2
- 486 030a 00EB8000 add r0, r0, r0, lsl #2
- 487 030e 6368 ldr r3, [r4, #4]
- 488 0310 9B00 lsls r3, r3, #2
- 489 0312 B0FBF3F3 udiv r3, r0, r3
- 490 0316 A7FB0323 umull r2, r3, r7, r3
- 491 031a 5B09 lsrs r3, r3, #5
- 492 031c 09FB1369 mls r9, r9, r3, r6
- 493 0320 4FEA0919 lsl r9, r9, #4
- 494 0324 09F13209 add r9, r9, #50
- 495 0328 A7FB0937 umull r3, r7, r7, r9
- 496 032c C7F34317 ubfx r7, r7, #5, #4
- 497 0330 2F44 add r7, r7, r5
- 498 0332 C8F80870 str r7, [r8, #8]
- 499 0336 BDE8F087 pop {r4, r5, r6, r7, r8, r9, r10, pc}
- 500 .LVL38:
- 501 .L22:
- 502 033a 00BF .align 2
- 503 .L21:
- 504 033c 00100140 .word 1073811456
- 505 0340 1F85EB51 .word 1374389535
- 506 .cfi_endproc
- 507 .LFE184:
- 509 .section .text.UART_WaitOnFlagUntilTimeout,"ax",%progbits
- 510 .align 1
- 511 .syntax unified
- 512 .thumb
- 513 .thumb_func
- 514 .fpu fpv4-sp-d16
- 516 UART_WaitOnFlagUntilTimeout:
- 517 .LFB173:
- 2668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Wait until flag is set */
- 518 .loc 1 2668 0
- 519 .cfi_startproc
- 520 @ args = 4, pretend = 0, frame = 0
- 521 @ frame_needed = 0, uses_anonymous_args = 0
- 522 .LVL39:
- 523 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
- 524 .LCFI1:
- 525 .cfi_def_cfa_offset 24
- 526 .cfi_offset 4, -24
- 527 .cfi_offset 5, -20
- 528 .cfi_offset 6, -16
- 529 .cfi_offset 7, -12
- 530 .cfi_offset 8, -8
- 531 .cfi_offset 14, -4
- 532 0004 0546 mov r5, r0
- ARM GAS /tmp/ccD7nRW1.s page 65
- 533 0006 0F46 mov r7, r1
- 534 0008 1646 mov r6, r2
- 535 000a 9846 mov r8, r3
- 536 000c 069C ldr r4, [sp, #24]
- 537 .LVL40:
- 538 .L25:
- 2670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 539 .loc 1 2670 0
- 540 000e 2B68 ldr r3, [r5]
- 541 0010 1B68 ldr r3, [r3]
- 542 0012 37EA0303 bics r3, r7, r3
- 543 0016 0CBF ite eq
- 544 0018 0123 moveq r3, #1
- 545 001a 0023 movne r3, #0
- 546 001c B342 cmp r3, r6
- 547 001e 1ED1 bne .L30
- 2673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 548 .loc 1 2673 0
- 549 0020 B4F1FF3F cmp r4, #-1
- 550 0024 F3D0 beq .L25
- 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 551 .loc 1 2675 0
- 552 0026 2CB1 cbz r4, .L26
- 2675:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 553 .loc 1 2675 0 is_stmt 0 discriminator 1
- 554 0028 FFF7FEFF bl HAL_GetTick
- 555 .LVL41:
- 556 002c A0EB0800 sub r0, r0, r8
- 557 0030 8442 cmp r4, r0
- 558 0032 ECD2 bcs .L25
- 559 .L26:
- 2678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 560 .loc 1 2678 0 is_stmt 1
- 561 0034 2A68 ldr r2, [r5]
- 562 0036 D368 ldr r3, [r2, #12]
- 563 0038 23F4D073 bic r3, r3, #416
- 564 003c D360 str r3, [r2, #12]
- 2679:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 565 .loc 1 2679 0
- 566 003e 2A68 ldr r2, [r5]
- 567 0040 5369 ldr r3, [r2, #20]
- 568 0042 23F00103 bic r3, r3, #1
- 569 0046 5361 str r3, [r2, #20]
- 2681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 570 .loc 1 2681 0
- 571 0048 2023 movs r3, #32
- 572 004a 85F83930 strb r3, [r5, #57]
- 2682:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 573 .loc 1 2682 0
- 574 004e 85F83A30 strb r3, [r5, #58]
- 2685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 575 .loc 1 2685 0
- 576 0052 0023 movs r3, #0
- 577 0054 85F83830 strb r3, [r5, #56]
- 2687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 578 .loc 1 2687 0
- 579 0058 0320 movs r0, #3
- ARM GAS /tmp/ccD7nRW1.s page 66
- 580 005a BDE8F081 pop {r4, r5, r6, r7, r8, pc}
- 581 .LVL42:
- 582 .L30:
- 2691:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 583 .loc 1 2691 0
- 584 005e 0020 movs r0, #0
- 2692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 585 .loc 1 2692 0
- 586 0060 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
- 587 .cfi_endproc
- 588 .LFE173:
- 590 .section .text.HAL_UART_MspInit,"ax",%progbits
- 591 .align 1
- 592 .weak HAL_UART_MspInit
- 593 .syntax unified
- 594 .thumb
- 595 .thumb_func
- 596 .fpu fpv4-sp-d16
- 598 HAL_UART_MspInit:
- 599 .LFB135:
- 668:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 600 .loc 1 668 0
- 601 .cfi_startproc
- 602 @ args = 0, pretend = 0, frame = 0
- 603 @ frame_needed = 0, uses_anonymous_args = 0
- 604 @ link register save eliminated.
- 605 .LVL43:
- 606 0000 7047 bx lr
- 607 .cfi_endproc
- 608 .LFE135:
- 610 .section .text.HAL_UART_Init,"ax",%progbits
- 611 .align 1
- 612 .global HAL_UART_Init
- 613 .syntax unified
- 614 .thumb
- 615 .thumb_func
- 616 .fpu fpv4-sp-d16
- 618 HAL_UART_Init:
- 619 .LFB130:
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 620 .loc 1 318 0
- 621 .cfi_startproc
- 622 @ args = 0, pretend = 0, frame = 0
- 623 @ frame_needed = 0, uses_anonymous_args = 0
- 624 .LVL44:
- 320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 625 .loc 1 320 0
- 626 0000 58B3 cbz r0, .L35
- 318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 627 .loc 1 318 0
- 628 0002 10B5 push {r4, lr}
- 629 .LCFI2:
- 630 .cfi_def_cfa_offset 8
- 631 .cfi_offset 4, -8
- 632 .cfi_offset 14, -4
- 633 0004 0446 mov r4, r0
- 339:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 67
- 634 .loc 1 339 0
- 635 0006 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 636 000a 0BB3 cbz r3, .L40
- 637 .LVL45:
- 638 .L34:
- 360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 639 .loc 1 360 0
- 640 000c 2423 movs r3, #36
- 641 000e 84F83930 strb r3, [r4, #57]
- 363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 642 .loc 1 363 0
- 643 0012 2268 ldr r2, [r4]
- 644 0014 D368 ldr r3, [r2, #12]
- 645 0016 23F40053 bic r3, r3, #8192
- 646 001a D360 str r3, [r2, #12]
- 366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 647 .loc 1 366 0
- 648 001c 2046 mov r0, r4
- 649 001e FFF7FEFF bl UART_SetConfig
- 650 .LVL46:
- 371:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
- 651 .loc 1 371 0
- 652 0022 2268 ldr r2, [r4]
- 653 0024 1369 ldr r3, [r2, #16]
- 654 0026 23F49043 bic r3, r3, #18432
- 655 002a 1361 str r3, [r2, #16]
- 372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 656 .loc 1 372 0
- 657 002c 2268 ldr r2, [r4]
- 658 002e 5369 ldr r3, [r2, #20]
- 659 0030 23F02A03 bic r3, r3, #42
- 660 0034 5361 str r3, [r2, #20]
- 375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 661 .loc 1 375 0
- 662 0036 2268 ldr r2, [r4]
- 663 0038 D368 ldr r3, [r2, #12]
- 664 003a 43F40053 orr r3, r3, #8192
- 665 003e D360 str r3, [r2, #12]
- 378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 666 .loc 1 378 0
- 667 0040 0020 movs r0, #0
- 668 0042 E063 str r0, [r4, #60]
- 379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 669 .loc 1 379 0
- 670 0044 2023 movs r3, #32
- 671 0046 84F83930 strb r3, [r4, #57]
- 380:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 672 .loc 1 380 0
- 673 004a 84F83A30 strb r3, [r4, #58]
- 382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 674 .loc 1 382 0
- 675 004e 10BD pop {r4, pc}
- 676 .LVL47:
- 677 .L40:
- 342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 678 .loc 1 342 0
- 679 0050 80F83830 strb r3, [r0, #56]
- ARM GAS /tmp/ccD7nRW1.s page 68
- 356:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 680 .loc 1 356 0
- 681 0054 FFF7FEFF bl HAL_UART_MspInit
- 682 .LVL48:
- 683 0058 D8E7 b .L34
- 684 .LVL49:
- 685 .L35:
- 686 .LCFI3:
- 687 .cfi_def_cfa_offset 0
- 688 .cfi_restore 4
- 689 .cfi_restore 14
- 322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 690 .loc 1 322 0
- 691 005a 0120 movs r0, #1
- 692 .LVL50:
- 693 005c 7047 bx lr
- 694 .cfi_endproc
- 695 .LFE130:
- 697 .section .text.HAL_HalfDuplex_Init,"ax",%progbits
- 698 .align 1
- 699 .global HAL_HalfDuplex_Init
- 700 .syntax unified
- 701 .thumb
- 702 .thumb_func
- 703 .fpu fpv4-sp-d16
- 705 HAL_HalfDuplex_Init:
- 706 .LFB131:
- 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 707 .loc 1 393 0
- 708 .cfi_startproc
- 709 @ args = 0, pretend = 0, frame = 0
- 710 @ frame_needed = 0, uses_anonymous_args = 0
- 711 .LVL51:
- 395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 712 .loc 1 395 0
- 713 0000 0028 cmp r0, #0
- 714 0002 30D0 beq .L44
- 393:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 715 .loc 1 393 0
- 716 0004 10B5 push {r4, lr}
- 717 .LCFI4:
- 718 .cfi_def_cfa_offset 8
- 719 .cfi_offset 4, -8
- 720 .cfi_offset 14, -4
- 721 0006 0446 mov r4, r0
- 405:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 722 .loc 1 405 0
- 723 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 724 000c 33B3 cbz r3, .L49
- 725 .LVL52:
- 726 .L43:
- 426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 727 .loc 1 426 0
- 728 000e 2423 movs r3, #36
- 729 0010 84F83930 strb r3, [r4, #57]
- 429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 730 .loc 1 429 0
- ARM GAS /tmp/ccD7nRW1.s page 69
- 731 0014 2268 ldr r2, [r4]
- 732 0016 D368 ldr r3, [r2, #12]
- 733 0018 23F40053 bic r3, r3, #8192
- 734 001c D360 str r3, [r2, #12]
- 432:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 735 .loc 1 432 0
- 736 001e 2046 mov r0, r4
- 737 0020 FFF7FEFF bl UART_SetConfig
- 738 .LVL53:
- 437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_IREN | USART_CR3_SCEN));
- 739 .loc 1 437 0
- 740 0024 2268 ldr r2, [r4]
- 741 0026 1369 ldr r3, [r2, #16]
- 742 0028 23F49043 bic r3, r3, #18432
- 743 002c 1361 str r3, [r2, #16]
- 438:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 744 .loc 1 438 0
- 745 002e 2268 ldr r2, [r4]
- 746 0030 5369 ldr r3, [r2, #20]
- 747 0032 23F02203 bic r3, r3, #34
- 748 0036 5361 str r3, [r2, #20]
- 441:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 749 .loc 1 441 0
- 750 0038 2268 ldr r2, [r4]
- 751 003a 5369 ldr r3, [r2, #20]
- 752 003c 43F00803 orr r3, r3, #8
- 753 0040 5361 str r3, [r2, #20]
- 444:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 754 .loc 1 444 0
- 755 0042 2268 ldr r2, [r4]
- 756 0044 D368 ldr r3, [r2, #12]
- 757 0046 43F40053 orr r3, r3, #8192
- 758 004a D360 str r3, [r2, #12]
- 447:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 759 .loc 1 447 0
- 760 004c 0020 movs r0, #0
- 761 004e E063 str r0, [r4, #60]
- 448:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 762 .loc 1 448 0
- 763 0050 2023 movs r3, #32
- 764 0052 84F83930 strb r3, [r4, #57]
- 449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 765 .loc 1 449 0
- 766 0056 84F83A30 strb r3, [r4, #58]
- 451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 767 .loc 1 451 0
- 768 005a 10BD pop {r4, pc}
- 769 .LVL54:
- 770 .L49:
- 408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 771 .loc 1 408 0
- 772 005c 80F83830 strb r3, [r0, #56]
- 422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 773 .loc 1 422 0
- 774 0060 FFF7FEFF bl HAL_UART_MspInit
- 775 .LVL55:
- 776 0064 D3E7 b .L43
- ARM GAS /tmp/ccD7nRW1.s page 70
- 777 .LVL56:
- 778 .L44:
- 779 .LCFI5:
- 780 .cfi_def_cfa_offset 0
- 781 .cfi_restore 4
- 782 .cfi_restore 14
- 397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 783 .loc 1 397 0
- 784 0066 0120 movs r0, #1
- 785 .LVL57:
- 786 0068 7047 bx lr
- 787 .cfi_endproc
- 788 .LFE131:
- 790 .section .text.HAL_LIN_Init,"ax",%progbits
- 791 .align 1
- 792 .global HAL_LIN_Init
- 793 .syntax unified
- 794 .thumb
- 795 .thumb_func
- 796 .fpu fpv4-sp-d16
- 798 HAL_LIN_Init:
- 799 .LFB132:
- 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 800 .loc 1 466 0
- 801 .cfi_startproc
- 802 @ args = 0, pretend = 0, frame = 0
- 803 @ frame_needed = 0, uses_anonymous_args = 0
- 804 .LVL58:
- 468:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 805 .loc 1 468 0
- 806 0000 0028 cmp r0, #0
- 807 0002 3BD0 beq .L53
- 466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 808 .loc 1 466 0
- 809 0004 38B5 push {r3, r4, r5, lr}
- 810 .LCFI6:
- 811 .cfi_def_cfa_offset 16
- 812 .cfi_offset 3, -16
- 813 .cfi_offset 4, -12
- 814 .cfi_offset 5, -8
- 815 .cfi_offset 14, -4
- 816 0006 0446 mov r4, r0
- 817 0008 0D46 mov r5, r1
- 481:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 818 .loc 1 481 0
- 819 000a 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 820 000e 002B cmp r3, #0
- 821 0010 2FD0 beq .L58
- 822 .LVL59:
- 823 .L52:
- 502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 824 .loc 1 502 0
- 825 0012 2423 movs r3, #36
- 826 0014 84F83930 strb r3, [r4, #57]
- 505:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 827 .loc 1 505 0
- 828 0018 2268 ldr r2, [r4]
- ARM GAS /tmp/ccD7nRW1.s page 71
- 829 001a D368 ldr r3, [r2, #12]
- 830 001c 23F40053 bic r3, r3, #8192
- 831 0020 D360 str r3, [r2, #12]
- 508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 832 .loc 1 508 0
- 833 0022 2046 mov r0, r4
- 834 0024 FFF7FEFF bl UART_SetConfig
- 835 .LVL60:
- 513:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_HDSEL | USART_CR3_IREN | USART_CR3_SCEN));
- 836 .loc 1 513 0
- 837 0028 2268 ldr r2, [r4]
- 838 002a 1369 ldr r3, [r2, #16]
- 839 002c 23F40063 bic r3, r3, #2048
- 840 0030 1361 str r3, [r2, #16]
- 514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 841 .loc 1 514 0
- 842 0032 2268 ldr r2, [r4]
- 843 0034 5369 ldr r3, [r2, #20]
- 844 0036 23F02A03 bic r3, r3, #42
- 845 003a 5361 str r3, [r2, #20]
- 517:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 846 .loc 1 517 0
- 847 003c 2268 ldr r2, [r4]
- 848 003e 1369 ldr r3, [r2, #16]
- 849 0040 43F48043 orr r3, r3, #16384
- 850 0044 1361 str r3, [r2, #16]
- 520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, BreakDetectLength);
- 851 .loc 1 520 0
- 852 0046 2268 ldr r2, [r4]
- 853 0048 1369 ldr r3, [r2, #16]
- 854 004a 23F02003 bic r3, r3, #32
- 855 004e 1361 str r3, [r2, #16]
- 521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 856 .loc 1 521 0
- 857 0050 2368 ldr r3, [r4]
- 858 0052 1969 ldr r1, [r3, #16]
- 859 0054 0D43 orrs r5, r5, r1
- 860 .LVL61:
- 861 0056 1D61 str r5, [r3, #16]
- 524:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 862 .loc 1 524 0
- 863 0058 2268 ldr r2, [r4]
- 864 005a D368 ldr r3, [r2, #12]
- 865 005c 43F40053 orr r3, r3, #8192
- 866 0060 D360 str r3, [r2, #12]
- 527:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 867 .loc 1 527 0
- 868 0062 0020 movs r0, #0
- 869 0064 E063 str r0, [r4, #60]
- 528:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 870 .loc 1 528 0
- 871 0066 2023 movs r3, #32
- 872 0068 84F83930 strb r3, [r4, #57]
- 529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 873 .loc 1 529 0
- 874 006c 84F83A30 strb r3, [r4, #58]
- 531:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 72
- 875 .loc 1 531 0
- 876 0070 38BD pop {r3, r4, r5, pc}
- 877 .LVL62:
- 878 .L58:
- 484:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 879 .loc 1 484 0
- 880 0072 80F83830 strb r3, [r0, #56]
- 498:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 881 .loc 1 498 0
- 882 0076 FFF7FEFF bl HAL_UART_MspInit
- 883 .LVL63:
- 884 007a CAE7 b .L52
- 885 .LVL64:
- 886 .L53:
- 887 .LCFI7:
- 888 .cfi_def_cfa_offset 0
- 889 .cfi_restore 3
- 890 .cfi_restore 4
- 891 .cfi_restore 5
- 892 .cfi_restore 14
- 470:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 893 .loc 1 470 0
- 894 007c 0120 movs r0, #1
- 895 .LVL65:
- 896 007e 7047 bx lr
- 897 .cfi_endproc
- 898 .LFE132:
- 900 .section .text.HAL_MultiProcessor_Init,"ax",%progbits
- 901 .align 1
- 902 .global HAL_MultiProcessor_Init
- 903 .syntax unified
- 904 .thumb
- 905 .thumb_func
- 906 .fpu fpv4-sp-d16
- 908 HAL_MultiProcessor_Init:
- 909 .LFB133:
- 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 910 .loc 1 547 0
- 911 .cfi_startproc
- 912 @ args = 0, pretend = 0, frame = 0
- 913 @ frame_needed = 0, uses_anonymous_args = 0
- 914 .LVL66:
- 549:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 915 .loc 1 549 0
- 916 0000 0028 cmp r0, #0
- 917 0002 40D0 beq .L62
- 547:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 918 .loc 1 547 0
- 919 0004 70B5 push {r4, r5, r6, lr}
- 920 .LCFI8:
- 921 .cfi_def_cfa_offset 16
- 922 .cfi_offset 4, -16
- 923 .cfi_offset 5, -12
- 924 .cfi_offset 6, -8
- 925 .cfi_offset 14, -4
- 926 0006 0446 mov r4, r0
- 927 0008 1646 mov r6, r2
- ARM GAS /tmp/ccD7nRW1.s page 73
- 928 000a 0D46 mov r5, r1
- 563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 929 .loc 1 563 0
- 930 000c 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 931 0010 002B cmp r3, #0
- 932 0012 33D0 beq .L67
- 933 .LVL67:
- 934 .L61:
- 584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 935 .loc 1 584 0
- 936 0014 2423 movs r3, #36
- 937 0016 84F83930 strb r3, [r4, #57]
- 587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 938 .loc 1 587 0
- 939 001a 2268 ldr r2, [r4]
- 940 001c D368 ldr r3, [r2, #12]
- 941 001e 23F40053 bic r3, r3, #8192
- 942 0022 D360 str r3, [r2, #12]
- 590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 943 .loc 1 590 0
- 944 0024 2046 mov r0, r4
- 945 0026 FFF7FEFF bl UART_SetConfig
- 946 .LVL68:
- 595:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, (USART_CR3_SCEN | USART_CR3_HDSEL | USART_CR3_IREN));
- 947 .loc 1 595 0
- 948 002a 2268 ldr r2, [r4]
- 949 002c 1369 ldr r3, [r2, #16]
- 950 002e 23F49043 bic r3, r3, #18432
- 951 0032 1361 str r3, [r2, #16]
- 596:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 952 .loc 1 596 0
- 953 0034 2268 ldr r2, [r4]
- 954 0036 5369 ldr r3, [r2, #20]
- 955 0038 23F02A03 bic r3, r3, #42
- 956 003c 5361 str r3, [r2, #20]
- 599:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR2, Address);
- 957 .loc 1 599 0
- 958 003e 2268 ldr r2, [r4]
- 959 0040 1369 ldr r3, [r2, #16]
- 960 0042 23F00F03 bic r3, r3, #15
- 961 0046 1361 str r3, [r2, #16]
- 600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 962 .loc 1 600 0
- 963 0048 2368 ldr r3, [r4]
- 964 004a 1969 ldr r1, [r3, #16]
- 965 004c 0D43 orrs r5, r5, r1
- 966 004e 1D61 str r5, [r3, #16]
- 603:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR1, WakeUpMethod);
- 967 .loc 1 603 0
- 968 0050 2268 ldr r2, [r4]
- 969 0052 D368 ldr r3, [r2, #12]
- 970 0054 23F40063 bic r3, r3, #2048
- 971 0058 D360 str r3, [r2, #12]
- 604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 972 .loc 1 604 0
- 973 005a 2168 ldr r1, [r4]
- 974 005c CB68 ldr r3, [r1, #12]
- ARM GAS /tmp/ccD7nRW1.s page 74
- 975 005e 3343 orrs r3, r3, r6
- 976 0060 CB60 str r3, [r1, #12]
- 607:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 977 .loc 1 607 0
- 978 0062 2268 ldr r2, [r4]
- 979 0064 D368 ldr r3, [r2, #12]
- 980 0066 43F40053 orr r3, r3, #8192
- 981 006a D360 str r3, [r2, #12]
- 610:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- 982 .loc 1 610 0
- 983 006c 0020 movs r0, #0
- 984 006e E063 str r0, [r4, #60]
- 611:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 985 .loc 1 611 0
- 986 0070 2023 movs r3, #32
- 987 0072 84F83930 strb r3, [r4, #57]
- 612:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 988 .loc 1 612 0
- 989 0076 84F83A30 strb r3, [r4, #58]
- 614:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 990 .loc 1 614 0
- 991 007a 70BD pop {r4, r5, r6, pc}
- 992 .LVL69:
- 993 .L67:
- 566:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 994 .loc 1 566 0
- 995 007c 80F83830 strb r3, [r0, #56]
- 580:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 996 .loc 1 580 0
- 997 0080 FFF7FEFF bl HAL_UART_MspInit
- 998 .LVL70:
- 999 0084 C6E7 b .L61
- 1000 .LVL71:
- 1001 .L62:
- 1002 .LCFI9:
- 1003 .cfi_def_cfa_offset 0
- 1004 .cfi_restore 4
- 1005 .cfi_restore 5
- 1006 .cfi_restore 6
- 1007 .cfi_restore 14
- 551:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1008 .loc 1 551 0
- 1009 0086 0120 movs r0, #1
- 1010 .LVL72:
- 1011 0088 7047 bx lr
- 1012 .cfi_endproc
- 1013 .LFE133:
- 1015 .section .text.HAL_UART_MspDeInit,"ax",%progbits
- 1016 .align 1
- 1017 .weak HAL_UART_MspDeInit
- 1018 .syntax unified
- 1019 .thumb
- 1020 .thumb_func
- 1021 .fpu fpv4-sp-d16
- 1023 HAL_UART_MspDeInit:
- 1024 .LFB136:
- 683:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- ARM GAS /tmp/ccD7nRW1.s page 75
- 1025 .loc 1 683 0
- 1026 .cfi_startproc
- 1027 @ args = 0, pretend = 0, frame = 0
- 1028 @ frame_needed = 0, uses_anonymous_args = 0
- 1029 @ link register save eliminated.
- 1030 .LVL73:
- 1031 0000 7047 bx lr
- 1032 .cfi_endproc
- 1033 .LFE136:
- 1035 .section .text.HAL_UART_DeInit,"ax",%progbits
- 1036 .align 1
- 1037 .global HAL_UART_DeInit
- 1038 .syntax unified
- 1039 .thumb
- 1040 .thumb_func
- 1041 .fpu fpv4-sp-d16
- 1043 HAL_UART_DeInit:
- 1044 .LFB134:
- 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 1045 .loc 1 624 0
- 1046 .cfi_startproc
- 1047 @ args = 0, pretend = 0, frame = 0
- 1048 @ frame_needed = 0, uses_anonymous_args = 0
- 1049 .LVL74:
- 626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1050 .loc 1 626 0
- 1051 0000 A0B1 cbz r0, .L71
- 624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the UART handle allocation */
- 1052 .loc 1 624 0
- 1053 0002 10B5 push {r4, lr}
- 1054 .LCFI10:
- 1055 .cfi_def_cfa_offset 8
- 1056 .cfi_offset 4, -8
- 1057 .cfi_offset 14, -4
- 1058 0004 0446 mov r4, r0
- 634:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1059 .loc 1 634 0
- 1060 0006 2423 movs r3, #36
- 1061 0008 80F83930 strb r3, [r0, #57]
- 637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1062 .loc 1 637 0
- 1063 000c 0268 ldr r2, [r0]
- 1064 000e D368 ldr r3, [r2, #12]
- 1065 0010 23F40053 bic r3, r3, #8192
- 1066 0014 D360 str r3, [r2, #12]
- 648:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* (USE_HAL_UART_REGISTER_CALLBACKS) */
- 1067 .loc 1 648 0
- 1068 0016 FFF7FEFF bl HAL_UART_MspDeInit
- 1069 .LVL75:
- 651:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_RESET;
- 1070 .loc 1 651 0
- 1071 001a 0020 movs r0, #0
- 1072 001c E063 str r0, [r4, #60]
- 652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_RESET;
- 1073 .loc 1 652 0
- 1074 001e 84F83900 strb r0, [r4, #57]
- 653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 76
- 1075 .loc 1 653 0
- 1076 0022 84F83A00 strb r0, [r4, #58]
- 656:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1077 .loc 1 656 0
- 1078 0026 84F83800 strb r0, [r4, #56]
- 658:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1079 .loc 1 658 0
- 1080 002a 10BD pop {r4, pc}
- 1081 .LVL76:
- 1082 .L71:
- 1083 .LCFI11:
- 1084 .cfi_def_cfa_offset 0
- 1085 .cfi_restore 4
- 1086 .cfi_restore 14
- 628:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1087 .loc 1 628 0
- 1088 002c 0120 movs r0, #1
- 1089 .LVL77:
- 1090 002e 7047 bx lr
- 1091 .cfi_endproc
- 1092 .LFE134:
- 1094 .section .text.HAL_UART_Transmit,"ax",%progbits
- 1095 .align 1
- 1096 .global HAL_UART_Transmit
- 1097 .syntax unified
- 1098 .thumb
- 1099 .thumb_func
- 1100 .fpu fpv4-sp-d16
- 1102 HAL_UART_Transmit:
- 1103 .LFB137:
- 1020:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 1104 .loc 1 1020 0
- 1105 .cfi_startproc
- 1106 @ args = 0, pretend = 0, frame = 0
- 1107 @ frame_needed = 0, uses_anonymous_args = 0
- 1108 .LVL78:
- 1109 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
- 1110 .LCFI12:
- 1111 .cfi_def_cfa_offset 24
- 1112 .cfi_offset 4, -24
- 1113 .cfi_offset 5, -20
- 1114 .cfi_offset 6, -16
- 1115 .cfi_offset 7, -12
- 1116 .cfi_offset 8, -8
- 1117 .cfi_offset 14, -4
- 1118 0004 82B0 sub sp, sp, #8
- 1119 .LCFI13:
- 1120 .cfi_def_cfa_offset 32
- 1121 0006 1E46 mov r6, r3
- 1122 .LVL79:
- 1025:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1123 .loc 1 1025 0
- 1124 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 1125 .LVL80:
- 1126 000c DBB2 uxtb r3, r3
- 1127 000e 202B cmp r3, #32
- 1128 0010 04D0 beq .L91
- ARM GAS /tmp/ccD7nRW1.s page 77
- 1088:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1129 .loc 1 1088 0
- 1130 0012 0223 movs r3, #2
- 1131 .LVL81:
- 1132 .L77:
- 1090:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1133 .loc 1 1090 0
- 1134 0014 1846 mov r0, r3
- 1135 0016 02B0 add sp, sp, #8
- 1136 .LCFI14:
- 1137 .cfi_remember_state
- 1138 .cfi_def_cfa_offset 24
- 1139 @ sp needed
- 1140 0018 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
- 1141 .LVL82:
- 1142 .L91:
- 1143 .LCFI15:
- 1144 .cfi_restore_state
- 1145 001c 0446 mov r4, r0
- 1146 001e 0D46 mov r5, r1
- 1147 0020 9046 mov r8, r2
- 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1148 .loc 1 1027 0
- 1149 0022 0029 cmp r1, #0
- 1150 0024 55D0 beq .L84
- 1027:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1151 .loc 1 1027 0 is_stmt 0 discriminator 1
- 1152 0026 002A cmp r2, #0
- 1153 0028 55D0 beq .L85
- 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1154 .loc 1 1033 0 is_stmt 1
- 1155 002a 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1156 002e 012B cmp r3, #1
- 1157 0030 01D1 bne .L92
- 1158 0032 0223 movs r3, #2
- 1159 0034 EEE7 b .L77
- 1160 .L92:
- 1033:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1161 .loc 1 1033 0 is_stmt 0 discriminator 2
- 1162 0036 0123 movs r3, #1
- 1163 0038 80F83830 strb r3, [r0, #56]
- 1035:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1164 .loc 1 1035 0 is_stmt 1 discriminator 2
- 1165 003c 0023 movs r3, #0
- 1166 003e C363 str r3, [r0, #60]
- 1036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1167 .loc 1 1036 0 discriminator 2
- 1168 0040 2123 movs r3, #33
- 1169 0042 80F83930 strb r3, [r0, #57]
- 1039:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1170 .loc 1 1039 0 discriminator 2
- 1171 0046 FFF7FEFF bl HAL_GetTick
- 1172 .LVL83:
- 1173 004a 0746 mov r7, r0
- 1174 .LVL84:
- 1041:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1175 .loc 1 1041 0 discriminator 2
- ARM GAS /tmp/ccD7nRW1.s page 78
- 1176 004c A4F82480 strh r8, [r4, #36] @ movhi
- 1042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** while (huart->TxXferCount > 0U)
- 1177 .loc 1 1042 0 discriminator 2
- 1178 0050 A4F82680 strh r8, [r4, #38] @ movhi
- 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1179 .loc 1 1043 0 discriminator 2
- 1180 0054 10E0 b .L78
- 1181 .LVL85:
- 1182 .L94:
- 1048:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1183 .loc 1 1048 0
- 1184 0056 0096 str r6, [sp]
- 1185 0058 3B46 mov r3, r7
- 1186 005a 0022 movs r2, #0
- 1187 005c 8021 movs r1, #128
- 1188 005e 2046 mov r0, r4
- 1189 0060 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
- 1190 .LVL86:
- 1191 0064 0028 cmp r0, #0
- 1192 0066 38D1 bne .L87
- 1193 .LVL87:
- 1053:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 1194 .loc 1 1053 0
- 1195 0068 2268 ldr r2, [r4]
- 1196 006a 2B88 ldrh r3, [r5]
- 1197 006c C3F30803 ubfx r3, r3, #0, #9
- 1198 0070 5360 str r3, [r2, #4]
- 1054:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1199 .loc 1 1054 0
- 1200 0072 2369 ldr r3, [r4, #16]
- 1201 0074 CBB9 cbnz r3, .L80
- 1056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1202 .loc 1 1056 0
- 1203 0076 0235 adds r5, r5, #2
- 1204 .LVL88:
- 1205 .L78:
- 1043:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1206 .loc 1 1043 0
- 1207 0078 E38C ldrh r3, [r4, #38]
- 1208 007a 9BB2 uxth r3, r3
- 1209 007c BBB1 cbz r3, .L93
- 1045:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 1210 .loc 1 1045 0
- 1211 007e E38C ldrh r3, [r4, #38]
- 1212 0080 9BB2 uxth r3, r3
- 1213 0082 013B subs r3, r3, #1
- 1214 0084 9BB2 uxth r3, r3
- 1215 0086 E384 strh r3, [r4, #38] @ movhi
- 1046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1216 .loc 1 1046 0
- 1217 0088 A368 ldr r3, [r4, #8]
- 1218 008a B3F5805F cmp r3, #4096
- 1219 008e E2D0 beq .L94
- 1065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1220 .loc 1 1065 0
- 1221 0090 0096 str r6, [sp]
- 1222 0092 3B46 mov r3, r7
- ARM GAS /tmp/ccD7nRW1.s page 79
- 1223 0094 0022 movs r2, #0
- 1224 0096 8021 movs r1, #128
- 1225 0098 2046 mov r0, r4
- 1226 009a FFF7FEFF bl UART_WaitOnFlagUntilTimeout
- 1227 .LVL89:
- 1228 009e F0B9 cbnz r0, .L88
- 1069:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1229 .loc 1 1069 0
- 1230 00a0 2368 ldr r3, [r4]
- 1231 .LVL90:
- 1232 00a2 2A78 ldrb r2, [r5] @ zero_extendqisi2
- 1233 00a4 5A60 str r2, [r3, #4]
- 1234 00a6 0135 adds r5, r5, #1
- 1235 .LVL91:
- 1236 00a8 E6E7 b .L78
- 1237 .LVL92:
- 1238 .L80:
- 1060:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1239 .loc 1 1060 0
- 1240 00aa 0135 adds r5, r5, #1
- 1241 .LVL93:
- 1242 00ac E4E7 b .L78
- 1243 .LVL94:
- 1244 .L93:
- 1073:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1245 .loc 1 1073 0
- 1246 00ae 0096 str r6, [sp]
- 1247 00b0 3B46 mov r3, r7
- 1248 00b2 0022 movs r2, #0
- 1249 00b4 4021 movs r1, #64
- 1250 00b6 2046 mov r0, r4
- 1251 00b8 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
- 1252 .LVL95:
- 1253 00bc 0346 mov r3, r0
- 1254 00be 08B1 cbz r0, .L95
- 1075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1255 .loc 1 1075 0
- 1256 00c0 0323 movs r3, #3
- 1257 00c2 A7E7 b .L77
- 1258 .L95:
- 1079:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1259 .loc 1 1079 0
- 1260 00c4 2022 movs r2, #32
- 1261 00c6 84F83920 strb r2, [r4, #57]
- 1082:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1262 .loc 1 1082 0
- 1263 00ca 0022 movs r2, #0
- 1264 00cc 84F83820 strb r2, [r4, #56]
- 1084:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1265 .loc 1 1084 0
- 1266 00d0 A0E7 b .L77
- 1267 .LVL96:
- 1268 .L84:
- 1029:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1269 .loc 1 1029 0
- 1270 00d2 0123 movs r3, #1
- 1271 00d4 9EE7 b .L77
- ARM GAS /tmp/ccD7nRW1.s page 80
- 1272 .L85:
- 1273 00d6 0123 movs r3, #1
- 1274 00d8 9CE7 b .L77
- 1275 .LVL97:
- 1276 .L87:
- 1050:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1277 .loc 1 1050 0
- 1278 00da 0323 movs r3, #3
- 1279 00dc 9AE7 b .L77
- 1280 .L88:
- 1067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1281 .loc 1 1067 0
- 1282 00de 0323 movs r3, #3
- 1283 00e0 98E7 b .L77
- 1284 .cfi_endproc
- 1285 .LFE137:
- 1287 .section .text.HAL_UART_Receive,"ax",%progbits
- 1288 .align 1
- 1289 .global HAL_UART_Receive
- 1290 .syntax unified
- 1291 .thumb
- 1292 .thumb_func
- 1293 .fpu fpv4-sp-d16
- 1295 HAL_UART_Receive:
- 1296 .LFB138:
- 1102:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 1297 .loc 1 1102 0
- 1298 .cfi_startproc
- 1299 @ args = 0, pretend = 0, frame = 0
- 1300 @ frame_needed = 0, uses_anonymous_args = 0
- 1301 .LVL98:
- 1302 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr}
- 1303 .LCFI16:
- 1304 .cfi_def_cfa_offset 24
- 1305 .cfi_offset 4, -24
- 1306 .cfi_offset 5, -20
- 1307 .cfi_offset 6, -16
- 1308 .cfi_offset 7, -12
- 1309 .cfi_offset 8, -8
- 1310 .cfi_offset 14, -4
- 1311 0004 82B0 sub sp, sp, #8
- 1312 .LCFI17:
- 1313 .cfi_def_cfa_offset 32
- 1314 0006 1E46 mov r6, r3
- 1315 .LVL99:
- 1107:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1316 .loc 1 1107 0
- 1317 0008 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
- 1318 .LVL100:
- 1319 000c DBB2 uxtb r3, r3
- 1320 000e 202B cmp r3, #32
- 1321 0010 03D0 beq .L111
- 1177:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1322 .loc 1 1177 0
- 1323 0012 0220 movs r0, #2
- 1324 .LVL101:
- 1325 .L97:
- ARM GAS /tmp/ccD7nRW1.s page 81
- 1179:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1326 .loc 1 1179 0
- 1327 0014 02B0 add sp, sp, #8
- 1328 .LCFI18:
- 1329 .cfi_remember_state
- 1330 .cfi_def_cfa_offset 24
- 1331 @ sp needed
- 1332 0016 BDE8F081 pop {r4, r5, r6, r7, r8, pc}
- 1333 .LVL102:
- 1334 .L111:
- 1335 .LCFI19:
- 1336 .cfi_restore_state
- 1337 001a 0446 mov r4, r0
- 1338 001c 0D46 mov r5, r1
- 1339 001e 9046 mov r8, r2
- 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1340 .loc 1 1109 0
- 1341 0020 0029 cmp r1, #0
- 1342 0022 58D0 beq .L105
- 1109:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1343 .loc 1 1109 0 is_stmt 0 discriminator 1
- 1344 0024 002A cmp r2, #0
- 1345 0026 58D0 beq .L106
- 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1346 .loc 1 1115 0 is_stmt 1
- 1347 0028 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1348 002c 012B cmp r3, #1
- 1349 002e 01D1 bne .L112
- 1350 0030 0220 movs r0, #2
- 1351 .LVL103:
- 1352 0032 EFE7 b .L97
- 1353 .LVL104:
- 1354 .L112:
- 1115:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1355 .loc 1 1115 0 is_stmt 0 discriminator 2
- 1356 0034 0123 movs r3, #1
- 1357 0036 80F83830 strb r3, [r0, #56]
- 1117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1358 .loc 1 1117 0 is_stmt 1 discriminator 2
- 1359 003a 0023 movs r3, #0
- 1360 003c C363 str r3, [r0, #60]
- 1118:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1361 .loc 1 1118 0 discriminator 2
- 1362 003e 2223 movs r3, #34
- 1363 0040 80F83A30 strb r3, [r0, #58]
- 1121:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1364 .loc 1 1121 0 discriminator 2
- 1365 0044 FFF7FEFF bl HAL_GetTick
- 1366 .LVL105:
- 1367 0048 0746 mov r7, r0
- 1368 .LVL106:
- 1123:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
- 1369 .loc 1 1123 0 discriminator 2
- 1370 004a A4F82C80 strh r8, [r4, #44] @ movhi
- 1124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1371 .loc 1 1124 0 discriminator 2
- 1372 004e A4F82E80 strh r8, [r4, #46] @ movhi
- ARM GAS /tmp/ccD7nRW1.s page 82
- 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1373 .loc 1 1127 0 discriminator 2
- 1374 0052 1DE0 b .L98
- 1375 .LVL107:
- 1376 .L114:
- 1132:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1377 .loc 1 1132 0
- 1378 0054 0096 str r6, [sp]
- 1379 0056 3B46 mov r3, r7
- 1380 0058 0022 movs r2, #0
- 1381 005a 2021 movs r1, #32
- 1382 005c 2046 mov r0, r4
- 1383 005e FFF7FEFF bl UART_WaitOnFlagUntilTimeout
- 1384 .LVL108:
- 1385 0062 0028 cmp r0, #0
- 1386 0064 3BD1 bne .L108
- 1387 .LVL109:
- 1137:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1388 .loc 1 1137 0
- 1389 0066 2369 ldr r3, [r4, #16]
- 1390 0068 33B9 cbnz r3, .L100
- 1139:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 2U;
- 1391 .loc 1 1139 0
- 1392 006a 2368 ldr r3, [r4]
- 1393 006c 5B68 ldr r3, [r3, #4]
- 1394 006e C3F30803 ubfx r3, r3, #0, #9
- 1395 0072 25F8023B strh r3, [r5], #2 @ movhi
- 1396 .LVL110:
- 1397 0076 0BE0 b .L98
- 1398 .LVL111:
- 1399 .L100:
- 1144:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** pData += 1U;
- 1400 .loc 1 1144 0
- 1401 0078 2368 ldr r3, [r4]
- 1402 007a 5B68 ldr r3, [r3, #4]
- 1403 007c DBB2 uxtb r3, r3
- 1404 007e 25F8013B strh r3, [r5], #1 @ movhi
- 1405 .LVL112:
- 1406 0082 05E0 b .L98
- 1407 .LVL113:
- 1408 .L102:
- 1161:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1409 .loc 1 1161 0
- 1410 0084 2368 ldr r3, [r4]
- 1411 0086 5B68 ldr r3, [r3, #4]
- 1412 0088 03F07F03 and r3, r3, #127
- 1413 008c 2B70 strb r3, [r5]
- 1414 008e 0135 adds r5, r5, #1
- 1415 .LVL114:
- 1416 .L98:
- 1127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1417 .loc 1 1127 0
- 1418 0090 E38D ldrh r3, [r4, #46]
- 1419 0092 9BB2 uxth r3, r3
- 1420 0094 C3B1 cbz r3, .L113
- 1129:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.WordLength == UART_WORDLENGTH_9B)
- 1421 .loc 1 1129 0
- ARM GAS /tmp/ccD7nRW1.s page 83
- 1422 0096 E38D ldrh r3, [r4, #46]
- 1423 0098 9BB2 uxth r3, r3
- 1424 009a 013B subs r3, r3, #1
- 1425 009c 9BB2 uxth r3, r3
- 1426 009e E385 strh r3, [r4, #46] @ movhi
- 1130:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1427 .loc 1 1130 0
- 1428 00a0 A368 ldr r3, [r4, #8]
- 1429 00a2 B3F5805F cmp r3, #4096
- 1430 00a6 D5D0 beq .L114
- 1151:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1431 .loc 1 1151 0
- 1432 00a8 0096 str r6, [sp]
- 1433 00aa 3B46 mov r3, r7
- 1434 00ac 0022 movs r2, #0
- 1435 00ae 2021 movs r1, #32
- 1436 00b0 2046 mov r0, r4
- 1437 00b2 FFF7FEFF bl UART_WaitOnFlagUntilTimeout
- 1438 .LVL115:
- 1439 00b6 A0B9 cbnz r0, .L109
- 1155:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1440 .loc 1 1155 0
- 1441 00b8 2369 ldr r3, [r4, #16]
- 1442 00ba 002B cmp r3, #0
- 1443 00bc E2D1 bne .L102
- 1444 .LVL116:
- 1157:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1445 .loc 1 1157 0
- 1446 00be 2368 ldr r3, [r4]
- 1447 00c0 5B68 ldr r3, [r3, #4]
- 1448 00c2 2B70 strb r3, [r5]
- 1449 00c4 0135 adds r5, r5, #1
- 1450 .LVL117:
- 1451 00c6 E3E7 b .L98
- 1452 .L113:
- 1168:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1453 .loc 1 1168 0
- 1454 00c8 2023 movs r3, #32
- 1455 00ca 84F83A30 strb r3, [r4, #58]
- 1171:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1456 .loc 1 1171 0
- 1457 00ce 0020 movs r0, #0
- 1458 00d0 84F83800 strb r0, [r4, #56]
- 1173:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1459 .loc 1 1173 0
- 1460 00d4 9EE7 b .L97
- 1461 .LVL118:
- 1462 .L105:
- 1111:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1463 .loc 1 1111 0
- 1464 00d6 0120 movs r0, #1
- 1465 .LVL119:
- 1466 00d8 9CE7 b .L97
- 1467 .LVL120:
- 1468 .L106:
- 1469 00da 0120 movs r0, #1
- 1470 .LVL121:
- ARM GAS /tmp/ccD7nRW1.s page 84
- 1471 00dc 9AE7 b .L97
- 1472 .LVL122:
- 1473 .L108:
- 1134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1474 .loc 1 1134 0
- 1475 00de 0320 movs r0, #3
- 1476 00e0 98E7 b .L97
- 1477 .L109:
- 1153:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1478 .loc 1 1153 0
- 1479 00e2 0320 movs r0, #3
- 1480 00e4 96E7 b .L97
- 1481 .cfi_endproc
- 1482 .LFE138:
- 1484 .section .text.HAL_UART_Transmit_IT,"ax",%progbits
- 1485 .align 1
- 1486 .global HAL_UART_Transmit_IT
- 1487 .syntax unified
- 1488 .thumb
- 1489 .thumb_func
- 1490 .fpu fpv4-sp-d16
- 1492 HAL_UART_Transmit_IT:
- 1493 .LFB139:
- 1190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Tx process is not already ongoing */
- 1494 .loc 1 1190 0
- 1495 .cfi_startproc
- 1496 @ args = 0, pretend = 0, frame = 0
- 1497 @ frame_needed = 0, uses_anonymous_args = 0
- 1498 @ link register save eliminated.
- 1499 .LVL123:
- 1192:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1500 .loc 1 1192 0
- 1501 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 1502 0004 DBB2 uxtb r3, r3
- 1503 0006 202B cmp r3, #32
- 1504 0008 01D0 beq .L121
- 1219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1505 .loc 1 1219 0
- 1506 000a 0220 movs r0, #2
- 1507 .LVL124:
- 1508 000c 7047 bx lr
- 1509 .LVL125:
- 1510 .L121:
- 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1511 .loc 1 1194 0
- 1512 000e A9B1 cbz r1, .L118
- 1194:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1513 .loc 1 1194 0 is_stmt 0 discriminator 1
- 1514 0010 B2B1 cbz r2, .L119
- 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1515 .loc 1 1200 0 is_stmt 1
- 1516 0012 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1517 0016 012B cmp r3, #1
- 1518 0018 14D0 beq .L120
- 1202:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
- 1519 .loc 1 1202 0 discriminator 2
- 1520 001a 0162 str r1, [r0, #32]
- ARM GAS /tmp/ccD7nRW1.s page 85
- 1203:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1521 .loc 1 1203 0 discriminator 2
- 1522 001c 8284 strh r2, [r0, #36] @ movhi
- 1204:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1523 .loc 1 1204 0 discriminator 2
- 1524 001e C284 strh r2, [r0, #38] @ movhi
- 1206:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1525 .loc 1 1206 0 discriminator 2
- 1526 0020 0023 movs r3, #0
- 1527 0022 C363 str r3, [r0, #60]
- 1207:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1528 .loc 1 1207 0 discriminator 2
- 1529 0024 2122 movs r2, #33
- 1530 .LVL126:
- 1531 0026 80F83920 strb r2, [r0, #57]
- 1210:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1532 .loc 1 1210 0 discriminator 2
- 1533 002a 80F83830 strb r3, [r0, #56]
- 1213:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1534 .loc 1 1213 0 discriminator 2
- 1535 002e 0168 ldr r1, [r0]
- 1536 .LVL127:
- 1537 0030 CA68 ldr r2, [r1, #12]
- 1538 0032 42F08002 orr r2, r2, #128
- 1539 0036 CA60 str r2, [r1, #12]
- 1540 .LVL128:
- 1215:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1541 .loc 1 1215 0 discriminator 2
- 1542 0038 1846 mov r0, r3
- 1543 .LVL129:
- 1544 003a 7047 bx lr
- 1545 .LVL130:
- 1546 .L118:
- 1196:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1547 .loc 1 1196 0
- 1548 003c 0120 movs r0, #1
- 1549 .LVL131:
- 1550 003e 7047 bx lr
- 1551 .LVL132:
- 1552 .L119:
- 1553 0040 0120 movs r0, #1
- 1554 .LVL133:
- 1555 0042 7047 bx lr
- 1556 .LVL134:
- 1557 .L120:
- 1200:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1558 .loc 1 1200 0
- 1559 0044 0220 movs r0, #2
- 1560 .LVL135:
- 1221:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1561 .loc 1 1221 0
- 1562 0046 7047 bx lr
- 1563 .cfi_endproc
- 1564 .LFE139:
- 1566 .section .text.HAL_UART_Receive_IT,"ax",%progbits
- 1567 .align 1
- 1568 .global HAL_UART_Receive_IT
- ARM GAS /tmp/ccD7nRW1.s page 86
- 1569 .syntax unified
- 1570 .thumb
- 1571 .thumb_func
- 1572 .fpu fpv4-sp-d16
- 1574 HAL_UART_Receive_IT:
- 1575 .LFB140:
- 1232:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check that a Rx process is not already ongoing */
- 1576 .loc 1 1232 0
- 1577 .cfi_startproc
- 1578 @ args = 0, pretend = 0, frame = 0
- 1579 @ frame_needed = 0, uses_anonymous_args = 0
- 1580 @ link register save eliminated.
- 1581 .LVL136:
- 1234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1582 .loc 1 1234 0
- 1583 0000 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
- 1584 0004 DBB2 uxtb r3, r3
- 1585 0006 202B cmp r3, #32
- 1586 0008 01D0 beq .L128
- 1267:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1587 .loc 1 1267 0
- 1588 000a 0220 movs r0, #2
- 1589 .LVL137:
- 1590 000c 7047 bx lr
- 1591 .LVL138:
- 1592 .L128:
- 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1593 .loc 1 1236 0
- 1594 000e F9B1 cbz r1, .L125
- 1236:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1595 .loc 1 1236 0 is_stmt 0 discriminator 1
- 1596 0010 02B3 cbz r2, .L126
- 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1597 .loc 1 1242 0 is_stmt 1
- 1598 0012 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1599 0016 012B cmp r3, #1
- 1600 0018 1ED0 beq .L127
- 1244:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
- 1601 .loc 1 1244 0 discriminator 2
- 1602 001a 8162 str r1, [r0, #40]
- 1245:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = Size;
- 1603 .loc 1 1245 0 discriminator 2
- 1604 001c 8285 strh r2, [r0, #44] @ movhi
- 1246:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1605 .loc 1 1246 0 discriminator 2
- 1606 001e C285 strh r2, [r0, #46] @ movhi
- 1248:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1607 .loc 1 1248 0 discriminator 2
- 1608 0020 0023 movs r3, #0
- 1609 0022 C363 str r3, [r0, #60]
- 1249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1610 .loc 1 1249 0 discriminator 2
- 1611 0024 2222 movs r2, #34
- 1612 .LVL139:
- 1613 0026 80F83A20 strb r2, [r0, #58]
- 1252:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1614 .loc 1 1252 0 discriminator 2
- ARM GAS /tmp/ccD7nRW1.s page 87
- 1615 002a 80F83830 strb r3, [r0, #56]
- 1255:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1616 .loc 1 1255 0 discriminator 2
- 1617 002e 0168 ldr r1, [r0]
- 1618 .LVL140:
- 1619 0030 CA68 ldr r2, [r1, #12]
- 1620 0032 42F48072 orr r2, r2, #256
- 1621 0036 CA60 str r2, [r1, #12]
- 1622 .LVL141:
- 1258:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1623 .loc 1 1258 0 discriminator 2
- 1624 0038 0168 ldr r1, [r0]
- 1625 003a 4A69 ldr r2, [r1, #20]
- 1626 003c 42F00102 orr r2, r2, #1
- 1627 0040 4A61 str r2, [r1, #20]
- 1261:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1628 .loc 1 1261 0 discriminator 2
- 1629 0042 0168 ldr r1, [r0]
- 1630 0044 CA68 ldr r2, [r1, #12]
- 1631 0046 42F02002 orr r2, r2, #32
- 1632 004a CA60 str r2, [r1, #12]
- 1263:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1633 .loc 1 1263 0 discriminator 2
- 1634 004c 1846 mov r0, r3
- 1635 .LVL142:
- 1636 004e 7047 bx lr
- 1637 .LVL143:
- 1638 .L125:
- 1238:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1639 .loc 1 1238 0
- 1640 0050 0120 movs r0, #1
- 1641 .LVL144:
- 1642 0052 7047 bx lr
- 1643 .LVL145:
- 1644 .L126:
- 1645 0054 0120 movs r0, #1
- 1646 .LVL146:
- 1647 0056 7047 bx lr
- 1648 .LVL147:
- 1649 .L127:
- 1242:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1650 .loc 1 1242 0
- 1651 0058 0220 movs r0, #2
- 1652 .LVL148:
- 1269:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1653 .loc 1 1269 0
- 1654 005a 7047 bx lr
- 1655 .cfi_endproc
- 1656 .LFE140:
- 1658 .section .text.HAL_UART_Transmit_DMA,"ax",%progbits
- 1659 .align 1
- 1660 .global HAL_UART_Transmit_DMA
- 1661 .syntax unified
- 1662 .thumb
- 1663 .thumb_func
- 1664 .fpu fpv4-sp-d16
- 1666 HAL_UART_Transmit_DMA:
- ARM GAS /tmp/ccD7nRW1.s page 88
- 1667 .LFB141:
- 1280:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
- 1668 .loc 1 1280 0
- 1669 .cfi_startproc
- 1670 @ args = 0, pretend = 0, frame = 0
- 1671 @ frame_needed = 0, uses_anonymous_args = 0
- 1672 .LVL149:
- 1673 0000 38B5 push {r3, r4, r5, lr}
- 1674 .LCFI20:
- 1675 .cfi_def_cfa_offset 16
- 1676 .cfi_offset 3, -16
- 1677 .cfi_offset 4, -12
- 1678 .cfi_offset 5, -8
- 1679 .cfi_offset 14, -4
- 1284:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1680 .loc 1 1284 0
- 1681 0002 90F83940 ldrb r4, [r0, #57] @ zero_extendqisi2
- 1682 0006 E4B2 uxtb r4, r4
- 1683 0008 202C cmp r4, #32
- 1684 000a 01D0 beq .L136
- 1331:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1685 .loc 1 1331 0
- 1686 000c 0220 movs r0, #2
- 1687 .LVL150:
- 1688 000e 38BD pop {r3, r4, r5, pc}
- 1689 .LVL151:
- 1690 .L136:
- 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1691 .loc 1 1286 0
- 1692 0010 0029 cmp r1, #0
- 1693 0012 31D0 beq .L132
- 1286:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1694 .loc 1 1286 0 is_stmt 0 discriminator 1
- 1695 0014 002A cmp r2, #0
- 1696 0016 31D0 beq .L133
- 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1697 .loc 1 1292 0 is_stmt 1
- 1698 0018 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1699 001c 012B cmp r3, #1
- 1700 001e 01D1 bne .L137
- 1701 0020 0220 movs r0, #2
- 1702 .LVL152:
- 1333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1703 .loc 1 1333 0
- 1704 0022 38BD pop {r3, r4, r5, pc}
- 1705 .LVL153:
- 1706 .L137:
- 1707 0024 1346 mov r3, r2
- 1708 0026 0446 mov r4, r0
- 1292:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1709 .loc 1 1292 0 discriminator 2
- 1710 0028 0122 movs r2, #1
- 1711 .LVL154:
- 1712 002a 80F83820 strb r2, [r0, #56]
- 1294:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferSize = Size;
- 1713 .loc 1 1294 0 discriminator 2
- 1714 002e 0162 str r1, [r0, #32]
- ARM GAS /tmp/ccD7nRW1.s page 89
- 1295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = Size;
- 1715 .loc 1 1295 0 discriminator 2
- 1716 0030 8384 strh r3, [r0, #36] @ movhi
- 1296:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1717 .loc 1 1296 0 discriminator 2
- 1718 0032 C384 strh r3, [r0, #38] @ movhi
- 1298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_BUSY_TX;
- 1719 .loc 1 1298 0 discriminator 2
- 1720 0034 0025 movs r5, #0
- 1721 0036 C563 str r5, [r0, #60]
- 1299:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1722 .loc 1 1299 0 discriminator 2
- 1723 0038 2122 movs r2, #33
- 1724 003a 80F83920 strb r2, [r0, #57]
- 1302:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1725 .loc 1 1302 0 discriminator 2
- 1726 003e 026B ldr r2, [r0, #48]
- 1727 0040 0F48 ldr r0, .L138
- 1728 .LVL155:
- 1729 0042 D063 str r0, [r2, #60]
- 1305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1730 .loc 1 1305 0 discriminator 2
- 1731 0044 226B ldr r2, [r4, #48]
- 1732 0046 0F48 ldr r0, .L138+4
- 1733 0048 1064 str r0, [r2, #64]
- 1308:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1734 .loc 1 1308 0 discriminator 2
- 1735 004a 226B ldr r2, [r4, #48]
- 1736 004c 0E48 ldr r0, .L138+8
- 1737 004e D064 str r0, [r2, #76]
- 1311:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1738 .loc 1 1311 0 discriminator 2
- 1739 0050 226B ldr r2, [r4, #48]
- 1740 0052 1565 str r5, [r2, #80]
- 1741 .LVL156:
- 1315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1742 .loc 1 1315 0 discriminator 2
- 1743 0054 2268 ldr r2, [r4]
- 1744 0056 0432 adds r2, r2, #4
- 1745 0058 206B ldr r0, [r4, #48]
- 1746 005a FFF7FEFF bl HAL_DMA_Start_IT
- 1747 .LVL157:
- 1318:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1748 .loc 1 1318 0 discriminator 2
- 1749 005e 2368 ldr r3, [r4]
- 1750 0060 6FF04002 mvn r2, #64
- 1751 0064 1A60 str r2, [r3]
- 1321:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1752 .loc 1 1321 0 discriminator 2
- 1753 0066 84F83850 strb r5, [r4, #56]
- 1325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1754 .loc 1 1325 0 discriminator 2
- 1755 006a 2268 ldr r2, [r4]
- 1756 006c 5369 ldr r3, [r2, #20]
- 1757 006e 43F08003 orr r3, r3, #128
- 1758 0072 5361 str r3, [r2, #20]
- 1327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 90
- 1759 .loc 1 1327 0 discriminator 2
- 1760 0074 2846 mov r0, r5
- 1761 0076 38BD pop {r3, r4, r5, pc}
- 1762 .LVL158:
- 1763 .L132:
- 1288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1764 .loc 1 1288 0
- 1765 0078 0120 movs r0, #1
- 1766 .LVL159:
- 1767 007a 38BD pop {r3, r4, r5, pc}
- 1768 .LVL160:
- 1769 .L133:
- 1770 007c 0120 movs r0, #1
- 1771 .LVL161:
- 1772 007e 38BD pop {r3, r4, r5, pc}
- 1773 .L139:
- 1774 .align 2
- 1775 .L138:
- 1776 0080 00000000 .word UART_DMATransmitCplt
- 1777 0084 00000000 .word UART_DMATxHalfCplt
- 1778 0088 00000000 .word UART_DMAError
- 1779 .cfi_endproc
- 1780 .LFE141:
- 1782 .section .text.HAL_UART_Receive_DMA,"ax",%progbits
- 1783 .align 1
- 1784 .global HAL_UART_Receive_DMA
- 1785 .syntax unified
- 1786 .thumb
- 1787 .thumb_func
- 1788 .fpu fpv4-sp-d16
- 1790 HAL_UART_Receive_DMA:
- 1791 .LFB142:
- 1345:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t *tmp;
- 1792 .loc 1 1345 0
- 1793 .cfi_startproc
- 1794 @ args = 0, pretend = 0, frame = 8
- 1795 @ frame_needed = 0, uses_anonymous_args = 0
- 1796 .LVL162:
- 1797 0000 30B5 push {r4, r5, lr}
- 1798 .LCFI21:
- 1799 .cfi_def_cfa_offset 12
- 1800 .cfi_offset 4, -12
- 1801 .cfi_offset 5, -8
- 1802 .cfi_offset 14, -4
- 1803 0002 83B0 sub sp, sp, #12
- 1804 .LCFI22:
- 1805 .cfi_def_cfa_offset 24
- 1349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1806 .loc 1 1349 0
- 1807 0004 90F83A40 ldrb r4, [r0, #58] @ zero_extendqisi2
- 1808 0008 E4B2 uxtb r4, r4
- 1809 000a 202C cmp r4, #32
- 1810 000c 02D0 beq .L147
- 1401:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1811 .loc 1 1401 0
- 1812 000e 0220 movs r0, #2
- 1813 .LVL163:
- ARM GAS /tmp/ccD7nRW1.s page 91
- 1814 .L141:
- 1403:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1815 .loc 1 1403 0
- 1816 0010 03B0 add sp, sp, #12
- 1817 .LCFI23:
- 1818 .cfi_remember_state
- 1819 .cfi_def_cfa_offset 12
- 1820 @ sp needed
- 1821 0012 30BD pop {r4, r5, pc}
- 1822 .LVL164:
- 1823 .L147:
- 1824 .LCFI24:
- 1825 .cfi_restore_state
- 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1826 .loc 1 1351 0
- 1827 0014 0029 cmp r1, #0
- 1828 0016 3DD0 beq .L143
- 1351:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1829 .loc 1 1351 0 is_stmt 0 discriminator 1
- 1830 0018 002A cmp r2, #0
- 1831 001a 3DD0 beq .L144
- 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1832 .loc 1 1357 0 is_stmt 1
- 1833 001c 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1834 0020 012B cmp r3, #1
- 1835 0022 01D1 bne .L148
- 1836 0024 0220 movs r0, #2
- 1837 .LVL165:
- 1838 0026 F3E7 b .L141
- 1839 .LVL166:
- 1840 .L148:
- 1841 0028 1346 mov r3, r2
- 1842 002a 0A46 mov r2, r1
- 1843 .LVL167:
- 1844 002c 0446 mov r4, r0
- 1357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1845 .loc 1 1357 0 is_stmt 0 discriminator 2
- 1846 002e 0121 movs r1, #1
- 1847 .LVL168:
- 1848 0030 80F83810 strb r1, [r0, #56]
- 1359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferSize = Size;
- 1849 .loc 1 1359 0 is_stmt 1 discriminator 2
- 1850 0034 8262 str r2, [r0, #40]
- 1360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1851 .loc 1 1360 0 discriminator 2
- 1852 0036 8385 strh r3, [r0, #44] @ movhi
- 1362:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_BUSY_RX;
- 1853 .loc 1 1362 0 discriminator 2
- 1854 0038 0025 movs r5, #0
- 1855 003a C563 str r5, [r0, #60]
- 1363:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1856 .loc 1 1363 0 discriminator 2
- 1857 003c 2221 movs r1, #34
- 1858 003e 80F83A10 strb r1, [r0, #58]
- 1366:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1859 .loc 1 1366 0 discriminator 2
- 1860 0042 416B ldr r1, [r0, #52]
- ARM GAS /tmp/ccD7nRW1.s page 92
- 1861 0044 1548 ldr r0, .L149
- 1862 .LVL169:
- 1863 0046 C863 str r0, [r1, #60]
- 1369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1864 .loc 1 1369 0 discriminator 2
- 1865 0048 616B ldr r1, [r4, #52]
- 1866 004a 1548 ldr r0, .L149+4
- 1867 004c 0864 str r0, [r1, #64]
- 1372:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1868 .loc 1 1372 0 discriminator 2
- 1869 004e 616B ldr r1, [r4, #52]
- 1870 0050 1448 ldr r0, .L149+8
- 1871 0052 C864 str r0, [r1, #76]
- 1375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1872 .loc 1 1375 0 discriminator 2
- 1873 0054 616B ldr r1, [r4, #52]
- 1874 0056 0D65 str r5, [r1, #80]
- 1875 .LVL170:
- 1379:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1876 .loc 1 1379 0 discriminator 2
- 1877 0058 2168 ldr r1, [r4]
- 1878 005a 0431 adds r1, r1, #4
- 1879 005c 606B ldr r0, [r4, #52]
- 1880 005e FFF7FEFF bl HAL_DMA_Start_IT
- 1881 .LVL171:
- 1882 .LBB2:
- 1382:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1883 .loc 1 1382 0 discriminator 2
- 1884 0062 0195 str r5, [sp, #4]
- 1885 0064 2368 ldr r3, [r4]
- 1886 0066 1A68 ldr r2, [r3]
- 1887 0068 0192 str r2, [sp, #4]
- 1888 006a 5A68 ldr r2, [r3, #4]
- 1889 006c 0192 str r2, [sp, #4]
- 1890 006e 019A ldr r2, [sp, #4]
- 1891 .LBE2:
- 1385:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1892 .loc 1 1385 0 discriminator 2
- 1893 0070 84F83850 strb r5, [r4, #56]
- 1388:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1894 .loc 1 1388 0 discriminator 2
- 1895 0074 DA68 ldr r2, [r3, #12]
- 1896 0076 42F48072 orr r2, r2, #256
- 1897 007a DA60 str r2, [r3, #12]
- 1391:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1898 .loc 1 1391 0 discriminator 2
- 1899 007c 2268 ldr r2, [r4]
- 1900 007e 5369 ldr r3, [r2, #20]
- 1901 0080 43F00103 orr r3, r3, #1
- 1902 0084 5361 str r3, [r2, #20]
- 1395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1903 .loc 1 1395 0 discriminator 2
- 1904 0086 2268 ldr r2, [r4]
- 1905 0088 5369 ldr r3, [r2, #20]
- 1906 008a 43F04003 orr r3, r3, #64
- 1907 008e 5361 str r3, [r2, #20]
- 1397:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- ARM GAS /tmp/ccD7nRW1.s page 93
- 1908 .loc 1 1397 0 discriminator 2
- 1909 0090 2846 mov r0, r5
- 1910 0092 BDE7 b .L141
- 1911 .LVL172:
- 1912 .L143:
- 1353:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1913 .loc 1 1353 0
- 1914 0094 0120 movs r0, #1
- 1915 .LVL173:
- 1916 0096 BBE7 b .L141
- 1917 .LVL174:
- 1918 .L144:
- 1919 0098 0120 movs r0, #1
- 1920 .LVL175:
- 1921 009a B9E7 b .L141
- 1922 .L150:
- 1923 .align 2
- 1924 .L149:
- 1925 009c 00000000 .word UART_DMAReceiveCplt
- 1926 00a0 00000000 .word UART_DMARxHalfCplt
- 1927 00a4 00000000 .word UART_DMAError
- 1928 .cfi_endproc
- 1929 .LFE142:
- 1931 .section .text.HAL_UART_DMAPause,"ax",%progbits
- 1932 .align 1
- 1933 .global HAL_UART_DMAPause
- 1934 .syntax unified
- 1935 .thumb
- 1936 .thumb_func
- 1937 .fpu fpv4-sp-d16
- 1939 HAL_UART_DMAPause:
- 1940 .LFB143:
- 1412:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 1941 .loc 1 1412 0
- 1942 .cfi_startproc
- 1943 @ args = 0, pretend = 0, frame = 0
- 1944 @ frame_needed = 0, uses_anonymous_args = 0
- 1945 @ link register save eliminated.
- 1946 .LVL176:
- 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1947 .loc 1 1416 0
- 1948 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 1949 0004 012B cmp r3, #1
- 1950 0006 31D0 beq .L155
- 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1951 .loc 1 1416 0 is_stmt 0 discriminator 2
- 1952 0008 0123 movs r3, #1
- 1953 000a 80F83830 strb r3, [r0, #56]
- 1418:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 1954 .loc 1 1418 0 is_stmt 1 discriminator 2
- 1955 000e 0168 ldr r1, [r0]
- 1956 0010 4A69 ldr r2, [r1, #20]
- 1957 0012 02F08002 and r2, r2, #128
- 1958 .LVL177:
- 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1959 .loc 1 1419 0 discriminator 2
- 1960 0016 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- ARM GAS /tmp/ccD7nRW1.s page 94
- 1961 001a DBB2 uxtb r3, r3
- 1962 001c 212B cmp r3, #33
- 1963 001e 0DD0 beq .L156
- 1964 .L153:
- 1425:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- 1965 .loc 1 1425 0
- 1966 0020 0168 ldr r1, [r0]
- 1967 0022 4A69 ldr r2, [r1, #20]
- 1968 .LVL178:
- 1969 0024 02F04002 and r2, r2, #64
- 1970 .LVL179:
- 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1971 .loc 1 1426 0
- 1972 0028 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
- 1973 002c DBB2 uxtb r3, r3
- 1974 002e 222B cmp r3, #34
- 1975 0030 0BD0 beq .L157
- 1976 .LVL180:
- 1977 .L154:
- 1437:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 1978 .loc 1 1437 0
- 1979 0032 0023 movs r3, #0
- 1980 0034 80F83830 strb r3, [r0, #56]
- 1439:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1981 .loc 1 1439 0
- 1982 0038 1846 mov r0, r3
- 1983 .LVL181:
- 1984 003a 7047 bx lr
- 1985 .LVL182:
- 1986 .L156:
- 1419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1987 .loc 1 1419 0 discriminator 1
- 1988 003c 002A cmp r2, #0
- 1989 003e EFD0 beq .L153
- 1422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 1990 .loc 1 1422 0
- 1991 0040 4B69 ldr r3, [r1, #20]
- 1992 0042 23F08003 bic r3, r3, #128
- 1993 0046 4B61 str r3, [r1, #20]
- 1994 0048 EAE7 b .L153
- 1995 .L157:
- 1426:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 1996 .loc 1 1426 0 discriminator 1
- 1997 004a 002A cmp r2, #0
- 1998 004c F1D0 beq .L154
- 1429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 1999 .loc 1 1429 0
- 2000 004e CB68 ldr r3, [r1, #12]
- 2001 0050 23F48073 bic r3, r3, #256
- 2002 0054 CB60 str r3, [r1, #12]
- 1430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2003 .loc 1 1430 0
- 2004 0056 0268 ldr r2, [r0]
- 2005 .LVL183:
- 2006 0058 5369 ldr r3, [r2, #20]
- 2007 005a 23F00103 bic r3, r3, #1
- 2008 005e 5361 str r3, [r2, #20]
- ARM GAS /tmp/ccD7nRW1.s page 95
- 1433:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2009 .loc 1 1433 0
- 2010 0060 0268 ldr r2, [r0]
- 2011 0062 5369 ldr r3, [r2, #20]
- 2012 0064 23F04003 bic r3, r3, #64
- 2013 0068 5361 str r3, [r2, #20]
- 2014 006a E2E7 b .L154
- 2015 .LVL184:
- 2016 .L155:
- 1416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2017 .loc 1 1416 0
- 2018 006c 0220 movs r0, #2
- 2019 .LVL185:
- 1440:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2020 .loc 1 1440 0
- 2021 006e 7047 bx lr
- 2022 .cfi_endproc
- 2023 .LFE143:
- 2025 .section .text.HAL_UART_DMAResume,"ax",%progbits
- 2026 .align 1
- 2027 .global HAL_UART_DMAResume
- 2028 .syntax unified
- 2029 .thumb
- 2030 .thumb_func
- 2031 .fpu fpv4-sp-d16
- 2033 HAL_UART_DMAResume:
- 2034 .LFB144:
- 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2035 .loc 1 1449 0
- 2036 .cfi_startproc
- 2037 @ args = 0, pretend = 0, frame = 8
- 2038 @ frame_needed = 0, uses_anonymous_args = 0
- 2039 @ link register save eliminated.
- 2040 .LVL186:
- 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2041 .loc 1 1451 0
- 2042 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 2043 0004 012B cmp r3, #1
- 2044 0006 34D0 beq .L162
- 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2045 .loc 1 1451 0 is_stmt 0 discriminator 2
- 2046 0008 0123 movs r3, #1
- 2047 000a 80F83830 strb r3, [r0, #56]
- 1453:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2048 .loc 1 1453 0 is_stmt 1 discriminator 2
- 2049 000e 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 2050 0012 DBB2 uxtb r3, r3
- 2051 0014 212B cmp r3, #33
- 2052 0016 09D0 beq .L168
- 2053 .L160:
- 1459:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2054 .loc 1 1459 0
- 2055 0018 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
- 2056 001c DBB2 uxtb r3, r3
- 2057 001e 222B cmp r3, #34
- 2058 0020 0AD0 beq .L169
- 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 96
- 2059 .loc 1 1473 0
- 2060 0022 0023 movs r3, #0
- 2061 0024 80F83830 strb r3, [r0, #56]
- 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2062 .loc 1 1475 0
- 2063 0028 1846 mov r0, r3
- 2064 .LVL187:
- 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2065 .loc 1 1476 0
- 2066 002a 7047 bx lr
- 2067 .LVL188:
- 2068 .L168:
- 1456:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2069 .loc 1 1456 0
- 2070 002c 0268 ldr r2, [r0]
- 2071 002e 5369 ldr r3, [r2, #20]
- 2072 0030 43F08003 orr r3, r3, #128
- 2073 0034 5361 str r3, [r2, #20]
- 2074 0036 EFE7 b .L160
- 2075 .L169:
- 1449:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Process Locked */
- 2076 .loc 1 1449 0
- 2077 0038 82B0 sub sp, sp, #8
- 2078 .LCFI25:
- 2079 .cfi_def_cfa_offset 8
- 2080 .LBB3:
- 1462:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2081 .loc 1 1462 0
- 2082 003a 0023 movs r3, #0
- 2083 003c 0193 str r3, [sp, #4]
- 2084 003e 0368 ldr r3, [r0]
- 2085 0040 1A68 ldr r2, [r3]
- 2086 0042 0192 str r2, [sp, #4]
- 2087 0044 5A68 ldr r2, [r3, #4]
- 2088 0046 0192 str r2, [sp, #4]
- 2089 0048 019A ldr r2, [sp, #4]
- 2090 .LBE3:
- 1465:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** SET_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2091 .loc 1 1465 0
- 2092 004a DA68 ldr r2, [r3, #12]
- 2093 004c 42F48072 orr r2, r2, #256
- 2094 0050 DA60 str r2, [r3, #12]
- 1466:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2095 .loc 1 1466 0
- 2096 0052 0268 ldr r2, [r0]
- 2097 0054 5369 ldr r3, [r2, #20]
- 2098 0056 43F00103 orr r3, r3, #1
- 2099 005a 5361 str r3, [r2, #20]
- 1469:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2100 .loc 1 1469 0
- 2101 005c 0268 ldr r2, [r0]
- 2102 005e 5369 ldr r3, [r2, #20]
- 2103 0060 43F04003 orr r3, r3, #64
- 2104 0064 5361 str r3, [r2, #20]
- 1473:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2105 .loc 1 1473 0
- 2106 0066 0023 movs r3, #0
- ARM GAS /tmp/ccD7nRW1.s page 97
- 2107 0068 80F83830 strb r3, [r0, #56]
- 1475:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2108 .loc 1 1475 0
- 2109 006c 1846 mov r0, r3
- 2110 .LVL189:
- 1476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2111 .loc 1 1476 0
- 2112 006e 02B0 add sp, sp, #8
- 2113 .LCFI26:
- 2114 .cfi_def_cfa_offset 0
- 2115 @ sp needed
- 2116 0070 7047 bx lr
- 2117 .LVL190:
- 2118 .L162:
- 1451:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2119 .loc 1 1451 0
- 2120 0072 0220 movs r0, #2
- 2121 .LVL191:
- 2122 0074 7047 bx lr
- 2123 .cfi_endproc
- 2124 .LFE144:
- 2126 .section .text.HAL_UART_DMAStop,"ax",%progbits
- 2127 .align 1
- 2128 .global HAL_UART_DMAStop
- 2129 .syntax unified
- 2130 .thumb
- 2131 .thumb_func
- 2132 .fpu fpv4-sp-d16
- 2134 HAL_UART_DMAStop:
- 2135 .LFB145:
- 1485:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 2136 .loc 1 1485 0
- 2137 .cfi_startproc
- 2138 @ args = 0, pretend = 0, frame = 0
- 2139 @ frame_needed = 0, uses_anonymous_args = 0
- 2140 .LVL192:
- 2141 0000 10B5 push {r4, lr}
- 2142 .LCFI27:
- 2143 .cfi_def_cfa_offset 8
- 2144 .cfi_offset 4, -8
- 2145 .cfi_offset 14, -4
- 2146 0002 0446 mov r4, r0
- 2147 .LVL193:
- 1494:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 2148 .loc 1 1494 0
- 2149 0004 0168 ldr r1, [r0]
- 2150 0006 4A69 ldr r2, [r1, #20]
- 2151 .LVL194:
- 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2152 .loc 1 1495 0
- 2153 0008 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 2154 000c DBB2 uxtb r3, r3
- 2155 000e 212B cmp r3, #33
- 2156 0010 0AD0 beq .L176
- 2157 .LVL195:
- 2158 .L171:
- 1508:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- ARM GAS /tmp/ccD7nRW1.s page 98
- 2159 .loc 1 1508 0
- 2160 0012 2168 ldr r1, [r4]
- 2161 0014 4A69 ldr r2, [r1, #20]
- 2162 0016 02F04002 and r2, r2, #64
- 2163 .LVL196:
- 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2164 .loc 1 1509 0
- 2165 001a 94F83A30 ldrb r3, [r4, #58] @ zero_extendqisi2
- 2166 001e DBB2 uxtb r3, r3
- 2167 0020 222B cmp r3, #34
- 2168 0022 11D0 beq .L177
- 2169 .LVL197:
- 2170 .L173:
- 1522:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2171 .loc 1 1522 0
- 2172 0024 0020 movs r0, #0
- 2173 0026 10BD pop {r4, pc}
- 2174 .LVL198:
- 2175 .L176:
- 2176 0028 02F08002 and r2, r2, #128
- 2177 .LVL199:
- 1495:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2178 .loc 1 1495 0 discriminator 1
- 2179 002c 002A cmp r2, #0
- 2180 002e F0D0 beq .L171
- 1497:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2181 .loc 1 1497 0
- 2182 0030 4B69 ldr r3, [r1, #20]
- 2183 0032 23F08003 bic r3, r3, #128
- 2184 0036 4B61 str r3, [r1, #20]
- 1500:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2185 .loc 1 1500 0
- 2186 0038 006B ldr r0, [r0, #48]
- 2187 .LVL200:
- 2188 003a 08B1 cbz r0, .L172
- 1502:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2189 .loc 1 1502 0
- 2190 003c FFF7FEFF bl HAL_DMA_Abort
- 2191 .LVL201:
- 2192 .L172:
- 1504:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2193 .loc 1 1504 0
- 2194 0040 2046 mov r0, r4
- 2195 0042 FFF7FEFF bl UART_EndTxTransfer
- 2196 .LVL202:
- 2197 0046 E4E7 b .L171
- 2198 .LVL203:
- 2199 .L177:
- 1509:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2200 .loc 1 1509 0 discriminator 1
- 2201 0048 002A cmp r2, #0
- 2202 004a EBD0 beq .L173
- 1511:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2203 .loc 1 1511 0
- 2204 004c 4B69 ldr r3, [r1, #20]
- 2205 004e 23F04003 bic r3, r3, #64
- 2206 0052 4B61 str r3, [r1, #20]
- ARM GAS /tmp/ccD7nRW1.s page 99
- 1514:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2207 .loc 1 1514 0
- 2208 0054 606B ldr r0, [r4, #52]
- 2209 0056 08B1 cbz r0, .L174
- 1516:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2210 .loc 1 1516 0
- 2211 0058 FFF7FEFF bl HAL_DMA_Abort
- 2212 .LVL204:
- 2213 .L174:
- 1518:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2214 .loc 1 1518 0
- 2215 005c 2046 mov r0, r4
- 2216 005e FFF7FEFF bl UART_EndRxTransfer
- 2217 .LVL205:
- 2218 0062 DFE7 b .L173
- 2219 .cfi_endproc
- 2220 .LFE145:
- 2222 .section .text.HAL_UART_Abort,"ax",%progbits
- 2223 .align 1
- 2224 .global HAL_UART_Abort
- 2225 .syntax unified
- 2226 .thumb
- 2227 .thumb_func
- 2228 .fpu fpv4-sp-d16
- 2230 HAL_UART_Abort:
- 2231 .LFB146:
- 1537:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE, TCIE, RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 2232 .loc 1 1537 0
- 2233 .cfi_startproc
- 2234 @ args = 0, pretend = 0, frame = 0
- 2235 @ frame_needed = 0, uses_anonymous_args = 0
- 2236 .LVL206:
- 2237 0000 10B5 push {r4, lr}
- 2238 .LCFI28:
- 2239 .cfi_def_cfa_offset 8
- 2240 .cfi_offset 4, -8
- 2241 .cfi_offset 14, -4
- 2242 0002 0446 mov r4, r0
- 1539:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2243 .loc 1 1539 0
- 2244 0004 0268 ldr r2, [r0]
- 2245 0006 D368 ldr r3, [r2, #12]
- 2246 0008 23F4F073 bic r3, r3, #480
- 2247 000c D360 str r3, [r2, #12]
- 1540:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2248 .loc 1 1540 0
- 2249 000e 0268 ldr r2, [r0]
- 2250 0010 5369 ldr r3, [r2, #20]
- 2251 0012 23F00103 bic r3, r3, #1
- 2252 0016 5361 str r3, [r2, #20]
- 1543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2253 .loc 1 1543 0
- 2254 0018 0368 ldr r3, [r0]
- 2255 001a 5A69 ldr r2, [r3, #20]
- 2256 001c 12F0800F tst r2, #128
- 2257 0020 0BD0 beq .L179
- 1545:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 100
- 2258 .loc 1 1545 0
- 2259 0022 5A69 ldr r2, [r3, #20]
- 2260 0024 22F08002 bic r2, r2, #128
- 2261 0028 5A61 str r2, [r3, #20]
- 1548:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2262 .loc 1 1548 0
- 2263 002a 036B ldr r3, [r0, #48]
- 2264 002c 2BB1 cbz r3, .L179
- 1552:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2265 .loc 1 1552 0
- 2266 002e 0022 movs r2, #0
- 2267 0030 1A65 str r2, [r3, #80]
- 1554:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2268 .loc 1 1554 0
- 2269 0032 006B ldr r0, [r0, #48]
- 2270 .LVL207:
- 2271 0034 FFF7FEFF bl HAL_DMA_Abort
- 2272 .LVL208:
- 2273 0038 D0B9 cbnz r0, .L183
- 2274 .L179:
- 1568:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2275 .loc 1 1568 0
- 2276 003a 2368 ldr r3, [r4]
- 2277 003c 5A69 ldr r2, [r3, #20]
- 2278 003e 12F0400F tst r2, #64
- 2279 0042 0BD0 beq .L181
- 1570:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2280 .loc 1 1570 0
- 2281 0044 5A69 ldr r2, [r3, #20]
- 2282 0046 22F04002 bic r2, r2, #64
- 2283 004a 5A61 str r2, [r3, #20]
- 1573:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2284 .loc 1 1573 0
- 2285 004c 636B ldr r3, [r4, #52]
- 2286 004e 2BB1 cbz r3, .L181
- 1577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2287 .loc 1 1577 0
- 2288 0050 0022 movs r2, #0
- 2289 0052 1A65 str r2, [r3, #80]
- 1579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2290 .loc 1 1579 0
- 2291 0054 606B ldr r0, [r4, #52]
- 2292 0056 FFF7FEFF bl HAL_DMA_Abort
- 2293 .LVL209:
- 2294 005a 90B9 cbnz r0, .L184
- 2295 .L181:
- 1593:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 2296 .loc 1 1593 0
- 2297 005c 0020 movs r0, #0
- 2298 005e E084 strh r0, [r4, #38] @ movhi
- 1594:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2299 .loc 1 1594 0
- 2300 0060 E085 strh r0, [r4, #46] @ movhi
- 1597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2301 .loc 1 1597 0
- 2302 0062 E063 str r0, [r4, #60]
- 1600:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->gState = HAL_UART_STATE_READY;
- ARM GAS /tmp/ccD7nRW1.s page 101
- 2303 .loc 1 1600 0
- 2304 0064 2023 movs r3, #32
- 2305 0066 84F83A30 strb r3, [r4, #58]
- 1601:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2306 .loc 1 1601 0
- 2307 006a 84F83930 strb r3, [r4, #57]
- 1604:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2308 .loc 1 1604 0
- 2309 006e 10BD pop {r4, pc}
- 2310 .LVL210:
- 2311 .L183:
- 1556:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2312 .loc 1 1556 0
- 2313 0070 206B ldr r0, [r4, #48]
- 2314 0072 FFF7FEFF bl HAL_DMA_GetError
- 2315 .LVL211:
- 2316 0076 2028 cmp r0, #32
- 2317 0078 DFD1 bne .L179
- 1559:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2318 .loc 1 1559 0
- 2319 007a 1023 movs r3, #16
- 2320 007c E363 str r3, [r4, #60]
- 1561:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2321 .loc 1 1561 0
- 2322 007e 0320 movs r0, #3
- 2323 0080 10BD pop {r4, pc}
- 2324 .LVL212:
- 2325 .L184:
- 1581:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2326 .loc 1 1581 0
- 2327 0082 606B ldr r0, [r4, #52]
- 2328 0084 FFF7FEFF bl HAL_DMA_GetError
- 2329 .LVL213:
- 2330 0088 2028 cmp r0, #32
- 2331 008a E7D1 bne .L181
- 1584:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2332 .loc 1 1584 0
- 2333 008c 1023 movs r3, #16
- 2334 008e E363 str r3, [r4, #60]
- 1586:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2335 .loc 1 1586 0
- 2336 0090 0320 movs r0, #3
- 2337 0092 10BD pop {r4, pc}
- 2338 .cfi_endproc
- 2339 .LFE146:
- 2341 .section .text.HAL_UART_AbortTransmit,"ax",%progbits
- 2342 .align 1
- 2343 .global HAL_UART_AbortTransmit
- 2344 .syntax unified
- 2345 .thumb
- 2346 .thumb_func
- 2347 .fpu fpv4-sp-d16
- 2349 HAL_UART_AbortTransmit:
- 2350 .LFB147:
- 1619:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 2351 .loc 1 1619 0
- 2352 .cfi_startproc
- ARM GAS /tmp/ccD7nRW1.s page 102
- 2353 @ args = 0, pretend = 0, frame = 0
- 2354 @ frame_needed = 0, uses_anonymous_args = 0
- 2355 .LVL214:
- 2356 0000 10B5 push {r4, lr}
- 2357 .LCFI29:
- 2358 .cfi_def_cfa_offset 8
- 2359 .cfi_offset 4, -8
- 2360 .cfi_offset 14, -4
- 2361 0002 0446 mov r4, r0
- 1621:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2362 .loc 1 1621 0
- 2363 0004 0268 ldr r2, [r0]
- 2364 0006 D368 ldr r3, [r2, #12]
- 2365 0008 23F0C003 bic r3, r3, #192
- 2366 000c D360 str r3, [r2, #12]
- 1624:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2367 .loc 1 1624 0
- 2368 000e 0368 ldr r3, [r0]
- 2369 0010 5A69 ldr r2, [r3, #20]
- 2370 0012 12F0800F tst r2, #128
- 2371 0016 0BD0 beq .L186
- 1626:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2372 .loc 1 1626 0
- 2373 0018 5A69 ldr r2, [r3, #20]
- 2374 001a 22F08002 bic r2, r2, #128
- 2375 001e 5A61 str r2, [r3, #20]
- 1629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2376 .loc 1 1629 0
- 2377 0020 036B ldr r3, [r0, #48]
- 2378 0022 2BB1 cbz r3, .L186
- 1633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2379 .loc 1 1633 0
- 2380 0024 0022 movs r2, #0
- 2381 0026 1A65 str r2, [r3, #80]
- 1635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2382 .loc 1 1635 0
- 2383 0028 006B ldr r0, [r0, #48]
- 2384 .LVL215:
- 2385 002a FFF7FEFF bl HAL_DMA_Abort
- 2386 .LVL216:
- 2387 002e 28B9 cbnz r0, .L189
- 2388 .L186:
- 1649:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2389 .loc 1 1649 0
- 2390 0030 0020 movs r0, #0
- 2391 0032 E084 strh r0, [r4, #38] @ movhi
- 1652:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2392 .loc 1 1652 0
- 2393 0034 2023 movs r3, #32
- 2394 0036 84F83930 strb r3, [r4, #57]
- 1655:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2395 .loc 1 1655 0
- 2396 003a 10BD pop {r4, pc}
- 2397 .LVL217:
- 2398 .L189:
- 1637:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2399 .loc 1 1637 0
- ARM GAS /tmp/ccD7nRW1.s page 103
- 2400 003c 206B ldr r0, [r4, #48]
- 2401 003e FFF7FEFF bl HAL_DMA_GetError
- 2402 .LVL218:
- 2403 0042 2028 cmp r0, #32
- 2404 0044 F4D1 bne .L186
- 1640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2405 .loc 1 1640 0
- 2406 0046 1023 movs r3, #16
- 2407 0048 E363 str r3, [r4, #60]
- 1642:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2408 .loc 1 1642 0
- 2409 004a 0320 movs r0, #3
- 2410 004c 10BD pop {r4, pc}
- 2411 .cfi_endproc
- 2412 .LFE147:
- 2414 .section .text.HAL_UART_AbortReceive,"ax",%progbits
- 2415 .align 1
- 2416 .global HAL_UART_AbortReceive
- 2417 .syntax unified
- 2418 .thumb
- 2419 .thumb_func
- 2420 .fpu fpv4-sp-d16
- 2422 HAL_UART_AbortReceive:
- 2423 .LFB148:
- 1670:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 2424 .loc 1 1670 0
- 2425 .cfi_startproc
- 2426 @ args = 0, pretend = 0, frame = 0
- 2427 @ frame_needed = 0, uses_anonymous_args = 0
- 2428 .LVL219:
- 2429 0000 10B5 push {r4, lr}
- 2430 .LCFI30:
- 2431 .cfi_def_cfa_offset 8
- 2432 .cfi_offset 4, -8
- 2433 .cfi_offset 14, -4
- 2434 0002 0446 mov r4, r0
- 1672:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2435 .loc 1 1672 0
- 2436 0004 0268 ldr r2, [r0]
- 2437 0006 D368 ldr r3, [r2, #12]
- 2438 0008 23F49073 bic r3, r3, #288
- 2439 000c D360 str r3, [r2, #12]
- 1673:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2440 .loc 1 1673 0
- 2441 000e 0268 ldr r2, [r0]
- 2442 0010 5369 ldr r3, [r2, #20]
- 2443 0012 23F00103 bic r3, r3, #1
- 2444 0016 5361 str r3, [r2, #20]
- 1676:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2445 .loc 1 1676 0
- 2446 0018 0368 ldr r3, [r0]
- 2447 001a 5A69 ldr r2, [r3, #20]
- 2448 001c 12F0400F tst r2, #64
- 2449 0020 0BD0 beq .L191
- 1678:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2450 .loc 1 1678 0
- 2451 0022 5A69 ldr r2, [r3, #20]
- ARM GAS /tmp/ccD7nRW1.s page 104
- 2452 0024 22F04002 bic r2, r2, #64
- 2453 0028 5A61 str r2, [r3, #20]
- 1681:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2454 .loc 1 1681 0
- 2455 002a 436B ldr r3, [r0, #52]
- 2456 002c 2BB1 cbz r3, .L191
- 1685:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2457 .loc 1 1685 0
- 2458 002e 0022 movs r2, #0
- 2459 0030 1A65 str r2, [r3, #80]
- 1687:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2460 .loc 1 1687 0
- 2461 0032 406B ldr r0, [r0, #52]
- 2462 .LVL220:
- 2463 0034 FFF7FEFF bl HAL_DMA_Abort
- 2464 .LVL221:
- 2465 0038 28B9 cbnz r0, .L194
- 2466 .L191:
- 1701:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2467 .loc 1 1701 0
- 2468 003a 0020 movs r0, #0
- 2469 003c E085 strh r0, [r4, #46] @ movhi
- 1704:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2470 .loc 1 1704 0
- 2471 003e 2023 movs r3, #32
- 2472 0040 84F83A30 strb r3, [r4, #58]
- 1707:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2473 .loc 1 1707 0
- 2474 0044 10BD pop {r4, pc}
- 2475 .LVL222:
- 2476 .L194:
- 1689:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2477 .loc 1 1689 0
- 2478 0046 606B ldr r0, [r4, #52]
- 2479 0048 FFF7FEFF bl HAL_DMA_GetError
- 2480 .LVL223:
- 2481 004c 2028 cmp r0, #32
- 2482 004e F4D1 bne .L191
- 1692:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2483 .loc 1 1692 0
- 2484 0050 1023 movs r3, #16
- 2485 0052 E363 str r3, [r4, #60]
- 1694:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2486 .loc 1 1694 0
- 2487 0054 0320 movs r0, #3
- 2488 0056 10BD pop {r4, pc}
- 2489 .cfi_endproc
- 2490 .LFE148:
- 2492 .section .text.HAL_UART_TxCpltCallback,"ax",%progbits
- 2493 .align 1
- 2494 .weak HAL_UART_TxCpltCallback
- 2495 .syntax unified
- 2496 .thumb
- 2497 .thumb_func
- 2498 .fpu fpv4-sp-d16
- 2500 HAL_UART_TxCpltCallback:
- 2501 .LFB153:
- ARM GAS /tmp/ccD7nRW1.s page 105
- 2145:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2502 .loc 1 2145 0
- 2503 .cfi_startproc
- 2504 @ args = 0, pretend = 0, frame = 0
- 2505 @ frame_needed = 0, uses_anonymous_args = 0
- 2506 @ link register save eliminated.
- 2507 .LVL224:
- 2508 0000 7047 bx lr
- 2509 .cfi_endproc
- 2510 .LFE153:
- 2512 .section .text.UART_DMATransmitCplt,"ax",%progbits
- 2513 .align 1
- 2514 .syntax unified
- 2515 .thumb
- 2516 .thumb_func
- 2517 .fpu fpv4-sp-d16
- 2519 UART_DMATransmitCplt:
- 2520 .LFB168:
- 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2521 .loc 1 2520 0
- 2522 .cfi_startproc
- 2523 @ args = 0, pretend = 0, frame = 0
- 2524 @ frame_needed = 0, uses_anonymous_args = 0
- 2525 .LVL225:
- 2520:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2526 .loc 1 2520 0
- 2527 0000 08B5 push {r3, lr}
- 2528 .LCFI31:
- 2529 .cfi_def_cfa_offset 8
- 2530 .cfi_offset 3, -8
- 2531 .cfi_offset 14, -4
- 2521:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
- 2532 .loc 1 2521 0
- 2533 0002 836B ldr r3, [r0, #56]
- 2534 .LVL226:
- 2523:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2535 .loc 1 2523 0
- 2536 0004 0268 ldr r2, [r0]
- 2537 0006 1268 ldr r2, [r2]
- 2538 0008 12F4807F tst r2, #256
- 2539 000c 0CD1 bne .L197
- 2525:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2540 .loc 1 2525 0
- 2541 000e 0022 movs r2, #0
- 2542 0010 DA84 strh r2, [r3, #38] @ movhi
- 2529:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2543 .loc 1 2529 0
- 2544 0012 1968 ldr r1, [r3]
- 2545 0014 4A69 ldr r2, [r1, #20]
- 2546 0016 22F08002 bic r2, r2, #128
- 2547 001a 4A61 str r2, [r1, #20]
- 2532:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2548 .loc 1 2532 0
- 2549 001c 1A68 ldr r2, [r3]
- 2550 001e D368 ldr r3, [r2, #12]
- 2551 .LVL227:
- 2552 0020 43F04003 orr r3, r3, #64
- ARM GAS /tmp/ccD7nRW1.s page 106
- 2553 0024 D360 str r3, [r2, #12]
- 2554 0026 08BD pop {r3, pc}
- 2555 .LVL228:
- 2556 .L197:
- 2543:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2557 .loc 1 2543 0
- 2558 0028 1846 mov r0, r3
- 2559 .LVL229:
- 2560 002a FFF7FEFF bl HAL_UART_TxCpltCallback
- 2561 .LVL230:
- 2562 002e 08BD pop {r3, pc}
- 2563 .cfi_endproc
- 2564 .LFE168:
- 2566 .section .text.UART_EndTransmit_IT,"ax",%progbits
- 2567 .align 1
- 2568 .syntax unified
- 2569 .thumb
- 2570 .thumb_func
- 2571 .fpu fpv4-sp-d16
- 2573 UART_EndTransmit_IT:
- 2574 .LFB182:
- 2945:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable the UART Transmit Complete Interrupt */
- 2575 .loc 1 2945 0
- 2576 .cfi_startproc
- 2577 @ args = 0, pretend = 0, frame = 0
- 2578 @ frame_needed = 0, uses_anonymous_args = 0
- 2579 .LVL231:
- 2580 0000 08B5 push {r3, lr}
- 2581 .LCFI32:
- 2582 .cfi_def_cfa_offset 8
- 2583 .cfi_offset 3, -8
- 2584 .cfi_offset 14, -4
- 2947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2585 .loc 1 2947 0
- 2586 0002 0168 ldr r1, [r0]
- 2587 0004 CB68 ldr r3, [r1, #12]
- 2588 0006 23F04003 bic r3, r3, #64
- 2589 000a CB60 str r3, [r1, #12]
- 2950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2590 .loc 1 2950 0
- 2591 000c 2023 movs r3, #32
- 2592 000e 80F83930 strb r3, [r0, #57]
- 2957:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2593 .loc 1 2957 0
- 2594 0012 FFF7FEFF bl HAL_UART_TxCpltCallback
- 2595 .LVL232:
- 2961:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2596 .loc 1 2961 0
- 2597 0016 0020 movs r0, #0
- 2598 0018 08BD pop {r3, pc}
- 2599 .cfi_endproc
- 2600 .LFE182:
- 2602 .section .text.HAL_UART_TxHalfCpltCallback,"ax",%progbits
- 2603 .align 1
- 2604 .weak HAL_UART_TxHalfCpltCallback
- 2605 .syntax unified
- 2606 .thumb
- ARM GAS /tmp/ccD7nRW1.s page 107
- 2607 .thumb_func
- 2608 .fpu fpv4-sp-d16
- 2610 HAL_UART_TxHalfCpltCallback:
- 2611 .LFB154:
- 2160:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2612 .loc 1 2160 0
- 2613 .cfi_startproc
- 2614 @ args = 0, pretend = 0, frame = 0
- 2615 @ frame_needed = 0, uses_anonymous_args = 0
- 2616 @ link register save eliminated.
- 2617 .LVL233:
- 2618 0000 7047 bx lr
- 2619 .cfi_endproc
- 2620 .LFE154:
- 2622 .section .text.UART_DMATxHalfCplt,"ax",%progbits
- 2623 .align 1
- 2624 .syntax unified
- 2625 .thumb
- 2626 .thumb_func
- 2627 .fpu fpv4-sp-d16
- 2629 UART_DMATxHalfCplt:
- 2630 .LFB169:
- 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2631 .loc 1 2555 0
- 2632 .cfi_startproc
- 2633 @ args = 0, pretend = 0, frame = 0
- 2634 @ frame_needed = 0, uses_anonymous_args = 0
- 2635 .LVL234:
- 2555:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2636 .loc 1 2555 0
- 2637 0000 08B5 push {r3, lr}
- 2638 .LCFI33:
- 2639 .cfi_def_cfa_offset 8
- 2640 .cfi_offset 3, -8
- 2641 .cfi_offset 14, -4
- 2642 .LVL235:
- 2563:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2643 .loc 1 2563 0
- 2644 0002 806B ldr r0, [r0, #56]
- 2645 .LVL236:
- 2646 0004 FFF7FEFF bl HAL_UART_TxHalfCpltCallback
- 2647 .LVL237:
- 2648 0008 08BD pop {r3, pc}
- 2649 .cfi_endproc
- 2650 .LFE169:
- 2652 .section .text.HAL_UART_RxCpltCallback,"ax",%progbits
- 2653 .align 1
- 2654 .weak HAL_UART_RxCpltCallback
- 2655 .syntax unified
- 2656 .thumb
- 2657 .thumb_func
- 2658 .fpu fpv4-sp-d16
- 2660 HAL_UART_RxCpltCallback:
- 2661 .LFB155:
- 2175:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2662 .loc 1 2175 0
- 2663 .cfi_startproc
- ARM GAS /tmp/ccD7nRW1.s page 108
- 2664 @ args = 0, pretend = 0, frame = 0
- 2665 @ frame_needed = 0, uses_anonymous_args = 0
- 2666 @ link register save eliminated.
- 2667 .LVL238:
- 2668 0000 7047 bx lr
- 2669 .cfi_endproc
- 2670 .LFE155:
- 2672 .section .text.UART_DMAReceiveCplt,"ax",%progbits
- 2673 .align 1
- 2674 .syntax unified
- 2675 .thumb
- 2676 .thumb_func
- 2677 .fpu fpv4-sp-d16
- 2679 UART_DMAReceiveCplt:
- 2680 .LFB170:
- 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2681 .loc 1 2574 0
- 2682 .cfi_startproc
- 2683 @ args = 0, pretend = 0, frame = 0
- 2684 @ frame_needed = 0, uses_anonymous_args = 0
- 2685 .LVL239:
- 2574:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2686 .loc 1 2574 0
- 2687 0000 08B5 push {r3, lr}
- 2688 .LCFI34:
- 2689 .cfi_def_cfa_offset 8
- 2690 .cfi_offset 3, -8
- 2691 .cfi_offset 14, -4
- 2575:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* DMA Normal mode*/
- 2692 .loc 1 2575 0
- 2693 0002 836B ldr r3, [r0, #56]
- 2694 .LVL240:
- 2577:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2695 .loc 1 2577 0
- 2696 0004 0268 ldr r2, [r0]
- 2697 0006 1268 ldr r2, [r2]
- 2698 0008 12F4807F tst r2, #256
- 2699 000c 13D1 bne .L207
- 2579:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2700 .loc 1 2579 0
- 2701 000e 0022 movs r2, #0
- 2702 0010 DA85 strh r2, [r3, #46] @ movhi
- 2582:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 2703 .loc 1 2582 0
- 2704 0012 1968 ldr r1, [r3]
- 2705 0014 CA68 ldr r2, [r1, #12]
- 2706 0016 22F48072 bic r2, r2, #256
- 2707 001a CA60 str r2, [r1, #12]
- 2583:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2708 .loc 1 2583 0
- 2709 001c 1968 ldr r1, [r3]
- 2710 001e 4A69 ldr r2, [r1, #20]
- 2711 0020 22F00102 bic r2, r2, #1
- 2712 0024 4A61 str r2, [r1, #20]
- 2587:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2713 .loc 1 2587 0
- 2714 0026 1968 ldr r1, [r3]
- ARM GAS /tmp/ccD7nRW1.s page 109
- 2715 0028 4A69 ldr r2, [r1, #20]
- 2716 002a 22F04002 bic r2, r2, #64
- 2717 002e 4A61 str r2, [r1, #20]
- 2590:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2718 .loc 1 2590 0
- 2719 0030 2022 movs r2, #32
- 2720 0032 83F83A20 strb r2, [r3, #58]
- 2721 .L207:
- 2597:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2722 .loc 1 2597 0
- 2723 0036 1846 mov r0, r3
- 2724 .LVL241:
- 2725 0038 FFF7FEFF bl HAL_UART_RxCpltCallback
- 2726 .LVL242:
- 2727 003c 08BD pop {r3, pc}
- 2728 .cfi_endproc
- 2729 .LFE170:
- 2731 .section .text.UART_Receive_IT,"ax",%progbits
- 2732 .align 1
- 2733 .syntax unified
- 2734 .thumb
- 2735 .thumb_func
- 2736 .fpu fpv4-sp-d16
- 2738 UART_Receive_IT:
- 2739 .LFB183:
- 2970:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint16_t *tmp;
- 2740 .loc 1 2970 0
- 2741 .cfi_startproc
- 2742 @ args = 0, pretend = 0, frame = 0
- 2743 @ frame_needed = 0, uses_anonymous_args = 0
- 2744 .LVL243:
- 2745 0000 08B5 push {r3, lr}
- 2746 .LCFI35:
- 2747 .cfi_def_cfa_offset 8
- 2748 .cfi_offset 3, -8
- 2749 .cfi_offset 14, -4
- 2974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2750 .loc 1 2974 0
- 2751 0002 90F83A30 ldrb r3, [r0, #58] @ zero_extendqisi2
- 2752 0006 DBB2 uxtb r3, r3
- 2753 0008 222B cmp r3, #34
- 2754 000a 01D0 beq .L218
- 3030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2755 .loc 1 3030 0
- 2756 000c 0220 movs r0, #2
- 2757 .LVL244:
- 2758 000e 08BD pop {r3, pc}
- 2759 .LVL245:
- 2760 .L218:
- 2976:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2761 .loc 1 2976 0
- 2762 0010 8368 ldr r3, [r0, #8]
- 2763 0012 B3F5805F cmp r3, #4096
- 2764 0016 0FD0 beq .L219
- 2992:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2765 .loc 1 2992 0
- 2766 0018 0369 ldr r3, [r0, #16]
- ARM GAS /tmp/ccD7nRW1.s page 110
- 2767 001a 0BBB cbnz r3, .L214
- 2994:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2768 .loc 1 2994 0
- 2769 001c 836A ldr r3, [r0, #40]
- 2770 001e 5A1C adds r2, r3, #1
- 2771 0020 8262 str r2, [r0, #40]
- 2772 0022 0268 ldr r2, [r0]
- 2773 0024 5268 ldr r2, [r2, #4]
- 2774 0026 1A70 strb r2, [r3]
- 2775 .L213:
- 3002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2776 .loc 1 3002 0
- 2777 0028 C38D ldrh r3, [r0, #46]
- 2778 002a 9BB2 uxth r3, r3
- 2779 002c 013B subs r3, r3, #1
- 2780 002e 9BB2 uxth r3, r3
- 2781 0030 C385 strh r3, [r0, #46] @ movhi
- 2782 0032 F3B1 cbz r3, .L220
- 3026:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2783 .loc 1 3026 0
- 2784 0034 0020 movs r0, #0
- 2785 .LVL246:
- 3032:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2786 .loc 1 3032 0
- 2787 0036 08BD pop {r3, pc}
- 2788 .LVL247:
- 2789 .L219:
- 2978:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (huart->Init.Parity == UART_PARITY_NONE)
- 2790 .loc 1 2978 0
- 2791 0038 826A ldr r2, [r0, #40]
- 2792 .LVL248:
- 2979:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2793 .loc 1 2979 0
- 2794 003a 0369 ldr r3, [r0, #16]
- 2795 003c 43B9 cbnz r3, .L212
- 2981:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 2U;
- 2796 .loc 1 2981 0
- 2797 003e 0368 ldr r3, [r0]
- 2798 0040 5B68 ldr r3, [r3, #4]
- 2799 0042 C3F30803 ubfx r3, r3, #0, #9
- 2800 0046 1380 strh r3, [r2] @ movhi
- 2982:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2801 .loc 1 2982 0
- 2802 0048 836A ldr r3, [r0, #40]
- 2803 004a 0233 adds r3, r3, #2
- 2804 004c 8362 str r3, [r0, #40]
- 2805 004e EBE7 b .L213
- 2806 .L212:
- 2986:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->pRxBuffPtr += 1U;
- 2807 .loc 1 2986 0
- 2808 0050 0368 ldr r3, [r0]
- 2809 0052 5B68 ldr r3, [r3, #4]
- 2810 0054 DBB2 uxtb r3, r3
- 2811 0056 1380 strh r3, [r2] @ movhi
- 2987:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2812 .loc 1 2987 0
- 2813 0058 836A ldr r3, [r0, #40]
- ARM GAS /tmp/ccD7nRW1.s page 111
- 2814 005a 0133 adds r3, r3, #1
- 2815 005c 8362 str r3, [r0, #40]
- 2816 005e E3E7 b .L213
- 2817 .LVL249:
- 2818 .L214:
- 2998:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2819 .loc 1 2998 0
- 2820 0060 826A ldr r2, [r0, #40]
- 2821 0062 531C adds r3, r2, #1
- 2822 0064 8362 str r3, [r0, #40]
- 2823 0066 0368 ldr r3, [r0]
- 2824 0068 5B68 ldr r3, [r3, #4]
- 2825 006a 03F07F03 and r3, r3, #127
- 2826 006e 1370 strb r3, [r2]
- 2827 0070 DAE7 b .L213
- 2828 .L220:
- 3005:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2829 .loc 1 3005 0
- 2830 0072 0268 ldr r2, [r0]
- 2831 0074 D368 ldr r3, [r2, #12]
- 2832 0076 23F02003 bic r3, r3, #32
- 2833 007a D360 str r3, [r2, #12]
- 3008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2834 .loc 1 3008 0
- 2835 007c 0268 ldr r2, [r0]
- 2836 007e D368 ldr r3, [r2, #12]
- 2837 0080 23F48073 bic r3, r3, #256
- 2838 0084 D360 str r3, [r2, #12]
- 3011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2839 .loc 1 3011 0
- 2840 0086 0268 ldr r2, [r0]
- 2841 0088 5369 ldr r3, [r2, #20]
- 2842 008a 23F00103 bic r3, r3, #1
- 2843 008e 5361 str r3, [r2, #20]
- 3014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2844 .loc 1 3014 0
- 2845 0090 2023 movs r3, #32
- 2846 0092 80F83A30 strb r3, [r0, #58]
- 3021:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2847 .loc 1 3021 0
- 2848 0096 FFF7FEFF bl HAL_UART_RxCpltCallback
- 2849 .LVL250:
- 3024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2850 .loc 1 3024 0
- 2851 009a 0020 movs r0, #0
- 2852 009c 08BD pop {r3, pc}
- 2853 .cfi_endproc
- 2854 .LFE183:
- 2856 .section .text.HAL_UART_RxHalfCpltCallback,"ax",%progbits
- 2857 .align 1
- 2858 .weak HAL_UART_RxHalfCpltCallback
- 2859 .syntax unified
- 2860 .thumb
- 2861 .thumb_func
- 2862 .fpu fpv4-sp-d16
- 2864 HAL_UART_RxHalfCpltCallback:
- 2865 .LFB156:
- ARM GAS /tmp/ccD7nRW1.s page 112
- 2190:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2866 .loc 1 2190 0
- 2867 .cfi_startproc
- 2868 @ args = 0, pretend = 0, frame = 0
- 2869 @ frame_needed = 0, uses_anonymous_args = 0
- 2870 @ link register save eliminated.
- 2871 .LVL251:
- 2872 0000 7047 bx lr
- 2873 .cfi_endproc
- 2874 .LFE156:
- 2876 .section .text.UART_DMARxHalfCplt,"ax",%progbits
- 2877 .align 1
- 2878 .syntax unified
- 2879 .thumb
- 2880 .thumb_func
- 2881 .fpu fpv4-sp-d16
- 2883 UART_DMARxHalfCplt:
- 2884 .LFB171:
- 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2885 .loc 1 2608 0
- 2886 .cfi_startproc
- 2887 @ args = 0, pretend = 0, frame = 0
- 2888 @ frame_needed = 0, uses_anonymous_args = 0
- 2889 .LVL252:
- 2608:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 2890 .loc 1 2608 0
- 2891 0000 08B5 push {r3, lr}
- 2892 .LCFI36:
- 2893 .cfi_def_cfa_offset 8
- 2894 .cfi_offset 3, -8
- 2895 .cfi_offset 14, -4
- 2896 .LVL253:
- 2616:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2897 .loc 1 2616 0
- 2898 0002 806B ldr r0, [r0, #56]
- 2899 .LVL254:
- 2900 0004 FFF7FEFF bl HAL_UART_RxHalfCpltCallback
- 2901 .LVL255:
- 2902 0008 08BD pop {r3, pc}
- 2903 .cfi_endproc
- 2904 .LFE171:
- 2906 .section .text.HAL_UART_ErrorCallback,"ax",%progbits
- 2907 .align 1
- 2908 .weak HAL_UART_ErrorCallback
- 2909 .syntax unified
- 2910 .thumb
- 2911 .thumb_func
- 2912 .fpu fpv4-sp-d16
- 2914 HAL_UART_ErrorCallback:
- 2915 .LFB157:
- 2205:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 2916 .loc 1 2205 0
- 2917 .cfi_startproc
- 2918 @ args = 0, pretend = 0, frame = 0
- 2919 @ frame_needed = 0, uses_anonymous_args = 0
- 2920 @ link register save eliminated.
- 2921 .LVL256:
- ARM GAS /tmp/ccD7nRW1.s page 113
- 2922 0000 7047 bx lr
- 2923 .cfi_endproc
- 2924 .LFE157:
- 2926 .section .text.UART_DMAError,"ax",%progbits
- 2927 .align 1
- 2928 .syntax unified
- 2929 .thumb
- 2930 .thumb_func
- 2931 .fpu fpv4-sp-d16
- 2933 UART_DMAError:
- 2934 .LFB172:
- 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 2935 .loc 1 2627 0
- 2936 .cfi_startproc
- 2937 @ args = 0, pretend = 0, frame = 0
- 2938 @ frame_needed = 0, uses_anonymous_args = 0
- 2939 .LVL257:
- 2627:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t dmarequest = 0x00U;
- 2940 .loc 1 2627 0
- 2941 0000 10B5 push {r4, lr}
- 2942 .LCFI37:
- 2943 .cfi_def_cfa_offset 8
- 2944 .cfi_offset 4, -8
- 2945 .cfi_offset 14, -4
- 2946 .LVL258:
- 2629:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 2947 .loc 1 2629 0
- 2948 0002 846B ldr r4, [r0, #56]
- 2949 .LVL259:
- 2632:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->gState == HAL_UART_STATE_BUSY_TX) && dmarequest)
- 2950 .loc 1 2632 0
- 2951 0004 2368 ldr r3, [r4]
- 2952 0006 5A69 ldr r2, [r3, #20]
- 2953 .LVL260:
- 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2954 .loc 1 2633 0
- 2955 0008 94F83930 ldrb r3, [r4, #57] @ zero_extendqisi2
- 2956 000c DBB2 uxtb r3, r3
- 2957 000e 212B cmp r3, #33
- 2958 0010 10D0 beq .L229
- 2959 .LVL261:
- 2960 .L226:
- 2640:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if ((huart->RxState == HAL_UART_STATE_BUSY_RX) && dmarequest)
- 2961 .loc 1 2640 0
- 2962 0012 2368 ldr r3, [r4]
- 2963 0014 5A69 ldr r2, [r3, #20]
- 2964 0016 02F04002 and r2, r2, #64
- 2965 .LVL262:
- 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2966 .loc 1 2641 0
- 2967 001a 94F83A30 ldrb r3, [r4, #58] @ zero_extendqisi2
- 2968 001e DBB2 uxtb r3, r3
- 2969 0020 222B cmp r3, #34
- 2970 0022 11D0 beq .L230
- 2971 .LVL263:
- 2972 .L227:
- 2647:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #if (USE_HAL_UART_REGISTER_CALLBACKS == 1)
- ARM GAS /tmp/ccD7nRW1.s page 114
- 2973 .loc 1 2647 0
- 2974 0024 E36B ldr r3, [r4, #60]
- 2975 0026 43F01003 orr r3, r3, #16
- 2976 002a E363 str r3, [r4, #60]
- 2653:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 2977 .loc 1 2653 0
- 2978 002c 2046 mov r0, r4
- 2979 002e FFF7FEFF bl HAL_UART_ErrorCallback
- 2980 .LVL264:
- 2981 0032 10BD pop {r4, pc}
- 2982 .LVL265:
- 2983 .L229:
- 2984 0034 02F08002 and r2, r2, #128
- 2985 .LVL266:
- 2633:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 2986 .loc 1 2633 0 discriminator 1
- 2987 0038 002A cmp r2, #0
- 2988 003a EAD0 beq .L226
- 2635:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndTxTransfer(huart);
- 2989 .loc 1 2635 0
- 2990 003c 0023 movs r3, #0
- 2991 003e E384 strh r3, [r4, #38] @ movhi
- 2636:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 2992 .loc 1 2636 0
- 2993 0040 2046 mov r0, r4
- 2994 .LVL267:
- 2995 0042 FFF7FEFF bl UART_EndTxTransfer
- 2996 .LVL268:
- 2997 0046 E4E7 b .L226
- 2998 .LVL269:
- 2999 .L230:
- 2641:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3000 .loc 1 2641 0 discriminator 1
- 3001 0048 002A cmp r2, #0
- 3002 004a EBD0 beq .L227
- 2643:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_EndRxTransfer(huart);
- 3003 .loc 1 2643 0
- 3004 004c 0023 movs r3, #0
- 3005 004e E385 strh r3, [r4, #46] @ movhi
- 2644:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3006 .loc 1 2644 0
- 3007 0050 2046 mov r0, r4
- 3008 0052 FFF7FEFF bl UART_EndRxTransfer
- 3009 .LVL270:
- 3010 0056 E5E7 b .L227
- 3011 .cfi_endproc
- 3012 .LFE172:
- 3014 .section .text.HAL_UART_IRQHandler,"ax",%progbits
- 3015 .align 1
- 3016 .global HAL_UART_IRQHandler
- 3017 .syntax unified
- 3018 .thumb
- 3019 .thumb_func
- 3020 .fpu fpv4-sp-d16
- 3022 HAL_UART_IRQHandler:
- 3023 .LFB152:
- 1999:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t isrflags = READ_REG(huart->Instance->SR);
- ARM GAS /tmp/ccD7nRW1.s page 115
- 3024 .loc 1 1999 0
- 3025 .cfi_startproc
- 3026 @ args = 0, pretend = 0, frame = 0
- 3027 @ frame_needed = 0, uses_anonymous_args = 0
- 3028 .LVL271:
- 3029 0000 10B5 push {r4, lr}
- 3030 .LCFI38:
- 3031 .cfi_def_cfa_offset 8
- 3032 .cfi_offset 4, -8
- 3033 .cfi_offset 14, -4
- 3034 0002 0446 mov r4, r0
- 2000:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr1its = READ_REG(huart->Instance->CR1);
- 3035 .loc 1 2000 0
- 3036 0004 0268 ldr r2, [r0]
- 3037 0006 1368 ldr r3, [r2]
- 3038 .LVL272:
- 2001:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t cr3its = READ_REG(huart->Instance->CR3);
- 3039 .loc 1 2001 0
- 3040 0008 D168 ldr r1, [r2, #12]
- 3041 .LVL273:
- 2002:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t errorflags = 0x00U;
- 3042 .loc 1 2002 0
- 3043 000a 5269 ldr r2, [r2, #20]
- 3044 .LVL274:
- 2008:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3045 .loc 1 2008 0
- 3046 000c 13F00F00 ands r0, r3, #15
- 3047 .LVL275:
- 3048 0010 05D1 bne .L232
- 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3049 .loc 1 2011 0
- 3050 0012 13F0200F tst r3, #32
- 3051 0016 02D0 beq .L232
- 2011:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3052 .loc 1 2011 0 is_stmt 0 discriminator 1
- 3053 0018 11F0200F tst r1, #32
- 3054 001c 53D1 bne .L247
- 3055 .L232:
- 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3056 .loc 1 2019 0 is_stmt 1
- 3057 001e 0028 cmp r0, #0
- 3058 0020 67D0 beq .L234
- 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3059 .loc 1 2019 0 is_stmt 0 discriminator 1
- 3060 0022 12F00102 ands r2, r2, #1
- 3061 .LVL276:
- 3062 0026 02D1 bne .L235
- 2019:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3063 .loc 1 2019 0 discriminator 2
- 3064 0028 11F4907F tst r1, #288
- 3065 002c 61D0 beq .L234
- 3066 .L235:
- 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3067 .loc 1 2022 0 is_stmt 1
- 3068 002e 13F0010F tst r3, #1
- 3069 0032 06D0 beq .L236
- 2022:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- ARM GAS /tmp/ccD7nRW1.s page 116
- 3070 .loc 1 2022 0 is_stmt 0 discriminator 1
- 3071 0034 11F4807F tst r1, #256
- 3072 0038 03D0 beq .L236
- 2024:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3073 .loc 1 2024 0 is_stmt 1
- 3074 003a E06B ldr r0, [r4, #60]
- 3075 .LVL277:
- 3076 003c 40F00100 orr r0, r0, #1
- 3077 0040 E063 str r0, [r4, #60]
- 3078 .L236:
- 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3079 .loc 1 2028 0
- 3080 0042 13F0040F tst r3, #4
- 3081 0046 04D0 beq .L237
- 2028:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3082 .loc 1 2028 0 is_stmt 0 discriminator 1
- 3083 0048 1AB1 cbz r2, .L237
- 2030:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3084 .loc 1 2030 0 is_stmt 1
- 3085 004a E06B ldr r0, [r4, #60]
- 3086 004c 40F00200 orr r0, r0, #2
- 3087 0050 E063 str r0, [r4, #60]
- 3088 .L237:
- 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3089 .loc 1 2034 0
- 3090 0052 13F0020F tst r3, #2
- 3091 0056 04D0 beq .L238
- 2034:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3092 .loc 1 2034 0 is_stmt 0 discriminator 1
- 3093 0058 1AB1 cbz r2, .L238
- 2036:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3094 .loc 1 2036 0 is_stmt 1
- 3095 005a E06B ldr r0, [r4, #60]
- 3096 005c 40F00400 orr r0, r0, #4
- 3097 0060 E063 str r0, [r4, #60]
- 3098 .L238:
- 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3099 .loc 1 2040 0
- 3100 0062 13F0080F tst r3, #8
- 3101 0066 04D0 beq .L239
- 2040:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3102 .loc 1 2040 0 is_stmt 0 discriminator 1
- 3103 0068 1AB1 cbz r2, .L239
- 2042:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3104 .loc 1 2042 0 is_stmt 1
- 3105 006a E26B ldr r2, [r4, #60]
- 3106 006c 42F00802 orr r2, r2, #8
- 3107 0070 E263 str r2, [r4, #60]
- 3108 .L239:
- 2046:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3109 .loc 1 2046 0
- 3110 0072 E26B ldr r2, [r4, #60]
- 3111 0074 002A cmp r2, #0
- 3112 0076 48D0 beq .L231
- 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3113 .loc 1 2049 0
- 3114 0078 13F0200F tst r3, #32
- ARM GAS /tmp/ccD7nRW1.s page 117
- 3115 007c 02D0 beq .L240
- 2049:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3116 .loc 1 2049 0 is_stmt 0 discriminator 1
- 3117 007e 11F0200F tst r1, #32
- 3118 0082 24D1 bne .L248
- 3119 .LVL278:
- 3120 .L240:
- 2056:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (((huart->ErrorCode & HAL_UART_ERROR_ORE) != RESET) || dmarequest)
- 3121 .loc 1 2056 0 is_stmt 1
- 3122 0084 2368 ldr r3, [r4]
- 3123 0086 5B69 ldr r3, [r3, #20]
- 3124 0088 03F04003 and r3, r3, #64
- 3125 .LVL279:
- 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3126 .loc 1 2057 0
- 3127 008c E26B ldr r2, [r4, #60]
- 3128 008e 12F0080F tst r2, #8
- 3129 0092 00D1 bne .L241
- 2057:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3130 .loc 1 2057 0 is_stmt 0 discriminator 1
- 3131 0094 3BB3 cbz r3, .L242
- 3132 .L241:
- 2062:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3133 .loc 1 2062 0 is_stmt 1
- 3134 0096 2046 mov r0, r4
- 3135 0098 FFF7FEFF bl UART_EndRxTransfer
- 3136 .LVL280:
- 2065:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3137 .loc 1 2065 0
- 3138 009c 2368 ldr r3, [r4]
- 3139 009e 5A69 ldr r2, [r3, #20]
- 3140 00a0 12F0400F tst r2, #64
- 3141 00a4 1BD0 beq .L243
- 2067:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3142 .loc 1 2067 0
- 3143 00a6 5A69 ldr r2, [r3, #20]
- 3144 00a8 22F04002 bic r2, r2, #64
- 3145 00ac 5A61 str r2, [r3, #20]
- 2070:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3146 .loc 1 2070 0
- 3147 00ae 636B ldr r3, [r4, #52]
- 3148 00b0 8BB1 cbz r3, .L244
- 2074:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** if (HAL_DMA_Abort_IT(huart->hdmarx) != HAL_OK)
- 3149 .loc 1 2074 0
- 3150 00b2 1A4A ldr r2, .L251
- 3151 00b4 1A65 str r2, [r3, #80]
- 2075:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3152 .loc 1 2075 0
- 3153 00b6 606B ldr r0, [r4, #52]
- 3154 00b8 FFF7FEFF bl HAL_DMA_Abort_IT
- 3155 .LVL281:
- 3156 00bc 28B3 cbz r0, .L231
- 2078:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3157 .loc 1 2078 0
- 3158 00be 606B ldr r0, [r4, #52]
- 3159 00c0 036D ldr r3, [r0, #80]
- 3160 00c2 9847 blx r3
- ARM GAS /tmp/ccD7nRW1.s page 118
- 3161 .LVL282:
- 3162 00c4 10BD pop {r4, pc}
- 3163 .LVL283:
- 3164 .L247:
- 2013:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 3165 .loc 1 2013 0
- 3166 00c6 2046 mov r0, r4
- 3167 .LVL284:
- 3168 00c8 FFF7FEFF bl UART_Receive_IT
- 3169 .LVL285:
- 2014:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3170 .loc 1 2014 0
- 3171 00cc 10BD pop {r4, pc}
- 3172 .LVL286:
- 3173 .L248:
- 2051:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3174 .loc 1 2051 0
- 3175 00ce 2046 mov r0, r4
- 3176 00d0 FFF7FEFF bl UART_Receive_IT
- 3177 .LVL287:
- 3178 00d4 D6E7 b .L240
- 3179 .LVL288:
- 3180 .L244:
- 2089:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3181 .loc 1 2089 0
- 3182 00d6 2046 mov r0, r4
- 3183 00d8 FFF7FEFF bl HAL_UART_ErrorCallback
- 3184 .LVL289:
- 3185 00dc 10BD pop {r4, pc}
- 3186 .LVL290:
- 3187 .L243:
- 2101:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3188 .loc 1 2101 0
- 3189 00de 2046 mov r0, r4
- 3190 00e0 FFF7FEFF bl HAL_UART_ErrorCallback
- 3191 .LVL291:
- 3192 00e4 10BD pop {r4, pc}
- 3193 .LVL292:
- 3194 .L242:
- 2114:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3195 .loc 1 2114 0
- 3196 00e6 2046 mov r0, r4
- 3197 00e8 FFF7FEFF bl HAL_UART_ErrorCallback
- 3198 .LVL293:
- 2117:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3199 .loc 1 2117 0
- 3200 00ec 0023 movs r3, #0
- 3201 00ee E363 str r3, [r4, #60]
- 3202 00f0 10BD pop {r4, pc}
- 3203 .LVL294:
- 3204 .L234:
- 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3205 .loc 1 2124 0
- 3206 00f2 13F0800F tst r3, #128
- 3207 00f6 02D0 beq .L245
- 2124:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3208 .loc 1 2124 0 is_stmt 0 discriminator 1
- ARM GAS /tmp/ccD7nRW1.s page 119
- 3209 00f8 11F0800F tst r1, #128
- 3210 00fc 06D1 bne .L249
- 3211 .L245:
- 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3212 .loc 1 2131 0 is_stmt 1
- 3213 00fe 13F0400F tst r3, #64
- 3214 0102 02D0 beq .L231
- 2131:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3215 .loc 1 2131 0 is_stmt 0 discriminator 1
- 3216 0104 11F0400F tst r1, #64
- 3217 0108 04D1 bne .L250
- 3218 .LVL295:
- 3219 .L231:
- 3220 010a 10BD pop {r4, pc}
- 3221 .LVL296:
- 3222 .L249:
- 2126:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 3223 .loc 1 2126 0 is_stmt 1
- 3224 010c 2046 mov r0, r4
- 3225 .LVL297:
- 3226 010e FFF7FEFF bl UART_Transmit_IT
- 3227 .LVL298:
- 2127:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3228 .loc 1 2127 0
- 3229 0112 10BD pop {r4, pc}
- 3230 .LVL299:
- 3231 .L250:
- 2133:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return;
- 3232 .loc 1 2133 0
- 3233 0114 2046 mov r0, r4
- 3234 .LVL300:
- 3235 0116 FFF7FEFF bl UART_EndTransmit_IT
- 3236 .LVL301:
- 2134:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3237 .loc 1 2134 0
- 3238 011a F6E7 b .L231
- 3239 .L252:
- 3240 .align 2
- 3241 .L251:
- 3242 011c 00000000 .word UART_DMAAbortOnError
- 3243 .cfi_endproc
- 3244 .LFE152:
- 3246 .section .text.UART_DMAAbortOnError,"ax",%progbits
- 3247 .align 1
- 3248 .syntax unified
- 3249 .thumb
- 3250 .thumb_func
- 3251 .fpu fpv4-sp-d16
- 3253 UART_DMAAbortOnError:
- 3254 .LFB176:
- 2731:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 3255 .loc 1 2731 0
- 3256 .cfi_startproc
- 3257 @ args = 0, pretend = 0, frame = 0
- 3258 @ frame_needed = 0, uses_anonymous_args = 0
- 3259 .LVL302:
- 3260 0000 08B5 push {r3, lr}
- ARM GAS /tmp/ccD7nRW1.s page 120
- 3261 .LCFI39:
- 3262 .cfi_def_cfa_offset 8
- 3263 .cfi_offset 3, -8
- 3264 .cfi_offset 14, -4
- 2732:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 3265 .loc 1 2732 0
- 3266 0002 806B ldr r0, [r0, #56]
- 3267 .LVL303:
- 2733:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->TxXferCount = 0x00U;
- 3268 .loc 1 2733 0
- 3269 0004 0023 movs r3, #0
- 3270 0006 C385 strh r3, [r0, #46] @ movhi
- 2734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3271 .loc 1 2734 0
- 3272 0008 C384 strh r3, [r0, #38] @ movhi
- 2741:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3273 .loc 1 2741 0
- 3274 000a FFF7FEFF bl HAL_UART_ErrorCallback
- 3275 .LVL304:
- 3276 000e 08BD pop {r3, pc}
- 3277 .cfi_endproc
- 3278 .LFE176:
- 3280 .section .text.HAL_UART_AbortCpltCallback,"ax",%progbits
- 3281 .align 1
- 3282 .weak HAL_UART_AbortCpltCallback
- 3283 .syntax unified
- 3284 .thumb
- 3285 .thumb_func
- 3286 .fpu fpv4-sp-d16
- 3288 HAL_UART_AbortCpltCallback:
- 3289 .LFB158:
- 2219:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 3290 .loc 1 2219 0
- 3291 .cfi_startproc
- 3292 @ args = 0, pretend = 0, frame = 0
- 3293 @ frame_needed = 0, uses_anonymous_args = 0
- 3294 @ link register save eliminated.
- 3295 .LVL305:
- 3296 0000 7047 bx lr
- 3297 .cfi_endproc
- 3298 .LFE158:
- 3300 .section .text.HAL_UART_Abort_IT,"ax",%progbits
- 3301 .align 1
- 3302 .global HAL_UART_Abort_IT
- 3303 .syntax unified
- 3304 .thumb
- 3305 .thumb_func
- 3306 .fpu fpv4-sp-d16
- 3308 HAL_UART_Abort_IT:
- 3309 .LFB149:
- 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
- 3310 .loc 1 1724 0
- 3311 .cfi_startproc
- 3312 @ args = 0, pretend = 0, frame = 0
- 3313 @ frame_needed = 0, uses_anonymous_args = 0
- 3314 .LVL306:
- 1724:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t AbortCplt = 0x01U;
- ARM GAS /tmp/ccD7nRW1.s page 121
- 3315 .loc 1 1724 0
- 3316 0000 10B5 push {r4, lr}
- 3317 .LCFI40:
- 3318 .cfi_def_cfa_offset 8
- 3319 .cfi_offset 4, -8
- 3320 .cfi_offset 14, -4
- 3321 0002 0446 mov r4, r0
- 3322 .LVL307:
- 1728:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 3323 .loc 1 1728 0
- 3324 0004 0268 ldr r2, [r0]
- 3325 0006 D368 ldr r3, [r2, #12]
- 3326 0008 23F4F073 bic r3, r3, #480
- 3327 000c D360 str r3, [r2, #12]
- 1729:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3328 .loc 1 1729 0
- 3329 000e 0268 ldr r2, [r0]
- 3330 0010 5369 ldr r3, [r2, #20]
- 3331 0012 23F00103 bic r3, r3, #1
- 3332 0016 5361 str r3, [r2, #20]
- 1734:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3333 .loc 1 1734 0
- 3334 0018 036B ldr r3, [r0, #48]
- 3335 001a 33B1 cbz r3, .L257
- 1738:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3336 .loc 1 1738 0
- 3337 001c 0268 ldr r2, [r0]
- 3338 001e 5269 ldr r2, [r2, #20]
- 3339 0020 12F0800F tst r2, #128
- 3340 0024 1DD0 beq .L258
- 1740:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3341 .loc 1 1740 0
- 3342 0026 264A ldr r2, .L270
- 3343 0028 1A65 str r2, [r3, #80]
- 3344 .L257:
- 1748:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3345 .loc 1 1748 0
- 3346 002a 636B ldr r3, [r4, #52]
- 3347 002c 33B1 cbz r3, .L259
- 1752:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3348 .loc 1 1752 0
- 3349 002e 2268 ldr r2, [r4]
- 3350 0030 5269 ldr r2, [r2, #20]
- 3351 0032 12F0400F tst r2, #64
- 3352 0036 17D0 beq .L260
- 1754:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3353 .loc 1 1754 0
- 3354 0038 224A ldr r2, .L270+4
- 3355 003a 1A65 str r2, [r3, #80]
- 3356 .L259:
- 1763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3357 .loc 1 1763 0
- 3358 003c 2368 ldr r3, [r4]
- 3359 003e 5A69 ldr r2, [r3, #20]
- 3360 0040 12F0800F tst r2, #128
- 3361 0044 13D0 beq .L264
- 1766:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 122
- 3362 .loc 1 1766 0
- 3363 0046 5A69 ldr r2, [r3, #20]
- 3364 0048 22F08002 bic r2, r2, #128
- 3365 004c 5A61 str r2, [r3, #20]
- 1769:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3366 .loc 1 1769 0
- 3367 004e 206B ldr r0, [r4, #48]
- 3368 .LVL308:
- 3369 0050 18B3 cbz r0, .L265
- 1775:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3370 .loc 1 1775 0
- 3371 0052 FFF7FEFF bl HAL_DMA_Abort_IT
- 3372 .LVL309:
- 3373 0056 10B3 cbz r0, .L266
- 1777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3374 .loc 1 1777 0
- 3375 0058 236B ldr r3, [r4, #48]
- 3376 005a 0022 movs r2, #0
- 3377 005c 1A65 str r2, [r3, #80]
- 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3378 .loc 1 1725 0
- 3379 005e 0122 movs r2, #1
- 3380 0060 06E0 b .L261
- 3381 .LVL310:
- 3382 .L258:
- 1744:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3383 .loc 1 1744 0
- 3384 0062 0022 movs r2, #0
- 3385 0064 1A65 str r2, [r3, #80]
- 3386 0066 E0E7 b .L257
- 3387 .L260:
- 1758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3388 .loc 1 1758 0
- 3389 0068 0022 movs r2, #0
- 3390 006a 1A65 str r2, [r3, #80]
- 3391 006c E6E7 b .L259
- 3392 .L264:
- 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3393 .loc 1 1725 0
- 3394 006e 0122 movs r2, #1
- 3395 .LVL311:
- 3396 .L261:
- 1787:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3397 .loc 1 1787 0
- 3398 0070 2368 ldr r3, [r4]
- 3399 0072 5969 ldr r1, [r3, #20]
- 3400 0074 11F0400F tst r1, #64
- 3401 0078 0CD0 beq .L262
- 1789:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3402 .loc 1 1789 0
- 3403 007a 5969 ldr r1, [r3, #20]
- 3404 007c 21F04001 bic r1, r1, #64
- 3405 0080 5961 str r1, [r3, #20]
- 1792:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3406 .loc 1 1792 0
- 3407 0082 606B ldr r0, [r4, #52]
- 3408 0084 30B1 cbz r0, .L262
- ARM GAS /tmp/ccD7nRW1.s page 123
- 1798:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3409 .loc 1 1798 0
- 3410 0086 FFF7FEFF bl HAL_DMA_Abort_IT
- 3411 .LVL312:
- 3412 008a 50B1 cbz r0, .L267
- 1800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** AbortCplt = 0x01U;
- 3413 .loc 1 1800 0
- 3414 008c 636B ldr r3, [r4, #52]
- 3415 008e 0022 movs r2, #0
- 3416 0090 1A65 str r2, [r3, #80]
- 3417 .LVL313:
- 1801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3418 .loc 1 1801 0
- 3419 0092 0122 movs r2, #1
- 3420 .LVL314:
- 3421 .L262:
- 1811:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3422 .loc 1 1811 0
- 3423 0094 3AB9 cbnz r2, .L269
- 3424 .LVL315:
- 3425 .L263:
- 1835:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3426 .loc 1 1835 0
- 3427 0096 0020 movs r0, #0
- 3428 0098 10BD pop {r4, pc}
- 3429 .LVL316:
- 3430 .L265:
- 1725:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3431 .loc 1 1725 0
- 3432 009a 0122 movs r2, #1
- 3433 009c E8E7 b .L261
- 3434 .L266:
- 1781:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3435 .loc 1 1781 0
- 3436 009e 0022 movs r2, #0
- 3437 00a0 E6E7 b .L261
- 3438 .LVL317:
- 3439 .L267:
- 1805:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3440 .loc 1 1805 0
- 3441 00a2 0022 movs r2, #0
- 3442 00a4 F6E7 b .L262
- 3443 .LVL318:
- 3444 .L269:
- 1814:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 3445 .loc 1 1814 0
- 3446 00a6 0023 movs r3, #0
- 3447 00a8 E384 strh r3, [r4, #38] @ movhi
- 1815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3448 .loc 1 1815 0
- 3449 00aa E385 strh r3, [r4, #46] @ movhi
- 1818:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3450 .loc 1 1818 0
- 3451 00ac E363 str r3, [r4, #60]
- 1821:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 3452 .loc 1 1821 0
- 3453 00ae 2023 movs r3, #32
- ARM GAS /tmp/ccD7nRW1.s page 124
- 3454 00b0 84F83930 strb r3, [r4, #57]
- 1822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3455 .loc 1 1822 0
- 3456 00b4 84F83A30 strb r3, [r4, #58]
- 1830:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3457 .loc 1 1830 0
- 3458 00b8 2046 mov r0, r4
- 3459 00ba FFF7FEFF bl HAL_UART_AbortCpltCallback
- 3460 .LVL319:
- 3461 00be EAE7 b .L263
- 3462 .L271:
- 3463 .align 2
- 3464 .L270:
- 3465 00c0 00000000 .word UART_DMATxAbortCallback
- 3466 00c4 00000000 .word UART_DMARxAbortCallback
- 3467 .cfi_endproc
- 3468 .LFE149:
- 3470 .section .text.UART_DMARxAbortCallback,"ax",%progbits
- 3471 .align 1
- 3472 .syntax unified
- 3473 .thumb
- 3474 .thumb_func
- 3475 .fpu fpv4-sp-d16
- 3477 UART_DMARxAbortCallback:
- 3478 .LFB178:
- 2800:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 3479 .loc 1 2800 0
- 3480 .cfi_startproc
- 3481 @ args = 0, pretend = 0, frame = 0
- 3482 @ frame_needed = 0, uses_anonymous_args = 0
- 3483 .LVL320:
- 3484 0000 08B5 push {r3, lr}
- 3485 .LCFI41:
- 3486 .cfi_def_cfa_offset 8
- 3487 .cfi_offset 3, -8
- 3488 .cfi_offset 14, -4
- 2801:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3489 .loc 1 2801 0
- 3490 0002 806B ldr r0, [r0, #56]
- 3491 .LVL321:
- 2803:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3492 .loc 1 2803 0
- 3493 0004 436B ldr r3, [r0, #52]
- 3494 0006 0022 movs r2, #0
- 3495 0008 1A65 str r2, [r3, #80]
- 2806:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3496 .loc 1 2806 0
- 3497 000a 036B ldr r3, [r0, #48]
- 3498 000c 13B1 cbz r3, .L273
- 2808:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3499 .loc 1 2808 0
- 3500 000e 1B6D ldr r3, [r3, #80]
- 3501 0010 03B1 cbz r3, .L273
- 3502 .LVL322:
- 3503 .L272:
- 3504 0012 08BD pop {r3, pc}
- 3505 .LVL323:
- ARM GAS /tmp/ccD7nRW1.s page 125
- 3506 .L273:
- 2815:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 3507 .loc 1 2815 0
- 3508 0014 0023 movs r3, #0
- 3509 0016 C384 strh r3, [r0, #38] @ movhi
- 2816:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3510 .loc 1 2816 0
- 3511 0018 C385 strh r3, [r0, #46] @ movhi
- 2819:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3512 .loc 1 2819 0
- 3513 001a C363 str r3, [r0, #60]
- 2822:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 3514 .loc 1 2822 0
- 3515 001c 2023 movs r3, #32
- 3516 001e 80F83930 strb r3, [r0, #57]
- 2823:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3517 .loc 1 2823 0
- 3518 0022 80F83A30 strb r3, [r0, #58]
- 2831:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3519 .loc 1 2831 0
- 3520 0026 FFF7FEFF bl HAL_UART_AbortCpltCallback
- 3521 .LVL324:
- 3522 002a F2E7 b .L272
- 3523 .cfi_endproc
- 3524 .LFE178:
- 3526 .section .text.UART_DMATxAbortCallback,"ax",%progbits
- 3527 .align 1
- 3528 .syntax unified
- 3529 .thumb
- 3530 .thumb_func
- 3531 .fpu fpv4-sp-d16
- 3533 UART_DMATxAbortCallback:
- 3534 .LFB177:
- 2755:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 3535 .loc 1 2755 0
- 3536 .cfi_startproc
- 3537 @ args = 0, pretend = 0, frame = 0
- 3538 @ frame_needed = 0, uses_anonymous_args = 0
- 3539 .LVL325:
- 3540 0000 08B5 push {r3, lr}
- 3541 .LCFI42:
- 3542 .cfi_def_cfa_offset 8
- 3543 .cfi_offset 3, -8
- 3544 .cfi_offset 14, -4
- 2756:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3545 .loc 1 2756 0
- 3546 0002 806B ldr r0, [r0, #56]
- 3547 .LVL326:
- 2758:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3548 .loc 1 2758 0
- 3549 0004 036B ldr r3, [r0, #48]
- 3550 0006 0022 movs r2, #0
- 3551 0008 1A65 str r2, [r3, #80]
- 2761:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3552 .loc 1 2761 0
- 3553 000a 436B ldr r3, [r0, #52]
- 3554 000c 13B1 cbz r3, .L277
- ARM GAS /tmp/ccD7nRW1.s page 126
- 2763:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3555 .loc 1 2763 0
- 3556 000e 1B6D ldr r3, [r3, #80]
- 3557 0010 03B1 cbz r3, .L277
- 3558 .LVL327:
- 3559 .L276:
- 3560 0012 08BD pop {r3, pc}
- 3561 .LVL328:
- 3562 .L277:
- 2770:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxXferCount = 0x00U;
- 3563 .loc 1 2770 0
- 3564 0014 0023 movs r3, #0
- 3565 0016 C384 strh r3, [r0, #38] @ movhi
- 2771:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3566 .loc 1 2771 0
- 3567 0018 C385 strh r3, [r0, #46] @ movhi
- 2774:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3568 .loc 1 2774 0
- 3569 001a C363 str r3, [r0, #60]
- 2777:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** huart->RxState = HAL_UART_STATE_READY;
- 3570 .loc 1 2777 0
- 3571 001c 2023 movs r3, #32
- 3572 001e 80F83930 strb r3, [r0, #57]
- 2778:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3573 .loc 1 2778 0
- 3574 0022 80F83A30 strb r3, [r0, #58]
- 2786:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3575 .loc 1 2786 0
- 3576 0026 FFF7FEFF bl HAL_UART_AbortCpltCallback
- 3577 .LVL329:
- 3578 002a F2E7 b .L276
- 3579 .cfi_endproc
- 3580 .LFE177:
- 3582 .section .text.HAL_UART_AbortTransmitCpltCallback,"ax",%progbits
- 3583 .align 1
- 3584 .weak HAL_UART_AbortTransmitCpltCallback
- 3585 .syntax unified
- 3586 .thumb
- 3587 .thumb_func
- 3588 .fpu fpv4-sp-d16
- 3590 HAL_UART_AbortTransmitCpltCallback:
- 3591 .LFB159:
- 2234:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 3592 .loc 1 2234 0
- 3593 .cfi_startproc
- 3594 @ args = 0, pretend = 0, frame = 0
- 3595 @ frame_needed = 0, uses_anonymous_args = 0
- 3596 @ link register save eliminated.
- 3597 .LVL330:
- 3598 0000 7047 bx lr
- 3599 .cfi_endproc
- 3600 .LFE159:
- 3602 .section .text.HAL_UART_AbortTransmit_IT,"ax",%progbits
- 3603 .align 1
- 3604 .global HAL_UART_AbortTransmit_IT
- 3605 .syntax unified
- 3606 .thumb
- ARM GAS /tmp/ccD7nRW1.s page 127
- 3607 .thumb_func
- 3608 .fpu fpv4-sp-d16
- 3610 HAL_UART_AbortTransmit_IT:
- 3611 .LFB150:
- 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 3612 .loc 1 1852 0
- 3613 .cfi_startproc
- 3614 @ args = 0, pretend = 0, frame = 0
- 3615 @ frame_needed = 0, uses_anonymous_args = 0
- 3616 .LVL331:
- 1852:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable TXEIE and TCIE interrupts */
- 3617 .loc 1 1852 0
- 3618 0000 10B5 push {r4, lr}
- 3619 .LCFI43:
- 3620 .cfi_def_cfa_offset 8
- 3621 .cfi_offset 4, -8
- 3622 .cfi_offset 14, -4
- 3623 0002 0446 mov r4, r0
- 1854:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3624 .loc 1 1854 0
- 3625 0004 0268 ldr r2, [r0]
- 3626 0006 D368 ldr r3, [r2, #12]
- 3627 0008 23F0C003 bic r3, r3, #192
- 3628 000c D360 str r3, [r2, #12]
- 1857:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3629 .loc 1 1857 0
- 3630 000e 0368 ldr r3, [r0]
- 3631 0010 5A69 ldr r2, [r3, #20]
- 3632 0012 12F0800F tst r2, #128
- 3633 0016 19D0 beq .L282
- 1859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3634 .loc 1 1859 0
- 3635 0018 5A69 ldr r2, [r3, #20]
- 3636 001a 22F08002 bic r2, r2, #128
- 3637 001e 5A61 str r2, [r3, #20]
- 1862:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3638 .loc 1 1862 0
- 3639 0020 036B ldr r3, [r0, #48]
- 3640 0022 5BB1 cbz r3, .L283
- 1866:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3641 .loc 1 1866 0
- 3642 0024 0D4A ldr r2, .L287
- 3643 0026 1A65 str r2, [r3, #80]
- 1869:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3644 .loc 1 1869 0
- 3645 0028 006B ldr r0, [r0, #48]
- 3646 .LVL332:
- 3647 002a FFF7FEFF bl HAL_DMA_Abort_IT
- 3648 .LVL333:
- 3649 002e 08B9 cbnz r0, .L286
- 3650 .L284:
- 1912:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3651 .loc 1 1912 0
- 3652 0030 0020 movs r0, #0
- 3653 0032 10BD pop {r4, pc}
- 3654 .LVL334:
- 3655 .L286:
- ARM GAS /tmp/ccD7nRW1.s page 128
- 1872:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3656 .loc 1 1872 0
- 3657 0034 206B ldr r0, [r4, #48]
- 3658 0036 036D ldr r3, [r0, #80]
- 3659 0038 9847 blx r3
- 3660 .LVL335:
- 3661 003a F9E7 b .L284
- 3662 .LVL336:
- 3663 .L283:
- 1878:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3664 .loc 1 1878 0
- 3665 003c 0023 movs r3, #0
- 3666 003e C384 strh r3, [r0, #38] @ movhi
- 1881:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3667 .loc 1 1881 0
- 3668 0040 2023 movs r3, #32
- 3669 0042 80F83930 strb r3, [r0, #57]
- 1889:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3670 .loc 1 1889 0
- 3671 0046 FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
- 3672 .LVL337:
- 3673 004a F1E7 b .L284
- 3674 .LVL338:
- 3675 .L282:
- 1896:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3676 .loc 1 1896 0
- 3677 004c 0023 movs r3, #0
- 3678 004e C384 strh r3, [r0, #38] @ movhi
- 1899:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3679 .loc 1 1899 0
- 3680 0050 2023 movs r3, #32
- 3681 0052 80F83930 strb r3, [r0, #57]
- 1907:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3682 .loc 1 1907 0
- 3683 0056 FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
- 3684 .LVL339:
- 3685 005a E9E7 b .L284
- 3686 .L288:
- 3687 .align 2
- 3688 .L287:
- 3689 005c 00000000 .word UART_DMATxOnlyAbortCallback
- 3690 .cfi_endproc
- 3691 .LFE150:
- 3693 .section .text.UART_DMATxOnlyAbortCallback,"ax",%progbits
- 3694 .align 1
- 3695 .syntax unified
- 3696 .thumb
- 3697 .thumb_func
- 3698 .fpu fpv4-sp-d16
- 3700 UART_DMATxOnlyAbortCallback:
- 3701 .LFB179:
- 2845:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 3702 .loc 1 2845 0
- 3703 .cfi_startproc
- 3704 @ args = 0, pretend = 0, frame = 0
- 3705 @ frame_needed = 0, uses_anonymous_args = 0
- 3706 .LVL340:
- ARM GAS /tmp/ccD7nRW1.s page 129
- 3707 0000 08B5 push {r3, lr}
- 3708 .LCFI44:
- 3709 .cfi_def_cfa_offset 8
- 3710 .cfi_offset 3, -8
- 3711 .cfi_offset 14, -4
- 2846:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3712 .loc 1 2846 0
- 3713 0002 806B ldr r0, [r0, #56]
- 3714 .LVL341:
- 2848:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3715 .loc 1 2848 0
- 3716 0004 0023 movs r3, #0
- 3717 0006 C384 strh r3, [r0, #38] @ movhi
- 2851:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3718 .loc 1 2851 0
- 3719 0008 2023 movs r3, #32
- 3720 000a 80F83930 strb r3, [r0, #57]
- 2859:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3721 .loc 1 2859 0
- 3722 000e FFF7FEFF bl HAL_UART_AbortTransmitCpltCallback
- 3723 .LVL342:
- 3724 0012 08BD pop {r3, pc}
- 3725 .cfi_endproc
- 3726 .LFE179:
- 3728 .section .text.HAL_UART_AbortReceiveCpltCallback,"ax",%progbits
- 3729 .align 1
- 3730 .weak HAL_UART_AbortReceiveCpltCallback
- 3731 .syntax unified
- 3732 .thumb
- 3733 .thumb_func
- 3734 .fpu fpv4-sp-d16
- 3736 HAL_UART_AbortReceiveCpltCallback:
- 3737 .LFB160:
- 2249:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Prevent unused argument(s) compilation warning */
- 3738 .loc 1 2249 0
- 3739 .cfi_startproc
- 3740 @ args = 0, pretend = 0, frame = 0
- 3741 @ frame_needed = 0, uses_anonymous_args = 0
- 3742 @ link register save eliminated.
- 3743 .LVL343:
- 3744 0000 7047 bx lr
- 3745 .cfi_endproc
- 3746 .LFE160:
- 3748 .section .text.HAL_UART_AbortReceive_IT,"ax",%progbits
- 3749 .align 1
- 3750 .global HAL_UART_AbortReceive_IT
- 3751 .syntax unified
- 3752 .thumb
- 3753 .thumb_func
- 3754 .fpu fpv4-sp-d16
- 3756 HAL_UART_AbortReceive_IT:
- 3757 .LFB151:
- 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 3758 .loc 1 1929 0
- 3759 .cfi_startproc
- 3760 @ args = 0, pretend = 0, frame = 0
- 3761 @ frame_needed = 0, uses_anonymous_args = 0
- ARM GAS /tmp/ccD7nRW1.s page 130
- 3762 .LVL344:
- 1929:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Disable RXNE, PE and ERR (Frame error, noise error, overrun error) interrupts */
- 3763 .loc 1 1929 0
- 3764 0000 10B5 push {r4, lr}
- 3765 .LCFI45:
- 3766 .cfi_def_cfa_offset 8
- 3767 .cfi_offset 4, -8
- 3768 .cfi_offset 14, -4
- 3769 0002 0446 mov r4, r0
- 1931:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** CLEAR_BIT(huart->Instance->CR3, USART_CR3_EIE);
- 3770 .loc 1 1931 0
- 3771 0004 0268 ldr r2, [r0]
- 3772 0006 D368 ldr r3, [r2, #12]
- 3773 0008 23F49073 bic r3, r3, #288
- 3774 000c D360 str r3, [r2, #12]
- 1932:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3775 .loc 1 1932 0
- 3776 000e 0268 ldr r2, [r0]
- 3777 0010 5369 ldr r3, [r2, #20]
- 3778 0012 23F00103 bic r3, r3, #1
- 3779 0016 5361 str r3, [r2, #20]
- 1935:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3780 .loc 1 1935 0
- 3781 0018 0368 ldr r3, [r0]
- 3782 001a 5A69 ldr r2, [r3, #20]
- 3783 001c 12F0400F tst r2, #64
- 3784 0020 19D0 beq .L293
- 1937:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3785 .loc 1 1937 0
- 3786 0022 5A69 ldr r2, [r3, #20]
- 3787 0024 22F04002 bic r2, r2, #64
- 3788 0028 5A61 str r2, [r3, #20]
- 1940:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3789 .loc 1 1940 0
- 3790 002a 436B ldr r3, [r0, #52]
- 3791 002c 5BB1 cbz r3, .L294
- 1944:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3792 .loc 1 1944 0
- 3793 002e 0E4A ldr r2, .L298
- 3794 0030 1A65 str r2, [r3, #80]
- 1947:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** {
- 3795 .loc 1 1947 0
- 3796 0032 406B ldr r0, [r0, #52]
- 3797 .LVL345:
- 3798 0034 FFF7FEFF bl HAL_DMA_Abort_IT
- 3799 .LVL346:
- 3800 0038 08B9 cbnz r0, .L297
- 3801 .L295:
- 1990:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3802 .loc 1 1990 0
- 3803 003a 0020 movs r0, #0
- 3804 003c 10BD pop {r4, pc}
- 3805 .LVL347:
- 3806 .L297:
- 1950:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3807 .loc 1 1950 0
- 3808 003e 606B ldr r0, [r4, #52]
- ARM GAS /tmp/ccD7nRW1.s page 131
- 3809 0040 036D ldr r3, [r0, #80]
- 3810 0042 9847 blx r3
- 3811 .LVL348:
- 3812 0044 F9E7 b .L295
- 3813 .LVL349:
- 3814 .L294:
- 1956:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3815 .loc 1 1956 0
- 3816 0046 0023 movs r3, #0
- 3817 0048 C385 strh r3, [r0, #46] @ movhi
- 1959:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3818 .loc 1 1959 0
- 3819 004a 2023 movs r3, #32
- 3820 004c 80F83A30 strb r3, [r0, #58]
- 1967:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3821 .loc 1 1967 0
- 3822 0050 FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
- 3823 .LVL350:
- 3824 0054 F1E7 b .L295
- 3825 .LVL351:
- 3826 .L293:
- 1974:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3827 .loc 1 1974 0
- 3828 0056 0023 movs r3, #0
- 3829 0058 C385 strh r3, [r0, #46] @ movhi
- 1977:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3830 .loc 1 1977 0
- 3831 005a 2023 movs r3, #32
- 3832 005c 80F83A30 strb r3, [r0, #58]
- 1985:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3833 .loc 1 1985 0
- 3834 0060 FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
- 3835 .LVL352:
- 3836 0064 E9E7 b .L295
- 3837 .L299:
- 3838 0066 00BF .align 2
- 3839 .L298:
- 3840 0068 00000000 .word UART_DMARxOnlyAbortCallback
- 3841 .cfi_endproc
- 3842 .LFE151:
- 3844 .section .text.UART_DMARxOnlyAbortCallback,"ax",%progbits
- 3845 .align 1
- 3846 .syntax unified
- 3847 .thumb
- 3848 .thumb_func
- 3849 .fpu fpv4-sp-d16
- 3851 UART_DMARxOnlyAbortCallback:
- 3852 .LFB180:
- 2873:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** UART_HandleTypeDef *huart = (UART_HandleTypeDef *)((DMA_HandleTypeDef *)hdma)->Parent;
- 3853 .loc 1 2873 0
- 3854 .cfi_startproc
- 3855 @ args = 0, pretend = 0, frame = 0
- 3856 @ frame_needed = 0, uses_anonymous_args = 0
- 3857 .LVL353:
- 3858 0000 08B5 push {r3, lr}
- 3859 .LCFI46:
- 3860 .cfi_def_cfa_offset 8
- ARM GAS /tmp/ccD7nRW1.s page 132
- 3861 .cfi_offset 3, -8
- 3862 .cfi_offset 14, -4
- 2874:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3863 .loc 1 2874 0
- 3864 0002 806B ldr r0, [r0, #56]
- 3865 .LVL354:
- 2876:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3866 .loc 1 2876 0
- 3867 0004 0023 movs r3, #0
- 3868 0006 C385 strh r3, [r0, #46] @ movhi
- 2879:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3869 .loc 1 2879 0
- 3870 0008 2023 movs r3, #32
- 3871 000a 80F83A30 strb r3, [r0, #58]
- 2887:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** #endif /* USE_HAL_UART_REGISTER_CALLBACKS */
- 3872 .loc 1 2887 0
- 3873 000e FFF7FEFF bl HAL_UART_AbortReceiveCpltCallback
- 3874 .LVL355:
- 3875 0012 08BD pop {r3, pc}
- 3876 .cfi_endproc
- 3877 .LFE180:
- 3879 .section .text.HAL_LIN_SendBreak,"ax",%progbits
- 3880 .align 1
- 3881 .global HAL_LIN_SendBreak
- 3882 .syntax unified
- 3883 .thumb
- 3884 .thumb_func
- 3885 .fpu fpv4-sp-d16
- 3887 HAL_LIN_SendBreak:
- 3888 .LFB161:
- 2288:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 3889 .loc 1 2288 0
- 3890 .cfi_startproc
- 3891 @ args = 0, pretend = 0, frame = 0
- 3892 @ frame_needed = 0, uses_anonymous_args = 0
- 3893 @ link register save eliminated.
- 3894 .LVL356:
- 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3895 .loc 1 2293 0
- 3896 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 3897 0004 012B cmp r3, #1
- 3898 0006 12D0 beq .L304
- 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3899 .loc 1 2293 0 is_stmt 0 discriminator 2
- 3900 0008 0123 movs r3, #1
- 3901 000a 80F83830 strb r3, [r0, #56]
- 2295:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3902 .loc 1 2295 0 is_stmt 1 discriminator 2
- 3903 000e 2423 movs r3, #36
- 3904 0010 80F83930 strb r3, [r0, #57]
- 2298:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3905 .loc 1 2298 0 discriminator 2
- 3906 0014 0268 ldr r2, [r0]
- 3907 0016 D368 ldr r3, [r2, #12]
- 3908 0018 43F00103 orr r3, r3, #1
- 3909 001c D360 str r3, [r2, #12]
- 2300:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 133
- 3910 .loc 1 2300 0 discriminator 2
- 3911 001e 2023 movs r3, #32
- 3912 0020 80F83930 strb r3, [r0, #57]
- 2303:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3913 .loc 1 2303 0 discriminator 2
- 3914 0024 0023 movs r3, #0
- 3915 0026 80F83830 strb r3, [r0, #56]
- 2305:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3916 .loc 1 2305 0 discriminator 2
- 3917 002a 1846 mov r0, r3
- 3918 .LVL357:
- 3919 002c 7047 bx lr
- 3920 .LVL358:
- 3921 .L304:
- 2293:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3922 .loc 1 2293 0
- 3923 002e 0220 movs r0, #2
- 3924 .LVL359:
- 2306:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3925 .loc 1 2306 0
- 3926 0030 7047 bx lr
- 3927 .cfi_endproc
- 3928 .LFE161:
- 3930 .section .text.HAL_MultiProcessor_EnterMuteMode,"ax",%progbits
- 3931 .align 1
- 3932 .global HAL_MultiProcessor_EnterMuteMode
- 3933 .syntax unified
- 3934 .thumb
- 3935 .thumb_func
- 3936 .fpu fpv4-sp-d16
- 3938 HAL_MultiProcessor_EnterMuteMode:
- 3939 .LFB162:
- 2315:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 3940 .loc 1 2315 0
- 3941 .cfi_startproc
- 3942 @ args = 0, pretend = 0, frame = 0
- 3943 @ frame_needed = 0, uses_anonymous_args = 0
- 3944 @ link register save eliminated.
- 3945 .LVL360:
- 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3946 .loc 1 2320 0
- 3947 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 3948 0004 012B cmp r3, #1
- 3949 0006 12D0 beq .L307
- 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3950 .loc 1 2320 0 is_stmt 0 discriminator 2
- 3951 0008 0123 movs r3, #1
- 3952 000a 80F83830 strb r3, [r0, #56]
- 2322:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3953 .loc 1 2322 0 is_stmt 1 discriminator 2
- 3954 000e 2423 movs r3, #36
- 3955 0010 80F83930 strb r3, [r0, #57]
- 2325:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3956 .loc 1 2325 0 discriminator 2
- 3957 0014 0268 ldr r2, [r0]
- 3958 0016 D368 ldr r3, [r2, #12]
- 3959 0018 43F00203 orr r3, r3, #2
- ARM GAS /tmp/ccD7nRW1.s page 134
- 3960 001c D360 str r3, [r2, #12]
- 2327:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3961 .loc 1 2327 0 discriminator 2
- 3962 001e 2023 movs r3, #32
- 3963 0020 80F83930 strb r3, [r0, #57]
- 2330:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3964 .loc 1 2330 0 discriminator 2
- 3965 0024 0023 movs r3, #0
- 3966 0026 80F83830 strb r3, [r0, #56]
- 2332:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 3967 .loc 1 2332 0 discriminator 2
- 3968 002a 1846 mov r0, r3
- 3969 .LVL361:
- 3970 002c 7047 bx lr
- 3971 .LVL362:
- 3972 .L307:
- 2320:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3973 .loc 1 2320 0
- 3974 002e 0220 movs r0, #2
- 3975 .LVL363:
- 2333:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3976 .loc 1 2333 0
- 3977 0030 7047 bx lr
- 3978 .cfi_endproc
- 3979 .LFE162:
- 3981 .section .text.HAL_MultiProcessor_ExitMuteMode,"ax",%progbits
- 3982 .align 1
- 3983 .global HAL_MultiProcessor_ExitMuteMode
- 3984 .syntax unified
- 3985 .thumb
- 3986 .thumb_func
- 3987 .fpu fpv4-sp-d16
- 3989 HAL_MultiProcessor_ExitMuteMode:
- 3990 .LFB163:
- 2342:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** /* Check the parameters */
- 3991 .loc 1 2342 0
- 3992 .cfi_startproc
- 3993 @ args = 0, pretend = 0, frame = 0
- 3994 @ frame_needed = 0, uses_anonymous_args = 0
- 3995 @ link register save eliminated.
- 3996 .LVL364:
- 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 3997 .loc 1 2347 0
- 3998 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 3999 0004 012B cmp r3, #1
- 4000 0006 12D0 beq .L310
- 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4001 .loc 1 2347 0 is_stmt 0 discriminator 2
- 4002 0008 0123 movs r3, #1
- 4003 000a 80F83830 strb r3, [r0, #56]
- 2349:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4004 .loc 1 2349 0 is_stmt 1 discriminator 2
- 4005 000e 2423 movs r3, #36
- 4006 0010 80F83930 strb r3, [r0, #57]
- 2352:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4007 .loc 1 2352 0 discriminator 2
- 4008 0014 0268 ldr r2, [r0]
- ARM GAS /tmp/ccD7nRW1.s page 135
- 4009 0016 D368 ldr r3, [r2, #12]
- 4010 0018 23F00203 bic r3, r3, #2
- 4011 001c D360 str r3, [r2, #12]
- 2354:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4012 .loc 1 2354 0 discriminator 2
- 4013 001e 2023 movs r3, #32
- 4014 0020 80F83930 strb r3, [r0, #57]
- 2357:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4015 .loc 1 2357 0 discriminator 2
- 4016 0024 0023 movs r3, #0
- 4017 0026 80F83830 strb r3, [r0, #56]
- 2359:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 4018 .loc 1 2359 0 discriminator 2
- 4019 002a 1846 mov r0, r3
- 4020 .LVL365:
- 4021 002c 7047 bx lr
- 4022 .LVL366:
- 4023 .L310:
- 2347:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4024 .loc 1 2347 0
- 4025 002e 0220 movs r0, #2
- 4026 .LVL367:
- 2360:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4027 .loc 1 2360 0
- 4028 0030 7047 bx lr
- 4029 .cfi_endproc
- 4030 .LFE163:
- 4032 .section .text.HAL_HalfDuplex_EnableTransmitter,"ax",%progbits
- 4033 .align 1
- 4034 .global HAL_HalfDuplex_EnableTransmitter
- 4035 .syntax unified
- 4036 .thumb
- 4037 .thumb_func
- 4038 .fpu fpv4-sp-d16
- 4040 HAL_HalfDuplex_EnableTransmitter:
- 4041 .LFB164:
- 2369:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
- 4042 .loc 1 2369 0
- 4043 .cfi_startproc
- 4044 @ args = 0, pretend = 0, frame = 0
- 4045 @ frame_needed = 0, uses_anonymous_args = 0
- 4046 @ link register save eliminated.
- 4047 .LVL368:
- 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4048 .loc 1 2373 0
- 4049 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 4050 0004 012B cmp r3, #1
- 4051 0006 14D0 beq .L313
- 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4052 .loc 1 2373 0 is_stmt 0 discriminator 2
- 4053 0008 0123 movs r3, #1
- 4054 000a 80F83830 strb r3, [r0, #56]
- 2375:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4055 .loc 1 2375 0 is_stmt 1 discriminator 2
- 4056 000e 2423 movs r3, #36
- 4057 0010 80F83930 strb r3, [r0, #57]
- 2378:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- ARM GAS /tmp/ccD7nRW1.s page 136
- 4058 .loc 1 2378 0 discriminator 2
- 4059 0014 0268 ldr r2, [r0]
- 4060 0016 D368 ldr r3, [r2, #12]
- 4061 .LVL369:
- 2381:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4062 .loc 1 2381 0 discriminator 2
- 4063 0018 23F00C03 bic r3, r3, #12
- 4064 .LVL370:
- 2384:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4065 .loc 1 2384 0 discriminator 2
- 4066 001c 43F00803 orr r3, r3, #8
- 4067 .LVL371:
- 2387:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4068 .loc 1 2387 0 discriminator 2
- 4069 0020 D360 str r3, [r2, #12]
- 2389:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4070 .loc 1 2389 0 discriminator 2
- 4071 0022 2023 movs r3, #32
- 4072 .LVL372:
- 4073 0024 80F83930 strb r3, [r0, #57]
- 4074 .LVL373:
- 2392:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4075 .loc 1 2392 0 discriminator 2
- 4076 0028 0023 movs r3, #0
- 4077 002a 80F83830 strb r3, [r0, #56]
- 2394:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 4078 .loc 1 2394 0 discriminator 2
- 4079 002e 1846 mov r0, r3
- 4080 .LVL374:
- 4081 0030 7047 bx lr
- 4082 .LVL375:
- 4083 .L313:
- 2373:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4084 .loc 1 2373 0
- 4085 0032 0220 movs r0, #2
- 4086 .LVL376:
- 2395:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4087 .loc 1 2395 0
- 4088 0034 7047 bx lr
- 4089 .cfi_endproc
- 4090 .LFE164:
- 4092 .section .text.HAL_HalfDuplex_EnableReceiver,"ax",%progbits
- 4093 .align 1
- 4094 .global HAL_HalfDuplex_EnableReceiver
- 4095 .syntax unified
- 4096 .thumb
- 4097 .thumb_func
- 4098 .fpu fpv4-sp-d16
- 4100 HAL_HalfDuplex_EnableReceiver:
- 4101 .LFB165:
- 2404:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t tmpreg = 0x00U;
- 4102 .loc 1 2404 0
- 4103 .cfi_startproc
- 4104 @ args = 0, pretend = 0, frame = 0
- 4105 @ frame_needed = 0, uses_anonymous_args = 0
- 4106 @ link register save eliminated.
- 4107 .LVL377:
- ARM GAS /tmp/ccD7nRW1.s page 137
- 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4108 .loc 1 2408 0
- 4109 0000 90F83830 ldrb r3, [r0, #56] @ zero_extendqisi2
- 4110 0004 012B cmp r3, #1
- 4111 0006 14D0 beq .L316
- 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4112 .loc 1 2408 0 is_stmt 0 discriminator 2
- 4113 0008 0123 movs r3, #1
- 4114 000a 80F83830 strb r3, [r0, #56]
- 2410:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4115 .loc 1 2410 0 is_stmt 1 discriminator 2
- 4116 000e 2423 movs r3, #36
- 4117 0010 80F83930 strb r3, [r0, #57]
- 2413:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4118 .loc 1 2413 0 discriminator 2
- 4119 0014 0268 ldr r2, [r0]
- 4120 0016 D368 ldr r3, [r2, #12]
- 4121 .LVL378:
- 2416:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4122 .loc 1 2416 0 discriminator 2
- 4123 0018 23F00C03 bic r3, r3, #12
- 4124 .LVL379:
- 2419:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4125 .loc 1 2419 0 discriminator 2
- 4126 001c 43F00403 orr r3, r3, #4
- 4127 .LVL380:
- 2422:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4128 .loc 1 2422 0 discriminator 2
- 4129 0020 D360 str r3, [r2, #12]
- 2424:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4130 .loc 1 2424 0 discriminator 2
- 4131 0022 2023 movs r3, #32
- 4132 .LVL381:
- 4133 0024 80F83930 strb r3, [r0, #57]
- 4134 .LVL382:
- 2427:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4135 .loc 1 2427 0 discriminator 2
- 4136 0028 0023 movs r3, #0
- 4137 002a 80F83830 strb r3, [r0, #56]
- 2429:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 4138 .loc 1 2429 0 discriminator 2
- 4139 002e 1846 mov r0, r3
- 4140 .LVL383:
- 4141 0030 7047 bx lr
- 4142 .LVL384:
- 4143 .L316:
- 2408:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4144 .loc 1 2408 0
- 4145 0032 0220 movs r0, #2
- 4146 .LVL385:
- 2430:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4147 .loc 1 2430 0
- 4148 0034 7047 bx lr
- 4149 .cfi_endproc
- 4150 .LFE165:
- 4152 .section .text.HAL_UART_GetState,"ax",%progbits
- 4153 .align 1
- ARM GAS /tmp/ccD7nRW1.s page 138
- 4154 .global HAL_UART_GetState
- 4155 .syntax unified
- 4156 .thumb
- 4157 .thumb_func
- 4158 .fpu fpv4-sp-d16
- 4160 HAL_UART_GetState:
- 4161 .LFB166:
- 2461:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** uint32_t temp1 = 0x00U, temp2 = 0x00U;
- 4162 .loc 1 2461 0
- 4163 .cfi_startproc
- 4164 @ args = 0, pretend = 0, frame = 0
- 4165 @ frame_needed = 0, uses_anonymous_args = 0
- 4166 @ link register save eliminated.
- 4167 .LVL386:
- 2463:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** temp2 = huart->RxState;
- 4168 .loc 1 2463 0
- 4169 0000 90F83930 ldrb r3, [r0, #57] @ zero_extendqisi2
- 4170 .LVL387:
- 2464:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4171 .loc 1 2464 0
- 4172 0004 90F83A00 ldrb r0, [r0, #58] @ zero_extendqisi2
- 4173 .LVL388:
- 2467:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4174 .loc 1 2467 0
- 4175 0008 1843 orrs r0, r0, r3
- 4176 .LVL389:
- 4177 000a 7047 bx lr
- 4178 .cfi_endproc
- 4179 .LFE166:
- 4181 .section .text.HAL_UART_GetError,"ax",%progbits
- 4182 .align 1
- 4183 .global HAL_UART_GetError
- 4184 .syntax unified
- 4185 .thumb
- 4186 .thumb_func
- 4187 .fpu fpv4-sp-d16
- 4189 HAL_UART_GetError:
- 4190 .LFB167:
- 2476:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** return huart->ErrorCode;
- 4191 .loc 1 2476 0
- 4192 .cfi_startproc
- 4193 @ args = 0, pretend = 0, frame = 0
- 4194 @ frame_needed = 0, uses_anonymous_args = 0
- 4195 @ link register save eliminated.
- 4196 .LVL390:
- 2477:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c **** }
- 4197 .loc 1 2477 0
- 4198 0000 C06B ldr r0, [r0, #60]
- 4199 .LVL391:
- 2478:Drivers/STM32F4xx_HAL_Driver/Src/stm32f4xx_hal_uart.c ****
- 4200 .loc 1 2478 0
- 4201 0002 7047 bx lr
- 4202 .cfi_endproc
- 4203 .LFE167:
- 4205 .text
- 4206 .Letext0:
- 4207 .file 2 "/usr/include/newlib/machine/_default_types.h"
- ARM GAS /tmp/ccD7nRW1.s page 139
- 4208 .file 3 "/usr/include/newlib/sys/_stdint.h"
- 4209 .file 4 "Drivers/CMSIS/Include/core_cm4.h"
- 4210 .file 5 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/system_stm32f4xx.h"
- 4211 .file 6 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f407xx.h"
- 4212 .file 7 "Drivers/CMSIS/Device/ST/STM32F4xx/Include/stm32f4xx.h"
- 4213 .file 8 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_def.h"
- 4214 .file 9 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_dma.h"
- 4215 .file 10 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_uart.h"
- 4216 .file 11 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal_rcc.h"
- 4217 .file 12 "Drivers/STM32F4xx_HAL_Driver/Inc/stm32f4xx_hal.h"
- ARM GAS /tmp/ccD7nRW1.s page 140
- DEFINED SYMBOLS
- *ABS*:0000000000000000 stm32f4xx_hal_uart.c
- /tmp/ccD7nRW1.s:18 .text.UART_EndTxTransfer:0000000000000000 $t
- /tmp/ccD7nRW1.s:24 .text.UART_EndTxTransfer:0000000000000000 UART_EndTxTransfer
- /tmp/ccD7nRW1.s:46 .text.UART_EndRxTransfer:0000000000000000 $t
- /tmp/ccD7nRW1.s:52 .text.UART_EndRxTransfer:0000000000000000 UART_EndRxTransfer
- /tmp/ccD7nRW1.s:78 .text.UART_Transmit_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:84 .text.UART_Transmit_IT:0000000000000000 UART_Transmit_IT
- /tmp/ccD7nRW1.s:172 .text.UART_SetConfig:0000000000000000 $t
- /tmp/ccD7nRW1.s:178 .text.UART_SetConfig:0000000000000000 UART_SetConfig
- /tmp/ccD7nRW1.s:504 .text.UART_SetConfig:000000000000033c $d
- /tmp/ccD7nRW1.s:510 .text.UART_WaitOnFlagUntilTimeout:0000000000000000 $t
- /tmp/ccD7nRW1.s:516 .text.UART_WaitOnFlagUntilTimeout:0000000000000000 UART_WaitOnFlagUntilTimeout
- /tmp/ccD7nRW1.s:591 .text.HAL_UART_MspInit:0000000000000000 $t
- /tmp/ccD7nRW1.s:598 .text.HAL_UART_MspInit:0000000000000000 HAL_UART_MspInit
- /tmp/ccD7nRW1.s:611 .text.HAL_UART_Init:0000000000000000 $t
- /tmp/ccD7nRW1.s:618 .text.HAL_UART_Init:0000000000000000 HAL_UART_Init
- /tmp/ccD7nRW1.s:698 .text.HAL_HalfDuplex_Init:0000000000000000 $t
- /tmp/ccD7nRW1.s:705 .text.HAL_HalfDuplex_Init:0000000000000000 HAL_HalfDuplex_Init
- /tmp/ccD7nRW1.s:791 .text.HAL_LIN_Init:0000000000000000 $t
- /tmp/ccD7nRW1.s:798 .text.HAL_LIN_Init:0000000000000000 HAL_LIN_Init
- /tmp/ccD7nRW1.s:901 .text.HAL_MultiProcessor_Init:0000000000000000 $t
- /tmp/ccD7nRW1.s:908 .text.HAL_MultiProcessor_Init:0000000000000000 HAL_MultiProcessor_Init
- /tmp/ccD7nRW1.s:1016 .text.HAL_UART_MspDeInit:0000000000000000 $t
- /tmp/ccD7nRW1.s:1023 .text.HAL_UART_MspDeInit:0000000000000000 HAL_UART_MspDeInit
- /tmp/ccD7nRW1.s:1036 .text.HAL_UART_DeInit:0000000000000000 $t
- /tmp/ccD7nRW1.s:1043 .text.HAL_UART_DeInit:0000000000000000 HAL_UART_DeInit
- /tmp/ccD7nRW1.s:1095 .text.HAL_UART_Transmit:0000000000000000 $t
- /tmp/ccD7nRW1.s:1102 .text.HAL_UART_Transmit:0000000000000000 HAL_UART_Transmit
- /tmp/ccD7nRW1.s:1288 .text.HAL_UART_Receive:0000000000000000 $t
- /tmp/ccD7nRW1.s:1295 .text.HAL_UART_Receive:0000000000000000 HAL_UART_Receive
- /tmp/ccD7nRW1.s:1485 .text.HAL_UART_Transmit_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:1492 .text.HAL_UART_Transmit_IT:0000000000000000 HAL_UART_Transmit_IT
- /tmp/ccD7nRW1.s:1567 .text.HAL_UART_Receive_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:1574 .text.HAL_UART_Receive_IT:0000000000000000 HAL_UART_Receive_IT
- /tmp/ccD7nRW1.s:1659 .text.HAL_UART_Transmit_DMA:0000000000000000 $t
- /tmp/ccD7nRW1.s:1666 .text.HAL_UART_Transmit_DMA:0000000000000000 HAL_UART_Transmit_DMA
- /tmp/ccD7nRW1.s:1776 .text.HAL_UART_Transmit_DMA:0000000000000080 $d
- /tmp/ccD7nRW1.s:2519 .text.UART_DMATransmitCplt:0000000000000000 UART_DMATransmitCplt
- /tmp/ccD7nRW1.s:2629 .text.UART_DMATxHalfCplt:0000000000000000 UART_DMATxHalfCplt
- /tmp/ccD7nRW1.s:2933 .text.UART_DMAError:0000000000000000 UART_DMAError
- /tmp/ccD7nRW1.s:1783 .text.HAL_UART_Receive_DMA:0000000000000000 $t
- /tmp/ccD7nRW1.s:1790 .text.HAL_UART_Receive_DMA:0000000000000000 HAL_UART_Receive_DMA
- /tmp/ccD7nRW1.s:1925 .text.HAL_UART_Receive_DMA:000000000000009c $d
- /tmp/ccD7nRW1.s:2679 .text.UART_DMAReceiveCplt:0000000000000000 UART_DMAReceiveCplt
- /tmp/ccD7nRW1.s:2883 .text.UART_DMARxHalfCplt:0000000000000000 UART_DMARxHalfCplt
- /tmp/ccD7nRW1.s:1932 .text.HAL_UART_DMAPause:0000000000000000 $t
- /tmp/ccD7nRW1.s:1939 .text.HAL_UART_DMAPause:0000000000000000 HAL_UART_DMAPause
- /tmp/ccD7nRW1.s:2026 .text.HAL_UART_DMAResume:0000000000000000 $t
- /tmp/ccD7nRW1.s:2033 .text.HAL_UART_DMAResume:0000000000000000 HAL_UART_DMAResume
- /tmp/ccD7nRW1.s:2127 .text.HAL_UART_DMAStop:0000000000000000 $t
- /tmp/ccD7nRW1.s:2134 .text.HAL_UART_DMAStop:0000000000000000 HAL_UART_DMAStop
- /tmp/ccD7nRW1.s:2223 .text.HAL_UART_Abort:0000000000000000 $t
- /tmp/ccD7nRW1.s:2230 .text.HAL_UART_Abort:0000000000000000 HAL_UART_Abort
- /tmp/ccD7nRW1.s:2342 .text.HAL_UART_AbortTransmit:0000000000000000 $t
- /tmp/ccD7nRW1.s:2349 .text.HAL_UART_AbortTransmit:0000000000000000 HAL_UART_AbortTransmit
- /tmp/ccD7nRW1.s:2415 .text.HAL_UART_AbortReceive:0000000000000000 $t
- ARM GAS /tmp/ccD7nRW1.s page 141
- /tmp/ccD7nRW1.s:2422 .text.HAL_UART_AbortReceive:0000000000000000 HAL_UART_AbortReceive
- /tmp/ccD7nRW1.s:2493 .text.HAL_UART_TxCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:2500 .text.HAL_UART_TxCpltCallback:0000000000000000 HAL_UART_TxCpltCallback
- /tmp/ccD7nRW1.s:2513 .text.UART_DMATransmitCplt:0000000000000000 $t
- /tmp/ccD7nRW1.s:2567 .text.UART_EndTransmit_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:2573 .text.UART_EndTransmit_IT:0000000000000000 UART_EndTransmit_IT
- /tmp/ccD7nRW1.s:2603 .text.HAL_UART_TxHalfCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:2610 .text.HAL_UART_TxHalfCpltCallback:0000000000000000 HAL_UART_TxHalfCpltCallback
- /tmp/ccD7nRW1.s:2623 .text.UART_DMATxHalfCplt:0000000000000000 $t
- /tmp/ccD7nRW1.s:2653 .text.HAL_UART_RxCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:2660 .text.HAL_UART_RxCpltCallback:0000000000000000 HAL_UART_RxCpltCallback
- /tmp/ccD7nRW1.s:2673 .text.UART_DMAReceiveCplt:0000000000000000 $t
- /tmp/ccD7nRW1.s:2732 .text.UART_Receive_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:2738 .text.UART_Receive_IT:0000000000000000 UART_Receive_IT
- /tmp/ccD7nRW1.s:2857 .text.HAL_UART_RxHalfCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:2864 .text.HAL_UART_RxHalfCpltCallback:0000000000000000 HAL_UART_RxHalfCpltCallback
- /tmp/ccD7nRW1.s:2877 .text.UART_DMARxHalfCplt:0000000000000000 $t
- /tmp/ccD7nRW1.s:2907 .text.HAL_UART_ErrorCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:2914 .text.HAL_UART_ErrorCallback:0000000000000000 HAL_UART_ErrorCallback
- /tmp/ccD7nRW1.s:2927 .text.UART_DMAError:0000000000000000 $t
- /tmp/ccD7nRW1.s:3015 .text.HAL_UART_IRQHandler:0000000000000000 $t
- /tmp/ccD7nRW1.s:3022 .text.HAL_UART_IRQHandler:0000000000000000 HAL_UART_IRQHandler
- /tmp/ccD7nRW1.s:3242 .text.HAL_UART_IRQHandler:000000000000011c $d
- /tmp/ccD7nRW1.s:3253 .text.UART_DMAAbortOnError:0000000000000000 UART_DMAAbortOnError
- /tmp/ccD7nRW1.s:3247 .text.UART_DMAAbortOnError:0000000000000000 $t
- /tmp/ccD7nRW1.s:3281 .text.HAL_UART_AbortCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3288 .text.HAL_UART_AbortCpltCallback:0000000000000000 HAL_UART_AbortCpltCallback
- /tmp/ccD7nRW1.s:3301 .text.HAL_UART_Abort_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:3308 .text.HAL_UART_Abort_IT:0000000000000000 HAL_UART_Abort_IT
- /tmp/ccD7nRW1.s:3465 .text.HAL_UART_Abort_IT:00000000000000c0 $d
- /tmp/ccD7nRW1.s:3533 .text.UART_DMATxAbortCallback:0000000000000000 UART_DMATxAbortCallback
- /tmp/ccD7nRW1.s:3477 .text.UART_DMARxAbortCallback:0000000000000000 UART_DMARxAbortCallback
- /tmp/ccD7nRW1.s:3471 .text.UART_DMARxAbortCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3527 .text.UART_DMATxAbortCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3583 .text.HAL_UART_AbortTransmitCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3590 .text.HAL_UART_AbortTransmitCpltCallback:0000000000000000 HAL_UART_AbortTransmitCpltCallback
- /tmp/ccD7nRW1.s:3603 .text.HAL_UART_AbortTransmit_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:3610 .text.HAL_UART_AbortTransmit_IT:0000000000000000 HAL_UART_AbortTransmit_IT
- /tmp/ccD7nRW1.s:3689 .text.HAL_UART_AbortTransmit_IT:000000000000005c $d
- /tmp/ccD7nRW1.s:3700 .text.UART_DMATxOnlyAbortCallback:0000000000000000 UART_DMATxOnlyAbortCallback
- /tmp/ccD7nRW1.s:3694 .text.UART_DMATxOnlyAbortCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3729 .text.HAL_UART_AbortReceiveCpltCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3736 .text.HAL_UART_AbortReceiveCpltCallback:0000000000000000 HAL_UART_AbortReceiveCpltCallback
- /tmp/ccD7nRW1.s:3749 .text.HAL_UART_AbortReceive_IT:0000000000000000 $t
- /tmp/ccD7nRW1.s:3756 .text.HAL_UART_AbortReceive_IT:0000000000000000 HAL_UART_AbortReceive_IT
- /tmp/ccD7nRW1.s:3840 .text.HAL_UART_AbortReceive_IT:0000000000000068 $d
- /tmp/ccD7nRW1.s:3851 .text.UART_DMARxOnlyAbortCallback:0000000000000000 UART_DMARxOnlyAbortCallback
- /tmp/ccD7nRW1.s:3845 .text.UART_DMARxOnlyAbortCallback:0000000000000000 $t
- /tmp/ccD7nRW1.s:3880 .text.HAL_LIN_SendBreak:0000000000000000 $t
- /tmp/ccD7nRW1.s:3887 .text.HAL_LIN_SendBreak:0000000000000000 HAL_LIN_SendBreak
- /tmp/ccD7nRW1.s:3931 .text.HAL_MultiProcessor_EnterMuteMode:0000000000000000 $t
- /tmp/ccD7nRW1.s:3938 .text.HAL_MultiProcessor_EnterMuteMode:0000000000000000 HAL_MultiProcessor_EnterMuteMode
- /tmp/ccD7nRW1.s:3982 .text.HAL_MultiProcessor_ExitMuteMode:0000000000000000 $t
- /tmp/ccD7nRW1.s:3989 .text.HAL_MultiProcessor_ExitMuteMode:0000000000000000 HAL_MultiProcessor_ExitMuteMode
- /tmp/ccD7nRW1.s:4033 .text.HAL_HalfDuplex_EnableTransmitter:0000000000000000 $t
- /tmp/ccD7nRW1.s:4040 .text.HAL_HalfDuplex_EnableTransmitter:0000000000000000 HAL_HalfDuplex_EnableTransmitter
- /tmp/ccD7nRW1.s:4093 .text.HAL_HalfDuplex_EnableReceiver:0000000000000000 $t
- ARM GAS /tmp/ccD7nRW1.s page 142
- /tmp/ccD7nRW1.s:4100 .text.HAL_HalfDuplex_EnableReceiver:0000000000000000 HAL_HalfDuplex_EnableReceiver
- /tmp/ccD7nRW1.s:4153 .text.HAL_UART_GetState:0000000000000000 $t
- /tmp/ccD7nRW1.s:4160 .text.HAL_UART_GetState:0000000000000000 HAL_UART_GetState
- /tmp/ccD7nRW1.s:4182 .text.HAL_UART_GetError:0000000000000000 $t
- /tmp/ccD7nRW1.s:4189 .text.HAL_UART_GetError:0000000000000000 HAL_UART_GetError
- .debug_frame:0000000000000010 $d
- UNDEFINED SYMBOLS
- HAL_RCC_GetPCLK1Freq
- HAL_RCC_GetPCLK2Freq
- HAL_GetTick
- HAL_DMA_Start_IT
- HAL_DMA_Abort
- HAL_DMA_GetError
- HAL_DMA_Abort_IT
|