;------------------------------------------------------------------------ ; | ; FILE :H8T0005.src | ; DATE :Sat, Jun 09, 2007 | ; DESCRIPTION :Main Program | ; CPU TYPE :H8/3664F | ; | ; This file is generated by Renesas Project Generator (Ver.4.8). | ; | ;------------------------------------------------------------------------ ; Memo ; General Registor ; 32(bit) *8 Registor ; ER0-ER7 ; 16(bit)*16 Registor ; E0-E7,R0-R7 ; 8(bit)*16 Registor ; R0H-R7H,R0L-R7L ; PDRB .EQU H'FFDD ; PMR5 .EQU H'FFE1 PCR5 .EQU H'FFE8 PDR5 .EQU H'FFD8 .export _main _main: ; ; 1.Initialize ; (1)Initialized Port Registor MOV.B #H'00,R0L ;PMR5 MOV.B R0L,@PMR5 MOV.B #H'FF,R0L ;PCR5 MOV.B R0L,@PCR5 MOV.B #H'01,R0L ;PDR5 MOV.B R0L,@PDR5 ; ; (2)Initialized LED_status MOV.B #H'01,R0L ;R0L => LED status MOV.L #H'00000001,ER2 ;ER2 => Loop ; ; 2.Wait Push-Switch ; mainS: BSR watSW ; ; 3.Move LED ; main1: ; (1)Move LED BSR mvled MOV.B R0L,@PDR5 BSR wat ; (2)Loop ER2 CMP.L #H'00000000,ER2 BEQ mainS MOV.L #H'00000001,ER3 SUB.L ER3,ER2 BRA main1 ; ; =========================================================== ; Function name ; watSW ; Title ; Wait Switch ; Input ; ER2 ; Output ; ER2 ; Description ; ; =========================================================== watSW: ; ------------------ ; 0.Initialize ; ------------------ PUSH.L ER0 PUSH.L ER1 watSW0: ; ------------------ ; 1.Counter ; ------------------ MOV.L #H'00000001,ER0 ADD.L ER0,ER2 CMP.L #H'00000021,ER2 BNE watSW1 MOV.L #H'00000001,ER2 watSW1: ; ------------------ ; 2.Check Push-SW ; ------------------ MOV.B @PDRB,R0L AND.B #B'00000001,R0L CMP.B #B'00000001,R0L BEQ watSWe ; MOV.B @PDRB,R0L AND.B #B'00000010,R0L CMP.B #B'00000010,R0L BEQ watSWe ; BRA watSW0 ; watSWe: ; ------------------ ; E.End ; ------------------ POP.L ER1 POP.L ER0 RTS ; ; =========================================================== ; Function name ; mvled ; Title ; Move LED ; Input ; R0L ; Output ; R0L ; Description ; ; =========================================================== mvled: CMP.B #B'10000000,R0L BNE set0 MOV.B #B'00000001,R0L BRA sete set0: SHAL.B R0L sete: RTS ; ; =========================================================== ; Function name ; wat ; Title ; Timer Function ; Input ; None ; Output ; None ; Description ; ; =========================================================== wat: PUSH.L ER1 PUSH.L ER2 MOV.L #H'00000001,ER1 MOV.L #H'0000FFFF,ER2 wat0: CMP.L #H'00000000,ER2 BEQ wate SUB.L ER1,ER2 BRA wat0 wate: POP.L ER2 POP.L ER1 RTS ; .END