stm32f3xx_hal_cortex.lst 416 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411
  1. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 1
  2. 1 .cpu cortex-m4
  3. 2 .arch armv7e-m
  4. 3 .fpu fpv4-sp-d16
  5. 4 .eabi_attribute 27, 1
  6. 5 .eabi_attribute 28, 1
  7. 6 .eabi_attribute 20, 1
  8. 7 .eabi_attribute 21, 1
  9. 8 .eabi_attribute 23, 3
  10. 9 .eabi_attribute 24, 1
  11. 10 .eabi_attribute 25, 1
  12. 11 .eabi_attribute 26, 1
  13. 12 .eabi_attribute 30, 6
  14. 13 .eabi_attribute 34, 1
  15. 14 .eabi_attribute 18, 4
  16. 15 .file "stm32f3xx_hal_cortex.c"
  17. 16 .text
  18. 17 .Ltext0:
  19. 18 .cfi_sections .debug_frame
  20. 19 .section .text.__NVIC_SetPriorityGrouping,"ax",%progbits
  21. 20 .align 1
  22. 21 .syntax unified
  23. 22 .thumb
  24. 23 .thumb_func
  25. 25 __NVIC_SetPriorityGrouping:
  26. 26 .LFB102:
  27. 27 .file 1 "Drivers/CMSIS/Include/core_cm4.h"
  28. 1:Drivers/CMSIS/Include/core_cm4.h **** /**************************************************************************//**
  29. 2:Drivers/CMSIS/Include/core_cm4.h **** * @file core_cm4.h
  30. 3:Drivers/CMSIS/Include/core_cm4.h **** * @brief CMSIS Cortex-M4 Core Peripheral Access Layer Header File
  31. 4:Drivers/CMSIS/Include/core_cm4.h **** * @version V5.0.8
  32. 5:Drivers/CMSIS/Include/core_cm4.h **** * @date 04. June 2018
  33. 6:Drivers/CMSIS/Include/core_cm4.h **** ******************************************************************************/
  34. 7:Drivers/CMSIS/Include/core_cm4.h **** /*
  35. 8:Drivers/CMSIS/Include/core_cm4.h **** * Copyright (c) 2009-2018 Arm Limited. All rights reserved.
  36. 9:Drivers/CMSIS/Include/core_cm4.h **** *
  37. 10:Drivers/CMSIS/Include/core_cm4.h **** * SPDX-License-Identifier: Apache-2.0
  38. 11:Drivers/CMSIS/Include/core_cm4.h **** *
  39. 12:Drivers/CMSIS/Include/core_cm4.h **** * Licensed under the Apache License, Version 2.0 (the License); you may
  40. 13:Drivers/CMSIS/Include/core_cm4.h **** * not use this file except in compliance with the License.
  41. 14:Drivers/CMSIS/Include/core_cm4.h **** * You may obtain a copy of the License at
  42. 15:Drivers/CMSIS/Include/core_cm4.h **** *
  43. 16:Drivers/CMSIS/Include/core_cm4.h **** * www.apache.org/licenses/LICENSE-2.0
  44. 17:Drivers/CMSIS/Include/core_cm4.h **** *
  45. 18:Drivers/CMSIS/Include/core_cm4.h **** * Unless required by applicable law or agreed to in writing, software
  46. 19:Drivers/CMSIS/Include/core_cm4.h **** * distributed under the License is distributed on an AS IS BASIS, WITHOUT
  47. 20:Drivers/CMSIS/Include/core_cm4.h **** * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  48. 21:Drivers/CMSIS/Include/core_cm4.h **** * See the License for the specific language governing permissions and
  49. 22:Drivers/CMSIS/Include/core_cm4.h **** * limitations under the License.
  50. 23:Drivers/CMSIS/Include/core_cm4.h **** */
  51. 24:Drivers/CMSIS/Include/core_cm4.h ****
  52. 25:Drivers/CMSIS/Include/core_cm4.h **** #if defined ( __ICCARM__ )
  53. 26:Drivers/CMSIS/Include/core_cm4.h **** #pragma system_include /* treat file as system include file for MISRA check */
  54. 27:Drivers/CMSIS/Include/core_cm4.h **** #elif defined (__clang__)
  55. 28:Drivers/CMSIS/Include/core_cm4.h **** #pragma clang system_header /* treat file as system include file */
  56. 29:Drivers/CMSIS/Include/core_cm4.h **** #endif
  57. 30:Drivers/CMSIS/Include/core_cm4.h ****
  58. 31:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __CORE_CM4_H_GENERIC
  59. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 2
  60. 32:Drivers/CMSIS/Include/core_cm4.h **** #define __CORE_CM4_H_GENERIC
  61. 33:Drivers/CMSIS/Include/core_cm4.h ****
  62. 34:Drivers/CMSIS/Include/core_cm4.h **** #include <stdint.h>
  63. 35:Drivers/CMSIS/Include/core_cm4.h ****
  64. 36:Drivers/CMSIS/Include/core_cm4.h **** #ifdef __cplusplus
  65. 37:Drivers/CMSIS/Include/core_cm4.h **** extern "C" {
  66. 38:Drivers/CMSIS/Include/core_cm4.h **** #endif
  67. 39:Drivers/CMSIS/Include/core_cm4.h ****
  68. 40:Drivers/CMSIS/Include/core_cm4.h **** /**
  69. 41:Drivers/CMSIS/Include/core_cm4.h **** \page CMSIS_MISRA_Exceptions MISRA-C:2004 Compliance Exceptions
  70. 42:Drivers/CMSIS/Include/core_cm4.h **** CMSIS violates the following MISRA-C:2004 rules:
  71. 43:Drivers/CMSIS/Include/core_cm4.h ****
  72. 44:Drivers/CMSIS/Include/core_cm4.h **** \li Required Rule 8.5, object/function definition in header file.<br>
  73. 45:Drivers/CMSIS/Include/core_cm4.h **** Function definitions in header files are used to allow 'inlining'.
  74. 46:Drivers/CMSIS/Include/core_cm4.h ****
  75. 47:Drivers/CMSIS/Include/core_cm4.h **** \li Required Rule 18.4, declaration of union type or object of union type: '{...}'.<br>
  76. 48:Drivers/CMSIS/Include/core_cm4.h **** Unions are used for effective representation of core registers.
  77. 49:Drivers/CMSIS/Include/core_cm4.h ****
  78. 50:Drivers/CMSIS/Include/core_cm4.h **** \li Advisory Rule 19.7, Function-like macro defined.<br>
  79. 51:Drivers/CMSIS/Include/core_cm4.h **** Function-like macros are used to allow more efficient code.
  80. 52:Drivers/CMSIS/Include/core_cm4.h **** */
  81. 53:Drivers/CMSIS/Include/core_cm4.h ****
  82. 54:Drivers/CMSIS/Include/core_cm4.h ****
  83. 55:Drivers/CMSIS/Include/core_cm4.h **** /*******************************************************************************
  84. 56:Drivers/CMSIS/Include/core_cm4.h **** * CMSIS definitions
  85. 57:Drivers/CMSIS/Include/core_cm4.h **** ******************************************************************************/
  86. 58:Drivers/CMSIS/Include/core_cm4.h **** /**
  87. 59:Drivers/CMSIS/Include/core_cm4.h **** \ingroup Cortex_M4
  88. 60:Drivers/CMSIS/Include/core_cm4.h **** @{
  89. 61:Drivers/CMSIS/Include/core_cm4.h **** */
  90. 62:Drivers/CMSIS/Include/core_cm4.h ****
  91. 63:Drivers/CMSIS/Include/core_cm4.h **** #include "cmsis_version.h"
  92. 64:Drivers/CMSIS/Include/core_cm4.h ****
  93. 65:Drivers/CMSIS/Include/core_cm4.h **** /* CMSIS CM4 definitions */
  94. 66:Drivers/CMSIS/Include/core_cm4.h **** #define __CM4_CMSIS_VERSION_MAIN (__CM_CMSIS_VERSION_MAIN) /*!< \deprecated [31:16] C
  95. 67:Drivers/CMSIS/Include/core_cm4.h **** #define __CM4_CMSIS_VERSION_SUB (__CM_CMSIS_VERSION_SUB) /*!< \deprecated [15:0] C
  96. 68:Drivers/CMSIS/Include/core_cm4.h **** #define __CM4_CMSIS_VERSION ((__CM4_CMSIS_VERSION_MAIN << 16U) | \
  97. 69:Drivers/CMSIS/Include/core_cm4.h **** __CM4_CMSIS_VERSION_SUB ) /*!< \deprecated CMSIS HAL
  98. 70:Drivers/CMSIS/Include/core_cm4.h ****
  99. 71:Drivers/CMSIS/Include/core_cm4.h **** #define __CORTEX_M (4U) /*!< Cortex-M Core */
  100. 72:Drivers/CMSIS/Include/core_cm4.h ****
  101. 73:Drivers/CMSIS/Include/core_cm4.h **** /** __FPU_USED indicates whether an FPU is used or not.
  102. 74:Drivers/CMSIS/Include/core_cm4.h **** For this, __FPU_PRESENT has to be checked prior to making use of FPU specific registers and fun
  103. 75:Drivers/CMSIS/Include/core_cm4.h **** */
  104. 76:Drivers/CMSIS/Include/core_cm4.h **** #if defined ( __CC_ARM )
  105. 77:Drivers/CMSIS/Include/core_cm4.h **** #if defined __TARGET_FPU_VFP
  106. 78:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  107. 79:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  108. 80:Drivers/CMSIS/Include/core_cm4.h **** #else
  109. 81:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  110. 82:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  111. 83:Drivers/CMSIS/Include/core_cm4.h **** #endif
  112. 84:Drivers/CMSIS/Include/core_cm4.h **** #else
  113. 85:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  114. 86:Drivers/CMSIS/Include/core_cm4.h **** #endif
  115. 87:Drivers/CMSIS/Include/core_cm4.h ****
  116. 88:Drivers/CMSIS/Include/core_cm4.h **** #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050)
  117. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 3
  118. 89:Drivers/CMSIS/Include/core_cm4.h **** #if defined __ARM_PCS_VFP
  119. 90:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  120. 91:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  121. 92:Drivers/CMSIS/Include/core_cm4.h **** #else
  122. 93:Drivers/CMSIS/Include/core_cm4.h **** #warning "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESEN
  123. 94:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  124. 95:Drivers/CMSIS/Include/core_cm4.h **** #endif
  125. 96:Drivers/CMSIS/Include/core_cm4.h **** #else
  126. 97:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  127. 98:Drivers/CMSIS/Include/core_cm4.h **** #endif
  128. 99:Drivers/CMSIS/Include/core_cm4.h ****
  129. 100:Drivers/CMSIS/Include/core_cm4.h **** #elif defined ( __GNUC__ )
  130. 101:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__VFP_FP__) && !defined(__SOFTFP__)
  131. 102:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  132. 103:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  133. 104:Drivers/CMSIS/Include/core_cm4.h **** #else
  134. 105:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  135. 106:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  136. 107:Drivers/CMSIS/Include/core_cm4.h **** #endif
  137. 108:Drivers/CMSIS/Include/core_cm4.h **** #else
  138. 109:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  139. 110:Drivers/CMSIS/Include/core_cm4.h **** #endif
  140. 111:Drivers/CMSIS/Include/core_cm4.h ****
  141. 112:Drivers/CMSIS/Include/core_cm4.h **** #elif defined ( __ICCARM__ )
  142. 113:Drivers/CMSIS/Include/core_cm4.h **** #if defined __ARMVFP__
  143. 114:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  144. 115:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  145. 116:Drivers/CMSIS/Include/core_cm4.h **** #else
  146. 117:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  147. 118:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  148. 119:Drivers/CMSIS/Include/core_cm4.h **** #endif
  149. 120:Drivers/CMSIS/Include/core_cm4.h **** #else
  150. 121:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  151. 122:Drivers/CMSIS/Include/core_cm4.h **** #endif
  152. 123:Drivers/CMSIS/Include/core_cm4.h ****
  153. 124:Drivers/CMSIS/Include/core_cm4.h **** #elif defined ( __TI_ARM__ )
  154. 125:Drivers/CMSIS/Include/core_cm4.h **** #if defined __TI_VFP_SUPPORT__
  155. 126:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  156. 127:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  157. 128:Drivers/CMSIS/Include/core_cm4.h **** #else
  158. 129:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  159. 130:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  160. 131:Drivers/CMSIS/Include/core_cm4.h **** #endif
  161. 132:Drivers/CMSIS/Include/core_cm4.h **** #else
  162. 133:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  163. 134:Drivers/CMSIS/Include/core_cm4.h **** #endif
  164. 135:Drivers/CMSIS/Include/core_cm4.h ****
  165. 136:Drivers/CMSIS/Include/core_cm4.h **** #elif defined ( __TASKING__ )
  166. 137:Drivers/CMSIS/Include/core_cm4.h **** #if defined __FPU_VFP__
  167. 138:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  168. 139:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  169. 140:Drivers/CMSIS/Include/core_cm4.h **** #else
  170. 141:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  171. 142:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  172. 143:Drivers/CMSIS/Include/core_cm4.h **** #endif
  173. 144:Drivers/CMSIS/Include/core_cm4.h **** #else
  174. 145:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  175. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 4
  176. 146:Drivers/CMSIS/Include/core_cm4.h **** #endif
  177. 147:Drivers/CMSIS/Include/core_cm4.h ****
  178. 148:Drivers/CMSIS/Include/core_cm4.h **** #elif defined ( __CSMC__ )
  179. 149:Drivers/CMSIS/Include/core_cm4.h **** #if ( __CSMC__ & 0x400U)
  180. 150:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)
  181. 151:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 1U
  182. 152:Drivers/CMSIS/Include/core_cm4.h **** #else
  183. 153:Drivers/CMSIS/Include/core_cm4.h **** #error "Compiler generates FPU instructions for a device without an FPU (check __FPU_PRESENT)
  184. 154:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  185. 155:Drivers/CMSIS/Include/core_cm4.h **** #endif
  186. 156:Drivers/CMSIS/Include/core_cm4.h **** #else
  187. 157:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_USED 0U
  188. 158:Drivers/CMSIS/Include/core_cm4.h **** #endif
  189. 159:Drivers/CMSIS/Include/core_cm4.h ****
  190. 160:Drivers/CMSIS/Include/core_cm4.h **** #endif
  191. 161:Drivers/CMSIS/Include/core_cm4.h ****
  192. 162:Drivers/CMSIS/Include/core_cm4.h **** #include "cmsis_compiler.h" /* CMSIS compiler specific defines */
  193. 163:Drivers/CMSIS/Include/core_cm4.h ****
  194. 164:Drivers/CMSIS/Include/core_cm4.h ****
  195. 165:Drivers/CMSIS/Include/core_cm4.h **** #ifdef __cplusplus
  196. 166:Drivers/CMSIS/Include/core_cm4.h **** }
  197. 167:Drivers/CMSIS/Include/core_cm4.h **** #endif
  198. 168:Drivers/CMSIS/Include/core_cm4.h ****
  199. 169:Drivers/CMSIS/Include/core_cm4.h **** #endif /* __CORE_CM4_H_GENERIC */
  200. 170:Drivers/CMSIS/Include/core_cm4.h ****
  201. 171:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __CMSIS_GENERIC
  202. 172:Drivers/CMSIS/Include/core_cm4.h ****
  203. 173:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __CORE_CM4_H_DEPENDANT
  204. 174:Drivers/CMSIS/Include/core_cm4.h **** #define __CORE_CM4_H_DEPENDANT
  205. 175:Drivers/CMSIS/Include/core_cm4.h ****
  206. 176:Drivers/CMSIS/Include/core_cm4.h **** #ifdef __cplusplus
  207. 177:Drivers/CMSIS/Include/core_cm4.h **** extern "C" {
  208. 178:Drivers/CMSIS/Include/core_cm4.h **** #endif
  209. 179:Drivers/CMSIS/Include/core_cm4.h ****
  210. 180:Drivers/CMSIS/Include/core_cm4.h **** /* check device defines and use defaults */
  211. 181:Drivers/CMSIS/Include/core_cm4.h **** #if defined __CHECK_DEVICE_DEFINES
  212. 182:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __CM4_REV
  213. 183:Drivers/CMSIS/Include/core_cm4.h **** #define __CM4_REV 0x0000U
  214. 184:Drivers/CMSIS/Include/core_cm4.h **** #warning "__CM4_REV not defined in device header file; using default!"
  215. 185:Drivers/CMSIS/Include/core_cm4.h **** #endif
  216. 186:Drivers/CMSIS/Include/core_cm4.h ****
  217. 187:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __FPU_PRESENT
  218. 188:Drivers/CMSIS/Include/core_cm4.h **** #define __FPU_PRESENT 0U
  219. 189:Drivers/CMSIS/Include/core_cm4.h **** #warning "__FPU_PRESENT not defined in device header file; using default!"
  220. 190:Drivers/CMSIS/Include/core_cm4.h **** #endif
  221. 191:Drivers/CMSIS/Include/core_cm4.h ****
  222. 192:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __MPU_PRESENT
  223. 193:Drivers/CMSIS/Include/core_cm4.h **** #define __MPU_PRESENT 0U
  224. 194:Drivers/CMSIS/Include/core_cm4.h **** #warning "__MPU_PRESENT not defined in device header file; using default!"
  225. 195:Drivers/CMSIS/Include/core_cm4.h **** #endif
  226. 196:Drivers/CMSIS/Include/core_cm4.h ****
  227. 197:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __NVIC_PRIO_BITS
  228. 198:Drivers/CMSIS/Include/core_cm4.h **** #define __NVIC_PRIO_BITS 3U
  229. 199:Drivers/CMSIS/Include/core_cm4.h **** #warning "__NVIC_PRIO_BITS not defined in device header file; using default!"
  230. 200:Drivers/CMSIS/Include/core_cm4.h **** #endif
  231. 201:Drivers/CMSIS/Include/core_cm4.h ****
  232. 202:Drivers/CMSIS/Include/core_cm4.h **** #ifndef __Vendor_SysTickConfig
  233. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 5
  234. 203:Drivers/CMSIS/Include/core_cm4.h **** #define __Vendor_SysTickConfig 0U
  235. 204:Drivers/CMSIS/Include/core_cm4.h **** #warning "__Vendor_SysTickConfig not defined in device header file; using default!"
  236. 205:Drivers/CMSIS/Include/core_cm4.h **** #endif
  237. 206:Drivers/CMSIS/Include/core_cm4.h **** #endif
  238. 207:Drivers/CMSIS/Include/core_cm4.h ****
  239. 208:Drivers/CMSIS/Include/core_cm4.h **** /* IO definitions (access restrictions to peripheral registers) */
  240. 209:Drivers/CMSIS/Include/core_cm4.h **** /**
  241. 210:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_glob_defs CMSIS Global Defines
  242. 211:Drivers/CMSIS/Include/core_cm4.h ****
  243. 212:Drivers/CMSIS/Include/core_cm4.h **** <strong>IO Type Qualifiers</strong> are used
  244. 213:Drivers/CMSIS/Include/core_cm4.h **** \li to specify the access to peripheral variables.
  245. 214:Drivers/CMSIS/Include/core_cm4.h **** \li for automatic generation of peripheral register debug information.
  246. 215:Drivers/CMSIS/Include/core_cm4.h **** */
  247. 216:Drivers/CMSIS/Include/core_cm4.h **** #ifdef __cplusplus
  248. 217:Drivers/CMSIS/Include/core_cm4.h **** #define __I volatile /*!< Defines 'read only' permissions */
  249. 218:Drivers/CMSIS/Include/core_cm4.h **** #else
  250. 219:Drivers/CMSIS/Include/core_cm4.h **** #define __I volatile const /*!< Defines 'read only' permissions */
  251. 220:Drivers/CMSIS/Include/core_cm4.h **** #endif
  252. 221:Drivers/CMSIS/Include/core_cm4.h **** #define __O volatile /*!< Defines 'write only' permissions */
  253. 222:Drivers/CMSIS/Include/core_cm4.h **** #define __IO volatile /*!< Defines 'read / write' permissions */
  254. 223:Drivers/CMSIS/Include/core_cm4.h ****
  255. 224:Drivers/CMSIS/Include/core_cm4.h **** /* following defines should be used for structure members */
  256. 225:Drivers/CMSIS/Include/core_cm4.h **** #define __IM volatile const /*! Defines 'read only' structure member permissions */
  257. 226:Drivers/CMSIS/Include/core_cm4.h **** #define __OM volatile /*! Defines 'write only' structure member permissions */
  258. 227:Drivers/CMSIS/Include/core_cm4.h **** #define __IOM volatile /*! Defines 'read / write' structure member permissions */
  259. 228:Drivers/CMSIS/Include/core_cm4.h ****
  260. 229:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group Cortex_M4 */
  261. 230:Drivers/CMSIS/Include/core_cm4.h ****
  262. 231:Drivers/CMSIS/Include/core_cm4.h ****
  263. 232:Drivers/CMSIS/Include/core_cm4.h ****
  264. 233:Drivers/CMSIS/Include/core_cm4.h **** /*******************************************************************************
  265. 234:Drivers/CMSIS/Include/core_cm4.h **** * Register Abstraction
  266. 235:Drivers/CMSIS/Include/core_cm4.h **** Core Register contain:
  267. 236:Drivers/CMSIS/Include/core_cm4.h **** - Core Register
  268. 237:Drivers/CMSIS/Include/core_cm4.h **** - Core NVIC Register
  269. 238:Drivers/CMSIS/Include/core_cm4.h **** - Core SCB Register
  270. 239:Drivers/CMSIS/Include/core_cm4.h **** - Core SysTick Register
  271. 240:Drivers/CMSIS/Include/core_cm4.h **** - Core Debug Register
  272. 241:Drivers/CMSIS/Include/core_cm4.h **** - Core MPU Register
  273. 242:Drivers/CMSIS/Include/core_cm4.h **** - Core FPU Register
  274. 243:Drivers/CMSIS/Include/core_cm4.h **** ******************************************************************************/
  275. 244:Drivers/CMSIS/Include/core_cm4.h **** /**
  276. 245:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_core_register Defines and Type Definitions
  277. 246:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions and defines for Cortex-M processor based devices.
  278. 247:Drivers/CMSIS/Include/core_cm4.h **** */
  279. 248:Drivers/CMSIS/Include/core_cm4.h ****
  280. 249:Drivers/CMSIS/Include/core_cm4.h **** /**
  281. 250:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  282. 251:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_CORE Status and Control Registers
  283. 252:Drivers/CMSIS/Include/core_cm4.h **** \brief Core Register type definitions.
  284. 253:Drivers/CMSIS/Include/core_cm4.h **** @{
  285. 254:Drivers/CMSIS/Include/core_cm4.h **** */
  286. 255:Drivers/CMSIS/Include/core_cm4.h ****
  287. 256:Drivers/CMSIS/Include/core_cm4.h **** /**
  288. 257:Drivers/CMSIS/Include/core_cm4.h **** \brief Union type to access the Application Program Status Register (APSR).
  289. 258:Drivers/CMSIS/Include/core_cm4.h **** */
  290. 259:Drivers/CMSIS/Include/core_cm4.h **** typedef union
  291. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 6
  292. 260:Drivers/CMSIS/Include/core_cm4.h **** {
  293. 261:Drivers/CMSIS/Include/core_cm4.h **** struct
  294. 262:Drivers/CMSIS/Include/core_cm4.h **** {
  295. 263:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved0:16; /*!< bit: 0..15 Reserved */
  296. 264:Drivers/CMSIS/Include/core_cm4.h **** uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */
  297. 265:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved1:7; /*!< bit: 20..26 Reserved */
  298. 266:Drivers/CMSIS/Include/core_cm4.h **** uint32_t Q:1; /*!< bit: 27 Saturation condition flag */
  299. 267:Drivers/CMSIS/Include/core_cm4.h **** uint32_t V:1; /*!< bit: 28 Overflow condition code flag */
  300. 268:Drivers/CMSIS/Include/core_cm4.h **** uint32_t C:1; /*!< bit: 29 Carry condition code flag */
  301. 269:Drivers/CMSIS/Include/core_cm4.h **** uint32_t Z:1; /*!< bit: 30 Zero condition code flag */
  302. 270:Drivers/CMSIS/Include/core_cm4.h **** uint32_t N:1; /*!< bit: 31 Negative condition code flag */
  303. 271:Drivers/CMSIS/Include/core_cm4.h **** } b; /*!< Structure used for bit access */
  304. 272:Drivers/CMSIS/Include/core_cm4.h **** uint32_t w; /*!< Type used for word access */
  305. 273:Drivers/CMSIS/Include/core_cm4.h **** } APSR_Type;
  306. 274:Drivers/CMSIS/Include/core_cm4.h ****
  307. 275:Drivers/CMSIS/Include/core_cm4.h **** /* APSR Register Definitions */
  308. 276:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_N_Pos 31U /*!< APSR
  309. 277:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_N_Msk (1UL << APSR_N_Pos) /*!< APSR
  310. 278:Drivers/CMSIS/Include/core_cm4.h ****
  311. 279:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_Z_Pos 30U /*!< APSR
  312. 280:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_Z_Msk (1UL << APSR_Z_Pos) /*!< APSR
  313. 281:Drivers/CMSIS/Include/core_cm4.h ****
  314. 282:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_C_Pos 29U /*!< APSR
  315. 283:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_C_Msk (1UL << APSR_C_Pos) /*!< APSR
  316. 284:Drivers/CMSIS/Include/core_cm4.h ****
  317. 285:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_V_Pos 28U /*!< APSR
  318. 286:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_V_Msk (1UL << APSR_V_Pos) /*!< APSR
  319. 287:Drivers/CMSIS/Include/core_cm4.h ****
  320. 288:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_Q_Pos 27U /*!< APSR
  321. 289:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_Q_Msk (1UL << APSR_Q_Pos) /*!< APSR
  322. 290:Drivers/CMSIS/Include/core_cm4.h ****
  323. 291:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_GE_Pos 16U /*!< APSR
  324. 292:Drivers/CMSIS/Include/core_cm4.h **** #define APSR_GE_Msk (0xFUL << APSR_GE_Pos) /*!< APSR
  325. 293:Drivers/CMSIS/Include/core_cm4.h ****
  326. 294:Drivers/CMSIS/Include/core_cm4.h ****
  327. 295:Drivers/CMSIS/Include/core_cm4.h **** /**
  328. 296:Drivers/CMSIS/Include/core_cm4.h **** \brief Union type to access the Interrupt Program Status Register (IPSR).
  329. 297:Drivers/CMSIS/Include/core_cm4.h **** */
  330. 298:Drivers/CMSIS/Include/core_cm4.h **** typedef union
  331. 299:Drivers/CMSIS/Include/core_cm4.h **** {
  332. 300:Drivers/CMSIS/Include/core_cm4.h **** struct
  333. 301:Drivers/CMSIS/Include/core_cm4.h **** {
  334. 302:Drivers/CMSIS/Include/core_cm4.h **** uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */
  335. 303:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved0:23; /*!< bit: 9..31 Reserved */
  336. 304:Drivers/CMSIS/Include/core_cm4.h **** } b; /*!< Structure used for bit access */
  337. 305:Drivers/CMSIS/Include/core_cm4.h **** uint32_t w; /*!< Type used for word access */
  338. 306:Drivers/CMSIS/Include/core_cm4.h **** } IPSR_Type;
  339. 307:Drivers/CMSIS/Include/core_cm4.h ****
  340. 308:Drivers/CMSIS/Include/core_cm4.h **** /* IPSR Register Definitions */
  341. 309:Drivers/CMSIS/Include/core_cm4.h **** #define IPSR_ISR_Pos 0U /*!< IPSR
  342. 310:Drivers/CMSIS/Include/core_cm4.h **** #define IPSR_ISR_Msk (0x1FFUL /*<< IPSR_ISR_Pos*/) /*!< IPSR
  343. 311:Drivers/CMSIS/Include/core_cm4.h ****
  344. 312:Drivers/CMSIS/Include/core_cm4.h ****
  345. 313:Drivers/CMSIS/Include/core_cm4.h **** /**
  346. 314:Drivers/CMSIS/Include/core_cm4.h **** \brief Union type to access the Special-Purpose Program Status Registers (xPSR).
  347. 315:Drivers/CMSIS/Include/core_cm4.h **** */
  348. 316:Drivers/CMSIS/Include/core_cm4.h **** typedef union
  349. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 7
  350. 317:Drivers/CMSIS/Include/core_cm4.h **** {
  351. 318:Drivers/CMSIS/Include/core_cm4.h **** struct
  352. 319:Drivers/CMSIS/Include/core_cm4.h **** {
  353. 320:Drivers/CMSIS/Include/core_cm4.h **** uint32_t ISR:9; /*!< bit: 0.. 8 Exception number */
  354. 321:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved0:1; /*!< bit: 9 Reserved */
  355. 322:Drivers/CMSIS/Include/core_cm4.h **** uint32_t ICI_IT_1:6; /*!< bit: 10..15 ICI/IT part 1 */
  356. 323:Drivers/CMSIS/Include/core_cm4.h **** uint32_t GE:4; /*!< bit: 16..19 Greater than or Equal flags */
  357. 324:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved1:4; /*!< bit: 20..23 Reserved */
  358. 325:Drivers/CMSIS/Include/core_cm4.h **** uint32_t T:1; /*!< bit: 24 Thumb bit */
  359. 326:Drivers/CMSIS/Include/core_cm4.h **** uint32_t ICI_IT_2:2; /*!< bit: 25..26 ICI/IT part 2 */
  360. 327:Drivers/CMSIS/Include/core_cm4.h **** uint32_t Q:1; /*!< bit: 27 Saturation condition flag */
  361. 328:Drivers/CMSIS/Include/core_cm4.h **** uint32_t V:1; /*!< bit: 28 Overflow condition code flag */
  362. 329:Drivers/CMSIS/Include/core_cm4.h **** uint32_t C:1; /*!< bit: 29 Carry condition code flag */
  363. 330:Drivers/CMSIS/Include/core_cm4.h **** uint32_t Z:1; /*!< bit: 30 Zero condition code flag */
  364. 331:Drivers/CMSIS/Include/core_cm4.h **** uint32_t N:1; /*!< bit: 31 Negative condition code flag */
  365. 332:Drivers/CMSIS/Include/core_cm4.h **** } b; /*!< Structure used for bit access */
  366. 333:Drivers/CMSIS/Include/core_cm4.h **** uint32_t w; /*!< Type used for word access */
  367. 334:Drivers/CMSIS/Include/core_cm4.h **** } xPSR_Type;
  368. 335:Drivers/CMSIS/Include/core_cm4.h ****
  369. 336:Drivers/CMSIS/Include/core_cm4.h **** /* xPSR Register Definitions */
  370. 337:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_N_Pos 31U /*!< xPSR
  371. 338:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_N_Msk (1UL << xPSR_N_Pos) /*!< xPSR
  372. 339:Drivers/CMSIS/Include/core_cm4.h ****
  373. 340:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_Z_Pos 30U /*!< xPSR
  374. 341:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_Z_Msk (1UL << xPSR_Z_Pos) /*!< xPSR
  375. 342:Drivers/CMSIS/Include/core_cm4.h ****
  376. 343:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_C_Pos 29U /*!< xPSR
  377. 344:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_C_Msk (1UL << xPSR_C_Pos) /*!< xPSR
  378. 345:Drivers/CMSIS/Include/core_cm4.h ****
  379. 346:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_V_Pos 28U /*!< xPSR
  380. 347:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_V_Msk (1UL << xPSR_V_Pos) /*!< xPSR
  381. 348:Drivers/CMSIS/Include/core_cm4.h ****
  382. 349:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_Q_Pos 27U /*!< xPSR
  383. 350:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_Q_Msk (1UL << xPSR_Q_Pos) /*!< xPSR
  384. 351:Drivers/CMSIS/Include/core_cm4.h ****
  385. 352:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ICI_IT_2_Pos 25U /*!< xPSR
  386. 353:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ICI_IT_2_Msk (3UL << xPSR_ICI_IT_2_Pos) /*!< xPSR
  387. 354:Drivers/CMSIS/Include/core_cm4.h ****
  388. 355:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_T_Pos 24U /*!< xPSR
  389. 356:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR
  390. 357:Drivers/CMSIS/Include/core_cm4.h ****
  391. 358:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_GE_Pos 16U /*!< xPSR
  392. 359:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_GE_Msk (0xFUL << xPSR_GE_Pos) /*!< xPSR
  393. 360:Drivers/CMSIS/Include/core_cm4.h ****
  394. 361:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ICI_IT_1_Pos 10U /*!< xPSR
  395. 362:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ICI_IT_1_Msk (0x3FUL << xPSR_ICI_IT_1_Pos) /*!< xPSR
  396. 363:Drivers/CMSIS/Include/core_cm4.h ****
  397. 364:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ISR_Pos 0U /*!< xPSR
  398. 365:Drivers/CMSIS/Include/core_cm4.h **** #define xPSR_ISR_Msk (0x1FFUL /*<< xPSR_ISR_Pos*/) /*!< xPSR
  399. 366:Drivers/CMSIS/Include/core_cm4.h ****
  400. 367:Drivers/CMSIS/Include/core_cm4.h ****
  401. 368:Drivers/CMSIS/Include/core_cm4.h **** /**
  402. 369:Drivers/CMSIS/Include/core_cm4.h **** \brief Union type to access the Control Registers (CONTROL).
  403. 370:Drivers/CMSIS/Include/core_cm4.h **** */
  404. 371:Drivers/CMSIS/Include/core_cm4.h **** typedef union
  405. 372:Drivers/CMSIS/Include/core_cm4.h **** {
  406. 373:Drivers/CMSIS/Include/core_cm4.h **** struct
  407. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 8
  408. 374:Drivers/CMSIS/Include/core_cm4.h **** {
  409. 375:Drivers/CMSIS/Include/core_cm4.h **** uint32_t nPRIV:1; /*!< bit: 0 Execution privilege in Thread mode */
  410. 376:Drivers/CMSIS/Include/core_cm4.h **** uint32_t SPSEL:1; /*!< bit: 1 Stack to be used */
  411. 377:Drivers/CMSIS/Include/core_cm4.h **** uint32_t FPCA:1; /*!< bit: 2 FP extension active flag */
  412. 378:Drivers/CMSIS/Include/core_cm4.h **** uint32_t _reserved0:29; /*!< bit: 3..31 Reserved */
  413. 379:Drivers/CMSIS/Include/core_cm4.h **** } b; /*!< Structure used for bit access */
  414. 380:Drivers/CMSIS/Include/core_cm4.h **** uint32_t w; /*!< Type used for word access */
  415. 381:Drivers/CMSIS/Include/core_cm4.h **** } CONTROL_Type;
  416. 382:Drivers/CMSIS/Include/core_cm4.h ****
  417. 383:Drivers/CMSIS/Include/core_cm4.h **** /* CONTROL Register Definitions */
  418. 384:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_FPCA_Pos 2U /*!< CONT
  419. 385:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_FPCA_Msk (1UL << CONTROL_FPCA_Pos) /*!< CONT
  420. 386:Drivers/CMSIS/Include/core_cm4.h ****
  421. 387:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_SPSEL_Pos 1U /*!< CONT
  422. 388:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_SPSEL_Msk (1UL << CONTROL_SPSEL_Pos) /*!< CONT
  423. 389:Drivers/CMSIS/Include/core_cm4.h ****
  424. 390:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_nPRIV_Pos 0U /*!< CONT
  425. 391:Drivers/CMSIS/Include/core_cm4.h **** #define CONTROL_nPRIV_Msk (1UL /*<< CONTROL_nPRIV_Pos*/) /*!< CONT
  426. 392:Drivers/CMSIS/Include/core_cm4.h ****
  427. 393:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_CORE */
  428. 394:Drivers/CMSIS/Include/core_cm4.h ****
  429. 395:Drivers/CMSIS/Include/core_cm4.h ****
  430. 396:Drivers/CMSIS/Include/core_cm4.h **** /**
  431. 397:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  432. 398:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_NVIC Nested Vectored Interrupt Controller (NVIC)
  433. 399:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the NVIC Registers
  434. 400:Drivers/CMSIS/Include/core_cm4.h **** @{
  435. 401:Drivers/CMSIS/Include/core_cm4.h **** */
  436. 402:Drivers/CMSIS/Include/core_cm4.h ****
  437. 403:Drivers/CMSIS/Include/core_cm4.h **** /**
  438. 404:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Nested Vectored Interrupt Controller (NVIC).
  439. 405:Drivers/CMSIS/Include/core_cm4.h **** */
  440. 406:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  441. 407:Drivers/CMSIS/Include/core_cm4.h **** {
  442. 408:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ISER[8U]; /*!< Offset: 0x000 (R/W) Interrupt Set Enable Register */
  443. 409:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[24U];
  444. 410:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ICER[8U]; /*!< Offset: 0x080 (R/W) Interrupt Clear Enable Register
  445. 411:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RSERVED1[24U];
  446. 412:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register *
  447. 413:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED2[24U];
  448. 414:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register
  449. 415:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED3[24U];
  450. 416:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t IABR[8U]; /*!< Offset: 0x200 (R/W) Interrupt Active bit Register */
  451. 417:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED4[56U];
  452. 418:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint8_t IP[240U]; /*!< Offset: 0x300 (R/W) Interrupt Priority Register (8Bi
  453. 419:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED5[644U];
  454. 420:Drivers/CMSIS/Include/core_cm4.h **** __OM uint32_t STIR; /*!< Offset: 0xE00 ( /W) Software Trigger Interrupt Regis
  455. 421:Drivers/CMSIS/Include/core_cm4.h **** } NVIC_Type;
  456. 422:Drivers/CMSIS/Include/core_cm4.h ****
  457. 423:Drivers/CMSIS/Include/core_cm4.h **** /* Software Triggered Interrupt Register Definitions */
  458. 424:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_STIR_INTID_Pos 0U /*!< STIR: I
  459. 425:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_STIR_INTID_Msk (0x1FFUL /*<< NVIC_STIR_INTID_Pos*/) /*!< STIR: I
  460. 426:Drivers/CMSIS/Include/core_cm4.h ****
  461. 427:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_NVIC */
  462. 428:Drivers/CMSIS/Include/core_cm4.h ****
  463. 429:Drivers/CMSIS/Include/core_cm4.h ****
  464. 430:Drivers/CMSIS/Include/core_cm4.h **** /**
  465. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 9
  466. 431:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  467. 432:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_SCB System Control Block (SCB)
  468. 433:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the System Control Block Registers
  469. 434:Drivers/CMSIS/Include/core_cm4.h **** @{
  470. 435:Drivers/CMSIS/Include/core_cm4.h **** */
  471. 436:Drivers/CMSIS/Include/core_cm4.h ****
  472. 437:Drivers/CMSIS/Include/core_cm4.h **** /**
  473. 438:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the System Control Block (SCB).
  474. 439:Drivers/CMSIS/Include/core_cm4.h **** */
  475. 440:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  476. 441:Drivers/CMSIS/Include/core_cm4.h **** {
  477. 442:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CPUID; /*!< Offset: 0x000 (R/ ) CPUID Base Register */
  478. 443:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ICSR; /*!< Offset: 0x004 (R/W) Interrupt Control and State Regi
  479. 444:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t VTOR; /*!< Offset: 0x008 (R/W) Vector Table Offset Register */
  480. 445:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t AIRCR; /*!< Offset: 0x00C (R/W) Application Interrupt and Reset
  481. 446:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t SCR; /*!< Offset: 0x010 (R/W) System Control Register */
  482. 447:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CCR; /*!< Offset: 0x014 (R/W) Configuration Control Register *
  483. 448:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint8_t SHP[12U]; /*!< Offset: 0x018 (R/W) System Handlers Priority Registe
  484. 449:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t SHCSR; /*!< Offset: 0x024 (R/W) System Handler Control and State
  485. 450:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CFSR; /*!< Offset: 0x028 (R/W) Configurable Fault Status Regist
  486. 451:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t HFSR; /*!< Offset: 0x02C (R/W) HardFault Status Register */
  487. 452:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t DFSR; /*!< Offset: 0x030 (R/W) Debug Fault Status Register */
  488. 453:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t MMFAR; /*!< Offset: 0x034 (R/W) MemManage Fault Address Register
  489. 454:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t BFAR; /*!< Offset: 0x038 (R/W) BusFault Address Register */
  490. 455:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t AFSR; /*!< Offset: 0x03C (R/W) Auxiliary Fault Status Register
  491. 456:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PFR[2U]; /*!< Offset: 0x040 (R/ ) Processor Feature Register */
  492. 457:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t DFR; /*!< Offset: 0x048 (R/ ) Debug Feature Register */
  493. 458:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t ADR; /*!< Offset: 0x04C (R/ ) Auxiliary Feature Register */
  494. 459:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t MMFR[4U]; /*!< Offset: 0x050 (R/ ) Memory Model Feature Register */
  495. 460:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t ISAR[5U]; /*!< Offset: 0x060 (R/ ) Instruction Set Attributes Regis
  496. 461:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[5U];
  497. 462:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CPACR; /*!< Offset: 0x088 (R/W) Coprocessor Access Control Regis
  498. 463:Drivers/CMSIS/Include/core_cm4.h **** } SCB_Type;
  499. 464:Drivers/CMSIS/Include/core_cm4.h ****
  500. 465:Drivers/CMSIS/Include/core_cm4.h **** /* SCB CPUID Register Definitions */
  501. 466:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_IMPLEMENTER_Pos 24U /*!< SCB
  502. 467:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_IMPLEMENTER_Msk (0xFFUL << SCB_CPUID_IMPLEMENTER_Pos) /*!< SCB
  503. 468:Drivers/CMSIS/Include/core_cm4.h ****
  504. 469:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_VARIANT_Pos 20U /*!< SCB
  505. 470:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_VARIANT_Msk (0xFUL << SCB_CPUID_VARIANT_Pos) /*!< SCB
  506. 471:Drivers/CMSIS/Include/core_cm4.h ****
  507. 472:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_ARCHITECTURE_Pos 16U /*!< SCB
  508. 473:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_ARCHITECTURE_Msk (0xFUL << SCB_CPUID_ARCHITECTURE_Pos) /*!< SCB
  509. 474:Drivers/CMSIS/Include/core_cm4.h ****
  510. 475:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_PARTNO_Pos 4U /*!< SCB
  511. 476:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_PARTNO_Msk (0xFFFUL << SCB_CPUID_PARTNO_Pos) /*!< SCB
  512. 477:Drivers/CMSIS/Include/core_cm4.h ****
  513. 478:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_REVISION_Pos 0U /*!< SCB
  514. 479:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CPUID_REVISION_Msk (0xFUL /*<< SCB_CPUID_REVISION_Pos*/) /*!< SCB
  515. 480:Drivers/CMSIS/Include/core_cm4.h ****
  516. 481:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Interrupt Control State Register Definitions */
  517. 482:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_NMIPENDSET_Pos 31U /*!< SCB
  518. 483:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_NMIPENDSET_Msk (1UL << SCB_ICSR_NMIPENDSET_Pos) /*!< SCB
  519. 484:Drivers/CMSIS/Include/core_cm4.h ****
  520. 485:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSVSET_Pos 28U /*!< SCB
  521. 486:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSVSET_Msk (1UL << SCB_ICSR_PENDSVSET_Pos) /*!< SCB
  522. 487:Drivers/CMSIS/Include/core_cm4.h ****
  523. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 10
  524. 488:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSVCLR_Pos 27U /*!< SCB
  525. 489:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSVCLR_Msk (1UL << SCB_ICSR_PENDSVCLR_Pos) /*!< SCB
  526. 490:Drivers/CMSIS/Include/core_cm4.h ****
  527. 491:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSTSET_Pos 26U /*!< SCB
  528. 492:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSTSET_Msk (1UL << SCB_ICSR_PENDSTSET_Pos) /*!< SCB
  529. 493:Drivers/CMSIS/Include/core_cm4.h ****
  530. 494:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSTCLR_Pos 25U /*!< SCB
  531. 495:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_PENDSTCLR_Msk (1UL << SCB_ICSR_PENDSTCLR_Pos) /*!< SCB
  532. 496:Drivers/CMSIS/Include/core_cm4.h ****
  533. 497:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB
  534. 498:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB
  535. 499:Drivers/CMSIS/Include/core_cm4.h ****
  536. 500:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB
  537. 501:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_ISRPENDING_Msk (1UL << SCB_ICSR_ISRPENDING_Pos) /*!< SCB
  538. 502:Drivers/CMSIS/Include/core_cm4.h ****
  539. 503:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_VECTPENDING_Pos 12U /*!< SCB
  540. 504:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_VECTPENDING_Msk (0x1FFUL << SCB_ICSR_VECTPENDING_Pos) /*!< SCB
  541. 505:Drivers/CMSIS/Include/core_cm4.h ****
  542. 506:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_RETTOBASE_Pos 11U /*!< SCB
  543. 507:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_RETTOBASE_Msk (1UL << SCB_ICSR_RETTOBASE_Pos) /*!< SCB
  544. 508:Drivers/CMSIS/Include/core_cm4.h ****
  545. 509:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_VECTACTIVE_Pos 0U /*!< SCB
  546. 510:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_ICSR_VECTACTIVE_Msk (0x1FFUL /*<< SCB_ICSR_VECTACTIVE_Pos*/) /*!< SCB
  547. 511:Drivers/CMSIS/Include/core_cm4.h ****
  548. 512:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Vector Table Offset Register Definitions */
  549. 513:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_VTOR_TBLOFF_Pos 7U /*!< SCB
  550. 514:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_VTOR_TBLOFF_Msk (0x1FFFFFFUL << SCB_VTOR_TBLOFF_Pos) /*!< SCB
  551. 515:Drivers/CMSIS/Include/core_cm4.h ****
  552. 516:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Application Interrupt and Reset Control Register Definitions */
  553. 517:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTKEY_Pos 16U /*!< SCB
  554. 518:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTKEY_Msk (0xFFFFUL << SCB_AIRCR_VECTKEY_Pos) /*!< SCB
  555. 519:Drivers/CMSIS/Include/core_cm4.h ****
  556. 520:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTKEYSTAT_Pos 16U /*!< SCB
  557. 521:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTKEYSTAT_Msk (0xFFFFUL << SCB_AIRCR_VECTKEYSTAT_Pos) /*!< SCB
  558. 522:Drivers/CMSIS/Include/core_cm4.h ****
  559. 523:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_ENDIANESS_Pos 15U /*!< SCB
  560. 524:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_ENDIANESS_Msk (1UL << SCB_AIRCR_ENDIANESS_Pos) /*!< SCB
  561. 525:Drivers/CMSIS/Include/core_cm4.h ****
  562. 526:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_PRIGROUP_Pos 8U /*!< SCB
  563. 527:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_PRIGROUP_Msk (7UL << SCB_AIRCR_PRIGROUP_Pos) /*!< SCB
  564. 528:Drivers/CMSIS/Include/core_cm4.h ****
  565. 529:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_SYSRESETREQ_Pos 2U /*!< SCB
  566. 530:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_SYSRESETREQ_Msk (1UL << SCB_AIRCR_SYSRESETREQ_Pos) /*!< SCB
  567. 531:Drivers/CMSIS/Include/core_cm4.h ****
  568. 532:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTCLRACTIVE_Pos 1U /*!< SCB
  569. 533:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTCLRACTIVE_Msk (1UL << SCB_AIRCR_VECTCLRACTIVE_Pos) /*!< SCB
  570. 534:Drivers/CMSIS/Include/core_cm4.h ****
  571. 535:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTRESET_Pos 0U /*!< SCB
  572. 536:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_AIRCR_VECTRESET_Msk (1UL /*<< SCB_AIRCR_VECTRESET_Pos*/) /*!< SCB
  573. 537:Drivers/CMSIS/Include/core_cm4.h ****
  574. 538:Drivers/CMSIS/Include/core_cm4.h **** /* SCB System Control Register Definitions */
  575. 539:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SEVONPEND_Pos 4U /*!< SCB
  576. 540:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SEVONPEND_Msk (1UL << SCB_SCR_SEVONPEND_Pos) /*!< SCB
  577. 541:Drivers/CMSIS/Include/core_cm4.h ****
  578. 542:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SLEEPDEEP_Pos 2U /*!< SCB
  579. 543:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SLEEPDEEP_Msk (1UL << SCB_SCR_SLEEPDEEP_Pos) /*!< SCB
  580. 544:Drivers/CMSIS/Include/core_cm4.h ****
  581. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 11
  582. 545:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SLEEPONEXIT_Pos 1U /*!< SCB
  583. 546:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SCR_SLEEPONEXIT_Msk (1UL << SCB_SCR_SLEEPONEXIT_Pos) /*!< SCB
  584. 547:Drivers/CMSIS/Include/core_cm4.h ****
  585. 548:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Configuration Control Register Definitions */
  586. 549:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_STKALIGN_Pos 9U /*!< SCB
  587. 550:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_STKALIGN_Msk (1UL << SCB_CCR_STKALIGN_Pos) /*!< SCB
  588. 551:Drivers/CMSIS/Include/core_cm4.h ****
  589. 552:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_BFHFNMIGN_Pos 8U /*!< SCB
  590. 553:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_BFHFNMIGN_Msk (1UL << SCB_CCR_BFHFNMIGN_Pos) /*!< SCB
  591. 554:Drivers/CMSIS/Include/core_cm4.h ****
  592. 555:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_DIV_0_TRP_Pos 4U /*!< SCB
  593. 556:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_DIV_0_TRP_Msk (1UL << SCB_CCR_DIV_0_TRP_Pos) /*!< SCB
  594. 557:Drivers/CMSIS/Include/core_cm4.h ****
  595. 558:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_UNALIGN_TRP_Pos 3U /*!< SCB
  596. 559:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_UNALIGN_TRP_Msk (1UL << SCB_CCR_UNALIGN_TRP_Pos) /*!< SCB
  597. 560:Drivers/CMSIS/Include/core_cm4.h ****
  598. 561:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_USERSETMPEND_Pos 1U /*!< SCB
  599. 562:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_USERSETMPEND_Msk (1UL << SCB_CCR_USERSETMPEND_Pos) /*!< SCB
  600. 563:Drivers/CMSIS/Include/core_cm4.h ****
  601. 564:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_NONBASETHRDENA_Pos 0U /*!< SCB
  602. 565:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CCR_NONBASETHRDENA_Msk (1UL /*<< SCB_CCR_NONBASETHRDENA_Pos*/) /*!< SCB
  603. 566:Drivers/CMSIS/Include/core_cm4.h ****
  604. 567:Drivers/CMSIS/Include/core_cm4.h **** /* SCB System Handler Control and State Register Definitions */
  605. 568:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTENA_Pos 18U /*!< SCB
  606. 569:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTENA_Msk (1UL << SCB_SHCSR_USGFAULTENA_Pos) /*!< SCB
  607. 570:Drivers/CMSIS/Include/core_cm4.h ****
  608. 571:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTENA_Pos 17U /*!< SCB
  609. 572:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTENA_Msk (1UL << SCB_SHCSR_BUSFAULTENA_Pos) /*!< SCB
  610. 573:Drivers/CMSIS/Include/core_cm4.h ****
  611. 574:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTENA_Pos 16U /*!< SCB
  612. 575:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTENA_Msk (1UL << SCB_SHCSR_MEMFAULTENA_Pos) /*!< SCB
  613. 576:Drivers/CMSIS/Include/core_cm4.h ****
  614. 577:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SVCALLPENDED_Pos 15U /*!< SCB
  615. 578:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SVCALLPENDED_Msk (1UL << SCB_SHCSR_SVCALLPENDED_Pos) /*!< SCB
  616. 579:Drivers/CMSIS/Include/core_cm4.h ****
  617. 580:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTPENDED_Pos 14U /*!< SCB
  618. 581:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTPENDED_Msk (1UL << SCB_SHCSR_BUSFAULTPENDED_Pos) /*!< SCB
  619. 582:Drivers/CMSIS/Include/core_cm4.h ****
  620. 583:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTPENDED_Pos 13U /*!< SCB
  621. 584:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTPENDED_Msk (1UL << SCB_SHCSR_MEMFAULTPENDED_Pos) /*!< SCB
  622. 585:Drivers/CMSIS/Include/core_cm4.h ****
  623. 586:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTPENDED_Pos 12U /*!< SCB
  624. 587:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTPENDED_Msk (1UL << SCB_SHCSR_USGFAULTPENDED_Pos) /*!< SCB
  625. 588:Drivers/CMSIS/Include/core_cm4.h ****
  626. 589:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SYSTICKACT_Pos 11U /*!< SCB
  627. 590:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SYSTICKACT_Msk (1UL << SCB_SHCSR_SYSTICKACT_Pos) /*!< SCB
  628. 591:Drivers/CMSIS/Include/core_cm4.h ****
  629. 592:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_PENDSVACT_Pos 10U /*!< SCB
  630. 593:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_PENDSVACT_Msk (1UL << SCB_SHCSR_PENDSVACT_Pos) /*!< SCB
  631. 594:Drivers/CMSIS/Include/core_cm4.h ****
  632. 595:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MONITORACT_Pos 8U /*!< SCB
  633. 596:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MONITORACT_Msk (1UL << SCB_SHCSR_MONITORACT_Pos) /*!< SCB
  634. 597:Drivers/CMSIS/Include/core_cm4.h ****
  635. 598:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SVCALLACT_Pos 7U /*!< SCB
  636. 599:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_SVCALLACT_Msk (1UL << SCB_SHCSR_SVCALLACT_Pos) /*!< SCB
  637. 600:Drivers/CMSIS/Include/core_cm4.h ****
  638. 601:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTACT_Pos 3U /*!< SCB
  639. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 12
  640. 602:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB
  641. 603:Drivers/CMSIS/Include/core_cm4.h ****
  642. 604:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB
  643. 605:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB
  644. 606:Drivers/CMSIS/Include/core_cm4.h ****
  645. 607:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTACT_Pos 0U /*!< SCB
  646. 608:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_SHCSR_MEMFAULTACT_Msk (1UL /*<< SCB_SHCSR_MEMFAULTACT_Pos*/) /*!< SCB
  647. 609:Drivers/CMSIS/Include/core_cm4.h ****
  648. 610:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Configurable Fault Status Register Definitions */
  649. 611:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_USGFAULTSR_Pos 16U /*!< SCB
  650. 612:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_USGFAULTSR_Msk (0xFFFFUL << SCB_CFSR_USGFAULTSR_Pos) /*!< SCB
  651. 613:Drivers/CMSIS/Include/core_cm4.h ****
  652. 614:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_BUSFAULTSR_Pos 8U /*!< SCB
  653. 615:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_BUSFAULTSR_Msk (0xFFUL << SCB_CFSR_BUSFAULTSR_Pos) /*!< SCB
  654. 616:Drivers/CMSIS/Include/core_cm4.h ****
  655. 617:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MEMFAULTSR_Pos 0U /*!< SCB
  656. 618:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MEMFAULTSR_Msk (0xFFUL /*<< SCB_CFSR_MEMFAULTSR_Pos*/) /*!< SCB
  657. 619:Drivers/CMSIS/Include/core_cm4.h ****
  658. 620:Drivers/CMSIS/Include/core_cm4.h **** /* MemManage Fault Status Register (part of SCB Configurable Fault Status Register) */
  659. 621:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MMARVALID_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 7U) /*!< SCB
  660. 622:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MMARVALID_Msk (1UL << SCB_CFSR_MMARVALID_Pos) /*!< SCB
  661. 623:Drivers/CMSIS/Include/core_cm4.h ****
  662. 624:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MLSPERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 5U) /*!< SCB
  663. 625:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MLSPERR_Msk (1UL << SCB_CFSR_MLSPERR_Pos) /*!< SCB
  664. 626:Drivers/CMSIS/Include/core_cm4.h ****
  665. 627:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 4U) /*!< SCB
  666. 628:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MSTKERR_Msk (1UL << SCB_CFSR_MSTKERR_Pos) /*!< SCB
  667. 629:Drivers/CMSIS/Include/core_cm4.h ****
  668. 630:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MUNSTKERR_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 3U) /*!< SCB
  669. 631:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_MUNSTKERR_Msk (1UL << SCB_CFSR_MUNSTKERR_Pos) /*!< SCB
  670. 632:Drivers/CMSIS/Include/core_cm4.h ****
  671. 633:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_DACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 1U) /*!< SCB
  672. 634:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_DACCVIOL_Msk (1UL << SCB_CFSR_DACCVIOL_Pos) /*!< SCB
  673. 635:Drivers/CMSIS/Include/core_cm4.h ****
  674. 636:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IACCVIOL_Pos (SCB_SHCSR_MEMFAULTACT_Pos + 0U) /*!< SCB
  675. 637:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IACCVIOL_Msk (1UL /*<< SCB_CFSR_IACCVIOL_Pos*/) /*!< SCB
  676. 638:Drivers/CMSIS/Include/core_cm4.h ****
  677. 639:Drivers/CMSIS/Include/core_cm4.h **** /* BusFault Status Register (part of SCB Configurable Fault Status Register) */
  678. 640:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_BFARVALID_Pos (SCB_CFSR_BUSFAULTSR_Pos + 7U) /*!< SCB
  679. 641:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_BFARVALID_Msk (1UL << SCB_CFSR_BFARVALID_Pos) /*!< SCB
  680. 642:Drivers/CMSIS/Include/core_cm4.h ****
  681. 643:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_LSPERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 5U) /*!< SCB
  682. 644:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_LSPERR_Msk (1UL << SCB_CFSR_LSPERR_Pos) /*!< SCB
  683. 645:Drivers/CMSIS/Include/core_cm4.h ****
  684. 646:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_STKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 4U) /*!< SCB
  685. 647:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_STKERR_Msk (1UL << SCB_CFSR_STKERR_Pos) /*!< SCB
  686. 648:Drivers/CMSIS/Include/core_cm4.h ****
  687. 649:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNSTKERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 3U) /*!< SCB
  688. 650:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNSTKERR_Msk (1UL << SCB_CFSR_UNSTKERR_Pos) /*!< SCB
  689. 651:Drivers/CMSIS/Include/core_cm4.h ****
  690. 652:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IMPRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 2U) /*!< SCB
  691. 653:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IMPRECISERR_Msk (1UL << SCB_CFSR_IMPRECISERR_Pos) /*!< SCB
  692. 654:Drivers/CMSIS/Include/core_cm4.h ****
  693. 655:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_PRECISERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 1U) /*!< SCB
  694. 656:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_PRECISERR_Msk (1UL << SCB_CFSR_PRECISERR_Pos) /*!< SCB
  695. 657:Drivers/CMSIS/Include/core_cm4.h ****
  696. 658:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IBUSERR_Pos (SCB_CFSR_BUSFAULTSR_Pos + 0U) /*!< SCB
  697. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 13
  698. 659:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB
  699. 660:Drivers/CMSIS/Include/core_cm4.h ****
  700. 661:Drivers/CMSIS/Include/core_cm4.h **** /* UsageFault Status Register (part of SCB Configurable Fault Status Register) */
  701. 662:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB
  702. 663:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_DIVBYZERO_Msk (1UL << SCB_CFSR_DIVBYZERO_Pos) /*!< SCB
  703. 664:Drivers/CMSIS/Include/core_cm4.h ****
  704. 665:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNALIGNED_Pos (SCB_CFSR_USGFAULTSR_Pos + 8U) /*!< SCB
  705. 666:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNALIGNED_Msk (1UL << SCB_CFSR_UNALIGNED_Pos) /*!< SCB
  706. 667:Drivers/CMSIS/Include/core_cm4.h ****
  707. 668:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_NOCP_Pos (SCB_CFSR_USGFAULTSR_Pos + 3U) /*!< SCB
  708. 669:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_NOCP_Msk (1UL << SCB_CFSR_NOCP_Pos) /*!< SCB
  709. 670:Drivers/CMSIS/Include/core_cm4.h ****
  710. 671:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_INVPC_Pos (SCB_CFSR_USGFAULTSR_Pos + 2U) /*!< SCB
  711. 672:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_INVPC_Msk (1UL << SCB_CFSR_INVPC_Pos) /*!< SCB
  712. 673:Drivers/CMSIS/Include/core_cm4.h ****
  713. 674:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_INVSTATE_Pos (SCB_CFSR_USGFAULTSR_Pos + 1U) /*!< SCB
  714. 675:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_INVSTATE_Msk (1UL << SCB_CFSR_INVSTATE_Pos) /*!< SCB
  715. 676:Drivers/CMSIS/Include/core_cm4.h ****
  716. 677:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNDEFINSTR_Pos (SCB_CFSR_USGFAULTSR_Pos + 0U) /*!< SCB
  717. 678:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_CFSR_UNDEFINSTR_Msk (1UL << SCB_CFSR_UNDEFINSTR_Pos) /*!< SCB
  718. 679:Drivers/CMSIS/Include/core_cm4.h ****
  719. 680:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Hard Fault Status Register Definitions */
  720. 681:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_DEBUGEVT_Pos 31U /*!< SCB
  721. 682:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_DEBUGEVT_Msk (1UL << SCB_HFSR_DEBUGEVT_Pos) /*!< SCB
  722. 683:Drivers/CMSIS/Include/core_cm4.h ****
  723. 684:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_FORCED_Pos 30U /*!< SCB
  724. 685:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_FORCED_Msk (1UL << SCB_HFSR_FORCED_Pos) /*!< SCB
  725. 686:Drivers/CMSIS/Include/core_cm4.h ****
  726. 687:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_VECTTBL_Pos 1U /*!< SCB
  727. 688:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_HFSR_VECTTBL_Msk (1UL << SCB_HFSR_VECTTBL_Pos) /*!< SCB
  728. 689:Drivers/CMSIS/Include/core_cm4.h ****
  729. 690:Drivers/CMSIS/Include/core_cm4.h **** /* SCB Debug Fault Status Register Definitions */
  730. 691:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_EXTERNAL_Pos 4U /*!< SCB
  731. 692:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_EXTERNAL_Msk (1UL << SCB_DFSR_EXTERNAL_Pos) /*!< SCB
  732. 693:Drivers/CMSIS/Include/core_cm4.h ****
  733. 694:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_VCATCH_Pos 3U /*!< SCB
  734. 695:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_VCATCH_Msk (1UL << SCB_DFSR_VCATCH_Pos) /*!< SCB
  735. 696:Drivers/CMSIS/Include/core_cm4.h ****
  736. 697:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_DWTTRAP_Pos 2U /*!< SCB
  737. 698:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_DWTTRAP_Msk (1UL << SCB_DFSR_DWTTRAP_Pos) /*!< SCB
  738. 699:Drivers/CMSIS/Include/core_cm4.h ****
  739. 700:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_BKPT_Pos 1U /*!< SCB
  740. 701:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_BKPT_Msk (1UL << SCB_DFSR_BKPT_Pos) /*!< SCB
  741. 702:Drivers/CMSIS/Include/core_cm4.h ****
  742. 703:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_HALTED_Pos 0U /*!< SCB
  743. 704:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_DFSR_HALTED_Msk (1UL /*<< SCB_DFSR_HALTED_Pos*/) /*!< SCB
  744. 705:Drivers/CMSIS/Include/core_cm4.h ****
  745. 706:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_SCB */
  746. 707:Drivers/CMSIS/Include/core_cm4.h ****
  747. 708:Drivers/CMSIS/Include/core_cm4.h ****
  748. 709:Drivers/CMSIS/Include/core_cm4.h **** /**
  749. 710:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  750. 711:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_SCnSCB System Controls not in SCB (SCnSCB)
  751. 712:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the System Control and ID Register not in the SCB
  752. 713:Drivers/CMSIS/Include/core_cm4.h **** @{
  753. 714:Drivers/CMSIS/Include/core_cm4.h **** */
  754. 715:Drivers/CMSIS/Include/core_cm4.h ****
  755. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 14
  756. 716:Drivers/CMSIS/Include/core_cm4.h **** /**
  757. 717:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the System Control and ID Register not in the SCB.
  758. 718:Drivers/CMSIS/Include/core_cm4.h **** */
  759. 719:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  760. 720:Drivers/CMSIS/Include/core_cm4.h **** {
  761. 721:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[1U];
  762. 722:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t ICTR; /*!< Offset: 0x004 (R/ ) Interrupt Controller Type Regist
  763. 723:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ACTLR; /*!< Offset: 0x008 (R/W) Auxiliary Control Register */
  764. 724:Drivers/CMSIS/Include/core_cm4.h **** } SCnSCB_Type;
  765. 725:Drivers/CMSIS/Include/core_cm4.h ****
  766. 726:Drivers/CMSIS/Include/core_cm4.h **** /* Interrupt Controller Type Register Definitions */
  767. 727:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ICTR_INTLINESNUM_Pos 0U /*!< ICTR: I
  768. 728:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ICTR_INTLINESNUM_Msk (0xFUL /*<< SCnSCB_ICTR_INTLINESNUM_Pos*/) /*!< ICTR: I
  769. 729:Drivers/CMSIS/Include/core_cm4.h ****
  770. 730:Drivers/CMSIS/Include/core_cm4.h **** /* Auxiliary Control Register Definitions */
  771. 731:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISOOFP_Pos 9U /*!< ACTLR:
  772. 732:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISOOFP_Msk (1UL << SCnSCB_ACTLR_DISOOFP_Pos) /*!< ACTLR:
  773. 733:Drivers/CMSIS/Include/core_cm4.h ****
  774. 734:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISFPCA_Pos 8U /*!< ACTLR:
  775. 735:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISFPCA_Msk (1UL << SCnSCB_ACTLR_DISFPCA_Pos) /*!< ACTLR:
  776. 736:Drivers/CMSIS/Include/core_cm4.h ****
  777. 737:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR:
  778. 738:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR:
  779. 739:Drivers/CMSIS/Include/core_cm4.h ****
  780. 740:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISDEFWBUF_Pos 1U /*!< ACTLR:
  781. 741:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISDEFWBUF_Msk (1UL << SCnSCB_ACTLR_DISDEFWBUF_Pos) /*!< ACTLR:
  782. 742:Drivers/CMSIS/Include/core_cm4.h ****
  783. 743:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISMCYCINT_Pos 0U /*!< ACTLR:
  784. 744:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB_ACTLR_DISMCYCINT_Msk (1UL /*<< SCnSCB_ACTLR_DISMCYCINT_Pos*/) /*!< ACTLR:
  785. 745:Drivers/CMSIS/Include/core_cm4.h ****
  786. 746:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_SCnotSCB */
  787. 747:Drivers/CMSIS/Include/core_cm4.h ****
  788. 748:Drivers/CMSIS/Include/core_cm4.h ****
  789. 749:Drivers/CMSIS/Include/core_cm4.h **** /**
  790. 750:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  791. 751:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_SysTick System Tick Timer (SysTick)
  792. 752:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the System Timer Registers.
  793. 753:Drivers/CMSIS/Include/core_cm4.h **** @{
  794. 754:Drivers/CMSIS/Include/core_cm4.h **** */
  795. 755:Drivers/CMSIS/Include/core_cm4.h ****
  796. 756:Drivers/CMSIS/Include/core_cm4.h **** /**
  797. 757:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the System Timer (SysTick).
  798. 758:Drivers/CMSIS/Include/core_cm4.h **** */
  799. 759:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  800. 760:Drivers/CMSIS/Include/core_cm4.h **** {
  801. 761:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) SysTick Control and Status Regis
  802. 762:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t LOAD; /*!< Offset: 0x004 (R/W) SysTick Reload Value Register */
  803. 763:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t VAL; /*!< Offset: 0x008 (R/W) SysTick Current Value Register *
  804. 764:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CALIB; /*!< Offset: 0x00C (R/ ) SysTick Calibration Register */
  805. 765:Drivers/CMSIS/Include/core_cm4.h **** } SysTick_Type;
  806. 766:Drivers/CMSIS/Include/core_cm4.h ****
  807. 767:Drivers/CMSIS/Include/core_cm4.h **** /* SysTick Control / Status Register Definitions */
  808. 768:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_COUNTFLAG_Pos 16U /*!< SysT
  809. 769:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_COUNTFLAG_Msk (1UL << SysTick_CTRL_COUNTFLAG_Pos) /*!< SysT
  810. 770:Drivers/CMSIS/Include/core_cm4.h ****
  811. 771:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_CLKSOURCE_Pos 2U /*!< SysT
  812. 772:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_CLKSOURCE_Msk (1UL << SysTick_CTRL_CLKSOURCE_Pos) /*!< SysT
  813. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 15
  814. 773:Drivers/CMSIS/Include/core_cm4.h ****
  815. 774:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_TICKINT_Pos 1U /*!< SysT
  816. 775:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_TICKINT_Msk (1UL << SysTick_CTRL_TICKINT_Pos) /*!< SysT
  817. 776:Drivers/CMSIS/Include/core_cm4.h ****
  818. 777:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_ENABLE_Pos 0U /*!< SysT
  819. 778:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CTRL_ENABLE_Msk (1UL /*<< SysTick_CTRL_ENABLE_Pos*/) /*!< SysT
  820. 779:Drivers/CMSIS/Include/core_cm4.h ****
  821. 780:Drivers/CMSIS/Include/core_cm4.h **** /* SysTick Reload Register Definitions */
  822. 781:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_LOAD_RELOAD_Pos 0U /*!< SysT
  823. 782:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_LOAD_RELOAD_Msk (0xFFFFFFUL /*<< SysTick_LOAD_RELOAD_Pos*/) /*!< SysT
  824. 783:Drivers/CMSIS/Include/core_cm4.h ****
  825. 784:Drivers/CMSIS/Include/core_cm4.h **** /* SysTick Current Register Definitions */
  826. 785:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_VAL_CURRENT_Pos 0U /*!< SysT
  827. 786:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_VAL_CURRENT_Msk (0xFFFFFFUL /*<< SysTick_VAL_CURRENT_Pos*/) /*!< SysT
  828. 787:Drivers/CMSIS/Include/core_cm4.h ****
  829. 788:Drivers/CMSIS/Include/core_cm4.h **** /* SysTick Calibration Register Definitions */
  830. 789:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_NOREF_Pos 31U /*!< SysT
  831. 790:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_NOREF_Msk (1UL << SysTick_CALIB_NOREF_Pos) /*!< SysT
  832. 791:Drivers/CMSIS/Include/core_cm4.h ****
  833. 792:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_SKEW_Pos 30U /*!< SysT
  834. 793:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_SKEW_Msk (1UL << SysTick_CALIB_SKEW_Pos) /*!< SysT
  835. 794:Drivers/CMSIS/Include/core_cm4.h ****
  836. 795:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_TENMS_Pos 0U /*!< SysT
  837. 796:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysT
  838. 797:Drivers/CMSIS/Include/core_cm4.h ****
  839. 798:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_SysTick */
  840. 799:Drivers/CMSIS/Include/core_cm4.h ****
  841. 800:Drivers/CMSIS/Include/core_cm4.h ****
  842. 801:Drivers/CMSIS/Include/core_cm4.h **** /**
  843. 802:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  844. 803:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_ITM Instrumentation Trace Macrocell (ITM)
  845. 804:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Instrumentation Trace Macrocell (ITM)
  846. 805:Drivers/CMSIS/Include/core_cm4.h **** @{
  847. 806:Drivers/CMSIS/Include/core_cm4.h **** */
  848. 807:Drivers/CMSIS/Include/core_cm4.h ****
  849. 808:Drivers/CMSIS/Include/core_cm4.h **** /**
  850. 809:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Instrumentation Trace Macrocell Register (ITM).
  851. 810:Drivers/CMSIS/Include/core_cm4.h **** */
  852. 811:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  853. 812:Drivers/CMSIS/Include/core_cm4.h **** {
  854. 813:Drivers/CMSIS/Include/core_cm4.h **** __OM union
  855. 814:Drivers/CMSIS/Include/core_cm4.h **** {
  856. 815:Drivers/CMSIS/Include/core_cm4.h **** __OM uint8_t u8; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 8-bit */
  857. 816:Drivers/CMSIS/Include/core_cm4.h **** __OM uint16_t u16; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 16-bit */
  858. 817:Drivers/CMSIS/Include/core_cm4.h **** __OM uint32_t u32; /*!< Offset: 0x000 ( /W) ITM Stimulus Port 32-bit */
  859. 818:Drivers/CMSIS/Include/core_cm4.h **** } PORT [32U]; /*!< Offset: 0x000 ( /W) ITM Stimulus Port Registers */
  860. 819:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[864U];
  861. 820:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t TER; /*!< Offset: 0xE00 (R/W) ITM Trace Enable Register */
  862. 821:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED1[15U];
  863. 822:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t TPR; /*!< Offset: 0xE40 (R/W) ITM Trace Privilege Register */
  864. 823:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED2[15U];
  865. 824:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t TCR; /*!< Offset: 0xE80 (R/W) ITM Trace Control Register */
  866. 825:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED3[29U];
  867. 826:Drivers/CMSIS/Include/core_cm4.h **** __OM uint32_t IWR; /*!< Offset: 0xEF8 ( /W) ITM Integration Write Register *
  868. 827:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t IRR; /*!< Offset: 0xEFC (R/ ) ITM Integration Read Register */
  869. 828:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t IMCR; /*!< Offset: 0xF00 (R/W) ITM Integration Mode Control Reg
  870. 829:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED4[43U];
  871. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 16
  872. 830:Drivers/CMSIS/Include/core_cm4.h **** __OM uint32_t LAR; /*!< Offset: 0xFB0 ( /W) ITM Lock Access Register */
  873. 831:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t LSR; /*!< Offset: 0xFB4 (R/ ) ITM Lock Status Register */
  874. 832:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED5[6U];
  875. 833:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID4; /*!< Offset: 0xFD0 (R/ ) ITM Peripheral Identification Re
  876. 834:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID5; /*!< Offset: 0xFD4 (R/ ) ITM Peripheral Identification Re
  877. 835:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID6; /*!< Offset: 0xFD8 (R/ ) ITM Peripheral Identification Re
  878. 836:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID7; /*!< Offset: 0xFDC (R/ ) ITM Peripheral Identification Re
  879. 837:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID0; /*!< Offset: 0xFE0 (R/ ) ITM Peripheral Identification Re
  880. 838:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID1; /*!< Offset: 0xFE4 (R/ ) ITM Peripheral Identification Re
  881. 839:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID2; /*!< Offset: 0xFE8 (R/ ) ITM Peripheral Identification Re
  882. 840:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PID3; /*!< Offset: 0xFEC (R/ ) ITM Peripheral Identification Re
  883. 841:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CID0; /*!< Offset: 0xFF0 (R/ ) ITM Component Identification Re
  884. 842:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CID1; /*!< Offset: 0xFF4 (R/ ) ITM Component Identification Re
  885. 843:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CID2; /*!< Offset: 0xFF8 (R/ ) ITM Component Identification Re
  886. 844:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t CID3; /*!< Offset: 0xFFC (R/ ) ITM Component Identification Re
  887. 845:Drivers/CMSIS/Include/core_cm4.h **** } ITM_Type;
  888. 846:Drivers/CMSIS/Include/core_cm4.h ****
  889. 847:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Trace Privilege Register Definitions */
  890. 848:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TPR_PRIVMASK_Pos 0U /*!< ITM
  891. 849:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TPR_PRIVMASK_Msk (0xFFFFFFFFUL /*<< ITM_TPR_PRIVMASK_Pos*/) /*!< ITM
  892. 850:Drivers/CMSIS/Include/core_cm4.h ****
  893. 851:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Trace Control Register Definitions */
  894. 852:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_BUSY_Pos 23U /*!< ITM
  895. 853:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM
  896. 854:Drivers/CMSIS/Include/core_cm4.h ****
  897. 855:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TraceBusID_Pos 16U /*!< ITM
  898. 856:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TraceBusID_Msk (0x7FUL << ITM_TCR_TraceBusID_Pos) /*!< ITM
  899. 857:Drivers/CMSIS/Include/core_cm4.h ****
  900. 858:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_GTSFREQ_Pos 10U /*!< ITM
  901. 859:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_GTSFREQ_Msk (3UL << ITM_TCR_GTSFREQ_Pos) /*!< ITM
  902. 860:Drivers/CMSIS/Include/core_cm4.h ****
  903. 861:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TSPrescale_Pos 8U /*!< ITM
  904. 862:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TSPrescale_Msk (3UL << ITM_TCR_TSPrescale_Pos) /*!< ITM
  905. 863:Drivers/CMSIS/Include/core_cm4.h ****
  906. 864:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_SWOENA_Pos 4U /*!< ITM
  907. 865:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_SWOENA_Msk (1UL << ITM_TCR_SWOENA_Pos) /*!< ITM
  908. 866:Drivers/CMSIS/Include/core_cm4.h ****
  909. 867:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_DWTENA_Pos 3U /*!< ITM
  910. 868:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_DWTENA_Msk (1UL << ITM_TCR_DWTENA_Pos) /*!< ITM
  911. 869:Drivers/CMSIS/Include/core_cm4.h ****
  912. 870:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_SYNCENA_Pos 2U /*!< ITM
  913. 871:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_SYNCENA_Msk (1UL << ITM_TCR_SYNCENA_Pos) /*!< ITM
  914. 872:Drivers/CMSIS/Include/core_cm4.h ****
  915. 873:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TSENA_Pos 1U /*!< ITM
  916. 874:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_TSENA_Msk (1UL << ITM_TCR_TSENA_Pos) /*!< ITM
  917. 875:Drivers/CMSIS/Include/core_cm4.h ****
  918. 876:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_ITMENA_Pos 0U /*!< ITM
  919. 877:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_TCR_ITMENA_Msk (1UL /*<< ITM_TCR_ITMENA_Pos*/) /*!< ITM
  920. 878:Drivers/CMSIS/Include/core_cm4.h ****
  921. 879:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Integration Write Register Definitions */
  922. 880:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IWR_ATVALIDM_Pos 0U /*!< ITM
  923. 881:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IWR_ATVALIDM_Msk (1UL /*<< ITM_IWR_ATVALIDM_Pos*/) /*!< ITM
  924. 882:Drivers/CMSIS/Include/core_cm4.h ****
  925. 883:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Integration Read Register Definitions */
  926. 884:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IRR_ATREADYM_Pos 0U /*!< ITM
  927. 885:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IRR_ATREADYM_Msk (1UL /*<< ITM_IRR_ATREADYM_Pos*/) /*!< ITM
  928. 886:Drivers/CMSIS/Include/core_cm4.h ****
  929. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 17
  930. 887:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Integration Mode Control Register Definitions */
  931. 888:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IMCR_INTEGRATION_Pos 0U /*!< ITM
  932. 889:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_IMCR_INTEGRATION_Msk (1UL /*<< ITM_IMCR_INTEGRATION_Pos*/) /*!< ITM
  933. 890:Drivers/CMSIS/Include/core_cm4.h ****
  934. 891:Drivers/CMSIS/Include/core_cm4.h **** /* ITM Lock Status Register Definitions */
  935. 892:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_ByteAcc_Pos 2U /*!< ITM
  936. 893:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_ByteAcc_Msk (1UL << ITM_LSR_ByteAcc_Pos) /*!< ITM
  937. 894:Drivers/CMSIS/Include/core_cm4.h ****
  938. 895:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_Access_Pos 1U /*!< ITM
  939. 896:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_Access_Msk (1UL << ITM_LSR_Access_Pos) /*!< ITM
  940. 897:Drivers/CMSIS/Include/core_cm4.h ****
  941. 898:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_Present_Pos 0U /*!< ITM
  942. 899:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_LSR_Present_Msk (1UL /*<< ITM_LSR_Present_Pos*/) /*!< ITM
  943. 900:Drivers/CMSIS/Include/core_cm4.h ****
  944. 901:Drivers/CMSIS/Include/core_cm4.h **** /*@}*/ /* end of group CMSIS_ITM */
  945. 902:Drivers/CMSIS/Include/core_cm4.h ****
  946. 903:Drivers/CMSIS/Include/core_cm4.h ****
  947. 904:Drivers/CMSIS/Include/core_cm4.h **** /**
  948. 905:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  949. 906:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_DWT Data Watchpoint and Trace (DWT)
  950. 907:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Data Watchpoint and Trace (DWT)
  951. 908:Drivers/CMSIS/Include/core_cm4.h **** @{
  952. 909:Drivers/CMSIS/Include/core_cm4.h **** */
  953. 910:Drivers/CMSIS/Include/core_cm4.h ****
  954. 911:Drivers/CMSIS/Include/core_cm4.h **** /**
  955. 912:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Data Watchpoint and Trace Register (DWT).
  956. 913:Drivers/CMSIS/Include/core_cm4.h **** */
  957. 914:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  958. 915:Drivers/CMSIS/Include/core_cm4.h **** {
  959. 916:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */
  960. 917:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CYCCNT; /*!< Offset: 0x004 (R/W) Cycle Count Register */
  961. 918:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CPICNT; /*!< Offset: 0x008 (R/W) CPI Count Register */
  962. 919:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t EXCCNT; /*!< Offset: 0x00C (R/W) Exception Overhead Count Registe
  963. 920:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t SLEEPCNT; /*!< Offset: 0x010 (R/W) Sleep Count Register */
  964. 921:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t LSUCNT; /*!< Offset: 0x014 (R/W) LSU Count Register */
  965. 922:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FOLDCNT; /*!< Offset: 0x018 (R/W) Folded-instruction Count Registe
  966. 923:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t PCSR; /*!< Offset: 0x01C (R/ ) Program Counter Sample Register
  967. 924:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t COMP0; /*!< Offset: 0x020 (R/W) Comparator Register 0 */
  968. 925:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t MASK0; /*!< Offset: 0x024 (R/W) Mask Register 0 */
  969. 926:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FUNCTION0; /*!< Offset: 0x028 (R/W) Function Register 0 */
  970. 927:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[1U];
  971. 928:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t COMP1; /*!< Offset: 0x030 (R/W) Comparator Register 1 */
  972. 929:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t MASK1; /*!< Offset: 0x034 (R/W) Mask Register 1 */
  973. 930:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FUNCTION1; /*!< Offset: 0x038 (R/W) Function Register 1 */
  974. 931:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED1[1U];
  975. 932:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t COMP2; /*!< Offset: 0x040 (R/W) Comparator Register 2 */
  976. 933:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t MASK2; /*!< Offset: 0x044 (R/W) Mask Register 2 */
  977. 934:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FUNCTION2; /*!< Offset: 0x048 (R/W) Function Register 2 */
  978. 935:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED2[1U];
  979. 936:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t COMP3; /*!< Offset: 0x050 (R/W) Comparator Register 3 */
  980. 937:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t MASK3; /*!< Offset: 0x054 (R/W) Mask Register 3 */
  981. 938:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FUNCTION3; /*!< Offset: 0x058 (R/W) Function Register 3 */
  982. 939:Drivers/CMSIS/Include/core_cm4.h **** } DWT_Type;
  983. 940:Drivers/CMSIS/Include/core_cm4.h ****
  984. 941:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Control Register Definitions */
  985. 942:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NUMCOMP_Pos 28U /*!< DWT CTR
  986. 943:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NUMCOMP_Msk (0xFUL << DWT_CTRL_NUMCOMP_Pos) /*!< DWT CTR
  987. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 18
  988. 944:Drivers/CMSIS/Include/core_cm4.h ****
  989. 945:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOTRCPKT_Pos 27U /*!< DWT CTR
  990. 946:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOTRCPKT_Msk (0x1UL << DWT_CTRL_NOTRCPKT_Pos) /*!< DWT CTR
  991. 947:Drivers/CMSIS/Include/core_cm4.h ****
  992. 948:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOEXTTRIG_Pos 26U /*!< DWT CTR
  993. 949:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOEXTTRIG_Msk (0x1UL << DWT_CTRL_NOEXTTRIG_Pos) /*!< DWT CTR
  994. 950:Drivers/CMSIS/Include/core_cm4.h ****
  995. 951:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOCYCCNT_Pos 25U /*!< DWT CTR
  996. 952:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOCYCCNT_Msk (0x1UL << DWT_CTRL_NOCYCCNT_Pos) /*!< DWT CTR
  997. 953:Drivers/CMSIS/Include/core_cm4.h ****
  998. 954:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOPRFCNT_Pos 24U /*!< DWT CTR
  999. 955:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_NOPRFCNT_Msk (0x1UL << DWT_CTRL_NOPRFCNT_Pos) /*!< DWT CTR
  1000. 956:Drivers/CMSIS/Include/core_cm4.h ****
  1001. 957:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCEVTENA_Pos 22U /*!< DWT CTR
  1002. 958:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCEVTENA_Msk (0x1UL << DWT_CTRL_CYCEVTENA_Pos) /*!< DWT CTR
  1003. 959:Drivers/CMSIS/Include/core_cm4.h ****
  1004. 960:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_FOLDEVTENA_Pos 21U /*!< DWT CTR
  1005. 961:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_FOLDEVTENA_Msk (0x1UL << DWT_CTRL_FOLDEVTENA_Pos) /*!< DWT CTR
  1006. 962:Drivers/CMSIS/Include/core_cm4.h ****
  1007. 963:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTR
  1008. 964:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTR
  1009. 965:Drivers/CMSIS/Include/core_cm4.h ****
  1010. 966:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTR
  1011. 967:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_SLEEPEVTENA_Msk (0x1UL << DWT_CTRL_SLEEPEVTENA_Pos) /*!< DWT CTR
  1012. 968:Drivers/CMSIS/Include/core_cm4.h ****
  1013. 969:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_EXCEVTENA_Pos 18U /*!< DWT CTR
  1014. 970:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_EXCEVTENA_Msk (0x1UL << DWT_CTRL_EXCEVTENA_Pos) /*!< DWT CTR
  1015. 971:Drivers/CMSIS/Include/core_cm4.h ****
  1016. 972:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CPIEVTENA_Pos 17U /*!< DWT CTR
  1017. 973:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CPIEVTENA_Msk (0x1UL << DWT_CTRL_CPIEVTENA_Pos) /*!< DWT CTR
  1018. 974:Drivers/CMSIS/Include/core_cm4.h ****
  1019. 975:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_EXCTRCENA_Pos 16U /*!< DWT CTR
  1020. 976:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_EXCTRCENA_Msk (0x1UL << DWT_CTRL_EXCTRCENA_Pos) /*!< DWT CTR
  1021. 977:Drivers/CMSIS/Include/core_cm4.h ****
  1022. 978:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_PCSAMPLENA_Pos 12U /*!< DWT CTR
  1023. 979:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_PCSAMPLENA_Msk (0x1UL << DWT_CTRL_PCSAMPLENA_Pos) /*!< DWT CTR
  1024. 980:Drivers/CMSIS/Include/core_cm4.h ****
  1025. 981:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_SYNCTAP_Pos 10U /*!< DWT CTR
  1026. 982:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_SYNCTAP_Msk (0x3UL << DWT_CTRL_SYNCTAP_Pos) /*!< DWT CTR
  1027. 983:Drivers/CMSIS/Include/core_cm4.h ****
  1028. 984:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCTAP_Pos 9U /*!< DWT CTR
  1029. 985:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCTAP_Msk (0x1UL << DWT_CTRL_CYCTAP_Pos) /*!< DWT CTR
  1030. 986:Drivers/CMSIS/Include/core_cm4.h ****
  1031. 987:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_POSTINIT_Pos 5U /*!< DWT CTR
  1032. 988:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_POSTINIT_Msk (0xFUL << DWT_CTRL_POSTINIT_Pos) /*!< DWT CTR
  1033. 989:Drivers/CMSIS/Include/core_cm4.h ****
  1034. 990:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_POSTPRESET_Pos 1U /*!< DWT CTR
  1035. 991:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_POSTPRESET_Msk (0xFUL << DWT_CTRL_POSTPRESET_Pos) /*!< DWT CTR
  1036. 992:Drivers/CMSIS/Include/core_cm4.h ****
  1037. 993:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCCNTENA_Pos 0U /*!< DWT CTR
  1038. 994:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CTRL_CYCCNTENA_Msk (0x1UL /*<< DWT_CTRL_CYCCNTENA_Pos*/) /*!< DWT CTR
  1039. 995:Drivers/CMSIS/Include/core_cm4.h ****
  1040. 996:Drivers/CMSIS/Include/core_cm4.h **** /* DWT CPI Count Register Definitions */
  1041. 997:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CPICNT_CPICNT_Pos 0U /*!< DWT CPI
  1042. 998:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_CPICNT_CPICNT_Msk (0xFFUL /*<< DWT_CPICNT_CPICNT_Pos*/) /*!< DWT CPI
  1043. 999:Drivers/CMSIS/Include/core_cm4.h ****
  1044. 1000:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Exception Overhead Count Register Definitions */
  1045. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 19
  1046. 1001:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_EXCCNT_EXCCNT_Pos 0U /*!< DWT EXC
  1047. 1002:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_EXCCNT_EXCCNT_Msk (0xFFUL /*<< DWT_EXCCNT_EXCCNT_Pos*/) /*!< DWT EXC
  1048. 1003:Drivers/CMSIS/Include/core_cm4.h ****
  1049. 1004:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Sleep Count Register Definitions */
  1050. 1005:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_SLEEPCNT_SLEEPCNT_Pos 0U /*!< DWT SLE
  1051. 1006:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_SLEEPCNT_SLEEPCNT_Msk (0xFFUL /*<< DWT_SLEEPCNT_SLEEPCNT_Pos*/) /*!< DWT SLE
  1052. 1007:Drivers/CMSIS/Include/core_cm4.h ****
  1053. 1008:Drivers/CMSIS/Include/core_cm4.h **** /* DWT LSU Count Register Definitions */
  1054. 1009:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_LSUCNT_LSUCNT_Pos 0U /*!< DWT LSU
  1055. 1010:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_LSUCNT_LSUCNT_Msk (0xFFUL /*<< DWT_LSUCNT_LSUCNT_Pos*/) /*!< DWT LSU
  1056. 1011:Drivers/CMSIS/Include/core_cm4.h ****
  1057. 1012:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Folded-instruction Count Register Definitions */
  1058. 1013:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FOLDCNT_FOLDCNT_Pos 0U /*!< DWT FOL
  1059. 1014:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FOLDCNT_FOLDCNT_Msk (0xFFUL /*<< DWT_FOLDCNT_FOLDCNT_Pos*/) /*!< DWT FOL
  1060. 1015:Drivers/CMSIS/Include/core_cm4.h ****
  1061. 1016:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Comparator Mask Register Definitions */
  1062. 1017:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_MASK_MASK_Pos 0U /*!< DWT MAS
  1063. 1018:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_MASK_MASK_Msk (0x1FUL /*<< DWT_MASK_MASK_Pos*/) /*!< DWT MAS
  1064. 1019:Drivers/CMSIS/Include/core_cm4.h ****
  1065. 1020:Drivers/CMSIS/Include/core_cm4.h **** /* DWT Comparator Function Register Definitions */
  1066. 1021:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUN
  1067. 1022:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUN
  1068. 1023:Drivers/CMSIS/Include/core_cm4.h ****
  1069. 1024:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVADDR1_Pos 16U /*!< DWT FUN
  1070. 1025:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVADDR1_Msk (0xFUL << DWT_FUNCTION_DATAVADDR1_Pos) /*!< DWT FUN
  1071. 1026:Drivers/CMSIS/Include/core_cm4.h ****
  1072. 1027:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVADDR0_Pos 12U /*!< DWT FUN
  1073. 1028:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVADDR0_Msk (0xFUL << DWT_FUNCTION_DATAVADDR0_Pos) /*!< DWT FUN
  1074. 1029:Drivers/CMSIS/Include/core_cm4.h ****
  1075. 1030:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVSIZE_Pos 10U /*!< DWT FUN
  1076. 1031:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVSIZE_Msk (0x3UL << DWT_FUNCTION_DATAVSIZE_Pos) /*!< DWT FUN
  1077. 1032:Drivers/CMSIS/Include/core_cm4.h ****
  1078. 1033:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_LNK1ENA_Pos 9U /*!< DWT FUN
  1079. 1034:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_LNK1ENA_Msk (0x1UL << DWT_FUNCTION_LNK1ENA_Pos) /*!< DWT FUN
  1080. 1035:Drivers/CMSIS/Include/core_cm4.h ****
  1081. 1036:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVMATCH_Pos 8U /*!< DWT FUN
  1082. 1037:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_DATAVMATCH_Msk (0x1UL << DWT_FUNCTION_DATAVMATCH_Pos) /*!< DWT FUN
  1083. 1038:Drivers/CMSIS/Include/core_cm4.h ****
  1084. 1039:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_CYCMATCH_Pos 7U /*!< DWT FUN
  1085. 1040:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_CYCMATCH_Msk (0x1UL << DWT_FUNCTION_CYCMATCH_Pos) /*!< DWT FUN
  1086. 1041:Drivers/CMSIS/Include/core_cm4.h ****
  1087. 1042:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_EMITRANGE_Pos 5U /*!< DWT FUN
  1088. 1043:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_EMITRANGE_Msk (0x1UL << DWT_FUNCTION_EMITRANGE_Pos) /*!< DWT FUN
  1089. 1044:Drivers/CMSIS/Include/core_cm4.h ****
  1090. 1045:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_FUNCTION_Pos 0U /*!< DWT FUN
  1091. 1046:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_FUNCTION_FUNCTION_Msk (0xFUL /*<< DWT_FUNCTION_FUNCTION_Pos*/) /*!< DWT FUN
  1092. 1047:Drivers/CMSIS/Include/core_cm4.h ****
  1093. 1048:Drivers/CMSIS/Include/core_cm4.h **** /*@}*/ /* end of group CMSIS_DWT */
  1094. 1049:Drivers/CMSIS/Include/core_cm4.h ****
  1095. 1050:Drivers/CMSIS/Include/core_cm4.h ****
  1096. 1051:Drivers/CMSIS/Include/core_cm4.h **** /**
  1097. 1052:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1098. 1053:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_TPI Trace Port Interface (TPI)
  1099. 1054:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Trace Port Interface (TPI)
  1100. 1055:Drivers/CMSIS/Include/core_cm4.h **** @{
  1101. 1056:Drivers/CMSIS/Include/core_cm4.h **** */
  1102. 1057:Drivers/CMSIS/Include/core_cm4.h ****
  1103. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 20
  1104. 1058:Drivers/CMSIS/Include/core_cm4.h **** /**
  1105. 1059:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Trace Port Interface Register (TPI).
  1106. 1060:Drivers/CMSIS/Include/core_cm4.h **** */
  1107. 1061:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  1108. 1062:Drivers/CMSIS/Include/core_cm4.h **** {
  1109. 1063:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t SSPSR; /*!< Offset: 0x000 (R/ ) Supported Parallel Port Size Reg
  1110. 1064:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CSPSR; /*!< Offset: 0x004 (R/W) Current Parallel Port Size Regis
  1111. 1065:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[2U];
  1112. 1066:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ACPR; /*!< Offset: 0x010 (R/W) Asynchronous Clock Prescaler Reg
  1113. 1067:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED1[55U];
  1114. 1068:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t SPPR; /*!< Offset: 0x0F0 (R/W) Selected Pin Protocol Register *
  1115. 1069:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED2[131U];
  1116. 1070:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t FFSR; /*!< Offset: 0x300 (R/ ) Formatter and Flush Status Regis
  1117. 1071:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FFCR; /*!< Offset: 0x304 (R/W) Formatter and Flush Control Regi
  1118. 1072:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t FSCR; /*!< Offset: 0x308 (R/ ) Formatter Synchronization Counte
  1119. 1073:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED3[759U];
  1120. 1074:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t TRIGGER; /*!< Offset: 0xEE8 (R/ ) TRIGGER Register */
  1121. 1075:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t FIFO0; /*!< Offset: 0xEEC (R/ ) Integration ETM Data */
  1122. 1076:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t ITATBCTR2; /*!< Offset: 0xEF0 (R/ ) ITATBCTR2 */
  1123. 1077:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED4[1U];
  1124. 1078:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */
  1125. 1079:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */
  1126. 1080:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */
  1127. 1081:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED5[39U];
  1128. 1082:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CLAIMSET; /*!< Offset: 0xFA0 (R/W) Claim tag set */
  1129. 1083:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CLAIMCLR; /*!< Offset: 0xFA4 (R/W) Claim tag clear */
  1130. 1084:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED7[8U];
  1131. 1085:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t DEVID; /*!< Offset: 0xFC8 (R/ ) TPIU_DEVID */
  1132. 1086:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t DEVTYPE; /*!< Offset: 0xFCC (R/ ) TPIU_DEVTYPE */
  1133. 1087:Drivers/CMSIS/Include/core_cm4.h **** } TPI_Type;
  1134. 1088:Drivers/CMSIS/Include/core_cm4.h ****
  1135. 1089:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Asynchronous Clock Prescaler Register Definitions */
  1136. 1090:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ACPR_PRESCALER_Pos 0U /*!< TPI ACP
  1137. 1091:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ACPR_PRESCALER_Msk (0x1FFFUL /*<< TPI_ACPR_PRESCALER_Pos*/) /*!< TPI ACP
  1138. 1092:Drivers/CMSIS/Include/core_cm4.h ****
  1139. 1093:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Selected Pin Protocol Register Definitions */
  1140. 1094:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_SPPR_TXMODE_Pos 0U /*!< TPI SPP
  1141. 1095:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_SPPR_TXMODE_Msk (0x3UL /*<< TPI_SPPR_TXMODE_Pos*/) /*!< TPI SPP
  1142. 1096:Drivers/CMSIS/Include/core_cm4.h ****
  1143. 1097:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Formatter and Flush Status Register Definitions */
  1144. 1098:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FtNonStop_Pos 3U /*!< TPI FFS
  1145. 1099:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FtNonStop_Msk (0x1UL << TPI_FFSR_FtNonStop_Pos) /*!< TPI FFS
  1146. 1100:Drivers/CMSIS/Include/core_cm4.h ****
  1147. 1101:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_TCPresent_Pos 2U /*!< TPI FFS
  1148. 1102:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_TCPresent_Msk (0x1UL << TPI_FFSR_TCPresent_Pos) /*!< TPI FFS
  1149. 1103:Drivers/CMSIS/Include/core_cm4.h ****
  1150. 1104:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FtStopped_Pos 1U /*!< TPI FFS
  1151. 1105:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FtStopped_Msk (0x1UL << TPI_FFSR_FtStopped_Pos) /*!< TPI FFS
  1152. 1106:Drivers/CMSIS/Include/core_cm4.h ****
  1153. 1107:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FlInProg_Pos 0U /*!< TPI FFS
  1154. 1108:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFSR_FlInProg_Msk (0x1UL /*<< TPI_FFSR_FlInProg_Pos*/) /*!< TPI FFS
  1155. 1109:Drivers/CMSIS/Include/core_cm4.h ****
  1156. 1110:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Formatter and Flush Control Register Definitions */
  1157. 1111:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFCR_TrigIn_Pos 8U /*!< TPI FFC
  1158. 1112:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFCR_TrigIn_Msk (0x1UL << TPI_FFCR_TrigIn_Pos) /*!< TPI FFC
  1159. 1113:Drivers/CMSIS/Include/core_cm4.h ****
  1160. 1114:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFCR_EnFCont_Pos 1U /*!< TPI FFC
  1161. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 21
  1162. 1115:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FFCR_EnFCont_Msk (0x1UL << TPI_FFCR_EnFCont_Pos) /*!< TPI FFC
  1163. 1116:Drivers/CMSIS/Include/core_cm4.h ****
  1164. 1117:Drivers/CMSIS/Include/core_cm4.h **** /* TPI TRIGGER Register Definitions */
  1165. 1118:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_TRIGGER_TRIGGER_Pos 0U /*!< TPI TRI
  1166. 1119:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_TRIGGER_TRIGGER_Msk (0x1UL /*<< TPI_TRIGGER_TRIGGER_Pos*/) /*!< TPI TRI
  1167. 1120:Drivers/CMSIS/Include/core_cm4.h ****
  1168. 1121:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Integration ETM Data Register Definitions (FIFO0) */
  1169. 1122:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ITM_ATVALID_Pos 29U /*!< TPI FIF
  1170. 1123:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ITM_ATVALID_Msk (0x3UL << TPI_FIFO0_ITM_ATVALID_Pos) /*!< TPI FIF
  1171. 1124:Drivers/CMSIS/Include/core_cm4.h ****
  1172. 1125:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ITM_bytecount_Pos 27U /*!< TPI FIF
  1173. 1126:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ITM_bytecount_Msk (0x3UL << TPI_FIFO0_ITM_bytecount_Pos) /*!< TPI FIF
  1174. 1127:Drivers/CMSIS/Include/core_cm4.h ****
  1175. 1128:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM_ATVALID_Pos 26U /*!< TPI FIF
  1176. 1129:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM_ATVALID_Msk (0x3UL << TPI_FIFO0_ETM_ATVALID_Pos) /*!< TPI FIF
  1177. 1130:Drivers/CMSIS/Include/core_cm4.h ****
  1178. 1131:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM_bytecount_Pos 24U /*!< TPI FIF
  1179. 1132:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM_bytecount_Msk (0x3UL << TPI_FIFO0_ETM_bytecount_Pos) /*!< TPI FIF
  1180. 1133:Drivers/CMSIS/Include/core_cm4.h ****
  1181. 1134:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIF
  1182. 1135:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIF
  1183. 1136:Drivers/CMSIS/Include/core_cm4.h ****
  1184. 1137:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIF
  1185. 1138:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM1_Msk (0xFFUL << TPI_FIFO0_ETM1_Pos) /*!< TPI FIF
  1186. 1139:Drivers/CMSIS/Include/core_cm4.h ****
  1187. 1140:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM0_Pos 0U /*!< TPI FIF
  1188. 1141:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO0_ETM0_Msk (0xFFUL /*<< TPI_FIFO0_ETM0_Pos*/) /*!< TPI FIF
  1189. 1142:Drivers/CMSIS/Include/core_cm4.h ****
  1190. 1143:Drivers/CMSIS/Include/core_cm4.h **** /* TPI ITATBCTR2 Register Definitions */
  1191. 1144:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR2_ATREADY2_Pos 0U /*!< TPI ITA
  1192. 1145:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR2_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY2_Pos*/) /*!< TPI ITA
  1193. 1146:Drivers/CMSIS/Include/core_cm4.h ****
  1194. 1147:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR2_ATREADY1_Pos 0U /*!< TPI ITA
  1195. 1148:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR2_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR2_ATREADY1_Pos*/) /*!< TPI ITA
  1196. 1149:Drivers/CMSIS/Include/core_cm4.h ****
  1197. 1150:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Integration ITM Data Register Definitions (FIFO1) */
  1198. 1151:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM_ATVALID_Pos 29U /*!< TPI FIF
  1199. 1152:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM_ATVALID_Msk (0x3UL << TPI_FIFO1_ITM_ATVALID_Pos) /*!< TPI FIF
  1200. 1153:Drivers/CMSIS/Include/core_cm4.h ****
  1201. 1154:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM_bytecount_Pos 27U /*!< TPI FIF
  1202. 1155:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM_bytecount_Msk (0x3UL << TPI_FIFO1_ITM_bytecount_Pos) /*!< TPI FIF
  1203. 1156:Drivers/CMSIS/Include/core_cm4.h ****
  1204. 1157:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ETM_ATVALID_Pos 26U /*!< TPI FIF
  1205. 1158:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ETM_ATVALID_Msk (0x3UL << TPI_FIFO1_ETM_ATVALID_Pos) /*!< TPI FIF
  1206. 1159:Drivers/CMSIS/Include/core_cm4.h ****
  1207. 1160:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ETM_bytecount_Pos 24U /*!< TPI FIF
  1208. 1161:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ETM_bytecount_Msk (0x3UL << TPI_FIFO1_ETM_bytecount_Pos) /*!< TPI FIF
  1209. 1162:Drivers/CMSIS/Include/core_cm4.h ****
  1210. 1163:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM2_Pos 16U /*!< TPI FIF
  1211. 1164:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM2_Msk (0xFFUL << TPI_FIFO1_ITM2_Pos) /*!< TPI FIF
  1212. 1165:Drivers/CMSIS/Include/core_cm4.h ****
  1213. 1166:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM1_Pos 8U /*!< TPI FIF
  1214. 1167:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM1_Msk (0xFFUL << TPI_FIFO1_ITM1_Pos) /*!< TPI FIF
  1215. 1168:Drivers/CMSIS/Include/core_cm4.h ****
  1216. 1169:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM0_Pos 0U /*!< TPI FIF
  1217. 1170:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_FIFO1_ITM0_Msk (0xFFUL /*<< TPI_FIFO1_ITM0_Pos*/) /*!< TPI FIF
  1218. 1171:Drivers/CMSIS/Include/core_cm4.h ****
  1219. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 22
  1220. 1172:Drivers/CMSIS/Include/core_cm4.h **** /* TPI ITATBCTR0 Register Definitions */
  1221. 1173:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR0_ATREADY2_Pos 0U /*!< TPI ITA
  1222. 1174:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR0_ATREADY2_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY2_Pos*/) /*!< TPI ITA
  1223. 1175:Drivers/CMSIS/Include/core_cm4.h ****
  1224. 1176:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR0_ATREADY1_Pos 0U /*!< TPI ITA
  1225. 1177:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITATBCTR0_ATREADY1_Msk (0x1UL /*<< TPI_ITATBCTR0_ATREADY1_Pos*/) /*!< TPI ITA
  1226. 1178:Drivers/CMSIS/Include/core_cm4.h ****
  1227. 1179:Drivers/CMSIS/Include/core_cm4.h **** /* TPI Integration Mode Control Register Definitions */
  1228. 1180:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITCTRL_Mode_Pos 0U /*!< TPI ITC
  1229. 1181:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_ITCTRL_Mode_Msk (0x3UL /*<< TPI_ITCTRL_Mode_Pos*/) /*!< TPI ITC
  1230. 1182:Drivers/CMSIS/Include/core_cm4.h ****
  1231. 1183:Drivers/CMSIS/Include/core_cm4.h **** /* TPI DEVID Register Definitions */
  1232. 1184:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_NRZVALID_Pos 11U /*!< TPI DEV
  1233. 1185:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_NRZVALID_Msk (0x1UL << TPI_DEVID_NRZVALID_Pos) /*!< TPI DEV
  1234. 1186:Drivers/CMSIS/Include/core_cm4.h ****
  1235. 1187:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_MANCVALID_Pos 10U /*!< TPI DEV
  1236. 1188:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_MANCVALID_Msk (0x1UL << TPI_DEVID_MANCVALID_Pos) /*!< TPI DEV
  1237. 1189:Drivers/CMSIS/Include/core_cm4.h ****
  1238. 1190:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_PTINVALID_Pos 9U /*!< TPI DEV
  1239. 1191:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEV
  1240. 1192:Drivers/CMSIS/Include/core_cm4.h ****
  1241. 1193:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEV
  1242. 1194:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEV
  1243. 1195:Drivers/CMSIS/Include/core_cm4.h ****
  1244. 1196:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_AsynClkIn_Pos 5U /*!< TPI DEV
  1245. 1197:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_AsynClkIn_Msk (0x1UL << TPI_DEVID_AsynClkIn_Pos) /*!< TPI DEV
  1246. 1198:Drivers/CMSIS/Include/core_cm4.h ****
  1247. 1199:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_NrTraceInput_Pos 0U /*!< TPI DEV
  1248. 1200:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVID_NrTraceInput_Msk (0x1FUL /*<< TPI_DEVID_NrTraceInput_Pos*/) /*!< TPI DEV
  1249. 1201:Drivers/CMSIS/Include/core_cm4.h ****
  1250. 1202:Drivers/CMSIS/Include/core_cm4.h **** /* TPI DEVTYPE Register Definitions */
  1251. 1203:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVTYPE_SubType_Pos 4U /*!< TPI DEV
  1252. 1204:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVTYPE_SubType_Msk (0xFUL /*<< TPI_DEVTYPE_SubType_Pos*/) /*!< TPI DEV
  1253. 1205:Drivers/CMSIS/Include/core_cm4.h ****
  1254. 1206:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVTYPE_MajorType_Pos 0U /*!< TPI DEV
  1255. 1207:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_DEVTYPE_MajorType_Msk (0xFUL << TPI_DEVTYPE_MajorType_Pos) /*!< TPI DEV
  1256. 1208:Drivers/CMSIS/Include/core_cm4.h ****
  1257. 1209:Drivers/CMSIS/Include/core_cm4.h **** /*@}*/ /* end of group CMSIS_TPI */
  1258. 1210:Drivers/CMSIS/Include/core_cm4.h ****
  1259. 1211:Drivers/CMSIS/Include/core_cm4.h ****
  1260. 1212:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
  1261. 1213:Drivers/CMSIS/Include/core_cm4.h **** /**
  1262. 1214:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1263. 1215:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_MPU Memory Protection Unit (MPU)
  1264. 1216:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Memory Protection Unit (MPU)
  1265. 1217:Drivers/CMSIS/Include/core_cm4.h **** @{
  1266. 1218:Drivers/CMSIS/Include/core_cm4.h **** */
  1267. 1219:Drivers/CMSIS/Include/core_cm4.h ****
  1268. 1220:Drivers/CMSIS/Include/core_cm4.h **** /**
  1269. 1221:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Memory Protection Unit (MPU).
  1270. 1222:Drivers/CMSIS/Include/core_cm4.h **** */
  1271. 1223:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  1272. 1224:Drivers/CMSIS/Include/core_cm4.h **** {
  1273. 1225:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t TYPE; /*!< Offset: 0x000 (R/ ) MPU Type Register */
  1274. 1226:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t CTRL; /*!< Offset: 0x004 (R/W) MPU Control Register */
  1275. 1227:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RNR; /*!< Offset: 0x008 (R/W) MPU Region RNRber Register */
  1276. 1228:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RBAR; /*!< Offset: 0x00C (R/W) MPU Region Base Address Register
  1277. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 23
  1278. 1229:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RASR; /*!< Offset: 0x010 (R/W) MPU Region Attribute and Size Re
  1279. 1230:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RBAR_A1; /*!< Offset: 0x014 (R/W) MPU Alias 1 Region Base Address
  1280. 1231:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RASR_A1; /*!< Offset: 0x018 (R/W) MPU Alias 1 Region Attribute and
  1281. 1232:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RBAR_A2; /*!< Offset: 0x01C (R/W) MPU Alias 2 Region Base Address
  1282. 1233:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RASR_A2; /*!< Offset: 0x020 (R/W) MPU Alias 2 Region Attribute and
  1283. 1234:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RBAR_A3; /*!< Offset: 0x024 (R/W) MPU Alias 3 Region Base Address
  1284. 1235:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t RASR_A3; /*!< Offset: 0x028 (R/W) MPU Alias 3 Region Attribute and
  1285. 1236:Drivers/CMSIS/Include/core_cm4.h **** } MPU_Type;
  1286. 1237:Drivers/CMSIS/Include/core_cm4.h ****
  1287. 1238:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_RALIASES 4U
  1288. 1239:Drivers/CMSIS/Include/core_cm4.h ****
  1289. 1240:Drivers/CMSIS/Include/core_cm4.h **** /* MPU Type Register Definitions */
  1290. 1241:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_IREGION_Pos 16U /*!< MPU
  1291. 1242:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_IREGION_Msk (0xFFUL << MPU_TYPE_IREGION_Pos) /*!< MPU
  1292. 1243:Drivers/CMSIS/Include/core_cm4.h ****
  1293. 1244:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_DREGION_Pos 8U /*!< MPU
  1294. 1245:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_DREGION_Msk (0xFFUL << MPU_TYPE_DREGION_Pos) /*!< MPU
  1295. 1246:Drivers/CMSIS/Include/core_cm4.h ****
  1296. 1247:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_SEPARATE_Pos 0U /*!< MPU
  1297. 1248:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU
  1298. 1249:Drivers/CMSIS/Include/core_cm4.h ****
  1299. 1250:Drivers/CMSIS/Include/core_cm4.h **** /* MPU Control Register Definitions */
  1300. 1251:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU
  1301. 1252:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_PRIVDEFENA_Msk (1UL << MPU_CTRL_PRIVDEFENA_Pos) /*!< MPU
  1302. 1253:Drivers/CMSIS/Include/core_cm4.h ****
  1303. 1254:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_HFNMIENA_Pos 1U /*!< MPU
  1304. 1255:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_HFNMIENA_Msk (1UL << MPU_CTRL_HFNMIENA_Pos) /*!< MPU
  1305. 1256:Drivers/CMSIS/Include/core_cm4.h ****
  1306. 1257:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_ENABLE_Pos 0U /*!< MPU
  1307. 1258:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_CTRL_ENABLE_Msk (1UL /*<< MPU_CTRL_ENABLE_Pos*/) /*!< MPU
  1308. 1259:Drivers/CMSIS/Include/core_cm4.h ****
  1309. 1260:Drivers/CMSIS/Include/core_cm4.h **** /* MPU Region Number Register Definitions */
  1310. 1261:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RNR_REGION_Pos 0U /*!< MPU
  1311. 1262:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RNR_REGION_Msk (0xFFUL /*<< MPU_RNR_REGION_Pos*/) /*!< MPU
  1312. 1263:Drivers/CMSIS/Include/core_cm4.h ****
  1313. 1264:Drivers/CMSIS/Include/core_cm4.h **** /* MPU Region Base Address Register Definitions */
  1314. 1265:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_ADDR_Pos 5U /*!< MPU
  1315. 1266:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_ADDR_Msk (0x7FFFFFFUL << MPU_RBAR_ADDR_Pos) /*!< MPU
  1316. 1267:Drivers/CMSIS/Include/core_cm4.h ****
  1317. 1268:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_VALID_Pos 4U /*!< MPU
  1318. 1269:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_VALID_Msk (1UL << MPU_RBAR_VALID_Pos) /*!< MPU
  1319. 1270:Drivers/CMSIS/Include/core_cm4.h ****
  1320. 1271:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_REGION_Pos 0U /*!< MPU
  1321. 1272:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RBAR_REGION_Msk (0xFUL /*<< MPU_RBAR_REGION_Pos*/) /*!< MPU
  1322. 1273:Drivers/CMSIS/Include/core_cm4.h ****
  1323. 1274:Drivers/CMSIS/Include/core_cm4.h **** /* MPU Region Attribute and Size Register Definitions */
  1324. 1275:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_ATTRS_Pos 16U /*!< MPU
  1325. 1276:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_ATTRS_Msk (0xFFFFUL << MPU_RASR_ATTRS_Pos) /*!< MPU
  1326. 1277:Drivers/CMSIS/Include/core_cm4.h ****
  1327. 1278:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_XN_Pos 28U /*!< MPU
  1328. 1279:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_XN_Msk (1UL << MPU_RASR_XN_Pos) /*!< MPU
  1329. 1280:Drivers/CMSIS/Include/core_cm4.h ****
  1330. 1281:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_AP_Pos 24U /*!< MPU
  1331. 1282:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_AP_Msk (0x7UL << MPU_RASR_AP_Pos) /*!< MPU
  1332. 1283:Drivers/CMSIS/Include/core_cm4.h ****
  1333. 1284:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_TEX_Pos 19U /*!< MPU
  1334. 1285:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_TEX_Msk (0x7UL << MPU_RASR_TEX_Pos) /*!< MPU
  1335. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 24
  1336. 1286:Drivers/CMSIS/Include/core_cm4.h ****
  1337. 1287:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_S_Pos 18U /*!< MPU
  1338. 1288:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_S_Msk (1UL << MPU_RASR_S_Pos) /*!< MPU
  1339. 1289:Drivers/CMSIS/Include/core_cm4.h ****
  1340. 1290:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_C_Pos 17U /*!< MPU
  1341. 1291:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_C_Msk (1UL << MPU_RASR_C_Pos) /*!< MPU
  1342. 1292:Drivers/CMSIS/Include/core_cm4.h ****
  1343. 1293:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_B_Pos 16U /*!< MPU
  1344. 1294:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_B_Msk (1UL << MPU_RASR_B_Pos) /*!< MPU
  1345. 1295:Drivers/CMSIS/Include/core_cm4.h ****
  1346. 1296:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_SRD_Pos 8U /*!< MPU
  1347. 1297:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_SRD_Msk (0xFFUL << MPU_RASR_SRD_Pos) /*!< MPU
  1348. 1298:Drivers/CMSIS/Include/core_cm4.h ****
  1349. 1299:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_SIZE_Pos 1U /*!< MPU
  1350. 1300:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_SIZE_Msk (0x1FUL << MPU_RASR_SIZE_Pos) /*!< MPU
  1351. 1301:Drivers/CMSIS/Include/core_cm4.h ****
  1352. 1302:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_ENABLE_Pos 0U /*!< MPU
  1353. 1303:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_RASR_ENABLE_Msk (1UL /*<< MPU_RASR_ENABLE_Pos*/) /*!< MPU
  1354. 1304:Drivers/CMSIS/Include/core_cm4.h ****
  1355. 1305:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_MPU */
  1356. 1306:Drivers/CMSIS/Include/core_cm4.h **** #endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */
  1357. 1307:Drivers/CMSIS/Include/core_cm4.h ****
  1358. 1308:Drivers/CMSIS/Include/core_cm4.h ****
  1359. 1309:Drivers/CMSIS/Include/core_cm4.h **** /**
  1360. 1310:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1361. 1311:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_FPU Floating Point Unit (FPU)
  1362. 1312:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Floating Point Unit (FPU)
  1363. 1313:Drivers/CMSIS/Include/core_cm4.h **** @{
  1364. 1314:Drivers/CMSIS/Include/core_cm4.h **** */
  1365. 1315:Drivers/CMSIS/Include/core_cm4.h ****
  1366. 1316:Drivers/CMSIS/Include/core_cm4.h **** /**
  1367. 1317:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Floating Point Unit (FPU).
  1368. 1318:Drivers/CMSIS/Include/core_cm4.h **** */
  1369. 1319:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  1370. 1320:Drivers/CMSIS/Include/core_cm4.h **** {
  1371. 1321:Drivers/CMSIS/Include/core_cm4.h **** uint32_t RESERVED0[1U];
  1372. 1322:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FPCCR; /*!< Offset: 0x004 (R/W) Floating-Point Context Control R
  1373. 1323:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FPCAR; /*!< Offset: 0x008 (R/W) Floating-Point Context Address R
  1374. 1324:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t FPDSCR; /*!< Offset: 0x00C (R/W) Floating-Point Default Status Co
  1375. 1325:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t MVFR0; /*!< Offset: 0x010 (R/ ) Media and FP Feature Register 0
  1376. 1326:Drivers/CMSIS/Include/core_cm4.h **** __IM uint32_t MVFR1; /*!< Offset: 0x014 (R/ ) Media and FP Feature Register 1
  1377. 1327:Drivers/CMSIS/Include/core_cm4.h **** } FPU_Type;
  1378. 1328:Drivers/CMSIS/Include/core_cm4.h ****
  1379. 1329:Drivers/CMSIS/Include/core_cm4.h **** /* Floating-Point Context Control Register Definitions */
  1380. 1330:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_ASPEN_Pos 31U /*!< FPCC
  1381. 1331:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_ASPEN_Msk (1UL << FPU_FPCCR_ASPEN_Pos) /*!< FPCC
  1382. 1332:Drivers/CMSIS/Include/core_cm4.h ****
  1383. 1333:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_LSPEN_Pos 30U /*!< FPCC
  1384. 1334:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_LSPEN_Msk (1UL << FPU_FPCCR_LSPEN_Pos) /*!< FPCC
  1385. 1335:Drivers/CMSIS/Include/core_cm4.h ****
  1386. 1336:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_MONRDY_Pos 8U /*!< FPCC
  1387. 1337:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_MONRDY_Msk (1UL << FPU_FPCCR_MONRDY_Pos) /*!< FPCC
  1388. 1338:Drivers/CMSIS/Include/core_cm4.h ****
  1389. 1339:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_BFRDY_Pos 6U /*!< FPCC
  1390. 1340:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_BFRDY_Msk (1UL << FPU_FPCCR_BFRDY_Pos) /*!< FPCC
  1391. 1341:Drivers/CMSIS/Include/core_cm4.h ****
  1392. 1342:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_MMRDY_Pos 5U /*!< FPCC
  1393. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 25
  1394. 1343:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_MMRDY_Msk (1UL << FPU_FPCCR_MMRDY_Pos) /*!< FPCC
  1395. 1344:Drivers/CMSIS/Include/core_cm4.h ****
  1396. 1345:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_HFRDY_Pos 4U /*!< FPCC
  1397. 1346:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_HFRDY_Msk (1UL << FPU_FPCCR_HFRDY_Pos) /*!< FPCC
  1398. 1347:Drivers/CMSIS/Include/core_cm4.h ****
  1399. 1348:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_THREAD_Pos 3U /*!< FPCC
  1400. 1349:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_THREAD_Msk (1UL << FPU_FPCCR_THREAD_Pos) /*!< FPCC
  1401. 1350:Drivers/CMSIS/Include/core_cm4.h ****
  1402. 1351:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_USER_Pos 1U /*!< FPCC
  1403. 1352:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_USER_Msk (1UL << FPU_FPCCR_USER_Pos) /*!< FPCC
  1404. 1353:Drivers/CMSIS/Include/core_cm4.h ****
  1405. 1354:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_LSPACT_Pos 0U /*!< FPCC
  1406. 1355:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCCR_LSPACT_Msk (1UL /*<< FPU_FPCCR_LSPACT_Pos*/) /*!< FPCC
  1407. 1356:Drivers/CMSIS/Include/core_cm4.h ****
  1408. 1357:Drivers/CMSIS/Include/core_cm4.h **** /* Floating-Point Context Address Register Definitions */
  1409. 1358:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCAR_ADDRESS_Pos 3U /*!< FPCA
  1410. 1359:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPCAR_ADDRESS_Msk (0x1FFFFFFFUL << FPU_FPCAR_ADDRESS_Pos) /*!< FPCA
  1411. 1360:Drivers/CMSIS/Include/core_cm4.h ****
  1412. 1361:Drivers/CMSIS/Include/core_cm4.h **** /* Floating-Point Default Status Control Register Definitions */
  1413. 1362:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_AHP_Pos 26U /*!< FPDS
  1414. 1363:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDS
  1415. 1364:Drivers/CMSIS/Include/core_cm4.h ****
  1416. 1365:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_DN_Pos 25U /*!< FPDS
  1417. 1366:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_DN_Msk (1UL << FPU_FPDSCR_DN_Pos) /*!< FPDS
  1418. 1367:Drivers/CMSIS/Include/core_cm4.h ****
  1419. 1368:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_FZ_Pos 24U /*!< FPDS
  1420. 1369:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_FZ_Msk (1UL << FPU_FPDSCR_FZ_Pos) /*!< FPDS
  1421. 1370:Drivers/CMSIS/Include/core_cm4.h ****
  1422. 1371:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_RMode_Pos 22U /*!< FPDS
  1423. 1372:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_FPDSCR_RMode_Msk (3UL << FPU_FPDSCR_RMode_Pos) /*!< FPDS
  1424. 1373:Drivers/CMSIS/Include/core_cm4.h ****
  1425. 1374:Drivers/CMSIS/Include/core_cm4.h **** /* Media and FP Feature Register 0 Definitions */
  1426. 1375:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_FP_rounding_modes_Pos 28U /*!< MVFR
  1427. 1376:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_FP_rounding_modes_Msk (0xFUL << FPU_MVFR0_FP_rounding_modes_Pos) /*!< MVFR
  1428. 1377:Drivers/CMSIS/Include/core_cm4.h ****
  1429. 1378:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Short_vectors_Pos 24U /*!< MVFR
  1430. 1379:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Short_vectors_Msk (0xFUL << FPU_MVFR0_Short_vectors_Pos) /*!< MVFR
  1431. 1380:Drivers/CMSIS/Include/core_cm4.h ****
  1432. 1381:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Square_root_Pos 20U /*!< MVFR
  1433. 1382:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Square_root_Msk (0xFUL << FPU_MVFR0_Square_root_Pos) /*!< MVFR
  1434. 1383:Drivers/CMSIS/Include/core_cm4.h ****
  1435. 1384:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Divide_Pos 16U /*!< MVFR
  1436. 1385:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Divide_Msk (0xFUL << FPU_MVFR0_Divide_Pos) /*!< MVFR
  1437. 1386:Drivers/CMSIS/Include/core_cm4.h ****
  1438. 1387:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_FP_excep_trapping_Pos 12U /*!< MVFR
  1439. 1388:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_FP_excep_trapping_Msk (0xFUL << FPU_MVFR0_FP_excep_trapping_Pos) /*!< MVFR
  1440. 1389:Drivers/CMSIS/Include/core_cm4.h ****
  1441. 1390:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Double_precision_Pos 8U /*!< MVFR
  1442. 1391:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Double_precision_Msk (0xFUL << FPU_MVFR0_Double_precision_Pos) /*!< MVFR
  1443. 1392:Drivers/CMSIS/Include/core_cm4.h ****
  1444. 1393:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Single_precision_Pos 4U /*!< MVFR
  1445. 1394:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_Single_precision_Msk (0xFUL << FPU_MVFR0_Single_precision_Pos) /*!< MVFR
  1446. 1395:Drivers/CMSIS/Include/core_cm4.h ****
  1447. 1396:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_A_SIMD_registers_Pos 0U /*!< MVFR
  1448. 1397:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR0_A_SIMD_registers_Msk (0xFUL /*<< FPU_MVFR0_A_SIMD_registers_Pos*/) /*!< MVFR
  1449. 1398:Drivers/CMSIS/Include/core_cm4.h ****
  1450. 1399:Drivers/CMSIS/Include/core_cm4.h **** /* Media and FP Feature Register 1 Definitions */
  1451. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 26
  1452. 1400:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FP_fused_MAC_Pos 28U /*!< MVFR
  1453. 1401:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FP_fused_MAC_Msk (0xFUL << FPU_MVFR1_FP_fused_MAC_Pos) /*!< MVFR
  1454. 1402:Drivers/CMSIS/Include/core_cm4.h ****
  1455. 1403:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FP_HPFP_Pos 24U /*!< MVFR
  1456. 1404:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FP_HPFP_Msk (0xFUL << FPU_MVFR1_FP_HPFP_Pos) /*!< MVFR
  1457. 1405:Drivers/CMSIS/Include/core_cm4.h ****
  1458. 1406:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_D_NaN_mode_Pos 4U /*!< MVFR
  1459. 1407:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_D_NaN_mode_Msk (0xFUL << FPU_MVFR1_D_NaN_mode_Pos) /*!< MVFR
  1460. 1408:Drivers/CMSIS/Include/core_cm4.h ****
  1461. 1409:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FtZ_mode_Pos 0U /*!< MVFR
  1462. 1410:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_MVFR1_FtZ_mode_Msk (0xFUL /*<< FPU_MVFR1_FtZ_mode_Pos*/) /*!< MVFR
  1463. 1411:Drivers/CMSIS/Include/core_cm4.h ****
  1464. 1412:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_FPU */
  1465. 1413:Drivers/CMSIS/Include/core_cm4.h ****
  1466. 1414:Drivers/CMSIS/Include/core_cm4.h ****
  1467. 1415:Drivers/CMSIS/Include/core_cm4.h **** /**
  1468. 1416:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1469. 1417:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug)
  1470. 1418:Drivers/CMSIS/Include/core_cm4.h **** \brief Type definitions for the Core Debug Registers
  1471. 1419:Drivers/CMSIS/Include/core_cm4.h **** @{
  1472. 1420:Drivers/CMSIS/Include/core_cm4.h **** */
  1473. 1421:Drivers/CMSIS/Include/core_cm4.h ****
  1474. 1422:Drivers/CMSIS/Include/core_cm4.h **** /**
  1475. 1423:Drivers/CMSIS/Include/core_cm4.h **** \brief Structure type to access the Core Debug Register (CoreDebug).
  1476. 1424:Drivers/CMSIS/Include/core_cm4.h **** */
  1477. 1425:Drivers/CMSIS/Include/core_cm4.h **** typedef struct
  1478. 1426:Drivers/CMSIS/Include/core_cm4.h **** {
  1479. 1427:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t DHCSR; /*!< Offset: 0x000 (R/W) Debug Halting Control and Status
  1480. 1428:Drivers/CMSIS/Include/core_cm4.h **** __OM uint32_t DCRSR; /*!< Offset: 0x004 ( /W) Debug Core Register Selector Reg
  1481. 1429:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t DCRDR; /*!< Offset: 0x008 (R/W) Debug Core Register Data Registe
  1482. 1430:Drivers/CMSIS/Include/core_cm4.h **** __IOM uint32_t DEMCR; /*!< Offset: 0x00C (R/W) Debug Exception and Monitor Cont
  1483. 1431:Drivers/CMSIS/Include/core_cm4.h **** } CoreDebug_Type;
  1484. 1432:Drivers/CMSIS/Include/core_cm4.h ****
  1485. 1433:Drivers/CMSIS/Include/core_cm4.h **** /* Debug Halting Control and Status Register Definitions */
  1486. 1434:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_DBGKEY_Pos 16U /*!< Core
  1487. 1435:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_DBGKEY_Msk (0xFFFFUL << CoreDebug_DHCSR_DBGKEY_Pos) /*!< Core
  1488. 1436:Drivers/CMSIS/Include/core_cm4.h ****
  1489. 1437:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_RESET_ST_Pos 25U /*!< Core
  1490. 1438:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_RESET_ST_Msk (1UL << CoreDebug_DHCSR_S_RESET_ST_Pos) /*!< Core
  1491. 1439:Drivers/CMSIS/Include/core_cm4.h ****
  1492. 1440:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_RETIRE_ST_Pos 24U /*!< Core
  1493. 1441:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_RETIRE_ST_Msk (1UL << CoreDebug_DHCSR_S_RETIRE_ST_Pos) /*!< Core
  1494. 1442:Drivers/CMSIS/Include/core_cm4.h ****
  1495. 1443:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_LOCKUP_Pos 19U /*!< Core
  1496. 1444:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_LOCKUP_Msk (1UL << CoreDebug_DHCSR_S_LOCKUP_Pos) /*!< Core
  1497. 1445:Drivers/CMSIS/Include/core_cm4.h ****
  1498. 1446:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_SLEEP_Pos 18U /*!< Core
  1499. 1447:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_SLEEP_Msk (1UL << CoreDebug_DHCSR_S_SLEEP_Pos) /*!< Core
  1500. 1448:Drivers/CMSIS/Include/core_cm4.h ****
  1501. 1449:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_HALT_Pos 17U /*!< Core
  1502. 1450:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_HALT_Msk (1UL << CoreDebug_DHCSR_S_HALT_Pos) /*!< Core
  1503. 1451:Drivers/CMSIS/Include/core_cm4.h ****
  1504. 1452:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_REGRDY_Pos 16U /*!< Core
  1505. 1453:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_S_REGRDY_Msk (1UL << CoreDebug_DHCSR_S_REGRDY_Pos) /*!< Core
  1506. 1454:Drivers/CMSIS/Include/core_cm4.h ****
  1507. 1455:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_SNAPSTALL_Pos 5U /*!< Core
  1508. 1456:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_SNAPSTALL_Msk (1UL << CoreDebug_DHCSR_C_SNAPSTALL_Pos) /*!< Core
  1509. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 27
  1510. 1457:Drivers/CMSIS/Include/core_cm4.h ****
  1511. 1458:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_MASKINTS_Pos 3U /*!< Core
  1512. 1459:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_MASKINTS_Msk (1UL << CoreDebug_DHCSR_C_MASKINTS_Pos) /*!< Core
  1513. 1460:Drivers/CMSIS/Include/core_cm4.h ****
  1514. 1461:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_STEP_Pos 2U /*!< Core
  1515. 1462:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_STEP_Msk (1UL << CoreDebug_DHCSR_C_STEP_Pos) /*!< Core
  1516. 1463:Drivers/CMSIS/Include/core_cm4.h ****
  1517. 1464:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_HALT_Pos 1U /*!< Core
  1518. 1465:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_HALT_Msk (1UL << CoreDebug_DHCSR_C_HALT_Pos) /*!< Core
  1519. 1466:Drivers/CMSIS/Include/core_cm4.h ****
  1520. 1467:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_DEBUGEN_Pos 0U /*!< Core
  1521. 1468:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DHCSR_C_DEBUGEN_Msk (1UL /*<< CoreDebug_DHCSR_C_DEBUGEN_Pos*/) /*!< Core
  1522. 1469:Drivers/CMSIS/Include/core_cm4.h ****
  1523. 1470:Drivers/CMSIS/Include/core_cm4.h **** /* Debug Core Register Selector Register Definitions */
  1524. 1471:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DCRSR_REGWnR_Pos 16U /*!< Core
  1525. 1472:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DCRSR_REGWnR_Msk (1UL << CoreDebug_DCRSR_REGWnR_Pos) /*!< Core
  1526. 1473:Drivers/CMSIS/Include/core_cm4.h ****
  1527. 1474:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< Core
  1528. 1475:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< Core
  1529. 1476:Drivers/CMSIS/Include/core_cm4.h ****
  1530. 1477:Drivers/CMSIS/Include/core_cm4.h **** /* Debug Exception and Monitor Control Register Definitions */
  1531. 1478:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_TRCENA_Pos 24U /*!< Core
  1532. 1479:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_TRCENA_Msk (1UL << CoreDebug_DEMCR_TRCENA_Pos) /*!< Core
  1533. 1480:Drivers/CMSIS/Include/core_cm4.h ****
  1534. 1481:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_REQ_Pos 19U /*!< Core
  1535. 1482:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_REQ_Msk (1UL << CoreDebug_DEMCR_MON_REQ_Pos) /*!< Core
  1536. 1483:Drivers/CMSIS/Include/core_cm4.h ****
  1537. 1484:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_STEP_Pos 18U /*!< Core
  1538. 1485:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_STEP_Msk (1UL << CoreDebug_DEMCR_MON_STEP_Pos) /*!< Core
  1539. 1486:Drivers/CMSIS/Include/core_cm4.h ****
  1540. 1487:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_PEND_Pos 17U /*!< Core
  1541. 1488:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_PEND_Msk (1UL << CoreDebug_DEMCR_MON_PEND_Pos) /*!< Core
  1542. 1489:Drivers/CMSIS/Include/core_cm4.h ****
  1543. 1490:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_EN_Pos 16U /*!< Core
  1544. 1491:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_MON_EN_Msk (1UL << CoreDebug_DEMCR_MON_EN_Pos) /*!< Core
  1545. 1492:Drivers/CMSIS/Include/core_cm4.h ****
  1546. 1493:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_HARDERR_Pos 10U /*!< Core
  1547. 1494:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_HARDERR_Msk (1UL << CoreDebug_DEMCR_VC_HARDERR_Pos) /*!< Core
  1548. 1495:Drivers/CMSIS/Include/core_cm4.h ****
  1549. 1496:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_INTERR_Pos 9U /*!< Core
  1550. 1497:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_INTERR_Msk (1UL << CoreDebug_DEMCR_VC_INTERR_Pos) /*!< Core
  1551. 1498:Drivers/CMSIS/Include/core_cm4.h ****
  1552. 1499:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_BUSERR_Pos 8U /*!< Core
  1553. 1500:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_BUSERR_Msk (1UL << CoreDebug_DEMCR_VC_BUSERR_Pos) /*!< Core
  1554. 1501:Drivers/CMSIS/Include/core_cm4.h ****
  1555. 1502:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_STATERR_Pos 7U /*!< Core
  1556. 1503:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_STATERR_Msk (1UL << CoreDebug_DEMCR_VC_STATERR_Pos) /*!< Core
  1557. 1504:Drivers/CMSIS/Include/core_cm4.h ****
  1558. 1505:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_CHKERR_Pos 6U /*!< Core
  1559. 1506:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_CHKERR_Msk (1UL << CoreDebug_DEMCR_VC_CHKERR_Pos) /*!< Core
  1560. 1507:Drivers/CMSIS/Include/core_cm4.h ****
  1561. 1508:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_NOCPERR_Pos 5U /*!< Core
  1562. 1509:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_NOCPERR_Msk (1UL << CoreDebug_DEMCR_VC_NOCPERR_Pos) /*!< Core
  1563. 1510:Drivers/CMSIS/Include/core_cm4.h ****
  1564. 1511:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_MMERR_Pos 4U /*!< Core
  1565. 1512:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_MMERR_Msk (1UL << CoreDebug_DEMCR_VC_MMERR_Pos) /*!< Core
  1566. 1513:Drivers/CMSIS/Include/core_cm4.h ****
  1567. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 28
  1568. 1514:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_CORERESET_Pos 0U /*!< Core
  1569. 1515:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_DEMCR_VC_CORERESET_Msk (1UL /*<< CoreDebug_DEMCR_VC_CORERESET_Pos*/) /*!< Core
  1570. 1516:Drivers/CMSIS/Include/core_cm4.h ****
  1571. 1517:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_CoreDebug */
  1572. 1518:Drivers/CMSIS/Include/core_cm4.h ****
  1573. 1519:Drivers/CMSIS/Include/core_cm4.h ****
  1574. 1520:Drivers/CMSIS/Include/core_cm4.h **** /**
  1575. 1521:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1576. 1522:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_core_bitfield Core register bit field macros
  1577. 1523:Drivers/CMSIS/Include/core_cm4.h **** \brief Macros for use with bit field definitions (xxx_Pos, xxx_Msk).
  1578. 1524:Drivers/CMSIS/Include/core_cm4.h **** @{
  1579. 1525:Drivers/CMSIS/Include/core_cm4.h **** */
  1580. 1526:Drivers/CMSIS/Include/core_cm4.h ****
  1581. 1527:Drivers/CMSIS/Include/core_cm4.h **** /**
  1582. 1528:Drivers/CMSIS/Include/core_cm4.h **** \brief Mask and shift a bit field value for use in a register bit range.
  1583. 1529:Drivers/CMSIS/Include/core_cm4.h **** \param[in] field Name of the register bit field.
  1584. 1530:Drivers/CMSIS/Include/core_cm4.h **** \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type.
  1585. 1531:Drivers/CMSIS/Include/core_cm4.h **** \return Masked and shifted value.
  1586. 1532:Drivers/CMSIS/Include/core_cm4.h **** */
  1587. 1533:Drivers/CMSIS/Include/core_cm4.h **** #define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk)
  1588. 1534:Drivers/CMSIS/Include/core_cm4.h ****
  1589. 1535:Drivers/CMSIS/Include/core_cm4.h **** /**
  1590. 1536:Drivers/CMSIS/Include/core_cm4.h **** \brief Mask and shift a register value to extract a bit filed value.
  1591. 1537:Drivers/CMSIS/Include/core_cm4.h **** \param[in] field Name of the register bit field.
  1592. 1538:Drivers/CMSIS/Include/core_cm4.h **** \param[in] value Value of register. This parameter is interpreted as an uint32_t type.
  1593. 1539:Drivers/CMSIS/Include/core_cm4.h **** \return Masked and shifted bit field value.
  1594. 1540:Drivers/CMSIS/Include/core_cm4.h **** */
  1595. 1541:Drivers/CMSIS/Include/core_cm4.h **** #define _FLD2VAL(field, value) (((uint32_t)(value) & field ## _Msk) >> field ## _Pos)
  1596. 1542:Drivers/CMSIS/Include/core_cm4.h ****
  1597. 1543:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of group CMSIS_core_bitfield */
  1598. 1544:Drivers/CMSIS/Include/core_cm4.h ****
  1599. 1545:Drivers/CMSIS/Include/core_cm4.h ****
  1600. 1546:Drivers/CMSIS/Include/core_cm4.h **** /**
  1601. 1547:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_core_register
  1602. 1548:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_core_base Core Definitions
  1603. 1549:Drivers/CMSIS/Include/core_cm4.h **** \brief Definitions for base addresses, unions, and structures.
  1604. 1550:Drivers/CMSIS/Include/core_cm4.h **** @{
  1605. 1551:Drivers/CMSIS/Include/core_cm4.h **** */
  1606. 1552:Drivers/CMSIS/Include/core_cm4.h ****
  1607. 1553:Drivers/CMSIS/Include/core_cm4.h **** /* Memory mapping of Core Hardware */
  1608. 1554:Drivers/CMSIS/Include/core_cm4.h **** #define SCS_BASE (0xE000E000UL) /*!< System Control Space Bas
  1609. 1555:Drivers/CMSIS/Include/core_cm4.h **** #define ITM_BASE (0xE0000000UL) /*!< ITM Base Address */
  1610. 1556:Drivers/CMSIS/Include/core_cm4.h **** #define DWT_BASE (0xE0001000UL) /*!< DWT Base Address */
  1611. 1557:Drivers/CMSIS/Include/core_cm4.h **** #define TPI_BASE (0xE0040000UL) /*!< TPI Base Address */
  1612. 1558:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug_BASE (0xE000EDF0UL) /*!< Core Debug Base Address
  1613. 1559:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick_BASE (SCS_BASE + 0x0010UL) /*!< SysTick Base Address */
  1614. 1560:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_BASE (SCS_BASE + 0x0100UL) /*!< NVIC Base Address */
  1615. 1561:Drivers/CMSIS/Include/core_cm4.h **** #define SCB_BASE (SCS_BASE + 0x0D00UL) /*!< System Control Block Bas
  1616. 1562:Drivers/CMSIS/Include/core_cm4.h ****
  1617. 1563:Drivers/CMSIS/Include/core_cm4.h **** #define SCnSCB ((SCnSCB_Type *) SCS_BASE ) /*!< System control Register
  1618. 1564:Drivers/CMSIS/Include/core_cm4.h **** #define SCB ((SCB_Type *) SCB_BASE ) /*!< SCB configuration struct
  1619. 1565:Drivers/CMSIS/Include/core_cm4.h **** #define SysTick ((SysTick_Type *) SysTick_BASE ) /*!< SysTick configuration st
  1620. 1566:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC ((NVIC_Type *) NVIC_BASE ) /*!< NVIC configuration struc
  1621. 1567:Drivers/CMSIS/Include/core_cm4.h **** #define ITM ((ITM_Type *) ITM_BASE ) /*!< ITM configuration struct
  1622. 1568:Drivers/CMSIS/Include/core_cm4.h **** #define DWT ((DWT_Type *) DWT_BASE ) /*!< DWT configuration struct
  1623. 1569:Drivers/CMSIS/Include/core_cm4.h **** #define TPI ((TPI_Type *) TPI_BASE ) /*!< TPI configuration struct
  1624. 1570:Drivers/CMSIS/Include/core_cm4.h **** #define CoreDebug ((CoreDebug_Type *) CoreDebug_BASE) /*!< Core Debug configuration
  1625. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 29
  1626. 1571:Drivers/CMSIS/Include/core_cm4.h ****
  1627. 1572:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
  1628. 1573:Drivers/CMSIS/Include/core_cm4.h **** #define MPU_BASE (SCS_BASE + 0x0D90UL) /*!< Memory Protection Unit *
  1629. 1574:Drivers/CMSIS/Include/core_cm4.h **** #define MPU ((MPU_Type *) MPU_BASE ) /*!< Memory Protection Unit *
  1630. 1575:Drivers/CMSIS/Include/core_cm4.h **** #endif
  1631. 1576:Drivers/CMSIS/Include/core_cm4.h ****
  1632. 1577:Drivers/CMSIS/Include/core_cm4.h **** #define FPU_BASE (SCS_BASE + 0x0F30UL) /*!< Floating Point Unit */
  1633. 1578:Drivers/CMSIS/Include/core_cm4.h **** #define FPU ((FPU_Type *) FPU_BASE ) /*!< Floating Point Unit */
  1634. 1579:Drivers/CMSIS/Include/core_cm4.h ****
  1635. 1580:Drivers/CMSIS/Include/core_cm4.h **** /*@} */
  1636. 1581:Drivers/CMSIS/Include/core_cm4.h ****
  1637. 1582:Drivers/CMSIS/Include/core_cm4.h ****
  1638. 1583:Drivers/CMSIS/Include/core_cm4.h ****
  1639. 1584:Drivers/CMSIS/Include/core_cm4.h **** /*******************************************************************************
  1640. 1585:Drivers/CMSIS/Include/core_cm4.h **** * Hardware Abstraction Layer
  1641. 1586:Drivers/CMSIS/Include/core_cm4.h **** Core Function Interface contains:
  1642. 1587:Drivers/CMSIS/Include/core_cm4.h **** - Core NVIC Functions
  1643. 1588:Drivers/CMSIS/Include/core_cm4.h **** - Core SysTick Functions
  1644. 1589:Drivers/CMSIS/Include/core_cm4.h **** - Core Debug Functions
  1645. 1590:Drivers/CMSIS/Include/core_cm4.h **** - Core Register Access Functions
  1646. 1591:Drivers/CMSIS/Include/core_cm4.h **** ******************************************************************************/
  1647. 1592:Drivers/CMSIS/Include/core_cm4.h **** /**
  1648. 1593:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_Core_FunctionInterface Functions and Instructions Reference
  1649. 1594:Drivers/CMSIS/Include/core_cm4.h **** */
  1650. 1595:Drivers/CMSIS/Include/core_cm4.h ****
  1651. 1596:Drivers/CMSIS/Include/core_cm4.h ****
  1652. 1597:Drivers/CMSIS/Include/core_cm4.h ****
  1653. 1598:Drivers/CMSIS/Include/core_cm4.h **** /* ########################## NVIC functions #################################### */
  1654. 1599:Drivers/CMSIS/Include/core_cm4.h **** /**
  1655. 1600:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_Core_FunctionInterface
  1656. 1601:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_Core_NVICFunctions NVIC Functions
  1657. 1602:Drivers/CMSIS/Include/core_cm4.h **** \brief Functions that manage interrupts and exceptions via the NVIC.
  1658. 1603:Drivers/CMSIS/Include/core_cm4.h **** @{
  1659. 1604:Drivers/CMSIS/Include/core_cm4.h **** */
  1660. 1605:Drivers/CMSIS/Include/core_cm4.h ****
  1661. 1606:Drivers/CMSIS/Include/core_cm4.h **** #ifdef CMSIS_NVIC_VIRTUAL
  1662. 1607:Drivers/CMSIS/Include/core_cm4.h **** #ifndef CMSIS_NVIC_VIRTUAL_HEADER_FILE
  1663. 1608:Drivers/CMSIS/Include/core_cm4.h **** #define CMSIS_NVIC_VIRTUAL_HEADER_FILE "cmsis_nvic_virtual.h"
  1664. 1609:Drivers/CMSIS/Include/core_cm4.h **** #endif
  1665. 1610:Drivers/CMSIS/Include/core_cm4.h **** #include CMSIS_NVIC_VIRTUAL_HEADER_FILE
  1666. 1611:Drivers/CMSIS/Include/core_cm4.h **** #else
  1667. 1612:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_SetPriorityGrouping __NVIC_SetPriorityGrouping
  1668. 1613:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetPriorityGrouping __NVIC_GetPriorityGrouping
  1669. 1614:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_EnableIRQ __NVIC_EnableIRQ
  1670. 1615:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetEnableIRQ __NVIC_GetEnableIRQ
  1671. 1616:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_DisableIRQ __NVIC_DisableIRQ
  1672. 1617:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetPendingIRQ __NVIC_GetPendingIRQ
  1673. 1618:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_SetPendingIRQ __NVIC_SetPendingIRQ
  1674. 1619:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_ClearPendingIRQ __NVIC_ClearPendingIRQ
  1675. 1620:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetActive __NVIC_GetActive
  1676. 1621:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_SetPriority __NVIC_SetPriority
  1677. 1622:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetPriority __NVIC_GetPriority
  1678. 1623:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_SystemReset __NVIC_SystemReset
  1679. 1624:Drivers/CMSIS/Include/core_cm4.h **** #endif /* CMSIS_NVIC_VIRTUAL */
  1680. 1625:Drivers/CMSIS/Include/core_cm4.h ****
  1681. 1626:Drivers/CMSIS/Include/core_cm4.h **** #ifdef CMSIS_VECTAB_VIRTUAL
  1682. 1627:Drivers/CMSIS/Include/core_cm4.h **** #ifndef CMSIS_VECTAB_VIRTUAL_HEADER_FILE
  1683. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 30
  1684. 1628:Drivers/CMSIS/Include/core_cm4.h **** #define CMSIS_VECTAB_VIRTUAL_HEADER_FILE "cmsis_vectab_virtual.h"
  1685. 1629:Drivers/CMSIS/Include/core_cm4.h **** #endif
  1686. 1630:Drivers/CMSIS/Include/core_cm4.h **** #include CMSIS_VECTAB_VIRTUAL_HEADER_FILE
  1687. 1631:Drivers/CMSIS/Include/core_cm4.h **** #else
  1688. 1632:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_SetVector __NVIC_SetVector
  1689. 1633:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_GetVector __NVIC_GetVector
  1690. 1634:Drivers/CMSIS/Include/core_cm4.h **** #endif /* (CMSIS_VECTAB_VIRTUAL) */
  1691. 1635:Drivers/CMSIS/Include/core_cm4.h ****
  1692. 1636:Drivers/CMSIS/Include/core_cm4.h **** #define NVIC_USER_IRQ_OFFSET 16
  1693. 1637:Drivers/CMSIS/Include/core_cm4.h ****
  1694. 1638:Drivers/CMSIS/Include/core_cm4.h ****
  1695. 1639:Drivers/CMSIS/Include/core_cm4.h **** /* The following EXC_RETURN values are saved the LR on exception entry */
  1696. 1640:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_HANDLER (0xFFFFFFF1UL) /* return to Handler mode, uses MSP after ret
  1697. 1641:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_THREAD_MSP (0xFFFFFFF9UL) /* return to Thread mode, uses MSP after retu
  1698. 1642:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_THREAD_PSP (0xFFFFFFFDUL) /* return to Thread mode, uses PSP after retu
  1699. 1643:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_HANDLER_FPU (0xFFFFFFE1UL) /* return to Handler mode, uses MSP after ret
  1700. 1644:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after retu
  1701. 1645:Drivers/CMSIS/Include/core_cm4.h **** #define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after retu
  1702. 1646:Drivers/CMSIS/Include/core_cm4.h ****
  1703. 1647:Drivers/CMSIS/Include/core_cm4.h ****
  1704. 1648:Drivers/CMSIS/Include/core_cm4.h **** /**
  1705. 1649:Drivers/CMSIS/Include/core_cm4.h **** \brief Set Priority Grouping
  1706. 1650:Drivers/CMSIS/Include/core_cm4.h **** \details Sets the priority grouping field using the required unlock sequence.
  1707. 1651:Drivers/CMSIS/Include/core_cm4.h **** The parameter PriorityGroup is assigned to the field SCB->AIRCR [10:8] PRIGROUP field.
  1708. 1652:Drivers/CMSIS/Include/core_cm4.h **** Only values from 0..7 are used.
  1709. 1653:Drivers/CMSIS/Include/core_cm4.h **** In case of a conflict between priority grouping and available
  1710. 1654:Drivers/CMSIS/Include/core_cm4.h **** priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set.
  1711. 1655:Drivers/CMSIS/Include/core_cm4.h **** \param [in] PriorityGroup Priority grouping field.
  1712. 1656:Drivers/CMSIS/Include/core_cm4.h **** */
  1713. 1657:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_SetPriorityGrouping(uint32_t PriorityGroup)
  1714. 1658:Drivers/CMSIS/Include/core_cm4.h **** {
  1715. 28 .loc 1 1658 1
  1716. 29 .cfi_startproc
  1717. 30 @ args = 0, pretend = 0, frame = 16
  1718. 31 @ frame_needed = 1, uses_anonymous_args = 0
  1719. 32 @ link register save eliminated.
  1720. 33 0000 80B4 push {r7}
  1721. 34 .LCFI0:
  1722. 35 .cfi_def_cfa_offset 4
  1723. 36 .cfi_offset 7, -4
  1724. 37 0002 85B0 sub sp, sp, #20
  1725. 38 .LCFI1:
  1726. 39 .cfi_def_cfa_offset 24
  1727. 40 0004 00AF add r7, sp, #0
  1728. 41 .LCFI2:
  1729. 42 .cfi_def_cfa_register 7
  1730. 43 0006 7860 str r0, [r7, #4]
  1731. 1659:Drivers/CMSIS/Include/core_cm4.h **** uint32_t reg_value;
  1732. 1660:Drivers/CMSIS/Include/core_cm4.h **** uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 a
  1733. 44 .loc 1 1660 12
  1734. 45 0008 7B68 ldr r3, [r7, #4]
  1735. 46 000a 03F00703 and r3, r3, #7
  1736. 47 000e FB60 str r3, [r7, #12]
  1737. 1661:Drivers/CMSIS/Include/core_cm4.h ****
  1738. 1662:Drivers/CMSIS/Include/core_cm4.h **** reg_value = SCB->AIRCR; /* read old register
  1739. 48 .loc 1 1662 20
  1740. 49 0010 0C4B ldr r3, .L2
  1741. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 31
  1742. 50 .loc 1 1662 14
  1743. 51 0012 DB68 ldr r3, [r3, #12]
  1744. 52 0014 BB60 str r3, [r7, #8]
  1745. 1663:Drivers/CMSIS/Include/core_cm4.h **** reg_value &= ~((uint32_t)(SCB_AIRCR_VECTKEY_Msk | SCB_AIRCR_PRIGROUP_Msk)); /* clear bits to chan
  1746. 53 .loc 1 1663 13
  1747. 54 0016 BA68 ldr r2, [r7, #8]
  1748. 55 0018 4FF6FF03 movw r3, #63743
  1749. 56 001c 1340 ands r3, r3, r2
  1750. 57 001e BB60 str r3, [r7, #8]
  1751. 1664:Drivers/CMSIS/Include/core_cm4.h **** reg_value = (reg_value |
  1752. 1665:Drivers/CMSIS/Include/core_cm4.h **** ((uint32_t)0x5FAUL << SCB_AIRCR_VECTKEY_Pos) |
  1753. 1666:Drivers/CMSIS/Include/core_cm4.h **** (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key a
  1754. 58 .loc 1 1666 35
  1755. 59 0020 FB68 ldr r3, [r7, #12]
  1756. 60 0022 1A02 lsls r2, r3, #8
  1757. 1665:Drivers/CMSIS/Include/core_cm4.h **** (PriorityGroupTmp << SCB_AIRCR_PRIGROUP_Pos) ); /* Insert write key a
  1758. 61 .loc 1 1665 62
  1759. 62 0024 BB68 ldr r3, [r7, #8]
  1760. 63 0026 1343 orrs r3, r3, r2
  1761. 1664:Drivers/CMSIS/Include/core_cm4.h **** reg_value = (reg_value |
  1762. 64 .loc 1 1664 14
  1763. 65 0028 43F0BF63 orr r3, r3, #100139008
  1764. 66 002c 43F40033 orr r3, r3, #131072
  1765. 67 0030 BB60 str r3, [r7, #8]
  1766. 1667:Drivers/CMSIS/Include/core_cm4.h **** SCB->AIRCR = reg_value;
  1767. 68 .loc 1 1667 6
  1768. 69 0032 044A ldr r2, .L2
  1769. 70 .loc 1 1667 14
  1770. 71 0034 BB68 ldr r3, [r7, #8]
  1771. 72 0036 D360 str r3, [r2, #12]
  1772. 1668:Drivers/CMSIS/Include/core_cm4.h **** }
  1773. 73 .loc 1 1668 1
  1774. 74 0038 00BF nop
  1775. 75 003a 1437 adds r7, r7, #20
  1776. 76 .LCFI3:
  1777. 77 .cfi_def_cfa_offset 4
  1778. 78 003c BD46 mov sp, r7
  1779. 79 .LCFI4:
  1780. 80 .cfi_def_cfa_register 13
  1781. 81 @ sp needed
  1782. 82 003e 5DF8047B ldr r7, [sp], #4
  1783. 83 .LCFI5:
  1784. 84 .cfi_restore 7
  1785. 85 .cfi_def_cfa_offset 0
  1786. 86 0042 7047 bx lr
  1787. 87 .L3:
  1788. 88 .align 2
  1789. 89 .L2:
  1790. 90 0044 00ED00E0 .word -536810240
  1791. 91 .cfi_endproc
  1792. 92 .LFE102:
  1793. 94 .section .text.__NVIC_GetPriorityGrouping,"ax",%progbits
  1794. 95 .align 1
  1795. 96 .syntax unified
  1796. 97 .thumb
  1797. 98 .thumb_func
  1798. 100 __NVIC_GetPriorityGrouping:
  1799. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 32
  1800. 101 .LFB103:
  1801. 1669:Drivers/CMSIS/Include/core_cm4.h ****
  1802. 1670:Drivers/CMSIS/Include/core_cm4.h ****
  1803. 1671:Drivers/CMSIS/Include/core_cm4.h **** /**
  1804. 1672:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Priority Grouping
  1805. 1673:Drivers/CMSIS/Include/core_cm4.h **** \details Reads the priority grouping field from the NVIC Interrupt Controller.
  1806. 1674:Drivers/CMSIS/Include/core_cm4.h **** \return Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field).
  1807. 1675:Drivers/CMSIS/Include/core_cm4.h **** */
  1808. 1676:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetPriorityGrouping(void)
  1809. 1677:Drivers/CMSIS/Include/core_cm4.h **** {
  1810. 102 .loc 1 1677 1
  1811. 103 .cfi_startproc
  1812. 104 @ args = 0, pretend = 0, frame = 0
  1813. 105 @ frame_needed = 1, uses_anonymous_args = 0
  1814. 106 @ link register save eliminated.
  1815. 107 0000 80B4 push {r7}
  1816. 108 .LCFI6:
  1817. 109 .cfi_def_cfa_offset 4
  1818. 110 .cfi_offset 7, -4
  1819. 111 0002 00AF add r7, sp, #0
  1820. 112 .LCFI7:
  1821. 113 .cfi_def_cfa_register 7
  1822. 1678:Drivers/CMSIS/Include/core_cm4.h **** return ((uint32_t)((SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) >> SCB_AIRCR_PRIGROUP_Pos));
  1823. 114 .loc 1 1678 26
  1824. 115 0004 044B ldr r3, .L6
  1825. 116 0006 DB68 ldr r3, [r3, #12]
  1826. 117 .loc 1 1678 11
  1827. 118 0008 1B0A lsrs r3, r3, #8
  1828. 119 000a 03F00703 and r3, r3, #7
  1829. 1679:Drivers/CMSIS/Include/core_cm4.h **** }
  1830. 120 .loc 1 1679 1
  1831. 121 000e 1846 mov r0, r3
  1832. 122 0010 BD46 mov sp, r7
  1833. 123 .LCFI8:
  1834. 124 .cfi_def_cfa_register 13
  1835. 125 @ sp needed
  1836. 126 0012 5DF8047B ldr r7, [sp], #4
  1837. 127 .LCFI9:
  1838. 128 .cfi_restore 7
  1839. 129 .cfi_def_cfa_offset 0
  1840. 130 0016 7047 bx lr
  1841. 131 .L7:
  1842. 132 .align 2
  1843. 133 .L6:
  1844. 134 0018 00ED00E0 .word -536810240
  1845. 135 .cfi_endproc
  1846. 136 .LFE103:
  1847. 138 .section .text.__NVIC_EnableIRQ,"ax",%progbits
  1848. 139 .align 1
  1849. 140 .syntax unified
  1850. 141 .thumb
  1851. 142 .thumb_func
  1852. 144 __NVIC_EnableIRQ:
  1853. 145 .LFB104:
  1854. 1680:Drivers/CMSIS/Include/core_cm4.h ****
  1855. 1681:Drivers/CMSIS/Include/core_cm4.h ****
  1856. 1682:Drivers/CMSIS/Include/core_cm4.h **** /**
  1857. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 33
  1858. 1683:Drivers/CMSIS/Include/core_cm4.h **** \brief Enable Interrupt
  1859. 1684:Drivers/CMSIS/Include/core_cm4.h **** \details Enables a device specific interrupt in the NVIC interrupt controller.
  1860. 1685:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  1861. 1686:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  1862. 1687:Drivers/CMSIS/Include/core_cm4.h **** */
  1863. 1688:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_EnableIRQ(IRQn_Type IRQn)
  1864. 1689:Drivers/CMSIS/Include/core_cm4.h **** {
  1865. 146 .loc 1 1689 1
  1866. 147 .cfi_startproc
  1867. 148 @ args = 0, pretend = 0, frame = 8
  1868. 149 @ frame_needed = 1, uses_anonymous_args = 0
  1869. 150 @ link register save eliminated.
  1870. 151 0000 80B4 push {r7}
  1871. 152 .LCFI10:
  1872. 153 .cfi_def_cfa_offset 4
  1873. 154 .cfi_offset 7, -4
  1874. 155 0002 83B0 sub sp, sp, #12
  1875. 156 .LCFI11:
  1876. 157 .cfi_def_cfa_offset 16
  1877. 158 0004 00AF add r7, sp, #0
  1878. 159 .LCFI12:
  1879. 160 .cfi_def_cfa_register 7
  1880. 161 0006 0346 mov r3, r0
  1881. 162 0008 FB71 strb r3, [r7, #7]
  1882. 1690:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  1883. 163 .loc 1 1690 6
  1884. 164 000a 97F90730 ldrsb r3, [r7, #7]
  1885. 165 000e 002B cmp r3, #0
  1886. 166 0010 0BDB blt .L10
  1887. 1691:Drivers/CMSIS/Include/core_cm4.h **** {
  1888. 1692:Drivers/CMSIS/Include/core_cm4.h **** NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
  1889. 167 .loc 1 1692 81
  1890. 168 0012 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  1891. 169 0014 03F01F02 and r2, r3, #31
  1892. 170 .loc 1 1692 9
  1893. 171 0018 0749 ldr r1, .L11
  1894. 172 .loc 1 1692 18
  1895. 173 001a 97F90730 ldrsb r3, [r7, #7]
  1896. 174 .loc 1 1692 34
  1897. 175 001e 5B09 lsrs r3, r3, #5
  1898. 176 .loc 1 1692 45
  1899. 177 0020 0120 movs r0, #1
  1900. 178 0022 00FA02F2 lsl r2, r0, r2
  1901. 179 .loc 1 1692 43
  1902. 180 0026 41F82320 str r2, [r1, r3, lsl #2]
  1903. 181 .L10:
  1904. 1693:Drivers/CMSIS/Include/core_cm4.h **** }
  1905. 1694:Drivers/CMSIS/Include/core_cm4.h **** }
  1906. 182 .loc 1 1694 1
  1907. 183 002a 00BF nop
  1908. 184 002c 0C37 adds r7, r7, #12
  1909. 185 .LCFI13:
  1910. 186 .cfi_def_cfa_offset 4
  1911. 187 002e BD46 mov sp, r7
  1912. 188 .LCFI14:
  1913. 189 .cfi_def_cfa_register 13
  1914. 190 @ sp needed
  1915. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 34
  1916. 191 0030 5DF8047B ldr r7, [sp], #4
  1917. 192 .LCFI15:
  1918. 193 .cfi_restore 7
  1919. 194 .cfi_def_cfa_offset 0
  1920. 195 0034 7047 bx lr
  1921. 196 .L12:
  1922. 197 0036 00BF .align 2
  1923. 198 .L11:
  1924. 199 0038 00E100E0 .word -536813312
  1925. 200 .cfi_endproc
  1926. 201 .LFE104:
  1927. 203 .section .text.__NVIC_DisableIRQ,"ax",%progbits
  1928. 204 .align 1
  1929. 205 .syntax unified
  1930. 206 .thumb
  1931. 207 .thumb_func
  1932. 209 __NVIC_DisableIRQ:
  1933. 210 .LFB106:
  1934. 1695:Drivers/CMSIS/Include/core_cm4.h ****
  1935. 1696:Drivers/CMSIS/Include/core_cm4.h ****
  1936. 1697:Drivers/CMSIS/Include/core_cm4.h **** /**
  1937. 1698:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Interrupt Enable status
  1938. 1699:Drivers/CMSIS/Include/core_cm4.h **** \details Returns a device specific interrupt enable status from the NVIC interrupt controller.
  1939. 1700:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  1940. 1701:Drivers/CMSIS/Include/core_cm4.h **** \return 0 Interrupt is not enabled.
  1941. 1702:Drivers/CMSIS/Include/core_cm4.h **** \return 1 Interrupt is enabled.
  1942. 1703:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  1943. 1704:Drivers/CMSIS/Include/core_cm4.h **** */
  1944. 1705:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetEnableIRQ(IRQn_Type IRQn)
  1945. 1706:Drivers/CMSIS/Include/core_cm4.h **** {
  1946. 1707:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  1947. 1708:Drivers/CMSIS/Include/core_cm4.h **** {
  1948. 1709:Drivers/CMSIS/Include/core_cm4.h **** return((uint32_t)(((NVIC->ISER[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL)
  1949. 1710:Drivers/CMSIS/Include/core_cm4.h **** }
  1950. 1711:Drivers/CMSIS/Include/core_cm4.h **** else
  1951. 1712:Drivers/CMSIS/Include/core_cm4.h **** {
  1952. 1713:Drivers/CMSIS/Include/core_cm4.h **** return(0U);
  1953. 1714:Drivers/CMSIS/Include/core_cm4.h **** }
  1954. 1715:Drivers/CMSIS/Include/core_cm4.h **** }
  1955. 1716:Drivers/CMSIS/Include/core_cm4.h ****
  1956. 1717:Drivers/CMSIS/Include/core_cm4.h ****
  1957. 1718:Drivers/CMSIS/Include/core_cm4.h **** /**
  1958. 1719:Drivers/CMSIS/Include/core_cm4.h **** \brief Disable Interrupt
  1959. 1720:Drivers/CMSIS/Include/core_cm4.h **** \details Disables a device specific interrupt in the NVIC interrupt controller.
  1960. 1721:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  1961. 1722:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  1962. 1723:Drivers/CMSIS/Include/core_cm4.h **** */
  1963. 1724:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_DisableIRQ(IRQn_Type IRQn)
  1964. 1725:Drivers/CMSIS/Include/core_cm4.h **** {
  1965. 211 .loc 1 1725 1
  1966. 212 .cfi_startproc
  1967. 213 @ args = 0, pretend = 0, frame = 8
  1968. 214 @ frame_needed = 1, uses_anonymous_args = 0
  1969. 215 @ link register save eliminated.
  1970. 216 0000 80B4 push {r7}
  1971. 217 .LCFI16:
  1972. 218 .cfi_def_cfa_offset 4
  1973. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 35
  1974. 219 .cfi_offset 7, -4
  1975. 220 0002 83B0 sub sp, sp, #12
  1976. 221 .LCFI17:
  1977. 222 .cfi_def_cfa_offset 16
  1978. 223 0004 00AF add r7, sp, #0
  1979. 224 .LCFI18:
  1980. 225 .cfi_def_cfa_register 7
  1981. 226 0006 0346 mov r3, r0
  1982. 227 0008 FB71 strb r3, [r7, #7]
  1983. 1726:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  1984. 228 .loc 1 1726 6
  1985. 229 000a 97F90730 ldrsb r3, [r7, #7]
  1986. 230 000e 002B cmp r3, #0
  1987. 231 0010 12DB blt .L15
  1988. 1727:Drivers/CMSIS/Include/core_cm4.h **** {
  1989. 1728:Drivers/CMSIS/Include/core_cm4.h **** NVIC->ICER[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
  1990. 232 .loc 1 1728 81
  1991. 233 0012 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  1992. 234 0014 03F01F02 and r2, r3, #31
  1993. 235 .loc 1 1728 9
  1994. 236 0018 0A49 ldr r1, .L16
  1995. 237 .loc 1 1728 18
  1996. 238 001a 97F90730 ldrsb r3, [r7, #7]
  1997. 239 .loc 1 1728 34
  1998. 240 001e 5B09 lsrs r3, r3, #5
  1999. 241 .loc 1 1728 45
  2000. 242 0020 0120 movs r0, #1
  2001. 243 0022 00FA02F2 lsl r2, r0, r2
  2002. 244 .loc 1 1728 43
  2003. 245 0026 2033 adds r3, r3, #32
  2004. 246 0028 41F82320 str r2, [r1, r3, lsl #2]
  2005. 247 .LBB10:
  2006. 248 .LBB11:
  2007. 249 .file 2 "Drivers/CMSIS/Include/cmsis_gcc.h"
  2008. 1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//**
  2009. 2:Drivers/CMSIS/Include/cmsis_gcc.h **** * @file cmsis_gcc.h
  2010. 3:Drivers/CMSIS/Include/cmsis_gcc.h **** * @brief CMSIS compiler GCC header file
  2011. 4:Drivers/CMSIS/Include/cmsis_gcc.h **** * @version V5.0.4
  2012. 5:Drivers/CMSIS/Include/cmsis_gcc.h **** * @date 09. April 2018
  2013. 6:Drivers/CMSIS/Include/cmsis_gcc.h **** ******************************************************************************/
  2014. 7:Drivers/CMSIS/Include/cmsis_gcc.h **** /*
  2015. 8:Drivers/CMSIS/Include/cmsis_gcc.h **** * Copyright (c) 2009-2018 Arm Limited. All rights reserved.
  2016. 9:Drivers/CMSIS/Include/cmsis_gcc.h **** *
  2017. 10:Drivers/CMSIS/Include/cmsis_gcc.h **** * SPDX-License-Identifier: Apache-2.0
  2018. 11:Drivers/CMSIS/Include/cmsis_gcc.h **** *
  2019. 12:Drivers/CMSIS/Include/cmsis_gcc.h **** * Licensed under the Apache License, Version 2.0 (the License); you may
  2020. 13:Drivers/CMSIS/Include/cmsis_gcc.h **** * not use this file except in compliance with the License.
  2021. 14:Drivers/CMSIS/Include/cmsis_gcc.h **** * You may obtain a copy of the License at
  2022. 15:Drivers/CMSIS/Include/cmsis_gcc.h **** *
  2023. 16:Drivers/CMSIS/Include/cmsis_gcc.h **** * www.apache.org/licenses/LICENSE-2.0
  2024. 17:Drivers/CMSIS/Include/cmsis_gcc.h **** *
  2025. 18:Drivers/CMSIS/Include/cmsis_gcc.h **** * Unless required by applicable law or agreed to in writing, software
  2026. 19:Drivers/CMSIS/Include/cmsis_gcc.h **** * distributed under the License is distributed on an AS IS BASIS, WITHOUT
  2027. 20:Drivers/CMSIS/Include/cmsis_gcc.h **** * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  2028. 21:Drivers/CMSIS/Include/cmsis_gcc.h **** * See the License for the specific language governing permissions and
  2029. 22:Drivers/CMSIS/Include/cmsis_gcc.h **** * limitations under the License.
  2030. 23:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2031. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 36
  2032. 24:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2033. 25:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __CMSIS_GCC_H
  2034. 26:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_H
  2035. 27:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2036. 28:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ignore some GCC warnings */
  2037. 29:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2038. 30:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wsign-conversion"
  2039. 31:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wconversion"
  2040. 32:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wunused-parameter"
  2041. 33:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2042. 34:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Fallback for __has_builtin */
  2043. 35:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __has_builtin
  2044. 36:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __has_builtin(x) (0)
  2045. 37:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2046. 38:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2047. 39:Drivers/CMSIS/Include/cmsis_gcc.h **** /* CMSIS compiler specific defines */
  2048. 40:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ASM
  2049. 41:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ASM __asm
  2050. 42:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2051. 43:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __INLINE
  2052. 44:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __INLINE inline
  2053. 45:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2054. 46:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_INLINE
  2055. 47:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_INLINE static inline
  2056. 48:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2057. 49:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __STATIC_FORCEINLINE
  2058. 50:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline
  2059. 51:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2060. 52:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __NO_RETURN
  2061. 53:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __NO_RETURN __attribute__((__noreturn__))
  2062. 54:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2063. 55:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __USED
  2064. 56:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __USED __attribute__((used))
  2065. 57:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2066. 58:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __WEAK
  2067. 59:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WEAK __attribute__((weak))
  2068. 60:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2069. 61:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED
  2070. 62:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED __attribute__((packed, aligned(1)))
  2071. 63:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2072. 64:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_STRUCT
  2073. 65:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_STRUCT struct __attribute__((packed, aligned(1)))
  2074. 66:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2075. 67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_UNION
  2076. 68:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_UNION union __attribute__((packed, aligned(1)))
  2077. 69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2078. 70:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32 /* deprecated */
  2079. 71:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2080. 72:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
  2081. 73:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
  2082. 74:Drivers/CMSIS/Include/cmsis_gcc.h **** struct __attribute__((packed)) T_UINT32 { uint32_t v; };
  2083. 75:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
  2084. 76:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v)
  2085. 77:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2086. 78:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_WRITE
  2087. 79:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2088. 80:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
  2089. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 37
  2090. 81:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
  2091. 82:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_WRITE { uint16_t v; };
  2092. 83:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
  2093. 84:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_WRITE(addr, val) (void)((((struct T_UINT16_WRITE *)(void *)(addr))-
  2094. 85:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2095. 86:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_READ
  2096. 87:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2097. 88:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
  2098. 89:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
  2099. 90:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT16_READ { uint16_t v; };
  2100. 91:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
  2101. 92:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT16_READ(addr) (((const struct T_UINT16_READ *)(const void *)(add
  2102. 93:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2103. 94:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_WRITE
  2104. 95:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2105. 96:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
  2106. 97:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
  2107. 98:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_WRITE { uint32_t v; };
  2108. 99:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
  2109. 100:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_WRITE(addr, val) (void)((((struct T_UINT32_WRITE *)(void *)(addr))-
  2110. 101:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2111. 102:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32_READ
  2112. 103:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push
  2113. 104:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked"
  2114. 105:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes"
  2115. 106:Drivers/CMSIS/Include/cmsis_gcc.h **** __PACKED_STRUCT T_UINT32_READ { uint32_t v; };
  2116. 107:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop
  2117. 108:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(add
  2118. 109:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2119. 110:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ALIGNED
  2120. 111:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ALIGNED(x) __attribute__((aligned(x)))
  2121. 112:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2122. 113:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __RESTRICT
  2123. 114:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __RESTRICT __restrict
  2124. 115:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2125. 116:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2126. 117:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2127. 118:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ########################### Core Function Access ########################### */
  2128. 119:Drivers/CMSIS/Include/cmsis_gcc.h **** /** \ingroup CMSIS_Core_FunctionInterface
  2129. 120:Drivers/CMSIS/Include/cmsis_gcc.h **** \defgroup CMSIS_Core_RegAccFunctions CMSIS Core Register Access Functions
  2130. 121:Drivers/CMSIS/Include/cmsis_gcc.h **** @{
  2131. 122:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2132. 123:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2133. 124:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2134. 125:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable IRQ Interrupts
  2135. 126:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables IRQ interrupts by clearing the I-bit in the CPSR.
  2136. 127:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
  2137. 128:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2138. 129:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_irq(void)
  2139. 130:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2140. 131:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsie i" : : : "memory");
  2141. 132:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2142. 133:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2143. 134:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2144. 135:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2145. 136:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Disable IRQ Interrupts
  2146. 137:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Disables IRQ interrupts by setting the I-bit in the CPSR.
  2147. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 38
  2148. 138:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
  2149. 139:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2150. 140:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_irq(void)
  2151. 141:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2152. 142:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsid i" : : : "memory");
  2153. 143:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2154. 144:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2155. 145:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2156. 146:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2157. 147:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Control Register
  2158. 148:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the content of the Control Register.
  2159. 149:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Control Register value
  2160. 150:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2161. 151:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_CONTROL(void)
  2162. 152:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2163. 153:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2164. 154:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2165. 155:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, control" : "=r" (result) );
  2166. 156:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2167. 157:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2168. 158:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2169. 159:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2170. 160:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2171. 161:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2172. 162:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Control Register (non-secure)
  2173. 163:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the content of the non-secure Control Register when in secure mode.
  2174. 164:Drivers/CMSIS/Include/cmsis_gcc.h **** \return non-secure Control Register value
  2175. 165:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2176. 166:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void)
  2177. 167:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2178. 168:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2179. 169:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2180. 170:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, control_ns" : "=r" (result) );
  2181. 171:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2182. 172:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2183. 173:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2184. 174:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2185. 175:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2186. 176:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2187. 177:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Control Register
  2188. 178:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Writes the given value to the Control Register.
  2189. 179:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] control Control Register value to set
  2190. 180:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2191. 181:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_CONTROL(uint32_t control)
  2192. 182:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2193. 183:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR control, %0" : : "r" (control) : "memory");
  2194. 184:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2195. 185:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2196. 186:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2197. 187:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2198. 188:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2199. 189:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Control Register (non-secure)
  2200. 190:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Writes the given value to the non-secure Control Register when in secure state.
  2201. 191:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] control Control Register value to set
  2202. 192:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2203. 193:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control)
  2204. 194:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2205. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 39
  2206. 195:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory");
  2207. 196:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2208. 197:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2209. 198:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2210. 199:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2211. 200:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2212. 201:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get IPSR Register
  2213. 202:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the content of the IPSR Register.
  2214. 203:Drivers/CMSIS/Include/cmsis_gcc.h **** \return IPSR Register value
  2215. 204:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2216. 205:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_IPSR(void)
  2217. 206:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2218. 207:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2219. 208:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2220. 209:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, ipsr" : "=r" (result) );
  2221. 210:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2222. 211:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2223. 212:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2224. 213:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2225. 214:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2226. 215:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get APSR Register
  2227. 216:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the content of the APSR Register.
  2228. 217:Drivers/CMSIS/Include/cmsis_gcc.h **** \return APSR Register value
  2229. 218:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2230. 219:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_APSR(void)
  2231. 220:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2232. 221:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2233. 222:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2234. 223:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, apsr" : "=r" (result) );
  2235. 224:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2236. 225:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2237. 226:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2238. 227:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2239. 228:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2240. 229:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get xPSR Register
  2241. 230:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the content of the xPSR Register.
  2242. 231:Drivers/CMSIS/Include/cmsis_gcc.h **** \return xPSR Register value
  2243. 232:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2244. 233:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_xPSR(void)
  2245. 234:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2246. 235:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2247. 236:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2248. 237:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, xpsr" : "=r" (result) );
  2249. 238:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2250. 239:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2251. 240:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2252. 241:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2253. 242:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2254. 243:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer
  2255. 244:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Process Stack Pointer (PSP).
  2256. 245:Drivers/CMSIS/Include/cmsis_gcc.h **** \return PSP Register value
  2257. 246:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2258. 247:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_PSP(void)
  2259. 248:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2260. 249:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2261. 250:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2262. 251:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psp" : "=r" (result) );
  2263. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 40
  2264. 252:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2265. 253:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2266. 254:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2267. 255:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2268. 256:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2269. 257:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2270. 258:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer (non-secure)
  2271. 259:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Process Stack Pointer (PSP) when in secure s
  2272. 260:Drivers/CMSIS/Include/cmsis_gcc.h **** \return PSP Register value
  2273. 261:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2274. 262:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_PSP_NS(void)
  2275. 263:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2276. 264:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2277. 265:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2278. 266:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psp_ns" : "=r" (result) );
  2279. 267:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2280. 268:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2281. 269:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2282. 270:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2283. 271:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2284. 272:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2285. 273:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Process Stack Pointer
  2286. 274:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Process Stack Pointer (PSP).
  2287. 275:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] topOfProcStack Process Stack Pointer value to set
  2288. 276:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2289. 277:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PSP(uint32_t topOfProcStack)
  2290. 278:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2291. 279:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : );
  2292. 280:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2293. 281:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2294. 282:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2295. 283:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2296. 284:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2297. 285:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Process Stack Pointer (non-secure)
  2298. 286:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Process Stack Pointer (PSP) when in secure sta
  2299. 287:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] topOfProcStack Process Stack Pointer value to set
  2300. 288:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2301. 289:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_PSP_NS(uint32_t topOfProcStack)
  2302. 290:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2303. 291:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR psp_ns, %0" : : "r" (topOfProcStack) : );
  2304. 292:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2305. 293:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2306. 294:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2307. 295:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2308. 296:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2309. 297:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer
  2310. 298:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Main Stack Pointer (MSP).
  2311. 299:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSP Register value
  2312. 300:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2313. 301:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_MSP(void)
  2314. 302:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2315. 303:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2316. 304:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2317. 305:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, msp" : "=r" (result) );
  2318. 306:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2319. 307:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2320. 308:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2321. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 41
  2322. 309:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2323. 310:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2324. 311:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2325. 312:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer (non-secure)
  2326. 313:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Main Stack Pointer (MSP) when in secure stat
  2327. 314:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSP Register value
  2328. 315:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2329. 316:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_MSP_NS(void)
  2330. 317:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2331. 318:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2332. 319:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2333. 320:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, msp_ns" : "=r" (result) );
  2334. 321:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2335. 322:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2336. 323:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2337. 324:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2338. 325:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2339. 326:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2340. 327:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer
  2341. 328:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Main Stack Pointer (MSP).
  2342. 329:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] topOfMainStack Main Stack Pointer value to set
  2343. 330:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2344. 331:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_MSP(uint32_t topOfMainStack)
  2345. 332:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2346. 333:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msp, %0" : : "r" (topOfMainStack) : );
  2347. 334:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2348. 335:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2349. 336:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2350. 337:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2351. 338:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2352. 339:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer (non-secure)
  2353. 340:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state.
  2354. 341:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] topOfMainStack Main Stack Pointer value to set
  2355. 342:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2356. 343:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_MSP_NS(uint32_t topOfMainStack)
  2357. 344:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2358. 345:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msp_ns, %0" : : "r" (topOfMainStack) : );
  2359. 346:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2360. 347:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2361. 348:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2362. 349:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2363. 350:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2364. 351:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2365. 352:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Stack Pointer (non-secure)
  2366. 353:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state.
  2367. 354:Drivers/CMSIS/Include/cmsis_gcc.h **** \return SP Register value
  2368. 355:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2369. 356:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void)
  2370. 357:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2371. 358:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2372. 359:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2373. 360:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, sp_ns" : "=r" (result) );
  2374. 361:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2375. 362:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2376. 363:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2377. 364:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2378. 365:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2379. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 42
  2380. 366:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Stack Pointer (non-secure)
  2381. 367:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Stack Pointer (SP) when in secure state.
  2382. 368:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] topOfStack Stack Pointer value to set
  2383. 369:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2384. 370:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_SP_NS(uint32_t topOfStack)
  2385. 371:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2386. 372:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR sp_ns, %0" : : "r" (topOfStack) : );
  2387. 373:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2388. 374:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2389. 375:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2390. 376:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2391. 377:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2392. 378:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Priority Mask
  2393. 379:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current state of the priority mask bit from the Priority Mask Register.
  2394. 380:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Priority Mask value
  2395. 381:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2396. 382:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_PRIMASK(void)
  2397. 383:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2398. 384:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2399. 385:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2400. 386:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, primask" : "=r" (result) :: "memory");
  2401. 387:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2402. 388:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2403. 389:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2404. 390:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2405. 391:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2406. 392:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2407. 393:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Priority Mask (non-secure)
  2408. 394:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current state of the non-secure priority mask bit from the Priority Mask Reg
  2409. 395:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Priority Mask value
  2410. 396:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2411. 397:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void)
  2412. 398:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2413. 399:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2414. 400:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2415. 401:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, primask_ns" : "=r" (result) :: "memory");
  2416. 402:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2417. 403:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2418. 404:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2419. 405:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2420. 406:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2421. 407:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2422. 408:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Priority Mask
  2423. 409:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Priority Mask Register.
  2424. 410:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] priMask Priority Mask
  2425. 411:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2426. 412:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask)
  2427. 413:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2428. 414:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory");
  2429. 415:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2430. 416:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2431. 417:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2432. 418:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2433. 419:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2434. 420:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Priority Mask (non-secure)
  2435. 421:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Priority Mask Register when in secure state.
  2436. 422:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] priMask Priority Mask
  2437. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 43
  2438. 423:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2439. 424:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_PRIMASK_NS(uint32_t priMask)
  2440. 425:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2441. 426:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR primask_ns, %0" : : "r" (priMask) : "memory");
  2442. 427:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2443. 428:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2444. 429:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2445. 430:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2446. 431:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
  2447. 432:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \
  2448. 433:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) )
  2449. 434:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2450. 435:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable FIQ
  2451. 436:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables FIQ interrupts by clearing the F-bit in the CPSR.
  2452. 437:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
  2453. 438:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2454. 439:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_fault_irq(void)
  2455. 440:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2456. 441:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsie f" : : : "memory");
  2457. 442:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2458. 443:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2459. 444:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2460. 445:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2461. 446:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Disable FIQ
  2462. 447:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Disables FIQ interrupts by setting the F-bit in the CPSR.
  2463. 448:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes.
  2464. 449:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2465. 450:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_fault_irq(void)
  2466. 451:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2467. 452:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsid f" : : : "memory");
  2468. 453:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2469. 454:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2470. 455:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2471. 456:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2472. 457:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Base Priority
  2473. 458:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Base Priority register.
  2474. 459:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Base Priority register value
  2475. 460:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2476. 461:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_BASEPRI(void)
  2477. 462:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2478. 463:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2479. 464:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2480. 465:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, basepri" : "=r" (result) );
  2481. 466:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2482. 467:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2483. 468:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2484. 469:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2485. 470:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2486. 471:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2487. 472:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Base Priority (non-secure)
  2488. 473:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Base Priority register when in secure state.
  2489. 474:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Base Priority register value
  2490. 475:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2491. 476:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void)
  2492. 477:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2493. 478:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2494. 479:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2495. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 44
  2496. 480:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) );
  2497. 481:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2498. 482:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2499. 483:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2500. 484:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2501. 485:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2502. 486:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2503. 487:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Base Priority
  2504. 488:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Base Priority register.
  2505. 489:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] basePri Base Priority value to set
  2506. 490:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2507. 491:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_BASEPRI(uint32_t basePri)
  2508. 492:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2509. 493:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR basepri, %0" : : "r" (basePri) : "memory");
  2510. 494:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2511. 495:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2512. 496:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2513. 497:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2514. 498:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2515. 499:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Base Priority (non-secure)
  2516. 500:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Base Priority register when in secure state.
  2517. 501:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] basePri Base Priority value to set
  2518. 502:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2519. 503:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_BASEPRI_NS(uint32_t basePri)
  2520. 504:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2521. 505:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR basepri_ns, %0" : : "r" (basePri) : "memory");
  2522. 506:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2523. 507:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2524. 508:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2525. 509:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2526. 510:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2527. 511:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Base Priority with condition
  2528. 512:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Base Priority register only if BASEPRI masking is disable
  2529. 513:Drivers/CMSIS/Include/cmsis_gcc.h **** or the new value increases the BASEPRI priority level.
  2530. 514:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] basePri Base Priority value to set
  2531. 515:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2532. 516:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_BASEPRI_MAX(uint32_t basePri)
  2533. 517:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2534. 518:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR basepri_max, %0" : : "r" (basePri) : "memory");
  2535. 519:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2536. 520:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2537. 521:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2538. 522:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2539. 523:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Fault Mask
  2540. 524:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Fault Mask register.
  2541. 525:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Fault Mask register value
  2542. 526:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2543. 527:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void)
  2544. 528:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2545. 529:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2546. 530:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2547. 531:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, faultmask" : "=r" (result) );
  2548. 532:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2549. 533:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2550. 534:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2551. 535:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2552. 536:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2553. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 45
  2554. 537:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2555. 538:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Fault Mask (non-secure)
  2556. 539:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Fault Mask register when in secure state.
  2557. 540:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Fault Mask register value
  2558. 541:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2559. 542:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_FAULTMASK_NS(void)
  2560. 543:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2561. 544:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2562. 545:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2563. 546:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, faultmask_ns" : "=r" (result) );
  2564. 547:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2565. 548:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2566. 549:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2567. 550:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2568. 551:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2569. 552:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2570. 553:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Fault Mask
  2571. 554:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Fault Mask register.
  2572. 555:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] faultMask Fault Mask value to set
  2573. 556:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2574. 557:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_FAULTMASK(uint32_t faultMask)
  2575. 558:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2576. 559:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR faultmask, %0" : : "r" (faultMask) : "memory");
  2577. 560:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2578. 561:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2579. 562:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2580. 563:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2581. 564:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2582. 565:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Fault Mask (non-secure)
  2583. 566:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Fault Mask register when in secure state.
  2584. 567:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] faultMask Fault Mask value to set
  2585. 568:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2586. 569:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_FAULTMASK_NS(uint32_t faultMask)
  2587. 570:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2588. 571:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR faultmask_ns, %0" : : "r" (faultMask) : "memory");
  2589. 572:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2590. 573:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2591. 574:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2592. 575:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif /* ((defined (__ARM_ARCH_7M__ ) && (__ARM_ARCH_7M__ == 1)) || \
  2593. 576:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_7EM__ ) && (__ARM_ARCH_7EM__ == 1)) || \
  2594. 577:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */
  2595. 578:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2596. 579:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2597. 580:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \
  2598. 581:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) )
  2599. 582:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2600. 583:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2601. 584:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer Limit
  2602. 585:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2603. 586:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence zero is returned always in non-secure
  2604. 587:Drivers/CMSIS/Include/cmsis_gcc.h **** mode.
  2605. 588:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2606. 589:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Process Stack Pointer Limit (PSPLIM).
  2607. 590:Drivers/CMSIS/Include/cmsis_gcc.h **** \return PSPLIM Register value
  2608. 591:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2609. 592:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_PSPLIM(void)
  2610. 593:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2611. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 46
  2612. 594:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
  2613. 595:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
  2614. 596:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure PSPLIM is RAZ/WI
  2615. 597:Drivers/CMSIS/Include/cmsis_gcc.h **** return 0U;
  2616. 598:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2617. 599:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2618. 600:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psplim" : "=r" (result) );
  2619. 601:Drivers/CMSIS/Include/cmsis_gcc.h **** return result;
  2620. 602:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2621. 603:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2622. 604:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2623. 605:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE) && (__ARM_FEATURE_CMSE == 3))
  2624. 606:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2625. 607:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer Limit (non-secure)
  2626. 608:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2627. 609:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence zero is returned always.
  2628. 610:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2629. 611:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Process Stack Pointer Limit (PSPLIM) when in
  2630. 612:Drivers/CMSIS/Include/cmsis_gcc.h **** \return PSPLIM Register value
  2631. 613:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2632. 614:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_PSPLIM_NS(void)
  2633. 615:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2634. 616:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)))
  2635. 617:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure PSPLIM is RAZ/WI
  2636. 618:Drivers/CMSIS/Include/cmsis_gcc.h **** return 0U;
  2637. 619:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2638. 620:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2639. 621:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) );
  2640. 622:Drivers/CMSIS/Include/cmsis_gcc.h **** return result;
  2641. 623:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2642. 624:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2643. 625:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2644. 626:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2645. 627:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2646. 628:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2647. 629:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Process Stack Pointer Limit
  2648. 630:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2649. 631:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence the write is silently ignored in non-secure
  2650. 632:Drivers/CMSIS/Include/cmsis_gcc.h **** mode.
  2651. 633:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2652. 634:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM).
  2653. 635:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set
  2654. 636:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2655. 637:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit)
  2656. 638:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2657. 639:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
  2658. 640:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
  2659. 641:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure PSPLIM is RAZ/WI
  2660. 642:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)ProcStackPtrLimit;
  2661. 643:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2662. 644:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR psplim, %0" : : "r" (ProcStackPtrLimit));
  2663. 645:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2664. 646:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2665. 647:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2666. 648:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2667. 649:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2668. 650:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2669. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 47
  2670. 651:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Process Stack Pointer (non-secure)
  2671. 652:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2672. 653:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence the write is silently ignored.
  2673. 654:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2674. 655:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Process Stack Pointer Limit (PSPLIM) when in s
  2675. 656:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set
  2676. 657:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2677. 658:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_PSPLIM_NS(uint32_t ProcStackPtrLimit)
  2678. 659:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2679. 660:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)))
  2680. 661:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure PSPLIM is RAZ/WI
  2681. 662:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)ProcStackPtrLimit;
  2682. 663:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2683. 664:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR psplim_ns, %0\n" : : "r" (ProcStackPtrLimit));
  2684. 665:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2685. 666:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2686. 667:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2687. 668:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2688. 669:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2689. 670:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2690. 671:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer Limit
  2691. 672:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2692. 673:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence zero is returned always in non-secure
  2693. 674:Drivers/CMSIS/Include/cmsis_gcc.h **** mode.
  2694. 675:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2695. 676:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Main Stack Pointer Limit (MSPLIM).
  2696. 677:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSPLIM Register value
  2697. 678:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2698. 679:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_MSPLIM(void)
  2699. 680:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2700. 681:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
  2701. 682:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
  2702. 683:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI
  2703. 684:Drivers/CMSIS/Include/cmsis_gcc.h **** return 0U;
  2704. 685:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2705. 686:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2706. 687:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, msplim" : "=r" (result) );
  2707. 688:Drivers/CMSIS/Include/cmsis_gcc.h **** return result;
  2708. 689:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2709. 690:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2710. 691:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2711. 692:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2712. 693:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2713. 694:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2714. 695:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer Limit (non-secure)
  2715. 696:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2716. 697:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence zero is returned always.
  2717. 698:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2718. 699:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in sec
  2719. 700:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSPLIM Register value
  2720. 701:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2721. 702:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_MSPLIM_NS(void)
  2722. 703:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2723. 704:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)))
  2724. 705:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI
  2725. 706:Drivers/CMSIS/Include/cmsis_gcc.h **** return 0U;
  2726. 707:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2727. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 48
  2728. 708:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2729. 709:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, msplim_ns" : "=r" (result) );
  2730. 710:Drivers/CMSIS/Include/cmsis_gcc.h **** return result;
  2731. 711:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2732. 712:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2733. 713:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2734. 714:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2735. 715:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2736. 716:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2737. 717:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer Limit
  2738. 718:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2739. 719:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence the write is silently ignored in non-secure
  2740. 720:Drivers/CMSIS/Include/cmsis_gcc.h **** mode.
  2741. 721:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2742. 722:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Main Stack Pointer Limit (MSPLIM).
  2743. 723:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] MainStackPtrLimit Main Stack Pointer Limit value to set
  2744. 724:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2745. 725:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_MSPLIM(uint32_t MainStackPtrLimit)
  2746. 726:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2747. 727:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \
  2748. 728:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3)))
  2749. 729:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI
  2750. 730:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)MainStackPtrLimit;
  2751. 731:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2752. 732:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msplim, %0" : : "r" (MainStackPtrLimit));
  2753. 733:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2754. 734:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2755. 735:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2756. 736:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2757. 737:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3))
  2758. 738:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2759. 739:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer Limit (non-secure)
  2760. 740:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure
  2761. 741:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence the write is silently ignored.
  2762. 742:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2763. 743:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Main Stack Pointer Limit (MSPLIM) when in secu
  2764. 744:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] MainStackPtrLimit Main Stack Pointer value to set
  2765. 745:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2766. 746:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_MSPLIM_NS(uint32_t MainStackPtrLimit)
  2767. 747:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2768. 748:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)))
  2769. 749:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI
  2770. 750:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)MainStackPtrLimit;
  2771. 751:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2772. 752:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit));
  2773. 753:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2774. 754:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2775. 755:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2776. 756:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2777. 757:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif /* ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \
  2778. 758:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) */
  2779. 759:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2780. 760:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2781. 761:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2782. 762:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get FPSCR
  2783. 763:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Floating Point Status/Control register.
  2784. 764:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Floating Point Status/Control register value
  2785. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 49
  2786. 765:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2787. 766:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_FPSCR(void)
  2788. 767:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2789. 768:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
  2790. 769:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__FPU_USED ) && (__FPU_USED == 1U)) )
  2791. 770:Drivers/CMSIS/Include/cmsis_gcc.h **** #if __has_builtin(__builtin_arm_get_fpscr)
  2792. 771:Drivers/CMSIS/Include/cmsis_gcc.h **** // Re-enable using built-in when GCC has been fixed
  2793. 772:Drivers/CMSIS/Include/cmsis_gcc.h **** // || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2)
  2794. 773:Drivers/CMSIS/Include/cmsis_gcc.h **** /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */
  2795. 774:Drivers/CMSIS/Include/cmsis_gcc.h **** return __builtin_arm_get_fpscr();
  2796. 775:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2797. 776:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result;
  2798. 777:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2799. 778:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("VMRS %0, fpscr" : "=r" (result) );
  2800. 779:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result);
  2801. 780:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2802. 781:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2803. 782:Drivers/CMSIS/Include/cmsis_gcc.h **** return(0U);
  2804. 783:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2805. 784:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2806. 785:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2807. 786:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2808. 787:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2809. 788:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set FPSCR
  2810. 789:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Floating Point Status/Control register.
  2811. 790:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] fpscr Floating Point Status/Control value to set
  2812. 791:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2813. 792:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_FPSCR(uint32_t fpscr)
  2814. 793:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2815. 794:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \
  2816. 795:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__FPU_USED ) && (__FPU_USED == 1U)) )
  2817. 796:Drivers/CMSIS/Include/cmsis_gcc.h **** #if __has_builtin(__builtin_arm_set_fpscr)
  2818. 797:Drivers/CMSIS/Include/cmsis_gcc.h **** // Re-enable using built-in when GCC has been fixed
  2819. 798:Drivers/CMSIS/Include/cmsis_gcc.h **** // || (__GNUC__ > 7) || (__GNUC__ == 7 && __GNUC_MINOR__ >= 2)
  2820. 799:Drivers/CMSIS/Include/cmsis_gcc.h **** /* see https://gcc.gnu.org/ml/gcc-patches/2017-04/msg00443.html */
  2821. 800:Drivers/CMSIS/Include/cmsis_gcc.h **** __builtin_arm_set_fpscr(fpscr);
  2822. 801:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2823. 802:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("VMSR fpscr, %0" : : "r" (fpscr) : "vfpcc", "memory");
  2824. 803:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2825. 804:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2826. 805:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)fpscr;
  2827. 806:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2828. 807:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2829. 808:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2830. 809:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2831. 810:Drivers/CMSIS/Include/cmsis_gcc.h **** /*@} end of CMSIS_Core_RegAccFunctions */
  2832. 811:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2833. 812:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2834. 813:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ########################## Core Instruction Access ######################### */
  2835. 814:Drivers/CMSIS/Include/cmsis_gcc.h **** /** \defgroup CMSIS_Core_InstructionInterface CMSIS Core Instruction Interface
  2836. 815:Drivers/CMSIS/Include/cmsis_gcc.h **** Access to dedicated instructions
  2837. 816:Drivers/CMSIS/Include/cmsis_gcc.h **** @{
  2838. 817:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2839. 818:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2840. 819:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Define macros for porting to both thumb1 and thumb2.
  2841. 820:Drivers/CMSIS/Include/cmsis_gcc.h **** * For thumb1, use low register (r0-r7), specified by constraint "l"
  2842. 821:Drivers/CMSIS/Include/cmsis_gcc.h **** * Otherwise, use general registers, specified by constraint "r" */
  2843. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 50
  2844. 822:Drivers/CMSIS/Include/cmsis_gcc.h **** #if defined (__thumb__) && !defined (__thumb2__)
  2845. 823:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_OUT_REG(r) "=l" (r)
  2846. 824:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_RW_REG(r) "+l" (r)
  2847. 825:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_USE_REG(r) "l" (r)
  2848. 826:Drivers/CMSIS/Include/cmsis_gcc.h **** #else
  2849. 827:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_OUT_REG(r) "=r" (r)
  2850. 828:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_RW_REG(r) "+r" (r)
  2851. 829:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __CMSIS_GCC_USE_REG(r) "r" (r)
  2852. 830:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif
  2853. 831:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2854. 832:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2855. 833:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief No Operation
  2856. 834:Drivers/CMSIS/Include/cmsis_gcc.h **** \details No Operation does nothing. This instruction can be used for code alignment purposes.
  2857. 835:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2858. 836:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __NOP() __ASM volatile ("nop")
  2859. 837:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2860. 838:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2861. 839:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Wait For Interrupt
  2862. 840:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Wait For Interrupt is a hint instruction that suspends execution until one of a number o
  2863. 841:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2864. 842:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WFI() __ASM volatile ("wfi")
  2865. 843:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2866. 844:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2867. 845:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2868. 846:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Wait For Event
  2869. 847:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Wait For Event is a hint instruction that permits the processor to enter
  2870. 848:Drivers/CMSIS/Include/cmsis_gcc.h **** a low-power state until one of a number of events occurs.
  2871. 849:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2872. 850:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WFE() __ASM volatile ("wfe")
  2873. 851:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2874. 852:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2875. 853:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2876. 854:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Send Event
  2877. 855:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Send Event is a hint instruction. It causes an event to be signaled to the CPU.
  2878. 856:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2879. 857:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __SEV() __ASM volatile ("sev")
  2880. 858:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2881. 859:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2882. 860:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2883. 861:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Instruction Synchronization Barrier
  2884. 862:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Instruction Synchronization Barrier flushes the pipeline in the processor,
  2885. 863:Drivers/CMSIS/Include/cmsis_gcc.h **** so that all instructions following the ISB are fetched from cache or memory,
  2886. 864:Drivers/CMSIS/Include/cmsis_gcc.h **** after the instruction has been completed.
  2887. 865:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2888. 866:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __ISB(void)
  2889. 867:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2890. 868:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("isb 0xF":::"memory");
  2891. 869:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2892. 870:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2893. 871:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2894. 872:Drivers/CMSIS/Include/cmsis_gcc.h **** /**
  2895. 873:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Data Synchronization Barrier
  2896. 874:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Acts as a special kind of Data Memory Barrier.
  2897. 875:Drivers/CMSIS/Include/cmsis_gcc.h **** It completes when all explicit memory accesses before this instruction complete.
  2898. 876:Drivers/CMSIS/Include/cmsis_gcc.h **** */
  2899. 877:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __DSB(void)
  2900. 878:Drivers/CMSIS/Include/cmsis_gcc.h **** {
  2901. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 51
  2902. 879:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("dsb 0xF":::"memory");
  2903. 250 .loc 2 879 3
  2904. 251 .syntax unified
  2905. 252 @ 879 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
  2906. 253 002c BFF34F8F dsb 0xF
  2907. 254 @ 0 "" 2
  2908. 880:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2909. 255 .loc 2 880 1
  2910. 256 .thumb
  2911. 257 .syntax unified
  2912. 258 0030 00BF nop
  2913. 259 .LBE11:
  2914. 260 .LBE10:
  2915. 261 .LBB12:
  2916. 262 .LBB13:
  2917. 868:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  2918. 263 .loc 2 868 3
  2919. 264 .syntax unified
  2920. 265 @ 868 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
  2921. 266 0032 BFF36F8F isb 0xF
  2922. 267 @ 0 "" 2
  2923. 869:Drivers/CMSIS/Include/cmsis_gcc.h ****
  2924. 268 .loc 2 869 1
  2925. 269 .thumb
  2926. 270 .syntax unified
  2927. 271 0036 00BF nop
  2928. 272 .L15:
  2929. 273 .LBE13:
  2930. 274 .LBE12:
  2931. 1729:Drivers/CMSIS/Include/core_cm4.h **** __DSB();
  2932. 1730:Drivers/CMSIS/Include/core_cm4.h **** __ISB();
  2933. 1731:Drivers/CMSIS/Include/core_cm4.h **** }
  2934. 1732:Drivers/CMSIS/Include/core_cm4.h **** }
  2935. 275 .loc 1 1732 1
  2936. 276 0038 00BF nop
  2937. 277 003a 0C37 adds r7, r7, #12
  2938. 278 .LCFI19:
  2939. 279 .cfi_def_cfa_offset 4
  2940. 280 003c BD46 mov sp, r7
  2941. 281 .LCFI20:
  2942. 282 .cfi_def_cfa_register 13
  2943. 283 @ sp needed
  2944. 284 003e 5DF8047B ldr r7, [sp], #4
  2945. 285 .LCFI21:
  2946. 286 .cfi_restore 7
  2947. 287 .cfi_def_cfa_offset 0
  2948. 288 0042 7047 bx lr
  2949. 289 .L17:
  2950. 290 .align 2
  2951. 291 .L16:
  2952. 292 0044 00E100E0 .word -536813312
  2953. 293 .cfi_endproc
  2954. 294 .LFE106:
  2955. 296 .section .text.__NVIC_GetPendingIRQ,"ax",%progbits
  2956. 297 .align 1
  2957. 298 .syntax unified
  2958. 299 .thumb
  2959. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 52
  2960. 300 .thumb_func
  2961. 302 __NVIC_GetPendingIRQ:
  2962. 303 .LFB107:
  2963. 1733:Drivers/CMSIS/Include/core_cm4.h ****
  2964. 1734:Drivers/CMSIS/Include/core_cm4.h ****
  2965. 1735:Drivers/CMSIS/Include/core_cm4.h **** /**
  2966. 1736:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Pending Interrupt
  2967. 1737:Drivers/CMSIS/Include/core_cm4.h **** \details Reads the NVIC pending register and returns the pending bit for the specified device spe
  2968. 1738:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  2969. 1739:Drivers/CMSIS/Include/core_cm4.h **** \return 0 Interrupt status is not pending.
  2970. 1740:Drivers/CMSIS/Include/core_cm4.h **** \return 1 Interrupt status is pending.
  2971. 1741:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  2972. 1742:Drivers/CMSIS/Include/core_cm4.h **** */
  2973. 1743:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetPendingIRQ(IRQn_Type IRQn)
  2974. 1744:Drivers/CMSIS/Include/core_cm4.h **** {
  2975. 304 .loc 1 1744 1
  2976. 305 .cfi_startproc
  2977. 306 @ args = 0, pretend = 0, frame = 8
  2978. 307 @ frame_needed = 1, uses_anonymous_args = 0
  2979. 308 @ link register save eliminated.
  2980. 309 0000 80B4 push {r7}
  2981. 310 .LCFI22:
  2982. 311 .cfi_def_cfa_offset 4
  2983. 312 .cfi_offset 7, -4
  2984. 313 0002 83B0 sub sp, sp, #12
  2985. 314 .LCFI23:
  2986. 315 .cfi_def_cfa_offset 16
  2987. 316 0004 00AF add r7, sp, #0
  2988. 317 .LCFI24:
  2989. 318 .cfi_def_cfa_register 7
  2990. 319 0006 0346 mov r3, r0
  2991. 320 0008 FB71 strb r3, [r7, #7]
  2992. 1745:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  2993. 321 .loc 1 1745 6
  2994. 322 000a 97F90730 ldrsb r3, [r7, #7]
  2995. 323 000e 002B cmp r3, #0
  2996. 324 0010 0EDB blt .L19
  2997. 1746:Drivers/CMSIS/Include/core_cm4.h **** {
  2998. 1747:Drivers/CMSIS/Include/core_cm4.h **** return((uint32_t)(((NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL)
  2999. 325 .loc 1 1747 29
  3000. 326 0012 0B4A ldr r2, .L21
  3001. 327 .loc 1 1747 38
  3002. 328 0014 97F90730 ldrsb r3, [r7, #7]
  3003. 329 .loc 1 1747 54
  3004. 330 0018 5B09 lsrs r3, r3, #5
  3005. 331 .loc 1 1747 35
  3006. 332 001a 4033 adds r3, r3, #64
  3007. 333 001c 52F82320 ldr r2, [r2, r3, lsl #2]
  3008. 334 .loc 1 1747 91
  3009. 335 0020 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3010. 336 0022 03F01F03 and r3, r3, #31
  3011. 337 .loc 1 1747 103
  3012. 338 0026 22FA03F3 lsr r3, r2, r3
  3013. 339 .loc 1 1747 12
  3014. 340 002a 03F00103 and r3, r3, #1
  3015. 341 002e 00E0 b .L20
  3016. 342 .L19:
  3017. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 53
  3018. 1748:Drivers/CMSIS/Include/core_cm4.h **** }
  3019. 1749:Drivers/CMSIS/Include/core_cm4.h **** else
  3020. 1750:Drivers/CMSIS/Include/core_cm4.h **** {
  3021. 1751:Drivers/CMSIS/Include/core_cm4.h **** return(0U);
  3022. 343 .loc 1 1751 11
  3023. 344 0030 0023 movs r3, #0
  3024. 345 .L20:
  3025. 1752:Drivers/CMSIS/Include/core_cm4.h **** }
  3026. 1753:Drivers/CMSIS/Include/core_cm4.h **** }
  3027. 346 .loc 1 1753 1
  3028. 347 0032 1846 mov r0, r3
  3029. 348 0034 0C37 adds r7, r7, #12
  3030. 349 .LCFI25:
  3031. 350 .cfi_def_cfa_offset 4
  3032. 351 0036 BD46 mov sp, r7
  3033. 352 .LCFI26:
  3034. 353 .cfi_def_cfa_register 13
  3035. 354 @ sp needed
  3036. 355 0038 5DF8047B ldr r7, [sp], #4
  3037. 356 .LCFI27:
  3038. 357 .cfi_restore 7
  3039. 358 .cfi_def_cfa_offset 0
  3040. 359 003c 7047 bx lr
  3041. 360 .L22:
  3042. 361 003e 00BF .align 2
  3043. 362 .L21:
  3044. 363 0040 00E100E0 .word -536813312
  3045. 364 .cfi_endproc
  3046. 365 .LFE107:
  3047. 367 .section .text.__NVIC_SetPendingIRQ,"ax",%progbits
  3048. 368 .align 1
  3049. 369 .syntax unified
  3050. 370 .thumb
  3051. 371 .thumb_func
  3052. 373 __NVIC_SetPendingIRQ:
  3053. 374 .LFB108:
  3054. 1754:Drivers/CMSIS/Include/core_cm4.h ****
  3055. 1755:Drivers/CMSIS/Include/core_cm4.h ****
  3056. 1756:Drivers/CMSIS/Include/core_cm4.h **** /**
  3057. 1757:Drivers/CMSIS/Include/core_cm4.h **** \brief Set Pending Interrupt
  3058. 1758:Drivers/CMSIS/Include/core_cm4.h **** \details Sets the pending bit of a device specific interrupt in the NVIC pending register.
  3059. 1759:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  3060. 1760:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  3061. 1761:Drivers/CMSIS/Include/core_cm4.h **** */
  3062. 1762:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_SetPendingIRQ(IRQn_Type IRQn)
  3063. 1763:Drivers/CMSIS/Include/core_cm4.h **** {
  3064. 375 .loc 1 1763 1
  3065. 376 .cfi_startproc
  3066. 377 @ args = 0, pretend = 0, frame = 8
  3067. 378 @ frame_needed = 1, uses_anonymous_args = 0
  3068. 379 @ link register save eliminated.
  3069. 380 0000 80B4 push {r7}
  3070. 381 .LCFI28:
  3071. 382 .cfi_def_cfa_offset 4
  3072. 383 .cfi_offset 7, -4
  3073. 384 0002 83B0 sub sp, sp, #12
  3074. 385 .LCFI29:
  3075. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 54
  3076. 386 .cfi_def_cfa_offset 16
  3077. 387 0004 00AF add r7, sp, #0
  3078. 388 .LCFI30:
  3079. 389 .cfi_def_cfa_register 7
  3080. 390 0006 0346 mov r3, r0
  3081. 391 0008 FB71 strb r3, [r7, #7]
  3082. 1764:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  3083. 392 .loc 1 1764 6
  3084. 393 000a 97F90730 ldrsb r3, [r7, #7]
  3085. 394 000e 002B cmp r3, #0
  3086. 395 0010 0CDB blt .L25
  3087. 1765:Drivers/CMSIS/Include/core_cm4.h **** {
  3088. 1766:Drivers/CMSIS/Include/core_cm4.h **** NVIC->ISPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
  3089. 396 .loc 1 1766 81
  3090. 397 0012 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3091. 398 0014 03F01F02 and r2, r3, #31
  3092. 399 .loc 1 1766 9
  3093. 400 0018 0749 ldr r1, .L26
  3094. 401 .loc 1 1766 18
  3095. 402 001a 97F90730 ldrsb r3, [r7, #7]
  3096. 403 .loc 1 1766 34
  3097. 404 001e 5B09 lsrs r3, r3, #5
  3098. 405 .loc 1 1766 45
  3099. 406 0020 0120 movs r0, #1
  3100. 407 0022 00FA02F2 lsl r2, r0, r2
  3101. 408 .loc 1 1766 43
  3102. 409 0026 4033 adds r3, r3, #64
  3103. 410 0028 41F82320 str r2, [r1, r3, lsl #2]
  3104. 411 .L25:
  3105. 1767:Drivers/CMSIS/Include/core_cm4.h **** }
  3106. 1768:Drivers/CMSIS/Include/core_cm4.h **** }
  3107. 412 .loc 1 1768 1
  3108. 413 002c 00BF nop
  3109. 414 002e 0C37 adds r7, r7, #12
  3110. 415 .LCFI31:
  3111. 416 .cfi_def_cfa_offset 4
  3112. 417 0030 BD46 mov sp, r7
  3113. 418 .LCFI32:
  3114. 419 .cfi_def_cfa_register 13
  3115. 420 @ sp needed
  3116. 421 0032 5DF8047B ldr r7, [sp], #4
  3117. 422 .LCFI33:
  3118. 423 .cfi_restore 7
  3119. 424 .cfi_def_cfa_offset 0
  3120. 425 0036 7047 bx lr
  3121. 426 .L27:
  3122. 427 .align 2
  3123. 428 .L26:
  3124. 429 0038 00E100E0 .word -536813312
  3125. 430 .cfi_endproc
  3126. 431 .LFE108:
  3127. 433 .section .text.__NVIC_ClearPendingIRQ,"ax",%progbits
  3128. 434 .align 1
  3129. 435 .syntax unified
  3130. 436 .thumb
  3131. 437 .thumb_func
  3132. 439 __NVIC_ClearPendingIRQ:
  3133. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 55
  3134. 440 .LFB109:
  3135. 1769:Drivers/CMSIS/Include/core_cm4.h ****
  3136. 1770:Drivers/CMSIS/Include/core_cm4.h ****
  3137. 1771:Drivers/CMSIS/Include/core_cm4.h **** /**
  3138. 1772:Drivers/CMSIS/Include/core_cm4.h **** \brief Clear Pending Interrupt
  3139. 1773:Drivers/CMSIS/Include/core_cm4.h **** \details Clears the pending bit of a device specific interrupt in the NVIC pending register.
  3140. 1774:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  3141. 1775:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  3142. 1776:Drivers/CMSIS/Include/core_cm4.h **** */
  3143. 1777:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_ClearPendingIRQ(IRQn_Type IRQn)
  3144. 1778:Drivers/CMSIS/Include/core_cm4.h **** {
  3145. 441 .loc 1 1778 1
  3146. 442 .cfi_startproc
  3147. 443 @ args = 0, pretend = 0, frame = 8
  3148. 444 @ frame_needed = 1, uses_anonymous_args = 0
  3149. 445 @ link register save eliminated.
  3150. 446 0000 80B4 push {r7}
  3151. 447 .LCFI34:
  3152. 448 .cfi_def_cfa_offset 4
  3153. 449 .cfi_offset 7, -4
  3154. 450 0002 83B0 sub sp, sp, #12
  3155. 451 .LCFI35:
  3156. 452 .cfi_def_cfa_offset 16
  3157. 453 0004 00AF add r7, sp, #0
  3158. 454 .LCFI36:
  3159. 455 .cfi_def_cfa_register 7
  3160. 456 0006 0346 mov r3, r0
  3161. 457 0008 FB71 strb r3, [r7, #7]
  3162. 1779:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  3163. 458 .loc 1 1779 6
  3164. 459 000a 97F90730 ldrsb r3, [r7, #7]
  3165. 460 000e 002B cmp r3, #0
  3166. 461 0010 0CDB blt .L30
  3167. 1780:Drivers/CMSIS/Include/core_cm4.h **** {
  3168. 1781:Drivers/CMSIS/Include/core_cm4.h **** NVIC->ICPR[(((uint32_t)IRQn) >> 5UL)] = (uint32_t)(1UL << (((uint32_t)IRQn) & 0x1FUL));
  3169. 462 .loc 1 1781 81
  3170. 463 0012 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3171. 464 0014 03F01F02 and r2, r3, #31
  3172. 465 .loc 1 1781 9
  3173. 466 0018 0749 ldr r1, .L31
  3174. 467 .loc 1 1781 18
  3175. 468 001a 97F90730 ldrsb r3, [r7, #7]
  3176. 469 .loc 1 1781 34
  3177. 470 001e 5B09 lsrs r3, r3, #5
  3178. 471 .loc 1 1781 45
  3179. 472 0020 0120 movs r0, #1
  3180. 473 0022 00FA02F2 lsl r2, r0, r2
  3181. 474 .loc 1 1781 43
  3182. 475 0026 6033 adds r3, r3, #96
  3183. 476 0028 41F82320 str r2, [r1, r3, lsl #2]
  3184. 477 .L30:
  3185. 1782:Drivers/CMSIS/Include/core_cm4.h **** }
  3186. 1783:Drivers/CMSIS/Include/core_cm4.h **** }
  3187. 478 .loc 1 1783 1
  3188. 479 002c 00BF nop
  3189. 480 002e 0C37 adds r7, r7, #12
  3190. 481 .LCFI37:
  3191. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 56
  3192. 482 .cfi_def_cfa_offset 4
  3193. 483 0030 BD46 mov sp, r7
  3194. 484 .LCFI38:
  3195. 485 .cfi_def_cfa_register 13
  3196. 486 @ sp needed
  3197. 487 0032 5DF8047B ldr r7, [sp], #4
  3198. 488 .LCFI39:
  3199. 489 .cfi_restore 7
  3200. 490 .cfi_def_cfa_offset 0
  3201. 491 0036 7047 bx lr
  3202. 492 .L32:
  3203. 493 .align 2
  3204. 494 .L31:
  3205. 495 0038 00E100E0 .word -536813312
  3206. 496 .cfi_endproc
  3207. 497 .LFE109:
  3208. 499 .section .text.__NVIC_GetActive,"ax",%progbits
  3209. 500 .align 1
  3210. 501 .syntax unified
  3211. 502 .thumb
  3212. 503 .thumb_func
  3213. 505 __NVIC_GetActive:
  3214. 506 .LFB110:
  3215. 1784:Drivers/CMSIS/Include/core_cm4.h ****
  3216. 1785:Drivers/CMSIS/Include/core_cm4.h ****
  3217. 1786:Drivers/CMSIS/Include/core_cm4.h **** /**
  3218. 1787:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Active Interrupt
  3219. 1788:Drivers/CMSIS/Include/core_cm4.h **** \details Reads the active register in the NVIC and returns the active bit for the device specific
  3220. 1789:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Device specific interrupt number.
  3221. 1790:Drivers/CMSIS/Include/core_cm4.h **** \return 0 Interrupt status is not active.
  3222. 1791:Drivers/CMSIS/Include/core_cm4.h **** \return 1 Interrupt status is active.
  3223. 1792:Drivers/CMSIS/Include/core_cm4.h **** \note IRQn must not be negative.
  3224. 1793:Drivers/CMSIS/Include/core_cm4.h **** */
  3225. 1794:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetActive(IRQn_Type IRQn)
  3226. 1795:Drivers/CMSIS/Include/core_cm4.h **** {
  3227. 507 .loc 1 1795 1
  3228. 508 .cfi_startproc
  3229. 509 @ args = 0, pretend = 0, frame = 8
  3230. 510 @ frame_needed = 1, uses_anonymous_args = 0
  3231. 511 @ link register save eliminated.
  3232. 512 0000 80B4 push {r7}
  3233. 513 .LCFI40:
  3234. 514 .cfi_def_cfa_offset 4
  3235. 515 .cfi_offset 7, -4
  3236. 516 0002 83B0 sub sp, sp, #12
  3237. 517 .LCFI41:
  3238. 518 .cfi_def_cfa_offset 16
  3239. 519 0004 00AF add r7, sp, #0
  3240. 520 .LCFI42:
  3241. 521 .cfi_def_cfa_register 7
  3242. 522 0006 0346 mov r3, r0
  3243. 523 0008 FB71 strb r3, [r7, #7]
  3244. 1796:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  3245. 524 .loc 1 1796 6
  3246. 525 000a 97F90730 ldrsb r3, [r7, #7]
  3247. 526 000e 002B cmp r3, #0
  3248. 527 0010 0EDB blt .L34
  3249. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 57
  3250. 1797:Drivers/CMSIS/Include/core_cm4.h **** {
  3251. 1798:Drivers/CMSIS/Include/core_cm4.h **** return((uint32_t)(((NVIC->IABR[(((uint32_t)IRQn) >> 5UL)] & (1UL << (((uint32_t)IRQn) & 0x1FUL)
  3252. 528 .loc 1 1798 29
  3253. 529 0012 0B4A ldr r2, .L36
  3254. 530 .loc 1 1798 38
  3255. 531 0014 97F90730 ldrsb r3, [r7, #7]
  3256. 532 .loc 1 1798 54
  3257. 533 0018 5B09 lsrs r3, r3, #5
  3258. 534 .loc 1 1798 35
  3259. 535 001a 8033 adds r3, r3, #128
  3260. 536 001c 52F82320 ldr r2, [r2, r3, lsl #2]
  3261. 537 .loc 1 1798 91
  3262. 538 0020 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3263. 539 0022 03F01F03 and r3, r3, #31
  3264. 540 .loc 1 1798 103
  3265. 541 0026 22FA03F3 lsr r3, r2, r3
  3266. 542 .loc 1 1798 12
  3267. 543 002a 03F00103 and r3, r3, #1
  3268. 544 002e 00E0 b .L35
  3269. 545 .L34:
  3270. 1799:Drivers/CMSIS/Include/core_cm4.h **** }
  3271. 1800:Drivers/CMSIS/Include/core_cm4.h **** else
  3272. 1801:Drivers/CMSIS/Include/core_cm4.h **** {
  3273. 1802:Drivers/CMSIS/Include/core_cm4.h **** return(0U);
  3274. 546 .loc 1 1802 11
  3275. 547 0030 0023 movs r3, #0
  3276. 548 .L35:
  3277. 1803:Drivers/CMSIS/Include/core_cm4.h **** }
  3278. 1804:Drivers/CMSIS/Include/core_cm4.h **** }
  3279. 549 .loc 1 1804 1
  3280. 550 0032 1846 mov r0, r3
  3281. 551 0034 0C37 adds r7, r7, #12
  3282. 552 .LCFI43:
  3283. 553 .cfi_def_cfa_offset 4
  3284. 554 0036 BD46 mov sp, r7
  3285. 555 .LCFI44:
  3286. 556 .cfi_def_cfa_register 13
  3287. 557 @ sp needed
  3288. 558 0038 5DF8047B ldr r7, [sp], #4
  3289. 559 .LCFI45:
  3290. 560 .cfi_restore 7
  3291. 561 .cfi_def_cfa_offset 0
  3292. 562 003c 7047 bx lr
  3293. 563 .L37:
  3294. 564 003e 00BF .align 2
  3295. 565 .L36:
  3296. 566 0040 00E100E0 .word -536813312
  3297. 567 .cfi_endproc
  3298. 568 .LFE110:
  3299. 570 .section .text.__NVIC_SetPriority,"ax",%progbits
  3300. 571 .align 1
  3301. 572 .syntax unified
  3302. 573 .thumb
  3303. 574 .thumb_func
  3304. 576 __NVIC_SetPriority:
  3305. 577 .LFB111:
  3306. 1805:Drivers/CMSIS/Include/core_cm4.h ****
  3307. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 58
  3308. 1806:Drivers/CMSIS/Include/core_cm4.h ****
  3309. 1807:Drivers/CMSIS/Include/core_cm4.h **** /**
  3310. 1808:Drivers/CMSIS/Include/core_cm4.h **** \brief Set Interrupt Priority
  3311. 1809:Drivers/CMSIS/Include/core_cm4.h **** \details Sets the priority of a device specific interrupt or a processor exception.
  3312. 1810:Drivers/CMSIS/Include/core_cm4.h **** The interrupt number can be positive to specify a device specific interrupt,
  3313. 1811:Drivers/CMSIS/Include/core_cm4.h **** or negative to specify a processor exception.
  3314. 1812:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Interrupt number.
  3315. 1813:Drivers/CMSIS/Include/core_cm4.h **** \param [in] priority Priority to set.
  3316. 1814:Drivers/CMSIS/Include/core_cm4.h **** \note The priority cannot be set for every processor exception.
  3317. 1815:Drivers/CMSIS/Include/core_cm4.h **** */
  3318. 1816:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)
  3319. 1817:Drivers/CMSIS/Include/core_cm4.h **** {
  3320. 578 .loc 1 1817 1
  3321. 579 .cfi_startproc
  3322. 580 @ args = 0, pretend = 0, frame = 8
  3323. 581 @ frame_needed = 1, uses_anonymous_args = 0
  3324. 582 @ link register save eliminated.
  3325. 583 0000 80B4 push {r7}
  3326. 584 .LCFI46:
  3327. 585 .cfi_def_cfa_offset 4
  3328. 586 .cfi_offset 7, -4
  3329. 587 0002 83B0 sub sp, sp, #12
  3330. 588 .LCFI47:
  3331. 589 .cfi_def_cfa_offset 16
  3332. 590 0004 00AF add r7, sp, #0
  3333. 591 .LCFI48:
  3334. 592 .cfi_def_cfa_register 7
  3335. 593 0006 0346 mov r3, r0
  3336. 594 0008 3960 str r1, [r7]
  3337. 595 000a FB71 strb r3, [r7, #7]
  3338. 1818:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  3339. 596 .loc 1 1818 6
  3340. 597 000c 97F90730 ldrsb r3, [r7, #7]
  3341. 598 0010 002B cmp r3, #0
  3342. 599 0012 0ADB blt .L39
  3343. 1819:Drivers/CMSIS/Include/core_cm4.h **** {
  3344. 1820:Drivers/CMSIS/Include/core_cm4.h **** NVIC->IP[((uint32_t)IRQn)] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (u
  3345. 600 .loc 1 1820 48
  3346. 601 0014 3B68 ldr r3, [r7]
  3347. 602 0016 DAB2 uxtb r2, r3
  3348. 603 .loc 1 1820 9
  3349. 604 0018 0C49 ldr r1, .L42
  3350. 605 .loc 1 1820 15
  3351. 606 001a 97F90730 ldrsb r3, [r7, #7]
  3352. 607 .loc 1 1820 48
  3353. 608 001e 1201 lsls r2, r2, #4
  3354. 609 0020 D2B2 uxtb r2, r2
  3355. 610 .loc 1 1820 46
  3356. 611 0022 0B44 add r3, r3, r1
  3357. 612 0024 83F80023 strb r2, [r3, #768]
  3358. 1821:Drivers/CMSIS/Include/core_cm4.h **** }
  3359. 1822:Drivers/CMSIS/Include/core_cm4.h **** else
  3360. 1823:Drivers/CMSIS/Include/core_cm4.h **** {
  3361. 1824:Drivers/CMSIS/Include/core_cm4.h **** SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] = (uint8_t)((priority << (8U - __NVIC_PRIO_BITS)) & (u
  3362. 1825:Drivers/CMSIS/Include/core_cm4.h **** }
  3363. 1826:Drivers/CMSIS/Include/core_cm4.h **** }
  3364. 613 .loc 1 1826 1
  3365. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 59
  3366. 614 0028 0AE0 b .L41
  3367. 615 .L39:
  3368. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3369. 616 .loc 1 1824 48
  3370. 617 002a 3B68 ldr r3, [r7]
  3371. 618 002c DAB2 uxtb r2, r3
  3372. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3373. 619 .loc 1 1824 8
  3374. 620 002e 0849 ldr r1, .L42+4
  3375. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3376. 621 .loc 1 1824 32
  3377. 622 0030 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3378. 623 0032 03F00F03 and r3, r3, #15
  3379. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3380. 624 .loc 1 1824 40
  3381. 625 0036 043B subs r3, r3, #4
  3382. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3383. 626 .loc 1 1824 48
  3384. 627 0038 1201 lsls r2, r2, #4
  3385. 628 003a D2B2 uxtb r2, r2
  3386. 1824:Drivers/CMSIS/Include/core_cm4.h **** }
  3387. 629 .loc 1 1824 46
  3388. 630 003c 0B44 add r3, r3, r1
  3389. 631 003e 1A76 strb r2, [r3, #24]
  3390. 632 .L41:
  3391. 633 .loc 1 1826 1
  3392. 634 0040 00BF nop
  3393. 635 0042 0C37 adds r7, r7, #12
  3394. 636 .LCFI49:
  3395. 637 .cfi_def_cfa_offset 4
  3396. 638 0044 BD46 mov sp, r7
  3397. 639 .LCFI50:
  3398. 640 .cfi_def_cfa_register 13
  3399. 641 @ sp needed
  3400. 642 0046 5DF8047B ldr r7, [sp], #4
  3401. 643 .LCFI51:
  3402. 644 .cfi_restore 7
  3403. 645 .cfi_def_cfa_offset 0
  3404. 646 004a 7047 bx lr
  3405. 647 .L43:
  3406. 648 .align 2
  3407. 649 .L42:
  3408. 650 004c 00E100E0 .word -536813312
  3409. 651 0050 00ED00E0 .word -536810240
  3410. 652 .cfi_endproc
  3411. 653 .LFE111:
  3412. 655 .section .text.__NVIC_GetPriority,"ax",%progbits
  3413. 656 .align 1
  3414. 657 .syntax unified
  3415. 658 .thumb
  3416. 659 .thumb_func
  3417. 661 __NVIC_GetPriority:
  3418. 662 .LFB112:
  3419. 1827:Drivers/CMSIS/Include/core_cm4.h ****
  3420. 1828:Drivers/CMSIS/Include/core_cm4.h ****
  3421. 1829:Drivers/CMSIS/Include/core_cm4.h **** /**
  3422. 1830:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Interrupt Priority
  3423. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 60
  3424. 1831:Drivers/CMSIS/Include/core_cm4.h **** \details Reads the priority of a device specific interrupt or a processor exception.
  3425. 1832:Drivers/CMSIS/Include/core_cm4.h **** The interrupt number can be positive to specify a device specific interrupt,
  3426. 1833:Drivers/CMSIS/Include/core_cm4.h **** or negative to specify a processor exception.
  3427. 1834:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Interrupt number.
  3428. 1835:Drivers/CMSIS/Include/core_cm4.h **** \return Interrupt Priority.
  3429. 1836:Drivers/CMSIS/Include/core_cm4.h **** Value is aligned automatically to the implemented priority bits of the microc
  3430. 1837:Drivers/CMSIS/Include/core_cm4.h **** */
  3431. 1838:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetPriority(IRQn_Type IRQn)
  3432. 1839:Drivers/CMSIS/Include/core_cm4.h **** {
  3433. 663 .loc 1 1839 1
  3434. 664 .cfi_startproc
  3435. 665 @ args = 0, pretend = 0, frame = 8
  3436. 666 @ frame_needed = 1, uses_anonymous_args = 0
  3437. 667 @ link register save eliminated.
  3438. 668 0000 80B4 push {r7}
  3439. 669 .LCFI52:
  3440. 670 .cfi_def_cfa_offset 4
  3441. 671 .cfi_offset 7, -4
  3442. 672 0002 83B0 sub sp, sp, #12
  3443. 673 .LCFI53:
  3444. 674 .cfi_def_cfa_offset 16
  3445. 675 0004 00AF add r7, sp, #0
  3446. 676 .LCFI54:
  3447. 677 .cfi_def_cfa_register 7
  3448. 678 0006 0346 mov r3, r0
  3449. 679 0008 FB71 strb r3, [r7, #7]
  3450. 1840:Drivers/CMSIS/Include/core_cm4.h ****
  3451. 1841:Drivers/CMSIS/Include/core_cm4.h **** if ((int32_t)(IRQn) >= 0)
  3452. 680 .loc 1 1841 6
  3453. 681 000a 97F90730 ldrsb r3, [r7, #7]
  3454. 682 000e 002B cmp r3, #0
  3455. 683 0010 09DB blt .L45
  3456. 1842:Drivers/CMSIS/Include/core_cm4.h **** {
  3457. 1843:Drivers/CMSIS/Include/core_cm4.h **** return(((uint32_t)NVIC->IP[((uint32_t)IRQn)] >> (8U - __NVIC_PRIO_BITS)));
  3458. 684 .loc 1 1843 27
  3459. 685 0012 0D4A ldr r2, .L47
  3460. 686 .loc 1 1843 33
  3461. 687 0014 97F90730 ldrsb r3, [r7, #7]
  3462. 688 .loc 1 1843 31
  3463. 689 0018 1344 add r3, r3, r2
  3464. 690 001a 93F80033 ldrb r3, [r3, #768]
  3465. 691 001e DBB2 uxtb r3, r3
  3466. 692 .loc 1 1843 64
  3467. 693 0020 1B09 lsrs r3, r3, #4
  3468. 694 0022 DBB2 uxtb r3, r3
  3469. 695 0024 09E0 b .L46
  3470. 696 .L45:
  3471. 1844:Drivers/CMSIS/Include/core_cm4.h **** }
  3472. 1845:Drivers/CMSIS/Include/core_cm4.h **** else
  3473. 1846:Drivers/CMSIS/Include/core_cm4.h **** {
  3474. 1847:Drivers/CMSIS/Include/core_cm4.h **** return(((uint32_t)SCB->SHP[(((uint32_t)IRQn) & 0xFUL)-4UL] >> (8U - __NVIC_PRIO_BITS)));
  3475. 697 .loc 1 1847 26
  3476. 698 0026 094A ldr r2, .L47+4
  3477. 699 .loc 1 1847 50
  3478. 700 0028 FB79 ldrb r3, [r7, #7] @ zero_extendqisi2
  3479. 701 002a 03F00F03 and r3, r3, #15
  3480. 702 .loc 1 1847 58
  3481. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 61
  3482. 703 002e 043B subs r3, r3, #4
  3483. 704 .loc 1 1847 31
  3484. 705 0030 1344 add r3, r3, r2
  3485. 706 0032 1B7E ldrb r3, [r3, #24]
  3486. 707 0034 DBB2 uxtb r3, r3
  3487. 708 .loc 1 1847 64
  3488. 709 0036 1B09 lsrs r3, r3, #4
  3489. 710 0038 DBB2 uxtb r3, r3
  3490. 711 .L46:
  3491. 1848:Drivers/CMSIS/Include/core_cm4.h **** }
  3492. 1849:Drivers/CMSIS/Include/core_cm4.h **** }
  3493. 712 .loc 1 1849 1
  3494. 713 003a 1846 mov r0, r3
  3495. 714 003c 0C37 adds r7, r7, #12
  3496. 715 .LCFI55:
  3497. 716 .cfi_def_cfa_offset 4
  3498. 717 003e BD46 mov sp, r7
  3499. 718 .LCFI56:
  3500. 719 .cfi_def_cfa_register 13
  3501. 720 @ sp needed
  3502. 721 0040 5DF8047B ldr r7, [sp], #4
  3503. 722 .LCFI57:
  3504. 723 .cfi_restore 7
  3505. 724 .cfi_def_cfa_offset 0
  3506. 725 0044 7047 bx lr
  3507. 726 .L48:
  3508. 727 0046 00BF .align 2
  3509. 728 .L47:
  3510. 729 0048 00E100E0 .word -536813312
  3511. 730 004c 00ED00E0 .word -536810240
  3512. 731 .cfi_endproc
  3513. 732 .LFE112:
  3514. 734 .section .text.NVIC_EncodePriority,"ax",%progbits
  3515. 735 .align 1
  3516. 736 .syntax unified
  3517. 737 .thumb
  3518. 738 .thumb_func
  3519. 740 NVIC_EncodePriority:
  3520. 741 .LFB113:
  3521. 1850:Drivers/CMSIS/Include/core_cm4.h ****
  3522. 1851:Drivers/CMSIS/Include/core_cm4.h ****
  3523. 1852:Drivers/CMSIS/Include/core_cm4.h **** /**
  3524. 1853:Drivers/CMSIS/Include/core_cm4.h **** \brief Encode Priority
  3525. 1854:Drivers/CMSIS/Include/core_cm4.h **** \details Encodes the priority for an interrupt with the given priority group,
  3526. 1855:Drivers/CMSIS/Include/core_cm4.h **** preemptive priority value, and subpriority value.
  3527. 1856:Drivers/CMSIS/Include/core_cm4.h **** In case of a conflict between priority grouping and available
  3528. 1857:Drivers/CMSIS/Include/core_cm4.h **** priority bits (__NVIC_PRIO_BITS), the smallest possible priority group is set.
  3529. 1858:Drivers/CMSIS/Include/core_cm4.h **** \param [in] PriorityGroup Used priority group.
  3530. 1859:Drivers/CMSIS/Include/core_cm4.h **** \param [in] PreemptPriority Preemptive priority value (starting from 0).
  3531. 1860:Drivers/CMSIS/Include/core_cm4.h **** \param [in] SubPriority Subpriority value (starting from 0).
  3532. 1861:Drivers/CMSIS/Include/core_cm4.h **** \return Encoded priority. Value can be used in the function \ref NVIC_SetP
  3533. 1862:Drivers/CMSIS/Include/core_cm4.h **** */
  3534. 1863:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uin
  3535. 1864:Drivers/CMSIS/Include/core_cm4.h **** {
  3536. 742 .loc 1 1864 1
  3537. 743 .cfi_startproc
  3538. 744 @ args = 0, pretend = 0, frame = 32
  3539. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 62
  3540. 745 @ frame_needed = 1, uses_anonymous_args = 0
  3541. 746 @ link register save eliminated.
  3542. 747 0000 80B4 push {r7}
  3543. 748 .LCFI58:
  3544. 749 .cfi_def_cfa_offset 4
  3545. 750 .cfi_offset 7, -4
  3546. 751 0002 89B0 sub sp, sp, #36
  3547. 752 .LCFI59:
  3548. 753 .cfi_def_cfa_offset 40
  3549. 754 0004 00AF add r7, sp, #0
  3550. 755 .LCFI60:
  3551. 756 .cfi_def_cfa_register 7
  3552. 757 0006 F860 str r0, [r7, #12]
  3553. 758 0008 B960 str r1, [r7, #8]
  3554. 759 000a 7A60 str r2, [r7, #4]
  3555. 1865:Drivers/CMSIS/Include/core_cm4.h **** uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used
  3556. 760 .loc 1 1865 12
  3557. 761 000c FB68 ldr r3, [r7, #12]
  3558. 762 000e 03F00703 and r3, r3, #7
  3559. 763 0012 FB61 str r3, [r7, #28]
  3560. 1866:Drivers/CMSIS/Include/core_cm4.h **** uint32_t PreemptPriorityBits;
  3561. 1867:Drivers/CMSIS/Include/core_cm4.h **** uint32_t SubPriorityBits;
  3562. 1868:Drivers/CMSIS/Include/core_cm4.h ****
  3563. 1869:Drivers/CMSIS/Include/core_cm4.h **** PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NV
  3564. 764 .loc 1 1869 31
  3565. 765 0014 FB69 ldr r3, [r7, #28]
  3566. 766 0016 C3F10703 rsb r3, r3, #7
  3567. 767 .loc 1 1869 23
  3568. 768 001a 042B cmp r3, #4
  3569. 769 001c 28BF it cs
  3570. 770 001e 0423 movcs r3, #4
  3571. 771 0020 BB61 str r3, [r7, #24]
  3572. 1870:Drivers/CMSIS/Include/core_cm4.h **** SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint
  3573. 772 .loc 1 1870 44
  3574. 773 0022 FB69 ldr r3, [r7, #28]
  3575. 774 0024 0433 adds r3, r3, #4
  3576. 775 .loc 1 1870 109
  3577. 776 0026 062B cmp r3, #6
  3578. 777 0028 02D9 bls .L50
  3579. 778 .loc 1 1870 109 is_stmt 0 discriminator 1
  3580. 779 002a FB69 ldr r3, [r7, #28]
  3581. 780 002c 033B subs r3, r3, #3
  3582. 781 002e 00E0 b .L51
  3583. 782 .L50:
  3584. 783 .loc 1 1870 109 discriminator 2
  3585. 784 0030 0023 movs r3, #0
  3586. 785 .L51:
  3587. 786 .loc 1 1870 23 is_stmt 1 discriminator 4
  3588. 787 0032 7B61 str r3, [r7, #20]
  3589. 1871:Drivers/CMSIS/Include/core_cm4.h ****
  3590. 1872:Drivers/CMSIS/Include/core_cm4.h **** return (
  3591. 1873:Drivers/CMSIS/Include/core_cm4.h **** ((PreemptPriority & (uint32_t)((1UL << (PreemptPriorityBits)) - 1UL)) << SubPriorityBits
  3592. 788 .loc 1 1873 30 discriminator 4
  3593. 789 0034 4FF0FF32 mov r2, #-1
  3594. 790 0038 BB69 ldr r3, [r7, #24]
  3595. 791 003a 02FA03F3 lsl r3, r2, r3
  3596. 792 003e DA43 mvns r2, r3
  3597. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 63
  3598. 793 0040 BB68 ldr r3, [r7, #8]
  3599. 794 0042 1A40 ands r2, r2, r3
  3600. 795 .loc 1 1873 82 discriminator 4
  3601. 796 0044 7B69 ldr r3, [r7, #20]
  3602. 797 0046 9A40 lsls r2, r2, r3
  3603. 1874:Drivers/CMSIS/Include/core_cm4.h **** ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
  3604. 798 .loc 1 1874 30 discriminator 4
  3605. 799 0048 4FF0FF31 mov r1, #-1
  3606. 800 004c 7B69 ldr r3, [r7, #20]
  3607. 801 004e 01FA03F3 lsl r3, r1, r3
  3608. 802 0052 D943 mvns r1, r3
  3609. 803 0054 7B68 ldr r3, [r7, #4]
  3610. 804 0056 0B40 ands r3, r3, r1
  3611. 1873:Drivers/CMSIS/Include/core_cm4.h **** ((SubPriority & (uint32_t)((1UL << (SubPriorityBits )) - 1UL)))
  3612. 805 .loc 1 1873 102 discriminator 4
  3613. 806 0058 1343 orrs r3, r3, r2
  3614. 1875:Drivers/CMSIS/Include/core_cm4.h **** );
  3615. 1876:Drivers/CMSIS/Include/core_cm4.h **** }
  3616. 807 .loc 1 1876 1 discriminator 4
  3617. 808 005a 1846 mov r0, r3
  3618. 809 005c 2437 adds r7, r7, #36
  3619. 810 .LCFI61:
  3620. 811 .cfi_def_cfa_offset 4
  3621. 812 005e BD46 mov sp, r7
  3622. 813 .LCFI62:
  3623. 814 .cfi_def_cfa_register 13
  3624. 815 @ sp needed
  3625. 816 0060 5DF8047B ldr r7, [sp], #4
  3626. 817 .LCFI63:
  3627. 818 .cfi_restore 7
  3628. 819 .cfi_def_cfa_offset 0
  3629. 820 0064 7047 bx lr
  3630. 821 .cfi_endproc
  3631. 822 .LFE113:
  3632. 824 .section .text.NVIC_DecodePriority,"ax",%progbits
  3633. 825 .align 1
  3634. 826 .syntax unified
  3635. 827 .thumb
  3636. 828 .thumb_func
  3637. 830 NVIC_DecodePriority:
  3638. 831 .LFB114:
  3639. 1877:Drivers/CMSIS/Include/core_cm4.h ****
  3640. 1878:Drivers/CMSIS/Include/core_cm4.h ****
  3641. 1879:Drivers/CMSIS/Include/core_cm4.h **** /**
  3642. 1880:Drivers/CMSIS/Include/core_cm4.h **** \brief Decode Priority
  3643. 1881:Drivers/CMSIS/Include/core_cm4.h **** \details Decodes an interrupt priority value with a given priority group to
  3644. 1882:Drivers/CMSIS/Include/core_cm4.h **** preemptive priority value and subpriority value.
  3645. 1883:Drivers/CMSIS/Include/core_cm4.h **** In case of a conflict between priority grouping and available
  3646. 1884:Drivers/CMSIS/Include/core_cm4.h **** priority bits (__NVIC_PRIO_BITS) the smallest possible priority group is set.
  3647. 1885:Drivers/CMSIS/Include/core_cm4.h **** \param [in] Priority Priority value, which can be retrieved with the function \ref NVIC
  3648. 1886:Drivers/CMSIS/Include/core_cm4.h **** \param [in] PriorityGroup Used priority group.
  3649. 1887:Drivers/CMSIS/Include/core_cm4.h **** \param [out] pPreemptPriority Preemptive priority value (starting from 0).
  3650. 1888:Drivers/CMSIS/Include/core_cm4.h **** \param [out] pSubPriority Subpriority value (starting from 0).
  3651. 1889:Drivers/CMSIS/Include/core_cm4.h **** */
  3652. 1890:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* cons
  3653. 1891:Drivers/CMSIS/Include/core_cm4.h **** {
  3654. 832 .loc 1 1891 1
  3655. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 64
  3656. 833 .cfi_startproc
  3657. 834 @ args = 0, pretend = 0, frame = 32
  3658. 835 @ frame_needed = 1, uses_anonymous_args = 0
  3659. 836 @ link register save eliminated.
  3660. 837 0000 80B4 push {r7}
  3661. 838 .LCFI64:
  3662. 839 .cfi_def_cfa_offset 4
  3663. 840 .cfi_offset 7, -4
  3664. 841 0002 89B0 sub sp, sp, #36
  3665. 842 .LCFI65:
  3666. 843 .cfi_def_cfa_offset 40
  3667. 844 0004 00AF add r7, sp, #0
  3668. 845 .LCFI66:
  3669. 846 .cfi_def_cfa_register 7
  3670. 847 0006 F860 str r0, [r7, #12]
  3671. 848 0008 B960 str r1, [r7, #8]
  3672. 849 000a 7A60 str r2, [r7, #4]
  3673. 850 000c 3B60 str r3, [r7]
  3674. 1892:Drivers/CMSIS/Include/core_cm4.h **** uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used
  3675. 851 .loc 1 1892 12
  3676. 852 000e BB68 ldr r3, [r7, #8]
  3677. 853 0010 03F00703 and r3, r3, #7
  3678. 854 0014 FB61 str r3, [r7, #28]
  3679. 1893:Drivers/CMSIS/Include/core_cm4.h **** uint32_t PreemptPriorityBits;
  3680. 1894:Drivers/CMSIS/Include/core_cm4.h **** uint32_t SubPriorityBits;
  3681. 1895:Drivers/CMSIS/Include/core_cm4.h ****
  3682. 1896:Drivers/CMSIS/Include/core_cm4.h **** PreemptPriorityBits = ((7UL - PriorityGroupTmp) > (uint32_t)(__NVIC_PRIO_BITS)) ? (uint32_t)(__NV
  3683. 855 .loc 1 1896 31
  3684. 856 0016 FB69 ldr r3, [r7, #28]
  3685. 857 0018 C3F10703 rsb r3, r3, #7
  3686. 858 .loc 1 1896 23
  3687. 859 001c 042B cmp r3, #4
  3688. 860 001e 28BF it cs
  3689. 861 0020 0423 movcs r3, #4
  3690. 862 0022 BB61 str r3, [r7, #24]
  3691. 1897:Drivers/CMSIS/Include/core_cm4.h **** SubPriorityBits = ((PriorityGroupTmp + (uint32_t)(__NVIC_PRIO_BITS)) < (uint32_t)7UL) ? (uint
  3692. 863 .loc 1 1897 44
  3693. 864 0024 FB69 ldr r3, [r7, #28]
  3694. 865 0026 0433 adds r3, r3, #4
  3695. 866 .loc 1 1897 109
  3696. 867 0028 062B cmp r3, #6
  3697. 868 002a 02D9 bls .L54
  3698. 869 .loc 1 1897 109 is_stmt 0 discriminator 1
  3699. 870 002c FB69 ldr r3, [r7, #28]
  3700. 871 002e 033B subs r3, r3, #3
  3701. 872 0030 00E0 b .L55
  3702. 873 .L54:
  3703. 874 .loc 1 1897 109 discriminator 2
  3704. 875 0032 0023 movs r3, #0
  3705. 876 .L55:
  3706. 877 .loc 1 1897 23 is_stmt 1 discriminator 4
  3707. 878 0034 7B61 str r3, [r7, #20]
  3708. 1898:Drivers/CMSIS/Include/core_cm4.h ****
  3709. 1899:Drivers/CMSIS/Include/core_cm4.h **** *pPreemptPriority = (Priority >> SubPriorityBits) & (uint32_t)((1UL << (PreemptPriorityBits)) - 1
  3710. 879 .loc 1 1899 33 discriminator 4
  3711. 880 0036 FA68 ldr r2, [r7, #12]
  3712. 881 0038 7B69 ldr r3, [r7, #20]
  3713. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 65
  3714. 882 003a DA40 lsrs r2, r2, r3
  3715. 883 .loc 1 1899 53 discriminator 4
  3716. 884 003c 4FF0FF31 mov r1, #-1
  3717. 885 0040 BB69 ldr r3, [r7, #24]
  3718. 886 0042 01FA03F3 lsl r3, r1, r3
  3719. 887 0046 DB43 mvns r3, r3
  3720. 888 0048 1A40 ands r2, r2, r3
  3721. 889 .loc 1 1899 21 discriminator 4
  3722. 890 004a 7B68 ldr r3, [r7, #4]
  3723. 891 004c 1A60 str r2, [r3]
  3724. 1900:Drivers/CMSIS/Include/core_cm4.h **** *pSubPriority = (Priority ) & (uint32_t)((1UL << (SubPriorityBits )) - 1
  3725. 892 .loc 1 1900 53 discriminator 4
  3726. 893 004e 4FF0FF32 mov r2, #-1
  3727. 894 0052 7B69 ldr r3, [r7, #20]
  3728. 895 0054 02FA03F3 lsl r3, r2, r3
  3729. 896 0058 DA43 mvns r2, r3
  3730. 897 005a FB68 ldr r3, [r7, #12]
  3731. 898 005c 1A40 ands r2, r2, r3
  3732. 899 .loc 1 1900 21 discriminator 4
  3733. 900 005e 3B68 ldr r3, [r7]
  3734. 901 0060 1A60 str r2, [r3]
  3735. 1901:Drivers/CMSIS/Include/core_cm4.h **** }
  3736. 902 .loc 1 1901 1 discriminator 4
  3737. 903 0062 00BF nop
  3738. 904 0064 2437 adds r7, r7, #36
  3739. 905 .LCFI67:
  3740. 906 .cfi_def_cfa_offset 4
  3741. 907 0066 BD46 mov sp, r7
  3742. 908 .LCFI68:
  3743. 909 .cfi_def_cfa_register 13
  3744. 910 @ sp needed
  3745. 911 0068 5DF8047B ldr r7, [sp], #4
  3746. 912 .LCFI69:
  3747. 913 .cfi_restore 7
  3748. 914 .cfi_def_cfa_offset 0
  3749. 915 006c 7047 bx lr
  3750. 916 .cfi_endproc
  3751. 917 .LFE114:
  3752. 919 .section .text.__NVIC_SystemReset,"ax",%progbits
  3753. 920 .align 1
  3754. 921 .syntax unified
  3755. 922 .thumb
  3756. 923 .thumb_func
  3757. 925 __NVIC_SystemReset:
  3758. 926 .LFB117:
  3759. 1902:Drivers/CMSIS/Include/core_cm4.h ****
  3760. 1903:Drivers/CMSIS/Include/core_cm4.h ****
  3761. 1904:Drivers/CMSIS/Include/core_cm4.h **** /**
  3762. 1905:Drivers/CMSIS/Include/core_cm4.h **** \brief Set Interrupt Vector
  3763. 1906:Drivers/CMSIS/Include/core_cm4.h **** \details Sets an interrupt vector in SRAM based interrupt vector table.
  3764. 1907:Drivers/CMSIS/Include/core_cm4.h **** The interrupt number can be positive to specify a device specific interrupt,
  3765. 1908:Drivers/CMSIS/Include/core_cm4.h **** or negative to specify a processor exception.
  3766. 1909:Drivers/CMSIS/Include/core_cm4.h **** VTOR must been relocated to SRAM before.
  3767. 1910:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Interrupt number
  3768. 1911:Drivers/CMSIS/Include/core_cm4.h **** \param [in] vector Address of interrupt handler function
  3769. 1912:Drivers/CMSIS/Include/core_cm4.h **** */
  3770. 1913:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE void __NVIC_SetVector(IRQn_Type IRQn, uint32_t vector)
  3771. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 66
  3772. 1914:Drivers/CMSIS/Include/core_cm4.h **** {
  3773. 1915:Drivers/CMSIS/Include/core_cm4.h **** uint32_t *vectors = (uint32_t *)SCB->VTOR;
  3774. 1916:Drivers/CMSIS/Include/core_cm4.h **** vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET] = vector;
  3775. 1917:Drivers/CMSIS/Include/core_cm4.h **** }
  3776. 1918:Drivers/CMSIS/Include/core_cm4.h ****
  3777. 1919:Drivers/CMSIS/Include/core_cm4.h ****
  3778. 1920:Drivers/CMSIS/Include/core_cm4.h **** /**
  3779. 1921:Drivers/CMSIS/Include/core_cm4.h **** \brief Get Interrupt Vector
  3780. 1922:Drivers/CMSIS/Include/core_cm4.h **** \details Reads an interrupt vector from interrupt vector table.
  3781. 1923:Drivers/CMSIS/Include/core_cm4.h **** The interrupt number can be positive to specify a device specific interrupt,
  3782. 1924:Drivers/CMSIS/Include/core_cm4.h **** or negative to specify a processor exception.
  3783. 1925:Drivers/CMSIS/Include/core_cm4.h **** \param [in] IRQn Interrupt number.
  3784. 1926:Drivers/CMSIS/Include/core_cm4.h **** \return Address of interrupt handler function
  3785. 1927:Drivers/CMSIS/Include/core_cm4.h **** */
  3786. 1928:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t __NVIC_GetVector(IRQn_Type IRQn)
  3787. 1929:Drivers/CMSIS/Include/core_cm4.h **** {
  3788. 1930:Drivers/CMSIS/Include/core_cm4.h **** uint32_t *vectors = (uint32_t *)SCB->VTOR;
  3789. 1931:Drivers/CMSIS/Include/core_cm4.h **** return vectors[(int32_t)IRQn + NVIC_USER_IRQ_OFFSET];
  3790. 1932:Drivers/CMSIS/Include/core_cm4.h **** }
  3791. 1933:Drivers/CMSIS/Include/core_cm4.h ****
  3792. 1934:Drivers/CMSIS/Include/core_cm4.h ****
  3793. 1935:Drivers/CMSIS/Include/core_cm4.h **** /**
  3794. 1936:Drivers/CMSIS/Include/core_cm4.h **** \brief System Reset
  3795. 1937:Drivers/CMSIS/Include/core_cm4.h **** \details Initiates a system reset request to reset the MCU.
  3796. 1938:Drivers/CMSIS/Include/core_cm4.h **** */
  3797. 1939:Drivers/CMSIS/Include/core_cm4.h **** __NO_RETURN __STATIC_INLINE void __NVIC_SystemReset(void)
  3798. 1940:Drivers/CMSIS/Include/core_cm4.h **** {
  3799. 927 .loc 1 1940 1
  3800. 928 .cfi_startproc
  3801. 929 @ args = 0, pretend = 0, frame = 0
  3802. 930 @ frame_needed = 1, uses_anonymous_args = 0
  3803. 931 @ link register save eliminated.
  3804. 932 0000 80B4 push {r7}
  3805. 933 .LCFI70:
  3806. 934 .cfi_def_cfa_offset 4
  3807. 935 .cfi_offset 7, -4
  3808. 936 0002 00AF add r7, sp, #0
  3809. 937 .LCFI71:
  3810. 938 .cfi_def_cfa_register 7
  3811. 939 .LBB14:
  3812. 940 .LBB15:
  3813. 879:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  3814. 941 .loc 2 879 3
  3815. 942 .syntax unified
  3816. 943 @ 879 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
  3817. 944 0004 BFF34F8F dsb 0xF
  3818. 945 @ 0 "" 2
  3819. 946 .loc 2 880 1
  3820. 947 .thumb
  3821. 948 .syntax unified
  3822. 949 0008 00BF nop
  3823. 950 .LBE15:
  3824. 951 .LBE14:
  3825. 1941:Drivers/CMSIS/Include/core_cm4.h **** __DSB(); /* Ensure all outstanding memor
  3826. 1942:Drivers/CMSIS/Include/core_cm4.h **** buffered write are completed
  3827. 1943:Drivers/CMSIS/Include/core_cm4.h **** SCB->AIRCR = (uint32_t)((0x5FAUL << SCB_AIRCR_VECTKEY_Pos) |
  3828. 1944:Drivers/CMSIS/Include/core_cm4.h **** (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
  3829. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 67
  3830. 952 .loc 1 1944 32
  3831. 953 000a 064B ldr r3, .L58
  3832. 954 000c DB68 ldr r3, [r3, #12]
  3833. 955 .loc 1 1944 40
  3834. 956 000e 03F4E062 and r2, r3, #1792
  3835. 1943:Drivers/CMSIS/Include/core_cm4.h **** (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
  3836. 957 .loc 1 1943 6
  3837. 958 0012 0449 ldr r1, .L58
  3838. 1943:Drivers/CMSIS/Include/core_cm4.h **** (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
  3839. 959 .loc 1 1943 17
  3840. 960 0014 044B ldr r3, .L58+4
  3841. 961 0016 1343 orrs r3, r3, r2
  3842. 1943:Drivers/CMSIS/Include/core_cm4.h **** (SCB->AIRCR & SCB_AIRCR_PRIGROUP_Msk) |
  3843. 962 .loc 1 1943 15
  3844. 963 0018 CB60 str r3, [r1, #12]
  3845. 964 .LBB16:
  3846. 965 .LBB17:
  3847. 879:Drivers/CMSIS/Include/cmsis_gcc.h **** }
  3848. 966 .loc 2 879 3
  3849. 967 .syntax unified
  3850. 968 @ 879 "Drivers/CMSIS/Include/cmsis_gcc.h" 1
  3851. 969 001a BFF34F8F dsb 0xF
  3852. 970 @ 0 "" 2
  3853. 971 .loc 2 880 1
  3854. 972 .thumb
  3855. 973 .syntax unified
  3856. 974 001e 00BF nop
  3857. 975 .L57:
  3858. 976 .LBE17:
  3859. 977 .LBE16:
  3860. 1945:Drivers/CMSIS/Include/core_cm4.h **** SCB_AIRCR_SYSRESETREQ_Msk ); /* Keep priority group unchange
  3861. 1946:Drivers/CMSIS/Include/core_cm4.h **** __DSB(); /* Ensure completion of memory
  3862. 1947:Drivers/CMSIS/Include/core_cm4.h ****
  3863. 1948:Drivers/CMSIS/Include/core_cm4.h **** for(;;) /* wait until reset */
  3864. 1949:Drivers/CMSIS/Include/core_cm4.h **** {
  3865. 1950:Drivers/CMSIS/Include/core_cm4.h **** __NOP();
  3866. 978 .loc 1 1950 5 discriminator 1
  3867. 979 .syntax unified
  3868. 980 @ 1950 "Drivers/CMSIS/Include/core_cm4.h" 1
  3869. 981 0020 00BF nop
  3870. 982 @ 0 "" 2
  3871. 983 .thumb
  3872. 984 .syntax unified
  3873. 985 0022 FDE7 b .L57
  3874. 986 .L59:
  3875. 987 .align 2
  3876. 988 .L58:
  3877. 989 0024 00ED00E0 .word -536810240
  3878. 990 0028 0400FA05 .word 100270084
  3879. 991 .cfi_endproc
  3880. 992 .LFE117:
  3881. 994 .section .text.SysTick_Config,"ax",%progbits
  3882. 995 .align 1
  3883. 996 .syntax unified
  3884. 997 .thumb
  3885. 998 .thumb_func
  3886. 1000 SysTick_Config:
  3887. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 68
  3888. 1001 .LFB126:
  3889. 1951:Drivers/CMSIS/Include/core_cm4.h **** }
  3890. 1952:Drivers/CMSIS/Include/core_cm4.h **** }
  3891. 1953:Drivers/CMSIS/Include/core_cm4.h ****
  3892. 1954:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of CMSIS_Core_NVICFunctions */
  3893. 1955:Drivers/CMSIS/Include/core_cm4.h ****
  3894. 1956:Drivers/CMSIS/Include/core_cm4.h **** /* ########################## MPU functions #################################### */
  3895. 1957:Drivers/CMSIS/Include/core_cm4.h ****
  3896. 1958:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U)
  3897. 1959:Drivers/CMSIS/Include/core_cm4.h ****
  3898. 1960:Drivers/CMSIS/Include/core_cm4.h **** #include "mpu_armv7.h"
  3899. 1961:Drivers/CMSIS/Include/core_cm4.h ****
  3900. 1962:Drivers/CMSIS/Include/core_cm4.h **** #endif
  3901. 1963:Drivers/CMSIS/Include/core_cm4.h ****
  3902. 1964:Drivers/CMSIS/Include/core_cm4.h ****
  3903. 1965:Drivers/CMSIS/Include/core_cm4.h **** /* ########################## FPU functions #################################### */
  3904. 1966:Drivers/CMSIS/Include/core_cm4.h **** /**
  3905. 1967:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_Core_FunctionInterface
  3906. 1968:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_Core_FpuFunctions FPU Functions
  3907. 1969:Drivers/CMSIS/Include/core_cm4.h **** \brief Function that provides FPU type.
  3908. 1970:Drivers/CMSIS/Include/core_cm4.h **** @{
  3909. 1971:Drivers/CMSIS/Include/core_cm4.h **** */
  3910. 1972:Drivers/CMSIS/Include/core_cm4.h ****
  3911. 1973:Drivers/CMSIS/Include/core_cm4.h **** /**
  3912. 1974:Drivers/CMSIS/Include/core_cm4.h **** \brief get FPU type
  3913. 1975:Drivers/CMSIS/Include/core_cm4.h **** \details returns the FPU type
  3914. 1976:Drivers/CMSIS/Include/core_cm4.h **** \returns
  3915. 1977:Drivers/CMSIS/Include/core_cm4.h **** - \b 0: No FPU
  3916. 1978:Drivers/CMSIS/Include/core_cm4.h **** - \b 1: Single precision FPU
  3917. 1979:Drivers/CMSIS/Include/core_cm4.h **** - \b 2: Double + Single precision FPU
  3918. 1980:Drivers/CMSIS/Include/core_cm4.h **** */
  3919. 1981:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t SCB_GetFPUType(void)
  3920. 1982:Drivers/CMSIS/Include/core_cm4.h **** {
  3921. 1983:Drivers/CMSIS/Include/core_cm4.h **** uint32_t mvfr0;
  3922. 1984:Drivers/CMSIS/Include/core_cm4.h ****
  3923. 1985:Drivers/CMSIS/Include/core_cm4.h **** mvfr0 = FPU->MVFR0;
  3924. 1986:Drivers/CMSIS/Include/core_cm4.h **** if ((mvfr0 & (FPU_MVFR0_Single_precision_Msk | FPU_MVFR0_Double_precision_Msk)) == 0x020U)
  3925. 1987:Drivers/CMSIS/Include/core_cm4.h **** {
  3926. 1988:Drivers/CMSIS/Include/core_cm4.h **** return 1U; /* Single precision FPU */
  3927. 1989:Drivers/CMSIS/Include/core_cm4.h **** }
  3928. 1990:Drivers/CMSIS/Include/core_cm4.h **** else
  3929. 1991:Drivers/CMSIS/Include/core_cm4.h **** {
  3930. 1992:Drivers/CMSIS/Include/core_cm4.h **** return 0U; /* No FPU */
  3931. 1993:Drivers/CMSIS/Include/core_cm4.h **** }
  3932. 1994:Drivers/CMSIS/Include/core_cm4.h **** }
  3933. 1995:Drivers/CMSIS/Include/core_cm4.h ****
  3934. 1996:Drivers/CMSIS/Include/core_cm4.h ****
  3935. 1997:Drivers/CMSIS/Include/core_cm4.h **** /*@} end of CMSIS_Core_FpuFunctions */
  3936. 1998:Drivers/CMSIS/Include/core_cm4.h ****
  3937. 1999:Drivers/CMSIS/Include/core_cm4.h ****
  3938. 2000:Drivers/CMSIS/Include/core_cm4.h ****
  3939. 2001:Drivers/CMSIS/Include/core_cm4.h **** /* ################################## SysTick function ########################################
  3940. 2002:Drivers/CMSIS/Include/core_cm4.h **** /**
  3941. 2003:Drivers/CMSIS/Include/core_cm4.h **** \ingroup CMSIS_Core_FunctionInterface
  3942. 2004:Drivers/CMSIS/Include/core_cm4.h **** \defgroup CMSIS_Core_SysTickFunctions SysTick Functions
  3943. 2005:Drivers/CMSIS/Include/core_cm4.h **** \brief Functions that configure the System.
  3944. 2006:Drivers/CMSIS/Include/core_cm4.h **** @{
  3945. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 69
  3946. 2007:Drivers/CMSIS/Include/core_cm4.h **** */
  3947. 2008:Drivers/CMSIS/Include/core_cm4.h ****
  3948. 2009:Drivers/CMSIS/Include/core_cm4.h **** #if defined (__Vendor_SysTickConfig) && (__Vendor_SysTickConfig == 0U)
  3949. 2010:Drivers/CMSIS/Include/core_cm4.h ****
  3950. 2011:Drivers/CMSIS/Include/core_cm4.h **** /**
  3951. 2012:Drivers/CMSIS/Include/core_cm4.h **** \brief System Tick Configuration
  3952. 2013:Drivers/CMSIS/Include/core_cm4.h **** \details Initializes the System Timer and its interrupt, and starts the System Tick Timer.
  3953. 2014:Drivers/CMSIS/Include/core_cm4.h **** Counter is in free running mode to generate periodic interrupts.
  3954. 2015:Drivers/CMSIS/Include/core_cm4.h **** \param [in] ticks Number of ticks between two interrupts.
  3955. 2016:Drivers/CMSIS/Include/core_cm4.h **** \return 0 Function succeeded.
  3956. 2017:Drivers/CMSIS/Include/core_cm4.h **** \return 1 Function failed.
  3957. 2018:Drivers/CMSIS/Include/core_cm4.h **** \note When the variable <b>__Vendor_SysTickConfig</b> is set to 1, then the
  3958. 2019:Drivers/CMSIS/Include/core_cm4.h **** function <b>SysTick_Config</b> is not included. In this case, the file <b><i>device</i>.
  3959. 2020:Drivers/CMSIS/Include/core_cm4.h **** must contain a vendor-specific implementation of this function.
  3960. 2021:Drivers/CMSIS/Include/core_cm4.h **** */
  3961. 2022:Drivers/CMSIS/Include/core_cm4.h **** __STATIC_INLINE uint32_t SysTick_Config(uint32_t ticks)
  3962. 2023:Drivers/CMSIS/Include/core_cm4.h **** {
  3963. 1002 .loc 1 2023 1
  3964. 1003 .cfi_startproc
  3965. 1004 @ args = 0, pretend = 0, frame = 8
  3966. 1005 @ frame_needed = 1, uses_anonymous_args = 0
  3967. 1006 0000 80B5 push {r7, lr}
  3968. 1007 .LCFI72:
  3969. 1008 .cfi_def_cfa_offset 8
  3970. 1009 .cfi_offset 7, -8
  3971. 1010 .cfi_offset 14, -4
  3972. 1011 0002 82B0 sub sp, sp, #8
  3973. 1012 .LCFI73:
  3974. 1013 .cfi_def_cfa_offset 16
  3975. 1014 0004 00AF add r7, sp, #0
  3976. 1015 .LCFI74:
  3977. 1016 .cfi_def_cfa_register 7
  3978. 1017 0006 7860 str r0, [r7, #4]
  3979. 2024:Drivers/CMSIS/Include/core_cm4.h **** if ((ticks - 1UL) > SysTick_LOAD_RELOAD_Msk)
  3980. 1018 .loc 1 2024 14
  3981. 1019 0008 7B68 ldr r3, [r7, #4]
  3982. 1020 000a 013B subs r3, r3, #1
  3983. 1021 .loc 1 2024 6
  3984. 1022 000c B3F1807F cmp r3, #16777216
  3985. 1023 0010 01D3 bcc .L61
  3986. 2025:Drivers/CMSIS/Include/core_cm4.h **** {
  3987. 2026:Drivers/CMSIS/Include/core_cm4.h **** return (1UL); /* Reload value impossible */
  3988. 1024 .loc 1 2026 12
  3989. 1025 0012 0123 movs r3, #1
  3990. 1026 0014 0FE0 b .L62
  3991. 1027 .L61:
  3992. 2027:Drivers/CMSIS/Include/core_cm4.h **** }
  3993. 2028:Drivers/CMSIS/Include/core_cm4.h ****
  3994. 2029:Drivers/CMSIS/Include/core_cm4.h **** SysTick->LOAD = (uint32_t)(ticks - 1UL); /* set reload register */
  3995. 1028 .loc 1 2029 10
  3996. 1029 0016 0A4A ldr r2, .L63
  3997. 1030 .loc 1 2029 20
  3998. 1031 0018 7B68 ldr r3, [r7, #4]
  3999. 1032 001a 013B subs r3, r3, #1
  4000. 1033 .loc 1 2029 18
  4001. 1034 001c 5360 str r3, [r2, #4]
  4002. 2030:Drivers/CMSIS/Include/core_cm4.h **** NVIC_SetPriority (SysTick_IRQn, (1UL << __NVIC_PRIO_BITS) - 1UL); /* set Priority for Systick Int
  4003. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 70
  4004. 1035 .loc 1 2030 3
  4005. 1036 001e 0F21 movs r1, #15
  4006. 1037 0020 4FF0FF30 mov r0, #-1
  4007. 1038 0024 FFF7FEFF bl __NVIC_SetPriority
  4008. 2031:Drivers/CMSIS/Include/core_cm4.h **** SysTick->VAL = 0UL; /* Load the SysTick Counter Val
  4009. 1039 .loc 1 2031 10
  4010. 1040 0028 054B ldr r3, .L63
  4011. 1041 .loc 1 2031 18
  4012. 1042 002a 0022 movs r2, #0
  4013. 1043 002c 9A60 str r2, [r3, #8]
  4014. 2032:Drivers/CMSIS/Include/core_cm4.h **** SysTick->CTRL = SysTick_CTRL_CLKSOURCE_Msk |
  4015. 1044 .loc 1 2032 10
  4016. 1045 002e 044B ldr r3, .L63
  4017. 1046 .loc 1 2032 18
  4018. 1047 0030 0722 movs r2, #7
  4019. 1048 0032 1A60 str r2, [r3]
  4020. 2033:Drivers/CMSIS/Include/core_cm4.h **** SysTick_CTRL_TICKINT_Msk |
  4021. 2034:Drivers/CMSIS/Include/core_cm4.h **** SysTick_CTRL_ENABLE_Msk; /* Enable SysTick IRQ and SysTi
  4022. 2035:Drivers/CMSIS/Include/core_cm4.h **** return (0UL); /* Function successful */
  4023. 1049 .loc 1 2035 10
  4024. 1050 0034 0023 movs r3, #0
  4025. 1051 .L62:
  4026. 2036:Drivers/CMSIS/Include/core_cm4.h **** }
  4027. 1052 .loc 1 2036 1
  4028. 1053 0036 1846 mov r0, r3
  4029. 1054 0038 0837 adds r7, r7, #8
  4030. 1055 .LCFI75:
  4031. 1056 .cfi_def_cfa_offset 8
  4032. 1057 003a BD46 mov sp, r7
  4033. 1058 .LCFI76:
  4034. 1059 .cfi_def_cfa_register 13
  4035. 1060 @ sp needed
  4036. 1061 003c 80BD pop {r7, pc}
  4037. 1062 .L64:
  4038. 1063 003e 00BF .align 2
  4039. 1064 .L63:
  4040. 1065 0040 10E000E0 .word -536813552
  4041. 1066 .cfi_endproc
  4042. 1067 .LFE126:
  4043. 1069 .section .rodata
  4044. 1070 .align 2
  4045. 1071 .LC0:
  4046. 1072 0000 44726976 .ascii "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cort"
  4047. 1072 6572732F
  4048. 1072 53544D33
  4049. 1072 32463378
  4050. 1072 785F4841
  4051. 1073 0033 65782E63 .ascii "ex.c\000"
  4052. 1073 00
  4053. 1074 .section .text.HAL_NVIC_SetPriorityGrouping,"ax",%progbits
  4054. 1075 .align 1
  4055. 1076 .global HAL_NVIC_SetPriorityGrouping
  4056. 1077 .syntax unified
  4057. 1078 .thumb
  4058. 1079 .thumb_func
  4059. 1081 HAL_NVIC_SetPriorityGrouping:
  4060. 1082 .LFB130:
  4061. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 71
  4062. 1083 .file 3 "Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c"
  4063. 1:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4064. 2:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ******************************************************************************
  4065. 3:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @file stm32f3xx_hal_cortex.c
  4066. 4:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @author MCD Application Team
  4067. 5:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief CORTEX HAL module driver.
  4068. 6:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This file provides firmware functions to manage the following
  4069. 7:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * functionalities of the CORTEX:
  4070. 8:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * + Initialization and de-initialization functions
  4071. 9:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * + Peripheral Control functions
  4072. 10:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4073. 11:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @verbatim
  4074. 12:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4075. 13:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ##### How to use this driver #####
  4076. 14:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4077. 15:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4078. 16:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4079. 17:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *** How to configure Interrupts using CORTEX HAL driver ***
  4080. 18:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ===========================================================
  4081. 19:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4082. 20:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** This section provides functions allowing to configure the NVIC interrupts (IRQ).
  4083. 21:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** The Cortex-M4 exceptions are managed by CMSIS functions.
  4084. 22:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4085. 23:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (#) Configure the NVIC Priority Grouping using HAL_NVIC_SetPriorityGrouping() function
  4086. 24:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4087. 25:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (#) Configure the priority of the selected IRQ Channels using HAL_NVIC_SetPriority()
  4088. 26:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4089. 27:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (#) Enable the selected IRQ Channels using HAL_NVIC_EnableIRQ()
  4090. 28:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4091. 29:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4092. 30:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** -@- When the NVIC_PRIORITYGROUP_0 is selected, IRQ pre-emption is no more possible.
  4093. 31:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** The pending IRQ priority will be managed only by the sub priority.
  4094. 32:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4095. 33:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** -@- IRQ priority order (sorted by highest to lowest priority):
  4096. 34:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+@) Lowest pre-emption priority
  4097. 35:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+@) Lowest sub priority
  4098. 36:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+@) Lowest hardware priority (IRQ number)
  4099. 37:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4100. 38:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4101. 39:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *** How to configure Systick using CORTEX HAL driver ***
  4102. 40:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ========================================================
  4103. 41:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4104. 42:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** Setup SysTick Timer for time base
  4105. 43:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4106. 44:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+) The HAL_SYSTICK_Config()function calls the SysTick_Config() function which
  4107. 45:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** is a CMSIS function that:
  4108. 46:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Configures the SysTick Reload register with value passed as function parameter.
  4109. 47:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Configures the SysTick IRQ priority to the lowest value (0x0FU).
  4110. 48:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Resets the SysTick Counter register.
  4111. 49:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Configures the SysTick Counter clock source to be Core Clock Source (HCLK).
  4112. 50:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Enables the SysTick Interrupt.
  4113. 51:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Starts the SysTick Counter.
  4114. 52:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4115. 53:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+) You can change the SysTick Clock source to be HCLK_Div8 by calling the macro
  4116. 54:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** __HAL_CORTEX_SYSTICKCLK_CONFIG(SYSTICK_CLKSOURCE_HCLK_DIV8) just after the
  4117. 55:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** HAL_SYSTICK_Config() function call. The __HAL_CORTEX_SYSTICKCLK_CONFIG() macro is defined
  4118. 56:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** inside the stm32f3xx_hal_cortex.h file.
  4119. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 72
  4120. 57:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4121. 58:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+) You can change the SysTick IRQ priority by calling the
  4122. 59:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** HAL_NVIC_SetPriority(SysTick_IRQn,...) function just after the HAL_SYSTICK_Config() function
  4123. 60:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** call. The HAL_NVIC_SetPriority() call the NVIC_SetPriority() function which is a CMSIS funct
  4124. 61:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4125. 62:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (+) To adjust the SysTick time base, use the following formula:
  4126. 63:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4127. 64:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** Reload Value = SysTick Counter Clock (Hz) x Desired Time base (s)
  4128. 65:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Reload Value is the parameter to be passed for HAL_SYSTICK_Config() function
  4129. 66:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (++) Reload Value should not exceed 0xFFFFFF
  4130. 67:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4131. 68:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** @endverbatim
  4132. 69:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ******************************************************************************
  4133. 70:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @attention
  4134. 71:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4135. 72:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * Copyright (c) 2016 STMicroelectronics.
  4136. 73:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * All rights reserved.
  4137. 74:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4138. 75:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This software is licensed under terms that can be found in the LICENSE file in
  4139. 76:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * the root directory of this software component.
  4140. 77:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * If no LICENSE file comes with this software, it is provided AS-IS.
  4141. 78:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4142. 79:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ******************************************************************************
  4143. 80:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4144. 81:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4145. 82:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /*
  4146. 83:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** Additional Tables: CORTEX_NVIC_Priority_Table
  4147. 84:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** The table below gives the allowed values of the pre-emption priority and subpriority according
  4148. 85:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** to the Priority Grouping configuration performed by HAL_NVIC_SetPriorityGrouping() function
  4149. 86:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ============================================================================================
  4150. 87:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PriorityGroup | NVIC_IRQChannelPreemptionPriority | NVIC_IRQChannelSubPriority |
  4151. 88:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ============================================================================================
  4152. 89:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PRIORITYGROUP_0 | 0 | 0U-15 |
  4153. 90:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** | | | 4
  4154. 91:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** --------------------------------------------------------------------------------------------
  4155. 92:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PRIORITYGROUP_1 | 0U-1 | 0U-7 |
  4156. 93:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** | | | 3
  4157. 94:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** --------------------------------------------------------------------------------------------
  4158. 95:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PRIORITYGROUP_2 | 0U-3 | 0U-3 |
  4159. 96:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** | | | 2
  4160. 97:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** --------------------------------------------------------------------------------------------
  4161. 98:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PRIORITYGROUP_3 | 0U-7 | 0U-1 |
  4162. 99:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** | | | 1
  4163. 100:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** --------------------------------------------------------------------------------------------
  4164. 101:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_PRIORITYGROUP_4 | 0U-15 | 0 |
  4165. 102:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** | | | 0
  4166. 103:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ============================================================================================
  4167. 104:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4168. 105:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4169. 106:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4170. 107:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Includes ------------------------------------------------------------------*/
  4171. 108:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** #include "stm32f3xx_hal.h"
  4172. 109:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4173. 110:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /** @addtogroup STM32F3xx_HAL_Driver
  4174. 111:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @{
  4175. 112:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4176. 113:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4177. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 73
  4178. 114:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /** @defgroup CORTEX CORTEX
  4179. 115:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief CORTEX CORTEX HAL module driver
  4180. 116:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @{
  4181. 117:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4182. 118:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4183. 119:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** #ifdef HAL_CORTEX_MODULE_ENABLED
  4184. 120:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4185. 121:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Private typedef -----------------------------------------------------------*/
  4186. 122:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Private define ------------------------------------------------------------*/
  4187. 123:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Private macro -------------------------------------------------------------*/
  4188. 124:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Private variables ---------------------------------------------------------*/
  4189. 125:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Private function prototypes -----------------------------------------------*/
  4190. 126:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Exported functions ---------------------------------------------------------*/
  4191. 127:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4192. 128:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /** @defgroup CORTEX_Exported_Functions CORTEX Exported Functions
  4193. 129:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @{
  4194. 130:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4195. 131:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4196. 132:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4197. 133:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /** @defgroup CORTEX_Exported_Functions_Group1 Initialization and de-initialization functions
  4198. 134:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Initialization and Configuration functions
  4199. 135:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4200. 136:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** @verbatim
  4201. 137:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4202. 138:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ##### Initialization and de-initialization functions #####
  4203. 139:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4204. 140:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4205. 141:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** This section provides the CORTEX HAL driver functions allowing to configure Interrupts
  4206. 142:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** Systick functionalities
  4207. 143:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4208. 144:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** @endverbatim
  4209. 145:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @{
  4210. 146:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4211. 147:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4212. 148:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4213. 149:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4214. 150:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Sets the priority grouping field (pre-emption priority and subpriority)
  4215. 151:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * using the required unlock sequence.
  4216. 152:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param PriorityGroup The priority grouping bits length.
  4217. 153:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be one of the following values:
  4218. 154:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_0: 0 bits for pre-emption priority
  4219. 155:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 4 bits for subpriority
  4220. 156:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_1: 1 bits for pre-emption priority
  4221. 157:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 3 bits for subpriority
  4222. 158:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_2: 2 bits for pre-emption priority
  4223. 159:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 2 bits for subpriority
  4224. 160:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_3: 3 bits for pre-emption priority
  4225. 161:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 1 bits for subpriority
  4226. 162:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_4: 4 bits for pre-emption priority
  4227. 163:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 0 bits for subpriority
  4228. 164:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @note When the NVIC_PriorityGroup_0 is selected, IRQ pre-emption is no more possible.
  4229. 165:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * The pending IRQ priority will be managed only by the subpriority.
  4230. 166:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4231. 167:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4232. 168:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_SetPriorityGrouping(uint32_t PriorityGroup)
  4233. 169:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4234. 1084 .loc 3 169 1
  4235. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 74
  4236. 1085 .cfi_startproc
  4237. 1086 @ args = 0, pretend = 0, frame = 8
  4238. 1087 @ frame_needed = 1, uses_anonymous_args = 0
  4239. 1088 0000 80B5 push {r7, lr}
  4240. 1089 .LCFI77:
  4241. 1090 .cfi_def_cfa_offset 8
  4242. 1091 .cfi_offset 7, -8
  4243. 1092 .cfi_offset 14, -4
  4244. 1093 0002 82B0 sub sp, sp, #8
  4245. 1094 .LCFI78:
  4246. 1095 .cfi_def_cfa_offset 16
  4247. 1096 0004 00AF add r7, sp, #0
  4248. 1097 .LCFI79:
  4249. 1098 .cfi_def_cfa_register 7
  4250. 1099 0006 7860 str r0, [r7, #4]
  4251. 170:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4252. 171:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup));
  4253. 1100 .loc 3 171 3
  4254. 1101 0008 7B68 ldr r3, [r7, #4]
  4255. 1102 000a 072B cmp r3, #7
  4256. 1103 000c 0FD0 beq .L66
  4257. 1104 .loc 3 171 3 is_stmt 0 discriminator 1
  4258. 1105 000e 7B68 ldr r3, [r7, #4]
  4259. 1106 0010 062B cmp r3, #6
  4260. 1107 0012 0CD0 beq .L66
  4261. 1108 .loc 3 171 3 discriminator 2
  4262. 1109 0014 7B68 ldr r3, [r7, #4]
  4263. 1110 0016 052B cmp r3, #5
  4264. 1111 0018 09D0 beq .L66
  4265. 1112 .loc 3 171 3 discriminator 3
  4266. 1113 001a 7B68 ldr r3, [r7, #4]
  4267. 1114 001c 042B cmp r3, #4
  4268. 1115 001e 06D0 beq .L66
  4269. 1116 .loc 3 171 3 discriminator 4
  4270. 1117 0020 7B68 ldr r3, [r7, #4]
  4271. 1118 0022 032B cmp r3, #3
  4272. 1119 0024 03D0 beq .L66
  4273. 1120 .loc 3 171 3 discriminator 5
  4274. 1121 0026 AB21 movs r1, #171
  4275. 1122 0028 0448 ldr r0, .L67
  4276. 1123 002a FFF7FEFF bl assert_failed
  4277. 1124 .L66:
  4278. 172:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4279. 173:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Set the PRIGROUP[10:8] bits according to the PriorityGroup parameter value */
  4280. 174:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_SetPriorityGrouping(PriorityGroup);
  4281. 1125 .loc 3 174 3 is_stmt 1
  4282. 1126 002e 7868 ldr r0, [r7, #4]
  4283. 1127 0030 FFF7FEFF bl __NVIC_SetPriorityGrouping
  4284. 175:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4285. 1128 .loc 3 175 1
  4286. 1129 0034 00BF nop
  4287. 1130 0036 0837 adds r7, r7, #8
  4288. 1131 .LCFI80:
  4289. 1132 .cfi_def_cfa_offset 8
  4290. 1133 0038 BD46 mov sp, r7
  4291. 1134 .LCFI81:
  4292. 1135 .cfi_def_cfa_register 13
  4293. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 75
  4294. 1136 @ sp needed
  4295. 1137 003a 80BD pop {r7, pc}
  4296. 1138 .L68:
  4297. 1139 .align 2
  4298. 1140 .L67:
  4299. 1141 003c 00000000 .word .LC0
  4300. 1142 .cfi_endproc
  4301. 1143 .LFE130:
  4302. 1145 .section .text.HAL_NVIC_SetPriority,"ax",%progbits
  4303. 1146 .align 1
  4304. 1147 .global HAL_NVIC_SetPriority
  4305. 1148 .syntax unified
  4306. 1149 .thumb
  4307. 1150 .thumb_func
  4308. 1152 HAL_NVIC_SetPriority:
  4309. 1153 .LFB131:
  4310. 176:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4311. 177:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4312. 178:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Sets the priority of an interrupt.
  4313. 179:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  4314. 180:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  4315. 181:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  4316. 182:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param PreemptPriority The pre-emption priority for the IRQn channel.
  4317. 183:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be a value between 0 and 15 as described in the table CORTEX_NVIC_Pr
  4318. 184:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * A lower priority value indicates a higher priority
  4319. 185:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param SubPriority the subpriority level for the IRQ channel.
  4320. 186:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be a value between 0 and 15 as described in the table CORTEX_NVIC_Pr
  4321. 187:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * A lower priority value indicates a higher priority.
  4322. 188:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4323. 189:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4324. 190:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_SetPriority(IRQn_Type IRQn, uint32_t PreemptPriority, uint32_t SubPriority)
  4325. 191:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4326. 1154 .loc 3 191 1
  4327. 1155 .cfi_startproc
  4328. 1156 @ args = 0, pretend = 0, frame = 24
  4329. 1157 @ frame_needed = 1, uses_anonymous_args = 0
  4330. 1158 0000 80B5 push {r7, lr}
  4331. 1159 .LCFI82:
  4332. 1160 .cfi_def_cfa_offset 8
  4333. 1161 .cfi_offset 7, -8
  4334. 1162 .cfi_offset 14, -4
  4335. 1163 0002 86B0 sub sp, sp, #24
  4336. 1164 .LCFI83:
  4337. 1165 .cfi_def_cfa_offset 32
  4338. 1166 0004 00AF add r7, sp, #0
  4339. 1167 .LCFI84:
  4340. 1168 .cfi_def_cfa_register 7
  4341. 1169 0006 0346 mov r3, r0
  4342. 1170 0008 B960 str r1, [r7, #8]
  4343. 1171 000a 7A60 str r2, [r7, #4]
  4344. 1172 000c FB73 strb r3, [r7, #15]
  4345. 192:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** uint32_t prioritygroup = 0x00U;
  4346. 1173 .loc 3 192 12
  4347. 1174 000e 0023 movs r3, #0
  4348. 1175 0010 7B61 str r3, [r7, #20]
  4349. 193:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4350. 194:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4351. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 76
  4352. 195:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_SUB_PRIORITY(SubPriority));
  4353. 1176 .loc 3 195 3
  4354. 1177 0012 7B68 ldr r3, [r7, #4]
  4355. 1178 0014 0F2B cmp r3, #15
  4356. 1179 0016 03D9 bls .L70
  4357. 1180 .loc 3 195 3 is_stmt 0 discriminator 1
  4358. 1181 0018 C321 movs r1, #195
  4359. 1182 001a 0E48 ldr r0, .L72
  4360. 1183 001c FFF7FEFF bl assert_failed
  4361. 1184 .L70:
  4362. 196:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_PREEMPTION_PRIORITY(PreemptPriority));
  4363. 1185 .loc 3 196 3 is_stmt 1
  4364. 1186 0020 BB68 ldr r3, [r7, #8]
  4365. 1187 0022 0F2B cmp r3, #15
  4366. 1188 0024 03D9 bls .L71
  4367. 1189 .loc 3 196 3 is_stmt 0 discriminator 1
  4368. 1190 0026 C421 movs r1, #196
  4369. 1191 0028 0A48 ldr r0, .L72
  4370. 1192 002a FFF7FEFF bl assert_failed
  4371. 1193 .L71:
  4372. 197:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4373. 198:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** prioritygroup = NVIC_GetPriorityGrouping();
  4374. 1194 .loc 3 198 19 is_stmt 1
  4375. 1195 002e FFF7FEFF bl __NVIC_GetPriorityGrouping
  4376. 1196 0032 7861 str r0, [r7, #20]
  4377. 199:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4378. 200:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_SetPriority(IRQn, NVIC_EncodePriority(prioritygroup, PreemptPriority, SubPriority));
  4379. 1197 .loc 3 200 3
  4380. 1198 0034 7A68 ldr r2, [r7, #4]
  4381. 1199 0036 B968 ldr r1, [r7, #8]
  4382. 1200 0038 7869 ldr r0, [r7, #20]
  4383. 1201 003a FFF7FEFF bl NVIC_EncodePriority
  4384. 1202 003e 0246 mov r2, r0
  4385. 1203 0040 97F90F30 ldrsb r3, [r7, #15]
  4386. 1204 0044 1146 mov r1, r2
  4387. 1205 0046 1846 mov r0, r3
  4388. 1206 0048 FFF7FEFF bl __NVIC_SetPriority
  4389. 201:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4390. 1207 .loc 3 201 1
  4391. 1208 004c 00BF nop
  4392. 1209 004e 1837 adds r7, r7, #24
  4393. 1210 .LCFI85:
  4394. 1211 .cfi_def_cfa_offset 8
  4395. 1212 0050 BD46 mov sp, r7
  4396. 1213 .LCFI86:
  4397. 1214 .cfi_def_cfa_register 13
  4398. 1215 @ sp needed
  4399. 1216 0052 80BD pop {r7, pc}
  4400. 1217 .L73:
  4401. 1218 .align 2
  4402. 1219 .L72:
  4403. 1220 0054 00000000 .word .LC0
  4404. 1221 .cfi_endproc
  4405. 1222 .LFE131:
  4406. 1224 .section .text.HAL_NVIC_EnableIRQ,"ax",%progbits
  4407. 1225 .align 1
  4408. 1226 .global HAL_NVIC_EnableIRQ
  4409. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 77
  4410. 1227 .syntax unified
  4411. 1228 .thumb
  4412. 1229 .thumb_func
  4413. 1231 HAL_NVIC_EnableIRQ:
  4414. 1232 .LFB132:
  4415. 202:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4416. 203:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4417. 204:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Enables a device specific interrupt in the NVIC interrupt controller.
  4418. 205:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @note To configure interrupts priority correctly, the NVIC_PriorityGroupConfig()
  4419. 206:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * function should be called before.
  4420. 207:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  4421. 208:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  4422. 209:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  4423. 210:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4424. 211:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4425. 212:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_EnableIRQ(IRQn_Type IRQn)
  4426. 213:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4427. 1233 .loc 3 213 1
  4428. 1234 .cfi_startproc
  4429. 1235 @ args = 0, pretend = 0, frame = 8
  4430. 1236 @ frame_needed = 1, uses_anonymous_args = 0
  4431. 1237 0000 80B5 push {r7, lr}
  4432. 1238 .LCFI87:
  4433. 1239 .cfi_def_cfa_offset 8
  4434. 1240 .cfi_offset 7, -8
  4435. 1241 .cfi_offset 14, -4
  4436. 1242 0002 82B0 sub sp, sp, #8
  4437. 1243 .LCFI88:
  4438. 1244 .cfi_def_cfa_offset 16
  4439. 1245 0004 00AF add r7, sp, #0
  4440. 1246 .LCFI89:
  4441. 1247 .cfi_def_cfa_register 7
  4442. 1248 0006 0346 mov r3, r0
  4443. 1249 0008 FB71 strb r3, [r7, #7]
  4444. 214:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4445. 215:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_DEVICE_IRQ(IRQn));
  4446. 1250 .loc 3 215 3
  4447. 1251 000a 97F90730 ldrsb r3, [r7, #7]
  4448. 1252 000e 002B cmp r3, #0
  4449. 1253 0010 03DA bge .L75
  4450. 1254 .loc 3 215 3 is_stmt 0 discriminator 1
  4451. 1255 0012 D721 movs r1, #215
  4452. 1256 0014 0548 ldr r0, .L76
  4453. 1257 0016 FFF7FEFF bl assert_failed
  4454. 1258 .L75:
  4455. 216:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4456. 217:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Enable interrupt */
  4457. 218:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_EnableIRQ(IRQn);
  4458. 1259 .loc 3 218 3 is_stmt 1
  4459. 1260 001a 97F90730 ldrsb r3, [r7, #7]
  4460. 1261 001e 1846 mov r0, r3
  4461. 1262 0020 FFF7FEFF bl __NVIC_EnableIRQ
  4462. 219:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4463. 1263 .loc 3 219 1
  4464. 1264 0024 00BF nop
  4465. 1265 0026 0837 adds r7, r7, #8
  4466. 1266 .LCFI90:
  4467. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 78
  4468. 1267 .cfi_def_cfa_offset 8
  4469. 1268 0028 BD46 mov sp, r7
  4470. 1269 .LCFI91:
  4471. 1270 .cfi_def_cfa_register 13
  4472. 1271 @ sp needed
  4473. 1272 002a 80BD pop {r7, pc}
  4474. 1273 .L77:
  4475. 1274 .align 2
  4476. 1275 .L76:
  4477. 1276 002c 00000000 .word .LC0
  4478. 1277 .cfi_endproc
  4479. 1278 .LFE132:
  4480. 1280 .section .text.HAL_NVIC_DisableIRQ,"ax",%progbits
  4481. 1281 .align 1
  4482. 1282 .global HAL_NVIC_DisableIRQ
  4483. 1283 .syntax unified
  4484. 1284 .thumb
  4485. 1285 .thumb_func
  4486. 1287 HAL_NVIC_DisableIRQ:
  4487. 1288 .LFB133:
  4488. 220:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4489. 221:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4490. 222:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Disables a device specific interrupt in the NVIC interrupt controller.
  4491. 223:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  4492. 224:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  4493. 225:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  4494. 226:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4495. 227:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4496. 228:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_DisableIRQ(IRQn_Type IRQn)
  4497. 229:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4498. 1289 .loc 3 229 1
  4499. 1290 .cfi_startproc
  4500. 1291 @ args = 0, pretend = 0, frame = 8
  4501. 1292 @ frame_needed = 1, uses_anonymous_args = 0
  4502. 1293 0000 80B5 push {r7, lr}
  4503. 1294 .LCFI92:
  4504. 1295 .cfi_def_cfa_offset 8
  4505. 1296 .cfi_offset 7, -8
  4506. 1297 .cfi_offset 14, -4
  4507. 1298 0002 82B0 sub sp, sp, #8
  4508. 1299 .LCFI93:
  4509. 1300 .cfi_def_cfa_offset 16
  4510. 1301 0004 00AF add r7, sp, #0
  4511. 1302 .LCFI94:
  4512. 1303 .cfi_def_cfa_register 7
  4513. 1304 0006 0346 mov r3, r0
  4514. 1305 0008 FB71 strb r3, [r7, #7]
  4515. 230:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4516. 231:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_DEVICE_IRQ(IRQn));
  4517. 1306 .loc 3 231 3
  4518. 1307 000a 97F90730 ldrsb r3, [r7, #7]
  4519. 1308 000e 002B cmp r3, #0
  4520. 1309 0010 03DA bge .L79
  4521. 1310 .loc 3 231 3 is_stmt 0 discriminator 1
  4522. 1311 0012 E721 movs r1, #231
  4523. 1312 0014 0548 ldr r0, .L80
  4524. 1313 0016 FFF7FEFF bl assert_failed
  4525. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 79
  4526. 1314 .L79:
  4527. 232:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4528. 233:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Disable interrupt */
  4529. 234:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_DisableIRQ(IRQn);
  4530. 1315 .loc 3 234 3 is_stmt 1
  4531. 1316 001a 97F90730 ldrsb r3, [r7, #7]
  4532. 1317 001e 1846 mov r0, r3
  4533. 1318 0020 FFF7FEFF bl __NVIC_DisableIRQ
  4534. 235:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4535. 1319 .loc 3 235 1
  4536. 1320 0024 00BF nop
  4537. 1321 0026 0837 adds r7, r7, #8
  4538. 1322 .LCFI95:
  4539. 1323 .cfi_def_cfa_offset 8
  4540. 1324 0028 BD46 mov sp, r7
  4541. 1325 .LCFI96:
  4542. 1326 .cfi_def_cfa_register 13
  4543. 1327 @ sp needed
  4544. 1328 002a 80BD pop {r7, pc}
  4545. 1329 .L81:
  4546. 1330 .align 2
  4547. 1331 .L80:
  4548. 1332 002c 00000000 .word .LC0
  4549. 1333 .cfi_endproc
  4550. 1334 .LFE133:
  4551. 1336 .section .text.HAL_NVIC_SystemReset,"ax",%progbits
  4552. 1337 .align 1
  4553. 1338 .global HAL_NVIC_SystemReset
  4554. 1339 .syntax unified
  4555. 1340 .thumb
  4556. 1341 .thumb_func
  4557. 1343 HAL_NVIC_SystemReset:
  4558. 1344 .LFB134:
  4559. 236:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4560. 237:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4561. 238:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Initiates a system reset request to reset the MCU.
  4562. 239:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4563. 240:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4564. 241:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_SystemReset(void)
  4565. 242:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4566. 1345 .loc 3 242 1
  4567. 1346 .cfi_startproc
  4568. 1347 @ args = 0, pretend = 0, frame = 0
  4569. 1348 @ frame_needed = 1, uses_anonymous_args = 0
  4570. 1349 0000 80B5 push {r7, lr}
  4571. 1350 .LCFI97:
  4572. 1351 .cfi_def_cfa_offset 8
  4573. 1352 .cfi_offset 7, -8
  4574. 1353 .cfi_offset 14, -4
  4575. 1354 0002 00AF add r7, sp, #0
  4576. 1355 .LCFI98:
  4577. 1356 .cfi_def_cfa_register 7
  4578. 243:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* System Reset */
  4579. 244:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_SystemReset();
  4580. 1357 .loc 3 244 3
  4581. 1358 0004 FFF7FEFF bl __NVIC_SystemReset
  4582. 1359 .cfi_endproc
  4583. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 80
  4584. 1360 .LFE134:
  4585. 1362 .section .text.HAL_SYSTICK_Config,"ax",%progbits
  4586. 1363 .align 1
  4587. 1364 .global HAL_SYSTICK_Config
  4588. 1365 .syntax unified
  4589. 1366 .thumb
  4590. 1367 .thumb_func
  4591. 1369 HAL_SYSTICK_Config:
  4592. 1370 .LFB135:
  4593. 245:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4594. 246:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4595. 247:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4596. 248:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Initializes the System Timer and its interrupt, and starts the System Tick Timer.
  4597. 249:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * Counter is in free running mode to generate periodic interrupts.
  4598. 250:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param TicksNumb Specifies the ticks Number of ticks between two interrupts.
  4599. 251:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval status: - 0 Function succeeded.
  4600. 252:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * - 1 Function failed.
  4601. 253:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4602. 254:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** uint32_t HAL_SYSTICK_Config(uint32_t TicksNumb)
  4603. 255:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4604. 1371 .loc 3 255 1
  4605. 1372 .cfi_startproc
  4606. 1373 @ args = 0, pretend = 0, frame = 8
  4607. 1374 @ frame_needed = 1, uses_anonymous_args = 0
  4608. 1375 0000 80B5 push {r7, lr}
  4609. 1376 .LCFI99:
  4610. 1377 .cfi_def_cfa_offset 8
  4611. 1378 .cfi_offset 7, -8
  4612. 1379 .cfi_offset 14, -4
  4613. 1380 0002 82B0 sub sp, sp, #8
  4614. 1381 .LCFI100:
  4615. 1382 .cfi_def_cfa_offset 16
  4616. 1383 0004 00AF add r7, sp, #0
  4617. 1384 .LCFI101:
  4618. 1385 .cfi_def_cfa_register 7
  4619. 1386 0006 7860 str r0, [r7, #4]
  4620. 256:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** return SysTick_Config(TicksNumb);
  4621. 1387 .loc 3 256 11
  4622. 1388 0008 7868 ldr r0, [r7, #4]
  4623. 1389 000a FFF7FEFF bl SysTick_Config
  4624. 1390 000e 0346 mov r3, r0
  4625. 257:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4626. 1391 .loc 3 257 1
  4627. 1392 0010 1846 mov r0, r3
  4628. 1393 0012 0837 adds r7, r7, #8
  4629. 1394 .LCFI102:
  4630. 1395 .cfi_def_cfa_offset 8
  4631. 1396 0014 BD46 mov sp, r7
  4632. 1397 .LCFI103:
  4633. 1398 .cfi_def_cfa_register 13
  4634. 1399 @ sp needed
  4635. 1400 0016 80BD pop {r7, pc}
  4636. 1401 .cfi_endproc
  4637. 1402 .LFE135:
  4638. 1404 .section .text.HAL_MPU_Disable,"ax",%progbits
  4639. 1405 .align 1
  4640. 1406 .global HAL_MPU_Disable
  4641. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 81
  4642. 1407 .syntax unified
  4643. 1408 .thumb
  4644. 1409 .thumb_func
  4645. 1411 HAL_MPU_Disable:
  4646. 1412 .LFB136:
  4647. 258:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4648. 259:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @}
  4649. 260:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4650. 261:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4651. 262:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /** @defgroup CORTEX_Exported_Functions_Group2 Peripheral Control functions
  4652. 263:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Cortex control functions
  4653. 264:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** *
  4654. 265:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** @verbatim
  4655. 266:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4656. 267:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ##### Peripheral Control functions #####
  4657. 268:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ==============================================================================
  4658. 269:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** [..]
  4659. 270:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** This subsection provides a set of functions allowing to control the CORTEX
  4660. 271:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** (NVIC, SYSTICK, MPU) functionalities.
  4661. 272:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4662. 273:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4663. 274:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** @endverbatim
  4664. 275:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @{
  4665. 276:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4666. 277:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4667. 278:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** #if (__MPU_PRESENT == 1U)
  4668. 279:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4669. 280:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4670. 281:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Disables the MPU also clears the HFNMIENA bit (ARM recommendation)
  4671. 282:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4672. 283:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4673. 284:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_MPU_Disable(void)
  4674. 285:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4675. 1413 .loc 3 285 1
  4676. 1414 .cfi_startproc
  4677. 1415 @ args = 0, pretend = 0, frame = 0
  4678. 1416 @ frame_needed = 1, uses_anonymous_args = 0
  4679. 1417 @ link register save eliminated.
  4680. 1418 0000 80B4 push {r7}
  4681. 1419 .LCFI104:
  4682. 1420 .cfi_def_cfa_offset 4
  4683. 1421 .cfi_offset 7, -4
  4684. 1422 0002 00AF add r7, sp, #0
  4685. 1423 .LCFI105:
  4686. 1424 .cfi_def_cfa_register 7
  4687. 286:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Disable fault exceptions */
  4688. 287:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** SCB->SHCSR &= ~SCB_SHCSR_MEMFAULTENA_Msk;
  4689. 1425 .loc 3 287 14
  4690. 1426 0004 064B ldr r3, .L86
  4691. 1427 0006 5B6A ldr r3, [r3, #36]
  4692. 1428 0008 054A ldr r2, .L86
  4693. 1429 000a 23F48033 bic r3, r3, #65536
  4694. 1430 000e 5362 str r3, [r2, #36]
  4695. 288:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4696. 289:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Disable the MPU */
  4697. 290:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->CTRL = 0U;
  4698. 1431 .loc 3 290 6
  4699. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 82
  4700. 1432 0010 044B ldr r3, .L86+4
  4701. 1433 .loc 3 290 13
  4702. 1434 0012 0022 movs r2, #0
  4703. 1435 0014 5A60 str r2, [r3, #4]
  4704. 291:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4705. 1436 .loc 3 291 1
  4706. 1437 0016 00BF nop
  4707. 1438 0018 BD46 mov sp, r7
  4708. 1439 .LCFI106:
  4709. 1440 .cfi_def_cfa_register 13
  4710. 1441 @ sp needed
  4711. 1442 001a 5DF8047B ldr r7, [sp], #4
  4712. 1443 .LCFI107:
  4713. 1444 .cfi_restore 7
  4714. 1445 .cfi_def_cfa_offset 0
  4715. 1446 001e 7047 bx lr
  4716. 1447 .L87:
  4717. 1448 .align 2
  4718. 1449 .L86:
  4719. 1450 0020 00ED00E0 .word -536810240
  4720. 1451 0024 90ED00E0 .word -536810096
  4721. 1452 .cfi_endproc
  4722. 1453 .LFE136:
  4723. 1455 .section .text.HAL_MPU_Enable,"ax",%progbits
  4724. 1456 .align 1
  4725. 1457 .global HAL_MPU_Enable
  4726. 1458 .syntax unified
  4727. 1459 .thumb
  4728. 1460 .thumb_func
  4729. 1462 HAL_MPU_Enable:
  4730. 1463 .LFB137:
  4731. 292:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4732. 293:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4733. 294:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Enables the MPU
  4734. 295:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param MPU_Control Specifies the control mode of the MPU during hard fault,
  4735. 296:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * NMI, FAULTMASK and privileged access to the default memory
  4736. 297:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be one of the following values:
  4737. 298:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg MPU_HFNMI_PRIVDEF_NONE
  4738. 299:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg MPU_HARDFAULT_NMI
  4739. 300:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg MPU_PRIVILEGED_DEFAULT
  4740. 301:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg MPU_HFNMI_PRIVDEF
  4741. 302:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4742. 303:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4743. 304:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_MPU_Enable(uint32_t MPU_Control)
  4744. 305:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4745. 1464 .loc 3 305 1
  4746. 1465 .cfi_startproc
  4747. 1466 @ args = 0, pretend = 0, frame = 8
  4748. 1467 @ frame_needed = 1, uses_anonymous_args = 0
  4749. 1468 @ link register save eliminated.
  4750. 1469 0000 80B4 push {r7}
  4751. 1470 .LCFI108:
  4752. 1471 .cfi_def_cfa_offset 4
  4753. 1472 .cfi_offset 7, -4
  4754. 1473 0002 83B0 sub sp, sp, #12
  4755. 1474 .LCFI109:
  4756. 1475 .cfi_def_cfa_offset 16
  4757. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 83
  4758. 1476 0004 00AF add r7, sp, #0
  4759. 1477 .LCFI110:
  4760. 1478 .cfi_def_cfa_register 7
  4761. 1479 0006 7860 str r0, [r7, #4]
  4762. 306:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Enable the MPU */
  4763. 307:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->CTRL = MPU_Control | MPU_CTRL_ENABLE_Msk;
  4764. 1480 .loc 3 307 6
  4765. 1481 0008 084A ldr r2, .L89
  4766. 1482 .loc 3 307 29
  4767. 1483 000a 7B68 ldr r3, [r7, #4]
  4768. 1484 000c 43F00103 orr r3, r3, #1
  4769. 1485 .loc 3 307 15
  4770. 1486 0010 5360 str r3, [r2, #4]
  4771. 308:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4772. 309:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Enable fault exceptions */
  4773. 310:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** SCB->SHCSR |= SCB_SHCSR_MEMFAULTENA_Msk;
  4774. 1487 .loc 3 310 14
  4775. 1488 0012 074B ldr r3, .L89+4
  4776. 1489 0014 5B6A ldr r3, [r3, #36]
  4777. 1490 0016 064A ldr r2, .L89+4
  4778. 1491 0018 43F48033 orr r3, r3, #65536
  4779. 1492 001c 5362 str r3, [r2, #36]
  4780. 311:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4781. 1493 .loc 3 311 1
  4782. 1494 001e 00BF nop
  4783. 1495 0020 0C37 adds r7, r7, #12
  4784. 1496 .LCFI111:
  4785. 1497 .cfi_def_cfa_offset 4
  4786. 1498 0022 BD46 mov sp, r7
  4787. 1499 .LCFI112:
  4788. 1500 .cfi_def_cfa_register 13
  4789. 1501 @ sp needed
  4790. 1502 0024 5DF8047B ldr r7, [sp], #4
  4791. 1503 .LCFI113:
  4792. 1504 .cfi_restore 7
  4793. 1505 .cfi_def_cfa_offset 0
  4794. 1506 0028 7047 bx lr
  4795. 1507 .L90:
  4796. 1508 002a 00BF .align 2
  4797. 1509 .L89:
  4798. 1510 002c 90ED00E0 .word -536810096
  4799. 1511 0030 00ED00E0 .word -536810240
  4800. 1512 .cfi_endproc
  4801. 1513 .LFE137:
  4802. 1515 .section .text.HAL_MPU_EnableRegion,"ax",%progbits
  4803. 1516 .align 1
  4804. 1517 .global HAL_MPU_EnableRegion
  4805. 1518 .syntax unified
  4806. 1519 .thumb
  4807. 1520 .thumb_func
  4808. 1522 HAL_MPU_EnableRegion:
  4809. 1523 .LFB138:
  4810. 312:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4811. 313:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4812. 314:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Enables the MPU Region.
  4813. 315:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4814. 316:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4815. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 84
  4816. 317:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_MPU_EnableRegion(uint32_t RegionNumber)
  4817. 318:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4818. 1524 .loc 3 318 1
  4819. 1525 .cfi_startproc
  4820. 1526 @ args = 0, pretend = 0, frame = 8
  4821. 1527 @ frame_needed = 1, uses_anonymous_args = 0
  4822. 1528 0000 80B5 push {r7, lr}
  4823. 1529 .LCFI114:
  4824. 1530 .cfi_def_cfa_offset 8
  4825. 1531 .cfi_offset 7, -8
  4826. 1532 .cfi_offset 14, -4
  4827. 1533 0002 82B0 sub sp, sp, #8
  4828. 1534 .LCFI115:
  4829. 1535 .cfi_def_cfa_offset 16
  4830. 1536 0004 00AF add r7, sp, #0
  4831. 1537 .LCFI116:
  4832. 1538 .cfi_def_cfa_register 7
  4833. 1539 0006 7860 str r0, [r7, #4]
  4834. 319:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4835. 320:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_NUMBER(RegionNumber));
  4836. 1540 .loc 3 320 3
  4837. 1541 0008 7B68 ldr r3, [r7, #4]
  4838. 1542 000a 002B cmp r3, #0
  4839. 1543 000c 19D0 beq .L92
  4840. 1544 .loc 3 320 3 is_stmt 0 discriminator 1
  4841. 1545 000e 7B68 ldr r3, [r7, #4]
  4842. 1546 0010 012B cmp r3, #1
  4843. 1547 0012 16D0 beq .L92
  4844. 1548 .loc 3 320 3 discriminator 2
  4845. 1549 0014 7B68 ldr r3, [r7, #4]
  4846. 1550 0016 022B cmp r3, #2
  4847. 1551 0018 13D0 beq .L92
  4848. 1552 .loc 3 320 3 discriminator 3
  4849. 1553 001a 7B68 ldr r3, [r7, #4]
  4850. 1554 001c 032B cmp r3, #3
  4851. 1555 001e 10D0 beq .L92
  4852. 1556 .loc 3 320 3 discriminator 4
  4853. 1557 0020 7B68 ldr r3, [r7, #4]
  4854. 1558 0022 042B cmp r3, #4
  4855. 1559 0024 0DD0 beq .L92
  4856. 1560 .loc 3 320 3 discriminator 5
  4857. 1561 0026 7B68 ldr r3, [r7, #4]
  4858. 1562 0028 052B cmp r3, #5
  4859. 1563 002a 0AD0 beq .L92
  4860. 1564 .loc 3 320 3 discriminator 6
  4861. 1565 002c 7B68 ldr r3, [r7, #4]
  4862. 1566 002e 062B cmp r3, #6
  4863. 1567 0030 07D0 beq .L92
  4864. 1568 .loc 3 320 3 discriminator 7
  4865. 1569 0032 7B68 ldr r3, [r7, #4]
  4866. 1570 0034 072B cmp r3, #7
  4867. 1571 0036 04D0 beq .L92
  4868. 1572 .loc 3 320 3 discriminator 8
  4869. 1573 0038 4FF4A071 mov r1, #320
  4870. 1574 003c 0748 ldr r0, .L93
  4871. 1575 003e FFF7FEFF bl assert_failed
  4872. 1576 .L92:
  4873. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 85
  4874. 321:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4875. 322:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Set the Region number */
  4876. 323:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RNR = RegionNumber;
  4877. 1577 .loc 3 323 6 is_stmt 1
  4878. 1578 0042 074A ldr r2, .L93+4
  4879. 1579 .loc 3 323 12
  4880. 1580 0044 7B68 ldr r3, [r7, #4]
  4881. 1581 0046 9360 str r3, [r2, #8]
  4882. 324:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4883. 325:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Enable the Region */
  4884. 326:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** SET_BIT(MPU->RASR, MPU_RASR_ENABLE_Msk);
  4885. 1582 .loc 3 326 3
  4886. 1583 0048 054B ldr r3, .L93+4
  4887. 1584 004a 1B69 ldr r3, [r3, #16]
  4888. 1585 004c 044A ldr r2, .L93+4
  4889. 1586 004e 43F00103 orr r3, r3, #1
  4890. 1587 0052 1361 str r3, [r2, #16]
  4891. 327:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4892. 1588 .loc 3 327 1
  4893. 1589 0054 00BF nop
  4894. 1590 0056 0837 adds r7, r7, #8
  4895. 1591 .LCFI117:
  4896. 1592 .cfi_def_cfa_offset 8
  4897. 1593 0058 BD46 mov sp, r7
  4898. 1594 .LCFI118:
  4899. 1595 .cfi_def_cfa_register 13
  4900. 1596 @ sp needed
  4901. 1597 005a 80BD pop {r7, pc}
  4902. 1598 .L94:
  4903. 1599 .align 2
  4904. 1600 .L93:
  4905. 1601 005c 00000000 .word .LC0
  4906. 1602 0060 90ED00E0 .word -536810096
  4907. 1603 .cfi_endproc
  4908. 1604 .LFE138:
  4909. 1606 .section .text.HAL_MPU_DisableRegion,"ax",%progbits
  4910. 1607 .align 1
  4911. 1608 .global HAL_MPU_DisableRegion
  4912. 1609 .syntax unified
  4913. 1610 .thumb
  4914. 1611 .thumb_func
  4915. 1613 HAL_MPU_DisableRegion:
  4916. 1614 .LFB139:
  4917. 328:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4918. 329:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  4919. 330:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Disables the MPU Region.
  4920. 331:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  4921. 332:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  4922. 333:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_MPU_DisableRegion(uint32_t RegionNumber)
  4923. 334:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  4924. 1615 .loc 3 334 1
  4925. 1616 .cfi_startproc
  4926. 1617 @ args = 0, pretend = 0, frame = 8
  4927. 1618 @ frame_needed = 1, uses_anonymous_args = 0
  4928. 1619 0000 80B5 push {r7, lr}
  4929. 1620 .LCFI119:
  4930. 1621 .cfi_def_cfa_offset 8
  4931. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 86
  4932. 1622 .cfi_offset 7, -8
  4933. 1623 .cfi_offset 14, -4
  4934. 1624 0002 82B0 sub sp, sp, #8
  4935. 1625 .LCFI120:
  4936. 1626 .cfi_def_cfa_offset 16
  4937. 1627 0004 00AF add r7, sp, #0
  4938. 1628 .LCFI121:
  4939. 1629 .cfi_def_cfa_register 7
  4940. 1630 0006 7860 str r0, [r7, #4]
  4941. 335:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  4942. 336:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_NUMBER(RegionNumber));
  4943. 1631 .loc 3 336 3
  4944. 1632 0008 7B68 ldr r3, [r7, #4]
  4945. 1633 000a 002B cmp r3, #0
  4946. 1634 000c 19D0 beq .L96
  4947. 1635 .loc 3 336 3 is_stmt 0 discriminator 1
  4948. 1636 000e 7B68 ldr r3, [r7, #4]
  4949. 1637 0010 012B cmp r3, #1
  4950. 1638 0012 16D0 beq .L96
  4951. 1639 .loc 3 336 3 discriminator 2
  4952. 1640 0014 7B68 ldr r3, [r7, #4]
  4953. 1641 0016 022B cmp r3, #2
  4954. 1642 0018 13D0 beq .L96
  4955. 1643 .loc 3 336 3 discriminator 3
  4956. 1644 001a 7B68 ldr r3, [r7, #4]
  4957. 1645 001c 032B cmp r3, #3
  4958. 1646 001e 10D0 beq .L96
  4959. 1647 .loc 3 336 3 discriminator 4
  4960. 1648 0020 7B68 ldr r3, [r7, #4]
  4961. 1649 0022 042B cmp r3, #4
  4962. 1650 0024 0DD0 beq .L96
  4963. 1651 .loc 3 336 3 discriminator 5
  4964. 1652 0026 7B68 ldr r3, [r7, #4]
  4965. 1653 0028 052B cmp r3, #5
  4966. 1654 002a 0AD0 beq .L96
  4967. 1655 .loc 3 336 3 discriminator 6
  4968. 1656 002c 7B68 ldr r3, [r7, #4]
  4969. 1657 002e 062B cmp r3, #6
  4970. 1658 0030 07D0 beq .L96
  4971. 1659 .loc 3 336 3 discriminator 7
  4972. 1660 0032 7B68 ldr r3, [r7, #4]
  4973. 1661 0034 072B cmp r3, #7
  4974. 1662 0036 04D0 beq .L96
  4975. 1663 .loc 3 336 3 discriminator 8
  4976. 1664 0038 4FF4A871 mov r1, #336
  4977. 1665 003c 0748 ldr r0, .L97
  4978. 1666 003e FFF7FEFF bl assert_failed
  4979. 1667 .L96:
  4980. 337:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4981. 338:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Set the Region number */
  4982. 339:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RNR = RegionNumber;
  4983. 1668 .loc 3 339 6 is_stmt 1
  4984. 1669 0042 074A ldr r2, .L97+4
  4985. 1670 .loc 3 339 12
  4986. 1671 0044 7B68 ldr r3, [r7, #4]
  4987. 1672 0046 9360 str r3, [r2, #8]
  4988. 340:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  4989. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 87
  4990. 341:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Disable the Region */
  4991. 342:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** CLEAR_BIT(MPU->RASR, MPU_RASR_ENABLE_Msk);
  4992. 1673 .loc 3 342 3
  4993. 1674 0048 054B ldr r3, .L97+4
  4994. 1675 004a 1B69 ldr r3, [r3, #16]
  4995. 1676 004c 044A ldr r2, .L97+4
  4996. 1677 004e 23F00103 bic r3, r3, #1
  4997. 1678 0052 1361 str r3, [r2, #16]
  4998. 343:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  4999. 1679 .loc 3 343 1
  5000. 1680 0054 00BF nop
  5001. 1681 0056 0837 adds r7, r7, #8
  5002. 1682 .LCFI122:
  5003. 1683 .cfi_def_cfa_offset 8
  5004. 1684 0058 BD46 mov sp, r7
  5005. 1685 .LCFI123:
  5006. 1686 .cfi_def_cfa_register 13
  5007. 1687 @ sp needed
  5008. 1688 005a 80BD pop {r7, pc}
  5009. 1689 .L98:
  5010. 1690 .align 2
  5011. 1691 .L97:
  5012. 1692 005c 00000000 .word .LC0
  5013. 1693 0060 90ED00E0 .word -536810096
  5014. 1694 .cfi_endproc
  5015. 1695 .LFE139:
  5016. 1697 .section .text.HAL_MPU_ConfigRegion,"ax",%progbits
  5017. 1698 .align 1
  5018. 1699 .global HAL_MPU_ConfigRegion
  5019. 1700 .syntax unified
  5020. 1701 .thumb
  5021. 1702 .thumb_func
  5022. 1704 HAL_MPU_ConfigRegion:
  5023. 1705 .LFB140:
  5024. 344:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5025. 345:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5026. 346:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Initializes and configures the Region and the memory to be protected.
  5027. 347:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param MPU_Init Pointer to a MPU_Region_InitTypeDef structure that contains
  5028. 348:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * the initialization and configuration information.
  5029. 349:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  5030. 350:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5031. 351:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_MPU_ConfigRegion(MPU_Region_InitTypeDef *MPU_Init)
  5032. 352:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5033. 1706 .loc 3 352 1
  5034. 1707 .cfi_startproc
  5035. 1708 @ args = 0, pretend = 0, frame = 8
  5036. 1709 @ frame_needed = 1, uses_anonymous_args = 0
  5037. 1710 0000 80B5 push {r7, lr}
  5038. 1711 .LCFI124:
  5039. 1712 .cfi_def_cfa_offset 8
  5040. 1713 .cfi_offset 7, -8
  5041. 1714 .cfi_offset 14, -4
  5042. 1715 0002 82B0 sub sp, sp, #8
  5043. 1716 .LCFI125:
  5044. 1717 .cfi_def_cfa_offset 16
  5045. 1718 0004 00AF add r7, sp, #0
  5046. 1719 .LCFI126:
  5047. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 88
  5048. 1720 .cfi_def_cfa_register 7
  5049. 1721 0006 7860 str r0, [r7, #4]
  5050. 353:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  5051. 354:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_NUMBER(MPU_Init->Number));
  5052. 1722 .loc 3 354 3
  5053. 1723 0008 7B68 ldr r3, [r7, #4]
  5054. 1724 000a 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5055. 1725 000c 002B cmp r3, #0
  5056. 1726 000e 20D0 beq .L100
  5057. 1727 .loc 3 354 3 is_stmt 0 discriminator 1
  5058. 1728 0010 7B68 ldr r3, [r7, #4]
  5059. 1729 0012 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5060. 1730 0014 012B cmp r3, #1
  5061. 1731 0016 1CD0 beq .L100
  5062. 1732 .loc 3 354 3 discriminator 2
  5063. 1733 0018 7B68 ldr r3, [r7, #4]
  5064. 1734 001a 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5065. 1735 001c 022B cmp r3, #2
  5066. 1736 001e 18D0 beq .L100
  5067. 1737 .loc 3 354 3 discriminator 3
  5068. 1738 0020 7B68 ldr r3, [r7, #4]
  5069. 1739 0022 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5070. 1740 0024 032B cmp r3, #3
  5071. 1741 0026 14D0 beq .L100
  5072. 1742 .loc 3 354 3 discriminator 4
  5073. 1743 0028 7B68 ldr r3, [r7, #4]
  5074. 1744 002a 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5075. 1745 002c 042B cmp r3, #4
  5076. 1746 002e 10D0 beq .L100
  5077. 1747 .loc 3 354 3 discriminator 5
  5078. 1748 0030 7B68 ldr r3, [r7, #4]
  5079. 1749 0032 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5080. 1750 0034 052B cmp r3, #5
  5081. 1751 0036 0CD0 beq .L100
  5082. 1752 .loc 3 354 3 discriminator 6
  5083. 1753 0038 7B68 ldr r3, [r7, #4]
  5084. 1754 003a 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5085. 1755 003c 062B cmp r3, #6
  5086. 1756 003e 08D0 beq .L100
  5087. 1757 .loc 3 354 3 discriminator 7
  5088. 1758 0040 7B68 ldr r3, [r7, #4]
  5089. 1759 0042 5B78 ldrb r3, [r3, #1] @ zero_extendqisi2
  5090. 1760 0044 072B cmp r3, #7
  5091. 1761 0046 04D0 beq .L100
  5092. 1762 .loc 3 354 3 discriminator 8
  5093. 1763 0048 4FF4B171 mov r1, #354
  5094. 1764 004c 8C48 ldr r0, .L110
  5095. 1765 004e FFF7FEFF bl assert_failed
  5096. 1766 .L100:
  5097. 355:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_ENABLE(MPU_Init->Enable));
  5098. 1767 .loc 3 355 3 is_stmt 1
  5099. 1768 0052 7B68 ldr r3, [r7, #4]
  5100. 1769 0054 1B78 ldrb r3, [r3] @ zero_extendqisi2
  5101. 1770 0056 012B cmp r3, #1
  5102. 1771 0058 08D0 beq .L101
  5103. 1772 .loc 3 355 3 is_stmt 0 discriminator 1
  5104. 1773 005a 7B68 ldr r3, [r7, #4]
  5105. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 89
  5106. 1774 005c 1B78 ldrb r3, [r3] @ zero_extendqisi2
  5107. 1775 005e 002B cmp r3, #0
  5108. 1776 0060 04D0 beq .L101
  5109. 1777 .loc 3 355 3 discriminator 2
  5110. 1778 0062 40F26311 movw r1, #355
  5111. 1779 0066 8648 ldr r0, .L110
  5112. 1780 0068 FFF7FEFF bl assert_failed
  5113. 1781 .L101:
  5114. 356:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_INSTRUCTION_ACCESS(MPU_Init->DisableExec));
  5115. 1782 .loc 3 356 3 is_stmt 1
  5116. 1783 006c 7B68 ldr r3, [r7, #4]
  5117. 1784 006e 1B7B ldrb r3, [r3, #12] @ zero_extendqisi2
  5118. 1785 0070 002B cmp r3, #0
  5119. 1786 0072 08D0 beq .L102
  5120. 1787 .loc 3 356 3 is_stmt 0 discriminator 1
  5121. 1788 0074 7B68 ldr r3, [r7, #4]
  5122. 1789 0076 1B7B ldrb r3, [r3, #12] @ zero_extendqisi2
  5123. 1790 0078 012B cmp r3, #1
  5124. 1791 007a 04D0 beq .L102
  5125. 1792 .loc 3 356 3 discriminator 2
  5126. 1793 007c 4FF4B271 mov r1, #356
  5127. 1794 0080 7F48 ldr r0, .L110
  5128. 1795 0082 FFF7FEFF bl assert_failed
  5129. 1796 .L102:
  5130. 357:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_PERMISSION_ATTRIBUTE(MPU_Init->AccessPermission));
  5131. 1797 .loc 3 357 3 is_stmt 1
  5132. 1798 0086 7B68 ldr r3, [r7, #4]
  5133. 1799 0088 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5134. 1800 008a 002B cmp r3, #0
  5135. 1801 008c 18D0 beq .L103
  5136. 1802 .loc 3 357 3 is_stmt 0 discriminator 1
  5137. 1803 008e 7B68 ldr r3, [r7, #4]
  5138. 1804 0090 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5139. 1805 0092 012B cmp r3, #1
  5140. 1806 0094 14D0 beq .L103
  5141. 1807 .loc 3 357 3 discriminator 2
  5142. 1808 0096 7B68 ldr r3, [r7, #4]
  5143. 1809 0098 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5144. 1810 009a 022B cmp r3, #2
  5145. 1811 009c 10D0 beq .L103
  5146. 1812 .loc 3 357 3 discriminator 3
  5147. 1813 009e 7B68 ldr r3, [r7, #4]
  5148. 1814 00a0 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5149. 1815 00a2 032B cmp r3, #3
  5150. 1816 00a4 0CD0 beq .L103
  5151. 1817 .loc 3 357 3 discriminator 4
  5152. 1818 00a6 7B68 ldr r3, [r7, #4]
  5153. 1819 00a8 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5154. 1820 00aa 052B cmp r3, #5
  5155. 1821 00ac 08D0 beq .L103
  5156. 1822 .loc 3 357 3 discriminator 5
  5157. 1823 00ae 7B68 ldr r3, [r7, #4]
  5158. 1824 00b0 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5159. 1825 00b2 062B cmp r3, #6
  5160. 1826 00b4 04D0 beq .L103
  5161. 1827 .loc 3 357 3 discriminator 6
  5162. 1828 00b6 40F26511 movw r1, #357
  5163. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 90
  5164. 1829 00ba 7148 ldr r0, .L110
  5165. 1830 00bc FFF7FEFF bl assert_failed
  5166. 1831 .L103:
  5167. 358:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_TEX_LEVEL(MPU_Init->TypeExtField));
  5168. 1832 .loc 3 358 3 is_stmt 1
  5169. 1833 00c0 7B68 ldr r3, [r7, #4]
  5170. 1834 00c2 9B7A ldrb r3, [r3, #10] @ zero_extendqisi2
  5171. 1835 00c4 002B cmp r3, #0
  5172. 1836 00c6 0CD0 beq .L104
  5173. 1837 .loc 3 358 3 is_stmt 0 discriminator 1
  5174. 1838 00c8 7B68 ldr r3, [r7, #4]
  5175. 1839 00ca 9B7A ldrb r3, [r3, #10] @ zero_extendqisi2
  5176. 1840 00cc 012B cmp r3, #1
  5177. 1841 00ce 08D0 beq .L104
  5178. 1842 .loc 3 358 3 discriminator 2
  5179. 1843 00d0 7B68 ldr r3, [r7, #4]
  5180. 1844 00d2 9B7A ldrb r3, [r3, #10] @ zero_extendqisi2
  5181. 1845 00d4 022B cmp r3, #2
  5182. 1846 00d6 04D0 beq .L104
  5183. 1847 .loc 3 358 3 discriminator 3
  5184. 1848 00d8 4FF4B371 mov r1, #358
  5185. 1849 00dc 6848 ldr r0, .L110
  5186. 1850 00de FFF7FEFF bl assert_failed
  5187. 1851 .L104:
  5188. 359:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_ACCESS_SHAREABLE(MPU_Init->IsShareable));
  5189. 1852 .loc 3 359 3 is_stmt 1
  5190. 1853 00e2 7B68 ldr r3, [r7, #4]
  5191. 1854 00e4 5B7B ldrb r3, [r3, #13] @ zero_extendqisi2
  5192. 1855 00e6 012B cmp r3, #1
  5193. 1856 00e8 08D0 beq .L105
  5194. 1857 .loc 3 359 3 is_stmt 0 discriminator 1
  5195. 1858 00ea 7B68 ldr r3, [r7, #4]
  5196. 1859 00ec 5B7B ldrb r3, [r3, #13] @ zero_extendqisi2
  5197. 1860 00ee 002B cmp r3, #0
  5198. 1861 00f0 04D0 beq .L105
  5199. 1862 .loc 3 359 3 discriminator 2
  5200. 1863 00f2 40F26711 movw r1, #359
  5201. 1864 00f6 6248 ldr r0, .L110
  5202. 1865 00f8 FFF7FEFF bl assert_failed
  5203. 1866 .L105:
  5204. 360:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_ACCESS_CACHEABLE(MPU_Init->IsCacheable));
  5205. 1867 .loc 3 360 3 is_stmt 1
  5206. 1868 00fc 7B68 ldr r3, [r7, #4]
  5207. 1869 00fe 9B7B ldrb r3, [r3, #14] @ zero_extendqisi2
  5208. 1870 0100 012B cmp r3, #1
  5209. 1871 0102 08D0 beq .L106
  5210. 1872 .loc 3 360 3 is_stmt 0 discriminator 1
  5211. 1873 0104 7B68 ldr r3, [r7, #4]
  5212. 1874 0106 9B7B ldrb r3, [r3, #14] @ zero_extendqisi2
  5213. 1875 0108 002B cmp r3, #0
  5214. 1876 010a 04D0 beq .L106
  5215. 1877 .loc 3 360 3 discriminator 2
  5216. 1878 010c 4FF4B471 mov r1, #360
  5217. 1879 0110 5B48 ldr r0, .L110
  5218. 1880 0112 FFF7FEFF bl assert_failed
  5219. 1881 .L106:
  5220. 361:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_ACCESS_BUFFERABLE(MPU_Init->IsBufferable));
  5221. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 91
  5222. 1882 .loc 3 361 3 is_stmt 1
  5223. 1883 0116 7B68 ldr r3, [r7, #4]
  5224. 1884 0118 DB7B ldrb r3, [r3, #15] @ zero_extendqisi2
  5225. 1885 011a 012B cmp r3, #1
  5226. 1886 011c 08D0 beq .L107
  5227. 1887 .loc 3 361 3 is_stmt 0 discriminator 1
  5228. 1888 011e 7B68 ldr r3, [r7, #4]
  5229. 1889 0120 DB7B ldrb r3, [r3, #15] @ zero_extendqisi2
  5230. 1890 0122 002B cmp r3, #0
  5231. 1891 0124 04D0 beq .L107
  5232. 1892 .loc 3 361 3 discriminator 2
  5233. 1893 0126 40F26911 movw r1, #361
  5234. 1894 012a 5548 ldr r0, .L110
  5235. 1895 012c FFF7FEFF bl assert_failed
  5236. 1896 .L107:
  5237. 362:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_SUB_REGION_DISABLE(MPU_Init->SubRegionDisable));
  5238. 1897 .loc 3 362 3 is_stmt 1
  5239. 1898 0130 7B68 ldr r3, [r7, #4]
  5240. 1899 0132 5B7A ldrb r3, [r3, #9] @ zero_extendqisi2
  5241. 1900 0134 FF2B cmp r3, #255
  5242. 1901 0136 04D1 bne .L108
  5243. 1902 .loc 3 362 3 is_stmt 0 discriminator 1
  5244. 1903 0138 4FF4B571 mov r1, #362
  5245. 1904 013c 5048 ldr r0, .L110
  5246. 1905 013e FFF7FEFF bl assert_failed
  5247. 1906 .L108:
  5248. 363:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_MPU_REGION_SIZE(MPU_Init->Size));
  5249. 1907 .loc 3 363 3 is_stmt 1
  5250. 1908 0142 7B68 ldr r3, [r7, #4]
  5251. 1909 0144 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5252. 1910 0146 042B cmp r3, #4
  5253. 1911 0148 70D0 beq .L109
  5254. 1912 .loc 3 363 3 is_stmt 0 discriminator 1
  5255. 1913 014a 7B68 ldr r3, [r7, #4]
  5256. 1914 014c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5257. 1915 014e 052B cmp r3, #5
  5258. 1916 0150 6CD0 beq .L109
  5259. 1917 .loc 3 363 3 discriminator 2
  5260. 1918 0152 7B68 ldr r3, [r7, #4]
  5261. 1919 0154 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5262. 1920 0156 062B cmp r3, #6
  5263. 1921 0158 68D0 beq .L109
  5264. 1922 .loc 3 363 3 discriminator 3
  5265. 1923 015a 7B68 ldr r3, [r7, #4]
  5266. 1924 015c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5267. 1925 015e 072B cmp r3, #7
  5268. 1926 0160 64D0 beq .L109
  5269. 1927 .loc 3 363 3 discriminator 4
  5270. 1928 0162 7B68 ldr r3, [r7, #4]
  5271. 1929 0164 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5272. 1930 0166 082B cmp r3, #8
  5273. 1931 0168 60D0 beq .L109
  5274. 1932 .loc 3 363 3 discriminator 5
  5275. 1933 016a 7B68 ldr r3, [r7, #4]
  5276. 1934 016c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5277. 1935 016e 092B cmp r3, #9
  5278. 1936 0170 5CD0 beq .L109
  5279. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 92
  5280. 1937 .loc 3 363 3 discriminator 6
  5281. 1938 0172 7B68 ldr r3, [r7, #4]
  5282. 1939 0174 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5283. 1940 0176 0A2B cmp r3, #10
  5284. 1941 0178 58D0 beq .L109
  5285. 1942 .loc 3 363 3 discriminator 7
  5286. 1943 017a 7B68 ldr r3, [r7, #4]
  5287. 1944 017c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5288. 1945 017e 0B2B cmp r3, #11
  5289. 1946 0180 54D0 beq .L109
  5290. 1947 .loc 3 363 3 discriminator 8
  5291. 1948 0182 7B68 ldr r3, [r7, #4]
  5292. 1949 0184 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5293. 1950 0186 0C2B cmp r3, #12
  5294. 1951 0188 50D0 beq .L109
  5295. 1952 .loc 3 363 3 discriminator 9
  5296. 1953 018a 7B68 ldr r3, [r7, #4]
  5297. 1954 018c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5298. 1955 018e 0D2B cmp r3, #13
  5299. 1956 0190 4CD0 beq .L109
  5300. 1957 .loc 3 363 3 discriminator 10
  5301. 1958 0192 7B68 ldr r3, [r7, #4]
  5302. 1959 0194 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5303. 1960 0196 0E2B cmp r3, #14
  5304. 1961 0198 48D0 beq .L109
  5305. 1962 .loc 3 363 3 discriminator 11
  5306. 1963 019a 7B68 ldr r3, [r7, #4]
  5307. 1964 019c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5308. 1965 019e 0F2B cmp r3, #15
  5309. 1966 01a0 44D0 beq .L109
  5310. 1967 .loc 3 363 3 discriminator 12
  5311. 1968 01a2 7B68 ldr r3, [r7, #4]
  5312. 1969 01a4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5313. 1970 01a6 102B cmp r3, #16
  5314. 1971 01a8 40D0 beq .L109
  5315. 1972 .loc 3 363 3 discriminator 13
  5316. 1973 01aa 7B68 ldr r3, [r7, #4]
  5317. 1974 01ac 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5318. 1975 01ae 112B cmp r3, #17
  5319. 1976 01b0 3CD0 beq .L109
  5320. 1977 .loc 3 363 3 discriminator 14
  5321. 1978 01b2 7B68 ldr r3, [r7, #4]
  5322. 1979 01b4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5323. 1980 01b6 122B cmp r3, #18
  5324. 1981 01b8 38D0 beq .L109
  5325. 1982 .loc 3 363 3 discriminator 15
  5326. 1983 01ba 7B68 ldr r3, [r7, #4]
  5327. 1984 01bc 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5328. 1985 01be 132B cmp r3, #19
  5329. 1986 01c0 34D0 beq .L109
  5330. 1987 .loc 3 363 3 discriminator 16
  5331. 1988 01c2 7B68 ldr r3, [r7, #4]
  5332. 1989 01c4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5333. 1990 01c6 142B cmp r3, #20
  5334. 1991 01c8 30D0 beq .L109
  5335. 1992 .loc 3 363 3 discriminator 17
  5336. 1993 01ca 7B68 ldr r3, [r7, #4]
  5337. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 93
  5338. 1994 01cc 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5339. 1995 01ce 152B cmp r3, #21
  5340. 1996 01d0 2CD0 beq .L109
  5341. 1997 .loc 3 363 3 discriminator 18
  5342. 1998 01d2 7B68 ldr r3, [r7, #4]
  5343. 1999 01d4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5344. 2000 01d6 162B cmp r3, #22
  5345. 2001 01d8 28D0 beq .L109
  5346. 2002 .loc 3 363 3 discriminator 19
  5347. 2003 01da 7B68 ldr r3, [r7, #4]
  5348. 2004 01dc 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5349. 2005 01de 172B cmp r3, #23
  5350. 2006 01e0 24D0 beq .L109
  5351. 2007 .loc 3 363 3 discriminator 20
  5352. 2008 01e2 7B68 ldr r3, [r7, #4]
  5353. 2009 01e4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5354. 2010 01e6 182B cmp r3, #24
  5355. 2011 01e8 20D0 beq .L109
  5356. 2012 .loc 3 363 3 discriminator 21
  5357. 2013 01ea 7B68 ldr r3, [r7, #4]
  5358. 2014 01ec 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5359. 2015 01ee 192B cmp r3, #25
  5360. 2016 01f0 1CD0 beq .L109
  5361. 2017 .loc 3 363 3 discriminator 22
  5362. 2018 01f2 7B68 ldr r3, [r7, #4]
  5363. 2019 01f4 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5364. 2020 01f6 1A2B cmp r3, #26
  5365. 2021 01f8 18D0 beq .L109
  5366. 2022 .loc 3 363 3 discriminator 23
  5367. 2023 01fa 7B68 ldr r3, [r7, #4]
  5368. 2024 01fc 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5369. 2025 01fe 1B2B cmp r3, #27
  5370. 2026 0200 14D0 beq .L109
  5371. 2027 .loc 3 363 3 discriminator 24
  5372. 2028 0202 7B68 ldr r3, [r7, #4]
  5373. 2029 0204 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5374. 2030 0206 1C2B cmp r3, #28
  5375. 2031 0208 10D0 beq .L109
  5376. 2032 .loc 3 363 3 discriminator 25
  5377. 2033 020a 7B68 ldr r3, [r7, #4]
  5378. 2034 020c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5379. 2035 020e 1D2B cmp r3, #29
  5380. 2036 0210 0CD0 beq .L109
  5381. 2037 .loc 3 363 3 discriminator 26
  5382. 2038 0212 7B68 ldr r3, [r7, #4]
  5383. 2039 0214 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5384. 2040 0216 1E2B cmp r3, #30
  5385. 2041 0218 08D0 beq .L109
  5386. 2042 .loc 3 363 3 discriminator 27
  5387. 2043 021a 7B68 ldr r3, [r7, #4]
  5388. 2044 021c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5389. 2045 021e 1F2B cmp r3, #31
  5390. 2046 0220 04D0 beq .L109
  5391. 2047 .loc 3 363 3 discriminator 28
  5392. 2048 0222 40F26B11 movw r1, #363
  5393. 2049 0226 1648 ldr r0, .L110
  5394. 2050 0228 FFF7FEFF bl assert_failed
  5395. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 94
  5396. 2051 .L109:
  5397. 364:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5398. 365:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Set the Region number */
  5399. 366:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RNR = MPU_Init->Number;
  5400. 2052 .loc 3 366 22 is_stmt 1
  5401. 2053 022c 7B68 ldr r3, [r7, #4]
  5402. 2054 022e 5A78 ldrb r2, [r3, #1] @ zero_extendqisi2
  5403. 2055 .loc 3 366 6
  5404. 2056 0230 144B ldr r3, .L110+4
  5405. 2057 .loc 3 366 12
  5406. 2058 0232 9A60 str r2, [r3, #8]
  5407. 367:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5408. 368:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Disable the Region */
  5409. 369:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** CLEAR_BIT(MPU->RASR, MPU_RASR_ENABLE_Msk);
  5410. 2059 .loc 3 369 3
  5411. 2060 0234 134B ldr r3, .L110+4
  5412. 2061 0236 1B69 ldr r3, [r3, #16]
  5413. 2062 0238 124A ldr r2, .L110+4
  5414. 2063 023a 23F00103 bic r3, r3, #1
  5415. 2064 023e 1361 str r3, [r2, #16]
  5416. 370:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5417. 371:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Apply configuration */
  5418. 372:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RBAR = MPU_Init->BaseAddress;
  5419. 2065 .loc 3 372 6
  5420. 2066 0240 104A ldr r2, .L110+4
  5421. 2067 .loc 3 372 23
  5422. 2068 0242 7B68 ldr r3, [r7, #4]
  5423. 2069 0244 5B68 ldr r3, [r3, #4]
  5424. 2070 .loc 3 372 13
  5425. 2071 0246 D360 str r3, [r2, #12]
  5426. 373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RASR = ((uint32_t)MPU_Init->DisableExec << MPU_RASR_XN_Pos) |
  5427. 2072 .loc 3 373 34
  5428. 2073 0248 7B68 ldr r3, [r7, #4]
  5429. 2074 024a 1B7B ldrb r3, [r3, #12] @ zero_extendqisi2
  5430. 2075 .loc 3 373 60
  5431. 2076 024c 1A07 lsls r2, r3, #28
  5432. 374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) |
  5433. 2077 .loc 3 374 34
  5434. 2078 024e 7B68 ldr r3, [r7, #4]
  5435. 2079 0250 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2
  5436. 2080 .loc 3 374 60
  5437. 2081 0252 1B06 lsls r3, r3, #24
  5438. 373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** MPU->RASR = ((uint32_t)MPU_Init->DisableExec << MPU_RASR_XN_Pos) |
  5439. 2082 .loc 3 373 82
  5440. 2083 0254 1A43 orrs r2, r2, r3
  5441. 375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->TypeExtField << MPU_RASR_TEX_Pos) |
  5442. 2084 .loc 3 375 34
  5443. 2085 0256 7B68 ldr r3, [r7, #4]
  5444. 2086 0258 9B7A ldrb r3, [r3, #10] @ zero_extendqisi2
  5445. 2087 .loc 3 375 60
  5446. 2088 025a DB04 lsls r3, r3, #19
  5447. 374:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) |
  5448. 2089 .loc 3 374 82
  5449. 2090 025c 1A43 orrs r2, r2, r3
  5450. 376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsShareable << MPU_RASR_S_Pos) |
  5451. 2091 .loc 3 376 34
  5452. 2092 025e 7B68 ldr r3, [r7, #4]
  5453. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 95
  5454. 2093 0260 5B7B ldrb r3, [r3, #13] @ zero_extendqisi2
  5455. 2094 .loc 3 376 60
  5456. 2095 0262 9B04 lsls r3, r3, #18
  5457. 375:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->TypeExtField << MPU_RASR_TEX_Pos) |
  5458. 2096 .loc 3 375 82
  5459. 2097 0264 1A43 orrs r2, r2, r3
  5460. 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsCacheable << MPU_RASR_C_Pos) |
  5461. 2098 .loc 3 377 34
  5462. 2099 0266 7B68 ldr r3, [r7, #4]
  5463. 2100 0268 9B7B ldrb r3, [r3, #14] @ zero_extendqisi2
  5464. 2101 .loc 3 377 60
  5465. 2102 026a 5B04 lsls r3, r3, #17
  5466. 376:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsShareable << MPU_RASR_S_Pos) |
  5467. 2103 .loc 3 376 82
  5468. 2104 026c 1A43 orrs r2, r2, r3
  5469. 378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsBufferable << MPU_RASR_B_Pos) |
  5470. 2105 .loc 3 378 34
  5471. 2106 026e 7B68 ldr r3, [r7, #4]
  5472. 2107 0270 DB7B ldrb r3, [r3, #15] @ zero_extendqisi2
  5473. 2108 .loc 3 378 60
  5474. 2109 0272 1B04 lsls r3, r3, #16
  5475. 377:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsCacheable << MPU_RASR_C_Pos) |
  5476. 2110 .loc 3 377 82
  5477. 2111 0274 1A43 orrs r2, r2, r3
  5478. 379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->SubRegionDisable << MPU_RASR_SRD_Pos) |
  5479. 2112 .loc 3 379 34
  5480. 2113 0276 7B68 ldr r3, [r7, #4]
  5481. 2114 0278 5B7A ldrb r3, [r3, #9] @ zero_extendqisi2
  5482. 2115 .loc 3 379 60
  5483. 2116 027a 1B02 lsls r3, r3, #8
  5484. 2117 027c 04E0 b .L111
  5485. 2118 .L112:
  5486. 2119 027e 00BF .align 2
  5487. 2120 .L110:
  5488. 2121 0280 00000000 .word .LC0
  5489. 2122 0284 90ED00E0 .word -536810096
  5490. 2123 .L111:
  5491. 378:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->IsBufferable << MPU_RASR_B_Pos) |
  5492. 2124 .loc 3 378 82
  5493. 2125 0288 1A43 orrs r2, r2, r3
  5494. 380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->Size << MPU_RASR_SIZE_Pos) |
  5495. 2126 .loc 3 380 34
  5496. 2127 028a 7B68 ldr r3, [r7, #4]
  5497. 2128 028c 1B7A ldrb r3, [r3, #8] @ zero_extendqisi2
  5498. 2129 .loc 3 380 60
  5499. 2130 028e 5B00 lsls r3, r3, #1
  5500. 379:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->SubRegionDisable << MPU_RASR_SRD_Pos) |
  5501. 2131 .loc 3 379 82
  5502. 2132 0290 1343 orrs r3, r3, r2
  5503. 381:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->Enable << MPU_RASR_ENABLE_Pos);
  5504. 2133 .loc 3 381 34
  5505. 2134 0292 7A68 ldr r2, [r7, #4]
  5506. 2135 0294 1278 ldrb r2, [r2] @ zero_extendqisi2
  5507. 2136 .loc 3 381 60
  5508. 2137 0296 1146 mov r1, r2
  5509. 373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) |
  5510. 2138 .loc 3 373 6
  5511. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 96
  5512. 2139 0298 034A ldr r2, .L113
  5513. 380:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->Size << MPU_RASR_SIZE_Pos) |
  5514. 2140 .loc 3 380 82
  5515. 2141 029a 0B43 orrs r3, r3, r1
  5516. 373:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** ((uint32_t)MPU_Init->AccessPermission << MPU_RASR_AP_Pos) |
  5517. 2142 .loc 3 373 13
  5518. 2143 029c 1361 str r3, [r2, #16]
  5519. 382:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5520. 2144 .loc 3 382 1
  5521. 2145 029e 00BF nop
  5522. 2146 02a0 0837 adds r7, r7, #8
  5523. 2147 .LCFI127:
  5524. 2148 .cfi_def_cfa_offset 8
  5525. 2149 02a2 BD46 mov sp, r7
  5526. 2150 .LCFI128:
  5527. 2151 .cfi_def_cfa_register 13
  5528. 2152 @ sp needed
  5529. 2153 02a4 80BD pop {r7, pc}
  5530. 2154 .L114:
  5531. 2155 02a6 00BF .align 2
  5532. 2156 .L113:
  5533. 2157 02a8 90ED00E0 .word -536810096
  5534. 2158 .cfi_endproc
  5535. 2159 .LFE140:
  5536. 2161 .section .text.HAL_NVIC_GetPriorityGrouping,"ax",%progbits
  5537. 2162 .align 1
  5538. 2163 .global HAL_NVIC_GetPriorityGrouping
  5539. 2164 .syntax unified
  5540. 2165 .thumb
  5541. 2166 .thumb_func
  5542. 2168 HAL_NVIC_GetPriorityGrouping:
  5543. 2169 .LFB141:
  5544. 383:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** #endif /* __MPU_PRESENT */
  5545. 384:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5546. 385:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5547. 386:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Gets the priority grouping field from the NVIC Interrupt Controller.
  5548. 387:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval Priority grouping field (SCB->AIRCR [10:8] PRIGROUP field)
  5549. 388:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5550. 389:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** uint32_t HAL_NVIC_GetPriorityGrouping(void)
  5551. 390:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5552. 2170 .loc 3 390 1
  5553. 2171 .cfi_startproc
  5554. 2172 @ args = 0, pretend = 0, frame = 0
  5555. 2173 @ frame_needed = 1, uses_anonymous_args = 0
  5556. 2174 0000 80B5 push {r7, lr}
  5557. 2175 .LCFI129:
  5558. 2176 .cfi_def_cfa_offset 8
  5559. 2177 .cfi_offset 7, -8
  5560. 2178 .cfi_offset 14, -4
  5561. 2179 0002 00AF add r7, sp, #0
  5562. 2180 .LCFI130:
  5563. 2181 .cfi_def_cfa_register 7
  5564. 391:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Get the PRIGROUP[10:8] field value */
  5565. 392:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** return NVIC_GetPriorityGrouping();
  5566. 2182 .loc 3 392 10
  5567. 2183 0004 FFF7FEFF bl __NVIC_GetPriorityGrouping
  5568. 2184 0008 0346 mov r3, r0
  5569. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 97
  5570. 393:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5571. 2185 .loc 3 393 1
  5572. 2186 000a 1846 mov r0, r3
  5573. 2187 000c 80BD pop {r7, pc}
  5574. 2188 .cfi_endproc
  5575. 2189 .LFE141:
  5576. 2191 .section .text.HAL_NVIC_GetPriority,"ax",%progbits
  5577. 2192 .align 1
  5578. 2193 .global HAL_NVIC_GetPriority
  5579. 2194 .syntax unified
  5580. 2195 .thumb
  5581. 2196 .thumb_func
  5582. 2198 HAL_NVIC_GetPriority:
  5583. 2199 .LFB142:
  5584. 394:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5585. 395:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5586. 396:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Gets the priority of an interrupt.
  5587. 397:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  5588. 398:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  5589. 399:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  5590. 400:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param PriorityGroup: the priority grouping bits length.
  5591. 401:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be one of the following values:
  5592. 402:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_0: 0 bits for pre-emption priority
  5593. 403:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 4 bits for subpriority
  5594. 404:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_1: 1 bits for pre-emption priority
  5595. 405:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 3 bits for subpriority
  5596. 406:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_2: 2 bits for pre-emption priority
  5597. 407:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 2 bits for subpriority
  5598. 408:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_3: 3 bits for pre-emption priority
  5599. 409:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 1 bits for subpriority
  5600. 410:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg NVIC_PRIORITYGROUP_4: 4 bits for pre-emption priority
  5601. 411:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * 0 bits for subpriority
  5602. 412:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param pPreemptPriority Pointer on the Preemptive priority value (starting from 0).
  5603. 413:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param pSubPriority Pointer on the Subpriority value (starting from 0).
  5604. 414:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  5605. 415:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5606. 416:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_GetPriority(IRQn_Type IRQn, uint32_t PriorityGroup, uint32_t* pPreemptPriority, uint3
  5607. 417:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5608. 2200 .loc 3 417 1
  5609. 2201 .cfi_startproc
  5610. 2202 @ args = 0, pretend = 0, frame = 16
  5611. 2203 @ frame_needed = 1, uses_anonymous_args = 0
  5612. 2204 0000 80B5 push {r7, lr}
  5613. 2205 .LCFI131:
  5614. 2206 .cfi_def_cfa_offset 8
  5615. 2207 .cfi_offset 7, -8
  5616. 2208 .cfi_offset 14, -4
  5617. 2209 0002 84B0 sub sp, sp, #16
  5618. 2210 .LCFI132:
  5619. 2211 .cfi_def_cfa_offset 24
  5620. 2212 0004 00AF add r7, sp, #0
  5621. 2213 .LCFI133:
  5622. 2214 .cfi_def_cfa_register 7
  5623. 2215 0006 B960 str r1, [r7, #8]
  5624. 2216 0008 7A60 str r2, [r7, #4]
  5625. 2217 000a 3B60 str r3, [r7]
  5626. 2218 000c 0346 mov r3, r0
  5627. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 98
  5628. 2219 000e FB73 strb r3, [r7, #15]
  5629. 418:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  5630. 419:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_NVIC_PRIORITY_GROUP(PriorityGroup));
  5631. 2220 .loc 3 419 3
  5632. 2221 0010 BB68 ldr r3, [r7, #8]
  5633. 2222 0012 072B cmp r3, #7
  5634. 2223 0014 10D0 beq .L118
  5635. 2224 .loc 3 419 3 is_stmt 0 discriminator 1
  5636. 2225 0016 BB68 ldr r3, [r7, #8]
  5637. 2226 0018 062B cmp r3, #6
  5638. 2227 001a 0DD0 beq .L118
  5639. 2228 .loc 3 419 3 discriminator 2
  5640. 2229 001c BB68 ldr r3, [r7, #8]
  5641. 2230 001e 052B cmp r3, #5
  5642. 2231 0020 0AD0 beq .L118
  5643. 2232 .loc 3 419 3 discriminator 3
  5644. 2233 0022 BB68 ldr r3, [r7, #8]
  5645. 2234 0024 042B cmp r3, #4
  5646. 2235 0026 07D0 beq .L118
  5647. 2236 .loc 3 419 3 discriminator 4
  5648. 2237 0028 BB68 ldr r3, [r7, #8]
  5649. 2238 002a 032B cmp r3, #3
  5650. 2239 002c 04D0 beq .L118
  5651. 2240 .loc 3 419 3 discriminator 5
  5652. 2241 002e 40F2A311 movw r1, #419
  5653. 2242 0032 0848 ldr r0, .L119
  5654. 2243 0034 FFF7FEFF bl assert_failed
  5655. 2244 .L118:
  5656. 420:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Get priority for Cortex-M system or device specific interrupts */
  5657. 421:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_DecodePriority(NVIC_GetPriority(IRQn), PriorityGroup, pPreemptPriority, pSubPriority);
  5658. 2245 .loc 3 421 3 is_stmt 1
  5659. 2246 0038 97F90F30 ldrsb r3, [r7, #15]
  5660. 2247 003c 1846 mov r0, r3
  5661. 2248 003e FFF7FEFF bl __NVIC_GetPriority
  5662. 2249 0042 3B68 ldr r3, [r7]
  5663. 2250 0044 7A68 ldr r2, [r7, #4]
  5664. 2251 0046 B968 ldr r1, [r7, #8]
  5665. 2252 0048 FFF7FEFF bl NVIC_DecodePriority
  5666. 422:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5667. 2253 .loc 3 422 1
  5668. 2254 004c 00BF nop
  5669. 2255 004e 1037 adds r7, r7, #16
  5670. 2256 .LCFI134:
  5671. 2257 .cfi_def_cfa_offset 8
  5672. 2258 0050 BD46 mov sp, r7
  5673. 2259 .LCFI135:
  5674. 2260 .cfi_def_cfa_register 13
  5675. 2261 @ sp needed
  5676. 2262 0052 80BD pop {r7, pc}
  5677. 2263 .L120:
  5678. 2264 .align 2
  5679. 2265 .L119:
  5680. 2266 0054 00000000 .word .LC0
  5681. 2267 .cfi_endproc
  5682. 2268 .LFE142:
  5683. 2270 .section .text.HAL_NVIC_SetPendingIRQ,"ax",%progbits
  5684. 2271 .align 1
  5685. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 99
  5686. 2272 .global HAL_NVIC_SetPendingIRQ
  5687. 2273 .syntax unified
  5688. 2274 .thumb
  5689. 2275 .thumb_func
  5690. 2277 HAL_NVIC_SetPendingIRQ:
  5691. 2278 .LFB143:
  5692. 423:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5693. 424:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5694. 425:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Sets Pending bit of an external interrupt.
  5695. 426:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  5696. 427:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  5697. 428:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  5698. 429:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  5699. 430:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5700. 431:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_SetPendingIRQ(IRQn_Type IRQn)
  5701. 432:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5702. 2279 .loc 3 432 1
  5703. 2280 .cfi_startproc
  5704. 2281 @ args = 0, pretend = 0, frame = 8
  5705. 2282 @ frame_needed = 1, uses_anonymous_args = 0
  5706. 2283 0000 80B5 push {r7, lr}
  5707. 2284 .LCFI136:
  5708. 2285 .cfi_def_cfa_offset 8
  5709. 2286 .cfi_offset 7, -8
  5710. 2287 .cfi_offset 14, -4
  5711. 2288 0002 82B0 sub sp, sp, #8
  5712. 2289 .LCFI137:
  5713. 2290 .cfi_def_cfa_offset 16
  5714. 2291 0004 00AF add r7, sp, #0
  5715. 2292 .LCFI138:
  5716. 2293 .cfi_def_cfa_register 7
  5717. 2294 0006 0346 mov r3, r0
  5718. 2295 0008 FB71 strb r3, [r7, #7]
  5719. 433:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Set interrupt pending */
  5720. 434:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_SetPendingIRQ(IRQn);
  5721. 2296 .loc 3 434 3
  5722. 2297 000a 97F90730 ldrsb r3, [r7, #7]
  5723. 2298 000e 1846 mov r0, r3
  5724. 2299 0010 FFF7FEFF bl __NVIC_SetPendingIRQ
  5725. 435:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5726. 2300 .loc 3 435 1
  5727. 2301 0014 00BF nop
  5728. 2302 0016 0837 adds r7, r7, #8
  5729. 2303 .LCFI139:
  5730. 2304 .cfi_def_cfa_offset 8
  5731. 2305 0018 BD46 mov sp, r7
  5732. 2306 .LCFI140:
  5733. 2307 .cfi_def_cfa_register 13
  5734. 2308 @ sp needed
  5735. 2309 001a 80BD pop {r7, pc}
  5736. 2310 .cfi_endproc
  5737. 2311 .LFE143:
  5738. 2313 .section .text.HAL_NVIC_GetPendingIRQ,"ax",%progbits
  5739. 2314 .align 1
  5740. 2315 .global HAL_NVIC_GetPendingIRQ
  5741. 2316 .syntax unified
  5742. 2317 .thumb
  5743. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 100
  5744. 2318 .thumb_func
  5745. 2320 HAL_NVIC_GetPendingIRQ:
  5746. 2321 .LFB144:
  5747. 436:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5748. 437:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5749. 438:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Gets Pending Interrupt (reads the pending register in the NVIC
  5750. 439:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * and returns the pending bit for the specified interrupt).
  5751. 440:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  5752. 441:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  5753. 442:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  5754. 443:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval status: - 0 Interrupt status is not pending.
  5755. 444:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * - 1 Interrupt status is pending.
  5756. 445:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5757. 446:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** uint32_t HAL_NVIC_GetPendingIRQ(IRQn_Type IRQn)
  5758. 447:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5759. 2322 .loc 3 447 1
  5760. 2323 .cfi_startproc
  5761. 2324 @ args = 0, pretend = 0, frame = 8
  5762. 2325 @ frame_needed = 1, uses_anonymous_args = 0
  5763. 2326 0000 80B5 push {r7, lr}
  5764. 2327 .LCFI141:
  5765. 2328 .cfi_def_cfa_offset 8
  5766. 2329 .cfi_offset 7, -8
  5767. 2330 .cfi_offset 14, -4
  5768. 2331 0002 82B0 sub sp, sp, #8
  5769. 2332 .LCFI142:
  5770. 2333 .cfi_def_cfa_offset 16
  5771. 2334 0004 00AF add r7, sp, #0
  5772. 2335 .LCFI143:
  5773. 2336 .cfi_def_cfa_register 7
  5774. 2337 0006 0346 mov r3, r0
  5775. 2338 0008 FB71 strb r3, [r7, #7]
  5776. 448:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Return 1 if pending else 0U */
  5777. 449:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** return NVIC_GetPendingIRQ(IRQn);
  5778. 2339 .loc 3 449 10
  5779. 2340 000a 97F90730 ldrsb r3, [r7, #7]
  5780. 2341 000e 1846 mov r0, r3
  5781. 2342 0010 FFF7FEFF bl __NVIC_GetPendingIRQ
  5782. 2343 0014 0346 mov r3, r0
  5783. 450:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5784. 2344 .loc 3 450 1
  5785. 2345 0016 1846 mov r0, r3
  5786. 2346 0018 0837 adds r7, r7, #8
  5787. 2347 .LCFI144:
  5788. 2348 .cfi_def_cfa_offset 8
  5789. 2349 001a BD46 mov sp, r7
  5790. 2350 .LCFI145:
  5791. 2351 .cfi_def_cfa_register 13
  5792. 2352 @ sp needed
  5793. 2353 001c 80BD pop {r7, pc}
  5794. 2354 .cfi_endproc
  5795. 2355 .LFE144:
  5796. 2357 .section .text.HAL_NVIC_ClearPendingIRQ,"ax",%progbits
  5797. 2358 .align 1
  5798. 2359 .global HAL_NVIC_ClearPendingIRQ
  5799. 2360 .syntax unified
  5800. 2361 .thumb
  5801. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 101
  5802. 2362 .thumb_func
  5803. 2364 HAL_NVIC_ClearPendingIRQ:
  5804. 2365 .LFB145:
  5805. 451:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5806. 452:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5807. 453:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Clears the pending bit of an external interrupt.
  5808. 454:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  5809. 455:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  5810. 456:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  5811. 457:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  5812. 458:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5813. 459:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_NVIC_ClearPendingIRQ(IRQn_Type IRQn)
  5814. 460:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5815. 2366 .loc 3 460 1
  5816. 2367 .cfi_startproc
  5817. 2368 @ args = 0, pretend = 0, frame = 8
  5818. 2369 @ frame_needed = 1, uses_anonymous_args = 0
  5819. 2370 0000 80B5 push {r7, lr}
  5820. 2371 .LCFI146:
  5821. 2372 .cfi_def_cfa_offset 8
  5822. 2373 .cfi_offset 7, -8
  5823. 2374 .cfi_offset 14, -4
  5824. 2375 0002 82B0 sub sp, sp, #8
  5825. 2376 .LCFI147:
  5826. 2377 .cfi_def_cfa_offset 16
  5827. 2378 0004 00AF add r7, sp, #0
  5828. 2379 .LCFI148:
  5829. 2380 .cfi_def_cfa_register 7
  5830. 2381 0006 0346 mov r3, r0
  5831. 2382 0008 FB71 strb r3, [r7, #7]
  5832. 461:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Clear pending interrupt */
  5833. 462:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** NVIC_ClearPendingIRQ(IRQn);
  5834. 2383 .loc 3 462 3
  5835. 2384 000a 97F90730 ldrsb r3, [r7, #7]
  5836. 2385 000e 1846 mov r0, r3
  5837. 2386 0010 FFF7FEFF bl __NVIC_ClearPendingIRQ
  5838. 463:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5839. 2387 .loc 3 463 1
  5840. 2388 0014 00BF nop
  5841. 2389 0016 0837 adds r7, r7, #8
  5842. 2390 .LCFI149:
  5843. 2391 .cfi_def_cfa_offset 8
  5844. 2392 0018 BD46 mov sp, r7
  5845. 2393 .LCFI150:
  5846. 2394 .cfi_def_cfa_register 13
  5847. 2395 @ sp needed
  5848. 2396 001a 80BD pop {r7, pc}
  5849. 2397 .cfi_endproc
  5850. 2398 .LFE145:
  5851. 2400 .section .text.HAL_NVIC_GetActive,"ax",%progbits
  5852. 2401 .align 1
  5853. 2402 .global HAL_NVIC_GetActive
  5854. 2403 .syntax unified
  5855. 2404 .thumb
  5856. 2405 .thumb_func
  5857. 2407 HAL_NVIC_GetActive:
  5858. 2408 .LFB146:
  5859. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 102
  5860. 464:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5861. 465:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5862. 466:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Gets active interrupt ( reads the active register in NVIC and returns the active bit).
  5863. 467:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param IRQn External interrupt number
  5864. 468:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be an enumerator of IRQn_Type enumeration
  5865. 469:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * (For the complete STM32 Devices IRQ Channels list, please refer to the appropriate CMSI
  5866. 470:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval status: - 0 Interrupt status is not pending.
  5867. 471:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * - 1 Interrupt status is pending.
  5868. 472:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5869. 473:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** uint32_t HAL_NVIC_GetActive(IRQn_Type IRQn)
  5870. 474:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5871. 2409 .loc 3 474 1
  5872. 2410 .cfi_startproc
  5873. 2411 @ args = 0, pretend = 0, frame = 8
  5874. 2412 @ frame_needed = 1, uses_anonymous_args = 0
  5875. 2413 0000 80B5 push {r7, lr}
  5876. 2414 .LCFI151:
  5877. 2415 .cfi_def_cfa_offset 8
  5878. 2416 .cfi_offset 7, -8
  5879. 2417 .cfi_offset 14, -4
  5880. 2418 0002 82B0 sub sp, sp, #8
  5881. 2419 .LCFI152:
  5882. 2420 .cfi_def_cfa_offset 16
  5883. 2421 0004 00AF add r7, sp, #0
  5884. 2422 .LCFI153:
  5885. 2423 .cfi_def_cfa_register 7
  5886. 2424 0006 0346 mov r3, r0
  5887. 2425 0008 FB71 strb r3, [r7, #7]
  5888. 475:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Return 1 if active else 0U */
  5889. 476:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** return NVIC_GetActive(IRQn);
  5890. 2426 .loc 3 476 10
  5891. 2427 000a 97F90730 ldrsb r3, [r7, #7]
  5892. 2428 000e 1846 mov r0, r3
  5893. 2429 0010 FFF7FEFF bl __NVIC_GetActive
  5894. 2430 0014 0346 mov r3, r0
  5895. 477:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5896. 2431 .loc 3 477 1
  5897. 2432 0016 1846 mov r0, r3
  5898. 2433 0018 0837 adds r7, r7, #8
  5899. 2434 .LCFI154:
  5900. 2435 .cfi_def_cfa_offset 8
  5901. 2436 001a BD46 mov sp, r7
  5902. 2437 .LCFI155:
  5903. 2438 .cfi_def_cfa_register 13
  5904. 2439 @ sp needed
  5905. 2440 001c 80BD pop {r7, pc}
  5906. 2441 .cfi_endproc
  5907. 2442 .LFE146:
  5908. 2444 .section .text.HAL_SYSTICK_CLKSourceConfig,"ax",%progbits
  5909. 2445 .align 1
  5910. 2446 .global HAL_SYSTICK_CLKSourceConfig
  5911. 2447 .syntax unified
  5912. 2448 .thumb
  5913. 2449 .thumb_func
  5914. 2451 HAL_SYSTICK_CLKSourceConfig:
  5915. 2452 .LFB147:
  5916. 478:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  5917. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 103
  5918. 479:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  5919. 480:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief Configures the SysTick clock source.
  5920. 481:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @param CLKSource specifies the SysTick clock source.
  5921. 482:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * This parameter can be one of the following values:
  5922. 483:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg SYSTICK_CLKSOURCE_HCLK_DIV8: AHB clock divided by 8 selected as SysTick clock
  5923. 484:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @arg SYSTICK_CLKSOURCE_HCLK: AHB clock selected as SysTick clock source.
  5924. 485:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  5925. 486:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  5926. 487:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_SYSTICK_CLKSourceConfig(uint32_t CLKSource)
  5927. 488:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5928. 2453 .loc 3 488 1
  5929. 2454 .cfi_startproc
  5930. 2455 @ args = 0, pretend = 0, frame = 8
  5931. 2456 @ frame_needed = 1, uses_anonymous_args = 0
  5932. 2457 0000 80B5 push {r7, lr}
  5933. 2458 .LCFI156:
  5934. 2459 .cfi_def_cfa_offset 8
  5935. 2460 .cfi_offset 7, -8
  5936. 2461 .cfi_offset 14, -4
  5937. 2462 0002 82B0 sub sp, sp, #8
  5938. 2463 .LCFI157:
  5939. 2464 .cfi_def_cfa_offset 16
  5940. 2465 0004 00AF add r7, sp, #0
  5941. 2466 .LCFI158:
  5942. 2467 .cfi_def_cfa_register 7
  5943. 2468 0006 7860 str r0, [r7, #4]
  5944. 489:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* Check the parameters */
  5945. 490:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** assert_param(IS_SYSTICK_CLK_SOURCE(CLKSource));
  5946. 2469 .loc 3 490 3
  5947. 2470 0008 7B68 ldr r3, [r7, #4]
  5948. 2471 000a 042B cmp r3, #4
  5949. 2472 000c 07D0 beq .L128
  5950. 2473 .loc 3 490 3 is_stmt 0 discriminator 1
  5951. 2474 000e 7B68 ldr r3, [r7, #4]
  5952. 2475 0010 002B cmp r3, #0
  5953. 2476 0012 04D0 beq .L128
  5954. 2477 .loc 3 490 3 discriminator 2
  5955. 2478 0014 4FF4F571 mov r1, #490
  5956. 2479 0018 0B48 ldr r0, .L132
  5957. 2480 001a FFF7FEFF bl assert_failed
  5958. 2481 .L128:
  5959. 491:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** if (CLKSource == SYSTICK_CLKSOURCE_HCLK)
  5960. 2482 .loc 3 491 6 is_stmt 1
  5961. 2483 001e 7B68 ldr r3, [r7, #4]
  5962. 2484 0020 042B cmp r3, #4
  5963. 2485 0022 06D1 bne .L129
  5964. 492:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5965. 493:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** SysTick->CTRL |= SYSTICK_CLKSOURCE_HCLK;
  5966. 2486 .loc 3 493 19
  5967. 2487 0024 094B ldr r3, .L132+4
  5968. 2488 0026 1B68 ldr r3, [r3]
  5969. 2489 0028 084A ldr r2, .L132+4
  5970. 2490 002a 43F00403 orr r3, r3, #4
  5971. 2491 002e 1360 str r3, [r2]
  5972. 494:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5973. 495:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** else
  5974. 496:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  5975. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 104
  5976. 497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** SysTick->CTRL &= ~SYSTICK_CLKSOURCE_HCLK;
  5977. 498:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5978. 499:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5979. 2492 .loc 3 499 1
  5980. 2493 0030 05E0 b .L131
  5981. 2494 .L129:
  5982. 497:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  5983. 2495 .loc 3 497 19
  5984. 2496 0032 064B ldr r3, .L132+4
  5985. 2497 0034 1B68 ldr r3, [r3]
  5986. 2498 0036 054A ldr r2, .L132+4
  5987. 2499 0038 23F00403 bic r3, r3, #4
  5988. 2500 003c 1360 str r3, [r2]
  5989. 2501 .L131:
  5990. 2502 .loc 3 499 1
  5991. 2503 003e 00BF nop
  5992. 2504 0040 0837 adds r7, r7, #8
  5993. 2505 .LCFI159:
  5994. 2506 .cfi_def_cfa_offset 8
  5995. 2507 0042 BD46 mov sp, r7
  5996. 2508 .LCFI160:
  5997. 2509 .cfi_def_cfa_register 13
  5998. 2510 @ sp needed
  5999. 2511 0044 80BD pop {r7, pc}
  6000. 2512 .L133:
  6001. 2513 0046 00BF .align 2
  6002. 2514 .L132:
  6003. 2515 0048 00000000 .word .LC0
  6004. 2516 004c 10E000E0 .word -536813552
  6005. 2517 .cfi_endproc
  6006. 2518 .LFE147:
  6007. 2520 .section .text.HAL_SYSTICK_IRQHandler,"ax",%progbits
  6008. 2521 .align 1
  6009. 2522 .global HAL_SYSTICK_IRQHandler
  6010. 2523 .syntax unified
  6011. 2524 .thumb
  6012. 2525 .thumb_func
  6013. 2527 HAL_SYSTICK_IRQHandler:
  6014. 2528 .LFB148:
  6015. 500:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  6016. 501:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  6017. 502:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief This function handles SYSTICK interrupt request.
  6018. 503:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  6019. 504:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  6020. 505:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** void HAL_SYSTICK_IRQHandler(void)
  6021. 506:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  6022. 2529 .loc 3 506 1
  6023. 2530 .cfi_startproc
  6024. 2531 @ args = 0, pretend = 0, frame = 0
  6025. 2532 @ frame_needed = 1, uses_anonymous_args = 0
  6026. 2533 0000 80B5 push {r7, lr}
  6027. 2534 .LCFI161:
  6028. 2535 .cfi_def_cfa_offset 8
  6029. 2536 .cfi_offset 7, -8
  6030. 2537 .cfi_offset 14, -4
  6031. 2538 0002 00AF add r7, sp, #0
  6032. 2539 .LCFI162:
  6033. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 105
  6034. 2540 .cfi_def_cfa_register 7
  6035. 507:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** HAL_SYSTICK_Callback();
  6036. 2541 .loc 3 507 3
  6037. 2542 0004 FFF7FEFF bl HAL_SYSTICK_Callback
  6038. 508:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  6039. 2543 .loc 3 508 1
  6040. 2544 0008 00BF nop
  6041. 2545 000a 80BD pop {r7, pc}
  6042. 2546 .cfi_endproc
  6043. 2547 .LFE148:
  6044. 2549 .section .text.HAL_SYSTICK_Callback,"ax",%progbits
  6045. 2550 .align 1
  6046. 2551 .weak HAL_SYSTICK_Callback
  6047. 2552 .syntax unified
  6048. 2553 .thumb
  6049. 2554 .thumb_func
  6050. 2556 HAL_SYSTICK_Callback:
  6051. 2557 .LFB149:
  6052. 509:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c ****
  6053. 510:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /**
  6054. 511:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @brief SYSTICK callback.
  6055. 512:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** * @retval None
  6056. 513:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  6057. 514:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** __weak void HAL_SYSTICK_Callback(void)
  6058. 515:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** {
  6059. 2558 .loc 3 515 1
  6060. 2559 .cfi_startproc
  6061. 2560 @ args = 0, pretend = 0, frame = 0
  6062. 2561 @ frame_needed = 1, uses_anonymous_args = 0
  6063. 2562 @ link register save eliminated.
  6064. 2563 0000 80B4 push {r7}
  6065. 2564 .LCFI163:
  6066. 2565 .cfi_def_cfa_offset 4
  6067. 2566 .cfi_offset 7, -4
  6068. 2567 0002 00AF add r7, sp, #0
  6069. 2568 .LCFI164:
  6070. 2569 .cfi_def_cfa_register 7
  6071. 516:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** /* NOTE : This function Should not be modified, when the callback is needed,
  6072. 517:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** the HAL_SYSTICK_Callback could be implemented in the user file
  6073. 518:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** */
  6074. 519:Drivers/STM32F3xx_HAL_Driver/Src/stm32f3xx_hal_cortex.c **** }
  6075. 2570 .loc 3 519 1
  6076. 2571 0004 00BF nop
  6077. 2572 0006 BD46 mov sp, r7
  6078. 2573 .LCFI165:
  6079. 2574 .cfi_def_cfa_register 13
  6080. 2575 @ sp needed
  6081. 2576 0008 5DF8047B ldr r7, [sp], #4
  6082. 2577 .LCFI166:
  6083. 2578 .cfi_restore 7
  6084. 2579 .cfi_def_cfa_offset 0
  6085. 2580 000c 7047 bx lr
  6086. 2581 .cfi_endproc
  6087. 2582 .LFE149:
  6088. 2584 .text
  6089. 2585 .Letext0:
  6090. 2586 .file 4 "Drivers/CMSIS/Device/ST/STM32F3xx/Include/stm32f302xc.h"
  6091. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 106
  6092. 2587 .file 5 "d:\\arm-gcc\\arm-none-eabi\\include\\machine\\_default_types.h"
  6093. 2588 .file 6 "d:\\arm-gcc\\arm-none-eabi\\include\\sys\\_stdint.h"
  6094. 2589 .file 7 "Drivers/STM32F3xx_HAL_Driver/Inc/stm32f3xx_hal_cortex.h"
  6095. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 107
  6096. DEFINED SYMBOLS
  6097. *ABS*:00000000 stm32f3xx_hal_cortex.c
  6098. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:20 .text.__NVIC_SetPriorityGrouping:00000000 $t
  6099. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:25 .text.__NVIC_SetPriorityGrouping:00000000 __NVIC_SetPriorityGrouping
  6100. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:90 .text.__NVIC_SetPriorityGrouping:00000044 $d
  6101. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:95 .text.__NVIC_GetPriorityGrouping:00000000 $t
  6102. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:100 .text.__NVIC_GetPriorityGrouping:00000000 __NVIC_GetPriorityGrouping
  6103. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:134 .text.__NVIC_GetPriorityGrouping:00000018 $d
  6104. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:139 .text.__NVIC_EnableIRQ:00000000 $t
  6105. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:144 .text.__NVIC_EnableIRQ:00000000 __NVIC_EnableIRQ
  6106. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:199 .text.__NVIC_EnableIRQ:00000038 $d
  6107. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:204 .text.__NVIC_DisableIRQ:00000000 $t
  6108. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:209 .text.__NVIC_DisableIRQ:00000000 __NVIC_DisableIRQ
  6109. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:292 .text.__NVIC_DisableIRQ:00000044 $d
  6110. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:297 .text.__NVIC_GetPendingIRQ:00000000 $t
  6111. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:302 .text.__NVIC_GetPendingIRQ:00000000 __NVIC_GetPendingIRQ
  6112. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:363 .text.__NVIC_GetPendingIRQ:00000040 $d
  6113. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:368 .text.__NVIC_SetPendingIRQ:00000000 $t
  6114. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:373 .text.__NVIC_SetPendingIRQ:00000000 __NVIC_SetPendingIRQ
  6115. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:429 .text.__NVIC_SetPendingIRQ:00000038 $d
  6116. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:434 .text.__NVIC_ClearPendingIRQ:00000000 $t
  6117. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:439 .text.__NVIC_ClearPendingIRQ:00000000 __NVIC_ClearPendingIRQ
  6118. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:495 .text.__NVIC_ClearPendingIRQ:00000038 $d
  6119. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:500 .text.__NVIC_GetActive:00000000 $t
  6120. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:505 .text.__NVIC_GetActive:00000000 __NVIC_GetActive
  6121. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:566 .text.__NVIC_GetActive:00000040 $d
  6122. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:571 .text.__NVIC_SetPriority:00000000 $t
  6123. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:576 .text.__NVIC_SetPriority:00000000 __NVIC_SetPriority
  6124. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:650 .text.__NVIC_SetPriority:0000004c $d
  6125. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:656 .text.__NVIC_GetPriority:00000000 $t
  6126. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:661 .text.__NVIC_GetPriority:00000000 __NVIC_GetPriority
  6127. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:729 .text.__NVIC_GetPriority:00000048 $d
  6128. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:735 .text.NVIC_EncodePriority:00000000 $t
  6129. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:740 .text.NVIC_EncodePriority:00000000 NVIC_EncodePriority
  6130. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:825 .text.NVIC_DecodePriority:00000000 $t
  6131. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:830 .text.NVIC_DecodePriority:00000000 NVIC_DecodePriority
  6132. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:920 .text.__NVIC_SystemReset:00000000 $t
  6133. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:925 .text.__NVIC_SystemReset:00000000 __NVIC_SystemReset
  6134. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:989 .text.__NVIC_SystemReset:00000024 $d
  6135. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:995 .text.SysTick_Config:00000000 $t
  6136. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1000 .text.SysTick_Config:00000000 SysTick_Config
  6137. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1065 .text.SysTick_Config:00000040 $d
  6138. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1070 .rodata:00000000 $d
  6139. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1075 .text.HAL_NVIC_SetPriorityGrouping:00000000 $t
  6140. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1081 .text.HAL_NVIC_SetPriorityGrouping:00000000 HAL_NVIC_SetPriorityGrouping
  6141. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1141 .text.HAL_NVIC_SetPriorityGrouping:0000003c $d
  6142. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1146 .text.HAL_NVIC_SetPriority:00000000 $t
  6143. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1152 .text.HAL_NVIC_SetPriority:00000000 HAL_NVIC_SetPriority
  6144. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1220 .text.HAL_NVIC_SetPriority:00000054 $d
  6145. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1225 .text.HAL_NVIC_EnableIRQ:00000000 $t
  6146. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1231 .text.HAL_NVIC_EnableIRQ:00000000 HAL_NVIC_EnableIRQ
  6147. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1276 .text.HAL_NVIC_EnableIRQ:0000002c $d
  6148. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1281 .text.HAL_NVIC_DisableIRQ:00000000 $t
  6149. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1287 .text.HAL_NVIC_DisableIRQ:00000000 HAL_NVIC_DisableIRQ
  6150. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1332 .text.HAL_NVIC_DisableIRQ:0000002c $d
  6151. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1337 .text.HAL_NVIC_SystemReset:00000000 $t
  6152. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1343 .text.HAL_NVIC_SystemReset:00000000 HAL_NVIC_SystemReset
  6153. ARM GAS C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s page 108
  6154. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1363 .text.HAL_SYSTICK_Config:00000000 $t
  6155. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1369 .text.HAL_SYSTICK_Config:00000000 HAL_SYSTICK_Config
  6156. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1405 .text.HAL_MPU_Disable:00000000 $t
  6157. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1411 .text.HAL_MPU_Disable:00000000 HAL_MPU_Disable
  6158. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1450 .text.HAL_MPU_Disable:00000020 $d
  6159. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1456 .text.HAL_MPU_Enable:00000000 $t
  6160. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1462 .text.HAL_MPU_Enable:00000000 HAL_MPU_Enable
  6161. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1510 .text.HAL_MPU_Enable:0000002c $d
  6162. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1516 .text.HAL_MPU_EnableRegion:00000000 $t
  6163. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1522 .text.HAL_MPU_EnableRegion:00000000 HAL_MPU_EnableRegion
  6164. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1601 .text.HAL_MPU_EnableRegion:0000005c $d
  6165. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1607 .text.HAL_MPU_DisableRegion:00000000 $t
  6166. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1613 .text.HAL_MPU_DisableRegion:00000000 HAL_MPU_DisableRegion
  6167. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1692 .text.HAL_MPU_DisableRegion:0000005c $d
  6168. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1698 .text.HAL_MPU_ConfigRegion:00000000 $t
  6169. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:1704 .text.HAL_MPU_ConfigRegion:00000000 HAL_MPU_ConfigRegion
  6170. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2121 .text.HAL_MPU_ConfigRegion:00000280 $d
  6171. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2125 .text.HAL_MPU_ConfigRegion:00000288 $t
  6172. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2157 .text.HAL_MPU_ConfigRegion:000002a8 $d
  6173. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2162 .text.HAL_NVIC_GetPriorityGrouping:00000000 $t
  6174. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2168 .text.HAL_NVIC_GetPriorityGrouping:00000000 HAL_NVIC_GetPriorityGrouping
  6175. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2192 .text.HAL_NVIC_GetPriority:00000000 $t
  6176. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2198 .text.HAL_NVIC_GetPriority:00000000 HAL_NVIC_GetPriority
  6177. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2266 .text.HAL_NVIC_GetPriority:00000054 $d
  6178. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2271 .text.HAL_NVIC_SetPendingIRQ:00000000 $t
  6179. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2277 .text.HAL_NVIC_SetPendingIRQ:00000000 HAL_NVIC_SetPendingIRQ
  6180. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2314 .text.HAL_NVIC_GetPendingIRQ:00000000 $t
  6181. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2320 .text.HAL_NVIC_GetPendingIRQ:00000000 HAL_NVIC_GetPendingIRQ
  6182. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2358 .text.HAL_NVIC_ClearPendingIRQ:00000000 $t
  6183. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2364 .text.HAL_NVIC_ClearPendingIRQ:00000000 HAL_NVIC_ClearPendingIRQ
  6184. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2401 .text.HAL_NVIC_GetActive:00000000 $t
  6185. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2407 .text.HAL_NVIC_GetActive:00000000 HAL_NVIC_GetActive
  6186. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2445 .text.HAL_SYSTICK_CLKSourceConfig:00000000 $t
  6187. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2451 .text.HAL_SYSTICK_CLKSourceConfig:00000000 HAL_SYSTICK_CLKSourceConfig
  6188. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2515 .text.HAL_SYSTICK_CLKSourceConfig:00000048 $d
  6189. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2521 .text.HAL_SYSTICK_IRQHandler:00000000 $t
  6190. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2527 .text.HAL_SYSTICK_IRQHandler:00000000 HAL_SYSTICK_IRQHandler
  6191. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2556 .text.HAL_SYSTICK_Callback:00000000 HAL_SYSTICK_Callback
  6192. C:\Users\zl835\AppData\Local\Temp\ccKEmGtF.s:2550 .text.HAL_SYSTICK_Callback:00000000 $t
  6193. UNDEFINED SYMBOLS
  6194. assert_failed