Added serial->write numbers to support CSV data generation (#699)

* support for serial write numbers

* moving down the list

* formatting

* fixing example typo
This commit is contained in:
Peli de Halleux
2018-03-08 08:33:02 -08:00
committed by GitHub
parent 71e68481ca
commit 29de28a738
9 changed files with 69 additions and 10 deletions

View File

@ -154,7 +154,7 @@
"control.eventValue": "Gets the value of the last event executed on the bus",
"control.eventValueId": "Returns the value of a C++ runtime constant",
"control.inBackground": "Schedules code that run in the background.",
"control.onEvent": "Raises an event in the event bus.",
"control.onEvent": "Registers an event handler.",
"control.panic": "Display specified error code and stop the program.",
"control.raiseEvent": "Raises an event in the event bus.",
"control.raiseEvent|param|mode": "optional definition of how the event should be processed after construction (default is CREATE_AND_FIRE).",
@ -426,6 +426,7 @@
"serial.writeBuffer": "Sends a buffer through Serial connection",
"serial.writeLine": "Prints a line of text to the serial",
"serial.writeNumber": "Prints a numeric value to the serial",
"serial.writeNumbers": "Prints an array of numeric values to the serial as CSV",
"serial.writeString": "Sends a piece of text through Serial connection.",
"serial.writeValue": "Writes a ``name: value`` pair line to the serial.",
"serial.writeValue|param|name": "name of the value stream, eg: x",

View File

@ -343,6 +343,7 @@
"serial.redirect|block": "serial|redirect to|TX %tx|RX %rx|at baud rate %rate",
"serial.writeBuffer|block": "serial|write buffer %buffer",
"serial.writeLine|block": "serial|write line %text",
"serial.writeNumbers|block": "serial|write numbers %values",
"serial.writeNumber|block": "serial|write number %value",
"serial.writeString|block": "serial|write string %text",
"serial.writeValue|block": "serial|write value %name|= %value",

View File

@ -101,7 +101,7 @@ namespace serial {
* Sends a piece of text through Serial connection.
*/
//% help=serial/write-string
//% weight=87
//% weight=87 blockGap=8
//% blockId=serial_writestring block="serial|write string %text"
void writeString(StringData *text) {
if (!text) return;

View File

@ -32,6 +32,21 @@ namespace serial {
writeString(value.toString());
}
/**
* Prints an array of numeric values to the serial as CSV
*/
//% help=serial-write-numbers
//% weight=86
//% blockId=serial_writenumbers block="serial|write numbers %values"
export function writeNumbers(values: number[]): void {
if (!values) return;
for(let i = 0; i < values.length; ++i) {
if (i > 0) writeString(",");
writeNumber(values[i]);
}
writeLine("")
}
/**
* Writes a ``name: value`` pair line to the serial.
* @param name name of the value stream, eg: x

View File

@ -404,7 +404,7 @@ declare namespace control {
function raiseEvent(src: number, value: number, mode?: EventCreationMode): void;
/**
* Raises an event in the event bus.
* Registers an event handler.
*/
//% weight=20 blockGap=8 blockId="control_on_event" block="on event|from %src=control_event_source_id|with value %value=control_event_value_id"
//% help=control/on-event
@ -800,7 +800,7 @@ declare namespace serial {
* Sends a piece of text through Serial connection.
*/
//% help=serial/write-string
//% weight=87
//% weight=87 blockGap=8
//% blockId=serial_writestring block="serial|write string %text" shim=serial::writeString
function writeString(text: string): void;