Subject:
|
brickOS is slower than NQC for sending message
|
Newsgroups:
|
lugnet.robotics.rcx
|
Date:
|
Thu, 26 Jun 2008 14:48:51 GMT
|
Viewed:
|
18608 times
|
| |
| |
I tested two ways with brickOS and NQC, source as below, you will find the NQC
can only send about 80 messages in 4s, brickOS can send all 255 messages, but
need 20s, in other word, NQC needs 50ms for sending a message, or brickOS needs
above 100ms for sending a message, do you agree this?
// brickOS
// sendnumbers.c
#include <lnp-logical.h>
#include <rom/lcd.h>
#include <time.h>
int main(int argc, char *argv[]) {
int i;
lnp_logical_range(1);
in ttime = get_system_up_time();
for (i = 1; i < 256; i++) {
send_msg(i);
lcd_int((get_system_up_time() - time)/10);
}
sleep(2);
return 0;
}
// receivenumbers.c
#include <lnp.h>
#include <lnp-logical.h>
#include <rom/lcd.h>
int main(int argc, char *argv[]) {
lnp_logical_range(1);
while (1) {
lcd_int(lnp_rcx_message);
clear_msg();
get_msg();
}
return 0;
}
// NQC
// sendnumbers.nqc
#define TIMER 0
int time;
task main () {
int i;
SetTxPower(TX_POWER_HI);
time = 0;
SetUserDisplay(time, 0);
ClearTimer(TIMER);
for (i = 1; i < 256; i++) {
SendMessage(i);
time = FastTimer(TIMER);
}
until (false);
}
// receivenumbers.nqc
int cnt = 0;
task main () {
SetTxPower(TX_POWER_HI);
SetUserDisplay(cnt, 0);
until (false) {
ClearMessage();
until (Message() > 0);
cnt++;
}
}
|
|
1 Message in This Thread:
- Entire Thread on One Page:
- Nested:
All | Brief | Compact | Dots
Linear:
All | Brief | Compact
|
|
|
|