打印

.........

[复制链接]
2117|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Sundy_|  楼主 | 2007-9-21 20:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 Sundy_ 于 2013-6-21 17:30 编辑

.....
沙发
wangkj| | 2007-9-21 22:07 | 只看该作者

是不是应该用volitate类型?

用反汇编看看,可能某变量被优化掉了。

使用特权

评论回复
板凳
z_no1| | 2007-9-21 22:24 | 只看该作者

几个问题

1:unsigned char timecout; if(timecout==400)
//8位无符号数是0~255,到不了400,
2:P0口是双向口,一般不用它做IO,人家是做总线的身板。
3:“定时400次后关闭定时器”你这样只能听到非常短的一声。不知道你后面接的是喇叭还是蜂鸣器。这两个控制不一样。
4:“用汇编试可以”把代码贴出来吧。还有电路图。我怀疑你汇编和这不一样。

使用特权

评论回复
地板
wangkj| | 2007-9-22 00:07 | 只看该作者

其实这种问题要调试器跟踪一遍,很容易找出问题

单片机的仿真器很便宜,不会连这个都没有吧?

使用特权

评论回复
5
gamethink| | 2007-9-23 14:19 | 只看该作者

ok

P0做IO没什么特别,加个上拉电阻就可以

使用特权

评论回复
6
古道热肠| | 2007-9-23 14:42 | 只看该作者

估计是时间大短

  区区400次中断,片刻完成,建议不退出机制,让其狂叫不止,搞响之后再找毛病。
  要注意发声的频率在可听范围,最好是1K,小嗽叭才好听。

使用特权

评论回复
7
yjgyiy| | 2007-9-23 23:37 | 只看该作者

RE

原因就在
unsigned char值的范围为0~255

使用特权

评论回复
8
ayb_ice| | 2007-9-24 07:46 | 只看该作者

unsigned char值的范围为0~255...

使用特权

评论回复
9
yezhenyu| | 2007-9-24 08:32 | 只看该作者

4楼;“单片机的仿真器很便宜”

不会吧,怎么俺知道的怎么都至少1K多RMB啊,呵呵。

使用特权

评论回复
10
wangkj| | 2007-9-24 09:04 | 只看该作者

1k 还贵呀!trace32,bdi2000这些32系统的仿真器

都是10多万!
1k自己都能买得起。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

10

帖子

0

粉丝