1. 我的软件有定时器0中断,和UART0中断两个中断,TIMER 0中断设定最高优先级。 2. UART0中断使用TIME 1,MODE自动装载,波特率N。 3. TIMER0 ISR对TIMER 0进行了,关闭和开启的功能,同时使用了寄存器A,R3~R6,DPTR并进行了保护。程序开始关闭TIMER 0,保护现场,后对P6口进行写,P3口进行写操作,操作后,恢复现场,开启TIMER 0,退出。 4. UART0 ISR,只是读取SBUF,清中断标志位,没有做任何事情,除使用R1外,没有使用任何寄存器。 5. 以上提到的所有寄存器都没有在其他程序使用,主程序没有调用其他函数。 现在的现象是打开KEIL软件仿真功能,打开LOGIC ANALYZE仿真窗口: A. P6口没有任何波形,P3口波形正常,仿真没有任何报错信息。 B. 打开TIMER 0或TIMER 1两个状态窗口,P6口出现波形,P3口也有波形,但仿真会出现*** Missing Clock Detector Reset invoked. ***。仿真程序复位。关闭TIMER 0/TIMER 1的窗口后,错误消失。打开UART 0的窗口没有报错信息。 实际程序在执行过程中,没有发现错误。 以上是个人在仿真调试过程中发现的一些现象,不知道各位是否遇到过类似问题,为什么会出现,请明白人说一说。
|