|
newlined 发表于 2025-3-19 13:11 感谢大神,确实是这样,问题解决了,不小心在字库文件里定义了一个Ea 把字库里面的Ea改了名就可以了。 |
coody_sz 发表于 2025-3-19 10:32 谢谢大神了,问题找到了,因为这个屏是无字库的,在字库文件里定义了要显示的字母E,起的名字是Ea,所以一直出错,改成E1都正常了。 |
|
晕,才看到是C。试试 IE |=0x80H. |
| 错了,是应该是 ORL IE,#080H |
| EA 是IE的第7位,IE的地址是A8H,试下 ORL IE,080H |
| 估计是EA的值定义出问题了,看看是不是EA定义了多次,而且定义的值不一样。 |
| 猜测是LCD19264里面定义了Ea,这个跟EA冲突了。 |
denghe 发表于 2025-3-18 22:07 设置高试过了,无论设置高低都是一样的提示 |
eb900001 发表于 2025-3-19 09:43 我这个只是使用定时器中断,已经启用了ET0=1; |
|
在 STC32G12K128 中,每个中断源都有对应的使能位,需要将这些使能位置 1 才能开启相应的中断。同时,总中断使能位 EA 也需要置 1。 void main() { // 开启外部中断0 IT0 = 0; // 设置外部中断0为低电平触发 EX0 = 1; // 使能外部中断0 EA = 1; // 使能总中断 while(1) { // 主循环代码 } } // 外部中断0服务函数 void INT0_ISR() interrupt 0 { // 中断处理代码 } EX0是外部中断 0 的使能位,EA是总中断使能位。要确保这些位被正确置 1。 |
| SFR特殊寄存器在多个头文件中定义了或者是在程序中重复定义了.检查头式文件和主程序中有没有重复定义SFR特殊寄存器(或者特殊寄存器中的某个位) |
| 在LCD19264XS.C中没有引用STC32G的头文件导致的,引用 一下头文件,再试一下。 |
| EA应该置高 |
| EA没开 |