WOOHOO!!!
Well another step forward for sureNow you getting it.
Cheers mackrackit.Good job!!!
Dave
WOOHOO!!!
Well another step forward for sureNow you getting it.
Cheers mackrackit.Good job!!!
Dave
In Bruce's TX program under the section of Constants, he has PreAmble CON with a value of 15 HEX (I'm happy with that) Then he has Synch CON "~" = 7E HEX(I think) but how does "~" = anything if you see what I mean?
DaveCode:' Constants PreAmble CON $A5 ' 10100101 preamble Synch CON "~" ' 01111110 synch byte
In Bruce's TX program under the section of Constants, he has PreAmble CON with a value of 15 HEX (I'm happy with that) Then he has Synch CON "~" = 7E HEX(I think) but how does "~" = anything?
*** Ah, I just figured it out 7E HEX is the ASCII value for the ~ symbol right?***Code:' Constants PreAmble CON $A5 ' 10100101 preamble Synch CON "~" ' 01111110 synch byte
So sending and receiving that symbol acts as a Synch BYTE is that right?
Plus sorry I seem to have posted twice instead of editing.
Dave
""So sending and receiving that symbol acts as a Synch BYTE is that right?""
Yup.
Dave
Always wear safety glasses while programming.
Cheers mackrackit.
It's a funny game this programming, I've been scratching my head for ages trying to figure out how the Synch BYTE worked, then when the penny dropped it all seemed fairly obvious (it didn't until the penny dropped though). Still, another piece fits into the learning jigsaw I guess.
Dave
I've been doing lots of reading and slowly trying to work my way through the TX / RX progs to get an understanding of what's actually happening, the sequence etc. One thing I can't see though is this.
In the TX program we've got:
And the RX has:Code:SEROUT2 D_OUT,BAUD,[PreAmble,Synch,DAT_OUT,DAT_OUT,CHK_SUM]
So my Q is this: What's happened to the 'PreAmble BYTE' ?Code:SERIN2 D_IN,N2400,[WAIT(Synch),DAT_IN1,DAT_IN2,CHK_SUM]
The Manual says:Code:PreAmble CON $A5 ' 10100101 preamble
So in this case that would be the Synch BYTE right? Synch BYTE always first (because of the WAIT command), the rest to follow. I can't see where / how the preAmble arrives though.The list of data items to be received may be preceded by one or more qualifiers between parenthesis after WAIT. SERIN2 must receive these bytes in exact order before receiving the data items. If any byte received does not match the next byte in the qualifier sequence, the qualification process starts over
Also this from WIKI:
http://en.wikipedia.org/wiki/Syncword
Suggest to me that a PreAmble and a Synch are two ways of doing the say thing, or very similar, have a got that on right?
Dave
Last edited by LEDave; - 8th November 2010 at 22:54.
The short answer about the pre-amble is it sets up the receiver hardware with data that is not noise so when the remainder of the data comes in, in our case the SYNCH, the SYNCH byte is easily detected from noise.... The receiver hardware acts on it but not the receiver code.
SYNCH is for software
PRE-AMBLE is for hardware
Something like that.
The long answer.
http://davehouston.net/RFTipsTricks.htm
Dave
Always wear safety glasses while programming.
Hi mackrackit, thanks for the reply.
I'll settle for the short answer right now (I'm off to bed in a mo) and read the long answer tomorrow.
Dave
Bookmarks