Browse Source

Adding example API scripts

capsense
Jacob Alexander 8 years ago
parent
commit
df7d0be00d
2 changed files with 75 additions and 0 deletions
  1. 31
    0
      Scan/ISSILed/exampleAPI.bash
  2. 44
    0
      Scan/STLcd/exampleAPI.bash

+ 31
- 0
Scan/ISSILed/exampleAPI.bash View File

@@ -0,0 +1,31 @@
#!/bin/bash
# ISSILed
# Virtual Serial Port API Example
# Jacob Alexander 2015

# XXX Set this to match your virtual serialport
# TODO Show examples for Mac OSX and Cygwin/Windows
SERIALPORT=/dev/ttyACM0

# NOTE: Make sure you don't write too quickly to the serial port, it can get overwhelmed by a modern computer
# Generally this just means commands will get ignored
# I'm using 100 ms sleeps here, but much smaller are probably sufficient

# Clear out cli buffer
printf "\r" > $SERIALPORT

# Write to ISSI Page
# Arguments
# - page
# - starting address
# - data (usually brightness) (8 bits)
#
# For brightness control, set the starting address to 0x24
# By default only page 0x00 is used
# There are 8 pages of memory (these can be cycled through for animiations)
# 144 led channels
# Page 0x0A is used for configuration
# See the datasheet for full details http://www.issi.com/WW/pdf/31FL3731C.pdf
sleep 0.1
printf "ledWPage 0x00 0x24 0x10 0x20 0x30 0x40 0x50\r" > $SERIALPORT


+ 44
- 0
Scan/STLcd/exampleAPI.bash View File

@@ -0,0 +1,44 @@
#!/bin/bash
# STLcd
# Virtual Serial Port API Example
# Jacob Alexander 2015

# XXX Set this to match your virtual serialport
# TODO Show examples for Mac OSX and Cygwin/Windows
SERIALPORT=/dev/ttyACM0

# NOTE: Make sure you don't write too quickly to the serial port, it can get overwhelmed by a modern computer
# Generally this just means commands will get ignored
# I'm using 100 ms sleeps here, but much smaller are probably sufficient

# Clear out cli buffer
printf "\r" > $SERIALPORT

# Change backlight color
# 3 16-bit numbers (hex or decimal) Red, Green and Blue
sleep 0.1
printf "lcdColor 0x100 0x2000 0x4000\r" > $SERIALPORT # Light blue

# Change the lcd image
# Arguments:
# - page
# - starting address
# - pixels (1 bit per pixel)
#
# There are 9 total pages of display memory, but only 4 are visable at time (it is possible to scroll though)
# Each page is 128 bits wide (16 bytes)
# See the datasheet for full details http://www.newhavendisplay.com/specs/NHD-C12832A1Z-FSRGB-FBW-3V.pdf
sleep 0.1
printf "lcdDisp 0x0 0x0 0xFF 0x13 0xFF 0x11 0xFF\r" > $SERIALPORT
sleep 0.1
printf "lcdDisp 0x1 0x10 0xFF 0x13 0xFF 0x11 0xFF 0x44\r" > $SERIALPORT
sleep 0.1
printf "lcdDisp 0x2 0x20 0xFF 0x13 0xFF 0x11 0xFF\r" > $SERIALPORT
sleep 0.1
printf "lcdDisp 0x3 0x30 0xFF 0x13 0xFF 0x11 0xFF\r" > $SERIALPORT

# Send command directly to the lcd
# See the datasheet for full details http://www.newhavendisplay.com/specs/NHD-C12832A1Z-FSRGB-FBW-3V.pdf
sleep 0.1
printf "lcdCmd 0xA7\r" > $SERIALPORT # Reverse display (0xA6 is Normal)