PDA

View Full Version : Help wanted..



thrix
- 18th February 2004, 00:44
hi all... i manage to program my led matrix with the following code. is there any way to make it simpler?

I VAR WORD 'DELAY FOR ALL COLUMN DISPLAY
J VAR WORD 'DELAY FOR SHIFT LEFT NO 1 DISPLAY
K VAR WORD 'DELAY FOR SHIFT LEFT NO 2 DISPLAY
L VAR WORD 'DELAY FOR SHIFT LEFT NO 3 DISPLAY
M VAR WORD 'DELAY FOR SHIFT LEFT NO 4 DISPLAY
N VAR WORD 'DELAY FOR SHIFT LEFT NO 5 DISPLAY

TRISA = 255
TRISB = 0

MAIN:
FOR I = 0 TO 25
GOTO LOOP

loop:
' DISPLAYING AT ALL COLUMN
PORTB = $7F ''''''''''''''''''
LOW PORTA.4 ' END POINT '
PAUSE 3 ' '
HIGH PORTA.4 ''''''''''''''''''

PORTB = $8
LOW PORTA.3
PAUSE 3
HIGH PORTA.3

PORTB = $8
LOW PORTA.2
PAUSE 3
HIGH PORTA.2

PORTB = $8
LOW PORTA.1
PAUSE 3
HIGH PORTA.1

PORTB = $7F 'STARTING POINT
LOW PORTA.0
PAUSE 3
HIGH PORTA.0

NEXT


'SHIFT NO 1 TO LEFT
FOR J = 0 TO 25

PORTB = $8
LOW PORTA.0
PAUSE 3
HIGH PORTA.0

PORTB = $8
LOW PORTA.1
PAUSE 3
HIGH PORTA.1

PORTB = $8
LOW PORTA.2
PAUSE 3
HIGH PORTA.2

PORTB = $7F 'END POINT
LOW PORTA.3
PAUSE 3
HIGH PORTA.3


NEXT

'SHIFT LEFT NO 2
FOR K = 0 TO 25

PORTB = $8
LOW PORTA.0
PAUSE 3
HIGH PORTA.0

PORTB = $8
LOW PORTA.1
PAUSE 3
HIGH PORTA.1

PORTB = $7F ' END POINT
LOW PORTA.2
PAUSE 3
HIGH PORTA.2

' --------------> ' COLUMN 3 IS HIGH

PORTB = $7F ' STARTING POINT
LOW PORTA.4
PAUSE 3
HIGH PORTA.4

NEXT

'SHIFT LEFT NO 3
FOR L = 0 TO 25


PORTB = $8
LOW PORTA.0
PAUSE 3
HIGH PORTA.0

PORTB = $7F 'END POINT
LOW PORTA.1
PAUSE 3
HIGH PORTA.1

PORTB = $7F ' STARTING POINT
LOW PORTA.3
PAUSE 3
HIGH PORTA.3

PORTB = $8
LOW PORTA.4
PAUSE 3
HIGH PORTA.4

NEXT

'SHIFT LEFT NO 4
FOR M = 0 TO 25

PORTB = $7F 'END POINT
LOW PORTA.0
PAUSE 3
HIGH PORTA.0

PORTB = $7F ' STARTTING POINT
LOW PORTA.2
PAUSE 3
HIGH PORTA.2

PORTB = $8
LOW PORTA.3
PAUSE 3
HIGH PORTA.3

PORTB = $8
LOW PORTA.4
PAUSE 3
HIGH PORTA.4

NEXT
'SHIFT LEFT NO 5
FOR N = 0 TO 25

PORTB = $7F 'STARTING POINT
LOW PORTA.1
PAUSE 3
HIGH PORTA.1

PORTB = $8
LOW PORTA.2
PAUSE 3
HIGH PORTA.2

PORTB = $8
LOW PORTA.3
PAUSE 3
HIGH PORTA.3

PORTB = $8
LOW PORTA.4
PAUSE 3
HIGH PORTA.4

NEXT





goto MAIN

' Go back to loop and blink LED forever
End