📄 lib_at91rm9200.h
字号:
//*----------------------------------------------------------------------------static inline void AT91F_PIO_CfgInput( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int inputEnable) // \arg PIO to be enabled{ // Disable output pPio->PIO_ODR = inputEnable; pPio->PIO_PER = inputEnable;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_CfgOpendrain//* \brief Configure PIO in open drain//*----------------------------------------------------------------------------static inline void AT91F_PIO_CfgOpendrain( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int multiDrvEnable) // \arg pio to be configured in open drain{ // Configure the multi-drive option pPio->PIO_MDDR = ~multiDrvEnable; pPio->PIO_MDER = multiDrvEnable;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_CfgPullup//* \brief Enable pullup on PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_CfgPullup( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int pullupEnable) // \arg enable pullup on PIO{ // Connect or not Pullup pPio->PIO_PPUDR = ~pullupEnable; pPio->PIO_PPUER = pullupEnable;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_CfgDirectDrive//* \brief Enable direct drive on PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_CfgDirectDrive( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int directDrive) // \arg PIO to be configured with direct drive{ // Configure the Direct Drive pPio->PIO_OWDR = ~directDrive; pPio->PIO_OWER = directDrive;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_CfgInputFilter//* \brief Enable input filter on input PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_CfgInputFilter( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int inputFilter) // \arg PIO to be configured with input filter{ // Configure the Direct Drive pPio->PIO_IFDR = ~inputFilter; pPio->PIO_IFER = inputFilter;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetInput//* \brief Return PIO input value//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetInput( // \return PIO input AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_PDSR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsInputSet//* \brief Test if PIO is input flag is active//*----------------------------------------------------------------------------static inline int AT91F_PIO_IsInputSet( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetInput(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_SetOutput//* \brief Set to 1 output PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_SetOutput( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg output to be set{ pPio->PIO_SODR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_ClearOutput//* \brief Set to 0 output PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_ClearOutput( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg output to be cleared{ pPio->PIO_CODR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_ForceOutput//* \brief Force output when Direct drive option is enabled//*----------------------------------------------------------------------------static inline void AT91F_PIO_ForceOutput( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg output to be forced{ pPio->PIO_ODSR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_Enable//* \brief Enable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_Enable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio to be enabled { pPio->PIO_PER = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_Disable//* \brief Disable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_Disable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio to be disabled { pPio->PIO_PDR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetStatus//* \brief Return PIO Status//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetStatus( // \return PIO Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_PSR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsSet//* \brief Test if PIO is Set//*----------------------------------------------------------------------------static inline int AT91F_PIO_IsSet( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetStatus(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_OutputEnable//* \brief Output Enable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_OutputEnable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio output to be enabled{ pPio->PIO_OER = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_OutputDisable//* \brief Output Enable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_OutputDisable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio output to be disabled{ pPio->PIO_ODR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetOutputStatus//* \brief Return PIO Output Status//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetOutputStatus( // \return PIO Output Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_OSR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsOuputSet//* \brief Test if PIO Output is Set//*----------------------------------------------------------------------------static inline int AT91F_PIO_IsOutputSet( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetOutputStatus(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_InputFilterEnable//* \brief Input Filter Enable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_InputFilterEnable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio input filter to be enabled{ pPio->PIO_IFER = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_InputFilterDisable//* \brief Input Filter Disable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_InputFilterDisable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio input filter to be disabled{ pPio->PIO_IFDR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetInputFilterStatus//* \brief Return PIO Input Filter Status//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetInputFilterStatus( // \return PIO Input Filter Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_IFSR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsInputFilterSet//* \brief Test if PIO Input filter is Set//*----------------------------------------------------------------------------static inline int AT91F_PIO_IsInputFilterSet( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetInputFilterStatus(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetOutputDataStatus//* \brief Return PIO Output Data Status //*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetOutputDataStatus( // \return PIO Output Data Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_ODSR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_InterruptEnable//* \brief Enable PIO Interrupt//*----------------------------------------------------------------------------static inline void AT91F_PIO_InterruptEnable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio interrupt to be enabled{ pPio->PIO_IER = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_InterruptDisable//* \brief Disable PIO Interrupt//*----------------------------------------------------------------------------static inline void AT91F_PIO_InterruptDisable( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg pio interrupt to be disabled{ pPio->PIO_IDR = flag;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetInterruptMaskStatus//* \brief Return PIO Interrupt Mask Status//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetInterruptMaskStatus( // \return PIO Interrupt Mask Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_IMR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_GetInterruptStatus//* \brief Return PIO Interrupt Status//*----------------------------------------------------------------------------static inline unsigned int AT91F_PIO_GetInterruptStatus( // \return PIO Interrupt Status AT91PS_PIO pPio) // \arg pointer to a PIO controller{ return pPio->PIO_ISR;}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsInterruptMasked//* \brief Test if PIO Interrupt is Masked //*----------------------------------------------------------------------------static inline int AT91F_PIO_IsInterruptMasked( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetInterruptMaskStatus(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_IsInterruptSet//* \brief Test if PIO Interrupt is Set//*----------------------------------------------------------------------------static inline int AT91F_PIO_IsInterruptSet( AT91PS_PIO pPio, // \arg pointer to a PIO controller unsigned int flag) // \arg flag to be tested{ return (AT91F_PIO_GetInterruptStatus(pPio) & flag);}//*----------------------------------------------------------------------------//* \fn AT91F_PIO_MultiDriverEnable//* \brief Multi Driver Enable PIO//*----------------------------------------------------------------------------static inline void AT91F_PIO_MultiDriverEnable( AT91PS_PIO pPio, // \arg pointer to a PIO controller
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -