Got a =very= basic problem that is just driving me nuts.
Using a '908JL3 and going around in a loop polling the port B inputs and when one
of them is low it jumps off to flash a LED then comes back and starts polling again.
This program doesn't really do anything; it just runs the piece of code that is causing the
trouble. Something like this:
MOV #%00000000,DDRB
TOP BRCLR 3,PORTB,LED
BRCLR 2,PORTB,LED
BRCLR 1,PORTB,LED
BRCLR 0,PORTB,LED
JMP TOP
LED <FLASH LED ONCE>
JMP TOP
------------------------------------
B3, B2, B1work just fine but B0 no way can I get it to work properly. It is always read as
if it were clear and branches accordingly. I tried a second MCU and then a third with a datecode 2 years earlier and still the same. Have these things got a bug or something?
It was getting to the stage I was looking around for hidden cameras, thinking someone
was playing some kind of practical joke on me. Puta scope on the pins and they go down
at the right time so it is not a board fault. This is SO stupid.
Anybody have any ideas?
已解决! 转到解答。
OK. Got it.
Was loading ADSCR with VALUE instead of #VALUE.
VALUE = 5 which is DDRD(?) address and DDRD held 11000000 so A/D multiplexor
was parked on B0 causing it to not see the HI input. Something like that.
Sheesh. you may have gathered I'm not a programmer... ![]()
OK. Got it.
Was loading ADSCR with VALUE instead of #VALUE.
VALUE = 5 which is DDRD(?) address and DDRD held 11000000 so A/D multiplexor
was parked on B0 causing it to not see the HI input. Something like that.
Sheesh. you may have gathered I'm not a programmer... ![]()