找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4815|回復(fù): 13
打印 上一主題 下一主題
收起左側(cè)

我這個單片機程序為什么蜂鳴器不響?求幫助

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:711481 發(fā)表于 2020-7-8 21:20 來自手機 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
啟動時,沒有效果,按下1按鍵,數(shù)碼管顯示,按下二號鍵,蜂鳴器響一秒(此時數(shù)碼管依舊亮) 按下復(fù)位鍵回到初始狀態(tài),我這個程序為什么蜂鳴器不響?

#include<reg51.h>
#define uchar unsigned char
uchar smg[]={0xc0,0xf9,0xa4,0xb0}; //數(shù)碼管
sbit a1=P2^0;
sbit a2=P2^1;
sbit a3=P2^2;
sbit a4=P2^3; //位選碼
sbit feng=P2^5;
sbit jian0=P3^2; //按鍵
sbit jian1=P3^3;
void delay1() //定時1秒
{
uchar k;
for(k=20;k>0;k--)
{
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
while(TF1==0);
TF1=0;
}
}
void delay()
{
int i;
for(i=600;i>0;i--);
}
void main()
{
TMOD=0X11;
TH0=(65536-5000)/256;
TL0=(65536-5000)%256; //初始化
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR1=1;
EA=1;
ET0=1; //開中斷
while(1)
{
TH0=(65536-5000)/256;
TL0=(65536-5000)%256;

if(jian1==0) //按鍵,去抖
{
delay();
if(jian1==0)
{
while(!jian1);
TR0=1;
}
}
if(jian0==0)
{
delay();
if(jian0==0)
{
while(!jian0);

feng=0;
delay1();
feng=1;
}
}
}
}
void t0(void) interrupt 1 using 1
{


TH0=(65536-5000)/256;
TL0=(65536-5000)%256;
a1=0;
P0=smg[2];
delay();
a1=1;

a2=0 ;
P0=smg[0];
delay();
a2=1;

a3=0;
P0=smg[0];
delay();
a3=1;

a4=0;
P0=smg[3];
delay();
a4=1;

}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:739545 發(fā)表于 2020-7-8 21:38 | 只看該作者
feng=0;沒用,改成feng=~feng;
回復(fù)

使用道具 舉報

板凳
ID:711481 發(fā)表于 2020-7-9 08:05 來自手機 | 只看該作者
lovezjf234 發(fā)表于 2020-7-8 21:38
feng=0;沒用,改成feng=~feng;

feng=0低電平給pnp放大,他不是應(yīng)該響嗎?
回復(fù)

使用道具 舉報

地板
ID:420836 發(fā)表于 2020-7-9 08:24 | 只看該作者
請告訴我們您使用的是哪種類型的蜂鳴器,它是主動蜂鳴器還是被動蜂鳴器? 不同類型的蜂鳴器由不同的原理驅(qū)動。
回復(fù)

使用道具 舉報

5#
ID:711481 發(fā)表于 2020-7-9 09:25 來自手機 | 只看該作者
TTQ001 發(fā)表于 2020-7-9 08:24
請告訴我們您使用的是哪種類型的蜂鳴器,它是主動蜂鳴器還是被動蜂鳴器? 不同類型的蜂鳴器由不同的原理驅(qū) ...

有緣蜂鳴器,接pnp放大,單片機送出低電平,發(fā)聲
回復(fù)

使用道具 舉報

6#
ID:213173 發(fā)表于 2020-7-9 11:52 | 只看該作者
相同問題重復(fù)發(fā)帖,前面的回復(fù)也不去看。
http://www.torrancerestoration.com/bbs/forum.p ... 2074&highlight=
回復(fù)

使用道具 舉報

7#
ID:207421 發(fā)表于 2020-7-9 13:27 | 只看該作者
1. 不用單片機信號,直接給三極管低電平試試有沒有聲音,如果有聲音,硬件正常的,最好接光耦驅(qū)動好一點
2. 直接在大循環(huán)feng=0; 測試一下,看看能不能驅(qū)動,如果正常,硬件與單片機共地或電路正常
3. 到此可能是你的定時器中的while()可能死循環(huán)了,可以一個普通的延時函數(shù)測試一下,把延時稍微延長一點時間,看看效果
回復(fù)

使用道具 舉報

8#
ID:711481 發(fā)表于 2020-7-9 13:31 來自手機 | 只看該作者
wulin 發(fā)表于 2020-7-9 11:52
相同問題重復(fù)發(fā)帖,前面的回復(fù)也不去看。
http://www.torrancerestoration.com/bbs/forum.php?mod=viewthread&tid=192074 ...

又出來一個問題
回復(fù)

使用道具 舉報

9#
ID:711481 發(fā)表于 2020-7-9 13:32 來自手機 | 只看該作者
wulin 發(fā)表于 2020-7-9 11:52
相同問題重復(fù)發(fā)帖,前面的回復(fù)也不去看。
http://www.torrancerestoration.com/bbs/forum.php?mod=viewthread&tid=192074 ...

以前不穩(wěn),現(xiàn)在不響,唉,不知道哪里問題,
回復(fù)

使用道具 舉報

10#
ID:213173 發(fā)表于 2020-7-9 14:21 | 只看該作者
可愛萌萌噠 發(fā)表于 2020-7-9 13:32
以前不穩(wěn),現(xiàn)在不響,唉,不知道哪里問題,

仿真蜂鳴器不響不代表實物不響,按你的程序應(yīng)該是有源蜂鳴器,如果實物是無源蜂鳴器當(dāng)然不響。
回復(fù)

使用道具 舉報

11#
ID:711481 發(fā)表于 2020-7-9 14:42 來自手機 | 只看該作者
wulin 發(fā)表于 2020-7-9 14:21
仿真蜂鳴器不響不代表實物不響,按你的程序應(yīng)該是有源蜂鳴器,如果實物是無源蜂鳴器當(dāng)然不響。

我用的開發(fā)版,是有緣蜂鳴器,
回復(fù)

使用道具 舉報

12#
ID:711481 發(fā)表于 2020-7-9 14:43 來自手機 | 只看該作者
wulin 發(fā)表于 2020-7-9 14:21
仿真蜂鳴器不響不代表實物不響,按你的程序應(yīng)該是有源蜂鳴器,如果實物是無源蜂鳴器當(dāng)然不響。

這個地方困擾好久了,改動程序,馬上出來一個新問題,
回復(fù)

使用道具 舉報

13#
ID:799680 發(fā)表于 2020-7-9 15:14 | 只看該作者
1.確定單片機工作~檢查復(fù)位電路:復(fù)位按鍵按下測量9(RES)腳是否置高(不按為低)~晶振電路是否連接正確,正確則最小系統(tǒng)正常。 2.若最小系統(tǒng)正常,確定程序是否燒錄進去~樓主的問題很可能是程序沒燒進去~ 3.若程序燒進去,用萬用表測量各電路是否連接正確,確定沒有虛焊漏焊以及短路現(xiàn)象~
回復(fù)

使用道具 舉報

14#
ID:801878 發(fā)表于 2020-7-12 11:29 | 只看該作者
晶振電路是否連接正確
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表