Hi,
versuchs mal hiermit (als Idee), ob es "die beste" ist, keine Ahnung, sollte aber recht flott sein.
bcf PgaCs ;chip selcted
movf volume1, w
movwf pga.data
call pga.transmit
bsf PgaCs
pga.transmit
movlw D'8'
movwf counter0
pga.send.loop
bcf PgaClk
btfss pga.data, 7 ; Testen, ob Bit gesetzt
bcf PgaBit ;
btfsc pga.data, 7
bsf PgaBit ; Clock ausgeben
nop
bsf PgaClk
rlncf pga.data, f
decfsz counter0, f
goto pga.send.loop
return
Schennler gehts nur wenn du ohne die Schleife arbeitest und alles mit
bcf / bsf Befehlen machst.
Gruß
Stefan