csl_dmalcdchannelaux.h

来自「dsp在音频处理中的运用」· C头文件 代码 · 共 263 行

H
263
字号
#ifndef _CSL_DMALCDCHANNELAUX_H#define _CSL_DMALCDCHANNELAUX_H#ifdef __cplusplusextern "C" {#endifstatic inlinevoid	CSL_dmaLcdChangeChannelCtrlSetup (		CSL_DmaHandle 			hDma,		CSL_DmaLcdSetupChaCtrl 		*chaCtrlSetup){	register Uint16 _dma_lcd_ccr=0;   /* Local copy of LCD CCR Register  */	_dma_lcd_ccr = hDma->lcdRegs->LCDCCR;	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_BS,chaCtrlSetup->bs);	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_PRIO,chaCtrlSetup->priority);	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_AUTOINIT,chaCtrlSetup->autoinit);	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_ENDPROG,chaCtrlSetup->endprog);	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_REPEAT,chaCtrlSetup->repeat);	CSL_FINS(_dma_lcd_ccr,DMA_LCDCCR_OMAP31COMPATDISAB,chaCtrlSetup->compatability);	hDma->lcdRegs->LCDCCR = _dma_lcd_ccr;}static inlinevoid	CSL_dmaEnableinterrupt (		CSL_DmaHandle 			hDma,		Uint16  			inten){	/* The arg is assumed to be a  pointer to a bitwise OR of the CSL_DmaLcdIntEvents */	hDma->lcdRegs->LCDCTRL |= inten;}static inlinevoid	CSL_dmaDisableinterrupt (		CSL_DmaHandle 			hDma,		Uint16  			intdis){	/* The arg is assumed to be a  pointer to a bitwise OR of the CSL_DmaLcdIntEvents */	hDma->lcdRegs->LCDCTRL &=  ~(intdis);}static inlinevoid	CSL_dmaChangeLCHType (		CSL_DmaHandle 			hDma,		CSL_DmaLcdLchType  		lchType){	/* This command is for future use only as currently there is only one logical channel type */	CSL_FINS(hDma->lcdRegs->LCDLCHCTRL,DMA_LCDLCHCTRL_LCHTYPE,lchType);}static inlinevoid	CSL_dmaChangeBlockMode (		CSL_DmaHandle 			hDma,		CSL_DmaLcdBlockMode  		blockMode){	CSL_FINS(hDma->lcdRegs->LCDCTRL,DMA_LCDCTRL_BLOCKMODE,blockMode);}static inlinevoid	CSL_dmaChangeBlock1ElementCount (		CSL_DmaHandle 			hDma,		Uint16				elementCount){	hDma->lcdRegs->LCDSRCENB1= elementCount;}static inlinevoid	CSL_dmaChangeBlock2ElementCount (		CSL_DmaHandle 			hDma,		Uint16				elementCount){	hDma->lcdRegs->LCDSRCENB2= elementCount;}static inlinevoid	CSL_dmaChangeBlock1FrameCount (		CSL_DmaHandle 			hDma,		Uint16				frameCount){    hDma->lcdRegs->LCDSRCFNB1= frameCount;}static inlinevoid	CSL_dmaChangeBlock2FrameCount (		CSL_DmaHandle 			hDma,		Uint16				frameCount){    hDma->lcdRegs->LCDSRCFNB2= frameCount;}static inlinevoid	CSL_dmaChangeBlock1DataType (		CSL_DmaHandle 			hDma,		CSL_DmaLcdDataType		datatype){	CSL_FINS(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB1,datatype);}static inlinevoid	CSL_dmaChangeBlock2DataType (		CSL_DmaHandle 			hDma,		CSL_DmaLcdDataType		datatype){	CSL_FINS(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB2,datatype);}static inlinevoid	CSL_dmaEnableChannel (		CSL_DmaHandle 			hDma){	CSL_FINS(hDma->lcdRegs->LCDCCR,DMA_LCDCCR_EN,1);}static inlinevoid	CSL_dmaDisableChannel (		CSL_DmaHandle 			hDma){	CSL_FINS(hDma->lcdRegs->LCDCCR,DMA_LCDCCR_EN,0);}static inlinevoid	CSL_dmaChangeChannelBlock1Setup (		CSL_DmaHandle 			hDma,		CSL_DmaLcdSetupChaBlock1	*chaBlock1Setup){	CSL_FINS(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB1,chaBlock1Setup->datatype);	hDma->lcdRegs->LCDSRCENB1= chaBlock1Setup->elementCount;	hDma->lcdRegs->LCDSRCFNB1= chaBlock1Setup->frameCount;}static inlinevoid	CSL_dmaChangeChannelBlock2Setup (		CSL_DmaHandle 			hDma,		CSL_DmaLcdSetupChaBlock2	*chaBlock2Setup){	CSL_FINS(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB2,chaBlock2Setup->datatype);	hDma->lcdRegs->LCDSRCENB2= chaBlock2Setup->elementCount;	hDma->lcdRegs->LCDSRCFNB2= chaBlock2Setup->frameCount;}static inlinevoid	CSL_dmaGetChannelSetup (		CSL_DmaHandle 			hDma,		CSL_DmaLcdSetupChannel		*lcdChannelSetup		){	register Uint16 _dma_lcd_ctrl=0;  /* Local copy of LCD CTRL Register  */              _dma_lcd_ctrl = hDma->lcdRegs->LCDCTRL;              lcdChannelSetup->lchType = (CSL_DmaLcdLchType) CSL_FEXT(hDma->lcdRegs->LCDLCHCTRL,DMA_LCDLCHCTRL_LCHTYPE);              lcdChannelSetup->blockMode = (CSL_DmaLcdBlockMode) CSL_FEXT(_dma_lcd_ctrl,DMA_LCDCTRL_BLOCKMODE);           }static inlinevoid	CSL_dmaGetChannelCtrlSetup (		CSL_DmaHandle 			hDma,		CSL_DmaLcdSetupChaCtrl	    	*chaCtrlSetup		){	    register Uint16 _dma_lcd_ccr=0;   /* Local copy of LCD CCR Register  */	    	_dma_lcd_ccr = hDma->lcdRegs->LCDCCR;	              chaCtrlSetup->bs = (CSL_DmaLcdBS) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_BS);	              chaCtrlSetup->priority = (CSL_DmaLcdPriority) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_PRIO);	              chaCtrlSetup->autoinit = (CSL_DmaLcdAutoInit) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_AUTOINIT);	              chaCtrlSetup->endprog = (CSL_DmaLcdEndProg) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_ENDPROG);	              chaCtrlSetup->repeat = (CSL_DmaLcdRepeat) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_REPEAT);	              chaCtrlSetup->compatability = (CSL_DmaLcdCompatability) CSL_FEXT(_dma_lcd_ccr,DMA_LCDCCR_OMAP31COMPATDISAB);}static inlinevoid	CSL_dmaGetChannelBlock1Setup (			CSL_DmaHandle 			hDma,			CSL_DmaLcdSetupChaBlock1    	*chaBlock1Setup			){	  chaBlock1Setup->datatype = (CSL_DmaLcdDataType) CSL_FEXT(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB1);	              chaBlock1Setup->elementCount = hDma->lcdRegs->LCDSRCENB1;	              chaBlock1Setup->frameCount = hDma->lcdRegs->LCDSRCFNB1;}static inlinevoid	CSL_dmaGetChannelBlock2Setup (			CSL_DmaHandle 			hDma,			CSL_DmaLcdSetupChaBlock2    	*chaBlock2Setup			){	   chaBlock2Setup->datatype = (CSL_DmaLcdDataType) CSL_FEXT(hDma->lcdRegs->LCDCSDP,DMA_LCDCSDP_DATATYPEB2);	              chaBlock2Setup->elementCount = hDma->lcdRegs->LCDSRCENB2;	              chaBlock2Setup->frameCount = hDma->lcdRegs->LCDSRCFNB2;}static inlinevoid	CSL_dmaGetInterruptStatus (			CSL_DmaHandle 			hDma,			Uint16				*interruptStatus			){	    *interruptStatus = (hDma->lcdRegs->LCDCTRL & ((CSL_DMA_LCD_BLOCK_EVENT | CSL_DMA_LCD_BUS_ERROR_EVENT) ) );}#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?