亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? intmgrtimerexample.c

?? ADI公司blackfin DSP開發板BF533 EZ-KIT LITE附帶的全部原代碼
?? C
字號:
/*********************************************************************************

Copyright(c) 2004 Analog Devices, Inc. All Rights Reserved. 

This software is proprietary and confidential.  By using this software you agree
to the terms of the associated Analog Devices License Agreement.  

***********************************************************************************

Please refer to the 'readme.txt' file for a description of the Interrupt Manager Examples.


*********************************************************************

Include files

*********************************************************************/

#include <services/services.h>
#include "ezkitutilities.h"

/*********************************************************************

Enumerations and defines

*********************************************************************/

/*********************************************************************

Data Structures 

*********************************************************************/

/*********************************************************************

Static data

*********************************************************************/

// storage for interrupt manager data

static u8 IntMgrData[(ADI_INT_SECONDARY_MEMORY * 2)];	


/*********************************************************************

Static functions

*********************************************************************/

/*********************************************************************

 Interrupt Service Routin for Timer 0.

*********************************************************************/

static ADI_INT_HANDLER(Timer0_ISR) {
	
	// See if this is a timer 0 event, by calling a function to
	// read corresponding bit (16) in the the SIC_ISR register

	if (adi_int_SICInterruptAsserted(ADI_INT_TIMER0) == ADI_INT_RESULT_NOT_ASSERTED)
	
	// This return value tells the interrupt manager to process the next
	// ISR in the chain for this IVG, because we haven't yet serviced the 
	// peripheral that interrupted this time

 		return (ADI_INT_RESULT_NOT_PROCESSED);	

	// clear timer 0 interupt
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_0, ADI_TMR_GP_CMD_CLEAR_INTERRUPT, NULL);
		
	// toggle the specified LED
	ezToggleLED(EZ_FIRST_LED);
	
	// This return value tells the interrupt manager not to process 
	// anymore ISR's for this IVG, because we already serviced the 
	// peripheral that had interrupted this time.
	
	return (ADI_INT_RESULT_PROCESSED);
	
}
 

/*********************************************************************

 Interrupt Service Routin for Timer 1.

*********************************************************************/

static ADI_INT_HANDLER(Timer1_ISR) {
	
	// See if this is a timer 0 event, by calling a function to	
	// read corresponding bit (17) in the the SIC_ISR register

	if (adi_int_SICInterruptAsserted(ADI_INT_TIMER1) == ADI_INT_RESULT_NOT_ASSERTED)
	
	// This return value tells the interrupt manager to process the next
	// ISR in the chain for this IVG, because we haven't yet serviced the 
	// peripheral that interrupted this time

 		return (ADI_INT_RESULT_NOT_PROCESSED);	

	
	// clear timer 1 interupt
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_1, ADI_TMR_GP_CMD_CLEAR_INTERRUPT, NULL);
		
	// toggle the specified LED

	ezToggleLED(EZ_FIRST_LED+1);
	
	// This return value tells the interrupt manager not to process 
	// anymore ISR's for this IVG, because we already serviced the 
	// peripheral that had interrupted this time.

	return (ADI_INT_RESULT_PROCESSED);

}
 

/*********************************************************************

 Interrupt Service Routin for Timer 2.

*********************************************************************/

static ADI_INT_HANDLER(Timer2_ISR) {

	// See if this is a timer 0 event, by calling a function to
	// read corresponding bit (18) in the the SIC_ISR register
		
	if (adi_int_SICInterruptAsserted(ADI_INT_TIMER2) == ADI_INT_RESULT_NOT_ASSERTED)
	
	
	// This return value tells the interrupt manager to process the next
	// ISR in the chain for this IVG, because we haven't yet serviced the 
	// peripheral that interrupted this time

 		return (ADI_INT_RESULT_NOT_PROCESSED);	
 	
	// clear timer 2 interupt
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_2, ADI_TMR_GP_CMD_CLEAR_INTERRUPT, NULL);
		
	// toggle the specified LED

	ezToggleLED(EZ_FIRST_LED+2);
	
	// This return value tells the interrupt manager not to process 
	// anymore ISR's for this IVG, because we already serviced the 
	// peripheral that had interrupted this time.

	return (ADI_INT_RESULT_PROCESSED);
}
  

