📄 sci.asm
字号:
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Global symbol declarations
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.def start, timer2_isr
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Address definitions
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.include f2407.h
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Constant definitions
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Uninitialized global variable definitions
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.bss temp1,1
**********************************************************************
* M A I N R O U T I N E *
**********************************************************************
.text
start:
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Configure the System Control and Status Registers
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LDP #DP_PF1 ;set data page
SPLK #0000000011111101b, SCSR1
* ||||||||||||||||
* FEDCBA9876543210
* bit 15 0: reserved
* bit 14 0: CLKOUT = CPUCLK
* bit 13-12 00: IDLE1 selected for low-power mode
* bit 11-9 000: PLL x4 mode
* bit 8 0: reserved
* bit 7 1: 1 = enable ADC module clock
* bit 6 1: 1 = enable SCI module clock
* bit 5 1: 1 = enable SPI module clock
* bit 4 1: 1 = enable CAN module clock
* bit 3 1: 1 = enable EVB module clock
* bit 2 1: 1 = enable EVA module clock
* bit 1 0: reserved
* bit 0 1: clear the ILLADR bit
LACC SCSR2 ;ACC = SCSR2 register
OR #0000000000001011b ;OR in bits to be set
AND #0000000000001111b ;AND out bits to be cleared
* ||||||||||||||||
* FEDCBA9876543210
* bit 15-6 0's: reserved
* bit 5 0: do NOT clear the WD OVERRIDE bit
* bit 4 0: XMIF_HI-Z, 0=normal mode, 1=Hi-Z'd
* bit 3 1: disable the boot ROM, enable the FLASH
* bit 2 no change MP/MC* bit reflects the state of the MP/MC* pin
* bit 1-0 11: 11 = SARAM mapped to prog and data (default)
SACL SCSR2 ;store to SCSR2 register
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Disable the watchdog timer
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LDP #DP_PF1 ;set data page
SPLK #0000000011101000b, WDCR
* ||||||||||||||||
* FEDCBA9876543210
* bits 15-8 0's reserved
* bit 7 1: clear WD flag
* bit 6 1: disable the dog
* bit 5-3 101: must be written as 101
* bit 2-0 000: WDCLK divider = 1
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Setup external memory interface for LF2407 EVM
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
LDP #temp1 ;set data page
SPLK #0000000001000000b, temp1
* ||||||||||||||||
* FEDCBA9876543210
* bit 15-11 0's: reserved
* bit 10-9 00: bus visibility off
* bit 8-6 001: 1 wait-state for I/O space
* bit 5-3 000: 0 wait-state for data space
* bit 2-0 000: 0 wait state for program space
OUT temp1, WSGR
timer2_isr: RET
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -