📄 数字录音.txt
字号:
.mmregs
.global _main
.sect ".vectors"
.ref bsp_in_buf,bsp_out_buf
.include c54.inc
.include user.inc
.align 0x80 ; must be aligned on page boundary
RESET: ; reset vector
BD _main ; branch to main progrom
NOP
nmi: nop ; enable interrupts and return from one
rete
NOP
NOP ;NMI~
; software interrupts
sint17 .space 4*16
sint18 .space 4*16
sint19 .space 4*16
sint20 .space 4*16
sint21 .space 4*16
sint22 .space 4*16
sint23 .space 4*16
sint24 .space 4*16
sint25 .space 4*16
sint26 .space 4*16
sint27 .space 4*16
sint28 .space 4*16
sint29 .space 4*16
sint30 .space 4*16
int0: RETE
NOP
NOP
NOP
int1: RETE
NOP
NOP
NOP
int2: RETE
NOP
NOP
NOP
tint:
RETE
NOP
nop
nop
rint0: RETE
NOP
NOP
NOP
xint0: RETE
NOP
NOP
NOP
DMAC0: RETE
NOP
NOP
NOP
DMAC1: RETE
NOP
NOP
NOP
int3: RETE
NOP
NOP
NOP
HPINT: RETE
NOP
NOP
NOP
DMAC2: NOP
CALL isp2
RETE
xint1: RETE
NOP
NOP
NOP
DMAC4: RETE
NOP
NOP
NOP
DMAC5: RETE
NOP
NOP
NOP
.text
************************** c54init.asm ********************
_main:
STM #0200H,SP
nop
stm #00f0h,ar3
portw ar3,00h
stm #04000h,ar3
st #00h,*ar3
*SWWSR :SoftWare Wait-State Register Address 0028h
* -------------------------------------------------------------------------
* | 15 | 14 12 | 11 9 | 8 6 | 5 3 | 2 0 |
* -------------------------------------------------------------------------
* | XPA | I/O | Data | Data | Program | Program |
* -------------------------------------------------------------------------
* 0 111 001 000 001 000
STM #0x7208,SWWSR
*
*
*SWCR :SoftWare Wait-State Conctrol Register Address 002Bh
* -------------------------------------------------------------------------
* | | 0 |
* -------------------------------------------------------------------------
* | | SWSM |
* -------------------------------------------------------------------------
STM #0,SWCR
*
*
*BSCR :Programabel bank-switching wait states Address 0029h
* -------------------------------------------------------------------------
* | 15 12 | 11 | 10 3 | 2 | 1 | 0 |
* -------------------------------------------------------------------------
* | BNKCMP | PS-DS | Reserved | HBH | BH | EXIO |
* -------------------------------------------------------------------------
STM #0xF800,BSCR
*
*
*ST0
* ------------------------------------------------------------------------
* | 15 13 | 12 | 11 | 10 | 9 | 8 0 |
* ------------------------------------------------------------------------
* | ARP | TC | C | OVA | OVB | DP |
* ------------------------------------------------------------------------
STM #0,ST0
*
*
*ST1
* ------------------------------------------------------------------------
* | 15 | 14 | 13 | 12 | 11 |10 | 9 | 8 | 7 | 6 | 5 |4 0 |
* ------------------------------------------------------------------------
* |BRAF| CPL | XF | HM | INTM | 0 | OVM | SXM | C16 | FRCT | CMPT | ASM |
* ------------------------------------------------------------------------
STM #0x2b00,ST1 ;INTM=1 off interrupt
*
*
*PMST
* ------------------------------------------------------------------------
* | 15 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
* ------------------------------------------------------------------------
* | IPTR | MP/MC | OVLY | AVIS | DROM | CLKOFF | SMUL|SST |
* ------------------------------------------------------------------------
* |0020 1111 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
* ------------------------------------------------------------------------
STM #0xbfe4,PMST ;Interrupt vector map Bf80
*
*
*IFR or IMR
* --------------------------------------------------------------------------------------------
* |15 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
* ---------------------------------------------------------------------------------------------
* |RES |DMAC5|DMAC4|BXINT1|BRINT1|HPINT|INT3|TINT1|DMAC0|BXINT0|BRINT0|TINT0|INT2|INT1|INT0|
* | | | |DMAC3 |DMAC2 | | |DMAC1| | | | | | | |
* --------------------------------------------------------------------------------------------
STM #0FFFFh,IFR
STM #0x0400,IMR ;Timer0 enabel interrupt
* ;DMAC1 enabel interrupt
* ;DMAC2 enabel interrupt
*CLKMD
* ------------------------------------------------------------------------
* | 15 12 | 11 | 10 3 | 2 | 1 | 0 |
* ------------------------------------------------------------------------
* | PLLMUL | PLLDIV | PLLCOUNT | PLLON/OFF | PLLNDIV | PLLSTATUS |
* ------------------------------------------------------------------------
STM #0,CLKMD
;clkcon: LDM CLKMD,A
; AND #0x01,A
; BC clkcon,ANEQ
; STM #0x43ff,CLKMD ;PLL MUL=(4+1) *20=100MHz
*
*
*TCR
* ------------------------------------------------------------------------
* | 15 12 | 11 | 10 | 9 6 | 5 | 4 | 3 0 |
* ------------------------------------------------------------------------
* | Revd | soft | free | PSC | TRB | TSS | TDDR |
* ------------------------------------------------------------------------
STM #0x0010,TCR1 ;timer1 stop
STM #0x0010,TCR ;TSS=1 Timer stop
STM #12800,PRD
STM #0x0020,TCR
*
*
*
******************************* McBSP1 ********************************
*
STM #PCR1,SPSA1
STM #0x0f70,SPSD1 ;0000 1111 0111 0000
STM #RCR11,SPSA1
STM #0x0000,SPSD1 ;0000 0000 0000 0000
STM #RCR21,SPSA1
STM #0x0018,SPSD1 ;0000 0000 0001 1000: 0018
* 0 0
STM #XCR11,SPSA1
STM #0x0000,SPSD1 ;0000 0000 0000 0000
STM #XCR21,SPSA1
STM #0x0018,SPSD1 ;0000 0000 0001 1000:0018
STM #SRGR11,SPSA1
STM #0x0731,SPSD1 ;0000 0111 0011 0001(100MHz:100/2.048=50=0X32)
*
STM #SRGR21,SPSA1
STM #0x30ff,SPSD1 ;0011 0000 1111 1111
STM #SPCR11,SPSA1
STM #0x2001,SPSD1 ;0010 0000 0000 0001
STM #SPCR21,SPSA1
STM #0x02c3,SPSD1 ;0000 0010 1100 0011
STM #0xaa55,DXR11
******************************* DMA ********************************
*channel1:
STM #DMSRC1,DMSA ;Source address register
STM #110h,DMSDI
STM #DXR11,DMSDI
STM #16,DMSDI
STM #0x60ff,DMSDI ;0110 0000 1111 1111
STM #0x5141,DMSDI ;0101 0001 0100 0001
*channel2:
STM #DRR11,DMSDI
STM #100h,DMSDI
STM #16,DMSDI
STM #0x50ff,DMSDI ;0101 0000 1111 1111
STM #0x5045,DMSDI ;0101 0000 0100 0101
STM #0xc686,DMPREC ;1100 0110 1000 0110
RSBX INTM
stm #4000h,ar3
loop6: nop
b loop6
*****************int service routine**********************
isp2: pshm st0
pshm st1
pshm ag
pshm ah
pshm al
pshm t
stm #0fh,ar1
stm #100h,ar2
stm #110h,ar4
loop3: ld *ar2+,t
st t,*ar3+
st t,*ar4+
;ld #7fffh,al
banz loop3,*ar1-
popm t
popm al
popm ah
popm ag
popm st1
popm st0
ret
isp1:
stm #01h,ar3
portw ar3,00h
nop
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -