⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 digitalphotoalbum_handler.c

📁 coldfire的mcf5329的程序
💻 C
字号:
/******************************************************************************
*     Description:	
*			System Test Program
*			Interrupt Handlers
*
******************************************************************************/
#include "src/common/common.h"
#include "DigitalPhotoAlbum.h"

extern uint32 blendValue;
extern uint32 imageState;
extern imageStruct *p_images;
extern imageNum;

/*******************************************************************************
*
*  Timer 1 Interrupt Handler
*
*******************************************************************************/
__interrupt__
__declspec(interrupt:0)
void norm_DTimer0_isr(void)
{

	/* Clear interrupt by writing 1 */
	MCF_DTIM0_DTER = 0x00000003;

	switch(imageState)
	{
		case SHOW_BACKGROUND:
		{
			MCF_DTIM0_DTRR =  0x0000FFFF; 
    		
    		if (blendValue != 0x00)
    		{
	    		blendValue = blendValue - 5;
    			MCF_LCDC_LGWCR = ( MCF_LCDC_LGWCR_GWAV(blendValue) | MCF_LCDC_LGWCR_GWE );
    		}
    		else
    			imageState = SET_NEW_FOREGROUND;
    		break;
    	}
    	
		case SHOW_FOREGROUND:
		{
			MCF_DTIM0_DTRR =  0x0000FFFF; 
		
    		if (blendValue != 255)
    		{
	    		blendValue = blendValue + 5;
    			MCF_LCDC_LGWCR = ( MCF_LCDC_LGWCR_GWAV(blendValue) | MCF_LCDC_LGWCR_GWE );
    		}
    		else
    			imageState = SET_NEW_BACKGROUND;
    		break;
    	}

		case SET_NEW_BACKGROUND:
		{
			MCF_DTIM0_DTRR =  0x000FFFFF; 

   			imageNum++;		/* Increment to next image */
   			if ( imageNum == p_images->numImages)
   				imageNum = 0;				/* Wrap if at the end of the array */

			LCDC_Display_Image((uint8*)p_images->imageArray[imageNum]);
    		
   			imageState = SHOW_BACKGROUND;
    		break;
    	}
    	
		case SET_NEW_FOREGROUND:
		{
			MCF_DTIM0_DTRR =  0x000FFFFF; 

   			imageNum++;		/* Increment to next image */
   			if ( imageNum == p_images->numImages)
   				imageNum = 0;				/* Wrap if at the end of the array */

			LCDCGW_Display_Image((uint8*)p_images->imageArray[imageNum]);
    		
   			imageState = SHOW_FOREGROUND;
    		break;
    	}

		default:
		{
			imageState = SHOW_FOREGROUND;
			blendValue = 0;
			break;
		}
	}
    		
} /*norm_DTimer0_isr */

⌨️ 快捷键说明

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