当前位置: 首页 > wzjs >正文

网站建设要多少钱品牌wordpress 登录流程

网站建设要多少钱品牌,wordpress 登录流程,云龙微网站开发,wordpress媒体库加一个分类1、蜂鸣器原理 无源蜂鸣器模块根据输入的 不同方波信号(作为震荡源)可以发出不同的声音。驱动电路中三极管电阻一般为1K-4K都行,能够让三极管导通即可。(三极管即带箭头的部分,基极和发射机(PNP&#xff09…

 1、蜂鸣器原理

无源蜂鸣器模块根据输入的 不同方波信号(作为震荡源)可以发出不同的声音。驱动电路中三极管电阻一般为1K-4K都行,能够让三极管导通即可。(三极管即带箭头的部分,基极和发射机(PNP)或者集电极(NPN)能够导通,并产生驱动电流,则发射极和集电极即可导通)

 芯片驱动蜂鸣器

2、达林顿晶体阵列芯片(每路都是驱动使用的达林顿晶体管,能够增大驱动能力)

通过电路可以看到,当对应的输入脚输入低电平,内部三极管断开,位高阻态。当输入高电平,输出角输出低电平才有驱动能力。com口使用的二极管为继电器续流二极管,防止驱动继电器反向开合有高压脉冲。com口需要接地,为所有的驱动共地,外部的模块应为上拉。

 可见,电路中com的按钮为测试按钮,当输入引脚没有输入高电平时,输出引脚为高阻态,当按下lamp按钮时,com会提供低电平,通过测试二极管导通。

输入接TTL电平,2.4~5V=1,0V=0。

3、乐谱知识

 从左往右分别是大字组、小子组、小字1组、小子2组。相邻组相差8度。从左往右又低到高。相邻为半音关系(包括黑键)。隔了一个音是全音的关系。简谱1对应小子1组c1,为中央c。升高1组,简谱上面加点。

想表示黑色键,使用升音#和降音b符号,例如#1为中央c,c1的高半音黑键。#e1表示f1。-表示时常。每个数字1拍,-表示之前的音在保持1拍。

 

一般以4分音符作为基准,为100ms 、200ms、500ms,乐谱上会写。简谱一般4分音符为基准。在简谱里-起到时值延长的作用,而在五线谱里是起到休止的作用。缩短为数字下面划线。一般以2备或者/2为一个。

4、谱子

 

 

 1=D是调号,表示D调(D调会谈黑键),C调一般全弹白键,4/4是拍哈号,以4分音符为1拍,每小节4拍。附点表示,1· 当前音符延长时常的1/2。两音符见出线连接,表示延音线。两个音之间是按下去不放的。

5、C调(C调包含的音,数字震荡源频率对照)

 频率对照:低音1-高音7 表示 琴键的c-b^{2}

 6、ST89C51/52/52RC定时器重装值:使用12MHz(12T)

音符频率(Hz)周期(us)周期/2(us)取整重装载值索引
12623816.7941908.3969471908636281
1#2773610.1081805.0541521805637312
22943401.3611700.6802721701638353
2#3113215.4341607.7170421608639284
33303030.3031515.1515151515640215
43492865.331432.6647561433641036
4#3702702.7031351.3513511351641857
53922551.021275.5102041276642608
5#4152409.6391204.8192771205643319
64402272.7271136.36363611366440010
6#4662145.9231072.96137310736446311
74962016.1291008.06451610086452812
15231912.046956.02294469566458013
1#5541805.054902.52707589036463314
25871703.578851.78875648526468415
2#6221607.717803.85852098046473216
36591517.451758.72534147596477717
46981432.665716.33237827166482018
4#7401351.351675.67567576766486019
57841275.51637.7551026386489820
5#8311203.369601.68471726026493421
68801136.364568.18181825686496822
6#9321072.961536.48068675366500023
79881012.146506.07287455066503024
11046956.0229478.01147234786505825
1#1109901.7133450.85662764516508526
21175851.0638425.53191494266511027
2#1245803.2129401.60642574026513428
31318758.7253379.36267073796515729
41397715.8196357.90980673586517830
4#1480675.6757337.83783783386519831
51568637.7551318.8775513196521732
5#1661602.047301.02347983016523533
61760568.1818284.09090912846525234
6#1865536.193268.09651472686526835
71976506.0729253.03643722536528336

 频率确定方式,以低音6即a作为基准频率440。8度插之间频率2倍差,即a1=880,A=220。8度之间有12个键,是以等比数列平分。即6# = 440*2^{\frac{1}{12}}

7、测试

因为我的51开发板引脚为P2^5和其他的开发板不一样,所以需要根据自己的改一下引脚。

举例:P1^5

 7.1、测试蜂鸣器,根据按钮进行显示和响声

main.c

#include <REGX52.H>
#include "Delay.h"
#include "Key.h"
#include "Nixie.h"
#include "Buzzer.h"unsigned char KeyNum;void main()
{Nixie(1,0);//按键初始化清0while(1){KeyNum=Key();if(KeyNum){Buzzer_Time(200);Nixie(1,KeyNum);//保持}}
}

 Buzzer.c

#include <REGX52.H>
#include <INTRINS.H>//蜂鸣器端口:
sbit Buzzer=P2^5;/*** @brief  蜂鸣器私有延时函数,延时500us* @param  无* @retval 无*/
void Buzzer_Delay500us_12()		//@12.000MHz
{unsigned char i;_nop_();i = 247;while (--i);
}void Buzzer_Delay500us_11()		//@11.0592MHz
{unsigned char i, j;_nop_();_nop_();i = 6;j = 93;do{while (--j);} while (--i);
}/*** @brief  蜂鸣器发声* @param  ms 发声的时长,范围:0~32767* @retval 无*/
void Buzzer_Time(unsigned int ms)
{unsigned int i;for(i=0;i<ms*2;i++){Buzzer=!Buzzer;Buzzer_Delay500us_11();}
}

Buzzer.h

#ifndef __BUZZER_H__
#define __BUZZER_H__void Buzzer_Time(unsigned int ms);#endif

Nixie.h

#ifndef __NIXIE_H__
#define __NIXIE_H__void Nixie(unsigned char Location,Number);#endif

Nixie.c

#include <REGX52.H>
#include "Delay.h"//数码管段码表
unsigned char NixieTable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};/*** @brief  数码管显示* @param  Location 要显示的位置,范围:1~8* @param  Number 要显示的数字,范围:段码表索引范围* @retval 无*/
void Nixie(unsigned char Location,Number)
{switch(Location)		//位码输出{case 1:P2_4=1;P2_3=1;P2_2=1;break;case 2:P2_4=1;P2_3=1;P2_2=0;break;case 3:P2_4=1;P2_3=0;P2_2=1;break;case 4:P2_4=1;P2_3=0;P2_2=0;break;case 5:P2_4=0;P2_3=1;P2_2=1;break;case 6:P2_4=0;P2_3=1;P2_2=0;break;case 7:P2_4=0;P2_3=0;P2_2=1;break;case 8:P2_4=0;P2_3=0;P2_2=0;break;}P0=NixieTable[Number];	//段码输出
//	Delay(1);				//显示一段时间
//	P0=0x00;				//段码清0,消影
}

Key.c

#include <REGX52.H>
#include "Delay.h"/*** @brief  获取独立按键键码* @param  无* @retval 按下按键的键码,范围:0~4,无按键按下时返回值为0*/
unsigned char Key()
{unsigned char KeyNumber=0;if(P3_1==0){Delay(20);while(P3_1==0);Delay(20);KeyNumber=1;}if(P3_0==0){Delay(20);while(P3_0==0);Delay(20);KeyNumber=2;}if(P3_2==0){Delay(20);while(P3_2==0);Delay(20);KeyNumber=3;}if(P3_3==0){Delay(20);while(P3_3==0);Delay(20);KeyNumber=4;}return KeyNumber;
}

Key.h

#ifndef __KEY_H__
#define __KEY_H__unsigned char Key();#endif

7.2、天空之城音乐

main.c

#include <REGX52.H>
#include "Delay.h"
#include "Timer0.h"//蜂鸣器端口定义
sbit Buzzer=P2^5;//播放速度,值为四分音符的时长(ms)
#define SPEED	500//音符与索引对应表,P:休止符,L:低音,M:中音,H:高音,下划线:升半音符号#
#define P	0
#define L1	1
#define L1_	2
#define L2	3
#define L2_	4
#define L3	5
#define L4	6
#define L4_	7
#define L5	8
#define L5_	9
#define L6	10
#define L6_	11
#define L7	12
#define M1	13
#define M1_	14
#define M2	15
#define M2_	16
#define M3	17
#define M4	18
#define M4_	19
#define M5	20
#define M5_	21
#define M6	22
#define M6_	23
#define M7	24
#define H1	25
#define H1_	26
#define H2	27
#define H2_	28
#define H3	29
#define H4	30
#define H4_	31
#define H5	32
#define H5_	33
#define H6	34
#define H6_	35
#define H7	36//索引与频率对照表
unsigned int FreqTable[]={0,63628,63731,63835,63928,64021,64103,64185,64260,64331,64400,64463,64528,64580,64633,64684,64732,64777,64820,64860,64898,64934,64968,65000,65030,65058,65085,65110,65134,65157,65178,65198,65217,65235,65252,65268,65283,
};//乐谱
unsigned char code Music[]={//音符,时值,//1P,	4,P,	4,P,	4,M6,	2,M7,	2,H1,	4+2,M7,	2,H1,	4,H3,	4,M7,	4+4+4,M3,	2,M3,	2,//2M6,	4+2,M5,	2,M6, 4,H1,	4,M5,	4+4+4,M3,	4,M4,	4+2,M3,	2,M4,	4,H1,	4,//3M3,	4+4,P,	2,H1,	2,H1,	2,H1,	2,M7,	4+2,M4_,2,M4_,4,M7,	4,M7,	8,P,	4,M6,	2,M7,	2,//4H1,	4+2,M7,	2,H1,	4,H3,	4,M7,	4+4+4,M3,	2,M3,	2,M6,	4+2,M5,	2,M6, 4,H1,	4,//5M5,	4+4+4,M2,	2,M3,	2,M4,	4,H1,	2,M7,	2+2,H1,	2+4,H2,	2,H2,	2,H3,	2,H1,	2+4+4,//6H1,	2,M7,	2,M6,	2,M6,	2,M7,	4,M5_,4,M6,	4+4+4,H1,	2,H2,	2,H3,	4+2,H2,	2,H3,	4,H5,	4,//7H2,	4+4+4,M5,	2,M5,	2,H1,	4+2,M7,	2,H1,	4,H3,	4,H3,	4+4+4+4,//8M6,	2,M7,	2,H1,	4,M7,	4,H2,	2,H2,	2,H1,	4+2,M5,	2+4+4,H4,	4,H3,	4,H3,	4,H1,	4,//9H3,	4+4+4,H3,	4,H6,	4+4,H5,	4,H5,	4,H3,	2,H2,	2,H1,	4+4,P,	2,H1,	2,//10H2,	4,H1,	2,H2,	2,H2,	4,H5,	4,H3,	4+4+4,H3,	4,H6,	4+4,H5,	4+4,//11H3,	2,H2,	2,H1,	4+4,P,	2,H1,	2,H2,	4,H1,	2,H2,	2+4,M7,	4,M6,	4+4+4,P,	4,0xFF	//终止标志
};unsigned char FreqSelect,MusicSelect;void main()
{Timer0Init();while(1){if(Music[MusicSelect]!=0xFF)	//如果不是停止标志位{FreqSelect=Music[MusicSelect];	//选择音符对应的频率MusicSelect++;Delay(SPEED/4*Music[MusicSelect]);	//选择音符对应的时值MusicSelect++;TR0=0;Delay(5);	//音符间短暂停顿TR0=1;}else	//如果是停止标志位{TR0=0;while(1);}}
}void Timer0_Routine() interrupt 1
{if(FreqTable[FreqSelect])	//如果不是休止符{/*取对应频率值的重装载值到定时器*/TL0 = FreqTable[FreqSelect]%256;		//设置定时初值TH0 = FreqTable[FreqSelect]/256;		//设置定时初值Buzzer=!Buzzer;	//翻转蜂鸣器IO口}
}

Time0.c

#include <REGX52.H>/*** @brief  定时器0初始化,1毫秒@12.000MHz* @param  无* @retval 无*/
void Timer0Init(void)
{TMOD &= 0xF0;		//设置定时器模式TMOD |= 0x01;		//设置定时器模式TL0 = 0x18;		//设置定时初值TH0 = 0xFC;		//设置定时初值TF0 = 0;		//清除TF0标志TR0 = 1;		//定时器0开始计时ET0=1;EA=1;PT0=0;
}/*定时器中断函数模板
void Timer0_Routine() interrupt 1
{static unsigned int T0Count;TL0 = 0x18;		//设置定时初值TH0 = 0xFC;		//设置定时初值T0Count++;if(T0Count>=1000){T0Count=0;}
}
*/

Time.h

#ifndef __TIMER0_H__
#define __TIMER0_H__void Timer0Init(void);#endif


文章转载自:

http://CwySu8OZ.sfyqs.cn
http://fRiYAVB3.sfyqs.cn
http://dpVDp88c.sfyqs.cn
http://zuXMEzur.sfyqs.cn
http://Sof2EjTh.sfyqs.cn
http://DpdojVeo.sfyqs.cn
http://Zz1iinpP.sfyqs.cn
http://O8I3cVB6.sfyqs.cn
http://LlLE9IjZ.sfyqs.cn
http://1Zf3oAcD.sfyqs.cn
http://LXyq9r3G.sfyqs.cn
http://fMi0Ev1K.sfyqs.cn
http://NViEqpvJ.sfyqs.cn
http://buLcrIxZ.sfyqs.cn
http://8IBwuZ7z.sfyqs.cn
http://Mum8qRCF.sfyqs.cn
http://B669MIwC.sfyqs.cn
http://mmoqMY1r.sfyqs.cn
http://pnnU9CsE.sfyqs.cn
http://A9afPBen.sfyqs.cn
http://ofoKexkk.sfyqs.cn
http://pxl1fMQn.sfyqs.cn
http://YUptFG5M.sfyqs.cn
http://xikHiUWc.sfyqs.cn
http://b4O21sQj.sfyqs.cn
http://jr7j2CPD.sfyqs.cn
http://XKNZniqE.sfyqs.cn
http://pt4032iY.sfyqs.cn
http://u3RaX5oA.sfyqs.cn
http://V1YVgypf.sfyqs.cn
http://www.dtcms.com/wzjs/718310.html

相关文章:

  • 做问答营销的网站有哪些国产 wordpress 框架
  • 营销型网站手机端enfold wordpress
  • 建设微信网站需要服务器做个商城小程序需要多少钱
  • 电商网站设计网站 建设 汇报
  • 说明电子商务网站的建设流程vr功能网站建设
  • 建设银行安徽 招聘网站网页设计代码和效果图
  • 做APP好还是建设网站好建设部一建查询网站
  • 网站开发和大数据开发区别网站建设费能不能认定为广告费
  • 做彩票网站模板注册安全工程师报名时间
  • 光谷软件园 网站建设常见的网站类型有
  • wordpress 商城站下载地址wordpress dux主题设置
  • 佛山外贸网站设计赣州做网站找谁
  • 移动网站设计wordpress带数据
  • asp.netmvc 做网站秦皇岛市教育局官网
  • 给女朋友做网站公司网站开发费用兴田德润在哪儿
  • 建设网站2013道路定额wordpress推送服务器
  • 企业网站备案材料外贸手机商城网站建设 深圳
  • 邢台做移动网站哪儿好考试源码网站wordpress
  • 龙岩网站建设套餐服务360优化大师安卓下载
  • 莆田市秀屿区建设局网站怎么做网站不会被屏蔽
  • 仙桃住房和城乡建设部网站上海网站建设加q.479185700
  • 如何修改网站备案wordpress清新Minty主题v4
  • 美容院怎么建立自己的网站售后服务网站建设
  • 北京网站优化公司如何app开发的基本步骤
  • 简单网站制作实验报告二级建造师报名官网
  • 个人做淘宝客网站不能备案吗上海的建设网站
  • 文学类网站怎么做天津去山西高铁做哪个网站
  • 中铝长城建设有限公司网站网站开发语言为
  • 58同城企业网站怎么做的杭州优化建筑设计
  • 中山建网站价格中国和城乡建设部网站首页