Вот моя инициализация для работы с AIC23
; MCBSP #1 - codec data mov #0, port(#SPCR1_1) ; RRST=0 and #0, port(#SPCR2_1) ; XRST=0, GRST=0, frst=0 rpt #100h nop mov #0000h,port(#SPCR1_1) mov #0000h,port(#SPCR2_1) mov #0003h,port(#PCR1) ; 0b09 mov #0140h,port(#RCR1_1) mov #0001h,port(#RCR2_1) ; mov #0140h,port(#XCR1_1) mov #0001h,port(#XCR2_1) ; mov #0047h,port(#SRGR1_1) ; 00FF mov #0000h,port(#SRGR2_1) mov #0000h,port(#MCR1_1) mov #0000h,port(#MCR2_1) rpt #1000 nop ; rpt #0F000h ; nop ; DMAC's ; #0 - RX ;fedcba9876543210 mov #0100011101000101b, port(#DMA_CCR0) mov #0000000000000000b, port(#DMA_CICR0) mov #0000000000001101b, port(#DMA_CSDP0) mov #(DRR1_1 << 1) & 0FFFFh, port(#DMA_CSSA_L0) mov #(DRR1_1 >> 15) , port(#DMA_CSSA_U0) mov #(RXBUF << 1) & 0FFFFh, port(#DMA_CDSA_L0) mov #(RXBUF >> 15) , port(#DMA_CDSA_U0) mov #BUFSZ*2, port(#DMA_CEN0) mov #2, port(#DMA_CFN0) ; #1 - TX ;fedcba9876543210 mov #0001011101000110b, port(#DMA_CCR1) mov #0000000000101000b, port(#DMA_CICR1) mov #0000011000000001b, port(#DMA_CSDP1) mov #(TXBUF << 1) & 0FFFFh, port(#DMA_CSSA_L1) mov #(TXBUF >> 15) , port(#DMA_CSSA_U1) mov #(DXR1_1 << 1) & 0FFFFh, port(#DMA_CDSA_L1) mov #(DXR1_1 >> 15) , port(#DMA_CDSA_U1) mov #BUFSZ*2, port(#DMA_CEN1) mov #2, port(#DMA_CFN1) rpt #200h nop or #80h,port(#DMA_CCR0) or #80h,port(#DMA_CCR1) rpt #200h nop btst #0,port(#DMA_CSR1),TC1 btst #0,port(#DMA_CSR0),TC1 mov #0FFFFh,mmap(@IFR0) mov #0FFFFh,mmap(@IFR1) or #1,port(#SPCR2_1) or #1,port(#SPCR1_1)