??? 02/15/06 16:43 Read: times |
#110079 - IF there's another way ... Responding to: ???'s previous message |
Well, if you need a 1 MHz clock to the serial port in mode 0, 11.0592 MHz isn't a convenient frequency.
If it's POSSIBLE to use 12 MHz as the timebase for serial communication, and it's EASY to perform software timing with a 1 microsecond instruction cycle, that's convenient. It's not just convenient in the case of the mode 0 serial port, but it's essential. However, it's easier to think of a machine cycle as being a 1 microsecond interval than a 1.085...something microsecond interval. It's not about the arithmetic. It's about making all the pieces fit. It's about being able to use the correct frequency rather than being contained by an old habit. I've been puzzled for years about why this is such a "religious" issue. The classic parts have only one serial port and two timers. As it happens, the newer Maxim/Dallas parts have two serial ports and, I believe three timers. That adds another level of complexity to the question of how to pick the system clock rate. Aside from the fact that one can bit-bang low bit rates, I'm seeing little usage of the UART with low bit rates, at least in this thread. Since I'm trying to pick a "default" oscillator for the system, I thought I'd see what people are doing with the serial port. I can think of as many examples where the old "standard" works OK as where it doesn't, but I've yet to see a compelling argument for the old slightly more than 11MHz. The old i8048's were limited to 11 MHz. I suspect that that is where this old clock rate originated. Who's using the UART at 300 baud? Most folks don't use the UART at all because it's used in their development system for the console, thereby denying them access to it in their target during development. RE |