There are a number of things you can do...
1. If you want to use the SOFTWARE Serial options then you pretty much run out of steam at 38k unless you trick PBP...
If you DON'T tell PBP that your OSC is 20MHz (it assumes 4MHz), then the formula changes and everything runs exactly 5x faster... The setting you had for 38k will now be 38k x 5. 9600 baud will be 48000 etc etc. Of course all other timing critical commands will be 5x faster too... Pause 1000 will only time for 200mS etc etc.
So... use available Hardware...
2. Use the hardware USART (if your PIC has one). It can hit 1.25Mb with a 20MHz xtal.
3. To minimise (zero is pretty minimal) communication errors at all standard baud rates, run your PIC with a 22.1184MHz (or 11.0592MHz) Crystal. These are known as BAUD RATE CRYSTALS and being a multiple of standard baud rates produce zero errors. Unfortunately, PBP doesn't provide an option for those baud rates, therefore there will be a timing error in other software commands (such as Pause etc) but choosing something close will minimise those and you can calculate the difference mathamatically and adjust accordingly.




Bookmarks