C51单片机流水灯蜂鸣器程序

程序编译正确可是流水灯只能亮到第二个就停止了另外再帮我看看我定义的voidsp()能实现调节蜂鸣器发声频率的功能吗?#include<reg51.h>#include<i... 程序编译正确 可是流水灯只能亮到第二个就停止了 另外再帮我看看我定义的void sp()能实现调节蜂鸣器发声频率的功能吗?

#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define unit unsigned int
sbit speak=P1^5;
void Delay_ms(unit t)
{
uchar i;
for(t;t>0;t--)
for(i=0;i<120;i++);
}
void sp()
{
uchar p;
for(p=0;p<2000;p++)
{speak=1;
speak=0;}
}
void main(void)
{
P2=0xfe;
Delay_ms(500);
while(1)
{
uchar j,k;
for(j=0;j<7;j++)
{
P2=_crol_(P2,1);
sp();
Delay_ms(500);
}
for(k=0;k<7;k++)
{
P2=_cror_(P2,1);
sp();
Delay_ms(500);
}
}
}
展开
 我来答
宿兴电子 2024-11-28
展开全部

联系我们一、有无震荡源 无源这里的“源”不是指电源,而是指震荡源。也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫。而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。 二、价格不同 有源蜂鸣器往比无源蜂鸣器贵,就是因为里面多个震荡电路。 三、高度不同 从图a、b外观上看,两种蜂鸣器好像一样,但仔细看,两者的高度略有区别,有源蜂鸣器a,高度为9m,而无源蜂鸣器b的高度为8m。关于我们如将两种蜂鸣器的引脚郡朝上放置时,可以看出有绿色电路板的一种是无源蜂鸣器,没有电路板而用黑胶封闭的一种是有源蜂鸣器。 四、万用表测电阻区别 用万用表电阻档Rxl档测试:用黑表笔接蜂鸣器 "+"引脚,红表笔在另一引脚上来回碰触,如果触发出咔、咔声的且电阻只有8Ω(或16Ω)的是无源蜂鸣器;如果能发出持续声音的,且电阻在几百欧以上的,是有源蜂鸣器。 同时有源蜂鸣器直接上额定电源(新的蜂鸣器在标签上都有注明)就可连续发声;而无源蜂鸣器则和电磁扬声器一样,需要接在音频输出电路中才能发声。产品展示五、优点不同 (1)无源蜂鸣器的优点是: 1、便宜; 2、声音频率可控,可以做出“多来米发索拉西”的效果; 3、在一些特例中,可以和LED复用一个控制口。 (2)有源蜂鸣器的优点是:程序控制方便。

可以看下深圳市宿兴电子有限公司
本公司专业研发、生产压电陶瓷蜂鸣片、压电插针蜂鸣器、压电引线蜂鸣器。可根据客户需求研发定制各种压电蜂鸣器。是国内较早生产蜂鸣片,蜂鸣器厂家之一,厂内设有五金部、注塑部,焊锡部、组装生产车间,具备从开发设计及大批量规模生产的一系列专业生产及检测设备。如:电声测试仪、信号发生器、分贝仪等。公司可根据客户需要研发、生产。为客户提供压电、电声专业技术解决方案。产品具有重量轻,体积小,低功耗,高可靠等优点,产品广泛应用于报警器、微波炉、计算机/器、数码相机、医疗仪器、传真机、电话机、音响、电子发音玩具及电子钟表等. 月产量500-1000万。
公司本着“团结,协作、创新,高效”经营理念,全员参与,持续改善,为客户提供优质的电声系列产品!公司以品质第一、交期第一的服务原则为客户提供优质的服务。

Arthurzss
2013-11-08 · TA获得超过1661个赞
知道小有建树答主
回答量:496
采纳率:100%
帮助的人:240万
展开全部
P2是端口啊,所以P2=_crol_(P2,1);这句中等号左边的P2表袭前示的读取P2端闹禅拍口,这时的值取决于外围电路,而不是原来的赋值。所以需要一个变量来解决这个问题。

由你的代码看,是直流蜂鸣器,它的声音频率是无法改变的。而你也只是要改变鸣叫和液羡不鸣叫的间隔频率(只是纠正一下名词),但这个程序不行。修改如下:
void sp()
{
speak=1;
Delay_ms(5);
speak=0;

Delay_ms(5);
}
void main(void)
{
uchar j,k,a;
a=0xfe;
P2=0xfe;
Delay_ms(500);
while(1)
{
for(j=0;j<7;j++)
{
a=_crol_(a,1);
P2=a;
sp();
Delay_ms(500);
}
for(k=0;k<7;k++)
{
a=_cror_(a,1);
P2=a;
sp();
Delay_ms(500);
}
}
}
宿兴电子
2024-11-28 广告
产品展示1.压电式蜂鸣器 压电式蜂鸣器主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。有的压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路构成。当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1... 点击进入详情页
本回答由宿兴电子提供
long05931
2013-11-08 · 超过42用户采纳过TA的回答
知道小有建树答主
回答量:180
采纳率:0%
帮助的人:85.4万
展开全部
void sp()
{
uchar p;
for(p=0;p<2000;p++)
{speak=1;
speak=0;}
}
不能桐没世调节发声频率, 不知道是有源还是无源蜂鸣器,察埋我估计这声音不会好听局肢,而且响不响还两说
关于跑马灯只亮到两盏 好像不是程序问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
嘉铭爱
2013-11-08 · 超过34用户采纳过TA的回答
知道答主
回答量:94
采纳率:0%
帮助的人:69.8万
展开全部
void sp()
{
uchar p;
for(p=0;p<2000;p++)
{speak=1;
speak=0;}
}
p 超出了乎并判范围了 不能大于蔽哪255
这个函数不能实现调节蜂鸣岁改器的 频率
追问
怎样实现呢
追答
想实现的话  最好是用定时器  能够准确设置频率  网上应该有类似的例程
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lyt18782
2013-11-08 · TA获得超过386个赞
知道小有建树答主
回答量:673
采纳率:0%
帮助的人:241万
展开全部
P2=_cror_(P2,1);
这个只是把1送到P2去吧,并慎宴没有循环。。
for(p=0;p<2000;p++)
{speak=1;
speak=0;}
主要还是看你是启铅什么蜂鸣器是有悄孝好源的还是无源的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式