初始化过程如下
initpsc();
SystemConfig();
InitPLL();
emifconfig();
CEint();
TIMER0_TRC=0x0;
initTIMER0();
TIMER0_EMUMGT=0x1;
CSR=CSR|0x1; //开总中断
uartTtp = C6747_UART_open(TtpId, TTP_Baud);
//uartInter=intiUartInter(0,9600);
//intiUart0Interrupt();
//CSR=CSR|0x1; // 开中断
GPIO_DIR23&=0xffffbfff;//con1 out
GPIO_DIR45&=0xfBDffffd;//con0 con2 out
GPIO_OUT_DATA23=0xffffffff;
之后是一些变量初始化。最后是一个for(;;){} 循环 循环中做一些计算。 定时器经常出错,不能正常工作,有时候 要先单步执行几步,才能正常运行
Tony Tang:
毕竟上面给出的只是小部分代码,很难断定是什么问题。
上面的代码部分TIMER0_EMUMGT=0x1; 我觉得带着仿真器调试的情况下,还是不配置(即为0)的情况比较好吧。
yang gao8:
回复 Tony Tang:
定义的一个全局数组,在程序中和定时器计数进行比较的。但是里面内容自己变了。