51单片机唱歌C51音乐程序

51单片机唱歌 C51音乐程序

unsigned char n 0; //n为节拍常数变量

unsigned char code music_tab[] 0x18, 0x30, 0x1C , 0x10, //格式为: 频率常数, 节拍常数, 频率常数, 节拍常数,

0x20, 0x40, 0x1C , 0x10,

0x18, 0x10, 0x20 , 0x10,

0x1C, 0x10, 0x18 , 0x40,

0x1C, 0x20, 0x20 , 0x20,

0x1C, 0x20, 0x18 , 0x20,

0x20, 0x80, 0xFF , 0x20,

0x30, 0x1C, 0x10 , 0x18,

0x20, 0x15, 0x20 , 0x1C,

0x20, 0x20, 0x20 , 0x26,

0x40, 0x20, 0x20 , 0x2B,

0x20, 0x26, 0x20 , 0x20,

0x20, 0x30, 0x80 , 0xFF,

0x20, 0x20, 0x1C , 0x10,

0x18, 0x10, 0x20 , 0x20,

0x26, 0x20, 0x2B , 0x20,

0x30, 0x20, 0x2B , 0x40,

0x20, 0x20, 0x1C , 0x10,

0x18, 0x10, 0x20 , 0x20,

0x26, 0x20, 0x2B , 0x20,

0x30, 0x20, 0x2B , 0x40,

0x20, 0x30, 0x1C , 0x10,

0x18, 0x20, 0x15 , 0x20,

0x1C, 0x20, 0x20 , 0x20,

0x26, 0x40, 0x20 , 0x20,

0x2B, 0x20, 0x26 , 0x20,

0x20, 0x20, 0x30 , 0x80,

0x20, 0x30, 0x1C , 0x10,

0x20, 0x10, 0x1C , 0x10,

0x20, 0x20, 0x26 , 0x20,

0x2B, 0x20, 0x30 , 0x20,

0x2B, 0x40, 0x20 , 0x15,

0x1F, 0x05, 0x20 , 0x10,

0x1C, 0x10, 0x20 , 0x20,

0x26, 0x20, 0x2B , 0x20,

0x30, 0x20, 0x2B , 0x40,

0x20, 0x30, 0x1C , 0x10,

0x18, 0x20, 0x15 , 0x20,

0x1C, 0x20, 0x20 , 0x20,

0x26, 0x40, 0x20 , 0x20,

0x2B, 0x20, 0x26 , 0x20,

0x20, 0x20, 0x30 , 0x30,

0x20, 0x30, 0x1C , 0x10,

0x18, 0x40, 0x1C , 0x20,

0x20, 0x20, 0x26 , 0x40,

0x13, 0x60, 0x18 , 0x20,

0x15, 0x40, 0x13 , 0x40,

0x18, 0x80, 0x00

;

void int0 interrupt 1 //采用中断0 控制节拍 TH0 0xd8; TL0 0xef; n--; void delay unsigned char m //控制频率延时 unsigned i 3*m;

while --i ; void delayms unsigned char a //豪秒延时子程序 while --a ; //采用while --a 不要采用while a-- ; 各位可编译一下看看汇编结果就知道了! void main unsigned char p,m; //m为频率常数变量

unsigned char i 0;

TMOD& 0x0f;

TMOD 0x01;

TH0 0xd8;TL0 0xef;

IE 0x82;

play: while 1 a: p music_tab[i]; if p 0x00 i 0, delayms 1000 ; goto play; //如果碰到结束符,延时1秒,回到开始再来一遍 else if p 0xff i i+1;delayms 100 ,TR0 0; goto a; //若碰到休止符,延时100ms,继续取下一音符 else m music_tab[i++], n music_tab[i++]; //取频率常数 和 节拍常数 TR0 1; //开定时器1 while n! 0 P1 ~P1,delay m ; //等待节拍完成, 通过P1口输出音频 可多声道哦! TR0 0; //关定时器1

