cc2538-rf: Simplified set_channel
This commit is contained in:
parent
9f78836219
commit
501ce04f05
@ -160,20 +160,14 @@ get_channel()
|
|||||||
/**
|
/**
|
||||||
* \brief Set the current operating channel
|
* \brief Set the current operating channel
|
||||||
* \param channel The desired channel as a value in [11,26]
|
* \param channel The desired channel as a value in [11,26]
|
||||||
* \return Returns a value in [11,26] representing the current channel
|
|
||||||
* or a negative value if \e channel was out of bounds
|
|
||||||
*/
|
*/
|
||||||
static int8_t
|
static void
|
||||||
set_channel(uint8_t channel)
|
set_channel(uint8_t channel)
|
||||||
{
|
{
|
||||||
uint8_t was_on = 0;
|
uint8_t was_on = 0;
|
||||||
|
|
||||||
LOG_INFO("Set Channel\n");
|
LOG_INFO("Set Channel\n");
|
||||||
|
|
||||||
if((channel < CC2538_RF_CHANNEL_MIN) || (channel > CC2538_RF_CHANNEL_MAX)) {
|
|
||||||
return CC2538_RF_CHANNEL_SET_ERROR;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Changes to FREQCTRL take effect after the next recalibration */
|
/* Changes to FREQCTRL take effect after the next recalibration */
|
||||||
|
|
||||||
/* If we are off, save state, otherwise switch off and save state */
|
/* If we are off, save state, otherwise switch off and save state */
|
||||||
@ -190,8 +184,6 @@ set_channel(uint8_t channel)
|
|||||||
}
|
}
|
||||||
|
|
||||||
rf_channel = channel;
|
rf_channel = channel;
|
||||||
|
|
||||||
return (int8_t)channel;
|
|
||||||
}
|
}
|
||||||
/*---------------------------------------------------------------------------*/
|
/*---------------------------------------------------------------------------*/
|
||||||
static radio_value_t
|
static radio_value_t
|
||||||
@ -894,9 +886,7 @@ set_value(radio_param_t param, radio_value_t value)
|
|||||||
value > CC2538_RF_CHANNEL_MAX) {
|
value > CC2538_RF_CHANNEL_MAX) {
|
||||||
return RADIO_RESULT_INVALID_VALUE;
|
return RADIO_RESULT_INVALID_VALUE;
|
||||||
}
|
}
|
||||||
if(set_channel(value) == CC2538_RF_CHANNEL_SET_ERROR) {
|
set_channel(value);
|
||||||
return RADIO_RESULT_ERROR;
|
|
||||||
}
|
|
||||||
return RADIO_RESULT_OK;
|
return RADIO_RESULT_OK;
|
||||||
case RADIO_PARAM_PAN_ID:
|
case RADIO_PARAM_PAN_ID:
|
||||||
set_pan_id(value & 0xffff);
|
set_pan_id(value & 0xffff);
|
||||||
|
@ -56,7 +56,6 @@
|
|||||||
#define CC2538_RF_CHANNEL_MIN 11
|
#define CC2538_RF_CHANNEL_MIN 11
|
||||||
#define CC2538_RF_CHANNEL_MAX 26
|
#define CC2538_RF_CHANNEL_MAX 26
|
||||||
#define CC2538_RF_CHANNEL_SPACING 5
|
#define CC2538_RF_CHANNEL_SPACING 5
|
||||||
#define CC2538_RF_CHANNEL_SET_ERROR -1
|
|
||||||
#define CC2538_RF_MAX_PACKET_LEN 127
|
#define CC2538_RF_MAX_PACKET_LEN 127
|
||||||
#define CC2538_RF_MIN_PACKET_LEN 4
|
#define CC2538_RF_MIN_PACKET_LEN 4
|
||||||
#define CC2538_RF_CCA_CLEAR 1
|
#define CC2538_RF_CCA_CLEAR 1
|
||||||
|
Loading…
Reference in New Issue
Block a user