📄 sg6.asm
字号:
.device AT90S8535
.equ sph =$3E
.equ spl =$3D
.equ PORTC =$15
.equ DDRC =$14
.equ PINC =$13
.equ TCCR0 =$33
.equ TCNT0 =$32
.equ TIMSK =$39
.equ TIFR =$38
.equ SREG =$3F
.def ZH =r31
.def ZL =r30
.org $0000
rjmp main
.org $009
rjmp t0_ovf
main: ldi r16,$02 ;栈指针置初值
out sph,r16
ldi r16,$5f
out spl,r16
ldi r16,$01 ;允许T0溢出中断
out TIMSK,r16
ldi r16,$05 ;1024分频
out TCCR0,r16
ldi r17,131 ;T/C0置初值131
out TCNT0,r17
ldi r16,$01
out TIFR,r16
ldi r16,$ff ;PC口作输出
out DDRC,r16
sei
here: rjmp here
t0_ovf: in r1,sreg ;保存sreg
ldi r17,131
out TCNT0,r17
in r18,PORTC ;读C口数据寄存器
com r18 ;取反
out PORTC,r18 ;送C口数据寄存器
out SREG,r1 ;恢复sreg
reti
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -