Search the web
Sign In
New User? Sign Up
rabbit-semi · Group for Rabbit C-programmable micros
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Message search is now enhanced, find messages faster. Take it for a spin.

Best of Y! Groups

   Check them out and nominate your group.
Having problems with message search? Fill out this form to ensure your group is one of the first to be migrated to the new message search system.

Messages

  Messages Help
Advanced
Messages 39540 - 39569 of 39599   Newest  |  < Newer  |  Older >  |  Oldest
Messages: Show Message Summaries   (Group by Topic) Sort by Date v  
#39569 From: "seecwriter" <seecwriter@...>
Date: Tue Nov 24, 2009 9:51 pm
Subject: Re: Debug suggestion
seecwriter
Offline Offline
Send Email Send Email
 
I am not checking the return value of the write function. I know that is
verbotin, but I'm not sure what my program would do if the write failed?

If I check the return value, and then send the result out the debug port, I need
to have debug enabled. When debug is enabled, it doesn't fail. And looking at
the ethernet traffic with wireshark with debug enabled, I get a lot of packets
that have one or two entries per packet. There are no packets have more than two
entries.
Perhaps this suggests that because debug causes slower code, the enet buffers
have time to be freed up before the next write. I have TCP_BUF_SIZE set to 1024,
and the total amount of data being sent is 640.

Steve

--- In rabbit-semi@yahoogroups.com, Scott Henion <shenion@...> wrote:
>
> seecwriter wrote:
> >> What is your code doing at this point. Is it calling tcp_tick() so >the
rest can be sent out after the Nagle timeout?
> >>
> >
> > Yes. After calling SendEnet 11 times (1 header, 10 entries) it goes back to
the main loop where it calls tcp_tick, among other things.
> >
> >
>
> What are you uing to write to the socket?
> Are you checking the return value of the write function?
>
>
> --
> ------------------------------------------
> | Scott G. Henion| shenion@... |
> |   Consultant   |   Stone Mountain, GA  |
> |   SHDesigns http://www.shdesigns.org   |
> ------------------------------------------
>
> today's fortune
> I came out of twelve years of college and I didn't even know how to sew.
> All I could do was account -- I couldn't even account for myself.
> 	 -- Firesign Theatre
>

#39568 From: Scott Henion <shenion@...>
Date: Tue Nov 24, 2009 9:02 pm
Subject: Re: Re: Debug suggestion
shdesigns2003
Offline Offline
Send Email Send Email
 
seecwriter wrote:
What is your code doing at this point. Is it calling tcp_tick() so >the rest can be sent out after the Nagle timeout?

Yes. After calling SendEnet 11 times (1 header, 10 entries) it goes back to the main loop where it calls tcp_tick, among other things.

What are you uing to write to the socket?
Are you checking the return value of the write function?


-- ------------------------------------------
| Scott G. Henion| shenion@... |
| Consultant | Stone Mountain, GA |
| SHDesigns http://www.shdesigns.org |
------------------------------------------
today's fortune I came out of twelve years of college and I didn't even know how to sew.
All I could do was account -- I couldn't even account for myself.
-- Firesign Theatre

#39567 From: "seecwriter" <seecwriter@...>
Date: Tue Nov 24, 2009 8:54 pm
Subject: Re: Debug suggestion
seecwriter
Offline Offline
Send Email Send Email
 
>
>What is your code doing at this point. Is it calling tcp_tick() so >the rest
can be sent out after the Nagle timeout?

Yes. After calling SendEnet 11 times (1 header, 10 entries) it goes back to the
main loop where it calls tcp_tick, among other things.

Steve

#39566 From: Scott Henion <shenion@...>
Date: Tue Nov 24, 2009 8:43 pm
Subject: Re: Re: Debug suggestion
shdesigns2003
Offline Offline
Send Email Send Email
 
seecwriter wrote:
> I've been sniffing the network with wireshark to see if I can get a clue as to
what is happening. Perhaps someone can help decipher what I'm seeing.
>
> I first want to give a little more detail on how data is sent.
>
> The Rabbit logs data in 64-byte entry strings. When requested, 10-entries are
returned. But I don't create a 640-byte buffer to store the entries in. I have
one 80-byte buffer that I load with one entry and send, then repeat with the
next entry, etc., until all 10 are sent. This works great for serial, but not
for ethernet.
>
> This is my ethernet routine that is called for each entry sent:
>
> void SendEnet( tcp_socket *s, char *p, int len) {
>
>   sock_flushnext(s);
>   sock_awrite(s,p,len);
>   tcp_tick(s);
> }
>
> On wireshark I see the command from the host to the Rabbit requesting the
data.
>
> The next packet is a response from the Rabbit with the data header.
>
> The next packet is a response from the Rabbit with 8 of the 10 entries. I
expected one entry per packet. That may or may not be relevant.
>
> The next packet is from the host to the rabbit. The "info" section for this
packet is: anet-1 > cisco-sccp [ACK] Seq=40 Ack=1953 Win=65049 Len=0.
> I'm assuming this is an acknowledge from the host.
>
> The next packet appears to be marked as a duplicate of a previous packet. The
"info" for this packet is: [TCP Dup ACK 3136#1] anet1 [ACK] Seq=1953 Ack=40
Win=512 Len=0
>
> At this point there is no further communication, and I've only received 8 of
the 10 entries.
>
> Are there any clues here?
>
>
>

What is your code doing at this point. Is it calling tcp_tick() so the
rest can be sent out after the Nagle timeout?


--
------------------------------------------
| Scott G. Henion| shenion@... |
|   Consultant   |   Stone Mountain, GA  |
|   SHDesigns http://www.shdesigns.org   |
------------------------------------------

today's fortune
Steinbach's Guideline for Systems Programming:
	 Never test for an error condition you don't know how to handle.

#39565 From: "seecwriter" <seecwriter@...>
Date: Tue Nov 24, 2009 7:38 pm
Subject: Re: Debug suggestion
seecwriter
Offline Offline
Send Email Send Email
 
I've been sniffing the network with wireshark to see if I can get a clue as to
what is happening. Perhaps someone can help decipher what I'm seeing.

I first want to give a little more detail on how data is sent.

The Rabbit logs data in 64-byte entry strings. When requested, 10-entries are
returned. But I don't create a 640-byte buffer to store the entries in. I have
one 80-byte buffer that I load with one entry and send, then repeat with the
next entry, etc., until all 10 are sent. This works great for serial, but not
for ethernet.

This is my ethernet routine that is called for each entry sent:

void SendEnet( tcp_socket *s, char *p, int len) {

   sock_flushnext(s);
   sock_awrite(s,p,len);
   tcp_tick(s);
}

On wireshark I see the command from the host to the Rabbit requesting the data.

The next packet is a response from the Rabbit with the data header.

The next packet is a response from the Rabbit with 8 of the 10 entries. I
expected one entry per packet. That may or may not be relevant.

The next packet is from the host to the rabbit. The "info" section for this
packet is: anet-1 > cisco-sccp [ACK] Seq=40 Ack=1953 Win=65049 Len=0.
I'm assuming this is an acknowledge from the host.

The next packet appears to be marked as a duplicate of a previous packet. The
"info" for this packet is: [TCP Dup ACK 3136#1] anet1 [ACK] Seq=1953 Ack=40
Win=512 Len=0

At this point there is no further communication, and I've only received 8 of the
10 entries.

Are there any clues here?


--- In rabbit-semi@yahoogroups.com, "seecwriter" <seecwriter@...> wrote:
>
> I have a procedure that collects some data in a loop, and then sends that data
out the selected port. The data is standard ASCII with a leading STX character
and a closing ETX character. The port is either one of the serial ports or the
ethernet port. If the ethernet port is used, a CR/LF pair is added after the
ETX.
> I haven't experienced any problems when using the serial ports. But when I use
the ethernet port, I don't get the full message. If I run the code under the
debugger, it won't fail. If I add a printf statement to send debug data out
another serial port, the problem won't manifest it self either. If I just format
a string using sprintf, and then throw the string away, the procedure works
fine. The ethernet connection is TCP/IP.
> Does anyone have any other ideas on how I might troubleshoot this?
> I'm using DC 9.25.
>

#39564 From: "monte_dalrymple" <monted@...>
Date: Tue Nov 24, 2009 3:34 pm
Subject: The Evolution of Rabbits
monte_dalrymple
Offline Offline
Send Email Send Email
 
If anyone is interested, I have an article entitled "The Evolution
of Rabbits" in the December digital-plus edition of Circuit Cellar
magazine. It talks about the process and challenges of designing
five generatons of Rabbit microprocessors.

Monte Dalrymple

#39563 From: "Francesco Costella" <costellaf@...>
Date: Tue Nov 24, 2009 6:32 am
Subject: RE: Windows 7
checco_bt
Offline Offline
Send Email Send Email
 

Hi Alan,

 

Check this link:

 

http://www.rabbit.com/documentation/docs/refs/TN257/TN257.htm

 

Francesco

 

From: rabbit-semi@yahoogroups.com [mailto:rabbit-semi@yahoogroups.com] On Behalf Of Alan Matheson
Sent: 24 November 2009 00:46
To: rabbit-semi@yahoogroups.com
Subject: [rabbit-semi] Windows 7

 

 

Windows 7 doesn't like Dynamic C 9.24 and reports it as incompatible even when I try running  in earlier modes.  It seems to work OK for a while then does things like take a very long time to start up, 30 seconds or so,  eventually producing the blue screen of death after a few slow startups.  Is there any fix for this problem or am I going to have to use an older computer?

 

I should say that apart from this I am delighted with Windows 7.

 

Alan Matheson


#39562 From: "seecwriter" <seecwriter@...>
Date: Tue Nov 24, 2009 1:44 am
Subject: Debug suggestion
seecwriter
Offline Offline
Send Email Send Email
 
I have a procedure that collects some data in a loop, and then sends that data
out the selected port. The data is standard ASCII with a leading STX character
and a closing ETX character. The port is either one of the serial ports or the
ethernet port. If the ethernet port is used, a CR/LF pair is added after the
ETX.
I haven't experienced any problems when using the serial ports. But when I use
the ethernet port, I don't get the full message. If I run the code under the
debugger, it won't fail. If I add a printf statement to send debug data out
another serial port, the problem won't manifest it self either. If I just format
a string using sprintf, and then throw the string away, the procedure works
fine. The ethernet connection is TCP/IP.
Does anyone have any other ideas on how I might troubleshoot this?
I'm using DC 9.25.

#39561 From: "Alan Matheson" <alan_matheson@...>
Date: Mon Nov 23, 2009 11:46 pm
Subject: Windows 7
alan_matheson
Offline Offline
Send Email Send Email
 
Windows 7 doesn't like Dynamic C 9.24 and reports it as incompatible even when I try running  in earlier modes.  It seems to work OK for a while then does things like take a very long time to start up, 30 seconds or so,  eventually producing the blue screen of death after a few slow startups.  Is there any fix for this problem or am I going to have to use an older computer?
 
I should say that apart from this I am delighted with Windows 7.
 
Alan Matheson

#39560 From: "yair24" <yairb@...>
Date: Sat Nov 21, 2009 9:47 am
Subject: http_flashspec[] authentication. upgrading DC version from 7.25 to 9.62
yair24
Offline Offline
Send Email Send Email
 
Hello,

I have a code that I need to modify.

the code runs on a rabbit 2200 module with ethernet.
it is a website that read some data from the board and transmit it to the
website.


I have there a const HttpSpec array called http_flashspec[] that is initialized
with many lines such as the following:

const HttpSpec http_flashspec[] =
{
  {HTTPSPEC_FILE,"/",index_html,  NULL, 0, NULL, NULL},
  {HTTPSPEC_FILE,"/index.html",index_html,  NULL, 0, NULL, NULL},
  {HTTPSPEC_FILE,"/SetIPpar.shtml",SetIPPar_shtml, NULL, 0, NULL, spr}
.
.
.
};

and more lines.

the problem I have is with the last line that has the spr var at at the end.

the spr is a variable of type "ServerPermissions", that should popup a
authentication popup before opening the "SetIpPar" page.
it used to be a "httprealm" variable because this software was compiled in a
7.25 dynamic C version. I was asked to modify the software so it can be compiled
in a 9.62 dynamic C compiler due to a problem that occured in that software when
they compiled it in the 7.25 ver.

so I saw that I need to change the httprealm to a ServerPermission in order to
adjust the software to the 9.62 compiler.

when I try to compile this I get an error:
"constant initializer expected"
and it points to the NULL before the spr var in that line.


I must mention that this is the first time I deal with a tcpip rabbit. (I have
many years of experience with rabbit 2020 with no TCPIP on it.)

can anybody see what is my mistake here? or give me a link to read more about
how to make the modification I want to do?

thanks in advanced.

#39559 From: kevin asato <kc6pob@...>
Date: Thu Nov 19, 2009 5:55 am
Subject: Re: Re: RCM5700 Interface Board Schematic - RJ45 TX+/- Flipped?
kc6pob
Offline Offline
Send Email Send Email
 
with transformer coupling, flipping + and - leads are not an issue. I have done this on a few occaisions with T1 signals. The problem would result when using an older device which uses bi-polar (transistor) line drivers in which the polarity did make a difference.
 
kevin
kc6pob

--- On Wed, 11/18/09, eilidhs_daddy <eilidhsdad@...> wrote:

From: eilidhs_daddy <eilidhsdad@...>
Subject: [rabbit-semi] Re: RCM5700 Interface Board Schematic - RJ45 TX+/- Flipped?
To: rabbit-semi@yahoogroups.com
Date: Wednesday, November 18, 2009, 2:04 AM

 
I noticed this too when recently laying a board for RCM5700
Other documents from Rabbit show TX+ and TX- going to the pins you'd expect.

I did some experimenting and discovered that it's probably a mistake in the drawing. In my design I connected TX+ to TX+ and TX- to TX- and it works perfectly.

Please remember that you need to pull the ACT signalto +3v3 via 1K (and led if required) and the LINK light down to gnd via 1K (+led) or the PHY will come up with the wrong address and wont work.

-K

--- In rabbit-semi@ yahoogroups. com, "Jeffrey" <jeff_shapiro@ ...> wrote:
>
> Hi,
>
> I'm designing a carrier board for a RCM5750 and am working from the RCM5700 Interface Board Schematic from Rabbit. I just noticed that the TX+ and TX- signals from the RJ45 jack (with integrated magnetics) go to the TX- and TX+ (flipped) on the Rabbit module in the schematic. I've been trying to examine the actual interface board but since it's surface mount with teeny tiny traces and small value resistors I'm not having much luck with either a multimeter or my eyes (with magnification) . The RX+ and RX- go to their respective ports on the module (plus to plus and minus to minus). Just seems odd that the RX plus and minus match up but the TX plus and minus do not. Maybe since the signals are going through transformers (within the jack) it doesn't matter?
>
> Thanks!
>
> -- Jeff
>



#39558 From: "tijesmurf" <tijesmurf@...>
Date: Wed Nov 18, 2009 4:08 pm
Subject: Redirecting echoed data in debug window to decision statement
tijesmurf
Offline Offline
Send Email Send Email
 
Hi!

I have data being sent from a VB.net application via bluetooth to an RCM3100
with an eb506 module. The data is being echoed to the debug port, so I know that
the correct data is being received. What I would now like to do is, if the data
is correct in the debug window, redirect the data to be used in a decision
statement.

For example:
If the data in the debug port reads "ON", activate some pin high or low?

Can anyone assist with this?

Stefan

#39557 From: "Stan" <stanley_hsu@...>
Date: Wed Nov 18, 2009 12:21 pm
Subject: BL2100 LCD Header for use as Analog Input
stanley_hsu
Offline Offline
Send Email Send Email
 
Hi.

I would like to know if someone has ever made any board that could be used to
plug into what is the LCD header on the BL2100 for use as a 16 bit AD.  If so,
how many AD does it have (best if there is 2).  I would like to see if I can buy
this.

If not, depending on cost, is anyone interested in seeing if this is possible
for design etc?

Thanks.

Stan the Man

#39556 From: "Derek J. Lassen" <xl198cv56@...>
Date: Wed Nov 18, 2009 10:34 am
Subject: (corrected) Re: RCM5700 Interface Board Schematic - RJ45 TX+/- Flipped?
xl198cv56
Offline Offline
Send Email Send Email
 
Sorry - that should read:
Many PHY implementations can do auto MDI/MDIX to provide crossover so it doesn't need a crossover cable.

(s) Derek


At 22:06 11/17/2009 +0000, you wrote:
 

Hi,

I'm designing a carrier board for a RCM5750 and am working from the RCM5700 Interface Board Schematic from Rabbit. I just noticed that the TX+ and TX- signals from the RJ45 jack (with integrated magnetics) go to the TX- and TX+ (flipped) on the Rabbit module in the schematic. I've been trying to examine the actual interface board but since it's surface mount with teeny tiny traces and small value resistors I'm not having much luck with either a multimeter or my eyes (with magnification). The RX+ and RX- go to their respective ports on the module (plus to plus and minus to minus). Just seems odd that the RX plus and minus match up but the TX plus and minus do not. Maybe since the signals are going through transformers (within the jack) it doesn't matter?

Thanks!

-- Jeff


#39555 From: "eilidhs_daddy" <eilidhsdad@...>
Date: Wed Nov 18, 2009 10:04 am
Subject: Re: RCM5700 Interface Board Schematic - RJ45 TX+/- Flipped?
eilidhs_daddy
Offline Offline
Send Email Send Email
 
I noticed this too when recently laying a board for RCM5700
Other documents from Rabbit show TX+ and TX- going to the pins you'd expect.

I did some experimenting and discovered that it's probably a mistake in the
drawing. In my design I connected TX+ to TX+ and TX- to TX- and it works
perfectly.

Please remember that you need to pull the ACT signalto +3v3 via 1K (and  led if
required) and the LINK light down to gnd via 1K (+led) or the PHY will come up
with the wrong address and wont work.

-K

--- In rabbit-semi@yahoogroups.com, "Jeffrey" <jeff_shapiro@...> wrote:
>
> Hi,
>
>   I'm designing a carrier board for a RCM5750 and am working from the RCM5700
Interface Board Schematic from Rabbit.  I just noticed that the TX+ and TX-
signals from the RJ45 jack (with integrated magnetics) go to the TX- and TX+
(flipped) on the Rabbit module in the schematic.  I've been trying to examine
the actual interface board but since it's surface mount with teeny tiny traces
and small value resistors I'm not having much luck with either a multimeter or
my eyes (with magnification).  The RX+ and RX- go to their respective ports on
the module (plus to plus and minus to minus).  Just seems odd that the RX plus
and minus match up but the TX plus and minus do not.  Maybe since the signals
are going through transformers (within the jack) it doesn't matter?
>
>   Thanks!
>
>  -- Jeff
>

#39554 From: "Jeffrey" <jeff_shapiro@...>
Date: Tue Nov 17, 2009 10:06 pm
Subject: RCM5700 Interface Board Schematic - RJ45 TX+/- Flipped?
jeff_shapiro
Offline Offline
Send Email Send Email
 
Hi,

   I'm designing a carrier board for a RCM5750 and am working from the RCM5700
Interface Board Schematic from Rabbit.  I just noticed that the TX+ and TX-
signals from the RJ45 jack (with integrated magnetics) go to the TX- and TX+
(flipped) on the Rabbit module in the schematic.  I've been trying to examine
the actual interface board but since it's surface mount with teeny tiny traces
and small value resistors I'm not having much luck with either a multimeter or
my eyes (with magnification).  The RX+ and RX- go to their respective ports on
the module (plus to plus and minus to minus).  Just seems odd that the RX plus
and minus match up but the TX plus and minus do not.  Maybe since the signals
are going through transformers (within the jack) it doesn't matter?

   Thanks!

  -- Jeff

#39553 From: Kenny Millar <kennymillar@...>
Date: Tue Nov 17, 2009 9:39 am
Subject: RE: Re: RCM5700 ethernet - FIXED - Take note!
kennymillar2000
Offline Offline
Send Email Send Email
 

Thanks so much for doing that – it will save future designers some headaches!

 

From: rabbit-semi@yahoogroups.com [mailto:rabbit-semi@yahoogroups.com] On Behalf Of lwoodzw
Sent: 16 November 2009 20:02
To: rabbit-semi@yahoogroups.com
Subject: [rabbit-semi] Re: RCM5700 ethernet - FIXED - Take note!

 

 



On reset, the PHY chip used in the RCM57xx family samples the LED signals as inputs to set the internal PHY address, then switches them to outputs. That is why the documented design for the RCM57xx Ethernet circuit (Tech Note 266) has the 1K resistors on the ACT and LINK signals, and why we recommend that customers follow our designs :v) All you really need are the appropriate pullup/downs on those two lines if you don't want actual LEDs.

That said, we _really_ should have documented that particular PHY functionality since it is quite non-intuitive. I've submitted documentation updates for the RCM5700 User's Manual and TN266 already.

-Lynn

--- In rabbit-semi@yahoogroups.com, "eilidhs_daddy" <eilidhsdad@...> wrote:
>
> I just spent 10 days and a few hundred quid trying to figure out why my Ethernet interface wouldn't work on a board I designed for the RCM5700
>
> Turns out that you HAVE to implement the ACT and LINK leds before the interface will work - no idea why.
>
> The ACT led must be connected from the ACT pin via 1K resistor then LED to +3v3
>
> The LINK led must be connected from the LINK pin via 1K resistor then LED to ground.
>
> Any other combination and the interface won't come up!
>


#39552 From: "rmcdonld" <rickie_mcdonald@...>
Date: Mon Nov 16, 2009 9:35 pm
Subject: Absolute code placement
rmcdonld
Offline Offline
Send Email Send Email
 
I would like to know how to place an xmem function with an absolute address? I'm
using DC 10.54 and an RCM5700. I tried #xcodorg but it gives:
line  353 : ERROR BOOTMANAGER.C   : "??????????" is deprecated.  Please
use "?`?`?`??" instead.
Don't have a clue what to use instead. lol

Thanks in advance.

#39551 From: "lwoodzw" <lwoodzw@...>
Date: Mon Nov 16, 2009 8:01 pm
Subject: Re: RCM5700 ethernet - FIXED - Take note!
lwoodzw
Offline Offline
Send Email Send Email
 
On reset, the PHY chip used in the RCM57xx family samples the LED signals as
inputs to set the internal PHY address, then switches them to outputs.  That is
why the documented design for the RCM57xx Ethernet circuit (Tech Note 266) has
the 1K resistors on the ACT and LINK signals, and why we recommend that
customers follow our designs :v)  All you really need are the appropriate
pullup/downs on those two lines if you don't want actual LEDs.

