From 715771b991ef908b63c40c5f21c69b61370b1dfe Mon Sep 17 00:00:00 2001 From: Michal Moskal Date: Tue, 5 Apr 2016 18:21:15 -0700 Subject: [PATCH] Add readme to i2c fram module --- libs/i2c-fram/README.md | 30 ++++++++++++++++++++++++++++++ libs/i2c-fram/ftest.ts | 4 +++- libs/i2c-fram/kind.json | 1 + 3 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 libs/i2c-fram/README.md diff --git a/libs/i2c-fram/README.md b/libs/i2c-fram/README.md new file mode 100644 index 00000000..8107643b --- /dev/null +++ b/libs/i2c-fram/README.md @@ -0,0 +1,30 @@ +# I2C FRAM driver + +This library provides a driver for this FRAM part: https://www.adafruit.com/products/1895 + +The memory is accessed one byte at a time. The library provides a utility functions +to write an entire buffer. + +## Reading/writing byte + +``` +let addr = 100 +i2c_fram.writeByte(addr, 42) +let val = i2c_fram.readByte(addr) +console.log(`${addr}: ${val}`) +``` + +## Reading/writing a buffer + +This code will log current time and acceleration in X axis every second. + +``` +let bufSz = 8 +for (let addr = 0; addr < 0x8000; addr += bufSz) { + let buf = pins.createBuffer(bufSz) + buf.setNumber(NumberFormat.Int32LE, 0, input.runningTime()) + buf.setNumber(NumberFormat.Int32LE, 4, input.acceleration(Dimension.X)) + i2c_fram.writeBuffer(addr, buf) + basic.pause(1000) +} +``` diff --git a/libs/i2c-fram/ftest.ts b/libs/i2c-fram/ftest.ts index e8638dfb..0f24cfea 100644 --- a/libs/i2c-fram/ftest.ts +++ b/libs/i2c-fram/ftest.ts @@ -8,7 +8,9 @@ function toBuf(arr: number[]) { return buf } -i2c_fram.writeBuffer(98, toBuf([1,2,3,4,5,6,7])) +i2c_fram.writeBuffer(98, toBuf([1, 2, 3, 4, 5, 6, 7])) console.log("100:" + i2c_fram.readByte(100)) console.log("101:" + i2c_fram.readByte(101)) + + diff --git a/libs/i2c-fram/kind.json b/libs/i2c-fram/kind.json index ed97102e..a61350a5 100644 --- a/libs/i2c-fram/kind.json +++ b/libs/i2c-fram/kind.json @@ -2,6 +2,7 @@ "name": "i2c-fram", "description": "AdaFruit I2C FRAM driver for micro:bit", "files": [ + "README.md", "fram.ts" ], "testFiles": [