| 
			 
					阅读:2116回复:3
				 
				usb的中断处理函数太短了
					我用Keil uVersion2打开的别人的ez_usb示例程序, 芯片用的是cy7c68013,我想写usb设备程序的朋友都应该看到过这代码,有个问题我老想不通,为什么明明是中断要处理的事情,都要到main主函数的死循环中处理呢 
							void ISR_Sudav(void) interrupt 0 { GotSUD = TRUE; //主函数循环检查这个标志 //问题是为什么不在这里面处理逻辑呢 EZUSB_IRQ_CLEAR(); USBIRQ = bmSUDAV; }  | 
	|
					
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2010-03-26 11:41				
			
					我也遇到这个疑问,没人回答啊				 
							 | 
	|
| 
			 板凳# 
								发布于:2010-03-17 10:30				
			
					是这个道理,但是我怕轮到主程序处理时,数据寄存器的内容已经被其他中断源改写了				 
							 | 
	|
					
						
  | 
	
| 
			 地板# 
								发布于:2010-03-17 09:54				
			
					中断的系统优先级高,它能优先占用CPU资源,如果中断处理做的事情过多,势必会影响普通操作的性能,所以要尽快完成,一般只做一些关键性的寄存器调置和设定标志位。主要或耗时的操作最好还是在普通模式下做。				 
							 | 
	|