MBED driver for Max1471.
Embed:
(wiki syntax)
Show/hide line numbers
MAX1471_regs.h
00001 /* 00002 * Max1471_regs.h 00003 * 00004 * Created on: Dec 17, 2018 00005 * Author: Erman.Komurcu 00006 */ 00007 00008 #ifndef MAX1471_MAX1471_REGS_H_ 00009 #define MAX1471_MAX1471_REGS_H_ 00010 00011 /** 00012 * @brief PWR_CFG (0x00) 00013 * 00014 * @description Power Configuration Register 00015 */ 00016 typedef union { 00017 unsigned char raw; 00018 struct { 00019 unsigned char sleep : 1; /**< Sleep mode */ 00020 unsigned char askpd_en : 1; /**< ASK peak detector enable */ 00021 unsigned char askbb_en : 1; /**< ASK baseband enabled */ 00022 unsigned char fskpd_en : 1; /**< FSK peak detector enable */ 00023 unsigned char fskbb_en : 1; /**< FSK baseband enable */ 00024 unsigned char mixer_en : 1; /**< Mixer enable */ 00025 unsigned char agc_en : 1; /**< AGC enable */ 00026 unsigned char lna_en : 1; /**< LNA enable */ 00027 } bits; 00028 } max1471_reg_pwr_cfg_t; 00029 00030 /** 00031 * @brief CFG (0x01) 00032 * 00033 * @description Configuration Register 00034 */ 00035 typedef union { 00036 unsigned char raw; 00037 struct { 00038 unsigned char drx_mode : 1; /**< Receive mode */ 00039 unsigned char toff_ps0 : 1; /**< Off-timer prescale */ 00040 unsigned char toff_ps1 : 1; /**< Off-timer prescale */ 00041 unsigned char dout_ask : 1; /**< ASKOUT enable */ 00042 unsigned char dout_fsk : 1; /**< FSKOUT enable */ 00043 unsigned char fskcallsb : 1; /**< FSK accurate calibration */ 00044 unsigned char gainset : 1; /**< Gain set */ 00045 unsigned char : 1; /**< Don"t care */ 00046 } bits; 00047 } max1471_reg_cfg_t; 00048 00049 /** 00050 * @brief CTRL (0x02) 00051 * 00052 * @description Control Register 00053 */ 00054 typedef union { 00055 unsigned char raw; 00056 struct { 00057 unsigned char fsk_cal_en: 1; /**< FSK calibration enable */ 00058 unsigned char pol_cal_en: 1; /**< Polling timer calibration enable */ 00059 unsigned char asktrk_en : 1; /**< ASK peak detector track enable */ 00060 unsigned char fsktrk_en : 1; /**< FSK peak detector track enable */ 00061 unsigned char : 1; /**< Don't care */ 00062 unsigned char agclock : 1; /**< AGC lock */ 00063 unsigned char : 1; /**< Don"t care */ 00064 } bits; 00065 } max1471_reg_ctrl_t; 00066 00067 /** 00068 * @brief STAT (0x09) 00069 * 00070 * @description Status Register 00071 */ 00072 typedef union { 00073 unsigned char raw; 00074 struct { 00075 unsigned char fsk_cal_done : 1; /**< FSK calibration done */ 00076 unsigned char pol_cal_done : 1; /**< Polling timer calibration done */ 00077 unsigned char : 3; /**< Don't care */ 00078 unsigned char clkalive : 1; /**< Clock/crystal alive */ 00079 unsigned char agcst : 1; /**< AGC state */ 00080 unsigned char lockdet : 1; /**< Lock detect */ 00081 } bits; 00082 } max1471_reg_stat_t; 00083 /** 00084 * @brief Register Set 00085 * 00086 */ 00087 typedef struct { 00088 max1471_reg_pwr_cfg_t reg_pwr_cfg; 00089 max1471_reg_cfg_t reg_cfg; 00090 max1471_reg_ctrl_t reg_ctrl; 00091 max1471_reg_stat_t reg_stat; 00092 } max1471_reg_map_t; 00093 00094 #endif /* MAX1471_MAX1471_REGS_H_ */
Generated on Sun Jul 24 2022 06:21:36 by 1.7.2