143-Yee 2022-06-12 22:55 采纳率: 100%
浏览 26
已结题

音乐门铃按键不起作用是为什么

按键的开始与暂停功能不起作用,这是为什么?自己修改的音乐门铃程序,可以帮忙看看是什么原因吗?我把音乐播放那部分music_play放下来了,按键的开始功能有用了,但暂停又不起用,这又是为什么?
#include "reg52.h"
sbit pause=P3^3;
sbit speaker=P1^5;
unsigned int n=0,k;
void music_play();
unsigned char music_tab[]={96,85,76,96,85,76,96,76,72,64,76,72,64,64,57,64,72,76,96,64,
57,64,72,76,96,96,64,96,96,64,96,0};
unsigned char jiepai_tab[]={40,40,40,40,40,40,40,40,40,40,80,40,40,80,30,10,30,10,40,40,
30,10,30,10,40,40,40,40,80,40,40,80};
void int0() interrupt 1
{
TH0=0XD8;
TL0=0XEF;
n--;
}
void delay( int m)
{
while(m--);
}
void main()
{ pause=1;
while(1)
{
music_play();
if(!pause)
{
delay(5);
if(!pause)
{
k=k;
speaker=1;
while(!pause)
{
if(k==0){}
}
}
}
}
}
void music_play()
{
unsigned char p,m,i=0,j=0;
TMOD=0X01;
TH0=0XD8;
TL0=0XEF;
IE=0X82;
play:
while(1)
{
p=music_tab[i];
if(p==0)
{i=0;j=0;delay(1000);goto play;}
else
{
m=music_tab[i++];
n=jiepai_tab[j++];
}
TR0=1;
while(n!=0)
{
speaker=
speaker;delay(m);
}TR0=0; }
}

  • 写回答

1条回答 默认 最新

  • Tristan Tsai 2022-06-13 06:36
    关注

    这个pause=1的情形没有执行任何东西?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月22日
  • 已采纳回答 12月22日
  • 创建了问题 6月12日

悬赏问题

  • ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题
  • ¥15 谁会P4语言啊,我想请教一下
  • ¥20 win11无法启动 持续蓝屏且系统还原失败,无法开启系统保护
  • ¥15 哪个tomcat中startup一直一闪而过 找不出问题
  • ¥15 这个怎么改成直流激励源给加热电阻提供5a电流呀
  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳
  • ¥15 springboot 3.0 实现Security 6.x版本集成
  • ¥15 PHP-8.1 镜像无法用dockerfile里的CMD命令启动 只能进入容器启动,如何解决?(操作系统-ubuntu)
  • ¥30 请帮我解决一下下面六个代码