Below is the actual code which currently runs on 16F870 @ 4mhz:
It smoothly dims in-out leds, as needed. Here I'm imitating external change of A,B,C by introducing variable F and altering it's value in loop. Imagine there's no that FOR/NEXT loop, and values of A,B,C are updated elsewhere, but this code runs in interrupt. Will it work?Code:FOR F=1 TO 8 A=F C=F B=9-F FOR E=0 TO 10 IF A=1 THEN PORTC.0=0 IF B=1 THEN PORTC.1=0 if c=1 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>1 THEN PORTC.0=0 IF B>1 THEN PORTC.1=0 if c>1 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>2 THEN PORTC.0=0 IF B>2 THEN PORTC.1=0 if c>2 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>3 THEN PORTC.0=0 IF B>3 THEN PORTC.1=0 if c>3 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>4 THEN PORTC.0=0 IF B>4 THEN PORTC.1=0 if c>4 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>5 THEN PORTC.0=0 IF B>5 THEN PORTC.1=0 if c>5 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>6 THEN PORTC.0=0 IF B>6 THEN PORTC.1=0 if c>6 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 IF A>7 THEN PORTC.0=0 IF B>7 THEN PORTC.1=0 if c>7 then PORTC.2=0 PAUSE LODINI PORTC.0=1 PORTC.1=1 PORTC.2=1 NEXT NEXT




Bookmarks