///Reste
    if not JP3 then //test
      asm;
       ; set sinewave output
        ldi  _ACCA, $00 ; clear accumulator
        mov  _ACCCLO, _ACCA
        mov  _ACCEHI, _ACCA ;Phasen-Akkumulator und Pointer
        mov  _ACCELO, _ACCA ;Phasen-Akkumulator
       ; Sinus erzeugen:
        SinusGen.DDSLoop:
        add  _ACCELO, SinusGen.DDSL; 1  add value to accumulator
        adc  _ACCEHI, SinusGen.DDSH; 1

        mov  _ACCCLO,_ACCEHI  ; Z=Index für Sinus-Tabelle
        LDI  _ACCCHI, SinusGen.SinusWaveLow SHRB 8 ; oberes Byte Z-Register auf Low-Tabelle
        LPM  _ACCDLO, Z   ; LSB in Data-Reg
        LDI  _ACCCHI, SinusGen.SinusWaveHi SHRB 8  ; oberes Byte Z-Register auf High-Tabelle
        LPM  _ACCDHI, Z   ; MSB in Data-Reg

        CALL SinusGen.USITransferFast  ; output Data to DAC
        ;1-kHz-Jitter-Ausgleich für 250 kHz Sample-Rate
        sbrs  SinusGen.rxsema,7 // Bit high?
        rjmp  SinusGen.DDSLoop;
      endasm;
    endif;
    if not JP4 then // Test mit max. Auflösung und max. Geschwindigkeit
  // 1 kHz direkt erzeugen mit Zeitschleife, kein DDS-Jitter
      asm;

        sbi  SinusGen.ControlBitPort, SinusGen.b_STRDAC
        sbi  SinusGen.ControlBitPort, SinusGen.b_SCLK
        SinusGen.Loop1:
        LDI  _ACCCHI, SinusGen.SinusWaveLow SHRB 8 ; oberes Byte Z-Register auf Low-Tabelle
        LPM  _ACCDLO, Z   ; LSB in Data-Reg
        LDI  _ACCCHI, SinusGen.SinusWaveHi SHRB 8  ; oberes Byte Z-Register auf High-Tabelle
        LPM  _ACCDHI, Z   ; MSB in Data-Reg
        inc       _ACCCLO  ; Z-Register
        CALL      SinusGen.USITransferFast
        RJMP      SinusGen.Loop1
      endasm;
    endif;




procedure USITransfer;
//Sendet _ACCDHI an USI/USI
begin
   asm;
     out USIDR,_ACCDHI
     ldi _ACCA, 01000000b ;USISIF USIOIF
     out USISR,_ACCA
     ldi _ACCA, 00011011b ; USISIE USIOIE USIWM0 USIWM0 USICS1 USICS0 USICLK USITC
     SinusGen.USITransferLoop1:
     out USICR, _ACCA
     sbis USISR,6           ; Bit USIOIF
     rjmp SinusGen.USITransferLoop1
     out USIDR,_ACCDLO
     ldi _ACCA, 01000000b ; USISIF USIOIF
     out USISR,_ACCA
     ldi _ACCA, 00011011b ; USISIE USIOIE USIWM0 USIWM0 USICS1 USICS0 USICLK USITC
     SinusGen.USITransferLoop2:
     out USICR, _ACCA
     sbis USISR,6           ; Bit USIOIF
     rjmp SinusGen.USITransferLoop2
   endasm;
end;

