Code:
	                                               VCC
                                                +
                                                |  ___
                                            10k +-|___|-+
                                                        |
                                                   ___  |
                                            10k +-|___|-+
                                                |       |
                                                |  \]   |
                                           100µ +--|]---+
                                                |  /]+  |
                                               ===     .-.
                                               GND  Rs*| |
                                                    6k8| |
                                                       '-'
  19x100k                                               |
  +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
 .-..-..-..-..-..-..-..-..-..-..-..-..-..-..-..-..-..-..-.
 | || || || || || || || || || || || || || || || || || || |
 | || || || || || || || || || || || || || || || || || || |
 '-''-''-''-''-''-''-''-''-''-''-''-''-''-''-''-''-''-''-'
  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |  |
  V  V  V  V  V  V  V  V  V  V  V  V  V  V  V  V  V  V  V
                z  u  m     D i s p l a y
 
 
    Ziffer   1    2         3    4      5    6
          --------------------------------------------	       a
         |  --   --        --   --     --   --        |       ---
         | |  | |  | PROG |  | |  | o |  | |  | STOP  |     f| g |b
         |  --   --        --   --     --   --        |       ---
         | |  | |  | DATE |  | |  | o |  | |  | START |     e|   |c
         |  --   --        --   --     --   --        |       ---
          --------------------------------------------	       d
         Pin1| | | | | | | | | | | | | | | | | | |Pin19
      --------------------------------------------------------------------------
      |Seg1|Sg2|Sg3|Sg4|Sg5|Seg6|Sg7|Sg8|Sg9|S10|Sg11|Sg12|Sg13|Sg14|Sg15|Seg16|
 -------------------------------------------------------------------------------
 |Com3|STOP| a1| b1| a2| b2|DATE| a3| b3| a4| b4| dp | a5 | b5 | a6 | b6 |START|Pin19
 -------------------------------------------------------------------------------
 |Com2| -  | f1| g1| f2| g2| c2 | f3| g3| f4| g4| c4 | f5 | g5 | f6 | g6 | c6  |Pin18
 -------------------------------------------------------------------------------
 |Com1|PROG| e1| d1| c1| e2| d2 | e3| d3| c3| e4| d4 | e5 | d5 | c5 | e6 | d6  |Pin17
 -------------------------------------------------------------------------------
       Pin1 P2 Pin3 Pin4 P5 Pin6 Pin7 P8 P9  P10 P11  Pin12 P13 Pin14 P15 Pin16
      
;	Testprogramm für Display LPH2673-1
	LIST      P=18F252
	include "P18F252.inc"
	CONFIG OSCS=OFF,OSC=HSPLL, PWRT=ON, BOR=OFF, WDT=OFF, CCP2MUX=OFF, STVR=OFF, LVP=OFF, DEBUG=OFF
	CONFIG CP0=OFF,CP1=OFF,CP2=OFF,CP3=OFF,CPB=OFF,CPD=OFF,WRT0=OFF,WRT1=OFF,WRT2=OFF,WRT3=OFF
	CONFIG WRTB=OFF,WRTC=OFF,WRTD=OFF,EBTR0=OFF,EBTR1=OFF,EBTR2=OFF,EBTR3=OFF,EBTRB=OFF 
