avr: receiving flash messages basically works.
This commit is contained in:
@@ -41,6 +41,7 @@ flashDataEnd:
|
||||
checkFlash:
|
||||
rcall flashReadUidIntoSdram ; R16, X, Y
|
||||
rcall ioRawInit ; (R16, R17)
|
||||
|
||||
ldi xl, LOW(flashSendBuffer)
|
||||
ldi xh, HIGH(flashSendBuffer)
|
||||
rcall flashProcessWriteFlashReady ; (R16, R17, R18, R19, R20, Y, Z)
|
||||
@@ -83,7 +84,6 @@ flashProcess:
|
||||
flashProcess_loop1:
|
||||
; wait up to 10s for incoming FLASH_DATA message
|
||||
ldi r16, CPRO_CMD_FLASH_DATA
|
||||
ldi r20, 5 ; wait for 5s (not used!)
|
||||
rcall ioWaitForGivenMsg ; (r16, r17, r18, r19, r20, r22, X)
|
||||
brcc flashProcess_end ; no FLASH_DATA or FLASH_END msg
|
||||
; either FLASH_DATA or FLASH_END received
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
; @return CFLAG set if okay (packet received), cleared on error
|
||||
; @return r16 code of received msg
|
||||
; @param r16 command to wait for
|
||||
; @param r20 time in seconds to wait for a message
|
||||
; @clobbers: r16, r17, r20, X (r18, r19, r22)
|
||||
|
||||
ioWaitForGivenMsg:
|
||||
ldi r20, 100 ; number of tries
|
||||
ioWaitForGivenMsg_loop:
|
||||
push r16
|
||||
rcall ioRawWaitForValidMsg ; (r16, r17, r18, r19, r22, X)
|
||||
|
||||
Reference in New Issue
Block a user