rickseiden wrote:
Does the W65C51 have to be running at 1 megahertz or faster to properly function, or can it operate at lower frequencies like the W65C02 can?
All presently-produced WDC products are fully static. It's possible to stop the Ø2 clock and have the device registers hold their contents. That said, halting the clock while the UART is processing data would not be a good idea.
Quote:
In my internet searches trying to get my W65C51 working, I've come across some really old posts that talk about a bug with the chip related to the transmit flag.
As Garth noted, the bug remains in current production 65C51s. The problem is the TxD ready bit is always set, making it appear the transmitter is ready for another datum, even when it isn't. Furthermore, one cannot enable TxD ready IRQs, as the 65C51 will continuously interrupt the MPU, causing the system to go into deadlock. As TxD in the 65C51 is a one deep register, writing something to it while it is serializing the previous datum will result in corruption. So this device is quite crippled.
The timer IRQ method of pacing the transmitter is the only really workable solution at this time. It's been some six years since this bug was identified and to date, all that WDC has done is put a note in the data sheet telling us not to use TxD ready and find some other way of pacing the transmitter. I imply that to mean the bug is unlikely to ever be fixed.
Better to use a modern UART design.