From 9dbda446e58a30c5f5cc742d8a26ca400fd05884 Mon Sep 17 00:00:00 2001 From: pelikhan Date: Mon, 9 Oct 2023 09:10:27 -0700 Subject: [PATCH] updated sample/multi support in lcd --- packages/drivers/src/grovergblcd.ts | 25 +++++++++++++++++++-- packages/sampleprj/src/maingrovelcd16x2.ts | 23 ++++++++++++------- website/static/img/samples/lcd-sims.png | Bin 0 -> 53150 bytes 3 files changed, 38 insertions(+), 10 deletions(-) create mode 100644 website/static/img/samples/lcd-sims.png diff --git a/packages/drivers/src/grovergblcd.ts b/packages/drivers/src/grovergblcd.ts index c0caa823a1..307f7f2037 100644 --- a/packages/drivers/src/grovergblcd.ts +++ b/packages/drivers/src/grovergblcd.ts @@ -148,10 +148,31 @@ export class GroveRGBLCD extends I2CDriver { async render(message: string) { await this.clear() - if (message?.length > 0) + if (message?.length > 0) { + let col = 0 + let row = 0 for (let i = 0; i < message.length; ++i) { - await this.write(message.charCodeAt(i)) + const c = message.charCodeAt(i) + if (c === 10) { // \n + col = 0 + row += 1 + await this.newLine(col, row) + } + else if (c === 13) { + // skip + } else { + // in bounds + if (col < this.columns && row < this.lines) + await this.write(c) + col += 1 + } } + } + } + + private async newLine(col: number, row: number) { + col = row === 0 ? col | 0x80 : col | 0xc0 + await this.writeBuf(Buffer.from([0x80, col])) } } diff --git a/packages/sampleprj/src/maingrovelcd16x2.ts b/packages/sampleprj/src/maingrovelcd16x2.ts index d1386ddd8a..1ee70e2fe9 100644 --- a/packages/sampleprj/src/maingrovelcd16x2.ts +++ b/packages/sampleprj/src/maingrovelcd16x2.ts @@ -1,16 +1,23 @@ -import "@dsboard/seeed_xiao_esp32c3" -import * as ds from "@devicescript/core" import { - XiaoGroveShield, startGroveRGBLCD16x2, startBME680, + XiaoGroveShield, } from "@devicescript/drivers" +import { ValueDashboard } from "@devicescript/runtime" + +const shield = new XiaoGroveShield() +const { temperature, humidity } = await startBME680({ + address: 0x76, +}) +const screen = await startGroveRGBLCD16x2() -const board = new XiaoGroveShield() +const dashboard = new ValueDashboard(screen, { + temp: { digits: 1, unit: "C" }, + humi: { digits: 0, unit: "%" }, +}) -const { temperature } = await startBME680() -const lcd = await startGroveRGBLCD16x2() setInterval(async () => { - const temp = Math.round(await temperature.reading.read()) - await lcd.message.write(`temp: ${temp}C`) + dashboard.values.temp = await temperature.reading.read() + dashboard.values.humi = await humidity.reading.read() + await dashboard.show() }, 1000) diff --git a/website/static/img/samples/lcd-sims.png b/website/static/img/samples/lcd-sims.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c8bb805c642fa05148ce4cd8b0c891c4ff3e1b GIT binary patch literal 53150 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

$-MfVYp`k{AZ-gw<=n^1 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 literal 0 HcmV?d00001