avr: decreased verbosity. minor fixes.

- address claiming modes now work
This commit is contained in:
Martin Preuss
2023-04-12 23:32:08 +02:00
parent ded08b8c47
commit 86b45a58e5
8 changed files with 70 additions and 131 deletions

View File

@@ -45,6 +45,7 @@ cproAddressOnTimerTable:
cproHandle1sSendingHaveAddress:
lds r19, com2Address
rcall CPRO_SendHaveAddress
brcs cproHandle1sSendingHaveAddress_okay
rcall cproAddressSetTimer1s ; could not send, restart timer 1s and retry later
@@ -140,18 +141,20 @@ cproHandle1sClaimingAddr12_okay:
cproHandle1sClaimingAddr3:
cproHandle1sReclaimingAddr:
; claimed given address 3rd time or addr reclaimed, set address and enter "normal" mode
lds r19, cproAddrRangeBegin ; currently claimed address
lds r19, cproAddrRangeBegin ; currently claimed address
sts com2Address, r19
rcall CPRO_SendHaveAddress
brcs cproHandle1sClaimingAddr3_okay
rjmp cproAddressSetTimer1s ; could not send, restart timer 1s and retry later
rjmp cproAddressSetTimer1s ; could not send, restart timer 1s and retry later
cproHandle1sClaimingAddr3_okay:
in r15, SREG
cli
lds r16, cproAddrRangeBegin ; currently sent address is in cproAddrRangeBegin
sts com2Address, r16 ; write address into eeprom
ldi xl, LOW(EEPROM_OFFS_COMADDR)
push r15
cli
lds r16, com2Address ; currently sent address is in cproAddrRangeBegin
ldi xl, LOW(EEPROM_OFFS_COMADDR) ; write address into eeprom
ldi xh, HIGH(EEPROM_OFFS_COMADDR)
rcall Utils_WriteEepromIncr ; write address to EEPROM
rcall Utils_WriteEepromIncr ; write address to EEPROM
pop r15
out SREG, r15
ldi r16, CPRO_MODE_NORMAL ; set mode to "normal"
sts cproMode, r16