3249|3

82

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

有用proteus的吗?有的话麻烦帮我一下…… [复制链接]

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


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


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


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

很是郁闷,期待解答……

C仿真用得是keil uv3

最新回复

谢谢楼上的答复,确认numbuff是0 我已经找到问题的根源了,是我在主程序和中断里都调用了一个显示函数,导致了函数内部数据的丢失所致。 不过通过这次教训也多学到了一点东西,以后写程序我要注意了…… 疑惑终于解除了,谢谢楼上的热心人,把分给你结贴了……   详情 回复 发表于 2008-8-31 16:51
点赞 关注

回复
举报

84

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
这是仿真源文件,包含电路和keil程序……
(从纳米盘的一个链接)
[url=http://www.namipan.com/d/f0039b0c56c88b03fba98a4cce5880eb60370d2dddae0100][/url]

 
 

回复

88

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
你确定你的numbuff是0?
定义一个aa=12; 然后用aa代替numbuff试试
还有一个刚定义的局部变量不一定是0的,但是这不妨碍你使用
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

4
 
谢谢楼上的答复,确认numbuff是0

我已经找到问题的根源了,是我在主程序和中断里都调用了一个显示函数,导致了函数内部数据的丢失所致。

不过通过这次教训也多学到了一点东西,以后写程序我要注意了……

疑惑终于解除了,谢谢楼上的热心人,把分给你结贴了……

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表