4711|36

142

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

求大家看看这个程序对不对,下载上没反应 [复制链接]

 

此帖出自PCB设计论坛

最新回复

谢谢 先入为主了,没有注意看是51  详情 回复 发表于 2017-12-23 08:02
点赞 关注
 

回复
举报

142

帖子

0

TA的资源

一粒金砂(中级)

沙发
 

此帖出自PCB设计论坛
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
用的AT89S52单片机
此帖出自PCB设计论坛
 
 
 

回复

200

帖子

1

TA的资源

一粒金砂(中级)

4
 
你试试直接调用delay_us代替delay_ms,看看行不行?是不是编译的时候被优化掉了
此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

5
 
leo121 发表于 2017-12-18 17:55
你试试直接调用delay_us代替delay_ms,看看行不行?是不是编译的时候被优化掉了

改过了,不行,延时程序应该没问题吧,之前STM32用过
此帖出自PCB设计论坛
 
 
 

回复

2万

帖子

342

TA的资源

版主

6
 
P2^6和硬件连接的REEP对不?
51的delay直接调用一个延时就行了,还嵌套什么
或者把R23换大一点阻值,电路是没有什么问题
51单片机驱动蜂鸣器的程序网上随便搞个试试,把驱动口选对,,
此帖出自PCB设计论坛
 
 
 

回复

252

帖子

0

TA的资源

一粒金砂(高级)

7
 
首先确认下蜂鸣器是有源还是无源。
此帖出自PCB设计论坛
 
 
 

回复

1634

帖子

0

TA的资源

裸片初长成(高级)

8
 
软件程序和硬件电路都有不合理的地方。


软件延时时间太长,把500改成5试试看。你不能和STM32的延时相比,STM32的时钟是72M,AT89S52的时钟只相当以1M.

电路中三极管选择错误,改用8550-PNP三极管,发射极和集电极颠倒一下,并将R23短路,将R24开路。

此帖出自PCB设计论坛

点评

为什么不能使用8050?  详情 回复 发表于 2017-12-22 08:20
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

9
 
本帖最后由 dinghao1 于 2017-12-19 09:38 编辑
qwqwqw2088 发表于 2017-12-18 20:25
P2^6和硬件连接的REEP对不?
51的delay直接调用一个延时就行了,还嵌套什么
或者把R23换大一点阻值,电路 ...
此帖出自PCB设计论坛

点评

看看这个多层for循环的延时,实际延时大概是多少。有示波器最好。没有就用万用表。把延时调到万用表可以看到变化。几百ms,或者更长。测到io口电平变化。看三极管基极电压如何变化。  详情 回复 发表于 2017-12-19 14:18
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

10
 
qwqwqw2088 发表于 2017-12-18 20:25
P2^6和硬件连接的REEP对不?
51的delay直接调用一个延时就行了,还嵌套什么
或者把R23换大一点阻值,电路 ...

关键是我把R23去掉之后,直接用万用表测单片机引脚一直是5v,没有变化
此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

11
 
jj1989 发表于 2017-12-18 20:44
首先确认下蜂鸣器是有源还是无源。

有源
此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

12
 
xu__changhua 发表于 2017-12-18 21:35
软件程序和硬件电路都有不合理的地方。


软件延时时间太长,把500改成5试试看。你不能和STM32的延时相 ...

改了程序了,我把R23去掉之后,直接用万用表测单片机引脚一直是5v,没有变化,这不是因为51负载不够吧
此帖出自PCB设计论坛
 
 
 

回复

875

帖子

1

TA的资源

纯净的硅(高级)

13
 
主函数不对吧,最终会一直停在WHILE()里面不会走,可能你前面的延时太短,你根本听不到声音就过去了,所以就可能出现你所说的没有现象
此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

14
 
曹伟1993 发表于 2017-12-19 11:13
主函数不对吧,最终会一直停在WHILE()里面不会走,可能你前面的延时太短,你根本听不到声音就过去了,所 ...

延时时间改过,也没反应
此帖出自PCB设计论坛

点评

不是时间的问题吧,你把主函数里面的蜂鸣器部分放到WHILE里面,你再看看行不行,其他的地方倒是没有看到什么问题  详情 回复 发表于 2017-12-19 15:03
 
 
 

回复

3471

帖子

13

TA的资源

五彩晶圆(高级)

15
 

看看这个多层for循环的延时,实际延时大概是多少。有示波器最好。没有就用万用表。把延时调到万用表可以看到变化。几百ms,或者更长。测到io口电平变化。看三极管基极电压如何变化。
此帖出自PCB设计论坛
 
 
 

回复

3243

帖子

0

TA的资源

纯净的硅(高级)

16
 
你把那四条语句放到while循环里试试
此帖出自PCB设计论坛
个人签名为江山踏坏了乌骓马,为社稷拉断了宝雕弓。
 
 
 

回复

875

帖子

1

TA的资源

纯净的硅(高级)

17
 
dinghao1 发表于 2017-12-19 13:45
延时时间改过,也没反应

不是时间的问题吧,你把主函数里面的蜂鸣器部分放到WHILE里面,你再看看行不行,其他的地方倒是没有看到什么问题
此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

18
 
ienglgge 发表于 2017-12-19 14:18
看看这个多层for循环的延时,实际延时大概是多少。有示波器最好。没有就用万用表。把延时调到万用表可以 ...

下载程序之后没反应,电压不变
此帖出自PCB设计论坛

点评

写两个程序,分别输出持续的高低电平。测试是否正常。要正常的话,就调延时函数试试。  详情 回复 发表于 2017-12-19 18:13
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

19
 

此帖出自PCB设计论坛
 
 
 

回复

142

帖子

0

TA的资源

一粒金砂(中级)

20
 
这样是下载上程序了吧
此帖出自PCB设计论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

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

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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

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

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

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