历史上的今天
返回首页

历史上的今天

今天是:2024年10月14日(星期一)

正在发生

2019年10月14日 | 基于单片机的多模式带音乐跑马灯设计

2019-10-14 来源:eefocus

1、有12个发光二极管做跑马灯,其中跑马灯有10种灯亮模式。

2、有键盘用以切换跑马灯的模式,并且对于跑马灯模式可以对亮灯速度进行控制。

3、每一种跑马灯模式用LED数码管进行显示。

4、当跑马灯处于一种模式时,伴随的音乐响起,音乐至少有3首,并可以对其进行切换。

单片机音乐跑马灯仿真图:

QQ截图20170622123345.png?imageView2/2/w/550


单片机源程序如下:


#include

#define uchar unsigned char

#define uint  unsigned int


//定义特殊功能寄存器的位变量

sbit key1=P3^2;//按key1可自动//外部中断

sbit key2=P3^3;//按key2可切换//外部中断

sbit fm=P3^7;//蜂鸣器连续的IO口

sbit key3=P3^4;

sbit key4=P3^5;


/*uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,

0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40};//共阴极数码管显示码制0~F*/


uchar code table[]={ 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e}; //共阳极数码管显示码制0~F



//速度模式共有5种

unsigned char code SpeedCode[]={5,14,30,60,100};                                                                 

uchar count2=1,RunMode=1;//音乐、流水灯标志

uchar zd=1;                //自动播放标志

uchar timeh,timel,i;

uint LEDIndex = 0;//LED位置

bit LEDDirection = 1,LEDFlag = 1;//LED方向,LED亮灭

uint Timer0Count,SystemSpeed;//跑马灯速度,系统速度

char SystemSpeedIndex=0;//速度模式参数


//---------------------------简谱---------------------------------------

//编程规则:字节高位是简谱,低位是持续时间,

//代表多少个十六分音符

//1-7代表中央C调,8-E代表高八度,0代表停顿

//最后的0是结束标志

uchar code qnzl[]={         //千年之恋

        0x12,0x22,0x34,0x84,0x74,0x54,0x38,0x42,0x32,0x22,0x42,0x34,0x84,0x72,0x82,0x94,0xA8,0x08,

                //前奏

                0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,

                //竹林的灯火 到过的沙漠

                0x32,0x31,0x21,0x32,0x82,0x71,0x81,0x71,0x51,0x32,0x22,

                //七色的国度 不断飘逸风中

                0x32,0x31,0x21,0x32,0x52,0x32,0x31,0x21,0x32,0x62,

                //有一种神秘 灰色的旋涡

                0x32,0x31,0x21,0x32,0x82,0x83,0x71,0x72,0x02,

                //将我卷入了迷雾中

                0x63,0xA1,0xA2,0x62,0x92,0x82,0x52,

                //看不清的双手

                0x31,0x51,0x63,0x51,0x63,0x51,0x63,0x51,0x62,0x82,0x7C,0x02,

                //一朵花传来谁经过的温柔

                0x61,0x71,0x82,0x71,0x62,0xA2,0x71,0x76,

                //穿越千年的伤痛

                0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,

                //只为求一个结果

                0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,

                //你留下的轮廓 指引我

                0x42,0x61,0x62,0x83,0x83,0x91,0x91,

                //黑夜中不寂寞

                0x61,0x71,0x82,0x71,0x62,0x0A2,0x71,0x76,

                //穿越千年的哀愁

                0x61,0x71,0x82,0x71,0x62,0x52,0x31,0x36,

                //是你在尽头等我

                0x61,0x71,0x82,0x71,0x62,0xA3,0x73,0x62,0x53,

                //最美丽的感动 会值得

                0x42,0x82,0x88,0x02,0x74,0x94,0x89,0xff//结束标志

                //用一生守候

};


uchar code jmszl[]={ //寂寞沙洲冷

        0x12,0x12,0x22,0x32,0x31,0x22,0x21,0x22,

                //自你走后心憔悴

                0x21,0x31,0x51,0x52,0x31,0x52,0x61,0x15,0x14,

                //白色油桐风中纷飞

                0x51,0x52,0x31,0x52,0x62,0x13,0x11,0x13,0x32,0x28,0x08,0x28,

                //落花似人有情 这个季节

                0x31,0x32,0x31,0x32,0x11,0x21,0x51,0x52,0x51,0x52,

                //河畔的风放肆拼命地吹

                0x51,0x51,0x31,0x32,0x31,0x32,0x81,0x72,0x63,

                //不断拨弄离人的眼泪

                0x62,0x71,0x81,0x72,0x61,0x61,0x52,0x31,0x21,0x32,0x51,0x54,

                //那样浓烈的爱再也无法给

                0x22,0x12,0x11,0x12,0x11,0x12,0x12,0x14,0x26,0x32,0x26,

                //伤感一夜一夜

                0x32,0x61,0x51,0x51,0x31,0x31,0x21,0x31,0x51,0x61,0x51,0x31,0x51,

                //当记忆的线缠绕过往支离破碎

                0x02,0x32,0x81,0x81,0x81,0x81,0x62,0x52,0x34,

                //是慌乱占据了心扉                                                        

                0x31,0x81,0x81,0x81,0x61,0x91,0x82,

                //有花儿伴着蝴蝶

                0x51,0x51,0x51,0x51,0x31,0x61,0x53,

                //孤雁可以双飞        

                0x21,0x11,0x21,0x11,0x22,0x11,0x21,0x26,

                //夜深人静独徘徊

                0x32,0x61,0x51,0x51,0x31,0x31,0x21,0x31,0x51,0x61,0x51,0x31,0x51,0x52,

                //当幸福恋人寄来红色分享喜悦

                0x31,0x31,0x81,0x81,0x81,0x61,0x91,0x81,0x61,0x31,0x56,

                //闭上双眼难过头也不敢回

                0x32,0x32,0x81,0x81,0x81,0x81,0x91,0x81,0x61,0x81,0x61,0x51,0x31,0x51,0x34,

                //仍然捡尽寒枝不肯安歇微带着后悔

                0x21,0x31,0x51,0x31,0x21,0x11,0x61,0x21,0x16,

                //寂寞沙洲我该思念谁

                0xff};         

        

        uchar  code  srkl[]={0x52,0x52,0x64,0x54,0x84,0x74,//生日快乐

                0x52,0x52,0x64,0x54,0x94,0x84,

                0x52,0x52,0xc4,0xA4,0x84,0x74,0x64,

                0xB2,0xB2,0xA4,0x84,0x94,0x84,

                0x52,0x52,0x64,0x54,0x84,0x74,

                0x52,0x52,0x64,0x54,0x94,0x84,

                0x52,0x52,0xc4,0xA4,0x84,0x74,0x64,

                0xB2,0xB2,0xA4,0x84,0x94,0x84,0xff};

        

        uchar code  goon[]={0x64,0x84,0x92,0x91,0x81,0x93,0x61,     //康定情歌

                0x54,0x62,0x82,0x92,0x91,0x81,0x92,

                0x64,0x62,0x82,0x92,0x91,0x81,0x93,

                0x61,0x54,0x82,0x62,0x51,0x61,0x51,

                0x41,0x52,0x24,0x92,0x54,0x82,0x64,

                0x52,0x42,0x94,0x82,0x62,0x51,0x61,

                0x51,0x41,0x52,0x24,0xff};

        

        //----------------------------简谱音调对应的定时器初值---------------------------

        //适合11.0592M的晶振

        uchar code chuzhi[]={

                0xff,0xff,//占位

                        0xFC,0x8E,//中央C调1-7

                        0xFC,0xED,        

                        0xFD,0x43,        

                        0xFD,0x6A,        

                        0xFD,0xB3,        

                        0xFD,0xF3,        

                        0xFE,0x2D,

                        0xFE,0x47,        //高八度1-7          

                        0xFE,0x76,

                        0xFE,0xA1,

                        0xFE,0xC7,        

推荐阅读

史海拾趣

GETEDZ ( HVGT)公司的发展小趣事
电路设计要便于维护和检修,方便在设备出现故障时能够迅速定位并解决问题。
Devar Inc公司的发展小趣事

Devar Inc公司自创立之初,就致力于在增强现实(AR)领域取得突破。经过多年的研发,公司成功推出了世界上首个用于AR的生成式AI神经网络。这项技术允许用户通过简单的文本提示创建3D对象和其他AR资产,极大地简化了AR内容的创作过程。Devar的AR平台结合了神经网络和云解决方案,让用户能够轻松创建并分享AR内容,开启了AR创作的新时代。

Anderson Power公司的发展小趣事

智能家居是电子行业的一个重要发展方向,Devar Inc公司也积极拓展这一领域。公司推出了一系列智能家居产品,如智能音箱、智能照明、智能安防等。这些产品不仅具备远程控制、语音控制等便捷功能,还通过Devar的AI技术实现了智能学习和智能联动。例如,智能音箱可以根据用户的习惯和喜好,为用户推荐音乐、新闻等内容;智能照明则可以根据环境光线和用户需求自动调节亮度和色温。

福建国光公司的发展小趣事

随着环保意识的提高,Devar Inc公司也积极投身环保科技领域。公司研发了一系列环保型电子产品和解决方案,如可降解材料制成的电子产品外壳、节能型电源管理系统等。同时,Devar还积极参与电子废弃物的回收和处理工作,推动循环经济的发展。这些努力不仅有助于减少环境污染和资源浪费,也提升了公司的社会责任感和品牌形象。

HN Electronic Components GmbH & Co Kg公司的发展小趣事

背景:近年来,随着全球对环境保护和可持续发展的重视,电子行业也面临着绿色转型的压力。

发展:HN Electronics积极响应环保号召,将绿色生产理念融入公司的发展战略中。公司投入大量资金进行技术改造和设备升级,减少生产过程中的能耗和污染排放。同时,HN Electronics还积极研发和推广绿色电子产品,满足市场对环保产品的需求。

关键事件:2020年,HN Electronics推出了一系列采用环保材料和先进生产工艺的绿色电子产品,这些产品不仅性能优异,而且符合国际环保标准,赢得了市场的广泛好评。

Gustav Klauke GmbH公司的发展小趣事

背景:随着公司实力的增强,HN Electronics开始考虑通过并购来扩大规模和市场份额。

发展:公司精心挑选了几家在电子元件制造和系统集成方面具有优势的中小企业进行并购,通过资源整合和优势互补,进一步巩固了市场地位。同时,HN Electronics还向产业链上下游延伸,涉足原材料供应和终端产品制造领域。

关键事件:2015年,HN Electronics成功并购了一家在被动元件领域具有领先地位的企业,这一并购极大地增强了公司的供应链整合能力和市场竞争力。

问答坊 | AI 解惑

英飞凌一季度首次当上内存老二

据国外媒体报道,众所周知,从5月1日开始,欧洲芯片巨头德国英飞凌的内存业务将分拆为一个独立的公司。而在\"自立门户\"之前,内存业务的表现也十分不俗。据半导体行业市场调研公司iSuppli的报告,今年第一季度,英飞凌内存业务力压韩国现代和美国 ...…

查看全部问答>

音频电路电子开关问题

朋友要我帮忙改一电路,要把原来的SW1单刀双掷改成电子开关,然后用一单刀单掷开关控制转换。局部电路付上,要求:单电源工作,不能使用继电器等机械控制。由于要控制音频信号,同时上面又有偏压,我试过用三极管和4066等都不成功,坛子里高手多, ...…

查看全部问答>

中发买的霍尔芯片,大家遇到过这个问题么?

在中发买的霍尔芯片A3144,测试时,有的芯片的输出信号该低的时候低不下去,最低是2.5v呀,供电是5v,为啥呢? 发现好多同类片子用过一段时间后都这样。…

查看全部问答>

FBWFMGR是不是只有XPE此能用?

请问FBWFMGR是不是只有在XPE系统下才能使用?谢谢!…

查看全部问答>

语音识别电路

语音识别电路怎样集成HMM?就是改好烧进去的吗…

查看全部问答>

发一个自己做的工具,用来看PDB的

PDB Explorer是一个能够查看微软pdb文件(Program DataBase,程序数据库)的工具,它能够将pdb文件中的struct、union及enum类型的定义以C/C++的语法显示出来,特别适合Windows底层研究人员及DDK程序员使用。 下载页:[url=http://www.titilima.cn ...…

查看全部问答>

劳烦大师看看此管脚能否为高电平

请问大师们,保险丝在为烧断时,P1.0口应该直接被拉为低电平,而如果保险丝烧断,P1.0上电后会是高电平吗?…

查看全部问答>