完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
刚买了STC90C516单片机,做一个简单的流水灯,八个灯从上到下依次点亮熄灭,亮时蜂鸣器响,灭时蜂鸣器不响。程序是这样的:
#include #include #define uint unsigned int #define uchar unsigned char uchar temp; ***it beep=P1^5; void delay(uint); void main() { temp=0xFE; P1=temp; while(1) { beep=0; temp=_crol_(temp,1); beep=1; delay(420); P1=temp; } } void delay(uint z) { uint x,y; for(x=100;x>0;x--) for(y=z;y>0;y--); } 但是运行结果却是灯6一直亮,而且灯8不亮。请教各位大侠,这是为什么。程序有什么问题吗? |
|
相关推荐
14个回答
|
|
|
while 循环了 所以灯一直亮
|
|
|
|
|
|
虽然 你 while循环的逻辑有点复杂, 但是貌似 没有错误, 结果不正确的话,你可以考虑是不是延时不够....建议加大delay中 for的计数次数试试......
|
|
|
|
|
|
我已经在我的实验版上试过了,你程序没有错误,在我实验板上是成功的,也许你的实验板的电路图不一样吧,或者是其他的问题,我也学单片机一个月!
|
|
|
|
|
|
不循环8个灯怎么亮熄灭亮熄灭个不停呢,问题是我的电路图上蜂鸣器是和P1.5连接的,而8个灯也是由P1口控制的,所以有些冲突。换成其他的口,灯都不亮了。 我是单片机新手,才学没多长时间,所以有些简单的问题不懂。谢谢你们的帮忙。 |
|
|
|
|
|
我也要去买个开发板,以后试一下罗
|
|
|
|
|
|
兄弟,先把你单片机的电路图附上,我再看一下
|
|
|
|
|
|
好的。
|
|
|
|
|
|
|
|
|
beep=0;//(1)
temp=_crol_(temp,1);///循环移动命令(这里是左移) beep=1;//(2) 1,2段感觉有点问题,去除后就可以完美流水了,至于你板子上灯8不亮,我感觉很大可能是锁紧板与mcu接触不良的问题,以前我出现的,还有喇叭响不响是输入的电平不断变化引起的,变化快,即输入频率高,也就响得很 |
|
|
|
|
|
|
|
|
|
|
|
各位朋友,谢谢大家的帮忙,在大家的提醒和帮助之下,问题已得到解决。非常感谢。
|
|
|
|
|
|
谱中科技的蜂鸣器好像直接连接在P1.5口的,换个IO口驱动流水等试试
|
|
|
|
|
|
非常好的资源,小弟学习了
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
265 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
789 浏览 0 评论
1306 浏览 2 评论
787 浏览 0 评论
【RA4M2-SENSOR开发板评测】Analogue+Timers综合测试
1587 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16901 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 08:20 , Processed in 1.101491 second(s), Total 103, Slave 83 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
797