c51c语言编程的音乐程序,51单片机唱歌C51音乐程序.doc相关推荐

  1. 单片机c语言的按键程序,51单片机按键扫描C程序

    原标题:51单片机按键扫描C程序 大二上学期做过80 的按键程序,当时项目要求实现按键控制 屏显示并且接收GPRS传来的数据.当时为了节省成本,就去大西电子市场买来8*8的LED块,然后自己一点一点的 ...

  2. 水下超声波测距c语言程序,51单片机超声波测距C程序

    51单片机超声波测距C程序 (2010-01-26 14:09:10) 电子工程师电子资料大学校园 超声波检测原理 超声波测距的程序流程图 程序如下: //超声波模块程序 #include #defi ...

  3. 52 8x8点阵c语言程序,51单片机8x8点阵显示程序

    <51单片机8x8点阵显示程序>由会员分享,可在线阅读,更多相关<51单片机8x8点阵显示程序(3页珍藏版)>请在人人文库网上搜索. 1.include #include#de ...

  4. 51单片机c语言编程的头文件,51单片机编程的头文件reg51.h详解

    我们在用c语言编程时往往第一行就是头文件,51单片机为reg51.h或reg52.h,51单片机相对来说比较简单,头文件里面内容不多,像飞思卡尔.ARM系列的单片机头文件往往内容就非常多,尽管如此,对 ...

  5. C语言花样霓虹灯程序,51单片机制作霓虹灯的程序+电路图

    霓虹灯的电路图: 霓虹灯的51单片机程序: #include #define uchar unsigned char #define uint unsigned int sbit  RED_LED  ...

  6. 8255编程c语言程序,51单片机8255驱动C程序

    /*-------------------------------------------------------------------------------------------------- ...

  7. 51单片机烟雾传感器C语言程序,51单片机烟雾报警器制作+程序

    烟雾报警器制作过程及相关程序 //程序头函数 #include //宏定义 #define uint unsigned int #define uchar unsigned char #define ...

  8. 测速的c语言程序,51单片机测速c程序

    #include #define uint  unsigned int #define ulong unsigned long #define uchar unsigned char //定义一下方便 ...

  9. 用c语言怎么写舞蹈机器人程序,51单片机舞蹈机器人仿真+程序

    #include "reg51.h" #include "intrins.H" //8步式步进电机脉冲序列 //unsigned char steps[8] = ...

最新文章

  1. 跨年赠书福利!推荐你数据科学领域初学、进阶必读6本书
  2. android8camera,[Android8.0/9.0/10]Camera:外接 USB 摄像头
  3. Azure DevOps+Docker+Asp.NET Core 实现CI/CD(三.实现CD持续部署管道)
  4. 23、java中的网编基础
  5. java本地监听zk服务器节点【动态上下线】
  6. 数据解析学习笔记(正则解析、bs4解析、xpath解析)
  7. js事件里面套事件怎么不管用_原生js利用localstorage实现简易TODO list应用
  8. 送6个Gmail邀请!
  9. javascript获取随机rgb颜色和十六进制颜色的方法
  10. hasp hl加密狗驱动
  11. 【学习笔记】dubbo 控制台的部署
  12. 节约里程法java代码,智慧职教: 在配送路线优化的节约里程法中有几个基本的假设前提条件,他们是()。...
  13. python爬虫---代理、Cookie、模拟登录古诗文网
  14. 像素测量工具_像素大厨PxCook for Mac(自动标注工具)中文免费版
  15. ScrollView 吸顶效果
  16. win10系统电池图标不见了怎么恢复
  17. 扫描QR码即可完成移动支付的LevelUp推出集合NFC、QR码等技术的移动支付终端,供商家免费使用 | 36氪
  18. 基于ESP32环境监测控制和预警(微信小程序)
  19. 在线绘制2维/3维函数图像、求导网站
  20. Linux网络编程之获取网络天气信息

热门文章

  1. 初探多因子选股:基于Fama-Macbeth回归的因子分析框架 (附Python3代码)
  2. vue实现excel表格下载
  3. JAVA计算机毕业设计网上拍卖系统设计(附源码、数据库)
  4. 微信python天天学_用python玩微信
  5. OctopusWallets(章鱼钱包)是什么
  6. DataScience:数据生成之在原始数据上添加小量噪声(可自定义噪声)进而实现构造新数据(dataframe格式数据存储案例)
  7. APP图标尺寸规范一文了解清楚
  8. Windows下安装goaccess,并支持显示中文页面的方法
  9. linux查看进程占句柄,linux下查看系统进程占用的句柄数方法
  10. 桌面计算机休眠快捷键,win7系统电脑休眠快捷键的操作方法