求助,关于液晶显示数字钟


我编写了一个时钟程序,功能比较简单,显示总是为48,不知为何。。。
细细调试,查看到在程序中的函数Conv处发生很奇怪的现象,不知为和原因,想请人解释一下……
大家看到这幅图,刚进入函数,numhigh为30H,numlow为08H(按理说,他们是局部变量,刚进入为零才对啊,)暂且不管,看第二幅图

numbuff的值为0,但计算后numhigh,numlow的值却为30H和08H……

看第三幅图,经过一个加法运算后,numhigh的值未变,但numlow的值加了30H(numlow的计算是正确的)

还有,下面送显示时,numhigh是30H,按理应当显示0,但显示却是4;numlow显示8,与这地方的数值对应是正确的……(我的液晶显示模块已经调过,正确显示是没有问题的)……

很是郁闷,期待解答……

[ 本帖最后由 redbat_228 于 2008-8-31 15:31 编辑 ]

myclock.rar
(2008-08-30 17:55:28, Size: 73.4 KB, Downloads: 7)


我也来说两句 查看全部回复

最新回复

  • redbat_228 (2008-8-30 17:57:43)

    忘写仿真环境了……

    proteus 7.1+keil uv3
  • redbat_228 (2008-8-31 19:11:32)

    没人回帖,不过问题以解决……

    问题是在主程序和中断中调用了同一个函数,导致函数内部数据的丢失……

  • yujl (2008-9-16 17:41:52)

    设置断点还是一个不错的方法啊,
  • sunnydeng (2008-9-18 22:18:36)

    怎么我下不到呢!!!!!!