#include #define uchar unsigned char #define uint unsigned int sbit BEEP=P3^7; //生日快乐歌的音符频率表,不同频率由不同的延时来决定 uchar code SONG_TONE[]= {212,212,190,212,159,169,212,212,190,212,142,159,212,212,106,126,159,169,190,119,119,126,159,142,159,0}; //生日快乐歌节拍表,节拍决定每个音符的演奏长短 uchar code SONG_LONG[]= {9,3,12,12,12,24,9,3,12,12,12,24, 9,3,12,12,12,12,12,9,3,12,12,12,24,0}; //延时 void DelayMS(uint x) { uchar t; while(x--) for(t=0;t<120;t++); } //播放函数 void PlayMusic() { uint i=0,j,k; while(SONG_LONG[i]!=0||SONG_TONE[i]!=0) { //播放各个音符,SONG_LONG为拍子长度 for(j=0;j BEEP=~BEEP; //SONG_TONE延时表决定了每个音符的频率 for(k=0;k DelayMS(10); i++; } } void main() { BEEP=0; while(1) { PlayMusic(); //播放生日快乐 DelayMS(500); //播放完后暂停一段时间 } }
上一篇:单片机——蜂鸣器(生日快乐歌)
下一篇:51单片机实现生日快乐歌
推荐阅读最新更新时间:2024-11-17 16:12
设计资源 培训 开发板 精华推荐
- AKD4612-A,AK4612 24 位音频编解码器评估板
- REF198 精密微功率、低压差电压基准的典型应用
- 用于仪表的 3 至 18V 模拟放大
- 使用 AD629 差分放大器、AD8603 运算放大器、AD780 基准和 AD7453 12 位 ADC 单电源组件测量 -48V 高端电流
- L7809C输出稳压电路的典型应用
- MC78M08ACDTRKG 8V 电流调节器的典型应用
- AM20EW-2415SZ 单输出、20 瓦 DC-DC 转换器的典型应用
- 机箱USB转接
- LTC2946HMS 12V、50A 电源、充电和能量监视器的典型应用
- LF50CPT-TR 5V 延迟开启低压降稳压器的典型应用
- 养老、问诊、心理咨询,和聊天机器人聊聊未来医疗
- 海思发布基于AVS3标准的8K超高清芯片Hi3796CV300
- 2019年7月电子信息制造业运行情况报告发布
- 美将全面禁售新奇口味电子烟!中国也该如此
- 第8章 自己写库-构建库函数雏形—零死角玩转STM32-F429系列
- 第9章 初识STM32固件库—零死角玩转STM32-F429系列
- 第14章 启动文件详解—零死角玩转STM32-F429系列
- 第15章 RCC—使用HSE/HSI配置时钟—零死角玩转STM32-F429系列
- 第16章 STM32中断应用概览—零死角玩转STM32-F429系列
- 第17章 EXTI—外部中断/事件控制器—零死角玩转STM32-F429系列