Simply Tronics Led Matrix Help
Shoeless_Joe
Posts: 4
in BASIC Stamp
I've been tinkering with the Simply Tronics Led Matrix, and I'm having trouble understanding the commands. This is an example of one SEROUT SIO,BaudRate,["PMTX",_SetForegroundColor,$00, $FF, $FF, $FF]
I want to use the _DrawDot method, I know I have to replace the parameter, but nothing shows up on the board, I tried inputting coordinates as an integer, but I'm not sure where. The command used to draw an ascii letter replaces the last $00.
I want to use the _DrawDot method, I know I have to replace the parameter, but nothing shows up on the board, I tried inputting coordinates as an integer, but I'm not sure where. The command used to draw an ascii letter replaces the last $00.
Comments
' File: RGB LED Matrix Test.bs2
' {$STAMP BS2}
' {$PBASIC 2.5}
Baudrate CON 31 'Set Baud rate to 19200 bps
SIO PIN 15 'Connect the module(s) to pin 15
_UpdateScreen CON $00
_SetPointerX CON $03
_SetPointerY CON $04
_SetForegroundColor CON $11
_SetBackgroundColor CON $12
_DisplayChar0508 CON $13
_Copy2bxGDRAM CON $0A
_DisplaybxGDRAM CON $0B
_fillGDRAM CON $0C ' Fill the GDRAM with Data(User Defined)
_DisplayCustomerBMP1 CON $1B
NUM_LETTERS VAR Byte ' ammount of letters in array
NUM_LETTERS = 10
Index VAR Byte(10) 'array to hold all the letters
counter VAR Byte
Index(0) = "H"
Index(1) = "E"
Index(2) = "L"
Index(3) = "L"
Index(4) = "O"
Index(5) = "W"
Index(6) = "O"
Index(7) = "R"
Index(8) = "L"
Index(9) = "D"
test_main:
PAUSE 2000
SEROUT SIO,BaudRate,["PMTX",_fillGDRAM,$00,$00,$00,$00] ' Clear
SEROUT SIO,BaudRate,["PMTX",_UpdateScreen,$00,$00,$00,$00]
SEROUT SIO,BaudRate,["PMTX",_SetPointerX,$00,$00,$00,$00]
SEROUT SIO,BaudRate,["PMTX",_SetPointerY,$00,$00,$00,$00]
SEROUT SIO,BaudRate,["PMTX",_SetForegroundColor,$00, $FF, $FF, $FF]
DO
FOR counter = 0 TO NUM_LETTERS
SEROUT SIO,BaudRate,["PMTX",_DisplayChar0508,$00,$00,$00,Index(counter)]
SEROUT SIO,BaudRate,["PMTX",_UpdateScreen,$00,$00,$00,$00]
PAUSE 500
NEXT
LOOP
SEROUT SIO,BaudRate,["PMTX",_DisplayCustomerBMP1,$00,$00,$00,$00]
SEROUT SIO,BaudRate,["PMTX",_UpdateScreen,$00,$00,$00,$00]
So I downloaded this BS2 code from the Simply site and it worked just fine. So at least the program is right. Perhaps if you try that specific code you can find out whether it is hardware or software.
Don't forget the 4.7K resistor.
I *did* notice that this is End of Life at Simply.
tc
Edit: I guess I misunderstood the question. _DrawDot $00, $Blue, $Green, $Red draws a dot of the indicated 24-bit color at the current XY position. You have to proceed it with a _SetPointerX $00, $00, $00, $Xposition and a _SetPointerY $00, $00, $00, $YPosition and follow it with a _UpdateScreen $00, $00, $00, $00. You are sending nearly 40 bytes of 19200 baud stuff to write a single pixel. This is one of the things I liked least about the interface. EndEdit
Here is a pointer to a thread I started some time ago when I wanted to use these to build a message board.this thread