...程序出错 不执行定时器中断1 同时delay函数也有错 求高手指点...
发布网友
发布时间:2024-10-17 19:16
我来回答
共4个回答
热心网友
时间:2024-10-22 06:39
你的语法上有些地方不对吧,
1.独立按键的判断在程序中如果没有用sbit定义过不能写为 P2^n 的形式,在程序体内这种写法表示的是异或
2.中断程序里,进入中断程序以后如果不是特殊需要,先关断自身的中断控制位,退出中断的时候再打开
3.在单片机里写程序的时候能省资源就省,52单片机是8位的,如果变量范围不超过255就不要用int变量,而且如果不涉及到负数就用unsigned定义
4.在中断程序中如果不是必要,不要定义变量,使用全局变量完成和其他功能函数的耦合情况,如果必须要定义的话,在中断声明中规定相应的寄存器组完成现场保护,避免定义的临时变量改写了中断前功能函数中使用的寄存器情况
5.你使用了4个中断源,要合理安排好中断优先级关系
你的独立按键判断能正常判断到吗?如果没有电路板的话就用KEIL的软模拟跑一下试试。
两个定时器可以同时运行的,最好根据你的程序需要设置一下中断优先级。
热心网友
时间:2024-10-22 06:41
进不了呀!
热心网友
时间:2024-10-22 06:41
TMOD=0x01;
65536-50)%6;
改为
TMOD=0x11;
65536-50)%256;
只有程序没有电路原理很难找错误
热心网友
时间:2024-10-22 06:40
可以同时运行两个定时器