;****************************************************************************************** ; AVRサンプル ; Project : ; Program Name : ; Programer : ; Create date : Version 1.0 H22.07.25 ; History : ;****************************************************************************************** ; (1)Description ; ;****************************************************************************************** .include "tn13adef.inc" .cseg LDI R16,RAMEND OUT SPL,R16 ; LDI R16,0xFF ; PORTB(0-7)を全て出力にする OUT DDRB,R16 ; PORTB(0-7)を全て出力にする LDI R16,0x00 ; PORTBを初期化 OUT PORTB,R16 ; PORTBを初期化 LDI R21,0x01 ; LEDの初期値 MAIN: RCALL MVLD ; ルーレットを動かす RCALL WAT1S ; 少し待つ ; RJMP MAIN ;****************************************************************************************** ; Function Name : MVLD ; Title : ルーレットを動かす ; Input : ; Output : ;****************************************************************************************** MVLD: OUT PORTB,R21 ; PORTBに代入 SBRC R21,4 ; RJMP MVLD1 ; LSL R21 ; 表示をシフト RET ;  MVLD1: ; LDI R21,0x01 ; PORTB変数を1に初期化 RET ; ;****************************************************************************************** ; Function Name : WAT1S ; Title : タイマー関数 ; Input : ; Output : ;****************************************************************************************** WAT1S: LDI R18,10 ; 100-> WAT1S_A: ; LDI R17,100 ; WAT1S_B: ; LDI R16,110 ; WAT1S_C: ; RJMP PC+1 ; RJMP PC+1 ; RJMP PC+1 ; DEC R16 ; BRNE WAT1S_C ; DEC R17 ; BRNE WAT1S_B ; DEC R18 ; BRNE WAT1S_A ; RET ;