101,7 → 101,6 |
38400, |
57600, |
115200, |
230400, |
-1}; |
|
/* 20MHz: SPBRG, BAUD BRGH=0, BAUD BRGH=1 */ |
160,9 → 159,15 |
while ((com_read(port,LSR) & 32) == 0 && !timer_expired) |
barrier(); |
if (!timer_expired) { |
#ifdef SERVO_DEBUG |
kern_printf("(SERVO WRITE p = %d b = %02X)",port,b); |
#endif |
com_write(port,THR,b); |
return 0; |
} else { |
#ifdef SERVO_DEBUG |
kern_printf("(SERVO TIMEOUT)"); |
#endif |
return -1; |
} |
} |
169,11 → 174,20 |
|
int com_receive(unsigned port) |
{ |
int b; |
|
while ((com_read(port,LSR) & 1) == 0 && !timer_expired) |
barrier(); |
if (!timer_expired) { |
return((int)(com_read(port,RBR))); |
b = (int)(com_read(port,RBR)); |
#ifdef SERVO_DEBUG |
kern_printf("(SERVO READ p = %d b = %02X)",port,b); |
#endif |
return b; |
} else { |
#ifdef SERVO_DEBUG |
kern_printf("(SERVO TIMEOUT)"); |
#endif |
return -1; |
} |
} |