遇到一个诡异的问题!!求大神(51单片机驱动12864LCD)

2020-01-27 11:24发布

本帖最后由 minchaobo 于 2013-8-27 20:47 编辑

利用51单片机驱动12864LCD。附件为程序代码,利用KEIL V3,C语言编译。
程序中有三个C文件:一个是main.c,主要是主函数;第二个是uart.c,串口的函数;第三个是LCD.c,是LCD驱动的一些函数。
问题是这样:
若去掉LCD.c,只编译main.c和uart.c,串口调试是OK的;
若编译三个C文件,LCD可以驱动的很好,但串口调不通,进不了串口中断,即使不调用任何LCD.c中的函数,串口也不通,进不了串口中断;
但如果去掉LCD.c中的随机数发生函数 randmaker(),以及write_dat和write_cmd之一,串口就可以通。

问题如上所述,附件中为代码源程序。
鄙人水平太低,实在整不明白错在哪,请高手指点!!!!!!

若你们手头有单片机板子可以跑一下附件中的程序,看看串口是否有如我所述的问题。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
wangyy@dianzi
1楼-- · 2020-01-27 14:03
传上来源程序,不要改动,不知道你主程序里想写什么,乱七八糟
lxa0
2楼-- · 2020-01-27 16:19
按汇编语言的思路:
1.初始化代码
2.主程序
3.显示子程序
4.串口通讯子程序
minchaobo
3楼-- · 2020-01-27 19:34
wangyy@dianzi 发表于 2013-8-27 17:47
传上来源程序,不要改动,不知道你主程序里想写什么,乱七八糟

注释掉的那部分是LCD驱动的程序,不用管,只管没注释的就行。觉得乱七八糟是不是没看懂?

一周热门 更多>