Dear All,
My dynamic c program is behaving in a weird way. When I debug the code it shows me no errors in my outputs; however, when I run it, it print my outputs with some mal characters.
Isn’t Debug is just Like run? Am wondering why am receiving different outputs in these modes.
#use rcm3100.lib
#define BINBUFSIZE 255
#define BOUTBUFSIZE 255
#define CINBUFSIZE 255
#define COUTBUFSIZE 255
void main()
{
int c, n;
auto int i, ch;
static const char string1[] = {"BThis message has been Rcv'd from serial port B !!!
\r"};
static const char string2[] = {"CThis message has been Rcv'd from serial port C !!!
\r"};
auto char buffer[64];//buffer used for serial data
char s[64];
i = 0;
c = 0;
// This is necessary for initializing RS232 functionality of LP35XX boards.
brdInit();
//open serial ports B & C, initialize them by setting baud rate
serBopen(19200);
serBwrFlush();
serBrdFlush();
serCopen(19200);
serCwrFlush();
serCrdFlush();
// Clear data buffer
memset(buffer, 0x00, sizeof(buffer));
memset(s, 0x00, sizeof(s));
loopinit();
while (1)
{
loophead();
costate{
memcpy(buffer, string2, strlen(string2));
wfd cof_serCputs(buffer);
memset(buffer, 0x00, sizeof(buffer));
wfd n = cof_serBread(buffer, sizeof(buffer),20);
serBrdFlush();
serCwrFlush();
wfd cof_serBputs(buffer);
printf("%s", buffer);
serBwrFlush();
serCrdFlush();
memset(buffer, 0x00, sizeof(buffer));
}
costate{
memcpy(s, string1, strlen(string1));
wfd cof_serBputs(s);
memset(s, 0x00, sizeof(s));
wfd n = cof_serCread(s, sizeof(s),20);
serBwrFlush();
serCrdFlush();
wfd cof_serCputs(s);
printf("%s", s);
serCwrFlush();
serBrdFlush();
//memset(buffer, 0x00, sizeof(buffer));
}
}
serBclose();
serCclose();
}
Thank you.
-SK