;===================================================== ; Program Name : AVR Sample Source Code ; Version : 1.00 ; Date : 2008.7.30 ; Author : Byすん ; Board Name : ; Device : ATtiny2313 ; Clock : ; Use Port : output PB7, PB6 ;===================================================== ; ; << bit shift ; & and ; | or ; () example 0xff & ((1<<7) | (1<<6)) ; ; Register ; 8bit = R0-R31 ; 16bit = X (XH=R27,XL=R26) XH,XL is register name label ; 16bit = Y (YH=R29,YL=R28) YH,YL is register name label ; 16bit = Z (ZH=R31,ZL=R30) ZH,ZL is register name label ; .include ; define label .equ BIT7 = 0x80 .equ BIT6 = 0x40 .equ BIT5 = 0x20 .equ BIT4 = 0x10 .equ BIT3 = 0x08 .equ BIT2 = 0x04 .equ BIT1 = 0x02 .equ BIT0 = 0x01 ; register label .def work = r16 ;===================================================== ; data ;===================================================== .dseg ; (RAM) ABC: .byte 2 ; 2 byte ;===================================================== ; interrupt vector ;===================================================== .cseg ; (FlashROM) .org 0x00 rjmp reset ;===================================================== ; code ;===================================================== .org 0x20 reset: ; Stack Pointerレジスタはxxxdef.incファイルの ; I/O REGISTER DEFINITIONSを確認してください ; SPH無い場合コメントにする ; ldi r16,hi(RAMEND) ; out SPH,r16 ; SPL無い場合コメントにする ldi r16,low(RAMEND) out SPL,r16 ; SP無い場合コメントにする ; ldi r16,low(RAMEND) ; out SP,r16 main: ldi work, BIT7 | BIT6 ; pb7,pb6 output out DDRB, work loop: rjmp loop