毕业论文
计算机论文
经济论文
生物论文
数学论文
物理论文
机械论文
新闻传播论文
音乐舞蹈论文
法学论文
文学论文
材料科学
英语论文
日语论文
化学论文
自动化
管理论文
艺术论文
会计论文
土木工程
电子通信
食品科学
教学论文
医学论文
体育论文
论文下载
研究现状
任务书
开题报告
外文文献翻译
文献综述
范文
51单片机八音阶电子琴设计+流程图+程序代码(6)
(2) 控制寄存器TCON,控制定时器启动、停止及对其标志溢出和中断,如表4所示。
表4 TCON格式
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
① TF0 (TF1):T0 (T1)溢出标志。当T0 (T1)计数溢出,该位被硬件置1,向CPU发出中断请求,若CPU响应,则该位被硬件清0。
② TR0、TR1:运行控制位。软件置1或置0对定时/计数器启动或关闭。
本系统采用12MHz晶振,定时器T0,选用方式1工作模式,TMOD=0x01。
3.2 音频设计
3.2.1 发声原理
声音是由发声物体振动产生,振动的频率高为高音,振动的频率低则为低音。电子琴可以弹奏很多音乐,而每一首完整的音乐是由许多音符构成,每个音符都有自己不同的频率。通过对不同频率进行随意组合并加以控制就构成了不同的乐曲[8]。
利用AT89C51单片机产生一频率的方波的方式模拟产生音符。将单片机的P3.5口线输出高电平,利用定时/计数器T0延时一段时间后再输出低电平,延时的时间不同,单片机的方波输出频率就不同。通过频率的变化产生不同电平去驱动发音电路,就可以得到要弹奏的音符[9]。
3.2.2 音频计算
要产生对应的音频脉冲需要计算出某音符的周期,然后再除以2。在本次设计中震荡电路选择的晶振为12MHz,使用定时/计数器T0,工作模式1。利用单片机的半周期进行计时,计满以后使P3.5反向,再重复计时然后再反向。通过改变计数初值TH0、TL0产生不同频率的脉冲信号。计数脉冲个数与频率的关系:
(2)
计数初值的算法表达式:
(3)
表达式中N代表计数脉冲个数,fi 代表机器频率(晶振为12MHz,其频率为1MHz),fr是音符的频率[10]。
在本次设计中有八个按键,设计产生1、2、3、4、5、6、7、1,八个音符。已知中音DO的频率fr=523Hz,根据表达式得T=65536-500000÷523=64580。按照表达式根据其他音阶的频率计算他们的计数初值得到中高音符与定时器的计数初值,如表5。在编程中建立表格,AT89C51通过软件查询获取数据信息[11]。
表5 音符频率表
音符 频率(Hz) T值 音符 频率(Hz) T值
中 1 DO 523 64580 中 5 SO 784 64898
中 2 RE 587 64684 中 6 LA 880 64968
中 3 M 659 64777 中 7 SI 988 65030
中 4 FA 698 64820 高 1 DO 1064 65058
3.3 I/O并行口驱动LED显示
将单片机的P1.0~P1.1接键盘的2条行线,P1.4~P1.7接键盘4条列线,P0.0~P0.7分别与8个共阳极的LED灯的阴极相连。在弹奏电子琴的过程中,单片机可以通过软件查询到弹奏不同音符时对应的按键状态以及LED 灯指示状态。如表6所示。
共7页:
上一页
1
2
3
4
5
6
7
下一页
上一篇:
智能变电站电光缆信息(RFID电子标签)非接触识别系统开发
下一篇:
52单片机步进电机控制系统设计仿真+电路图+源程序
单片机数字红外测距系统设计+电路图+程序
基于51单片机自动门智能控制系统设计
STC89C52单片机智能温度监测系统设计
STC89C52单片机盲人用时钟的设计+电路图+程序
粉料称重装置的单片机控...
STM32单片机的无刷直流电机控制系统设计
AT89S52单片机车内空气检测系统设计+源代码
拉力采集上位机软件开发任务书
《醉青春》导演作品阐述
多元化刑事简易程序构建探讨【9365字】
国内外无刷直流电动机研究现状
辩护律师的作证义务和保...
高校网球场馆运营管理初探【1805字】
谷度酒庄消费者回访调查问卷表
浅谈传统人文精神茬大學...
浅谈新形势下妇产科护理...
中国古代秘书擅权的发展和恶变