原标题:89S51演奏生日快乐的歌曲c程序

程序描述:这个程序利用 的歌曲 */

/* ***************************************************** */

#include

void delay(unsigned char n); //函数delay()存在 文件delay.c

code unsigned song[]={

0x82,0x01,0x81,0x94,0x84,0xB4,0xA4,0x04,0x82,0x01,0x81,

0x94,0x84,0xC4,0xB4,0x04, 0x82,0x01,0x81,0xF4,0xD4,0xB4,

0xA4,0x94,0xE2,0x01,0xE1,0xD4,0xB4,0xC4,0xB4,0x04,

0x82,0x01,0x81,0x94,0x84,0xB4,0xA4,0x04,0x82,0x01,0x81,

0x94,0x84,0xC4,0xB4,0x04, 0x82,0x01,0x81,0xF4,0xD4,0xB4,

0xA4,0x94,0xE2,0x01,0xE1,0xD4,0xB4,0xC4,0xB4,0x04,

0x00};

code int note[]={

0x0000,0xFB03,0xFB8E,0xFC0B,0xFC43,0xFCAB,0xFD08,0xFD32,

0xFD81,0xFDC7,0xFE05,0xFE21,0xFE55,0xFE83,0xFE99,0xFEC0};

unsigned char i=0;

unsigned char hi_note,low_note;

static void timer1_isr(void) TF1_VECTOR using 2

{

TR1=0;

TL1=low_note;

TH1=hi_note;

TR1=1;

P3_7=3_7;

}

static void timer1_initialize(void)

{

EA=0;

TR1=0;

TMOD = 0X10;

ET1=1;

EA=1;

}

void singing()

{

unsigned char beat,temp;

i=0;

do {

temp=song[i]; // 读出乐谱的一个byte

if (temp==0) { // 如果是0就表示音乐结束

TR1=0; // 停止计时计数器1

return; // 返回

}

beat=temp & 0x0f; //取出低阶的4位,这是拍子

temp=(temp >> 4) & 0x0f; //取出高阶4位当成音符的频率

if (temp==0) TR1=0; //如果拍子是0就表示休止符

else {

hi_note=note[temp] >> 8; //根据音符的频率得到Timer1计数值

low_note=note[temp] & 0x00FF;

TR1=1; //启动计时计数器1

}

delay(beat); // 延迟拍子的时间

i++;

} while(1);

}

void main (void) {

timer1_initialize();

do {

singing();

} while (1); // 无穷循环

}

责任编辑:

