Run sensor "change handler" also with the initial value

This commit is contained in:
Michal Moskal 2017-12-15 11:54:53 +00:00
parent 14f57f54bf
commit 41d5052583
2 changed files with 6 additions and 1 deletions

View File

@ -13,6 +13,7 @@ namespace sensors.internal {
control.runInBackground(() => { control.runInBackground(() => {
let prev = query() let prev = query()
changeHandler(prev, prev)
while (true) { while (true) {
loops.pause(periodMs) loops.pause(periodMs)
let curr = query() let curr = query()
@ -183,7 +184,7 @@ namespace sensors.internal {
Low = 3, Low = 3,
} }
export class ThresholdDetector { export class ThresholdDetector {
public id: number; public id: number;
private min: number; private min: number;
private max: number; private max: number;

View File

@ -397,6 +397,10 @@ static void runPoller(Thread *thr) {
// note that this is run without the user mutex held - it should not modify any state! // note that this is run without the user mutex held - it should not modify any state!
TValue prev = pxt::runAction0(query); TValue prev = pxt::runAction0(query);
startUser();
pxt::runAction2(thr->act, prev, prev);
stopUser();
while (true) { while (true) {
sleep_core_us(us); sleep_core_us(us);
if (paniced) if (paniced)