📄 led.asm
字号:
IOSFT_REG .usect ".data0",1 ;要显示的数据寄存器
.include "F2407REGS.H" ;引用头部文件
.def _c_int0
.sect ".reset"
B _c_int0
.text
LEDPORT .set 8000h
_c_int0 ;相当于主程序的入口
CALL SYSINIT ;调系统初始化程序
NEXT_CYCLE:
LDP #DP_B2
SPLK #1, IOSFT_REG ;置初始值
LOOP:
CALL DELAY
OUT IOSFT_REG,LEDPORT ;显示
LACC IOSFT_REG, 1
SACL IOSFT_REG
BIT IOSFT_REG, 9
BCND NEXT_CYCLE, TC
B LOOP
*系统初始化程序*
SYSINIT:
SETC INTM
CLRC SXM
CLRC OVM
CLRC CNF ;B0 被配置为数据存储空间
LDP #0E0H
SPLK #81FEH, SCSR1 ;CLKIN=10 M, CLKOUT=40 M
SPLK #0E8H, WDCR ;不使能WDT
LDP #0
SPLK #0000H, IMR ;不使能
SPLK #0FFFFH, IFR ;清全部中断标志
RET
*软件延时程序*
DELAY:
MAR *, AR4
LAR AR4, #0FFFFH
LAR AR0, #00H
DELAY1: SBRK #1
RPT #100
NOP
CMPR 00
BCND DELAY1, NTC
RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -