12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507 |
- /******************************************************************************
- *
- * @brief header file for SIM utilities.
- *
- *******************************************************************************
- *
- * provide APIs for accessing SIM
- ******************************************************************************/
- #ifndef SIM_H_
- #define SIM_H_
- /******************************************************************************
- * Includes
- ******************************************************************************/
- /******************************************************************************
- * Constants
- ******************************************************************************/
- /******************************************************************************
- * define SIM device ID types
- *
- *//*! @addtogroup sim_id_types
- * @{
- *******************************************************************************/
- typedef enum {
- ID_TYPE_FAMID, /*!< device Family ID */
- ID_TYPE_SUBFAMID, /*!< device Subfamily ID */
- ID_TYPE_REVID, /*!< device Revision ID */
- ID_TYPE_PINID /*!< device Pin ID (Pin count) */
- } IDType;
- /*! @} End of sim_id_types */
- /******************************************************************************
- * Macros
- ******************************************************************************/
- /******************************************************************************
- * Types
- ******************************************************************************/
-
- /* SIM configuration structure
- */
-
- /******************************************************************************
- * define SIM configuration structure
- *
- *//*! @addtogroup sim_config_type
- * @{
- *******************************************************************************/
- /*!
- * @brief SIM configuration structure.
- *
- */
- #if defined(CPU_NV32)
- typedef struct{
- struct{
- uint32_t bEnableCLKOUT : 1; /*!< 1: enable , 0: disable */
- uint32_t bTXDME : 1; /*!< 1: enable TXDME, 0: disable */
- uint32_t bETMSYNC : 1; /*!< 1: enable ETM SYNC, 0: no sync */
- uint32_t bRXDFE : 1; /*!< 1: enable RXD filter, 0: no filter */
- uint32_t bRXDCE : 1; /*!< 1: enable RXD capture, 0: no capture */
- uint32_t bACIC : 1; /*!< 1: ACMP0 to ETM1 channel0 connection, 0: no connection */
- uint32_t bRTCC : 1; /*!< 1: RTC overflow connected to ETM1 channel1, 0: no connection */
- uint32_t u8ADHWT : 2; /*!< ADC h/w trigger source selection */
- uint32_t bDisableSWD : 1; /*!< 1: disable SWD, 0: enable */
- uint32_t bDisableRESET : 1; /*!< 1: disable RESET pin, 0: enable */
- uint32_t bDisableNMI : 1; /*!< 1: disable NMI pin, 0: enable */
- uint32_t bBusDiv : 1; /*!< bus divider BUSDIV value */
- } sBits;
- uint8_t u8Delay; /*!< delay value */
- uint8_t u8BusRef; /*!< bus reference */
- uint32_t u32PinSel; /*!< pin select reg value */
- uint32_t u32SCGC; /*!< clock gating value register */
- } SIM_ConfigType, *SIM_ConfigPtr; /*!< sim configuration structure type */
- #elif defined(CPU_NV32M3)
- typedef struct{
- struct{
- uint32_t bEnableCLKOUT : 1; /*!< 1: enable , 0: disable */
- uint32_t bTXDME : 1; /*!< 1: enable TXDME, 0: disable */
- uint32_t bETMSYNC : 1; /*!< 1: enable ETM SYNC, 0: no sync */
- uint32_t bRXDCE : 1; /*!< 1: enable RXD capture, 0: no capture */
- uint32_t bRXDFE : 2; /*!< 1: enable RXD filter, 0: no filter */
- uint32_t u8ADHWT : 3; /*!< ADC h/w trigger source selection */
- uint32_t bETMIC : 2; /*!< ETM0CH0 input capture source selection */
- uint32_t bACTRG : 1; /*!< ACMP Trigger ETM2 selection*/
- uint32_t bDisableSWD : 1; /*!< 1: disable SWD, 0: enable */
- uint32_t bDisableRESET : 1; /*!< 1: disable RESET pin, 0: enable */
- uint32_t bDisableNMI : 1; /*!< 1: disable NMI pin, 0: enable */
- } sBits;
- uint8_t u8Delay; /*!< delay value */
- uint8_t u8BusRef; /*!< bus reference */
- uint32_t u32PinSel; /*!< pin select reg value */
- uint32_t u32SCGC; /*!< clock gating value register */
- uint32_t u32CLKDIV; /*!< clock divider CLKDIV value */
- } SIM_ConfigType, *SIM_ConfigPtr; /*!< sim configuration structure type */
- #elif defined(CPU_NV32M4)
- typedef struct{
- struct{
- uint32_t bEnableCLKOUT : 1; /*!< 1: enable , 0: disable */
- uint32_t bTXDME : 1; /*!< 1: enable TXDME, 0: disable */
- uint32_t bETMSYNC : 1; /*!< 1: enable ETM SYNC, 0: no sync */
- uint32_t bRXDCE : 1; /*!< 1: enable RXD capture, 0: no capture */
- uint32_t bRXDFE : 2; /*!< 1: enable RXD filter, 0: no filter */
- uint32_t u8ADHWT : 3; /*!< ADC h/w trigger source selection */
- uint32_t bACTRG : 1; /*!< ACMP Trigger ETM2 selection*/
- uint32_t bDisableSWD : 1; /*!< 1: disable SWD, 0: enable */
- uint32_t bDisableRESET : 1; /*!< 1: disable RESET pin, 0: enable */
- uint32_t bDisableNMI : 1; /*!< 1: disable NMI pin, 0: enable */
- } sBits;
- uint8_t u8Delay; /*!< delay value */
- uint8_t u8BusRef; /*!< bus reference */
- uint32_t u32PinSel; /*!< pin select reg value */
- uint32_t u32SCGC; /*!< clock gating value register */
- uint32_t u32CLKDIV; /*!< clock divider CLKDIV value */
- } SIM_ConfigType, *SIM_ConfigPtr; /*!< sim configuration structure type */
- #endif
- /*! @} End of sim_config_type */
-
- /******************************************************************************
- * Global variables
- ******************************************************************************/
- /******************************************************************************
- * Global functions
- ******************************************************************************/
- /******************************************************************************
- * define SIM API list
- *
- *//*! @addtogroup sim_api_list
- * @{
- *******************************************************************************/
- #if defined(CPU_NV32)
- /*****************************************************************************//*!
- *
- * @brief delay ETM2 triggering ADC for u8Delay bus clock output divide.
- *
- * @param[in] u8Delay delay value of Bus clock output divide.
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DelayETM2Trig2ADC(uint8_t u8Delay)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_DELAY_MASK)) | SIM_SOPT_DELAY(u8Delay);
- }
- /*****************************************************************************//*!
- *
- * @brief enable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_DisableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableClockOutput(void)
- {
- SIM->SOPT |= (SIM_SOPT_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_EnableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableClockOutput(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set bus clock output divide.
- *
- * @param[in] u8Divide divide (3-bits)
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClockOutputDivide(uint8_t u8Divide)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_BUSREF_MASK)) | SIM_SOPT_BUSREF(u8Divide & 0x07);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 RXD connect with UART0 module and ETM0 channel 1..
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0RXDConnectETMOCH1(void)
- {
- SIM->SOPT |= (SIM_SOPT_RXDCE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Modulation(void)
- {
- SIM->SOPT |= (SIM_SOPT_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableUART0Modulation(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief generate a softare sync trigger to ETM2 module (trigger).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_GenerateSoftwareTrig2ETM2(void)
- {
- SIM->SOPT |= (SIM_SOPT_ETMSYNC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH3 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH3Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS3_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH2 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH2Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS2_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH1 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH1Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_UART0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_SPI0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2CPin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_IICPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 RX filter.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Filter(void)
- {
- SIM->SOPT |= (SIM_SOPT_RXDFE_MASK);
- }
- /******************************************************************************!
- * @function name: SIM_DisableUART0Filter
- *
- * @brief disable UART0 RX filter.
- *
- * @param
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableUART0Filter(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_RXDFE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to RTC overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByRTC(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_ADHWT_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT .
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPIT(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(1);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 init trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Init(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 match trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Match(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(3);
- }
- /*****************************************************************************//*!
- *
- * @brief enable RTC capture to ETM1 input channel1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableRTCCapture(void)
- {
- SIM->SOPT |= (SIM_SOPT_RTCC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable RTC capture to ETM1 input channel1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableRTCCapture(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_RTCC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable ACMP0 input capture to ETM1 input channel0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableACMP0InputCapture(void)
- {
- SIM->SOPT |= (SIM_SOPT_ACIC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable ACMP0 input capture to ETM1 input channel0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableACMP0InputCapture(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_ACIC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief remap RTC pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapRTCPin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_RTCPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief set bus divide BUSDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetBusDivide(uint8_t u8Divide)
- {
- SIM->BUSDIV = u8Divide;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH1 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH1Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH1 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH1Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM1PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM1PS0_MASK;
- }
- #elif defined(CPU_NV32M3)
- /*****************************************************************************//*!
- *
- * @brief delay ETM2 triggering ADC for u8Delay bus clock output divide.
- *
- * @param[in] u8Delay delay value of Bus clock output divide.
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DelayETM2Trig2ADC(uint8_t u8Delay)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_DELAY_MASK)) | SIM_SOPT_DELAY(u8Delay);
- }
- /*****************************************************************************//*!
- *
- * @brief enable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_DisableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableClockOutput(void)
- {
- SIM->SOPT |= (SIM_SOPT_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_EnableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableClockOutput(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set bus clock output divide.
- *
- * @param[in] u8Divide divide (3-bits)
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClockOutputDivide(uint8_t u8Divide)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_BUSREF_MASK)) | SIM_SOPT_BUSREF(u8Divide & 0x07);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 RXD connect with UART0 module and ETM0 channel 1..
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0RXDConnectETMOCH1(void)
- {
- SIM->SOPT |= (SIM_SOPT_RXDCE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Modulation(void)
- {
- SIM->SOPT |= (SIM_SOPT_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableUART0Modulation(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief generate a softare sync trigger to ETM2 module (trigger).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_GenerateSoftwareTrig2ETM2(void)
- {
- SIM->SOPT |= (SIM_SOPT_ETMSYNC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH3 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH3Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS3_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH2 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH2Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2PS2_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH1 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH1Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_UART0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI0 pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI0Pin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_SPI0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C pin from default to the other.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2CPin(void)
- {
- SIM->PINSEL |= SIM_PINSEL_IICPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is connected to UART0 module directly.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Filter(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_RXDFE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is filtered by ACMP0, then injected to UART0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0FilterByACMP0(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_RXDFE_MASK)) | SIM_SOPT_RXDFE(1);
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is filtered by ACMP1, then injected to UART0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0FilterByACMP1(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_RXDFE_MASK)) | SIM_SOPT_RXDFE(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to RTC overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByRTC(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_ADHWT_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM0 init trigger .
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPIT(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(1);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 init trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Init(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 match trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Match(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(3);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT channel0 overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPITCH0Overflow(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(4);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT channel1 overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPITChannel1Overflow(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(5);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ACMP0 out.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByACMP0Out(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(6);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ACMP1 out.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByACMP1Out(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ADHWT_MASK)) | SIM_SOPT_ADHWT(7);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ETM0CH0 as ETM0CH0 Input Capture Source.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelETM0CH0AsETM0CH0ICS(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_ETMIC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP0 OUT as ETM0CH0 Input Capture Source.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP0AsETM0CH0ICS(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ETMIC_MASK)) | SIM_SOPT_ETMIC(1);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP1 OUT as ETM0CH0 Input Capture Source.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP1AsETM0CH0ICS(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ETMIC_MASK)) | SIM_SOPT_ETMIC(2);
- }
- /*****************************************************************************//*!
- *
- * @brief Select RTC overflow as ETM0CH0 Input Capture Source.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelRTCOverflowAsETM0CH0ICS(void)
- {
- SIM->SOPT = (SIM->SOPT & ~(SIM_SOPT_ETMIC_MASK)) | SIM_SOPT_ETMIC(3);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP0 output as the trigger0 input of ETM2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP0AsETM2Trigger0(void)
- {
- SIM->SOPT &= ~(SIM_SOPT_ACTRG_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP1 output as the trigger0 input of ETM2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP1AsETM2Trigger0(void)
- {
- SIM->SOPT |= (SIM_SOPT_ACTRG_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set clock3 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock3Divide(void)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV3_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief set clock2 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock2Divide(void)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV2_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief set clock1 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock1Divide(uint8_t u8divide)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV1(u8divide);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for PWT module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForPWT(void)
- {
- SIM->PINSEL |= SIM_PINSEL_PWTCLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for PWT module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForPWT(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_PWTCLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for ETM2 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForETM2(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM2CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for ETM2 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForETM2(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM2CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for ETM0 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForETM0(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for ETM0 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForETM0(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM0CLKPS_MASK;
- }
- #elif defined(CPU_NV32M4)
- /*****************************************************************************//*!
- *
- * @brief delay ETM2 triggering ADC for u8Delay bus clock output divide.
- *
- * @param[in] u8Delay delay value of Bus clock output divide.
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DelayETM2Trig2ADC(uint8_t u8Delay)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_DELAY_MASK)) | SIM_SOPT0_DELAY(u8Delay);
- }
- /*****************************************************************************//*!
- *
- * @brief enable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_DisableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableClockOutput(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable clock output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- * @see SIM_EnableClockOutput
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableClockOutput(void)
- {
- SIM->SOPT0 &= ~(SIM_SOPT0_CLKOE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set bus clock output divide.
- *
- * @param[in] u8Divide divide (3-bits)
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClockOutputDivide(uint8_t u8Divide)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_BUSREF_MASK)) | SIM_SOPT0_BUSREF(u8Divide & 0x07);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 RXD connect with UART0 module and ETM0 channel 1..
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0RXDConnectETMOCH1(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_RXDCE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Modulation(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief disable UART0 TX modulation.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableUART0Modulation(void)
- {
- SIM->SOPT0 &= ~(SIM_SOPT0_TXDME_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief generate a softare sync trigger to ETM2 module (trigger).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_GenerateSoftwareTrig2ETM2(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_ETMSYNC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief select PWTIN3 input signal from UART0RX.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetPWTIN3InputFromUART0Rx(void)
- {
- SIM->SOPT1 = (SIM->SOPT1 & (~SIM_SOPT1_UARTPWTS_MASK)) | SIM_SOPT1_UARTPWTS(0);
- }
- /*****************************************************************************//*!
- *
- * @brief select PWTIN3 input signal from UART1RX.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetPWTIN3InputFromUART1Rx(void)
- {
- SIM->SOPT1 = (SIM->SOPT1 & (~SIM_SOPT1_UARTPWTS_MASK)) | SIM_SOPT1_UARTPWTS(1);
- }
- /*****************************************************************************//*!
- *
- * @brief select PWTIN3 input signal from UART2RX.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetPWTIN3InputFromUART2Rx(void)
- {
- SIM->SOPT1 = (SIM->SOPT1 & (~SIM_SOPT1_UARTPWTS_MASK)) | SIM_SOPT1_UARTPWTS(2);
- }
- /*****************************************************************************//*!
- *
- * @brief select PWTIN2 input signal from ACMP0_OUT.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetPWTIN2InputFromACMP0(void)
- {
- SIM->SOPT1 &= (~SIM_SOPT1_ACPWTS_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief select PWTIN2 input signal from ACMP1_OUT.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetPWTIN2InputFromACMP1(void)
- {
- SIM->SOPT1 |= SIM_SOPT1_ACPWTS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief enable invertion of the I2C output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableI2C0OuputInvertion(void)
- {
- SIM->SOPT1 |= SIM_SOPT1_I2C0OINV_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief disable invertion of the I2C output.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_DisableI2C0OuputInvertion(void)
- {
- SIM->SOPT1 &= ~SIM_SOPT1_I2C0OINV_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief enable 4-wire I2C.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_Enable4WireI2C0(void)
- {
- SIM->SOPT1 |= SIM_SOPT1_I2C04WEN_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief disable 4-wire I2C..
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_Disable4WireI2C0(void)
- {
- SIM->SOPT1 &= ~SIM_SOPT1_I2C04WEN_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is connected to UART0 module directly.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0Filter(void)
- {
- SIM->SOPT0 &= ~(SIM_SOPT0_RXDFE_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is filtered by ACMP0, then injected to UART0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0FilterByACMP0(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_RXDFE_MASK)) | SIM_SOPT0_RXDFE(1);
- }
- /*****************************************************************************//*!
- *
- * @brief UART0 RXD input signal is filtered by ACMP1, then injected to UART0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableUART0FilterByACMP1(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_RXDFE_MASK)) | SIM_SOPT0_RXDFE(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to RTC overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByRTC(void)
- {
- SIM->SOPT0 &= ~(SIM_SOPT0_ADHWT_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT .
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPIT(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(1);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 init trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Init(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ETM2 match trigger with 8-bit programmable delay.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByETM2Match(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(3);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT channel0 overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPITCH0Overflow(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(4);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to PIT channel1 overflow.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByPITChannel1Overflow(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(5);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ACMP0 out.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByACMP0Out(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(6);
- }
- /*****************************************************************************//*!
- *
- * @brief set ADC hardware trigger source to ACMP1 out.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_TriggerADCByACMP1Out(void)
- {
- SIM->SOPT0 = (SIM->SOPT0 & ~(SIM_SOPT0_ADHWT_MASK)) | SIM_SOPT0_ADHWT(7);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP0 output as the trigger0 input of ETM2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP0AsETM2Trigger0(void)
- {
- SIM->SOPT0 &= ~(SIM_SOPT0_ACTRG_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief Select ACMP1 output as the trigger0 input of ETM2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelACMP1AsETM2Trigger0(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_ACTRG_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable RTC capture to ETM1 input channel1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableRTCCapture(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_RTCC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief enable ACMP0 input capture to ETM1 input channel0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_EnableACMP0InputCapture(void)
- {
- SIM->SOPT0 |= (SIM_SOPT0_ACIC_MASK);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK0 for PWT module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK0ForPWT(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_PWTCLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for PWT module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForPWT(void)
- {
- SIM->PINSEL = (SIM->PINSEL&(~SIM_PINSEL_PWTCLKPS_MASK)) | SIM_PINSEL_PWTCLKPS(1) ;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for PWT module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForPWT(void)
- {
- SIM->PINSEL = (SIM->PINSEL&(~SIM_PINSEL_PWTCLKPS_MASK)) | SIM_PINSEL_PWTCLKPS(2) ;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK0 for ETM2 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK0ForETM2(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM2CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for ETM2 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForETM2(void)
- {
- SIM->PINSEL = (SIM->PINSEL & (~SIM_PINSEL_ETM2CLKPS_MASK)) | (((uint32_t)0x1)<<SIM_PINSEL_ETM2CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for ETM2 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForETM2(void)
- {
- SIM->PINSEL =(SIM->PINSEL & (~SIM_PINSEL_ETM2CLKPS_MASK)) | (((uint32_t)0x2)<<SIM_PINSEL_ETM2CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK0 for ETM1 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK0ForETM1(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM1CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for ETM1 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForETM1(void)
- {
- SIM->PINSEL = (SIM->PINSEL & (~SIM_PINSEL_ETM1CLKPS_MASK)) | (((uint32_t)0x1)<<SIM_PINSEL_ETM1CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for ETM1 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForETM1(void)
- {
- SIM->PINSEL = (SIM->PINSEL & (~SIM_PINSEL_ETM1CLKPS_MASK)) | (((uint32_t)0x2)<<SIM_PINSEL_ETM1CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK0 for ETM0 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK0ForETM0(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM0CLKPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK1 for ETM0 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK1ForETM0(void)
- {
- SIM->PINSEL = (SIM->PINSEL &(~SIM_PINSEL_ETM0CLKPS_MASK)) | (((uint32_t)0x1)<<SIM_PINSEL_ETM0CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief select TCLK2 for ETM0 module.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SelectTCLK2ForETM0(void)
- {
- SIM->PINSEL = (SIM->PINSEL &(~SIM_PINSEL_ETM0CLKPS_MASK)) | (((uint32_t)0x2)<<SIM_PINSEL_ETM0CLKPS_SHIFT);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH1 to pin PTC5 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH1ToPTC5(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM1PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH1 to pin PTE7.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH1ToPTE7(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM1PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH0 to pin PTC4 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH0ToPTC4(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM1PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM1CH0 to pin PTH2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM1CH0ToPTH2(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM1PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH1 to pin PTA1 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH1ToPTA1(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH1 to pin PTB3.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH1ToPTB3(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM0PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH0 to pin PTA0 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH0ToPTA1(void)
- {
- SIM->PINSEL |= SIM_PINSEL_ETM0PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM0CH0 to pin PTB2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM0CH0ToPTB3(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_ETM0PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART0 to pin PTB0/1 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART0ToPTB_0_1(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_UART0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART0 to pin PTA2/3.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART0ToPTA_2_3(void)
- {
- SIM->PINSEL |= SIM_PINSEL_UART0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI0 to pin PTB2/3/4/5 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI0ToPTB_2_3_4_5(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_SPI0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI0 to pin PTE01/2/3.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI0ToPTE_0_12_3(void)
- {
- SIM->PINSEL |= SIM_PINSEL_SPI0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C to pin PTA2/3 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2CToPTA_2_3(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_I2C0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C to pin PTB6/7 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2CToPTB_6_7(void)
- {
- SIM->PINSEL |= SIM_PINSEL_I2C0PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap RTC to pin PTC4 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapRTCToPTC4(void)
- {
- SIM->PINSEL &= ~SIM_PINSEL_RTCPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap RTC to pin PTC5.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapRTCToPTC5(void)
- {
- SIM->PINSEL |= SIM_PINSEL_RTCPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap MSCAN to pin PTC6/7 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapMSCANToPTC_6_7(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap MSCAN to pin PTH2/7.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapMSCANToPTH_2_7(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap PWTIN1 to pin PTB0 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapPWTIN1ToPTB0(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap PWTIN1 to pin PTH7.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapPWTIN1ToPTH7(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap PWTIN0 to pin PTD5 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapPWTIN0ToPTD5(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap PWTIN0 to pin PTE2.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapPWTIN0ToPTE2(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_MSCANPS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART2 to pin PTD6/7 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART2ToPTD_6_7(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_UART2PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART2 to pin PTI0/1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART2ToPTI_0_1(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_UART2PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART1 to pin PTC6/7 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART1ToPTC_6_7(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_UART1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap UART1 to pin PTF2/3.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapUART1ToPTF_2_3(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_UART1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI1 to pin PTD0/1/2/3 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI1ToPTD_0_1_2_3(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_SPI1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap SPI1 to pin PTG4/5/6/7.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapSPI1ToPTG_4_5_6_7(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_SPI1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C1 to pin PTE0/1 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2C1ToPTE_0_1(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_I2C1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap I2C1 to pin PTH3/4.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapI2C1ToPTH_3_4(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_I2C1PS_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH5 to pin PTB5 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH5ToPTB5(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS5_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH5 to pin PTG7.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH5ToPTG7(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_ETM2PS5_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH4 to pin PTB4 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH4ToPTB4(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS4_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH4 to pin PTG6.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH4ToPTG6(void)
- {
- SIM->PINSEL1 |= SIM_PINSEL1_ETM2PS4_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH3 to pin PTC3 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH3ToPTC3(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS3_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH3 to pin PTD1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH3ToPTD1(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS3_MASK)) | SIM_PINSEL1_ETM2PS3(1);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH3 to pin PTG5.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH3ToPTG5(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS3_MASK)) | SIM_PINSEL1_ETM2PS3(2);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH2 to pin PTC2 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH2ToPTC2(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS2_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH2 to pin PTD0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH2ToPTD0(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS2_MASK)) | SIM_PINSEL1_ETM2PS2(1);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH2 to pin PTG4.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH2ToPTG4(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS2_MASK)) | SIM_PINSEL1_ETM2PS2(2);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH1 to pin PTC1 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH1ToPTC1(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS1_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH1 to pin PTH1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH1ToPTH1(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS1_MASK)) | SIM_PINSEL1_ETM2PS1(1);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH1 to pin PTF1.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH1ToPTF1(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS1_MASK)) | SIM_PINSEL1_ETM2PS1(2);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH0 to pin PTC0 (default).
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH0ToPTC0(void)
- {
- SIM->PINSEL1 &= ~SIM_PINSEL1_ETM2PS0_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH0 to pin PTH0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH0ToPTH0(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 & (~SIM_PINSEL1_ETM2PS0_MASK)) | SIM_PINSEL1_ETM2PS0(1);
- }
- /*****************************************************************************//*!
- *
- * @brief remap ETM2CH0 to pin PTF0.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_RemapETM2CH0ToPTF0(void)
- {
- SIM->PINSEL1 = (SIM->PINSEL1 &(~SIM_PINSEL1_ETM2PS0_MASK)) | SIM_PINSEL1_ETM2PS0(2);
- }
- /*****************************************************************************//*!
- *
- * @brief set clock3 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock3Divide(void)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV3_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief set clock2 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock2Divide(void)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV2_MASK;
- }
- /*****************************************************************************//*!
- *
- * @brief set clock1 divide CLKDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetClock1Divide(uint8_t u8divide)
- {
- SIM->CLKDIV |= SIM_CLKDIV_OUTDIV1(u8divide);
- }
- /*****************************************************************************//*!
- *
- * @brief set bus divide BUSDIV.
- *
- * @param none
- *
- * @return none
- *
- * @ Pass/ Fail criteria: none
- *****************************************************************************/
- __STATIC_INLINE void SIM_SetBusDivide(uint8_t u8Divide)
- {
- SIM->CLKDIV = u8Divide;
- }
- #endif
- /*! @} End of sim_api_list */
- void SIM_Init(SIM_ConfigType *pConfig);
- void SIM_SetClockGating(uint32_t u32PeripheralMask, uint8_t u8GateOn);
- uint32_t SIM_GetStatus(uint32_t u32StatusMask);
- uint8_t SIM_ReadID(IDType sID);
- #endif /* SIM_H_ */
|