That said, we _really_ should have documented that particular PHY functionality
since it is quite non-intuitive.  I've submitted documentation updates for the
RCM5700 User's Manual and TN266 already.

-Lynn



--- In rabbit-semi@yahoogroups.com, "eilidhs_daddy" <eilidhsdad@...> wrote:
>
> I just spent 10 days and a few hundred quid trying to figure out why my
Ethernet interface wouldn't work on a board I designed for the RCM5700
>
> Turns out that you HAVE to implement the ACT and LINK leds before the
interface will work - no idea why.
>
> The ACT led must be connected from the ACT pin via 1K resistor then LED to
+3v3
>
> The LINK led must be connected from the LINK pin via 1K resistor then LED to
ground.
>
> Any other combination and the interface won't come up!
>

#39550 From: "virgo.boyz" <virgo.boyz@...>
Date: Mon Nov 16, 2009 6:10 pm
Subject: Re: Radio Button on Rabbit WEB
virgo.boyz
Online Now Online Now
Send Email Send Email
 
Hi Millar,

Yea, sorry I forgot mention the details,

I using RCM 4300 Development board,
So far I have tried and follow the sample from rabbit web documentation
And I have solved my problem (please see my code below: ZHTML CODE and C-CODE),
thanks for your respond.

But I have another problem,

