You simply put the IF/THEN in the wrong place. It must be within the FOR/NEXT loop.
I don't see the setting for the TRIS registers.
Al.
Code:PORTA = 0 PORTB = 0 TrisA = %00000001 ' ???????????????? TrisB = %00000000 ' ??????????????? KEY VAR BYTE KEY1 VAR BYTE ADR VAR BYTE SYMBOL SCLK = PORTB.0 SYMBOL SDAT = PORTB.1 SYMBOL RELY = PORTB.3 SYMBOL STRT = PORTA.0 START: PAUSE 10 IF STRT = 0 THEN GOSUB SCAN ENDIF GOTO START SCAN: FOR ADR = 0 TO 7 I2CREAD SDAT,SCLK,$A0,ADR,[KEY] PAUSE 10 READ ADR,KEY1 PAUSE 10 IF KEY = KEY1 THEN HIGH RELY PAUSE 1000 LOW RELY Pause 1000 ENDIF NEXT ADR RETURN END DATA @0,14,21,47,56,02,11,22,33




Bookmarks