Hi Art,
Interesting. I suppose you've verified that it actually is "better"? By how much? I think it's not really fair to compare against SEROUT. Instead, you should compare against DEBUG since it, just like your routine, handles the baudrate calculation at compile time - unlike SEROUT/SEROUT2.
Like compare your code with
Code:
DEFINE DEBUG_REG PORTB
DEFINE DEBUG_BIT 1
DEFINE DEBUG_BAUD 2400
Main:
DEBUG "Hello", $20
Goto Main
I might be missing something but as far as I can see the problem with doint autobaud detect on an unknown byte is you don't know what the first databit after the startbit actually is so you don't really KNOW if the next edge is the end of the startbit or the end of any arbitrary databit. I believe a common byte is either $55 or $AA because every bit changes.
In any case, please keep posting about your findings!
/Henrik.
Bookmarks