Let say, the "led1" state on board is "ON" (bit PB.2=0) but on the web page (for
the first time access) there is no radio button checked, of course this is wrong
information for user.
So, I want the "form" lookup hardware condition first and then set which one
radio button should be checked.

Sorry if my English not well, can you help me how to do this?

Thanks.


--------------------------------------------------------------------------------\
--
ZHTML CODE
--------------------------------------------------------------------------------\
--
<html>
<head>
<title>LED 1</title>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
<label>ON
	 <input name="led1" type="radio" value="0" onclick="submit()"
	 <?z if ($lamp1==0) { ?>
	 CHECKED
	 <?z } ?>
	 />
</label>
<label>
	 <input name="led1" type="radio" value="1" onclick="submit()"
	 <?z if ($lamp1==1) { ?>
       CHECKED
       <?z } ?>
	 />
OFF</label>
</form>
</body>
</html>
--------------------------------------------------------------------------------\
--


=================================================================
C CODE
=================================================================
.
.
.
.
int led1;
#web led1

void main(void)
{
	 brdInit();
   	 sock_init();               // initialize TCP/IP stack
   	 http_init();               // initialize web server
   	 http_set_path("/", "index.html");
   	 tcp_reserveport(80);


    while(1)
    {
       http_handler();
       BitWrPortI(PBDR, &PBDRShadow, led1, 2);
    }
}

==================================================================




--- In rabbit-semi@yahoogroups.com, Kenny Millar <kennymillar@...> wrote:
>
> We're going to need more details!
>
>
>
> What module are you using?
>
> What have you tried so far?
>
> What went wrong / didn't work when you 'failed' ?
>
> Have you looked at the rabbit web samples? One of them does exactly what you
> want.
>
> -K
>
>
>
> From: rabbit-semi@yahoogroups.com [mailto:rabbit-semi@yahoogroups.com] On
> Behalf Of virgo.boyz
> Sent: 16 November 2009 05:34
> To: rabbit-semi@yahoogroups.com
> Subject: [rabbit-semi] Radio Button on Rabbit WEB
>
>
>
>
>
> Hi,
>
> i'm newbie on rabbit.
>
> i want to control DS2 LED over ZHTML with radio button, but failed
>
> any one can help me how to do this?
>
> thanks,
>

#39549 From: Kenny Millar <kennymillar@...>
Date: Mon Nov 16, 2009 9:38 am
Subject: RE: Radio Button on Rabbit WEB
kennymillar2000
Offline Offline
Send Email Send Email
 

We’re going to need more details!

 

What module are you using?

What have you tried so far?

What went wrong / didn’t work when you ‘failed’ ?

Have you looked at the rabbit web samples? One of them does exactly what you want.

-K

 

From: rabbit-semi@yahoogroups.com [mailto:rabbit-semi@yahoogroups.com] On Behalf Of virgo.boyz
Sent: 16 November 2009 05:34
To: rabbit-semi@yahoogroups.com
Subject: [rabbit-semi] Radio Button on Rabbit WEB

 

 

Hi,

i'm newbie on rabbit.

i want to control DS2 LED over ZHTML with radio button, but failed

any one can help me how to do this?

thanks,


#39548 From: "virgo.boyz" <virgo.boyz@...>
Date: Mon Nov 16, 2009 5:34 am
Subject: Radio Button on Rabbit WEB
virgo.boyz
Online Now Online Now
Send Email Send Email
 
Hi,

i'm newbie on rabbit.

i want to control DS2 LED over ZHTML with radio button, but failed

any one can help me how to do this?

thanks,

#39547 From: "yaqoob_ali_007" <yaqoob_ali_007@...>
Date: Mon Nov 16, 2009 5:17 am
Subject: Openings!!!!
yaqoob_ali_007
Online Now Online Now
Send Email Send Email
 
All,

There are openings  for the following Jobs at my present Employer( LATENS ).

JTE-HYD-09
STE-HYD-09
SSE-WEB-11-09
SE-WEB-11-09

Please read the requirements  posted on  Latens internet at:
http://www.latens.com/about/careers.html

Please refer your friends & colleagues and make sure they mention my name (Syed
Yaqoob Ali) when they send their profiles to jobs@latens.



Happy Hunting,
Ali..

#39546 From: "Jon L" <jleslie48@...>
Date: Sat Nov 14, 2009 9:08 pm
Subject: Re: Using serial port A on a BL4s200, so close...
jleslie48
Offline Offline
Send Email Send Email
 
--- In rabbit-semi@yahoogroups.com, Tom Collins <tom@...> wrote:
>
> On Nov 12, 2009, at 8:40 AM, Jon L wrote:
> > If I completely disconnect the Diag port connector so I don't have
> > a connection to serial port A, it looks like the transmission
> > portion of serial E is not working. My timed TX message that goes
> > out on serial E is not being received by its hyper-terminal session
> > unless I plug the 10-pin DIAG connector back into the 10-pin J1
> > header. I don't know if the receive portion of serial E is broken
> > or not, and I know nothing of serial port F. It does appear that
> > the rs485 port on Serial C TX is working and is not affected by
> > serial port A
>
> Many times that's an indication of a grounding problem.  The DIAG
> connector is providing a ground between the PC and Rabbit.
>
> Check your cabling for serial port E and make sure you have the
> ground attached correctly.
>
> If it is grounded, make sure you haven't configured port E to use
> flow control with the CTS pin on the programming header.  You'd have
> to call serEflowcontrolOn() to enable it, and it's configured with
> macros like SERE_CTS_PORT and SERE_CTS_PIN.  Double check those macro
> names -- I'm not at my PC to verify them.
>
> -Tom
>


Good call on the Grounding Issue!   I only had RX and TX from the rabbit to a
DB9 to a db9 to USB converter.  As soon as I attached pin 5 of the db9 to a
rabbit ground all is well.  That was exactly what the issue was.

I was fooled because of two reasons:

1) The DIAG port connects to the PC on its own USB connection, I would of
expected the other USB to be a floating ground regardless of the DIAG port
arrangement.

2) The documentation in STDIO_SERIAL.C /DC 10.56 for the Rabbit 4000 processors
expressly says you shouldn't use serial port A, so I jumped to the conclusion
that that is where the problem laid.

Meantime, so why does STDIO_SERIAL.C /DC 10.56/ rabbit 4000  say you can't use
serial port A?   It seems to work fine for me...

#39545 From: Tom Collins <tom@...>
Date: Sat Nov 14, 2009 8:15 pm
Subject: Re: Using serial port A on a BL4s200, so close...
tomcollinsaz
Offline Offline
Send Email Send Email
 
On Nov 12, 2009, at 8:40 AM, Jon L wrote:
If I completely disconnect the Diag port connector so I don't have a connection to serial port A, it looks like the transmission portion of serial E is not working. My timed TX message that goes out on serial E is not being received by its hyper-terminal session unless I plug the 10-pin DIAG connector back into the 10-pin J1 header. I don't know if the receive portion of serial E is broken or not, and I know nothing of serial port F. It does appear that the rs485 port on Serial C TX is working and is not affected by serial port A 

Many times that's an indication of a grounding problem.  The DIAG connector is providing a ground between the PC and Rabbit.

Check your cabling for serial port E and make sure you have the ground attached correctly.

If it is grounded, make sure you haven't configured port E to use flow control with the CTS pin on the programming header.  You'd have to call serEflowcontrolOn() to enable it, and it's configured with macros like SERE_CTS_PORT and SERE_CTS_PIN.  Double check those macro names -- I'm not at my PC to verify them.

-Tom




#39544 From: "eilidhs_daddy" <eilidhsdad@...>
Date: Fri Nov 13, 2009 5:29 pm
Subject: RCM5700 ethernet - FIXED - Take note!
eilidhs_daddy
Offline Offline
Send Email Send Email
 
I just spent 10 days and a few hundred quid trying to figure out why my Ethernet
interface wouldn't work on a board I designed for the RCM5700

Turns out that you HAVE to implement the ACT and LINK leds before the interface
will work - no idea why.

The ACT led must be connected from the ACT pin via 1K resistor then LED to +3v3

The LINK led must be connected from the LINK pin via 1K resistor then LED to
ground.

Any other combination and the interface won't come up!

#39543 From: Jonathan Leslie <jleslie48@...>
Date: Thu Nov 12, 2009 8:01 pm
Subject: Re: GPS/SATCOM Tracker, need serial help!
jleslie48
Offline Offline
Send Email Send Email
 
Glen,

here's a test program I wrote that demonstrates use of multiple serial ports, and string handling with the serial ports.  Conveniently for you one of the serial ports is hooked up to a GPS device and it and it read it.  It should be no stretch from the supplied examples to take the GPS string, repackage it and send it out on another serial port.  Program is at the bottom.  it was written for a BL2600 using DC 9.62, but it should be a minor exercise to convert it to your  rabbit.

- Jon

