04-19-2011 11:22 AM
Execution of the instruction "movc a,@a+dptr" within the 805x MCU will inmediatly reset all the pins of P2 to zero. This happens even when the EA* input is set to fetch internal ROM only by connecting it to VCC. This piece of assembly code shows the problem:
mov P2,#0 ; Clear all pins of P2
setb P2.0
setb P2.1
setb P2.2
movc a,@a+dptr ; Incorrectly clears all pins of P2
setb P2.3 ; At this point P2.0 to P2.3 should be '1', but only P2.3 is '1'
This problem was reported a couple of years ago by somebody else, but no satisfactory answer was provided.
11-22-2012 09:42 AM
Hello,
Can you provide a code for us to see the behaviour?
Thanks,