radio.setFrequencyBand support (#2495)

* setfrequencyband support

* revert line change

* add bounds check
This commit is contained in:
Peli de Halleux
2019-10-25 10:21:34 -07:00
committed by GitHub
parent 4382868d5f
commit 7e18be3c9b
6 changed files with 75 additions and 0 deletions

View File

@ -37,6 +37,8 @@
"radio.sendValue": "Broadcasts a name / value pair along with the device serial number\nand running time to any connected micro:bit in the group. The name can\ninclude no more than 8 characters.",
"radio.sendValue|param|name": "the field name (max 8 characters), eg: \"name\"",
"radio.sendValue|param|value": "the numeric value",
"radio.setFrequencyBand": "Change the transmission and reception band of the radio to the given channel",
"radio.setFrequencyBand|param|band": "a frequency band in the range 0 - 83. Each step is 1MHz wide, based at 2400MHz.",
"radio.setGroup": "Sets the group id for radio communications. A micro:bit can only listen to one group ID at any time.",
"radio.setGroup|param|id": "the group id between ``0`` and ``255``, eg: 1",
"radio.setTransmitPower": "Change the output power level of the transmitter to the given value.",

View File

@ -21,6 +21,7 @@
"radio.sendNumber|block": "radio send number %value",
"radio.sendString|block": "radio send string %msg",
"radio.sendValue|block": "radio send|value %name|= %value",
"radio.setFrequencyBand|block": "radio set frequency band %band",
"radio.setGroup|block": "radio set group %ID",
"radio.setTransmitPower|block": "radio set transmit power %power",
"radio.setTransmitSerialNumber|block": "radio set transmit serial number %transmit",

View File

@ -109,4 +109,18 @@ namespace radio {
uBit.radio.setTransmitPower(power);
}
/**
* Change the transmission and reception band of the radio to the given channel
* @param band a frequency band in the range 0 - 83. Each step is 1MHz wide, based at 2400MHz.
**/
//% help=radio/set-frequency-band
//% weight=8 blockGap=8
//% blockId=radio_set_frequency_band block="radio set frequency band %band"
//% band.min=0 band.max=83
//% advanced=true
void setFrequencyBand(int band) {
if (radioEnable() != MICROBIT_OK) return;
uBit.radio.setFrequencyBand(band);
}
}

11
libs/radio/shims.d.ts vendored
View File

@ -56,6 +56,17 @@ declare namespace radio {
//% power.min=0 power.max=7
//% advanced=true shim=radio::setTransmitPower
function setTransmitPower(power: int32): void;
/**
* Change the transmission and reception band of the radio to the given channel
* @param band a frequency band in the range 0 - 83. Each step is 1MHz wide, based at 2400MHz.
**/
//% help=radio/set-frequency-band
//% weight=8 blockGap=8
//% blockId=radio_set_frequency_band block="radio set frequency band %band"
//% band.min=0 band.max=83
//% advanced=true shim=radio::setFrequencyBand
function setFrequencyBand(band: int32): void;
}
// Auto-generated. Do not edit. Really.