/************* Program Begin *************************/
/********************************************************************
   rui_gps_bl2600
  --  next version.  here the gps is coming in on serial port F, and serial
      port E will communicatie with matrix orbital's vk204-25-VPT-E 20x4
      character display.   I've wired up din31,30,29 to be the top 3 buttons
      on the rui respectively and din28 to be button1, the top right button of
      the vertial column. lets get these working.

   was:
     write_uart02.c
   ok lets try to rewrite simple3wire to make it a bit more rohbust.
   now lets add some digital i/o.

 here's the code I wrote that reads the GPS signal on port F and produces
 digital signals for four leds' to let the user see whats happening.

If the gps heartbeat is missing, led 0 is off,
If the gps heartbeat is there, but I don't have enough satellites for a
position, it blinks ¼ second on/off

If I have a good signal from the gps its solid on.

Leds 1,2,3 are above 8, 18, 28 knots respectively.

Also left over in the code is a talker on com port C, and a listener on
com Port c,  the talker sends "hello world" every 20 seconds,

And checks to see if anything comes back from the listener.  The listener
logs characters coming back and reports if 5 in a row come in less than 2
seconds.

And a monitor function  for 4 digital inputs, it reports state changes.


Everything works with the bl2600 and dynamic C 9.62




   was:
   Simple3wire.c
   Z-World 2004

    This program is used with BL2600 series controllers.

    Description
    ===========
    This program demonstrates basic initialization for a
    simple RS232 3-wire loopback displayed in STDIO window.

   Here's the typical connections for a 3 wire interface that
   would be made between controllers.

       TX <---> RX
       RX <---> TX
        Gnd <---> Gnd

    Connections
    ===========
    1. Connect TXC to RXF located on J17.
   2. Connect TXF to RXC located on J17.

    Instructions
    ============
    1. Compile and run this program.
     2. View STDIO window for sample program results.

090922 JL first run works!
090922 JL let's get it so it doesn't lock up, use waitfor rather than
          while wait forever.  - well that's no good, lets revert it back
          and we are going to have to go with something completely different.
090923 JL OK talker and listener are working, you send out a message, and wait
          5 seconds for a response. If 2 responses come within the 5 seconds,
          you destroy the first response.  May or may not be what you want, but
          basically this demonstrates a send and ack with timeout for no response.
090923 JL new version write_uart02.c - adding digital outputs as a new costate.
          ok, digout works, now for digin
090930 JL gps reader is working, changes the leds based on speed.  Currently
          DIO0-3 are leds, and DIO4-7 are inputs. dio8,9 are now active, dio8
          is a blink code, and dio9 is tied to input dio4

********************************************************************/
//  Set a default of declaring all local variables "auto" (on stack)
#class auto

// serial buffer size
#define CINBUFSIZE  15
#define COUTBUFSIZE 15
#define FINBUFSIZE  15
#define FOUTBUFSIZE 15
#define EINBUFSIZE  15
#define EOUTBUFSIZE 15


#define    STDIO_DEBUG_SERIAL    SADR     //for run mode and the Diag port!!!
#define    STDIO_DEBUG_BAUD        115200


// serial baud rate
#define BAUD232 115200
#define ON 1
#define OFF 0

#define DIGOUTCONFIG 0x0F0F  //0x0007 = 0b 0000 1111 0000 0111 only 3 digouts.

cofunc digout_try[4](int channel, int ontime, int offtime){
  for(;;) {

   if (ontime >0) digOut(channel, ON);
   waitfor(DelayMs(ontime));
   if (offtime>0) digOut(channel, OFF);
   waitfor(DelayMs(offtime));
   } // for ever loop
} //digout_try[x]

cofunc digin_monitor[4](int channel, char *digin_status ){
  char temp_char;
  for(;;) {
   temp_char = digIn(channel);
   if (temp_char != digin_status[channel]) {
        printf("Input state change: channel[%d]%d-->%d\n"
                  ,channel
                  ,digin_status[channel]
                  ,temp_char
                  );
        digin_status[channel] = temp_char;
        wfd { cof_serEwrite("C", 1); }
        } //then input change state.
   waitfor(DelayMs(200));

   } // for ever loop
} //digin_monitor[x]

