50 #include <ti/devices/DeviceFamily.h> 51 #include DeviceFamily_constructPath(driverlib/rf_mailbox.h) 57 #define DOT_15_4G_FREQ_BAND_169 0 58 #define DOT_15_4G_FREQ_BAND_450 1 59 #define DOT_15_4G_FREQ_BAND_470 2 60 #define DOT_15_4G_FREQ_BAND_780 3 61 #define DOT_15_4G_FREQ_BAND_863 4 62 #define DOT_15_4G_FREQ_BAND_896 5 63 #define DOT_15_4G_FREQ_BAND_901 6 64 #define DOT_15_4G_FREQ_BAND_915 7 65 #define DOT_15_4G_FREQ_BAND_917 8 66 #define DOT_15_4G_FREQ_BAND_920 9 67 #define DOT_15_4G_FREQ_BAND_928 10 68 #define DOT_15_4G_FREQ_BAND_950 11 69 #define DOT_15_4G_FREQ_BAND_1427 12 70 #define DOT_15_4G_FREQ_BAND_2450 13 73 #ifdef DOT_15_4G_CONF_FREQ_BAND_ID 74 #define DOT_15_4G_FREQ_BAND_ID DOT_15_4G_CONF_FREQ_BAND_ID 76 #define DOT_15_4G_FREQ_BAND_ID DOT_15_4G_FREQ_BAND_863 86 #if (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_470) 87 #define DOT_15_4G_CHAN_MIN 0 88 #define DOT_15_4G_CHAN_MAX 198 89 #define DOT_15_4G_FREQ_SPACING 200 90 #define DOT_15_4G_CHAN0_FREQ 470200 92 #define PROP_MODE_CONF_CENTER_FREQ 0x01EA 93 #define PROP_MODE_CONF_LO_DIVIDER 0x0A 95 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_780) 96 #define DOT_15_4G_CHAN_MIN 0 97 #define DOT_15_4G_CHAN_MAX 38 98 #define DOT_15_4G_FREQ_SPACING 200 99 #define DOT_15_4G_CHAN0_FREQ 779200 101 #define PROP_MODE_CONF_CENTER_FREQ 0x030F 102 #define PROP_MODE_CONF_LO_DIVIDER 0x06 104 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_863) 105 #define DOT_15_4G_CHAN_MIN 0 106 #define DOT_15_4G_CHAN_MAX 33 107 #define DOT_15_4G_FREQ_SPACING 200 108 #define DOT_15_4G_CHAN0_FREQ 863125 110 #define PROP_MODE_CONF_CENTER_FREQ 0x0362 111 #define PROP_MODE_CONF_LO_DIVIDER 0x05 113 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_915) 114 #define DOT_15_4G_CHAN_MIN 0 115 #define DOT_15_4G_CHAN_MAX 128 116 #define DOT_15_4G_FREQ_SPACING 200 117 #define DOT_15_4G_CHAN0_FREQ 902200 119 #define PROP_MODE_CONF_CENTER_FREQ 0x0393 120 #define PROP_MODE_CONF_LO_DIVIDER 0x05 122 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_920) 123 #define DOT_15_4G_CHAN_MIN 0 124 #define DOT_15_4G_CHAN_MAX 37 125 #define DOT_15_4G_FREQ_SPACING 200 126 #define DOT_15_4G_CHAN0_FREQ 920600 128 #define PROP_MODE_CONF_CENTER_FREQ 0x039C 129 #define PROP_MODE_CONF_LO_DIVIDER 0x05 131 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_950) 132 #define DOT_15_4G_CHAN_MIN 0 133 #define DOT_15_4G_CHAN_MAX 32 134 #define DOT_15_4G_FREQ_SPACING 200 135 #define DOT_15_4G_CHAN0_FREQ 951000 137 #define PROP_MODE_CONF_CENTER_FREQ 0x03BA 138 #define PROP_MODE_CONF_LO_DIVIDER 0x05 140 #elif (DOT_15_4G_FREQ_BAND_ID == DOT_15_4G_FREQ_BAND_2450) 141 #define DOT_15_4G_CHAN_MIN 11 142 #define DOT_15_4G_CHAN_MAX 26 143 #define DOT_15_4G_FREQ_SPACING 5000 144 #define DOT_15_4G_CHAN0_FREQ 2405000 147 #error "The selected IEEE 802.15.4g frequency band is not supported" 150 static inline uint32_t
151 dot_15_4g_freq(
const uint16_t chan)
153 const uint32_t chan0 = DOT_15_4G_CHAN0_FREQ;
154 const uint32_t spacing = DOT_15_4G_FREQ_SPACING;
155 const uint32_t chan_min = DOT_15_4G_CHAN_MIN;
156 return chan0 + spacing * ((uint32_t)chan - chan_min);
160 dot_15_4g_chan_in_range(
const uint16_t chan)
162 const uint16_t chan_min = DOT_15_4G_CHAN_MIN;
163 const uint16_t chan_max = DOT_15_4G_CHAN_MAX;
164 return (chan >= chan_min) &&
168 #define DOT_15_4G_DEFAULT_CHAN IEEE802154_DEFAULT_CHANNEL