better bus support
This commit is contained in:
parent
7bb8f480ae
commit
e9bd0050d7
@ -16,15 +16,19 @@ enum EventCreationMode {
|
|||||||
CreateAndFire
|
CreateAndFire
|
||||||
}
|
}
|
||||||
|
|
||||||
enum RuntimeContants {
|
enum EventBusSource {
|
||||||
//% enumVal=MICROBIT_ID_BUTTON_A
|
//% enumVal=MICROBIT_ID_BUTTON_A
|
||||||
MICROBIT_ID_BUTTON_A,
|
MICROBIT_ID_BUTTON_A,
|
||||||
//% enumVal=MICROBIT_ID_BUTTON_B
|
//% enumVal=MICROBIT_ID_BUTTON_B
|
||||||
MICROBIT_ID_BUTTON_B,
|
MICROBIT_ID_BUTTON_B,
|
||||||
//% enumVal=MICROBIT_ID_BUTTON_AB
|
//% enumVal=MICROBIT_ID_BUTTON_AB
|
||||||
MICROBIT_ID_BUTTON_AB,
|
MICROBIT_ID_BUTTON_AB,
|
||||||
//% enumVal=MICROBIT_BUTTON_EVT_CLICK
|
//% enumVal=MICROBIT_ID_RADIO
|
||||||
MICROBIT_BUTTON_EVT_CLICK,
|
MICROBIT_ID_RADIO,
|
||||||
|
//% enumVal=MICROBIT_ID_GESTURE
|
||||||
|
MICROBIT_ID_GESTURE,
|
||||||
|
//% enumVal=MICROBIT_ID_ACCELEROMETER
|
||||||
|
MICROBIT_ID_ACCELEROMETER,
|
||||||
//% enumVal=MICROBIT_ID_IO_P0
|
//% enumVal=MICROBIT_ID_IO_P0
|
||||||
MICROBIT_ID_IO_P0,
|
MICROBIT_ID_IO_P0,
|
||||||
//% enumVal=MICROBIT_ID_IO_P1
|
//% enumVal=MICROBIT_ID_IO_P1
|
||||||
@ -63,18 +67,25 @@ enum RuntimeContants {
|
|||||||
MICROBIT_ID_IO_P19,
|
MICROBIT_ID_IO_P19,
|
||||||
//% enumVal=MICROBIT_ID_IO_P20
|
//% enumVal=MICROBIT_ID_IO_P20
|
||||||
MICROBIT_ID_IO_P20,
|
MICROBIT_ID_IO_P20,
|
||||||
|
//% enumVal=MES_DEVICE_INFO_ID
|
||||||
|
MES_DEVICE_INFO_ID,
|
||||||
|
//% enumVal=MES_SIGNAL_STRENGTH_ID
|
||||||
|
MES_SIGNAL_STRENGTH_ID,
|
||||||
|
//% enumVal=MES_DPAD_CONTROLLER_ID
|
||||||
|
MES_DPAD_CONTROLLER_ID,
|
||||||
//% enumVal=MES_BROADCAST_GENERAL_ID
|
//% enumVal=MES_BROADCAST_GENERAL_ID
|
||||||
MES_BROADCAST_GENERAL_ID,
|
MES_BROADCAST_GENERAL_ID,
|
||||||
//% enumVal=MICROBIT_ID_RADIO
|
}
|
||||||
MICROBIT_ID_RADIO,
|
|
||||||
|
enum EventBusValue {
|
||||||
|
//% enumVal=MICROBIT_EVT_ANY
|
||||||
|
MICROBIT_EVT_ANY,
|
||||||
|
//% enumVal=MICROBIT_BUTTON_EVT_CLICK
|
||||||
|
MICROBIT_BUTTON_EVT_CLICK,
|
||||||
//% enumVal=MICROBIT_RADIO_EVT_DATAGRAM
|
//% enumVal=MICROBIT_RADIO_EVT_DATAGRAM
|
||||||
MICROBIT_RADIO_EVT_DATAGRAM,
|
MICROBIT_RADIO_EVT_DATAGRAM,
|
||||||
//% enumVal=MICROBIT_ID_GESTURE
|
|
||||||
MICROBIT_ID_GESTURE,
|
|
||||||
//% enumVal=MICROBIT_ACCELEROMETER_EVT_DATA_UPDATE
|
//% enumVal=MICROBIT_ACCELEROMETER_EVT_DATA_UPDATE
|
||||||
MICROBIT_ACCELEROMETER_EVT_DATA_UPDATE,
|
MICROBIT_ACCELEROMETER_EVT_DATA_UPDATE,
|
||||||
//% enumVal=MICROBIT_ID_ACCELEROMETER
|
|
||||||
MICROBIT_ID_ACCELEROMETER,
|
|
||||||
//% enumVal=MES_ALERT_EVT_ALARM1
|
//% enumVal=MES_ALERT_EVT_ALARM1
|
||||||
MES_ALERT_EVT_ALARM1,
|
MES_ALERT_EVT_ALARM1,
|
||||||
//% enumVal=MES_ALERT_EVT_ALARM2
|
//% enumVal=MES_ALERT_EVT_ALARM2
|
||||||
@ -185,9 +196,16 @@ namespace control {
|
|||||||
* Schedules code that run in the background.
|
* Schedules code that run in the background.
|
||||||
*/
|
*/
|
||||||
//% help=control/in-background shim=micro_bit::runInBackground
|
//% help=control/in-background shim=micro_bit::runInBackground
|
||||||
//% blockId="control_in_background" block="run in background"
|
//% blockId="control_in_background" block="run in background" blockGap=8
|
||||||
export function inBackground(body: Action): void { }
|
export function inBackground(body: Action): void { }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Resets the BBC micro:bit.
|
||||||
|
*/
|
||||||
|
//% weight=30 shim=uBit.reset async help=control/reset
|
||||||
|
//% blockId="control_reset" block="reset"
|
||||||
|
export function reset(): void { }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Raises an event in the event bus.
|
* Raises an event in the event bus.
|
||||||
@param src ID of the MicroBit Component that generated the event e.g. MICROBIT_ID_BUTTON_A.
|
@param src ID of the MicroBit Component that generated the event e.g. MICROBIT_ID_BUTTON_A.
|
||||||
@ -195,28 +213,28 @@ namespace control {
|
|||||||
@param mode optional definition of how the event should be processed after construction (default is CREATE_AND_QUEUE).
|
@param mode optional definition of how the event should be processed after construction (default is CREATE_AND_QUEUE).
|
||||||
*/
|
*/
|
||||||
// shim=micro_bit::busRaiseEvent
|
// shim=micro_bit::busRaiseEvent
|
||||||
//% weight=21 blockGap=8 blockId="control_raise_event" block="raise event|from source %src=control_constant|with value %value=control_constant" blockExternalInputs=1
|
//% weight=21 blockGap=12 blockId="control_raise_event" block="raise event|from source %src=control_event_source|with value %value=control_event_value" blockExternalInputs=1
|
||||||
export function raiseEvent(src: number, value: number, mode: EventCreationMode = EventCreationMode.CreateAndQueue): void { }
|
export function raiseEvent(src: number, value: number, mode: EventCreationMode = EventCreationMode.CreateAndQueue): void { }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Raises an event in the event bus.
|
* Raises an event in the event bus.
|
||||||
*/
|
*/
|
||||||
// shim=micro_bit::onBusEvent
|
// shim=micro_bit::onBusEvent
|
||||||
//% weight=20 blockGap=8 blockId="control_on_event" block="on event|from %src=control_constant|value %value=control_constant"
|
//% weight=20 blockGap=8 blockId="control_on_event" block="on event|from %src=control_event_source|with value %value=control_event_value" blockExternalInputs=1
|
||||||
export function onEvent(src: number, value: number, handler: Action): void { }
|
export function onEvent(src: number, value: number, handler: Action): void { }
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the value of a C++ runtime constant
|
* Returns the value of a C++ runtime constant
|
||||||
*/
|
*/
|
||||||
//% weight=19 shimw=TD_ID weight=19 blockId="control_constant" block="%id"
|
//% weight=19 shimw=TD_ID weight=19 blockId="control_event_source" block="%id"
|
||||||
export function constant(id: RuntimeContants) : number {
|
export function eventSource(id: EventBusSource) : number {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Resets the BBC micro:bit.
|
* Returns the value of a C++ runtime constant
|
||||||
*/
|
*/
|
||||||
//% weight=1 shim=uBit.reset async help=control/reset
|
//% weight=19 shimw=TD_ID weight=19 blockId="control_event_value" block="%id"
|
||||||
//% blockId="control_reset" block="reset"
|
export function eventValue(id: EventBusValue) : number {
|
||||||
export function reset(): void { }
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user