8 Mhz tables
static const DELAY_TABLE table[] PROGMEM =
{
// baud rxcenter rxintra rxstop tx
{ 115200, 1, 5, 5, 3, },
{ 57600, 1, 15, 15, 13, },
{ 38400, 2, 25, 26, 23, },
{ 31250, 7, 32, 33, 29, },
{ 28800, 11, 35, 35, 32, },
{ 19200, 20, 55, 55, 52, },
{ 14400, 30, 75, 75, 72, },
{ 9600, 50, 114, 114, 112, },
{ 4800, 110, 233, 233, 230, },
{ 2400, 229, 472, 472, 469, },
{ 1200, 467, 948, 948, 945, },
{ 300, 1895, 3805, 3805, 3802, },
};
the formulas:
int rxstop = 8000000L/(7 * baudrate) - 4;
int rxintra = rxstop;
int tx = rxstop - 3;
int rxcenter = max(rxstop/2 - 7, 1);
results of these formulas
baud rxcenter rxintra rxstop tx
115200 1 5 5 2
57600 1 15 15 12
38400 5 25 25 22
31250 9 32 32 29
28800 10 35 35 32
19200 20 55 55 52
14400 30 75 75 72
9600 50 115 115 112
4800 110 234 234 231
2400 229 472 472 469
1200 467 948 948 945
300 1895 3805 3805 3802
The difference 'matrix'
0 0 0 1
0 0 0 1
3 0 1 1
2 0 1 0
1 0 0 0
0 0 0 0
0 0 0 0
0 1 1 0
0 1 1 1
0 0 0 0
0 0 0 0
0 0 0 0