LP5562
This package is a quick and dirty assembler for the Texas Instruments LP5562. Package is primarily written so that an open-source toolchain can be provided for the LED controller used in the keyswitch.one project.
Usage
First install via npm:
npm install --save lp5562
Then include it in your project
// if using typescript or ES6 modules // or if using ES5;
Typescript definitions are included in the package. The function's signature is:
assemble(program:string) : Uint16Array
where program
is the string representation of the assembly program, and the resulting Uint16Array
is an array of 48 16-bit WORDs representing the memory map of LP5562's program space.
assemble` .engine1 set_pwm 255 flash: ramp 200, -128 ramp 200, 128 branch 5, flash ramp 200, -128 ramp 200, -127 end, i`;
Produces:
Uint16Array[ 65344, 65283, 32515, 33186, 65283, 65027, 208, 0, 0, 0, ... 0 ]
All data is provided in big-endian format (as the LP5562 is an 8-bit device). Feed the Uint16Array#buffer
to a Uint8Array
or use a DataView
if you need a different data representation.