123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 |
- #ifndef _FSL_SIM_H_
- #define _FSL_SIM_H_
- #include "fsl_common.h"
- #define FSL_SIM_DRIVER_VERSION (MAKE_VERSION(2, 1, 0))
- #if (defined(FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR) && FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR)
- enum _sim_usb_volt_reg_enable_mode
- {
- kSIM_UsbVoltRegEnable = SIM_SOPT1_USBREGEN_MASK,
- kSIM_UsbVoltRegEnableInLowPower = SIM_SOPT1_USBVSTBY_MASK,
- kSIM_UsbVoltRegEnableInStop = SIM_SOPT1_USBSSTBY_MASK,
- kSIM_UsbVoltRegEnableInAllModes = SIM_SOPT1_USBREGEN_MASK | SIM_SOPT1_USBSSTBY_MASK |
- SIM_SOPT1_USBVSTBY_MASK
- };
- #endif
- typedef struct _sim_uid
- {
- #if defined(SIM_UIDH)
- uint32_t H;
- #endif
- #if (defined(FSL_FEATURE_SIM_HAS_UIDM) && FSL_FEATURE_SIM_HAS_UIDM)
- uint32_t M;
- #else
- uint32_t MH;
- uint32_t ML;
- #endif
- uint32_t L;
- } sim_uid_t;
- #if (defined(FSL_FEATURE_SIM_HAS_RF_MAC_ADDR) && FSL_FEATURE_SIM_HAS_RF_MAC_ADDR)
- typedef struct _sim_rf_addr
- {
- uint32_t rfAddrL;
- uint32_t rfAddrH;
- } sim_rf_addr_t;
- #endif
- enum _sim_flash_mode
- {
- kSIM_FlashDisableInWait = SIM_FCFG1_FLASHDOZE_MASK,
- kSIM_FlashDisable = SIM_FCFG1_FLASHDIS_MASK
- };
- #if defined(__cplusplus)
- extern "C" {
- #endif
- #if (defined(FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR) && FSL_FEATURE_SIM_OPT_HAS_USB_VOLTAGE_REGULATOR)
- void SIM_SetUsbVoltRegulatorEnableMode(uint32_t mask);
- #endif
- void SIM_GetUniqueId(sim_uid_t *uid);
- static inline void SIM_SetFlashMode(uint8_t mode)
- {
- SIM->FCFG1 = mode;
- }
- #if (defined(FSL_FEATURE_SIM_HAS_RF_MAC_ADDR) && FSL_FEATURE_SIM_HAS_RF_MAC_ADDR)
- void SIM_GetRfAddr(sim_rf_addr_t *info);
- #endif
- #if (defined(FSL_FEATURE_SIM_MISC2_HAS_SYSTICK_CLK_EN) && FSL_FEATURE_SIM_MISC2_HAS_SYSTICK_CLK_EN)
- static inline void SIM_EnableSystickClock(bool enable)
- {
- if (enable)
- {
- SIM->MISC2 &= ~SIM_MISC2_SYSTICK_CLK_EN_MASK;
- }
- else
- {
- SIM->MISC2 |= SIM_MISC2_SYSTICK_CLK_EN_MASK;
- }
- }
- #endif
- #if defined(__cplusplus)
- }
- #endif
- #endif
|