我简单的把timer0 pwm 代码和 cmos 代码结合在一起,不成功:PPI中断没有运行:
void Init_Interrupts(void)
{
*pSIC_IAR0 = 0xffffffff;
//*pSIC_IAR1 = 0xffffffff; //这句代码一打开,PPI中断就不运行了,不能显示640*480那句提示了
*pSIC_IAR2 = 0xfffffff4;
register_handler(ik_ivg11, TIMER0_ISR);
*pSIC_IMASK = 0x00010000;
*pSIC_IAR0 = *pSIC_IAR0 & 0xffffffff | 0x00000000;
*pSIC_IAR1 = *pSIC_IAR1 & 0xffffffff | 0x00000001;
*pSIC_IAR2 = *pSIC_IAR2 & 0xffffffff | 0x00000000;
register_handler(ik_ivg8, DMA0_PPI_ISR);
*pSIC_IMASK= *pSIC_IMASK & 0xffffffff | 0x00000100; //原来这里直接是 =0x100;
}
EX_INTERRUPT_HANDLER(TIMER0_ISR)
{
*pTIMER_STATUS = 0x0001;
//printf("timer0 interrupt !\n");
}
EX_INTERRUPT_HANDLER(DMA0_PPI_ISR)
{
*pDMA0_IRQ_STATUS = 0x1;
*pPPI_CONTROL &= 0xfffe;
printf( "\nSuccess Capture One Frame: 640 * 480\n");
printf( " YUYV422(YUV422) Format\n" );
printf( " The data address is 0 \n" );
}
「该帖子被 bh99 在 2012-12-15 20:55:28 编辑过」