3 Star 10 Fork 3

洛佳 / hi38x1-pac

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
hi38x1.svd 297.32 KB
一键复制 编辑 原始数据 按行查看 历史
洛佳 提交于 2021-10-10 19:50 . Regenerate with svd2rust 0.19
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="CMSIS-SVD_Schema_1_1.xsd">
<vendor>HiSilicon (Shanghai) Technologies Co., Ltd.</vendor>
<name>Hi38x1</name>
<version>1.0</version>
<description>Hi3861 V100/Hi3861L V100/Hi3881 V100 Wi-Fi Chip</description>
<addressUnitBits>8</addressUnitBits> <!-- todo: verify -->
<width>32</width>
<size>32</size>
<access>read-write</access>
<peripherals>
<peripheral>
<name>GLB_CTL</name>
<description>Global software interrupt controller</description>
<baseAddress>0x50000000</baseAddress>
<interrupt>
<name>SOFT0</name>
<description>Software interrupt 0</description>
<value>51</value>
</interrupt>
<interrupt>
<name>SOFT1</name>
<description>Software interrupt 1</description>
<value>52</value>
</interrupt>
<interrupt>
<name>SOFT2</name>
<description>Software interrupt 2</description>
<value>53</value>
</interrupt>
<interrupt>
<name>SOFT3</name>
<description>Software interrupt 3</description>
<value>54</value>
</interrupt>
<registers>
<register>
<name>soft_int_en</name>
<description>Software interrupt enable register</description>
<addressOffset>0x280</addressOffset>
<fields>
<field>
<name>soft_int%s_en</name>
<description>Software interrupt enable</description>
<access>read-write</access>
<lsb>0</lsb>
<msb>0</msb>
<dim>4</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>Software interrupt is disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>Software interrupt is enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>soft_int_set</name>
<description>Software interrupt set register</description>
<addressOffset>0x284</addressOffset>
<fields>
<field>
<name>soft_int%s_set</name>
<description>Software interrupt set</description>
<access>write-only</access>
<lsb>0</lsb>
<msb>0</msb>
<dim>4</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<enumeratedValue>
<name>set</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>soft_int_clr</name>
<description>Software interrupt clear register</description>
<addressOffset>0x288</addressOffset>
<fields>
<field>
<name>soft_int%s_clr</name>
<description>Software interrupt clear</description>
<access>write-only</access>
<lsb>0</lsb>
<msb>0</msb>
<dim>4</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>The interrupt is cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>soft_int_sts</name>
<description>Software interrupt status register</description>
<addressOffset>0x28C</addressOffset>
<fields>
<field>
<name>soft_int%s_sts</name>
<description>Software interrupt status</description>
<access>read-only</access>
<lsb>0</lsb>
<msb>0</msb>
<dim>4</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>The interrupt is cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>set</name>
<description>The interrupt is set.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<peripheral>
<name>GPIO</name>
<description>General purpose input/output</description>
<baseAddress>0x50006000</baseAddress>
<interrupt>
<name>GPIO</name>
<description>GPIO interrupt</description>
<value>45</value>
</interrupt>
<registers>
<register>
<name>data_output</name>
<description>Port data output register</description>
<addressOffset>0x00</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
</field>
</fields>
</register>
<register>
<name>direction</name>
<description>Port data transfer direction register</description>
<addressOffset>0x04</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<name>DIRECTION</name>
<enumeratedValue>
<name>input</name>
<description>Pin is input</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>output</name>
<description>Pin is output</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>interrupt_enable</name>
<description>Port interrupt enable register</description>
<addressOffset>0x30</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<name>MODE</name>
<enumeratedValue>
<name>normal</name>
<description>Normal mode (default value)</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>interrupt</name>
<description>Interrupt mode</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>interrupt_mask</name>
<description>Port interrupt mask register</description>
<addressOffset>0x34</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<name>MASK</name>
<enumeratedValue>
<name>not_masked</name>
<description>Not masked (default value)</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>masked</name>
<description>Masked</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>interrupt_type</name>
<description>Port interrupt type register</description>
<addressOffset>0x38</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<name>TRIGGER</name>
<enumeratedValue>
<name>level</name>
<description>Level triggered (defulat value)</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>edge</name>
<description>Edge triggered</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>interrupt_ploarity</name>
<description>Port interrupt polarity register</description>
<addressOffset>0x3C</addressOffset>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
<enumeratedValues>
<name>POLARITY</name>
<enumeratedValue>
<name>falling_low</name>
<description>falling edge or low level-triggered (default value)</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>rising_high</name>
<description>Rising edge or high level-triggered</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>interrupt_status</name>
<description>Interrupt status registers</description>
<addressOffset>0x40</addressOffset>
<access>read-only</access>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
</field>
</fields>
</register>
<register>
<name>interrupt_status_raw</name>
<description>Raw interrupt status registers</description>
<addressOffset>0x44</addressOffset>
<access>read-only</access>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
</field>
</fields>
</register>
<register>
<name>interrupt_clear</name>
<description>Raw interrupt status registers</description>
<addressOffset>0x44</addressOffset>
<access>write-only</access>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
</field>
</fields>
</register>
<register>
<name>data_input</name>
<description>External port (data input) registers</description>
<addressOffset>0x50</addressOffset>
<access>read-only</access>
<fields>
<field>
<name>gpio%s</name>
<lsb>0</lsb>
<msb>0</msb>
<dim>16</dim>
<dimIncrement>1</dimIncrement>
</field>
</fields>
</register>
</registers>
</peripheral>
<peripheral>
<name>RTC</name>
<groupName>RTC</groupName>
<description>The RTC counts down from the preset data to 0, triggering an interrupt.</description>
<baseAddress>0x50007000</baseAddress>
<registers>
<cluster>
<name>timer%s</name>
<description>Timer cluster</description>
<addressOffset>0x0</addressOffset>
<dim>4</dim>
<dimIndex>1-4</dimIndex>
<dimIncrement>0x14</dimIncrement>
<register>
<name>load_count</name>
<description>TIMER_LOADCOUNT is the timer initial value register.</description>
<addressOffset>0x000</addressOffset>
<size>32</size>
<access>read-write</access>
<resetValue>0x00000000</resetValue>
</register>
<register>
<name>current_value</name>
<description>TIMER_CURRENTVALUE is the timer current value register.</description>
<addressOffset>0x004</addressOffset>
<size>32</size>
<access>read-only</access>
<resetValue>0x00000000</resetValue>
</register>
<register>
<name>control</name>
<description>TIMER_CONTROLREG is the timer control register.</description>
<addressOffset>0x008</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer_lock</name>
<description>Timer lock control.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>unlocked</name>
<description>not locked.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>locked</name>
<description>Locks the timer value to TIMER_CURRENTVALUE.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer_int_mask</name>
<description>Timer interrupt mask.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>unmasked</name>
<description>not masked.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>masked</name>
<description>masked.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer_mode</name>
<description>Timer mode control</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>free</name>
<description>free mode.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>periodic</name>
<description>periodic mode</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer_en</name>
<description>Timer enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>eoi</name>
<description>TIMER_EOI is the timer interrupt clear register</description>
<addressOffset>0x00c</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer_eoi</name>
<description>Read this register to clear timer interrupt flag.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>interrupt_status</name>
<description>TIMER_INTSTATUS is the timer interrupt status register.</description>
<addressOffset>0x010</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer_int_status</name>
<description>Masked interrupt status of timer.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</cluster>
<register>
<name>TIMERS_INTSTATUS</name>
<description>TIMERS_INTSTATUS is the interrupt status register for timers.</description>
<addressOffset>0x0A0</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer4_int_status_sum</name>
<description>Masked interrupt status of timer4</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer3_int_status_sum</name>
<description>Masked interrupt status of timer3</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer2_int_status_sum</name>
<description>Masked interrupt status of timer2</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer1_int_status_sum</name>
<description>Masked interrupt status of timer1</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TIMERS_EOI</name>
<description>TIMERS_EOI is the interrupt clear register for timers.</description>
<addressOffset>0x0A4</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer_seoi</name>
<description>Reading this register clears interrupt for timers.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>TIMERS_RAWINTSTATUS</name>
<description>TIMERS_RAWINTSTATUS is the raw interrupt status register for timers.</description>
<addressOffset>0x0A8</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>timer4_raw_int_status</name>
<description>Raw interrupt status of timer4</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer3_raw_int_status</name>
<description>Raw interrupt status of timer3</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer2_raw_int_status</name>
<description>Raw interrupt status of timer2</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>timer1_raw_int_status</name>
<description>Raw interrupt status of timer1</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>The interrupt is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The interrupt is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- ADC -->
<peripheral>
<name>ADC</name>
<description>Analog to Digit Converter</description>
<baseAddress>0x40070000</baseAddress>
<registers>
<register>
<name>LSADC_CTRL0</name>
<description>LSADC_CTRL0 is the ADC control register.</description>
<addressOffset>0x000</addressOffset>
<size>32</size>
<resetValue>0x0000F000</resetValue>
<fields>
<field>
<name>cur_bais</name>
<description>Analog power control.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>auto</name>
<description>automatic control.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>manual_1p8</name>
<description>manual control, AVDD = 1.8 V.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>manual_3p3</name>
<description>manual control, AVDD = 3.3 V.</description>
<value>2</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rst_cnt</name>
<description>Count time from the reset (RST) to the start of the conversion.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>12</bitWidth>
<resetMask>0x00F</resetMask>
</field>
<field>
<name>equ_model_sel</name>
<description>Average algorithm mode select.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>model_1</name>
<description>1-time average (that is, not average).</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>model_2</name>
<description>2-time average algorithm.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>model_4</name>
<description>4-time average algorithm.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>model_8</name>
<description>8-time average algorithm.</description>
<value>3</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>ch_vld</name>
<description>Whether the channel is valid.bit[0]–bit[7] correspond to channels A–H, respectively</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL1</name>
<description>LSADC_CTRL1 is the ADC FIFO configuration register.</description>
<addressOffset>0x004</addressOffset>
<size>32</size>
<resetValue>0x00000002</resetValue>
<fields>
<field>
<name>rxintsize</name>
<description>FIFO threshold setting.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>size_127</name>
<description>127</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>size_124</name>
<description>124</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>size_64</name>
<description>64</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>size_32</name>
<description>32</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>size_16</name>
<description>16</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>size_8</name>
<description>8</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>size_4</name>
<description>4</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>size_1</name>
<description>1</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL2</name>
<description>LSADC_CTRL2 is the ADC interrupt control register.</description>
<addressOffset>0x008</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rxim</name>
<description>Threshold interrupt mask.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>masked</name>
<description>Masked.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>unmasked</name>
<description>Unmasked.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rorim</name>
<description>FIFO overflow interrupt mask.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>masked</name>
<description>Masked.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>unmasked</name>
<description>Unmasked.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL3</name>
<description>LSADC_CTRL3 is the ADC interrupt clear register.</description>
<addressOffset>0x00C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>roric</name>
<description>FIFO overflow interrupt clear.</description>
<access>write-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_clear</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL4</name>
<description>LSADC_CTRL4 is the ADC FIFO status register.</description>
<addressOffset>0x010</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>bsy</name>
<description>ADC busy indicator.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>idle</name>
<description>Idle.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>busy</name>
<description>Busy.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rff</name>
<description>Whether the FIFO is full.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>no.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>yes.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rne</name>
<description>Whether the FIFO is empty.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>empty</name>
<description>yes.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>not_empty</name>
<description>no.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL5</name>
<description>LSADC_CTRL5 is the ADC raw interrupt status register.</description>
<addressOffset>0x014</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rxris</name>
<description>Raw RX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rorris</name>
<description>Raw RX overflow interrupt.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL6</name>
<description>LSADC_CTRL6 is the ADC masked interrupt status register.</description>
<addressOffset>0x018</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rxmis</name>
<description>Masked RX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rormis</name>
<description>Masked RX overflow interrupt state.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL7</name>
<description>LSADC_CTRL7 is the ADC start scanning control register.</description>
<addressOffset>0x01C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>lsadc_start</name>
<description>Masked RX FIFO interrupt status.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>start</name>
<description>Start LSADC.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL8</name>
<description>LSADC_CTRL8 is the ADC stop scanning control register.</description>
<addressOffset>0x020</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>lsadc_stop</name>
<description>Stops auto scanning.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>stop</name>
<description>Disables the scanning function of the LSADC.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL9</name>
<description>LSADC_CTRL9 is the ADC FIFO read data control register.</description>
<addressOffset>0x024</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>dr</name>
<description>Reads ADC data.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>15</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL10</name>
<description>LSADC_CTRL10 is the ADC reserve control register.</description>
<addressOffset>0x028</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>lsadc_reg_3to0</name>
<description>General register 4.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>4</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>lsadc_reg2_5to0</name>
<description>General register 3.</description>
<access>read-write</access>
<bitOffset>16</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>lsadc_reg1_7to6</name>
<description>General register 2.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>lsadc_reg1_3</name>
<description>General register 1.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>lsadc_reg0_6to0</name>
<description>General register 1.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>7</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>LSADC_CTRL11</name>
<description>LSADC_CTRL11 is the ADC power-off control register.</description>
<addressOffset>0x02C</addressOffset>
<size>32</size>
<resetValue>0x00000001</resetValue>
<fields>
<field>
<name>power_down</name>
<description>ADC power-down control.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>working</name>
<description>Working normally.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>powered_down</name>
<description>Powered down.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- ADC --><peripheral>
<name>HPM</name>
<description>Hardware performance monitor</description>
<baseAddress>0x40068000</baseAddress>
<registers>
<register>
<name>PERI_PMC22</name>
<description>PERI_PMC22 is the HPM0 clock and soft reset control register.</description>
<addressOffset>0x0058</addressOffset>
<size>32</size>
<resetValue>0x0000000A</resetValue>
<fields>
<field>
<name>hpm0_rst_req</name>
<description>HPM0 reset request enable.</description>
<access>read-write</access>
<bitOffset>27</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_monitor_en</name>
<description>HPM0 cyclic monitoring enable.</description>
<access>read-write</access>
<bitOffset>26</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disable</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_bypass</name>
<description>Single-time HPM0 enable signal.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>by_monitor</name>
<description>The start signal of HPM0 is determined by [hpm0_monitor_en].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>by_peripheral</name> <!-- Is this name appropriate? luojia65 2020/12/31 -->
<description>The start signal of the HPM0 is determined by [hpm0_en].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_en</name>
<description>Single HPM0 measurement enable.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>retained</name>
<description>The value is retained 0 before a process is started.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>started</name> <!-- Is this name appropriate? luojia65 2020/12/31 -->
<description>A frequency modulation process is started.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_offset</name>
<description>Offset after the HPM0 original code word is shifted rightwards.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm0_shift</name>
<description>Number of right shift bits of the HPM0 original code word.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm0_div</name>
<description>HPM0 clock divider.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>5</bitWidth>
<resetMask>0x0A</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC23</name>
<description>PERI_PMC23 is the HPM0 original code word and alarm information register.</description>
<addressOffset>0x005C</addressOffset>
<size>32</size>
<resetValue>0x0000000A</resetValue>
<fields>
<field>
<name>hpm0_up_warning</name>
<description>Report flag when the HPM0 original code word exceeds the upper threshold.</description>
<access>read-only</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_exceed</name>
<description>The value does not exceed the upper threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>exceed</name>
<description>The value exceeds the upper threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_low_warning</name>
<description>Report flag when the HPM0 original code word is lower than the lower threshold.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_lower</name>
<description>The value is not lower than the lower threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>lower</name>
<description>The value is lower than the lower threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_pc_record1</name>
<description>Reported value of the HPM0 original code word (the last historical value).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm0_pc_valid</name>
<description>HPM0 output validity indicator.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>last_value</name>
<description>the last read value of [hpm0_pc_record0].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>current_value</name>
<description> the current read value of [hpm0_pc_record0].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm0_pc_record0</name>
<description>Reported value of the HPM0 original code word (current value).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC24</name>
<description>PERI_PMC24 is the HPM0 original code word and RCC code report register.</description>
<addressOffset>0x0060</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>hpm0_rcc</name>
<description>RCC code output by the HPM0.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>5</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm0_pc_record3</name>
<description>Reported value of the HPM0 original code word (last three historical values).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm0_pc_record2</name>
<description>Reported value of the HPM0 original code word (last two historical values).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC25</name>
<description>PERI_PMC25 is the HPM0 original code pattern threshold configuration register.</description>
<addressOffset>0x0064</addressOffset>
<size>32</size>
<resetValue>0x01000000</resetValue>
<fields>
<field>
<name>hpm0_monitor_period</name>
<description>HPM0 cyclic monitoring period.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x01</resetMask>
</field>
<field>
<name>hpm0_lowlimit</name>
<description>Lower limit of the HPM0 original code pattern.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>11</bitWidth>
<resetMask>0x01</resetMask>
</field>
<field>
<name>hpm0_uplimit</name>
<description>Upper limit of the HPM0 original code pattern.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC26</name>
<description>PERI_PMC26 is the HPM1 clock and soft reset control register.</description>
<addressOffset>0x0068</addressOffset>
<size>32</size>
<resetValue>0x0000000A</resetValue>
<fields>
<field>
<name>hpm1_rst_req</name>
<description>HPM1 reset request enable.</description>
<access>read-write</access>
<bitOffset>27</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_monitor_en</name>
<description>HPM1 cyclic monitoring enable.</description>
<access>read-write</access>
<bitOffset>26</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_bypass</name>
<description>Single-time HPM1 enable signal.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>by_monitor</name>
<description>The start signal of HPM1 is determined by [hpm1_monitor_en].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>by_peripheral</name>
<description>The start signal of the HPM1 is determined by [hpm1_en].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_en</name>
<description>Single HPM1 measurement enable.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>retained</name>
<description>The value is retained 0 before a process is started.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>started</name>
<description>A frequency modulation process is started.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_offset</name>
<description>Offset after the HPM1 original code word is shifted rightwards.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_shift</name>
<description>Number of right shift bits of the HPM1 original code word.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_div</name>
<description>HPM1 clock divider.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC27</name>
<description>PERI_PMC27 is the HPM1 original code word and alarm information register.</description>
<addressOffset>0x006C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>hpm1_up_warning</name>
<description>Report flag when the HPM1 original code word exceeds the upper threshold.</description>
<access>read-only</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_exceed</name>
<description>The value does not exceed the upper threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>exceed</name>
<description>The value exceeds the upper threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_low_warning</name>
<description>Report flag when the HPM1 original code word is lower than the lower threshold.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_lower</name>
<description>The value is not lower than the lower threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>lower</name>
<description>The value is lower than the lower threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_pc_record1</name>
<description>Reported value of the HPM1 original code word (last historical value).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_pc_valid</name>
<description>HPM1 output validity indicator.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>last_value</name>
<description>the last read value of [hpm1_pc_record0].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>current_value</name>
<description> the current read value of [hpm1_pc_record0].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm1_pc_record0</name>
<description>Reported value of the HPM1 original code word (current value).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC28</name>
<description>PERI_PMC28 is the HPM1 original code word and RCC code report register.</description>
<addressOffset>0x0070</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>hpm1_rcc</name>
<description>RCC code output by HPM1.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>5</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_pc_record3</name>
<description>Reported value of the HPM1 original code word (last three historical values).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_pc_record2</name>
<description>Reported value of the HPM1 original code word (last two historical values).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC29</name>
<description>PERI_PMC29 is the HPM1 original code pattern threshold configuration register.</description>
<addressOffset>0x0074</addressOffset>
<size>32</size>
<resetValue>0x01000000</resetValue>
<fields>
<field>
<name>hpm1_rcc</name>
<description>hpm1_monitor_period.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x1</resetMask>
</field>
<field>
<name>hpm1_lowlimit</name>
<description>Lower limit of the HPM1 original code pattern.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>12</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm1_uplimit</name>
<description>Upper limit of the HPM1 original code pattern.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC30</name>
<description>HPM2 reset request enable.</description>
<addressOffset>0x0078</addressOffset>
<size>32</size>
<resetValue>0x0000000A</resetValue>
<fields>
<field>
<name>hpm2_rst_req</name>
<description>hpm1_monitor_period.</description>
<access>read-write</access>
<bitOffset>27</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_monitor_en</name>
<description>HPM2 cyclic monitoring enable.</description>
<access>read-write</access>
<bitOffset>26</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_bypass</name>
<description>Single-time HPM2 enable signal.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>by_monitor</name>
<description>The start signal of HPM2 is determined by [hpm2_monitor_en].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>by_peripheral</name>
<description>The start signal of the HPM2 is determined by [hpm2_en].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_en</name>
<description>Single HPM2 measurement enable.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>retained</name>
<description>The value is retained 0 before a process is started.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>started</name>
<description>A frequency modulation process is started.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_offset</name>
<description>Offset after the HPM2 original code word is shifted rightwards.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm2_shift</name>
<description>Number of right shift bits of the original HPM2 code word.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm2_div</name>
<description>HPM2 clock divider.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC31</name>
<description>PERI_PMC31 is the HPM2 original code word and alarm information register.</description>
<addressOffset>0x007C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>hpm2_up_warning</name>
<description>Report flag when the HPM2 original code word exceeds the upper threshold.</description>
<access>read-only</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_exceed</name>
<description>The value does not exceed the upper threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>exceed</name>
<description>The value exceeds the upper threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_low_warning</name>
<description>Report flag when the HPM2 original code word is lower than the lower threshold.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_lower</name>
<description>The value is not lower than the lower threshold.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>lower</name>
<description>The value is lower than the lower threshold.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_pc_record1</name>
<description>Reported value of the HPM2 original code word (last historical value).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm2_pc_valid</name>
<description>HPM2 output validity indicator.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>last_value</name>
<description>the last read value of [hpm2_pc_record0].</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>current_value</name>
<description>the current read value of [hpm2_pc_record0].</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>hpm2_pc_record0</name>
<description>Reported value of the HPM2 original code word (current value).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC32</name>
<description>PERI_PMC32 is the HPM2 original code word and RCC code report register.</description>
<addressOffset>0x0080</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>hpm2_rcc</name>
<description>RCC code output by HPM2.</description>
<access>read-only</access>
<bitOffset>24</bitOffset>
<bitWidth>5</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm2_pc_record3</name>
<description>Reported value of the HPM2 original code word (last three historical values).</description>
<access>read-only</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>hpm2_pc_record2</name>
<description>Reported value of the HPM2 original code word (last two historical values).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>PERI_PMC33</name>
<description>PERI_PMC33 is the HPM2 original code pattern threshold configuration register.</description>
<addressOffset>0x0084</addressOffset>
<size>32</size>
<resetValue>0x01000000</resetValue>
<fields>
<field>
<name>hpm2_monitor_period</name>
<description>HPM2 cyclic monitoring period.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x1</resetMask>
</field>
<field>
<name>hpm2_lowlimit</name>
<description>Lower limit of the HPM2 original code pattern.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x1</resetMask>
</field>
<field>
<name>hpm2_uplimit</name>
<description>Upper limit of the HPM2 original code pattern.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>10</bitWidth>
<resetMask>0x1</resetMask>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- I2C0 -->
<peripheral>
<name>I2C0</name>
<description>Inter-Integrated Circuit Bus 0</description>
<groupName>I2C</groupName>
<baseAddress>0x40018000</baseAddress>
<interrupt>
<name>I2C0</name>
<description>I2C0 interrupt</description>
<value>41</value>
</interrupt>
<registers>
<register>
<name>I2C_CTRL</name>
<description>I2C_CTRL is the I2C control register, used to enable I2C peripheral and mask interrupts.</description>
<addressOffset>0x00</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>int_txfifo_over_mask</name>
<description>TX FIFO data completion interrupt mask.</description>
<access>read-write</access>
<bitOffset>12</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>mode_ctrl</name>
<description>I2C operating mode select.</description>
<access>read-write</access>
<bitOffset>11</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_used</name>
<description>The FIFO transmission mode is not used.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>used</name>
<description>The FIFO transmission mode is used.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_txtide_mask</name>
<description>TX FIFO overflow interrupt mask.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_rxtide_mask</name>
<description>RX FIFO overflow interrupt mask.</description>
<access>read-write</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>i2c_en</name>
<description>I2C enable.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_mask</name>
<description>General I2C interrupt mask.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_start_mask</name>
<description>TX completion interrupt mask for the start condition of the master.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_stop_mask</name>
<description>TX completion interrupt mask for the stop condition of the master.</description>
<access>read-write</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_tx_mask</name>
<description>Master TX interrupt mask.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_rx_mask</name>
<description>Master RX interrupt mask.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_ack_err_mask</name>
<description>Slave ACK error interrupt mask.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_arb_loss_mask</name>
<description>Bus arbitration failure interrupt mask.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_done_mask</name>
<description>Bus transfer completion interrupt mask.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>I2C_COM</name>
<description>I2C_COM is the I2C command register. It is used to configure the commands for the working of the I2C module.</description>
<addressOffset>0x04</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>op_ack</name>
<description>Whether the master sends an ACK as a receiver.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>yes</name>
<description>yes.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>no</name>
<description>no.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>op_start</name>
<description>Generation of the start condition.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>complete</name>
<description>The operation is complete.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The operation is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>op_rd</name>
<description>Generation of the read operation.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>complete</name>
<description>The operation is complete.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The operation is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>op_we</name>
<description>Generation of the write operation.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>complete</name>
<description>The operation is complete.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The operation is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>op_stop</name>
<description>Generation of the stop condition.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>complete</name>
<description>The operation is complete.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>The operation is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>I2C_ICR</name>
<description>I2C_ICR is the I2C interrupt clear register.</description>
<addressOffset>0x08</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>clr_int_txfifo_over</name>
<description>TX FIFO data completion interrupt clear.</description>
<access>write-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_txtide</name>
<description>TX FIFO overflow interrupt clear.</description>
<access>write-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_rxtide</name>
<description>RX FIFO overflow interrupt clear.</description>
<access>write-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_start</name>
<description>TX completion interrupt clear for the start condition of the master.</description>
<access>write-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_stop</name>
<description>TX completion interrupt clear for the stop condition of the master.</description>
<access>write-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_tx</name>
<description>Master TX interrupt clear.</description>
<access>write-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_rx</name>
<description>Master RX interrupt clear.</description>
<access>write-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_ack_err</name>
<description>Slave ACK error interrupt clear.</description>
<access>write-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_arb_loss</name>
<description>Bus arbitration failure interrupt clear.</description>
<access>write-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>clr_int_done</name>
<description>Bus transfer completion interrupt clear.</description>
<access>write-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>I2C_SR</name>
<description>I2C_SR is the I2C module status register. It is used to read the operating status of the I2C module.</description>
<addressOffset>0x0C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>int_txfifo_over</name>
<description>TX FIFO data completion interrupt.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_txtide</name>
<description>TX FIFO overflow interrupt.</description>
<access>read-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_rxtide</name>
<description>RX FIFO overflow interrupt.</description>
<access>read-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>bus_busy</name>
<description>Bus busy flag.</description>
<access>read-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>idle</name>
<description>idle.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>busy</name>
<description>busy.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_start</name>
<description>TX completion interrupt for the start condition of the master.</description>
<access>read-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_stop</name>
<description>TX completion interrupt for the stop condition of the master.</description>
<access>read-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_tx</name>
<description>Master TX interrupt flag.</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_rx</name>
<description>Master RX interrupt flag.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_ack_err</name>
<description>Slave ACK error interrupt flag.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_arb_loss</name>
<description>Failure interrupt flag for the bus arbitration.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>int_done</name>
<description>Bus transfer completion interrupt flag.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_generated</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>generated</name>
<description>An interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>I2C_SCL_H</name>
<description>I2C_SCL_H is the I2C SCL high-level cycle count register. It is used to configure the number of SCL high-level cycles when the I2C module is working.</description>
<addressOffset>0x10</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>scl_h</name>
<description>Number of SCL high-level cycles. The actual number of SCL high-level cycles is 2 times the configured value.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0x0000</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_SCL_L</name>
<description>I2C_SCL_L is the I2C SCL low-level cycle count register. It is used to configure the number of SCL low-level cycles when the I2C module is working.</description>
<addressOffset>0x14</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>scl_l</name>
<description>Number of SCL low-level cycles. The actual number of SCL low-level cycles is 2 times the configured value.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0x0000</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_TXR</name>
<description>I2C_TXR is the I2C TX data register. It is used to configure the data to be transmitted when the I2C module is working.</description>
<addressOffset>0x18</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>i2c_txr</name>
<description>Data TX by the master.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x0000</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_RXR</name>
<description>I2C_RXR is the I2C RX data register. It is used for the master to receive data from the slave.</description>
<addressOffset>0x1C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>i2c_rxr</name>
<description>Data received by the master.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x0000</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_FIFOSTATUS</name>
<description>I2C_FIFOSTATUS is the fifo status register.</description>
<addressOffset>0x20</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rxfe</name>
<description>Is receive FIFO empty?</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>not empty.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>empty.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxff</name>
<description>Is receive FIFO full?</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>not full.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>full.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txfe</name>
<description>Is transmit FIFO empty?</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>not empty.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>empty.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txff</name>
<description>Is transmit FIFO full?</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>not full.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>full.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>I2C_TXCOUNT</name>
<description>I2C_TXCOUNT is the register for transmit FIFO data count.</description>
<addressOffset>0x24</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>txcount</name>
<description>Read this register to return the data byte count in transmit FIFO, write any value to this register to clear the transmit FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x00</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_RXCOUNT</name>
<description>I2C_RXCOUNT is the register for receive FIFO data count.</description>
<addressOffset>0x28</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rxcount</name>
<description>Read this register to return the data byte count in receive FIFO, write any value to this register to clear the receive FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x00</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_RXTIDE</name>
<description>I2C_RXTIDE is the register for receive FIFO overflow limit.</description>
<addressOffset>0x2c</addressOffset>
<size>32</size>
<resetValue>0x00000001</resetValue>
<fields>
<field>
<name>rxtide</name>
<description>Sets the trigger limit in receive FIFO for int_rxtide interrupt. When character count in receive FIFO &gt;= rxtide, will trigger FIFO overflow interrupt.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x01</resetMask>
</field>
</fields>
</register>
<register>
<name>I2C_TXTIDE</name>
<description>I2C_TXTIDE is the register for transmit FIFO overflow limit. When character count in transmit FIFO &lt;= txtide, will trigger FIFO overflow interrupt.</description>
<addressOffset>0x30</addressOffset>
<size>32</size>
<resetValue>0x00000001</resetValue>
<fields>
<field>
<name>rxtide</name>
<description>Sets the trigger limit in transmit FIFO for int_txtide interrupt.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x01</resetMask>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- I2C0 -->
<!-- I2C1 -->
<peripheral derivedFrom="I2C0">
<name>I2C1</name>
<description>Inter-Integrated Circuit Bus 1</description>
<baseAddress>0x40019000</baseAddress>
<interrupt>
<name>I2C1</name>
<description>I2C1 interrupt</description>
<value>42</value>
</interrupt>
</peripheral>
<!-- I2C1 -->
<!-- I2S -->
<peripheral>
<name>I2S0</name>
<groupName>I2S</groupName>
<description>The I2S module works as a slave device on the advanced peripheral bus (APB) while a master device on the I2S bus.</description>
<baseAddress>0xF8CC0000</baseAddress>
<interrupt>
<name>I2S0</name>
<description>I2S0 interrupt</description>
<value>59</value>
</interrupt>
<registers>
<register>
<name>AUDIO_AIAO_CTRL</name>
<description>AUDIO_AIAO_CTRL is the control register.</description>
<addressOffset>0x00</addressOffset>
<size>32</size>
<resetValue>0x00709000</resetValue>
<fields>
<field>
<name>tx_rerror_int_mask</name>
<description>TX FIFO underflow interrupt enable.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_werror_int_mask</name>
<description>RX FIFO overflow interrupt enable.</description>
<access>read-write</access>
<bitOffset>24</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<!-- other value 8 -->
<field>
<name>aiao_fsclk_div</name>
<description>Frequency ratio of BCLK to WS.</description>
<access>read-write</access>
<bitOffset>21</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x3</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>div_16</name>
<description>16.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>div_32</name>
<description>32.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>div_48</name>
<description>48.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>div_64</name>
<description>64.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>div_128</name>
<description>128.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>div_256</name>
<description>256.</description>
<value>5</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>aiao_bclk_div</name>
<description>Frequency ratio of MCLK to BCLK.</description>
<access>read-write</access>
<bitOffset>17</bitOffset>
<bitWidth>4</bitWidth>
<resetMask>0x3</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>div_1</name>
<description>1.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>div_3</name>
<description>3.</description>
<value>0x1</value>
</enumeratedValue>
<enumeratedValue>
<name>div_2</name>
<description>2.</description>
<value>0x2</value>
</enumeratedValue>
<enumeratedValue>
<name>div_4</name>
<description>4.</description>
<value>0x3</value>
</enumeratedValue>
<enumeratedValue>
<name>div_6</name>
<description>6.</description>
<value>0x4</value>
</enumeratedValue>
<enumeratedValue>
<name>div_8</name>
<description>8.</description>
<value>0x5</value>
</enumeratedValue>
<enumeratedValue>
<name>div_12</name>
<description>12.</description>
<value>0x6</value>
</enumeratedValue>
<enumeratedValue>
<name>div_16</name>
<description>16.</description>
<value>0x7</value>
</enumeratedValue>
<enumeratedValue>
<name>div_24</name>
<description>24.</description>
<value>0x8</value>
</enumeratedValue>
<enumeratedValue>
<name>div_32</name>
<description>32.</description>
<value>0x9</value>
</enumeratedValue>
<enumeratedValue>
<name>div_48</name>
<description>48.</description>
<value>0xA</value>
</enumeratedValue>
<enumeratedValue>
<name>div_64</name>
<description>64.</description>
<value>0xB</value>
</enumeratedValue>
<enumeratedValue>
<name>div_96</name>
<description>96.</description>
<value>0xC</value>
</enumeratedValue>
<!-- other values are reserved -->
</enumeratedValues>
</field>
<field>
<name>dma_tx_level</name>
<description>TX FIFO threshold.</description>
<access>read-write</access>
<bitOffset>14</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>level_2</name>
<description>2.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>level_4</name>
<description>4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>level_8</name>
<description>8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>level_12</name>
<description>12.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>level_14</name>
<description>14.</description>
<value>4</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dma_rx_level</name>
<description>RX FIFO threshold.</description>
<access>read-write</access>
<bitOffset>11</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>level_2</name>
<description>2.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>level_4</name>
<description>4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>level_8</name>
<description>8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>level_12</name>
<description>12.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>level_14</name>
<description>14.</description>
<value>4</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>aiao_ck_gt_en</name>
<description>Low power consumption enable.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>Clock disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>Clock enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_level_int_mask</name>
<description>TX threshold interrupt enable.</description>
<access>read-write</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_unfull_int_mask</name>
<description>TX unfull interrupt enable.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_level_int_mask</name>
<description>RX threshold interrupt enable.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_unempty_int_mask</name>
<description>RX non-empty interrupt enable.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dma_tx_en</name>
<description>DMA TX enable.</description>
<access>read-write</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dma_rx_en</name>
<description>DMA RX enable.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>bclk_inv_en</name>
<description>Output BCLK phase reverse enable.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_invert</name>
<description>The output BCLK phase does not change.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>invert</name>
<description>The Output BCLK phase is inverted.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_en</name>
<description>TX enable.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_en</name>
<description>RX enable.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>data_bit</name>
<description>Bit width.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>width_16</name>
<description>16-bit.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>width_24</name>
<description>24-bit.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_RX_FIFO_INT_CLR</name>
<description>AUDIO_AIAO_RX_FIFO_INT_CLR is the RX_FIFO interrupt clear register.</description>
<addressOffset>0x00</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>rx_fifo_int_clr</name>
<description>RX FIFO overflow interrupt clear.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_TX_FIFO_INT_CLR</name>
<description>AUDIO_AIAO_TX_FIFO_INT_CLR is the ATX_FIFO interrupt clear register.</description>
<addressOffset>0x0008</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>tx_fifo_int_clr</name>
<description>TX FIFO underflow interrupt clear.</description>
<access>read-write</access>
<bitOffset>25</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_cleared</name>
<description>not cleared.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cleared</name>
<description>cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_BCLK_CNT</name>
<description>AUDIO_AIAO_BCLK_CNT is the BCLK_CNT register.</description>
<addressOffset>0x000C</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>bclk_cnt</name>
<description>Debug register.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>32</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_INT</name>
<description>AUDIO_AIAO_INT is the interrupt register.</description>
<addressOffset>0x0010</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>tx_rerror_int</name>
<description>TX FIFO overflow interrupt source flag (with mask).</description>
<access>read-only</access>
<bitOffset>11</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_rerror_int_unmask</name>
<description>TX FIFO overflow interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_level_int</name>
<description>TX FIFO threshold interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_level_int_unmask</name>
<description>TX FIFO threshold interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_unfull_int</name>
<description>TX FIFO unfull interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tx_unfull_int_unmask</name>
<description>TX FIFO unfull interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_werror_int</name>
<description>RX FIFO overflow interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_werror_int_unmask</name>
<description>RX FIFO overflow interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_level_int</name>
<description>RX FIFO threshold interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_level_int_unmask</name>
<description>RX FIFO threshold interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_unempty_int</name>
<description>RX FIFO non-empty interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rx_unempty_int_unmask</name>
<description>RX FIFO non-empty interrupt source flag (without mask).</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_DMA_WR</name>
<description>AUDIO_AIAO_DMA_WR is the DMA write address register.</description>
<addressOffset>0x0014</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>dma_wr_addr</name>
<description>The DMA writes data to the AIAO through this address.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>32</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>AUDIO_AIAO_DMA_RD</name>
<description>AUDIO_AIAO_DMA_RD is the DMA read address register.</description>
<addressOffset>0x0018</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>dma_rd_addr</name>
<description>The DMA reads data from the AIAO through this address.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>32</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- I2S --><!-- PWM0 -->
<peripheral>
<name>PWM0</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040000</baseAddress>
<registers>
<register>
<name>PWM_EN</name>
<description>PWM_EN is the PWM enable register.</description>
<addressOffset>0x00</addressOffset>
<size>32</size>
<resetValue>0x1</resetValue>
<fields>
<field>
<name>pwm_en</name>
<description>PWM function enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.The pwm_out is always 0.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>PWM_START</name>
<description>PWM_START is the PWM configuration enforce register.</description>
<addressOffset>0x04</addressOffset>
<size>32</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>pwm_start</name>
<description>PWM configuration enforce register.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>PWM_FREQ</name>
<description>PWM_FREQ is the PWM frequency control count value register.</description>
<addressOffset>0x08</addressOffset>
<size>32</size>
<resetValue>0x000005DC</resetValue>
<fields>
<field>
<name>pwm_freq</name>
<description>PWM frequency control count value.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0x05DC</resetMask>
</field>
</fields>
</register>
<register>
<name>PWM_DUTY</name>
<description>PWM_DUTY is the PWM duty cycle count value register.</description>
<addressOffset>0x0C</addressOffset>
<size>32</size>
<resetValue>0x000002EE</resetValue>
<fields>
<field>
<name>pwm_duty</name>
<description>PWM duty cycle control count value.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0x02EE</resetMask>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- PWM0 -->
<!-- PWM1 -->
<peripheral derivedFrom="PWM0">
<name>PWM1</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040100</baseAddress>
</peripheral>
<!-- PWM1 -->
<!-- PWM2 -->
<peripheral derivedFrom="PWM0">
<name>PWM2</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040200</baseAddress>
</peripheral>
<!-- PWM2 -->
<!-- PWM3 -->
<peripheral derivedFrom="PWM0">
<name>PWM3</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040300</baseAddress>
</peripheral>
<!-- PWM3 -->
<!-- PWM4 -->
<peripheral derivedFrom="PWM0">
<name>PWM4</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040400</baseAddress>
</peripheral>
<!-- PWM4 -->
<!-- PWM5 -->
<peripheral derivedFrom="PWM0">
<name>PWM5</name>
<description>The PWM module is used to generate PWM signals and adjust the illuminator brightness.</description>
<baseAddress>0x40040500</baseAddress>
</peripheral>
<!-- PWM5 --><!-- SPI0 -->
<peripheral>
<name>SPI0</name>
<description>Serial peripheral interface 0</description>
<groupName>SPI</groupName>
<baseAddress>0x40058000</baseAddress>
<interrupt>
<name>SPI0</name>
<description>SPI0 interrupt</description>
<value>43</value>
</interrupt>
<registers>
<register>
<name>SPICR0</name>
<description>SPICR0 is SPI control register 0.</description>
<addressOffset>0x00</addressOffset>
<size>16</size>
<resetValue>0x00000000</resetValue>
<fields>
<field>
<name>scr</name>
<description>Serial clock rate, ranging from 0 to 255.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x00</resetMask>
</field>
<field>
<name>sph</name>
<description>SPICLKOUT phase.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>spo</name>
<description>SPICLKOUT polarity.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
</field>
<field>
<name>frf</name>
<description>Frame format select.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>motorola_spi</name>
<description>Motorola SPI frame format.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>ti_synchronous</name>
<description>TI synchronous serial frame.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>national_microwire</name>
<description>National Microwire frame format.</description>
<value>2</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dss</name>
<description>Data bit width.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>4</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>width_4</name>
<description>4 bits.</description>
<value>0x3</value>
</enumeratedValue>
<enumeratedValue>
<name>width_5</name>
<description>5 bits.</description>
<value>0x4</value>
</enumeratedValue>
<enumeratedValue>
<name>width_6</name>
<description>6 bits.</description>
<value>0x5</value>
</enumeratedValue>
<enumeratedValue>
<name>width_7</name>
<description>7 bits.</description>
<value>0x6</value>
</enumeratedValue>
<enumeratedValue>
<name>width_8</name>
<description>8 bits.</description>
<value>0x7</value>
</enumeratedValue>
<enumeratedValue>
<name>width_9</name>
<description>9 bits.</description>
<value>0x8</value>
</enumeratedValue>
<enumeratedValue>
<name>width_10</name>
<description>10 bits.</description>
<value>0x9</value>
</enumeratedValue>
<enumeratedValue>
<name>width_11</name>
<description>11 bits.</description>
<value>0xA</value>
</enumeratedValue>
<enumeratedValue>
<name>width_12</name>
<description>12 bits.</description>
<value>0xB</value>
</enumeratedValue>
<enumeratedValue>
<name>width_13</name>
<description>13 bits.</description>
<value>0xC</value>
</enumeratedValue>
<enumeratedValue>
<name>width_14</name>
<description>14 bits.</description>
<value>0xD</value>
</enumeratedValue>
<enumeratedValue>
<name>width_15</name>
<description>15 bits.</description>
<value>0xE</value>
</enumeratedValue>
<enumeratedValue>
<name>width_16</name>
<description>16 bits.</description>
<value>0xF</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPICR1</name>
<description>SPICR1 is SPI control register 1.</description>
<addressOffset>0x004</addressOffset>
<size>16</size>
<resetValue>0x7F00</resetValue>
<fields>
<field>
<name>bigend</name>
<description>Data endian mode.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>le</name>
<description>little endian.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>be</name>
<description>big endian.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>ms</name>
<description>Master or slave mode.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>master</name>
<description>master mode (default value).</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>slave</name>
<description>slave mode.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>sse</name>
<description>SPI enable.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>lbm</name>
<description>Set loopback mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>normal</name>
<description>The normal serial port operation is enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>outloop</name>
<description>outloop mode.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIDR</name>
<description>SPIDR is the SPI TX/RX data register.</description>
<access>read-write</access>
<addressOffset>0x008</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
</register>
<register>
<name>SPISR</name>
<description>SPISR is the SPI status register.</description>
<addressOffset>0x00C</addressOffset>
<size>16</size>
<resetValue>0x0003</resetValue>
<fields>
<field>
<name>bsy</name>
<description>SPI busy indicator.</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>idle</name>
<description>idle.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>busy</name>
<description>busy.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rff</name>
<description>Whether the RX FIFO is full.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>no.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>full.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rne</name>
<description>Whether the RX FIFO is empty.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>no.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>yes.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tnf</name>
<description>Whether the TX FIFO is full.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>no.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>full.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tfe</name>
<description>Whether the TX FIFO is empty.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>no.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>yes.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPICPSR</name>
<description>SPICPSR is the SPI clock frequency division register..</description>
<addressOffset>0x010</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>cpsdvsr</name>
<description>Clock divider.The value must be an even number ranging from 2 to 254.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x00</resetMask>
</field>
</fields>
</register>
<register>
<name>SPIIMSC</name>
<description>SPIIMSC is the SPI interrupt mask register.</description>
<addressOffset>0x014</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>txim</name>
<description>Interrupt mask when the TX FIFO is half empty or less.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxim</name>
<description>Whether the RX FIFO is full.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtim</name>
<description>RX timeout interrupt mask.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rorim</name>
<description>RX FIFO overflow interrupt mask.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIRIS</name>
<description>SPIRIS is the raw interrupt status register.</description>
<addressOffset>0x018</addressOffset>
<size>16</size>
<resetValue>0x0008</resetValue>
<fields>
<field>
<name>txris</name>
<description>Raw TX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxris</name>
<description>Raw RX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtris</name>
<description>Raw RX timeout interrupt status.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rorris</name>
<description>Raw RX overflow interrupt status.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIMIS</name>
<description>SPIMIS is the SPI masked interrupt status register.</description>
<addressOffset>0x01C</addressOffset>
<size>16</size>
<resetValue>0x0008</resetValue>
<fields>
<field>
<name>txmis</name>
<description>Masked TX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxmis</name>
<description>Masked RX FIFO interrupt status.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtmis</name>
<description>Masked RX timeout interrupt state.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated..</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rormis</name>
<description>Masked RX overflow interrupt state.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated..</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>The interrupt is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIICR</name>
<description>SPIICR is the SPI interrupt clear register.</description>
<addressOffset>0x020</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>rtic</name>
<description>RX timeout interrupt clear.</description>
<access>write-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>Writing 1 clears the interrupt.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>roric</name>
<description>RX overflow interrupt clear.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>interrupt cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIDMACR</name>
<description>SPIDMACR is an SPI DMA enable register.</description>
<addressOffset>0x024</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>dmatxen</name>
<description>SPI DMA TX enable.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dmarxen</name>
<description>SPI DMA RX enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPITXFIFOCR</name>
<description>SPITXFIFOCR is the SPI TX FIFO control register.</description>
<addressOffset>0x028</addressOffset>
<size>16</size>
<resetValue>0x0009</resetValue>
<fields>
<field>
<name>txintsize</name>
<description>Threshold for triggering a TX FIFO interrupt.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_1</name>
<description>1.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>16.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>32.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_64</name>
<description>64.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_128</name>
<description>128.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_192</name>
<description>192.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dmatxbrsizepclk</name>
<description>Configures the burst request of the TX FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_255</name>
<description>The threshold level is 255.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_252</name>
<description>The threshold level is 252.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_248</name>
<description>The threshold level is 248.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_240</name>
<description>The threshold level is 240.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_224</name>
<description>The threshold level is 224.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_192</name>
<description>The threshold level is 192.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_128</name>
<description>The threshold level is 128.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_64</name>
<description>The threshold level is 64.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIRXFIFOCR</name>
<description>SPIRXFIFOCR is the SPI RX FIFO control register.</description>
<addressOffset>0x02C</addressOffset>
<size>16</size>
<resetValue>0x0009</resetValue>
<fields>
<field>
<name>rxintsize</name>
<description>Threshold for triggering an RX FIFO interrupt.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold2552</name>
<description>255.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_252</name>
<description>252.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_248</name>
<description>248.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_240</name>
<description>240.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_224</name>
<description>224.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_192</name>
<description>192.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_128</name>
<description>128.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>32.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dmarxbrsizepclk</name>
<description>Configures the burst request of the RX FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_1</name>
<description>The threshold level is 1.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>The threshold level is 4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>The threshold level is 8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>The threshold level is 16.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>The threshold level is 32.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_64</name>
<description>The threshold level is 64.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_128</name>
<description>The threshold level is 128.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_192</name>
<description>The threshold level is 192.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- SPI0 -->
<!-- SPI1 -->
<peripheral derivedFrom="SPI0">
<name>SPI1</name>
<description>Serial peripheral interface 1</description>
<groupName>SPI</groupName>
<baseAddress>0x40059000</baseAddress>
<interrupt>
<name>SPI1</name>
<description>SPI1 interrupt</description>
<value>44</value>
</interrupt>
<registers>
<register>
<name>SPITXFIFOCR</name>
<description>SPITXFIFOCR is the SPI TX FIFO control register.</description>
<addressOffset>0x028</addressOffset>
<size>16</size>
<resetValue>0x0009</resetValue>
<fields>
<field>
<name>txintsize</name>
<description>Threshold for triggering a TX FIFO interrupt.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_1</name>
<description>1.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>16.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>32.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_48</name>
<description>48.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_56</name>
<description>56.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_64</name>
<description>64.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dmatxbrsizepclk</name>
<description>Configures the burst request of the TX FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_63</name>
<description>The threshold level is 63.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_60</name>
<description>The threshold level is 60.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_48</name>
<description>The threshold level is 48.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>The threshold level is 32.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>The threshold level is 16.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>The threshold level is 8.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>The threshold level is 4.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_1</name>
<description>The threshold level is 1.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>SPIRXFIFOCR</name>
<description>SPIRXFIFOCR is the SPI RX FIFO control register.</description>
<addressOffset>0x02C</addressOffset>
<size>16</size>
<resetValue>0x0009</resetValue>
<fields>
<field>
<name>rxintsize</name>
<description>Threshold for triggering an RX FIFO interrupt.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_65</name>
<description>65.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_62</name>
<description>62.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_48</name>
<description>48.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>32.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>16.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>8.</description>
<value>5</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>4.</description>
<value>6</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_1</name>
<description>1.</description>
<value>7</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dmarxbrsizepclk</name>
<description>Configures the burst request of the RX FIFO.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>threshold_1</name>
<description>The threshold level is 1.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_4</name>
<description>The threshold level is 4.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_8</name>
<description>The threshold level is 8.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_16</name>
<description>The threshold level is 16.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_32</name>
<description>The threshold level is 32.</description>
<value>4</value>
</enumeratedValue>
<enumeratedValue>
<name>threshold_64</name>
<description>The threshold level is 64.</description>
<value>5</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- SPI1 --><!-- UART0 -->
<peripheral>
<name>UART0</name>
<description>Universal asynchronous receiver 0</description>
<groupName>UART</groupName>
<baseAddress>0x40008000</baseAddress>
<interrupt>
<name>UART0</name>
<description>UART0 interrupt</description>
<value>38</value>
</interrupt>
<registers>
<register>
<name>UART_DR</name>
<description>UART_DR is the UART data register.</description>
<addressOffset>0x000</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>oe</name>
<description>Overflow error status.</description>
<access>read-only</access>
<bitOffset>11</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No overflow error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>An overflow error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>be</name>
<description>Break error status.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No break error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>A break error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>pe</name>
<description>Parity error status.</description>
<access>read-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No parity error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>A parity error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>fe</name>
<description>Frame error status.</description>
<access>read-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No frame error is detected.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>A frame error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>data</name>
<description>Data to be transmitted and received.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x00</resetMask>
</field>
</fields>
</register>
<register>
<name>UART_RSR</name>
<description>UART_RSR is the RX status register or error clear register.</description>
<addressOffset>0x004</addressOffset>
<size>8</size>
<resetValue>0x00</resetValue>
<fields>
<field>
<name>oe</name>
<description>Overflow error status and clear.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No overflow error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>An overflow error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>be</name>
<description>OBreak error status and clear.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No break error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>A break error occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>pe</name>
<description>Parity error status and clear.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No parity error occurs.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>A parity error of the received data occurs.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>fe</name>
<description>Frame error status and clear.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_error</name>
<description>No frame error is detected.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_error</name>
<description>An error occurs at the stop bit of the received data.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_FR</name>
<description>UART_FR is the UART flag register.</description>
<addressOffset>0x018</addressOffset>
<size>16</size>
<resetValue>0x0197</resetValue>
<fields>
<field>
<name>txfe</name>
<description>TX FIFO empty status.</description>
<access>read-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>When UART_LCR_H[fen] is set to 0:The TX holding register is not empty.When UART_LCR_H[fen] is set to 1:The TX FIFO is not empty.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>When UART_LCR_H[fen] is set to 0:The TX holding register is empty.When UART_LCR_H[fen] is set to 1:The TX FIFO is empty.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxff</name>
<description>RX FIFO full status.</description>
<access>read-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>When UART_LCR_H[fen] is set to 0:The RX holding register is not full.When UART_LCR_H[fen] is set to 1:The RX FIFO is not full.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>When UART_LCR_H[fen] is set to 0:The RX holding register is full.When UART_LCR_H[fen] is set to 1:The RX FIFO is full.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txff</name>
<description>TX FIFO full status.</description>
<access>read-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_full</name>
<description>When UART_LCR_H[fen] is set to 0:The TX holding register is not full.When UART_LCR_H[fen] is set to 1:The TX FIFO is not full.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>full</name>
<description>When UART_LCR_H[fen] is set to 0:The TX holding register is full.When UART_LCR_H[fen] is set to 1:The TX FIFO is not full.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxfe</name>
<description>RX FIFO empty status.</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_empty</name>
<description>When UART_LCR_H[fen] is set to 0:The RX holding register is not empty.When UART_LCR_H[fen] is set to 1:The RX FIFO is not empty.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>empty</name>
<description>When UART_LCR_H[fen] is set to 0:RX holding register empty.When UART_LCR_H[fen] is set to 1:The RX FIFO is empty.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>busy</name>
<description>UART busy/idle state.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>idle_or_complete</name>
<description>The UART is idle or data transmission is complete.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>busy</name>
<description>The UART is busy transmitting data.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_IBRD</name>
<description>UART_IBRD is the integral baud rate register.</description>
<addressOffset>0x024</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>bauddivint</name>
<description>Frequency divider value for the integral part of the baud rate.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>UART_FBRD</name>
<description>UART_FBRD is the fractional baud rate register.</description>
<addressOffset>0x028</addressOffset>
<size>8</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>banddivfrac</name>
<description>Frequency divider value for the fractional part of the baud rate.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>6</bitWidth>
<resetMask>0x00</resetMask>
</field>
</fields>
</register>
<register>
<name>UART_LCR_H</name>
<description>UART_LCR_H is the transfer mode control register.</description>
<addressOffset>0x02C</addressOffset>
<size>16</size>
<resetValue>0x00</resetValue>
<fields>
<field>
<name>sps</name>
<description>Parity bit enable.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>Stick Parity disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>When [pen] and [eps] are set to 1, the parity bit is transmitted and checked as 0. When [pen] is set to 1 and [eps] is set to 0, the parity bit is transmitted and checked as 1.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>wlen</name>
<description>Number of data bits in a frame to be sent or received.</description>
<access>read-write</access>
<bitOffset>5</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>len_5</name>
<description>5 bits.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>len_6</name>
<description>6 bits.</description>
<value>0x01</value>
</enumeratedValue>
<enumeratedValue>
<name>len_7</name>
<description>7 bits.</description>
<value>0x02</value>
</enumeratedValue>
<enumeratedValue>
<name>len_8</name>
<description>8 bits.</description>
<value>0x03</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>fen</name>
<description>TX/RX FIFO enable.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>stp2</name>
<description>Whether a 2-bit stop bit exists at the end of a transmitted frame.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no</name>
<description>No 2-bit stop bit exists.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>yes</name>
<description>A 2-bit stop bit exists.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>eps</name>
<description>Parity bit select during data transmission and reception.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>odd</name>
<description>odd parity generation and checking.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>even</name>
<description>even parity generation and checking.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>pen</name>
<description>Parity check select.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>The parity check is disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>The parity bit is generated at the TX end and checked at the RX end.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>brk</name>
<description>TX break select.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>brk</name>
<description>After the current data transmission is complete, the UTXD outputs low level continuously.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_CR</name>
<description>UART_CR is the UART control register..</description>
<addressOffset>0x030</addressOffset>
<size>16</size>
<resetValue>0x0300</resetValue>
<fields>
<field>
<name>ctsen</name>
<description>CTS hardware flow control enable.</description>
<access>read-write</access>
<bitOffset>15</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtsen</name>
<description>RTS hardware flow control enable.</description>
<access>read-write</access>
<bitOffset>14</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rts</name>
<description>Request transmission setting.</description>
<access>read-write</access>
<bitOffset>11</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>unchanged</name>
<description>The output signal remains unchanged.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>zero</name>
<description>The output signal is 0.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>dtr</name>
<description>Data transmission preparation setting.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>unchanged</name>
<description>The output signal remains unchanged.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>zero</name>
<description>The output signal is 0.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxe</name>
<description>UART RX enable.</description>
<access>read-write</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txe</name>
<description>UART TX enable.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>lbe</name>
<description>Loopback enable.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>The UARTTXD output is looped back to UARTRXD.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>uarten</name>
<description>UART enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_IFLS</name>
<description>UART_IFLS is the interrupt FIFO threshold select register.</description>
<addressOffset>0x034</addressOffset>
<size>16</size>
<resetValue>0x0092</resetValue>
<fields>
<field>
<name>rtsflsel</name>
<description>Hardware flow control rts_n trigger condition.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>cond_1d8</name>
<description>RX FIFO ≥ 1/8 full.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d4</name>
<description>RX FIFO ≥ 1/4 full.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d2</name>
<description>RX FIFO ≥ 1/2 full.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_3d4</name>
<description>RX FIFO ≥ 3/4 full.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_7d8</name>
<description>RX FIFO ≥ 7/8 full.</description>
<value>4</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxiflsel</name>
<description>RX interrupt FIFO threshold.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>cond_1d8</name>
<description>RX FIFO ≥ 1/8 full.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d4</name>
<description>RX FIFO ≥ 1/4 full.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d2</name>
<description>RX FIFO ≥ 1/2 full.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_3d4</name>
<description>RX FIFO ≥ 3/4 full.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_7d8</name>
<description>RX FIFO ≥ 7/8 full.</description>
<value>4</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txiflsel</name>
<description>TX interrupt FIFO threshold.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>3</bitWidth>
<resetMask>0x2</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>cond_1d8</name>
<description>RX FIFO ≥ 1/8 full.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d4</name>
<description>RX FIFO ≥ 1/4 full.</description>
<value>1</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_1d2</name>
<description>RX FIFO ≥ 1/2 full.</description>
<value>2</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_3d4</name>
<description>RX FIFO ≥ 3/4 full.</description>
<value>3</value>
</enumeratedValue>
<enumeratedValue>
<name>cond_7d8</name>
<description>RX FIFO ≥ 7/8 full.</description>
<value>4</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_IMSC</name>
<description>INT_MASK is the interrupt mask register.</description>
<addressOffset>0x038</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>oeim</name>
<description>Overflow error interrupt mask.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>beim</name>
<description>Break error interrupt mask.</description>
<access>read-write</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>peim</name>
<description>Check interrupt mask.</description>
<access>read-write</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>feim</name>
<description>Break error interrupt mask.</description>
<access>read-write</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtim</name>
<description>RX timeout interrupt mask.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txim</name>
<description>TX interrupt mask.</description>
<access>read-write</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxim</name>
<description>RX interrupt mask.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_RIS</name>
<description>UART_RIS is the raw interrupt state register.</description>
<addressOffset>0x03C</addressOffset>
<size>16</size>
<resetValue>0x000F</resetValue>
<fields>
<field>
<name>oeris</name>
<description>Raw overflow error interrupt state.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>beris</name>
<description>Raw break error interrupt state.</description>
<access>read-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>peris</name>
<description>Raw parity interrupt state.</description>
<access>read-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>feris</name>
<description>Raw error interrupt state.</description>
<access>read-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtris</name>
<description>Raw RX timeout interrupt state.</description>
<access>read-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txris</name>
<description>Raw TX interrupt state.</description>
<access>read-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxris</name>
<description>Raw RX interrupt state.</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_MIS</name>
<description>UART_MIS is the masked interrupt status register.</description>
<addressOffset>0x040</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>oemis</name>
<description>Masked overflow error interrupt state.</description>
<access>read-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>bemis</name>
<description>Masked break error interrupt state.</description>
<access>read-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>pemis</name>
<description>Masked parity interrupt state.</description>
<access>read-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>femis</name>
<description>Masked error interrupt state.</description>
<access>read-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtmis</name>
<description>Masked RX timeout interrupt state.</description>
<access>read-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txmis</name>
<description>Masked TX interrupt state.</description>
<access>read-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxmis</name>
<description>Masked RX interrupt state.</description>
<access>read-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>no_interrupt</name>
<description>No interrupt is generated.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>has_interrupt</name>
<description>An interrupt is generated.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_ICR</name>
<description>UART_ICR is the interrupt clear register.</description>
<addressOffset>0x044</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>oeic</name>
<description>Overflow error interrupt clear.</description>
<access>write-only</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>beic</name>
<description>Break error interrupt clear.</description>
<access>write-only</access>
<bitOffset>9</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>peic</name>
<description>Parity interrupt clear.</description>
<access>write-only</access>
<bitOffset>8</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>feic</name>
<description>Error interrupt clear.</description>
<access>write-only</access>
<bitOffset>7</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rtic</name>
<description>RX timeout interrupt clear.</description>
<access>write-only</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txic</name>
<description>TX interrupt clear.</description>
<access>write-only</access>
<bitOffset>5</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rxic</name>
<description>RX interrupt clear.</description>
<access>write-only</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>UART_DMACR</name>
<description>UART_DMACR is the DMA control register.</description>
<addressOffset>0x048</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>dmaonerr</name>
<description>DMA enable control for the RX channel when the UART error interrupt (UARTEINTR) occurs.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>valid</name>
<description>The request output (UARTRXDMASREQ or UARRTXDMABREQ) is valid.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>invalid</name>
<description>The request output (UARTRXDMASREQ or UARRTXDMABREQ) is invalid.</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>txdmae</name>
<description>TX FIFO DMA enable.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>RX FIFO DMA enable</name>
<description>TX FIFO DMA enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled</description>
<value>0x1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- UART0 -->
<!-- UART1 -->
<peripheral derivedFrom="UART0">
<name>UART1</name>
<description>Inter-Integrated Circuit Bus 1</description>
<baseAddress>0x40009000</baseAddress>
<interrupt>
<name>UART1</name>
<description>UART1 interrupt</description>
<value>39</value>
</interrupt>
</peripheral>
<!-- UART1 -->
<!-- UART2 -->
<peripheral derivedFrom="UART0">
<name>UART2</name>
<description>Inter-Integrated Circuit Bus 2</description>
<baseAddress>0x4000A000</baseAddress>
<interrupt>
<name>UART2</name>
<description>UART2 interrupt</description>
<value>40</value>
</interrupt>
</peripheral>
<!-- UART2 -->
<peripheral>
<name>WDT</name>
<description>Watchdog timer</description>
<baseAddress>0x40000000</baseAddress>
<registers>
<register>
<name>cr</name>
<description>WDT control register</description>
<addressOffset>0x00</addressOffset>
<access>read-write</access>
<resetValue>0x00000008</resetValue>
<fields>
<!-- [31:6]: reserved, 0x0000000 -->
<!-- <field>
<name>cr_bit5</name>
<description>Meaningless</description>
<bitRange>[5:5]</bitRange>
</field> -->
<!-- [4:2]: reserved, 0x2 -->
<field>
<name>rmod</name>
<description>Reset mode select</description>
<bitRange>[1:1]</bitRange>
<enumeratedValues>
<enumeratedValue>
<name>reset</name>
<description>A system reset is generated upon each WDT timeout.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>interrupt</name>
<description>When the first timerout occurs, the WDT generates an interrupt. If the interrupt is not cleared until the second timeout, a system reset is generated.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>en</name>
<description>WDT enable</description>
<bitRange>[0:0]</bitRange>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>Disabled</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>Enabled</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>torr</name>
<description>Timerout period register</description>
<addressOffset>0x04</addressOffset>
<access>read-write</access>
<resetValue>0x00000000</resetValue>
<fields>
<!-- [31:4]: reserved, 0x0000000 -->
<field>
<name>top</name>
<description>WDT interval (in clock cycles)</description>
<bitRange>[3:0]</bitRange>
</field>
</fields>
</register>
<register>
<name>ccvr</name>
<description>Current WDT value register</description>
<addressOffset>0x08</addressOffset>
<access>read-only</access>
</register>
<register>
<name>crr</name>
<description>Counter restart register</description>
<addressOffset>0x0C</addressOffset>
<access>write-only</access>
</register>
<register>
<name>stat</name>
<description>Interrupt state register</description>
<addressOffset>0x10</addressOffset>
<access>read-only</access>
<fields>
<field>
<name>isr</name>
<description>Masked interrupt status</description>
<bitRange>[0:0]</bitRange>
</field>
</fields>
</register>
<register>
<name>eoi</name>
<description>Interrupt clear register</description>
<addressOffset>0x14</addressOffset>
<access>read-only</access>
<fields>
<field>
<name>eoi</name>
<description>Interrupt clear. The interrupt is cleared by reading this register.</description>
<bitRange>[0:0]</bitRange>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- W_CTL -->
<peripheral>
<name>W_CTL</name>
<description>W_CTL/TSensor is the analog temperature detection IP, that is, a digital temperature sensor IP with 8-bit parallel outputs.</description>
<baseAddress>0x40028000</baseAddress>
<interrupt>
<name>TSensor</name>
<description>T-Sensor interrupt interrupt</description>
<value>46</value>
</interrupt>
<registers>
<register>
<name>RF_TEMP_MODE</name>
<description>RF_TEMP_MODE is the RF TEMP mode configuration register.</description>
<addressOffset>0x0490</addressOffset>
<size>32</size>
<resetValue>0xFF44</resetValue>
<fields>
<field>
<name>rf_over_temp_prt_hw_src</name>
<description>Hardware report source select.</description>
<access>read-write</access>
<bitOffset>6</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>rf_tsensor</name>
<description>TSensor inside the RF module reports temperature protection alarm.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>tsensor</name>
<description>TSensor reports the temperature protection alarm.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rf_over_temp_prt_polar</name>
<description>Polarity of the overtemperature protection signal.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>zero_valid</name>
<description>Logic signal 0 means over temperature signal is valid, 1 is invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>one_valid</name>
<description>Logic signal 1 means over temperature signal is valid, 0 is invalid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rf_over_temp_prt_sel</name>
<description>Overtemperature protection signal select.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>hardware</name>
<description>hardware control.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>manual</name>
<description>manual control.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rf_over_temp_prt_man</name>
<description>Overtemperature protection manual control signal.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>valid</name>
<description>valid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>RF_TEMP_STS</name>
<description>RF_TEMP_STS is the RF TEMP overtemperature status register.</description>
<addressOffset>0x04B4</addressOffset>
<size>16</size>
<resetValue>0x000E</resetValue>
<fields>
<field>
<name>tsensor_overtemp_prt</name>
<description>TSensor overtemperature protection control.</description>
<access>read-only</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>working</name>
<description>normal working mode.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>rf_over_temp_prt</name>
<description>Overtemperature protection control signal.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x1</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>working</name>
<description>normal working mode.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>RF_OVER_TEMP_INT_EN</name>
<description>RF_OVER_TEMP_INT_EN is the RF TEMP overtemperature interrupt enable register.</description>
<addressOffset>0x04C0</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>rf_over_temp_int_en</name>
<description>Overtemperature interrupt enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<!-- ??? -->
<register>
<name>RF_OVER_TEMP_INT_CLR</name>
<description>RF_OVER_TEMP_INT_CLR is the RF TEMP overtemperature interrupt clear register.</description>
<addressOffset>0x04C4</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>rf_over_temp_int_clr</name>
<description>RF overtemperature protection interrupt clear signal.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>interrupt cleared.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>RF_OVER_TEMP_INT_STS</name>
<description>RF_OVER_TEMP_INT_STS is the RF TEMP overtemperature interrupt register.</description>
<addressOffset>0x04C8</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>rf_over_temp_int</name>
<description>RF overtemperature protection interrupt status.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_START</name>
<description>TSENSOR_START is the TSensor start register.</description>
<addressOffset>0x0500</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_start</name>
<description>Temperature code update in automatic mode.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>start</name>
<description>If TSENSOR_AUTO_STS[tsensor_data_auto] is 1, the temperature is valid.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_CTRL</name>
<description>TSENSOR_CTRL is the TSensor control register.</description>
<addressOffset>0x0504</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>gate_tsensor_vddio_polar</name>
<description>TSensor power gating polarity.</description>
<access>read-write</access>
<bitOffset>3</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>one_enable</name>
<description>The TSensor IP is enabled at 1 and disabled at 0.</description>
<value>0</value>
</enumeratedValue>
<enumeratedValue>
<name>zero_enable</name>
<description>The TSensor IP is enabled at 0 and disabled at 1.</description>
<value>1</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_mode</name>
<description>TSensor temperature reporting mode.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>2</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>mode_16_avg_single</name>
<description>16-sample averaging single reporting mode.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>mode_16_avg_cyclic</name>
<description>16-sample averaging cyclic reporting mode.</description>
<value>0x01</value>
</enumeratedValue>
<enumeratedValue>
<name>mode_one_cyclic</name>
<description>Single-sample cyclic reporting mode.</description>
<value>0x02</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_enable</name>
<description>TSENSOR_CTRL switch.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_MAN_STS</name>
<description>TSENSOR_MAN_STS is the TSensor manual control status register.</description>
<addressOffset>0x0508</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_data_man</name>
<description>A valid temperature code word of a single point is reported cyclically.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x00</resetMask>
</field>
<field>
<name>tsensor_rdy_man</name>
<description>Temperature valid signal in single-point cyclic report mode.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_ready</name>
<description>The detection is not started or is being performed manually.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>ready</name>
<description>The value of [tsensor_data_man] is valid.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_man_clr</name>
<description>Clears the status of the single-point cyclic report mode.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_AUTO_STS</name>
<description>TSENSOR_AUTO_STS is the TSensor automatic control status register.</description>
<addressOffset>0x050C</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_data_auto</name>
<description>Valid temperature code word in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x00</resetMask>
</field>
<field>
<name>tsensor_rdy_auto</name>
<description>Temperature valid signal in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>not_ready</name>
<description>The automatic detection is not started or is in progress.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>ready</name>
<description>The value of [tsensor_data_man] is valid.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_auto_clr</name>
<description>Clears the status of the 16-sample averaging single reporting mode or the 16-sample averaging cyclic reporting mode.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_CTRL1</name>
<description>TSENSOR_CTRL1 is the TSensor control register 1.</description>
<addressOffset>0x0510</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_temp_trim_sel</name>
<description>TSensor IP Trim adjustment function source select.</description>
<access>read-write</access>
<bitOffset>4</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>by_efuse</name>
<description>The temp_trim of the TSensor IP is directly loaded by the eFUSE.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>by_register</name>
<description>The temp_trim of the TSensor IP is selected.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_temp_trim</name>
<description>Trim value for calibrating the TSensor IP temperature.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>4</bitWidth>
<resetMask>0x00</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>trim_p0p000</name>
<description>0.000°C.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p1p410</name>
<description>1.410℃.</description>
<value>0x01</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p2p820</name>
<description>2.820℃.</description>
<value>0x02</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p4p230</name>
<description>4.230℃.</description>
<value>0x03</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p5p640</name>
<description>5.640℃.</description>
<value>0x04</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p7p050</name>
<description>7.050℃.</description>
<value>0x05</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p8p460</name>
<description>8.460℃.</description>
<value>0x06</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_p9p970</name>
<description>9.870℃.</description>
<value>0x07</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n0p000</name>
<description>0.000℃.</description>
<value>0x08</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n1p410</name>
<description>–1.410℃.</description>
<value>0x09</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n2p820</name>
<description>–2.820℃.</description>
<value>0x0A</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n4p230</name>
<description>–4.230℃.</description>
<value>0x0B</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n5p640</name>
<description>–5.640℃.</description>
<value>0x0C</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n7p050</name>
<description>–7.050℃.</description>
<value>0x0D</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n8p460</name>
<description>–8.460℃.</description>
<value>0x0E</value>
</enumeratedValue>
<enumeratedValue>
<name>trim_n9p870</name>
<description>–9.870°C.</description>
<value>0x0F</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_TEMP_LIMIT1</name>
<description>TSENSOR_TEMP_LIMIT1 is the TSensor temperature upper threshold register.</description>
<addressOffset>0x0514</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_temp_high_limit</name>
<description>High temperature threshold in 16-sample averaging single reporting mode or the 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>TSENSOR_TEMP_LIMIT2</name>
<description>TSENSOR_TEMP_LIMIT2 is the TSensor temperature lower threshold register.</description>
<addressOffset>0x0518</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_temp_low_limit</name>
<description>Low temperature threshold in 16-sample averaging single reporting mode or16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0x0</resetMask>
</field>
</fields>
</register>
<register>
<name>TSENSOR_OVER_TEMP</name>
<description>TSENSOR_OVER_TEMP is the TSensor overtemperature control register.</description>
<addressOffset>0x051C</addressOffset>
<size>16</size>
<resetValue>0x00FF</resetValue>
<fields>
<field>
<name>tsensor_overtemp_thresh_en</name>
<description>Overtemperature PA protection enable in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_overtemp_thresh</name>
<description>Overtemperature PA protection threshold in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0xFF</resetMask>
</field>
</fields>
</register>
<register>
<name>TSENSOR_TEMP_INT_EN</name>
<description>TSENSOR_TEMP_INT_EN is the TSensor interrupt enable register.</description>
<addressOffset>0x0520</addressOffset>
<size>16</size>
<resetValue>0x00FF</resetValue>
<fields>
<field>
<name>tsensor_overtemp_int_en</name>
<description>TSensor overtemperature interrupt enable.</description>
<access>read-write</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_out_thresh_int_en</name>
<description>TSensor temperature threshold exceeding interrupt enable.</description>
<access>read-write</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_done_int_en</name>
<description>TSensor temperature measurement completion interrupt enable.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_TEMP_INT_CLR</name>
<description>TSENSOR_TEMP_INT_CLR is the RF TEMP configuration register.</description>
<addressOffset>0x0524</addressOffset>
<size>16</size>
<resetValue>0x00FF</resetValue>
<fields>
<field>
<name>tsensor_int_clr</name>
<description>TSensor interrupt clear.</description>
<access>write-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>clear</name>
<description>cleared.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_TEMP_INT_STS</name>
<description>TSENSOR_TEMP_INT_STS is the RF TEMP configuration register.</description>
<addressOffset>0x0528</addressOffset>
<size>16</size>
<resetValue>0x00FF</resetValue>
<fields>
<field>
<name>tsensor_overtemp_int_sts</name>
<description>TSensor overtemperature interrupt status.</description>
<access>read-only</access>
<bitOffset>2</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>valid.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_out_thresh_int_sts</name>
<description>TSensor temperature threshold exceeding interrupt status.</description>
<access>read-only</access>
<bitOffset>1</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>valid.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_done_int_sts</name>
<description>TSensor temperature measurement completion interrupt status.</description>
<access>read-only</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>invalid</name>
<description>invalid.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>valid</name>
<description>valid.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
<register>
<name>TSENSOR_OVER_TEMP_PD</name>
<description>TSENSOR_OVER_TEMP_PD is the TSensor overtemperature power-off control register.</description>
<addressOffset>0x0530</addressOffset>
<size>16</size>
<resetValue>0x00FF</resetValue>
<fields>
<field>
<name>tsensor_overtemp_pd_en</name>
<description>Overtemperature power-off protection enable in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>10</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
<field>
<name>tsensor_overtemp_pd_thresh</name>
<description>Overtemperature power-off protection threshold in 16-sample averaging single reporting mode or 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>8</bitWidth>
<resetMask>0xFF</resetMask>
</field>
</fields>
</register>
<register>
<name>TSENSOR_AUTO_REFRESH_PERIOD</name>
<description>TSENSOR_AUTO_REFRESH_PERIOD is the TSensor automatic detection period configuration register.</description>
<addressOffset>0x0540</addressOffset>
<size>16</size>
<resetValue>0xFFFF</resetValue>
<fields>
<field>
<name>tsensor_auto_refresh_period</name>
<description>TSensor automatic detection period (number of 32 kHz clock cycles).</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>16</bitWidth>
<resetMask>0xFFFF</resetMask>
</field>
</fields>
</register>
<register>
<name>TSENSOR_AUTO_REFRESH_CFG</name>
<description>TSENSOR_AUTO_REFRESH_CFG is the TSensor automatic detection enable control register.</description>
<addressOffset>0x0544</addressOffset>
<size>16</size>
<resetValue>0x0000</resetValue>
<fields>
<field>
<name>tsensor_auto_refresh_enable</name>
<description>Periodic detection enable in 16-sample averaging cyclic reporting mode.</description>
<access>read-write</access>
<bitOffset>0</bitOffset>
<bitWidth>1</bitWidth>
<resetMask>0x0</resetMask>
<enumeratedValues>
<enumeratedValue>
<name>disabled</name>
<description>disabled.</description>
<value>0x00</value>
</enumeratedValue>
<enumeratedValue>
<name>enabled</name>
<description>enabled.</description>
<value>0x01</value>
</enumeratedValue>
</enumeratedValues>
</field>
</fields>
</register>
</registers>
</peripheral>
<!-- W_CTL -->
</peripherals>
</device>
Rust
1
https://gitee.com/luojia65/hi38x1-pac.git
git@gitee.com:luojia65/hi38x1-pac.git
luojia65
hi38x1-pac
hi38x1-pac
master

搜索帮助