X-Git-Url: https://git.smho.de/gw/?p=owSlave2.git;a=blobdiff_plain;f=common%2FOWPinInterrupt.s;h=7d8a71151cf84d7af34faff03f9147cb12547c3c;hp=df8952dcf57e526d7b2d41d1b509492cfcda1d3b;hb=refs%2Fheads%2Fmaster;hpb=a6a04f58e4afd20f206fdf4a8a7b3ce4062f1b67 diff --git a/common/OWPinInterrupt.s b/common/OWPinInterrupt.s index df8952d..7d8a711 100644 --- a/common/OWPinInterrupt.s +++ b/common/OWPinInterrupt.s @@ -31,8 +31,8 @@ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.global PIN_INTERRIPT -PIN_INTERRIPT: +.global PIN_INTERRUPT +PIN_INTERRUPT: ;leitung auf Low ziehen TESTZEROMARKER ; ueberspringe wenn zeromarker=0 ;sbic und cbi/sbi andern SREG nicht sbi OW_DDR,OW_PINN @@ -85,6 +85,7 @@ send_bit_low_loop: cpi r_temp,(~OWT_MIN_RESET)+OWT_WRITE ;aller zwei us zaehlt der timer brlo send_bit_low_loop ;wenn kleiner cbi OW_DDR,OW_PINN ;Leitung auf hochohmig + rjmp iend receive_bit: ;or reset @@ -100,7 +101,9 @@ receive_bit: ;or reset ori r_rwbyte,0x80 ldi r_temp2,0 ;fuer CRC Berechnung receive_bit_crc: + sdb CRCR + lsl r_bcount brne recive_bit_no_handle ;bcount nicht 0 ;naechstes byte ....