?? c54init.asm
字號:
************************** c54init.asm ********************
.mmregs
.include c54.inc
.def c54init
.ref bsp_out_buf,bsp_in_buf
.text
c54init:
*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 #0xFFFF,IFR
STM #0x0488,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 #bsp_out_buf,DMSDI
STM #DXR11,DMSDI
STM #8,DMSDI
STM #0x60ff,DMSDI ;0110 0000 1111 1111
STM #0x5141,DMSDI ;0101 0001 0100 0001
*channel2:
STM #DRR11,DMSDI
STM #bsp_in_buf,DMSDI
STM #8,DMSDI
STM #0x50ff,DMSDI ;0101 0000 1111 1111
STM #0x5045,DMSDI ;0101 0000 0100 0101
STM #0xc686,DMPREC ;1100 0110 1000 0110
RSBX INTM
NOP
NOP
RET
.end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -