I know it occupies a fond place in many hearts but I have to say that the 8051 was the most horrible thing to program I have come across in 25 years. I did at least two projects with it (a bitbus comms systems for a radio switch and the control processor for a DECT cordless phone spring to mind). I, for one, would be glad to see it consigned to the museum!
The 68HC11 was much nicer :-)
And, yes, a dual-core Cortex-A9 woudl be overkill for a keycard reader but a Cortex-M0 or M3 would probably fit the bill really nicely!