This is a group for folks designing and programming embedded systems using the Rabbit Semiconductor C-programmable microcontroller. Rabbit Semi is a spin-off from Z-World who makes a variety of embedded modules and tools. This group is not affiliated with either Rabbit or Z-World, but is a user forum for sharing ideas, asking questions,
flaunting knowledge, and other typical user group stuff. The Rabbit is a powerful uC, supported by a full-featured C-compiler.
Parity MARK and Parity SPACE? - Donald Shimoda - Aug 6 0:04:21 2008
I must say NEVER before in my life have to use that things.
I must connect to a device using that kinds of parity, the first byte
use MARK parity, the others SPACE parity.
Now, how can i implement that with a rabbit processor? Im lost for
complete. :(
According to the web:
"Mark parity means that the parity bit is always set to the mark
signal condition and likewise space parity always sends the parity bit
in the space signal condition. Since these two parity options serve no
useful purpose whatsoever, they are almost never used. "
I dont see that can be implemented on rabbits, but i hope some wizard
tell me how to. :)
Supose i must send that chars
0x01, 0x03, 0x08.
How to send that using that kind of parity?
TIA.
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )
Re: Parity MARK and Parity SPACE? - Scott Henion - Aug 6 0:14:21 2008
Donald Shimoda wrote:
> I must say NEVER before in my life have to use that things.
>
> I must connect to a device using that kinds of parity, the first byte
> use MARK parity, the others SPACE parity.
>
> Now, how can i implement that with a rabbit processor? Im lost for
> complete. :(
>
> According to the web:
> "Mark parity means that the parity bit is always set to the mark
> signal condition and likewise space parity always sends the parity bit
> in the space signal condition. Since these two parity options serve no
> useful purpose whatsoever, they are almost never used. "
>
> I dont see that can be implemented on rabbits, but i hope some wizard
> tell me how to. :)
>
> Supose i must send that chars
>
> 0x01, 0x03, 0x08.
>
> How to send that using that kind of parity?
>
> TIA.
>
How many data bits?
If 7-bit, then open port as 8-bit and OR data with 0x80 to set MARK
parity AND with 0x7f for space (or other way around, never remeber the
polarity.).
If 8-bit, then it is the standard 9-bit mode. I'm not sure how to do
this with rabbit libs. You would send to the data to the address reg or
data reg depending on the 9th bit.
--
------------------------------------------
| Scott G. Henion| s...@shdesigns.org |
| Consultant | Stone Mountain, GA |
| SHDesigns http://www.shdesigns.org |
------------------------------------------
Rabbit libs: http://www.shdesigns.org/rabbit/
today's fortune
That's not Chuck Norris doing push-ups -- that's Chuck Norris moving the Earth away from
the path of a deadly asteroid.
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )
Re: Parity MARK and Parity SPACE? - Donald Shimoda - Aug 6 7:04:22 2008
--- In r...@yahoogroups.com, Scott Henion
wrote:
> If 8-bit, then it is the standard 9-bit mode. I'm not sure how to do
> this with rabbit libs. You would send to the data to the address reg or
> data reg depending on the 9th bit.
Thanks a lot Scott for your quick response, as always. :)
Is 8 bit plus MARK or SPACE parity (first byte MARK, other bytes SPACE).
My problem is, how to set serial port in 9 bit mode and how to write
the parity bit. Im lost because i always use standard functions to use
serial ports. Can please help me with setup and write ot 9 bith?
TIA
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )RE: Re: Parity MARK and Parity SPACE? - "Fournier, Pete" - Aug 6 8:35:27 2008
Donald,
This sounds like a version of RS-485 protocol where the first byte has
the information that tells which listener the data is for. I believe
SerialE485.c in "C:\Program Files\Softools WinIDE\Rabbit 1.70\Rabbit
runtime\Rabbit serial" addresses this.
-Pete
-----Original Message-----
From: r...@yahoogroups.com [mailto:r...@yahoogroups.com]
On Behalf Of Donald Shimoda
Sent: Wednesday, August 06, 2008 7:04 AM
To: r...@yahoogroups.com
Subject: [rabbit-semi] Re: Parity MARK and Parity SPACE?
--- In r...@yahoogroups.com, Scott Henion
wrote:
> If 8-bit, then it is the standard 9-bit mode. I'm not sure how to do
> this with rabbit libs. You would send to the data to the address reg
> or data reg depending on the 9th bit.
Thanks a lot Scott for your quick response, as always. :)
Is 8 bit plus MARK or SPACE parity (first byte MARK, other bytes SPACE).
My problem is, how to set serial port in 9 bit mode and how to write the
parity bit. Im lost because i always use standard functions to use
serial ports. Can please help me with setup and write ot 9 bith?
TIA
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )Re: Parity MARK and Parity SPACE? - Donald Shimoda - Aug 6 9:17:32 2008
--- In r...@yahoogroups.com, "Fournier, Pete"
wrote:
>
> Donald,
>
> This sounds like a version of RS-485 protocol where the first byte has
> the information that tells which listener the data is for. I believe
> SerialE485.c in "C:\Program Files\Softools WinIDE\Rabbit 1.70\Rabbit
> runtime\Rabbit serial" addresses this.
>
Thanks Pete. But im using dynamic c and is a hard to migrate code, ver
long.
Can you paste that code here or is copyrigthed?
By the way, im trying that without luck:
// init serial port
serDclose;
serDopen(2400);
serDdatabits(PARAM_8BIT); //theres no way to setup 9bit?
serDparity(PARAM_NOPARITY);
// send a package
WrPortI(SDAR,NULL,0x01);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0x03);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0x080);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0xF4);
waitfor(DelayMs(50));
return 1;
is supposed to be , the first byte with mark parity and the other data
with space parity.
TIA
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )RE: Re: Parity MARK and Parity SPACE? - "Fournier, Pete" - Aug 6 10:17:05 2008
Donald,
Sorry, I didn't notice I was replying to the Rabbit-semi group. Bill at
Softools might be willing to sell you rights to it, but try this
first.....
Do a search of the DCRabbit_xx.xx folder using "485" in the file name
area and you should get some hits in the C:\DCRABBIT_XX.XX\Samples area,
which should show you how to do it.
BTW: It took some effort, but I successfully ported to Softools a while
ago and found it well worth the effort. I was able to use the EXACT
same source code for a PIC and a rabbit to communicate and control a
Bluetooth chip. If I had stayed with DC I would have had to rewrite the
PIC code and then have to maintain (and debug) 2 separate sources.
-Pete
-----Original Message-----
From: r...@yahoogroups.com [mailto:r...@yahoogroups.com]
On Behalf Of Donald Shimoda
Sent: Wednesday, August 06, 2008 9:17 AM
To: r...@yahoogroups.com
Subject: [rabbit-semi] Re: Parity MARK and Parity SPACE?
--- In r...@yahoogroups.com, "Fournier, Pete"
wrote:
>
> Donald,
>
> This sounds like a version of RS-485 protocol where the first byte has
> the information that tells which listener the data is for. I believe
> SerialE485.c in "C:\Program Files\Softools WinIDE\Rabbit 1.70\Rabbit
> runtime\Rabbit serial" addresses this.
>
Thanks Pete. But im using dynamic c and is a hard to migrate code, ver
long.
Can you paste that code here or is copyrigthed?
By the way, im trying that without luck:
// init serial port
serDclose;
serDopen(2400);
serDdatabits(PARAM_8BIT); //theres no way to setup 9bit?
serDparity(PARAM_NOPARITY);
// send a package
WrPortI(SDAR,NULL,0x01);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0x03);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0x080);
waitfor(DelayMs(50));
WrPortI(SDLR,NULL,0xF4);
waitfor(DelayMs(50));
return 1;
is supposed to be , the first byte with mark parity and the other data
with space parity.
TIA
------------------------------------

(You need to be a member of rabbit-semi -- send a blank email to rabbit-semi-subscribe@yahoogroups.com )