c语言生日快乐音乐程序,89S51演奏生日快乐的歌曲c程序相关推荐

  1. c语言编程播放生日快乐,89S51演奏生日快乐的歌曲c程序

    程序描述:这个程序利用89S51演奏生日快乐的歌曲 */ /* ***************************************************** */ #include vo ...

  2. 被窦唯夸奖“音乐好”的刺猬乐队成员竟然是程序员

    作者 | 素年清时 责编 | 胡巍巍 出屁  | 程序人生(ID:coder_life) 如果你看过近期大火的<乐队的夏天>,那么在参赛的三十一支乐队中,你一定会被其中一支叫做" ...

  3. 【Groovy】使用 Groovy 语言开发服务器 Server 和客户端 Client 套接字程序 ( 服务器客户端完整代码示例 | 运行服务器端与客户端效果及过程分析 )

    文章目录 一.服务器端完整代码 Server.groovy 二.客户端完整代码 Client.groovy 三.运行服务器端与客户端效果及过程分析 一.服务器端完整代码 Server.groovy 参 ...

  4. c语言如何快速看懂别人的程序,探究如何快速看懂单片机程序方法

    在现实中,我相信有很多刚刚接触单片机的同学,简直是无从下手,打开一个程序,更会被复杂的结构和密密麻麻的代码吓到,产生退缩的想法,这篇文章带你了解一下单片机程序. 我对单片机的总结:"单片机其 ...

  5. 深度搜索问题c语言,C语言实现的图的深度搜索与广度搜索程序.doc

    C语言实现的图的深度搜索与广度搜索程序 C语言实现的图的深度搜索与广度搜索程序 /* 上机试验5-图的建立和遍历 1)建立[无向][非连通]图的邻接表存储结构,要求顶点个数不少于15个. 2)用DFS ...

  6. 《看聊天记录都学不会C语言?太菜了吧》(10)程序媛聪明绝顶了

    好消息2020年4月13日晚7.30我在CSDN开播,等你来聊天 预约连接:https://live.csdn.net/room/A757291228/MJWK0Gem 本系列文章将会以通俗易懂的对话 ...

  7. C语言实现音乐播放器(Linux madplay)

    (一)需求分析 1.扫描指定路径下的音乐,并显示出来 2.实现音乐的播放.暂停.上一首和下一首的功能 3.程序退出释放内存资源 (二)思路 1.扫描出指定路径下的音乐文件(便利指定文件夹,找出音频文件 ...

  8. FX5U程序框架模板(10轴) 程序采用梯形图+ST语言写的 RS485通信

    FX5U程序框架模板(10轴) 程序由老工程师费尽心力的整理,把控制允许整理成简单的模板架构程序. 程序讲解 1 轴的参数初始化 2 自动启动条件 3 安全条件(台湾称许可条件,这个可以避免运动打架, ...

  9. 我的Go+语言初体验——Demo游戏体验篇(直男程序员的真实体验)

    目录 前言 环境说明 项目实测 Weather Dragon Clone Bullet Animation 总结 前言 接着我的上一篇:我的Go+语言初体验--语法验证/性能测试篇(直男程序员的真实体 ...

  10. 用python写生日快乐说说_祝自己生日快乐的说说

    一. 你给我的生日礼物真好演的全你俩的情节 二. 也许这是只有我们两个人的生日晚会,本想约朋友一起的,可又担心礼节上的问题,还是我们两人静静的呆在一起吧,享受这二人世界. 三. 亲爱的自己,永远不要轻 ...

最新文章

  1. C++(二)——命名空间(上)
  2. 乐鑫代理启明云端分享|基于ESP32-S2彩色触摸屏86面板方案
  3. 分布式系统中一致性哈希算法
  4. pdfbox 第一页加内容_你用代码做过哪些很酷/有趣的事?
  5. 停车管理系统汽车到达汽车离去c语言,停车场管理系统 C语言实现
  6. 数组的fill方法_数组fill()方法以及JavaScript中的示例
  7. 14 PP配置-生产主数据-BOM相关-定义项目状态的缺省值
  8. 软件测试的学习之路----计算机基础 (图片展示)
  9. R语言题目及参考答案(3)
  10. linux fstab 权限,linux中fstab文件配置简介
  11. python 浏览器自动化 弹窗控制_selenium 网页自动化 - 在访问一个网页时弹出的浏览器窗口,我该如何处理?...
  12. dbname, instance, sid
  13. java怎样用类模板创建对象_java入门(十四) | 面向对象(OOP)之类和对象
  14. ERROR 1044 (42000)
  15. 数据结构与算法 c语言6,C语言程序设计题库之6.doc
  16. 基于SSM的酒店客房管理系统的设计(包含数据库、完美运行、可远程调试)
  17. UI自动化测试实战--- app订单、web发货(9)
  18. 《IBM SPSS Modeler数据与文本挖掘实战》之社交网络分析
  19. Weiss-(DSAA - in C,1.3)字谜游戏
  20. 【已解决】如何设置、更换LaTeX Beamer的字体?以及调整正文所使用的字体(如从Times New Roman改变为Arial)、定义字体大小等操作

热门文章

  1. 类和对象的基础2——对象的生与死(构造函数和析构函数)
  2. python多张子图画在一张画布上,显示图例和标题,并保存。
  3. latex 多张子图,横栏/双栏
  4. 计算机安全模式win7,win7安全模式下怎么恢复系统
  5. 关联分析python代码
  6. python代码提取图片文字
  7. 帆软报表 异常汇总及方案.
  8. 机器学习之从基础数学深入剖析逻辑回归(案例理论相结合)
  9. 服务器支持win10,服务器版Windows 10太强大了:容器最亮
  10. Android系统sdcard目录