就你贴出的代码,是无法看到问题的,应该在那个keyscan()中。顺便说一下,看样子你的flag是个全局变量,其实大可不必这么写程序哦,利用返回值就好。 |
将你的程序原理、实现的方案写清楚,并用框图展示出来,问题就解决了。 |
粗略看 keyscan() 感觉有问题,确认没按键时,它返回必为 0 吗? 如果不是它,在不按键时, main 的 while 循环改成 while(1) { GetKeyVal(); if(flag!=0) LCD_Show(...) } 然后观察 会不会 LCD 打印东西,如果有打印,那就查是否有内存溢出、数组下标越界、中断意外改写等等可能性了。如果没打印,就逐渐加回代码观察找 |