Hallo Dirk,

nicht gut, daß das Fehler ergibt, gut, daß Du Dich nochmal meldest.

Mir sind bei meinem "aus dem Gedächtnisgeschreibsel" nach Überprüfung folgende Abweichungen zu meiner in Betrieb befindlichen LIB aufgefallen:

1) ich habe das Label warte0 mit einem führenden Unterstrich verziert.

2)@genus hatte ich auskommentiert, weil die 80 Takte bei 8 MHz ja schon 10 µS Wartezeit entsprechen. Das haut dann auch hin.

Mein Kurztestprogramm:
Code:
$regfile = "m8def.dat"
'$regfile = "m168def.dat"
'$regfile = "m32def.dat"
$crystal = 7372800
'$crystal = 14745600
'$crystal = 16000000

$baud = 9600

$hwstack = 64
$swstack = 64
$framesize = 64

Config Pind.3 = Input

Dim Value0 As Word

'-------------------------------------------------------------------------------

Do
Pulsein Value0 , Pind , 3 , 0                'detect time from 0 to 1
Loop

End
kompiliert mit dieser LIB Änderung:
Code:
_pulse_in5:                          ; FÜR 7.3xx MHZ ------------------
;  @genus(9)

; Warteschleife für insgesamt 73 Takte)
  push r17                            ; 2 Zyklen    -------------------

; warte 57 Zyklen:
  ldi  R17, $13
_warte0:
  dec  R17
  brne _warte0
; -----------------------------                            63 Zyklen
; warte 2 Zyklen:
          nop
          nop
; =============================
 pop r17                              ; 2 Zyklen   ------------------

  Ld r0,z                             ; 2 cycl. get pin state
  And r0, r24                         ; 1 cycl. get only the input pin state
  Eor r0,r16                          ; 1 cycl. xor with begin state
  Brne _pulse_in_exit                 ; 2 cycl. ready ,state changed
  Adiw xl,1                           ; 2 cycl. counter
  brne _pulse_in5                     ; 2 cycl. again

_pulse_in_timeout:
  call _Set_Error                     ;  set error because of time out
_pulse_in_exit:
 ; X holds timing
 Mov r24,XL                           ; store data here
 Mov R25,XH

Ret
[END]
völlig fehlerfrei. (Bascom V1.11.8.2)

Versuche es nochmal, wenn es dann noch nicht klappt, fällt mir schon noch was ein .

Grüße
Henrik