?? 報警聲.asm
字號:
;MEGA16的PC口發出報警聲
.include"m16def.inc" ;器件配置文件
.org $0000
reset:
ldi r16,low(ramend) ;設置堆棧指針。
out spl,r16
ldi temp,high(ramend)
out sph,r16
ldi r18,0xff ;設口為輸出
out ddrc,r18
ldi r19,0x80 ;報警參數
lp: sbi portc,$00 ;開pc口
rcall delay ;延時
cbi portc,$00 ;關pc口
rcall delay
dec r19 ;-1
brne lp ;r19不為0轉,為0順執
rcall delay1 ;較長延時,不發聲
rjmp lp ;循環報警
delay1:ldi r17,$40 ;延時子程序,報警聲快慢調節$30-$60
rcall delay0
ret
delay:ldi r17,$9 ;延時子程序,報警聲頻率可調$a-$7
rcall delay0
ret
delay0: ;延時子程序
d1: push r17
d2: push r17
d3: push r17
d4: dec r17
brne d4
pop r17
dec r17
brne d3
pop r17
dec r17
brne d2
pop r17
dec r17
brne d1
ret
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -