Datasheet
708
MOV.L @R12+,R1
MOV.L R1,@R0
ADD.L #4,R0
ADD.L #-1,R13
CMP/PL R13
BT COPY_LOOP
MOV.L #H’FFFF8500,R0 ; Initialize GBR
LDC R0,GBR
;
MOV.L #Wait10u,R3
MOV.L #FLMCR1,R0 ; Initialize R0 to FLCMR1 address
OR.B #SWESET,@(R0,GBR) ; Set SWE
Wait_1 SUBC R2,R3 ; Wait 10 µs
BF Wait_1
;
MOV.L #H’20000,R9
CMP/GT R5,R9
BT Program_Start
MOV.L #FLMCR2,R0
Program_Start .EQU $
MOV.L #0,R9 ; Initialize n (R9) to 0
;
Program_loop .EQU $
MOV.L #0,R10 ; Initialize m (R10) to 0
MOV.L #32,R3 ; Write 32-byte data consecutively
MOV.L #PdataBuff,R12
MOV.L R5,R13
Write_Loop .EQU $
MOV.B @R12+,R1
MOV.B R1,@R13
ADD.L #1,R13
ADD.L #-1,R3
CMP/PL R3
BT Write_Loop
;
MOV.L #WDT_TCSR,R1 ; Enable WDT
MOV.W #WDT_573u,R3 ; 573.4 µs cycle