89C51单片机,不工作,LCD上显示和没有单片机显示一样,貌似单片机崩溃了,望大侠救助
AT89C51单片机,今中午上班写好的程式在这单片机里LCD都显示,在车间正常使用,下午多加了一个数组显示字符,编译成功后,烧录进单片机就是不工作,去掉后也不行了,LCD...
AT89C51单片机,今中午上班写好的程式在这单片机里LCD都显示,在车间正常使用,下午多加了一个数组显示字符,编译成功后,烧录进单片机就是不工作,去掉后也不行了,LCD是16*2的1602,上一行显示黑色方框,下一行无显示,和没有插单片机一样的状态,电路板插别人的同类型的单片机都可以显示,正常用,我换了几个单片机,烧录器也换了,源文件拷到其他电脑编译,结果都不行,换了昨天写好的同类LCD显示程式(此程式昨天使用正常)也不正常,谁知道这怪事啊
展开
展开全部
这种问题是最不好找的,所以只能靠你自己细心的找,肯定是哪里疏忽了,不是大问题,开始的程序不是好用吗,就从这里查,看看是不是你加程序和去掉程序不小心改到了别处,单片机ram溢出的可能性比较小,单片机也不可能出问题,如果你的硬件是现成的pcb板的话,也就排除了接触不良的可能,所以建议你先排除硬件有问题的可能,再一步步查找软件的问题,还有我注意到了你说的一点就是你没有换过lcd,也有可能是液晶屏出问题了啊
追问
换别人的程式用了 硬件应该没问题,编译完成大小是data50.1 code2000左右一点,而且换成昨天的程式也不行了,,这程式昨天用过 OK的,今天只是在这程式上改进过,就算新加的指令有问题,我昨天的程序在上面怎么也不行了,昨天的程序我是备份了的,还有就是上午写的另外的程式,上午调试都OK,下午出来这事,我再试就不行,很是怪啊。让同事帮我看说是程式崩溃了,如果是这样,其它程式怎么都崩溃了呢???
追答
照你这么说ram肯定是没有超,rom也没超,那就在保证你的lcd好用的情况下,慢慢查程序了,有一个最简单的办法试是什么原因,就是你写一个最简单的液晶显示程序看看能不能点亮,如果点不亮肯定是你的硬件问题了,如果点亮了你就查软件吧,是不是哪里死循环了或者其他小问题,慢慢查一定没有问题的,祝你好运
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呵呵!可能是你的程序对lcd的初始化没有完善!以至于有时能过初始化一关,当有变化时就过不了lcd初始化的关,从而不显示!
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
“ code2000左右一点”。。。keilC有一个2K问题,就是当你的程序大于2Kflash的时候如果工程设在小flash模式的时候就会乱的,还有就是试用版的keilC是不能选择大于2K字节的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询