?? osc.asm
字號:
CS0832 equ 8000h
org 0
jmp Main
SinData:
DB 0C0H, 0C3H, 0C6H, 0C9H, 0CCH, 0CFH, 0D2H, 0D5H
DB 0D8H, 0DBH, 0DEH, 0E0H, 0E3H, 0E6H, 0E8H, 0EAH
DB 0EDH, 0EFH, 0F1H, 0F3H, 0F5H, 0F6H, 0F8H, 0F9H
DB 0FBH, 0FCH, 0FDH, 0FEH, 0FEH, 0FFH, 0FFH, 0FFH
DB 0FFH, 0FFH, 0FFH, 0FFH, 0FEH, 0FEH, 0FDH, 0FCH
DB 0FBH, 0F9H, 0F8H, 0F6H, 0F5H, 0F3H, 0F1H, 0EFH
DB 0EDH, 0EAH, 0E8H, 0E6H, 0E3H, 0E0H, 0DEH, 0DBH
DB 0D8H, 0D5H, 0D2H, 0CFH, 0CCH, 0C9H, 0C6H, 0C3H
DB 0C0H, 0BCH, 0B9H, 0B6H, 0B3H, 0B0H, 0ADH, 0AAH
DB 0A7H, 0A4H, 0A1H, 9FH, 9CH, 99H, 97H, 95H
DB 92H, 90H, 8EH, 8CH, 8AH, 89H, 87H, 86H
DB 84H, 83H, 82H, 81H, 81H, 80H, 80H, 80H
DB 80H, 80H, 80H, 80H, 81H, 81H, 82H, 83H
DB 84H, 86H, 87H, 89H, 8AH, 8CH, 8EH, 90H
DB 92H, 95H, 97H, 99H, 9CH, 9FH, 0A1H, 0A4H
DB 0A7H, 0AAH, 0ADH, 0B0H, 0B3H, 0B6H, 0B9H, 0BCH
Delay:
mov B, a
DelayLoop:
nop
nop
nop
nop
djnz B, DelayLoop
ret
OutputDA:
push dph
push dpl
mov dptr, #CS0832
movx @dptr, a
pop dpl
pop dph
ret
ShowSin:
mov r0, #0
mov r1, #80h
mov dptr, #SinData
ShowSinLoop:
mov a, r0
movc a, @a+dptr
call OutputDA
inc r0
mov a, #40
call Delay
djnz r1, ShowSinLoop
ret
ShowTri:
mov r0, #80h
mov r1, #80h
ShowTriLoop:
mov a, r0
call OutputDA
inc r0
mov a, #40
call Delay
djnz r1, ShowTriLoop
ret
ShowSq:
mov a, #80h
call OutputDA
mov r0, #10
D1:
mov a, #200
call Delay
djnz r0, D1
mov a, #0ffh
call OutputDA
mov r0, #10
D2:
mov a, #200
call Delay
djnz r0, D2
ret
Main:
mov r3, #100
MD1:
call ShowSin
djnz r3, MD1
mov r3, #100
MD2:
call ShowTri
djnz r3, MD2
mov r3, #100
MD3:
call ShowSq
djnz r3, MD3
jmp Main
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -