Hi all, I have seen that in LPC 2148 for UART0, addresses of register IIR and FCR are same. Why? and how they work then? Please share....
It has another bit, in another register, that changes to a secondary register set. Think of it as a SHIFT key on the keyboard, or 2ND button a calculator, it changes the context for lesser used functionality without increasing the number of address lines on the device.
Go read a 16550 manual if that helps.
"how they work" is well documented in the processor user manual published by NXP. If NXP hadn't published how it works, then no one else here would have been able to figure it out either - without trial-and-error.
So if you think other people know the answer, then you shouldn't ask who knows the answer but instead spend time trying to figure out why and how other people knows the answer. Reading the documentation gives you the same chances to know the answer as everyone else has - with the exception of the NXP engineers who are privy to internal documents too.
As that unforgettable consultant once said: Please read the manual.
Sorry, but I can't remember his name.