#define	PROG	TB1,7			; Segmentszuweisung	
#define	DATE	TB3,2
#define	STOP	TB3,7
#define	START	TC3,0
#define	dp	TC3,5			; Doppelpunkt
#define	a1	TB3,6
#define	b1	TB3,5
#define	c1	TB1,4
#define	d1	TB1,5
#define	e1	TB1,6
#define	f1	TB2,6
#define	g1	TB2,5
#define	a2	TB3,4
#define	b2	TB3,3
#define	c2	TB2,2
#define	d2	TB1,2
#define	e2	TB1,3
#define	f2	TB2,4
#define	g2	TB2,3
#define	a3	TB3,1
#define	b3	TB3,0
#define	c3	TC1,7
#define	d3	TB1,0
#define	e3	TB1,1
#define	f3	TB2,1
#define	g3	TB2,0
#define	a4	TC3,7
#define	b4	TC3,6
#define	c4	TC2,5
#define	d4	TC1,5
#define	e4	TC1,6
#define	f4	TC2,7
#define	g4	TC2,6
#define	a5	TC3,4
#define	b5	TC3,3
#define	c5	TC1,2
#define	d5	TC1,3
#define	e5	TC1,4
#define	f5	TC2,4
#define	g5	TC2,3
#define	a6	TC3,2
#define	b6	TC3,1
#define	c6	TC2,0
#define	d6	TC1,0
#define	e6	TC1,1
#define	f6	TC2,2
#define	g6	TC2,1
;Com1		PORTA,2			; Portszuweisung
;Com2		PORTA,1
;Com3		PORTA,0
;Seg1		PORTB,7
;Seg2		PORTB,6
;Seg3		PORTB,5
;Seg4		PORTB,4
;Seg5		PORTB,3
;Seg6		PORTB,2
;Seg7		PORTB,1
;Seg8		PORTB,0
;Seg9		PORTC,7
;Seg10      	PORTC,6
;Seg11      	PORTC,5
;Seg12      	PORTC,4
;Seg13      	PORTC,3
;Seg14      	PORTC,2
;Seg15      	PORTC,1
;Seg16      	PORTC,0
Tmp		EQU	0x20			; temporary (temp) 
Tmp1		EQU	0x21
PA		EQU	0x22			; temp für PORTA
PB		EQU	0x23			; temp für PORTB
PC		EQU	0x24			; temp für PORTC
TA1		EQU	0x25			; temp für TRISA bei Com1
TA2		EQU	0x26			; temp für TRISA bei Com2
TA3		EQU	0x27			; temp für TRISA bei Com3
TB1		EQU	0x28			; temp für TRISB bei Com1
TB2		EQU	0x29			; temp für TRISB bei Com2
TB3		EQU	0x2A			; temp für TRISB bei Com3
TC1		EQU	0x2B			; temp für TRISC bei Com1
TC2		EQU	0x2C			; temp für TRISC bei Com2
TC3		EQU	0x2D			; temp für TRISC bei Com3 
		ORG 	0
		call	Init
DispSet         movlw	7
		movwf	PA
		clrf	PB
		clrf	PC
		movlw	3	
		movwf	TA1
		movlw	5
		movwf	TA2
		movlw	6
		movwf	TA3
		clrf	TB1			; alle Segmente an
		clrf	TB2
		clrf	TB3
		clrf	TC1
		clrf	TC2
		clrf	TC3
		bsf	PROG			; diese Segmente aus
		bsf	DATE
		bsf	STOP
		bsf	START
		bsf	dp
		bsf	a1
		bsf	d1
		bsf	e1
		bsf	f1
		bsf	g1
		bsf	c2
		bsf	f2
		bsf	e3
		bsf	f3
		bsf	a4
		bsf	d4
		bsf	e4
		bsf	b5
		bsf	e5
		bsf	b6
DispLoop	movf	PA,0
		movwf	PORTA
		movf	PB,0
		movwf	PORTB
		movf	PC,0
		movwf	PORTC
		
		movf	TA1,0			; Com1
		;bsf	_RP0
		movwf	TRISA
		;bcf	_RP0
		movf	TB1,0
		;bsf	_RP0
		movwf	TRISB
		;bcf	_RP0
		movf	TC1,0
		;bsf	_RP0
		movwf	TRISC
		;bcf	_RP0
		
		call	Del			; Dauer vom Com1	
		movf	TA2,0			; Com2
		;bsf	_RP0
		movwf	TRISA
		;bcf	_RP0
		movf	TB2,0
		;bsf	_RP0
		movwf	TRISB
		;bcf	_RP0
		movf	TC2,0
		;bsf	_RP0
		movwf	TRISC
		;bcf	_RP0
		call	Del			; Dauer vom Com2	
		movf	TA3,0			; Com3
		;bsf	_RP0
		movwf	TRISA
		;bcf	_RP0
		movf	TB3,0
		;bsf	_RP0
		movwf	TRISB
		;bcf	_RP0
		movf	TC3,0
		;bsf	_RP0
		movwf	TRISC
		;bcf	_RP0
		call	Del			; Dauer vom Com3
	
		comf	PA,1			; alle Signale invertieren
		comf	PB,1
		comf	PC,1
		goto	DispLoop
Del		movlw	0x40			; Verzögerungsschleife (ca. 5 ms)
		movwf	Tmp1
Del1		clrf	Tmp
Del2		decfsz	Tmp,1
		goto	Del2
		decfsz	Tmp1,1
		goto	Del1 
		return
Init		movlw	7
		movwf	ADCON1		; schalte ADC aus und mache RA0-6 zu digital I/O
		return
		END
 
						
Lesezeichen