main()
{
    auto int nIn;
    auto char cOut;
   char outbuffersz[44];
   char inbuffersz[44];
   char gpsinbuffersz[512];
   char receivebuffersz[44];
   char msg01sz[17];
   int nread;
   auto int tempint;
   long loopcounter;
   char *rmcptr;
   int gpsheartbeat;
   int speedvalue;
   int lastspeedvalue;
   char *speedptr;
   char digin_status[32];

   lastspeedvalue=6;
   speedvalue = -6;
   gpsheartbeat = 0;
   rmcptr = (char *)0;
   speedptr = (char *)0;
   outbuffersz[0] = 0;
   inbuffersz[0] = 0;
   gpsinbuffersz[0] = 0;
   receivebuffersz[0] = 0;
   strcpy(msg01sz, ":hello world!!!\n");
   loopcounter = 0;

  // Initialize controller
      brdInit();

   digOutConfig(DIGOUTCONFIG);
   memset(digin_status,2,8);   //set all the digital inputs to an unknown state.
   // Open serial port
    serCopen(115200);
   serFopen(4800);
    serEopen(19200);

   // Can use serial mode 0 - 2 for 3 wire RS232 operation
   // depending on what serial port you select and serMode
   // must be executed after the serXopen function(s).
   serMode(0);

   // Clear serial buffers
    serCwrFlush();
    serCrdFlush();
   serFwrFlush();
    serFrdFlush();
    serEwrFlush();
    serErdFlush();

   serEwrite(msg01sz, strlen(msg01sz));

   printf ("write uart test 090929_01 gps \n" );
   loopinit();
   digOut(9, OFF);    //init

   while (1) {
      loophead();
      costate talker_C always_on {
         loopcounter++;
         sprintf(outbuffersz,"%05ld%s",loopcounter,msg01sz);
         wfd { cof_serCwrite(outbuffersz, strlen(outbuffersz)); }
         waitfor (DelaySec(20));
         if (strlen(receivebuffersz) > 0) {
               printf("talker_c:%05ld: received answer >%s<\n"
                  ,loopcounter,receivebuffersz);
               receivebuffersz[0] = 0;
               } //then
            else {
               printf("talker_c:%05ld: no response, abort\n"
                   ,loopcounter);
               }//else
         }//costate talker_C
       costate listener_C always_on  {
         wfd nread = cof_serCread(inbuffersz, 5, 2000); //2 seconds max between characters
         inbuffersz[nread] = 0;
         printf ("     listener_C:got %d chars: >%s<\n",
            strlen(inbuffersz),
            inbuffersz);
         strcpy(receivebuffersz,inbuffersz);
         }//costate listener_C

         costate listener_F always_on  {   //GPS
         wfd nread = cof_serFread(gpsinbuffersz, 499, 20); //2 seconds max between characters
         if (nread >=0 && nread<500) {
               gpsinbuffersz[nread] = 0;
               //printf ("     listener_F:gps got %d chars.\n",
                 //strlen(gpsinbuffersz)
                 //);
              rmcptr = strstr(gpsinbuffersz, "GPRMC");
              if (rmcptr) {
                     rmcptr[50] = 0;
                     speedptr = strstr(rmcptr, "W,");
                     if (!speedptr) {
                          speedptr = strstr(rmcptr, "E,");
                          }//then eastern hemisphere?
                     if (speedptr) {
                           //printf ("     listener_F:gps rmc = >%s<\n"
                             //,&speedptr[2]
                             //);
                           if (isdigit(speedptr[2])) {
                                  speedvalue = atoi(&speedptr[2]);
                                  }//then
                              else{
                                  speedvalue= -11;
                                  }//else nospeed
                           } //then valid speedptr
                      else {
                           speedvalue = -14;
                           }
                     }//then
               else  {
                     speedvalue =-13;
                     printf ("     listener_F:no gps rmc.\n"   );
                     }//else
               } //then in bounds
          else {
               printf ("     listener_F:nread error: %d \n"
                  ,nread );
               }//else

         }//costate listener_F

      costate speed_checker always_on {
         waitfor (DelayMs(1100));
         if (speedvalue != -7) {
               printf("speed_checker:%d: current speed: >%d<\n"
                  ,nread
                  ,speedvalue);
               gpsheartbeat=1;
               } //then
            else {
               printf("speedchecker: no response, abort\n"
                   );
               gpsheartbeat=0;
               }//else
         lastspeedvalue = speedvalue;
         speedvalue = -7;
         }//costate speed_checker

       costate digital_output_speed always_on {
            waitfor (DelayMs(20));
            if (gpsheartbeat ==0) {
                 digOut(0, OFF);
                 digOut(1, OFF);
                 digOut(2, OFF);
                 digOut(3, OFF);
                 }//then <-6
             else if (lastspeedvalue <-10) {
                 digOut(0, ON);
                 digOut(1, OFF);
                 digOut(2, OFF);
                 digOut(3, OFF);
                 waitfor (DelayMs(250));
                 digOut(0, OFF);
                 waitfor (DelayMs(230));
                 }//then <0
             else if (lastspeedvalue >28) {
                 digOut(0, ON);
                 digOut(1, OFF);
                 digOut(2, OFF);
                 digOut(3, ON);
                 }//then >speed in knots
             else if (lastspeedvalue >18) {
                 digOut(0, ON);
                 digOut(1, OFF);
                 digOut(2, ON);
                 digOut(3, OFF);
                 }//then >speed in knots
             else if (lastspeedvalue >8) {
                 digOut(0, ON);
                 digOut(1, ON);
                 digOut(2, OFF);
                 digOut(3, OFF);
                 }//then >speed in knots
             else {
                  digOut(0, ON);
                  digOut(1, OFF);
                  digOut(2, OFF);
                  digOut(3, OFF);
                  }//then <0
            }//costate digital_output_speed


       costate digital_output always_on {
          wfd {
            //digout_try[0](0,9,1);
            //digout_try[1](1,5,5);
            //digout_try[2](2,1,9);
            //digout_try[3](3,100,900);
            //digout_try[4](4,150,150);
            //digout_try[5](5,150,150);
            //digout_try[6](6,150,150);
            //digout_try[7](7,150,150);
            digout_try[0](8,250,250);
            }//wfd
      }//costate digital_output

       costate digital_input always_on {
          wfd {
            digin_monitor[0](31,digin_status);
            digin_monitor[1](30,digin_status);
            digin_monitor[2](29,digin_status);
            digin_monitor[3](28,digin_status);

            }//wfd
      }//costate digital_input
       costate digital_input_4_monitor always_on {
           waitfor (DelayMs(20));
           if (!digin_status[4]) {
                  digOut(9,ON);
                  }
             else {
                  digOut(9, OFF);
                  }
      }//costate digital_input_4_monitor

      }//while (1) main loop

}//main




/************ Program End **************************/




--- On Thu, 11/12/09, russellluvmussell@... <russellluvmussell@...> wrote:

From: russellluvmussell@... <russellluvmussell@...>
Subject: [rabbit-semi] GPS/SATCOM Tracker, need serial help!
To: rabbit-semi@yahoogroups.com
Date: Thursday, November 12, 2009, 1:50 PM

Hi all. I am new to using rabbit controllers and I tried to post here before, but I couldn’t find my post a few days later. I must have done it wrong. Anyhow, I’m working with a rabbit 3000 micro on an RCM3720 development board, a GPS and satellite modem. It’s a tracking device of sorts. I have the GPS parsing lat/long to the STDIO window and am now trying to send this information to the modem.

The modem is an Axonn STX2. Communication to it is by an asynchronous serial bus, 9600bps, 8 bit, no parity, 1 stop. My serial comms experience is limited at best and this is the first time I have used a rabbit micro, I usually use atmel ones. So I have a few questions regarding this:

I will be sending 14 bytes to it via the serial port in hex format, I was looking at using a “char string” for this and loading the hex straight in. Is that possible?
IE: char teststring [15] = 0XAA0100010203040506070809C0C0

Next I wondering how to send this to the modems UART from the rabbit.  Do I send it character by character from the string?
IE:  Using a for loop, sending teststring[0], then teststring[1] ……… teststring[14]

Or can I load it into a buffer in one hit and send it out in one go?  How would I achieve this?

Any advice would help immensely, due to my ineptness using this micro (and in general). Thanks, Glen.



------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/rabbit-semi/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/rabbit-semi/join
    (Yahoo! ID required)

<*> To change settings via email:
    rabbit-semi-digest@yahoogroups.com
    rabbit-semi-fullfeatured@yahoogroups.com

<*> To unsubscribe from this group, send an email to:
    rabbit-semi-unsubscribe@yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/






#39542 From: russellluvmussell@...
Date: Thu Nov 12, 2009 6:50 pm
Subject: GPS/SATCOM Tracker, need serial help!
russellluvmussell@...
Send Email Send Email
 
Hi all. I am new to using rabbit controllers and I tried to post here before,
but I couldn’t find my post a few days later. I must have done it wrong.
Anyhow, I’m working with a rabbit 3000 micro on an RCM3720 development board,
a GPS and satellite modem. It’s a tracking device of sorts. I have the GPS
parsing lat/long to the STDIO window and am now trying to send this information
to the modem.

