Yes, Henrik the control is necessary, devices must tx only on request, without it the OP will not achieve much.Yes, that's possible, as long as you have control over the transmitting devices
Al.
Yes, Henrik the control is necessary, devices must tx only on request, without it the OP will not achieve much.Yes, that's possible, as long as you have control over the transmitting devices
Al.
All progress began with an idea
Thanks for the info! This particular application is a polled system, and my local PIC needs to process data and format the output into a predefined 'message'. Then when I am polled, I need to forward the data on to the host. I think ARRAYWRITE is the way to go. I was thinking about using an eeprom, but this is definately faster. I am not sure of the time between the polls yet though, and am concerned my data will back up, so need some message buffer space. Thanks very much for your help.
One interesting thing...
It seems that ARRAYWRITE does not work with indexed variables.
ARRAYWRITE MSG ["VALUE: ",DEC TMR[X]]
I'm just copying the value of TMR[X] to another variable first for now. Is this a bug, or just not accounted for or ??? Great command nonetheless.
Sorry, I was 'winging it' by memory from work. The comma was there, and still no go. I'll keep trying things as I'd really like to use this command.![]()
I've been looking at this all day, and it just doesn't work:
If I just say "HEX ACK" it produces 61110111 (no space as I specified). If I try to use "HEX2 ACK", it doesn't show the first value OR the space, just the binary number! I need to write some rather complicated structured messages and store them, but I've found thatCode:'PIC18F6722 OSC 40 ARRAYSIZE CON 20 DJAM CON %01110111 ACK CON $06 COMMAND VAR BYTE[20] MESSAGE VAR BYTE[20] LOOP1: ARRAYWRITE MESSAGE,[HEX ACK," ",BIN DJAM] ARRAYREAD MESSAGE, [COMMAND] DEBUG STR COMMAND,10,13 ARRAYWRITE MESSAGE,[REP 0\ARRAYSIZE] PAUSE 1000 GOTO LOOP1 OUTPUT: 61110111
1) IN NO CASE will ARRAYWRITE write more than two items... (if there is more, they just don't show). The exact same structure prints fine using DEBUG.
For example: ARRAYWRITE MESSAGE, ["DJ_TMR",DEC X,":",DEC DJ_TMR[X]] will only show the first two values... DJ_TMR, and DEC X - nothing further.
2) ARRAYWRITE won't work with indexed variables.
All efforts done in PBP 2.60A. If anyone can tell me what I'm doing wrong, I would be most grateful!
L.
Last edited by circuitpro; - 30th July 2010 at 05:56.
Try it like this.
Code:'pic18f6722 osc 40 arraysize con 20 djam con %01110111 ack con $06 command var byte[20] message var byte[20] loop1: Arraywrite message,[hex ack," ",bin djam,0] debug str message,10,13 arraywrite message,[rep 0\arraysize] pause 1000 goto loop1
DT
Bookmarks