avr: fixed timer usage in COM2 and COM2_PROTO module.
This commit is contained in:
@@ -97,7 +97,7 @@ CPRO_Address_Init:
|
||||
; setup timer for address setup (after 10s)
|
||||
ldi r16, CPRO_MODE_NOADDRESS
|
||||
sts cproMode, r16
|
||||
ldi r18, 10
|
||||
ldi r18, 100
|
||||
ldi r19, 0
|
||||
rcall cproAddressSetTimer
|
||||
ret
|
||||
@@ -157,7 +157,7 @@ CPRO_StartGetAddrProcedure:
|
||||
; REGS: r18, r19
|
||||
;
|
||||
cproAddressSetTimer1s:
|
||||
ldi r18, 1
|
||||
ldi r18, 10
|
||||
ldi r19, 0
|
||||
rjmp cproAddressSetTimer
|
||||
|
||||
|
||||
@@ -64,8 +64,8 @@ cproHandle1sNeedAddr:
|
||||
cproHandle1sNeedAddr_okay:
|
||||
ldi r16, CPRO_MODE_GETADDRSTARTED ; wait for incoming messages
|
||||
sts cproMode, r16
|
||||
ldi r18, CPRO_WAITTIME_GETADDR ; set timeout
|
||||
clr r19
|
||||
ldi r18, LOW(CPRO_WAITTIME_GETADDR) ; set timeout
|
||||
ldi r19, HIGH(CPRO_WAITTIME_GETADDR) ; set timeout
|
||||
rjmp cproAddressSetTimer
|
||||
|
||||
|
||||
@@ -89,8 +89,8 @@ cproHandle1sSendReclaimAddr:
|
||||
cproHandle1sSendReclaimAddr_okay:
|
||||
ldi r16, CPRO_MODE_RECLAIMING_ADDR
|
||||
sts cproMode, r16
|
||||
ldi r18, CPRO_WAITTIME_RECLAIMADDR
|
||||
clr r19
|
||||
ldi r18, LOW(CPRO_WAITTIME_RECLAIMADDR)
|
||||
ldi r19, HIGH(CPRO_WAITTIME_RECLAIMADDR)
|
||||
rjmp cproAddressSetTimer ; prepare time for next stage
|
||||
|
||||
|
||||
@@ -117,8 +117,8 @@ cproHandle1sSendClaimAddr1:
|
||||
cproHandle1sClaimSend_okay: ; goto nex stage
|
||||
ldi r16, CPRO_MODE_CLAIMING_ADDR1
|
||||
sts cproMode, r16
|
||||
ldi r18, CPRO_WAITTIME_CLAIMADDR
|
||||
clr r19
|
||||
ldi r18, LOW(CPRO_WAITTIME_CLAIMADDR)
|
||||
ldi r19, HIGH(CPRO_WAITTIME_CLAIMADDR)
|
||||
rjmp cproAddressSetTimer ; prepare timer for next stage
|
||||
|
||||
|
||||
@@ -132,8 +132,8 @@ cproHandle1sClaimingAddr12_okay:
|
||||
lds r16, cproMode
|
||||
inc r16
|
||||
sts cproMode, r16
|
||||
ldi r18, CPRO_WAITTIME_CLAIMADDR
|
||||
clr r19
|
||||
ldi r18, LOW(CPRO_WAITTIME_CLAIMADDR)
|
||||
ldi r19, HIGH(CPRO_WAITTIME_CLAIMADDR)
|
||||
rjmp cproAddressSetTimer ; prepare time for next stage
|
||||
|
||||
|
||||
|
||||
@@ -86,7 +86,13 @@ cproHandleNeedAddr:
|
||||
sts cproMode, r24
|
||||
lds r24, com2Address
|
||||
clr r25
|
||||
adiw r25:r24, 3
|
||||
lsl r24 ; *2
|
||||
rol r25
|
||||
lsl r24 ; *4
|
||||
rol r25
|
||||
lsl r24 ; *8
|
||||
rol r25
|
||||
adiw r25:r24, 30 ; add 3 secs
|
||||
mov r18, r24
|
||||
mov r19, r25
|
||||
rjmp cproAddressSetTimer
|
||||
|
||||
@@ -73,10 +73,10 @@
|
||||
; ---------------------------------------------------------------------------
|
||||
; wait times for address protocol
|
||||
|
||||
.equ CPRO_WAITTIME_INITIAL = 10
|
||||
.equ CPRO_WAITTIME_GETADDR = 130
|
||||
.equ CPRO_WAITTIME_CLAIMADDR = 17
|
||||
.equ CPRO_WAITTIME_RECLAIMADDR = 10
|
||||
.equ CPRO_WAITTIME_INITIAL = 100
|
||||
.equ CPRO_WAITTIME_GETADDR = 1300
|
||||
.equ CPRO_WAITTIME_CLAIMADDR = 170
|
||||
.equ CPRO_WAITTIME_RECLAIMADDR = 100
|
||||
|
||||
|
||||
; ---------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user