The modem is an Axonn STX2. Communication to it is by an asynchronous serial
bus, 9600bps, 8 bit, no parity, 1 stop. My serial comms experience is limited at
best and this is the first time I have used a rabbit micro, I usually use atmel
ones. So I have a few questions regarding this:

I will be sending 14 bytes to it via the serial port in hex format, I was
looking at using a “char string” for this and loading the hex straight in.
Is that possible?
IE: char teststring [15] = 0XAA0100010203040506070809C0C0

Next I wondering how to send this to the modems UART from the rabbit.  Do I send
it character by character from the string?
IE:  Using a for loop, sending teststring[0], then teststring[1] ………
teststring[14]

Or can I load it into a buffer in one hit and send it out in one go?  How would
I achieve this?

Any advice would help immensely, due to my ineptness using this micro (and in
general). Thanks, Glen.

#39541 From: "Jon L" <jleslie48@...>
Date: Thu Nov 12, 2009 4:40 pm
Subject: Using serial port A on a BL4s200, so close...
jleslie48
Offline Offline
Send Email Send Email
 
For clarification, when I talk about the 10-pin J1 header I'm talking about the
target for the 10-pin PROG connector or the 10-pin DIAG connector.

It is documented that the  BL4S200 won't let me use the serial port A port as a
redirect for the stdio window as per the instruction detailed in
Samples/STDIO_SERIAL.C of the DC 10.56.That program wants me to redirect stdio
window to serial E or serial F.  Unfortunately, both of those ports are in use
for my application.

In the other single computer board I've tested the BL2600, I was allowed to use
the serial port A as per its stdio_serial.c program in the DC 9.62 samples
directory.  Using the following code:

#define STDIO_DEBUG_SERIAL SADR     //for run mode and the Diag port!!!
#define STDIO_DEBUG_BAUD  115200

By accident, I left these lines in my code when I ported over my program to the
BL4s200, and was pleasantly surprised that it did work, I was able to use the
serial port A in run mode, but here's the issue:

If I completely disconnect the Diag port connector so I don't have a connection
to serial port A, it looks like the transmission portion of serial E is not
working.   My timed TX message that goes out on serial E is not being received
by its hyper-terminal session unless I plug the 10-pin DIAG connector back into
the 10-pin J1 header.  I don't know if the receive portion of serial E is broken
or not, and I know nothing of serial port F.  It does appear that the rs485 port
on Serial C TX is working and is not affected by serial port A

I realize this is not documented functionality of the Serial port A, and it is
documented that I am not allowed to use the Serial port A on the BL4S200, but I
think we are just a lib fix away from getting it to work (very similar to the
previous issue we had with the serial ports interfering with each other.)  I'm
hoping that the engineers that were able to fix the dependency issues with the
ports can do something here as well.

The point is, it seems serial port A does in fact work, and the only issue is
that is can't suspend if for whatever reason if it does not see a connection on
the 10-pin J1 header.  For that matter, if I had a flag that I could check to
see if port A is either: 1) in debug mode, 2) in run mode but not connected or
3) in run mode but connected.  I think that is an effective workaround.

Alternately, if someone can tell me what is required to simulate a connection on
the 10-pin Diag connector I could work with that.  I've tested the program with
a hooked up cable to a pc with no software running to talk to serial port A,
(aka, I don't have a hyper-terminal session active )  and the I/O on serial port
E seems to be ok. This leads me to believe that this is a simple hardware issue
check for voltage on one of the pins of the 10-pin DIAG connector (RTS/CTS
high???) so If I put some circuitry between the 10-pin J1 header and the 10-pin
PROG/DIAG cable that supplied xxx voltage to pin yyy if there is none detected
on the real 10-pin DIAG connector that would work.  I hope I explained that ok.

My guess is that serial port A is using RTS, CTS in some fashion, and as a
result this makes for higgly-piggly (that's a technical term) when there is a
disconnect.  All I want is that TX fall to the floor (and any RX to go
unanswered).  If I could check a flag for RTS, CTS (or whatever is present if
and only if there is connectivity on the 10-pin J1 header) I can use that to
programmatically not use STDIO.

#39540 From: "Jon L" <jleslie48@...>
Date: Tue Nov 10, 2009 6:39 pm
Subject: Re: cof_serXread, costates, and serial E and F interfering with each other. [1 Attachment]
jleslie48
Offline Offline
Send Email Send Email
 
--- In rabbit-semi@yahoogroups.com, "Jon L" <jleslie48@...> wrote:
>
>
>
> --- In rabbit-semi@yahoogroups.com, Scott Henion <shenion@> wrote:
> >
> > >
> > > OK that's good to know I started reading about he CoExec and was hoping it
might have a solution for me.  My current program is showing a :size of under
60000  <see attached pic>  It shows:
> > >
> > > Board:0x2A01 -58Mhz, BL4S200, 512K_512K SRAM, 1M serial program flash
> > > xxxx/59392
> > >
> > > on the loading to flash popup.
> > >
> > > I don't think I'm having a size issue.   I think that under the covers,
the functions cof_serEread and cof_serFread boil down to a single generic
function and are stepping on each other rather than run in separate memory
space.
> > >
> > > "STack use is one thing, costates mess with stacks and make assumptions
> > > on variable sizes. You might try making the buffers in min() static."
> > >
> > > I don't know what you are talking about here. I don't know what "min()"
is.  Could you explain a bit more/show an example?
> > >
> >
> >
> > It meant to say main()
> >
> >
> > > "These type of problems are why I ported CoExec to DC"  Now this seems
like the correct solution do you have an example of this?  The dynamic C User's
manual describes uC/OS-II is that the same thing?
> > >
> > > "like serial ports _only_ will time out after the first character and not
> > > return 0 if no data"
> > >
> > > yeah, this one boggles the mind, although I've bypassed this issue with
the costates of talker_x and listener_x. HOWEVER, I was not expecting that an
infinite wait on serial E would suspend the read on serial F.  That isn't right,
I must be doing something wrong.
> > >
> > >
> > >
> > Did not realize you were using a 4k board. Coexec does not support the
> > 4k chips.
> >
>
>
> rats.  dead end for me on the Coexec.
>
> Someone just told me about ser_xrdUsed() anybody know if that is the solution
(and the solution to the infinite wait on no characters in the receive buffer?)
>

Ok, the serXrdUsed() was an ~~OK~~ workaround, as I no longer waited
indefinitely, but while one serial port was reading the other was still
suspended.

I spoke to Rabbit support about this and there is definitely an issue with their
library about it.  The were very helpful and have supplied me with an updated
RS232.LIB that resolves the issue.

Messages 39540 - 39569 of 39599   Newest  |  < Newer  |  Older >  |  Oldest
Advanced
Add to My Yahoo!      XML What's This?

Copyright 2009 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines - Help