/****************************************************************************
  Function:	Init_Timers	
				
  Set up timers for PWM mode and enale them.
******************************************************************************/

void InitTimers(void)
{
	//Setting up command table for Timer 0
	ADI_TMR_GP_CMD_VALUE_PAIR Timer0ConfigurationTable [] = {
		{ ADI_TMR_GP_CMD_SET_TIMER_MODE,			(void *)0x01			},
		{ ADI_TMR_GP_CMD_SET_COUNT_METHOD,			(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_INTERRUPT_ENABLE,		(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_OUTPUT_PAD_DISABLE,	(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_PERIOD,				(void *)0x08000000		},
		{ ADI_TMR_GP_CMD_SET_WIDTH, 				(void *)0x00400000		},
		{ ADI_TMR_GP_CMD_END,						NULL					}, 
	};
	
	//Setting up command table for Timer 1
	ADI_TMR_GP_CMD_VALUE_PAIR Timer1ConfigurationTable [] = {
		{ ADI_TMR_GP_CMD_SET_TIMER_MODE,			(void *)0x01			},
		{ ADI_TMR_GP_CMD_SET_COUNT_METHOD,			(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_INTERRUPT_ENABLE,		(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_OUTPUT_PAD_DISABLE,	(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_PERIOD,				(void *)0x04000000		},
		{ ADI_TMR_GP_CMD_SET_WIDTH, 				(void *)0x00400000		},
		{ ADI_TMR_GP_CMD_END,						NULL					}, 
	};
		
	//Setting up command table for Timer 2
	ADI_TMR_GP_CMD_VALUE_PAIR Timer2ConfigurationTable [] = {
		{ ADI_TMR_GP_CMD_SET_TIMER_MODE,			(void *)0x01			},
		{ ADI_TMR_GP_CMD_SET_COUNT_METHOD,			(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_INTERRUPT_ENABLE,		(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_OUTPUT_PAD_DISABLE,	(void *)TRUE			},
		{ ADI_TMR_GP_CMD_SET_PERIOD,				(void *)0x02000000		},
		{ ADI_TMR_GP_CMD_SET_WIDTH, 				(void *)0x00400000 		},
		{ ADI_TMR_GP_CMD_END,						NULL					}, 
	};
	
	//Open Timer 0 for access
	adi_tmr_Open(ADI_TMR_GP_TIMER_0);
	
	//Program timer 0 with Timer 0 table
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_0, ADI_TMR_GP_CMD_TABLE, Timer0ConfigurationTable);
	
	//Open Timer 1 for access
	adi_tmr_Open(ADI_TMR_GP_TIMER_1);
	
	//Program timer 1 with Timer 1 table
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_1, ADI_TMR_GP_CMD_TABLE, Timer1ConfigurationTable);
	
	//Open Timer 2 for access
	adi_tmr_Open(ADI_TMR_GP_TIMER_2);
	
	//Program timer 2 with Timer 2 table
	adi_tmr_GPControl(ADI_TMR_GP_TIMER_2, ADI_TMR_GP_CMD_TABLE, Timer2ConfigurationTable);

	// enable timers 0, 1, 2		
	adi_tmr_GPGroupEnable(ADI_TMR_GP_TIMER_0 | ADI_TMR_GP_TIMER_1 | ADI_TMR_GP_TIMER_2,TRUE);	
		
}
 
	
/*********************************************************************
*
*	Function:	main
*
*********************************************************************/

void main(void) {
	
	u32 ResponseCount;
	void *pExitCriticalArg;
	u32 i; //loop variable
	
	// initialize the EZ-Kit
	ezInit(1);

	// initialize interrupt manager
	ezErrorCheck(adi_int_Init(IntMgrData, sizeof(IntMgrData), &ResponseCount, NULL));
	
	// initialize the Timer manager
	ezErrorCheck(adi_tmr_Init(NULL));
	
	// initialize the flag manager because the LEDs and buttons connect via flags
	// Since callbacks are not being used memory does not to be given to the service
	ezErrorCheck(adi_flag_Init(NULL, 0, &ResponseCount, NULL));
	
	// initialize LEDS being used
    for (i = EZ_FIRST_LED; i < EZ_NUM_LEDS; i++){
        ezInitLED(i);
    }
	
	// By default,the three GP timers share IVG11
	// hook the primary handler, timer 0
	ezErrorCheck(adi_int_CECHook(11, Timer0_ISR, &Timer0_ISR, FALSE));

	// the nesting flag is ignored after the first call to adi_int_CECHook
	ezErrorCheck(adi_int_CECHook(11, Timer1_ISR, &Timer1_ISR, TRUE));
	ezErrorCheck(adi_int_CECHook(11, Timer2_ISR, &Timer2_ISR, TRUE));
	ezErrorCheck(adi_int_SICEnable(ADI_INT_TIMER0));
	ezErrorCheck(adi_int_SICEnable(ADI_INT_TIMER1));
	ezErrorCheck(adi_int_SICEnable(ADI_INT_TIMER2));		
	
	InitTimers();
	
	while (1) {
		
	}
	
	
// return
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久天天综合网| 国产资源精品在线观看| 中文字幕在线观看一区| 一区二区视频免费在线观看| 日韩av在线发布| 国产精品一级片| 欧美日韩午夜精品| 国产婷婷一区二区| 五月天视频一区| 91麻豆免费观看| 日韩无一区二区| |精品福利一区二区三区| 色综合色狠狠综合色| 亚洲成人7777| 91福利视频久久久久| 日本一二三不卡| 精品夜夜嗨av一区二区三区| 欧美日韩一区二区三区四区 | 精品国产乱码久久久久久久| 亚洲在线免费播放| 成人高清视频免费观看| 日韩精品一区二区三区视频在线观看| 亚洲h动漫在线| 精品久久99ma| 成人av午夜影院| 蜜桃精品在线观看| 欧美美女直播网站| 26uuu久久天堂性欧美| 麻豆一区二区在线| 亚洲青青青在线视频| 国产一区二区不卡在线| 精品久久久久一区| 色婷婷久久久综合中文字幕| 奇米色一区二区三区四区| 欧美喷潮久久久xxxxx| 国产91在线观看丝袜| 亚洲欧洲韩国日本视频| 欧美区视频在线观看| av一区二区不卡| 亚洲精品国产无天堂网2021| 欧洲亚洲国产日韩| 亚洲图片欧美一区| 欧美日韩国产首页在线观看| 国产宾馆实践打屁股91| 麻豆久久久久久久| 一区二区在线观看不卡| 国产欧美一区二区在线| 99国产精品久久久久久久久久 | 不卡一区二区在线| 久久国内精品自在自线400部| 欧美一级二级三级乱码| 99国产精品国产精品久久| 国产综合色产在线精品| 欧美aaaaa成人免费观看视频| 日韩一区在线免费观看| 国产日韩欧美a| 日韩久久精品一区| 在线播放欧美女士性生活| 日本韩国精品一区二区在线观看| 国产成人精品aa毛片| 亚洲精品国产视频| 国产精品免费观看视频| 色狠狠av一区二区三区| 岛国一区二区三区| 亚州成人在线电影| 亚洲影院理伦片| 亚洲精品国产a久久久久久| 中文av一区二区| 国产日韩av一区| 国产日产欧产精品推荐色| 欧美精品一区二区三区在线播放| 日韩一级完整毛片| 日韩一区二区视频在线观看| 欧美一区二区久久久| 不卡一区中文字幕| 成人18精品视频| 99热精品一区二区| 99国产精品久久久久久久久久久| aaa国产一区| 91免费版pro下载短视频| 成人app软件下载大全免费| 97精品久久久久中文字幕| 色狠狠桃花综合| 欧美日韩精品一区视频| 日韩一区二区三区在线观看| 日韩精品中文字幕一区| 久久精品男人天堂av| 国产精品你懂的| 亚洲一区免费视频| 日韩中文字幕不卡| 亚洲乱码国产乱码精品精可以看 | 欧美一区二区成人| 26uuu色噜噜精品一区二区| 国产三级精品视频| 亚洲男人的天堂av| 日韩中文字幕不卡| 国产伦精品一区二区三区免费迷 | 蜜桃久久久久久| 国产精品一二三| 日本精品免费观看高清观看| 欧美挠脚心视频网站| 精品国产伦一区二区三区免费 | 精品免费视频.| 国产午夜精品在线观看| 最新国产成人在线观看| 26uuu久久天堂性欧美| 亚洲视频免费在线观看| 日韩专区欧美专区| 成人在线综合网站| 欧美日韩国产123区| 国产欧美日韩综合精品一区二区| 成人欧美一区二区三区视频网页| 午夜精品久久久久久久久久 | 成人在线综合网| 欧美日韩精品三区| 欧美国产精品中文字幕| 日韩精品久久理论片| gogo大胆日本视频一区| 91精品免费在线| 在线播放亚洲一区| 国产精品婷婷午夜在线观看| 日韩高清不卡一区二区三区| 夫妻av一区二区| 51午夜精品国产| 亚洲欧洲另类国产综合| 经典三级在线一区| 欧美影视一区二区三区| 欧美精品乱人伦久久久久久| 国产色婷婷亚洲99精品小说| 亚洲第一综合色| 成人一级片在线观看| 欧美xxx久久| 亚洲激情中文1区| 国产精品一区免费在线观看| 欧美性受xxxx黑人xyx性爽| 国产亚洲欧美激情| 老色鬼精品视频在线观看播放| 99视频有精品| 欧美高清在线视频| 国内精品自线一区二区三区视频| 欧美日韩一区二区在线视频| 亚洲欧美另类久久久精品| 国产最新精品精品你懂的| 欧美精品日日鲁夜夜添| 尤物视频一区二区| eeuss鲁片一区二区三区在线看| 26uuu国产在线精品一区二区| 天天综合日日夜夜精品| 在线观看免费视频综合| 成人欧美一区二区三区小说 | 欧美主播一区二区三区| 亚洲欧美一区二区在线观看| 国产高清精品网站| 精品国产91亚洲一区二区三区婷婷 | 又紧又大又爽精品一区二区| 成人h动漫精品| 国产精品全国免费观看高清 | av高清久久久| 国产精品久久久久久久久果冻传媒| 亚洲精品五月天| av在线播放不卡| 亚洲素人一区二区| 99riav一区二区三区| 国产精品传媒入口麻豆| 成人动漫一区二区| 国产精品美女久久久久av爽李琼| 国产激情视频一区二区在线观看| 欧美成人三级电影在线| 久草中文综合在线| 26uuu亚洲| 成人网页在线观看| 中文幕一区二区三区久久蜜桃| www.亚洲免费av| 亚洲婷婷综合久久一本伊一区| 色综合欧美在线视频区| 亚洲一二三四久久| 欧美剧情电影在线观看完整版免费励志电影| 亚洲激情校园春色| 538prom精品视频线放| 久久精品99国产精品日本| 久久免费看少妇高潮| 亚洲一区二区3| 欧美群妇大交群中文字幕| 久久97超碰色| 中文字幕精品一区| 99vv1com这只有精品| 亚洲国产你懂的| 精品国产第一区二区三区观看体验| 国产大陆a不卡| 一区二区久久久| 日韩一区二区三区视频| 国产精品911| 亚洲黄色av一区| 日韩网站在线看片你懂的| 成人永久免费视频| 亚洲一区二区三区四区五区中文| 91精品国产91热久久久做人人| 国产精品一区二区你懂的| 亚洲欧美一区二区三区孕妇| 日韩欧美一区二区三区在线|