This commit is contained in:
Peli de Halleux 2016-06-24 09:02:14 -07:00
Родитель 6cfe39dac3
Коммит 5dd37a1494
2 изменённых файлов: 274 добавлений и 6 удалений

Просмотреть файл

@ -1,18 +1,22 @@
# Bluetooth
Support for additional Bluetooth services.
```cards
bluetooth.onBluetoothConnected(() => {
});
bluetooth.onBluetoothDisconnected(() => {
});
bluetooth.startAccelerometerService();
bluetooth.startButtonService();
bluetooth.startIOPinService();
bluetooth.startLEDService();
bluetooth.startMagnetometerService();
bluetooth.startTemperatureService();
bluetooth.uartRead("");
bluetooth.uartWrite("");
bluetooth.onBluetoothConnected(() => {
});
bluetooth.onBluetoothDisconnected(() => {
});
```
```package

Просмотреть файл

@ -0,0 +1,264 @@
{
"Math.randomBoolean": "Generates a `true` or `false` value randomly, just like flipping a coin.",
"Math.randomBoolean|block": "pick random true or false",
"Math|block": "Math",
"String.fromCharCode": "Make a string from the given ASCII character code.",
"String.fromCharCode|block": "text from char code %code",
"String|block": "String",
"basic": "Provides access to basic micro:bit functionality.",
"basic.clearScreen": "Turn off all LEDs",
"basic.clearScreen|block": "clear screen",
"basic.forever": "Repeats the code forever in the background. On each iteration, allows other codes to run.",
"basic.forever|block": "forever",
"basic.pause": "Pause for the specified time in milliseconds",
"basic.pause|block": "pause (ms) %pause",
"basic.pause|param|ms": "how long to pause for, eg: 100, 200, 500, 1000, 2000",
"basic.plotLeds": "Draws an image on the LED screen.",
"basic.plotLeds|param|leds": "pattern of LEDs to turn on/off",
"basic.showAnimation": "Shows a sequence of LED screens as an animation.",
"basic.showAnimation|param|interval": "time in milliseconds between each redraw",
"basic.showAnimation|param|leds": "pattern of LEDs to turn on/off",
"basic.showLeds": "Draws an image on the LED screen.",
"basic.showLeds|block": "show leds",
"basic.showLeds|param|interval": "time in milliseconds to pause after drawing",
"basic.showLeds|param|leds": "the pattern of LED to turn on/off",
"basic.showNumber": "Scroll a number on the screen. If the number fits on the screen (i.e. is a single digit), do not scroll.",
"basic.showNumber|block": "show|number %number",
"basic.showNumber|param|interval": "speed of scroll; eg: 150, 100, 200, -100",
"basic.showString": "Display text on the display, one character at a time. If the string fits on the screen (i.e. is one letter), does not scroll.",
"basic.showString|block": "show|string %text",
"basic.showString|param|interval": "how fast to shift characters; eg: 150, 100, 200, -100",
"basic.showString|param|text": "the text to scroll on the screen, eg: \"Hello!\"",
"basic|block": "basic",
"bluetooth": "Support for additional Bluetooth services.",
"bluetooth.onBluetoothConnected": "Register code to run when the micro:bit is connected to over Bluetooth",
"bluetooth.onBluetoothConnected|block": "on bluetooth connected",
"bluetooth.onBluetoothConnected|param|body": "Code to run when a Bluetooth connection is established",
"bluetooth.onBluetoothDisconnected": "Register code to run when a bluetooth connection to the micro:bit is lost",
"bluetooth.onBluetoothDisconnected|block": "on bluetooth disconnected",
"bluetooth.onBluetoothDisconnected|param|body": "Code to run when a Bluetooth connection is lost",
"bluetooth.startAccelerometerService": "Starts the Bluetooth accelerometer service",
"bluetooth.startAccelerometerService|block": "bluetooth accelerometer service",
"bluetooth.startButtonService": "Starts the Bluetooth button service",
"bluetooth.startButtonService|block": "bluetooth button service",
"bluetooth.startIOPinService": "Starts the Bluetooth IO pin service.",
"bluetooth.startIOPinService|block": "bluetooth io pin service",
"bluetooth.startLEDService": "Starts the Bluetooth LED service",
"bluetooth.startLEDService|block": "bluetooth led service",
"bluetooth.startMagnetometerService": "Starts the Bluetooth magnetometer service",
"bluetooth.startMagnetometerService|block": "bluetooth magnetometer service",
"bluetooth.startTemperatureService": "Starts the Bluetooth temperature service",
"bluetooth.startTemperatureService|block": "bluetooth temperature service",
"bluetooth.uartRead": "Reads from the Bluetooth UART service buffer, returning its contents when the specified delimiter character is encountered.",
"bluetooth.uartRead|block": "bluetooth uart read %del=bluetooth_uart_delimiter_conv",
"bluetooth.uartWrite": "Writes to the Bluetooth UART service buffer. From there the data is transmitted over Bluetooth to a connected device.",
"bluetooth.uartWrite|block": "bluetooth uart write %data",
"bluetooth|block": "bluetooth",
"control": "Runtime and event utilities.",
"control.inBackground": "Schedules code that run in the background.",
"control.inBackground|block": "run in background",
"control.reset": "Resets the BBC micro:bit.",
"control.reset|block": "reset",
"control|block": "control",
"game": "A single-LED sprite game engine",
"game.addScore": "Adds points to the current score",
"game.addScore|block": "change score by|%points",
"game.addScore|param|points": "amount of points to change, eg: 1",
"game.gameOver": "Displays a game over animation.",
"game.gameOver|block": "game over",
"game.score": "Gets the current score",
"game.score|block": "score",
"game.setScore": "Sets the current score value",
"game.setScore|param|value": "TODO",
"game.startCountdown": "Starts a game countdown timer",
"game.startCountdown|block": "start countdown|(ms) %duration",
"game.startCountdown|param|ms": "countdown duration in milliseconds, eg: 10000",
"game|block": "game",
"images": "Creation, manipulation and display of LED images.",
"images.createBigImage": "Creates an image with 2 frames.",
"images.createBigImage|block": "create big image",
"images.createImage": "Creates an image that fits on the LED screen.",
"images.createImage|block": "create image",
"images|block": "images",
"input": "Events and data from sensors",
"input.acceleration": "Get the acceleration value in milli-gravitys (when the board is laying flat with the screen up, x=0, y=0 and z=-1024)",
"input.acceleration|block": "acceleration (mg)|%NAME",
"input.acceleration|param|dimension": "TODO",
"input.buttonIsPressed": "Get the button state (pressed or not) for ``A`` and ``B``.",
"input.buttonIsPressed|block": "button|%NAME|is pressed",
"input.calibrate": "Obsolete, compass calibration is automatic.",
"input.compassHeading": "Get the current compass compass heading in degrees.",
"input.compassHeading|block": "compass heading (°)",
"input.lightLevel": "Reads the light level applied to the LED screen in a range from ``0`` (dark) to ``255`` bright.",
"input.lightLevel|block": "light level",
"input.magneticForce": "Get the magnetic force value in ``micro-Teslas`` (``µT``). This function is not supported in the simulator.",
"input.magneticForce|block": "magnetic force (µT)|%NAME",
"input.magneticForce|param|dimension": "TODO",
"input.onButtonPressed": "Do something when a button (``A``, ``B`` or both ``A+B``) is pressed",
"input.onButtonPressed|block": "on button|%NAME|pressed",
"input.onButtonPressed|param|body": "TODO",
"input.onButtonPressed|param|button": "TODO",
"input.onGesture": "Attaches code to run when the screen is facing up.",
"input.onGesture|block": "on |%NAME",
"input.onGesture|param|body": "TODO",
"input.onLogoDown": "Attaches code to run when the logo is oriented downwards and the board is vertical.",
"input.onLogoDown|param|body": "TODO",
"input.onLogoUp": "Attaches code to run when the logo is oriented upwards and the board is vertical.",
"input.onLogoUp|param|body": "TODO",
"input.onPinPressed": "Do something when a pin(``P0``, ``P1`` or both ``P2``) is pressed.",
"input.onPinPressed|block": "on pin|%NAME|pressed",
"input.onPinPressed|param|body": "TODO",
"input.onPinPressed|param|name": "TODO",
"input.onScreenDown": "Attaches code to run when the screen is facing down.",
"input.onScreenDown|param|body": "TODO",
"input.onScreenUp": "Attaches code to run when the screen is facing up.",
"input.onScreenUp|param|body": "TODO",
"input.onShake": "Attaches code to run when the device is shaken.",
"input.onShake|param|body": "TODO",
"input.pinIsPressed": "Get the pin state (pressed or not). Requires to hold the ground to close the circuit.",
"input.pinIsPressed|block": "pin|%NAME|is pressed",
"input.pinIsPressed|param|name": "pin used to detect the touch",
"input.rotation": "The pitch of the device, rotation along the ``x-axis``, in degrees.",
"input.rotation|block": "rotation (°)|%NAME",
"input.rotation|param|kind": "TODO",
"input.runningTime": "Gets the number of milliseconds elapsed since power on.",
"input.runningTime|block": "running time (ms)",
"input.setAccelerometerRange": "Sets the accelerometer sample range in gravities.",
"input.setAccelerometerRange|block": "set accelerometer|range %range",
"input.setAccelerometerRange|param|range": "a value describe the maximum strengh of acceleration measured",
"input.temperature": "Gets the temperature in Celsius degrees (°C).",
"input.temperature|block": "temperature (°C)",
"input|block": "input",
"led": "Control of the LED screen.",
"led.brightness": "Get the screen brightness from 0 (off) to 255 (full bright).",
"led.brightness|block": "brightness",
"led.fadeIn": "Fades in the screen display.",
"led.fadeIn|param|ms": "TODO",
"led.fadeOut": "Fades out the screen brightness.",
"led.fadeOut|param|ms": "TODO",
"led.plot": "Turn on the specified LED using x, y coordinates (x is horizontal, y is vertical). (0,0) is upper left.",
"led.plotAll": "Turns all LEDS on",
"led.plotBarGraph": "Displays a vertical bar graph based on the `value` and `high` value.\nIf `high` is 0, the chart gets adjusted automatically.",
"led.plotBarGraph|block": "plot bar graph of %value |up to %high",
"led.plotBarGraph|param|high": "maximum value. If 0, maximum value adjusted automatically, eg: 0",
"led.plotBarGraph|param|value": "current value to plot",
"led.plot|block": "plot|x %x|y %y",
"led.plot|param|x": "TODO",
"led.plot|param|y": "TODO",
"led.point": "Get the on/off state of the specified LED using x, y coordinates. (0,0) is upper left.",
"led.point|block": "point|x %x|y %y",
"led.point|param|x": "TODO",
"led.point|param|y": "TODO",
"led.screenshot": "Takes a screenshot of the LED screen and returns an image.",
"led.setBrightness": "Set the screen brightness from 0 (off) to 255 (full bright).",
"led.setBrightness|block": "set brightness %value",
"led.setBrightness|param|value": "the brightness value, eg:255, 127, 0",
"led.setDisplayMode": "Sets the display mode between black and white and greyscale for rendering LEDs.",
"led.setDisplayMode|param|mode": "TODO",
"led.stopAnimation": "Cancels the current animation and clears other pending animations.",
"led.stopAnimation|block": "stop animation",
"led.toggle": "Toggles a particular pixel",
"led.toggleAll": "Inverts the current LED display",
"led.toggle|param|x": "TODO",
"led.toggle|param|y": "TODO",
"led.unplot": "Turn off the specified LED using x, y coordinates (x is horizontal, y is vertical). (0,0) is upper left.",
"led.unplot|block": "unplot|x %x|y %y",
"led.unplot|param|x": "TODO",
"led.unplot|param|y": "TODO",
"led|block": "led",
"music": "Generation of music tones through pin ``P0``.",
"music.beat": "Returns the duration of a beat in milli-seconds",
"music.beat|block": "%fraction|beat",
"music.changeTempoBy": "Change the tempo by the specified amount",
"music.changeTempoBy|block": "change tempo by (bpm)|%value",
"music.changeTempoBy|param|bpm": "The change in beats per minute to the tempo, eg: 20",
"music.noteFrequency": "Gets the frequency of a note.",
"music.noteFrequency|block": "%note",
"music.noteFrequency|param|name": "the note name",
"music.playTone": "Plays a tone through pin ``P0`` for the given duration.",
"music.playTone|block": "play|tone %note=device_note|for %duration=device_beat",
"music.playTone|param|frequency": "pitch of the tone to play in Hertz (Hz)",
"music.playTone|param|ms": "tone duration in milliseconds (ms)",
"music.rest": "Rests (plays nothing) for a specified time through pin ``P0``.",
"music.rest|block": "rest(ms)|%duration=device_beat",
"music.rest|param|ms": "rest duration in milliseconds (ms)",
"music.ringTone": "Plays a tone through pin ``P0``.",
"music.ringTone|block": "ring tone (Hz)|%note=device_note",
"music.ringTone|param|frequency": "pitch of the tone to play in Hertz (Hz)",
"music.setTempo": "Sets the tempo to the specified amount",
"music.setTempo|block": "set tempo to (bpm)|%value",
"music.setTempo|param|bpm": "The new tempo in beats per minute, eg: 120",
"music.tempo": "Returns the tempo in beats per minute. Tempo is the speed (bpm = beats per minute) at which notes play. The larger the tempo value, the faster the notes will play.",
"music.tempo|block": "tempo (bpm)",
"music|block": "music",
"pins": "Control currents in Pins for analog/digital signals, servos, i2c, ...",
"pins.analogPitch": "Emits a Pulse-width modulation (PWM) signal to the current pitch pin. Use `analog set pitch pin` to define the pitch pin.",
"pins.analogPitch|param|frequency": "TODO",
"pins.analogPitch|param|ms": "TODO",
"pins.analogReadPin": "Read the connector value as analog, that is, as a value comprised between 0 and 1023.",
"pins.analogReadPin|block": "analog read|pin %name",
"pins.analogReadPin|param|name": "pin to write to",
"pins.analogSetPeriod": "Configures the Pulse-width modulation (PWM) of the analog output to the given value in **microseconds** or `1/1000` milliseconds.\nIf this pin is not configured as an analog output (using `analog write pin`), the operation has no effect.",
"pins.analogSetPeriod|block": "analog set period|pin %pin|to (µs)%micros",
"pins.analogSetPeriod|param|micros": "period in micro seconds. eg:20000",
"pins.analogSetPeriod|param|name": "analog pin to set period to",
"pins.analogSetPitchPin": "Sets the pin used when using `pins->analog pitch`.",
"pins.analogSetPitchPin|param|name": "TODO",
"pins.analogWritePin": "Set the connector value as analog. Value must be comprised between 0 and 1023.",
"pins.analogWritePin|block": "analog write|pin %name|to %value",
"pins.analogWritePin|param|name": "pin name to write to",
"pins.analogWritePin|param|value": "value to write to the pin between ``0`` and ``1023``. eg:1023,0",
"pins.digitalReadPin": "Read the specified pin or connector as either 0 or 1",
"pins.digitalReadPin|block": "digital read|pin %name",
"pins.digitalReadPin|param|name": "pin to read from",
"pins.digitalWritePin": "Set a pin or connector value to either 0 or 1.",
"pins.digitalWritePin|block": "digital write|pin %name|to %value",
"pins.digitalWritePin|param|name": "pin to write to",
"pins.digitalWritePin|param|value": "value to set on the pin, 1 eg,0",
"pins.i2cReadNumber": "Read one number from 7-bit I2C address.",
"pins.i2cReadNumber|block": "i2c read number|at address %address|of format %format=i2c_sizeof",
"pins.i2cWriteNumber": "Write one number to a 7-bit I2C address.",
"pins.i2cWriteNumber|block": "i2c write number|at address %address|with value %value|of format %format=i2c_sizeof",
"pins.map": "Re-maps a number from one range to another. That is, a value of ``from low`` would get mapped to ``to low``, a value of ``from high`` to ``to high``, values in-between to values in-between, etc.",
"pins.map|block": "map %value|from low %fromLow|from high %fromHigh|to low %toLow|to high %toHigh",
"pins.map|param|fromHigh": "the upper bound of the value's current range, eg: 1023",
"pins.map|param|fromLow": "the lower bound of the value's current range",
"pins.map|param|toHigh": "the upper bound of the value's target range, eg: 4",
"pins.map|param|toLow": "the lower bound of the value's target range",
"pins.map|param|value": "value to map in ranges",
"pins.onPulsed": "Configures this pin to a digital input, and generates events where the timestamp is the duration that this pin was either ``high`` or ``low``.",
"pins.onPulsed|block": "on|pin %pin|pulsed %pulse",
"pins.pulseDuration": "Gets the duration of the last pulse in micro-seconds. This function should be called from a ``onPulsed`` handler.",
"pins.pulseDuration|block": "pulse duration (µs)",
"pins.servoSetPulse": "Configures this IO pin as an analog/pwm output, configures the period to be 20 ms, and sets the pulse width, based on the value it is given **microseconds** or `1/1000` milliseconds.",
"pins.servoSetPulse|block": "servo set pulse|pin %value|to (µs) %micros",
"pins.servoSetPulse|param|micros": "pulse duration in micro seconds, eg:1500",
"pins.servoSetPulse|param|name": "pin name",
"pins.servoWritePin": "Writes a value to the servo, controlling the shaft accordingly. On a standard servo, this will set the angle of the shaft (in degrees), moving the shaft to that orientation. On a continuous rotation servo, this will set the speed of the servo (with ``0`` being full-speed in one direction, ``180`` being full speed in the other, and a value near ``90`` being no movement).",
"pins.servoWritePin|block": "servo write|pin %name|to %value",
"pins.servoWritePin|param|name": "pin to write to",
"pins.servoWritePin|param|value": "angle or rotation speed, eg:180,90,0",
"pins.setPull": "Configures the pull of this pin.",
"pins.setPull|block": "set pull|pin %pin|to %pull",
"pins.setPull|param|name": "pin to set the pull mode on",
"pins.setPull|param|pull": "one of the mbed pull configurations: PullUp, PullDown, PullNone ",
"pins|block": "pins",
"serial": "Reading and writing data over a serial connection.",
"serial.readLine": "Reads a line of text from the serial port.",
"serial.readLine|block": "serial read line",
"serial.redirect": "Dynamically configuring the serial instance to use pins other than USBTX and USBRX.",
"serial.redirect|block": "serial redirect to|TX %tx|RX %rx|at baud rate %rate",
"serial.redirect|param|rx": "the new reception pin",
"serial.redirect|param|tx": "the new transmission pins",
"serial.writeLine": "Prints a line of text to the serial",
"serial.writeLine|block": "serial|write line %text",
"serial.writeNumber": "Prints a numeric value to the serial",
"serial.writeNumber|block": "serial|write number %value",
"serial.writeString": "Sends a piece of text through Serial connection.",
"serial.writeString|block": "serial write string %text",
"serial.writeValue": "Writes a ``name: value`` pair line to the serial.",
"serial.writeValue|block": "serial|write value %name|= %value",
"serial.writeValue|param|name": "name of the value stream, eg: x",
"serial.writeValue|param|value": "to write",
"serial|block": "serial"
}