单片机电子琴毕业论文(编辑修改稿)内容摘要:
1/ A 922P 2. 0/ A 821U1A T 89 S 51R110KR210KR310KY112 M H zC730 p FC630 p F12345678P1 H E A D E R 8S1SWPBS2SWPBS3SWPBS4SWPBS5SWPBS6SWPBS7SWPBS8SWPBS9SWPBS 10SWPBS 11SWPBS 12SWPBS 13SWPBS 14SWPBS 15SWPBS 16SWPBC110 u FV C CV c c6I N +3I N 2B Y P A S S7V O U T5G A I N1G A I N8G N D4U2L M 38 6C210 u FC30. 1u FV C CC410uFR410KC50. 1u FL S 1扬声器CR4CR3CR2CR1BR4BR3BR2BR1CR4CR3CR2CR1BR4BR3BR2BR1R4220agdefbcdpa7b6c4d2e1f9GND3GND8g10dp5D S 1D P Y 7_ S E G _D P 图 21 键盘识别模块 Fig21 Keyboard recognition module 系统板上硬件连线设计 键盘模块硬件连线如图 21 所示: ( 1) 把 “ 单片机系统 ” 区域 中的 - 端口用 8 芯排线连接到 “4X4 行列式键盘 ” 区域中的 C1- C4 R1- R4 端口上; ( 2) 把 “ 单片机系统 ” 区域中的 - “ 7段数码 显示模块 ” 区域中的任一 个 a- h 端口上;要求: ,单片机电子琴毕业论文 13 , „„ ,。 程序设计内容 ( 1) 44 矩阵键盘识别处理 , 每个按键有它的行值和列值,行值和列值的组合就是识别这个按键的编码。 矩阵的行线和列线分别通过两并行接口和 CPU 通信。 每个按键的状态 同样 需 变成数字量 “0” 和 “1” ,开关的一端(列线)通过电阻接 VCC,而接地是通过程序输出数字 “0” 实现的。 ( 2) 键盘处理程序的任务是:确定有无键按下,判断哪一个键按下,键的功能是什么;还要消除按键在闭合或断开时的抖动。 两个并行口中,一个输出扫描码,使按键逐行动态接地,另一个并行口输入按键状态,由行扫描值和回馈信号共同形成键编码而识别按键,通过软件查表,查出该键的功能。 电路图如下 图 行列式键盘电路 Figure determinant keyboard circuit 单片机电子琴毕业论文 14 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e v i s i onS i z eBD a t e : 26 M a y 2 01 0 S he e t o f F i l e : D : \ P r o t e l 99 S E \ 杨文蕊 + 06 9 05 02 4 10 23 .D db D r a w n B y :12345678P1H E A D E R 8S1S W P BS2S W P BS3S W P BS4S W P BS5S W P BS6S W P BS7S W P BS8S W P BS9S W P BS 10S W P BS 11S W P BS 12S W P BS 13S W P BS 14S W P BS 15S W P BS 16S W P BCR4CR3CR2CR1BR4BR3BR2BR1 I/O 并行口直接驱动 LED 显示 LED 显示模块如图 22 所示,利用 AT89S51 单片机的 P0 端口的 - 连接到一个 七段 数码管的 a- h 的笔段上,数码管的公共端接地。 在数码管上循环显示 0- 7 数字,时间间隔 秒。 单片机电子琴毕业论文 15 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e v i s i onS i z eBD a t e : 26 M a y 2 01 0 S he e t of F i l e : D : \ P r o t e l 99 S E \ 杨文蕊 + 06 9 05 02 4 10 23 .D db D r a w n B y :Vcc40EA31RST9GND20X119X218P 1. 01P 1. 12P 1. 23P 1. 34P 1. 45P 1. 56P 1. 67P 1. 78P 3. 0/ R X D10P 3. 1/ T X D11P 3. 2/ I N T 012P 3. 3/ I N T 113P 3. 4/ T 014P 3. 5/ T 115P 3. 6/ W R16P 3. 7/ R D17P 0. 0/ A D 039P 0. 1/ A D 138P 0. 2/ A D 237P 0. 3/ A D 336P 0. 4/ A D 435P 0. 5/ A D 534P 0. 6/ A D 633P 0. 7/ A D 732A L E30P S E N29P 2. 7/ A 1528P 2. 6/ A 1427P 2. 5/ A 1326P 2. 4/ A 1225P 2. 3/ A 1124P 2. 2/ A 1023P 2. 1/ A 922P 2. 0/ A 821U1A T 89 S 51R110KR210KR310KY112 M H zC730 p FC630 p FC110 u FV C CV c c6I N +3I N 2B Y P A S S7V O U T5G A I N1G A I N8G N D4U2L M 38 6C210 u FC3 FV C CC410 u FR410KC5 FL S 1扬声器CR4CR3CR2CR1BR4BR3BR2BR1agdefbcdpa7b6c4d2e1f9GND3GND8g10dp5U3D P Y 7_ S E G _D PR4220 图 22 电路原理图 Fig22 Circuit diagram 系统板上硬件连线:(如图 22 所示 ) 把 “ 单片机系统 ” 区域中的 - “ 七段 数码显示模块 ” 区域中的任一个数码管的 a- h 端口上;要求: 与 a 相连, , , „„ ,。 程序设计内容 单片机电子琴毕业论文 16 ( 1) LED 数码显示原理 : 七段 LED 显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的极管的接线形式,可分成共阴极型和共阳极型。 LED 数码管的g~a 七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码,下面给出共阴极的字形码表(如表 21 所示) 表 21 字形码表 Table 21 font code table “0” 3FH “8” 7FH “1” 06H “9” 6FH “2” 5BH “A” 77H “3” 4FH “b” 7CH “4” 66H “C” 39H “5” 6DH “d” 5EH “6” 7DH “E” 79H “7” 07H “F” 71H ( 2)由于显示的数字 0- 9 的字形码没有规律可循,只能采用查表的方式来完成我们所需的要求了。 这样我们按着数字 0- 9 的顺序,把每个数字的笔段代码按顺序排好。 建立的表格如下所示: TABLEDB 3FH, 06H, 5BH, 4FH, 66H,6DH, 7DH, 07H, 7FH, 6FH。 音乐产生的方法 原理 一首音乐是许多不同的音阶组成的,而每个音阶对应着不同的频率,这样我们就可以利用不同的频率的组合,即可构成我们所想要的音乐了,当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时 /计数器 T0 来产 生这 样方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系 正确即可。 若要产生音频脉冲,只要算出某一音频的周期( 1/频率),再将此周期除以 2, 单片机电子琴毕业论文 17 即为半周期的时间。 利用定时器计时半周期时间,每当计时终止后就将 反相,然后重复计时再反相。 就可在 引脚上得到此频率的脉冲。 利用 AT89C51 的内部定时器使其工作计数器模式( MODE1)下,改变计数值 TH0 及 TL0 以产生不同频率的方法产生不同音阶,例如,频率为 523Hz,其周期 T= 1/523= 1912μs ,因此只要令计数器计时 956μs/1μs = 956,每计数 956次时将 I/O 反相,就可得到中音 DO( 523Hz)。 计数脉冲值与频率的关系式 (如式 21 所示 )是: N =fi247。 2247。 fr 21 式中, N 是计数值; fi 是机器频率(晶体振荡器为 12MHz 时,其频率为 1MHz);fr 是想要产生的频率。 其计数初值 T 的求法如下: T= 65536- N= 65536-fi247。 2247。 fr 例如:设 K= 65536, fi= 1MHz,求低音 DO( 261Hz)、中音 DO( 523Hz)、高音 DO( 1046Hz)的计数值。 T= 65536- N= 65536- fi247。 2247。 fr = 65536- 1000000247。 2247。 fr = 65536-500000/fr 低音 DO 的 T= 65536- 500000/262= 63627 中音 DO 的 T= 65536- 500000/523= 64580 高音 DO 的 T= 65536- 500000/1046= 65059 单片机 12MHZ 晶振,高中低音符与计数 T0 相关的计数值如表 22 所示 表 22 音符频率表 Table 22 notes the frequency table 音符 频率( HZ) 简谱码( T值) 音符 频率( HZ) 简谱码( T值) 低 1 DO 262 63628 4 FA 740 64860 1 DO 277 63731 中 5 SO 784 64898 低 2 RE 294 63835 5 SO 831 64934 2 RE 311 63928 中 6 LA 880 64968 低 3 M 330 64021 6 932 64994 低 4 FA 349 64103 中 7 SI 988 65030 4 FA 370 64185 高 1 DO 1046 65058 低 5 SO 392 64260 1 DO 1109 65085 单片机电子琴毕业论文 18 5 SO 415 64331 高 2 RE 1175 65110 低 6 LA 440 64400 2 RE 1245 65134 6 466 64463 高 3 M 1318 65157 低 7 SI 494 64524 高 4 FA 1397 65178 中 1 DO 523 64580 4 FA 1480 65198 1 DO 554 64633 高 5 SO 1568 65217 中 2 RE 587 64684 5 SO 1661 65235 2 RE 622 64732 高 6 LA 1760 65252 中 3 M 659。单片机电子琴毕业论文(编辑修改稿)
相关推荐
MOV C, JC L2 STOP1: MOV C,。 = 0 时转移 JNC STOP1 LCALL DELAY1。 延时 MOV C, JNC STOP1 MOV 50H,00H LJMP MAIN。 设置闹钟。 SETATIME:LCALL DISPLAY2。 调用 DISPLAY2 显示闹钟 N0: LCALL DISPLAY2 MM2: JB ,N1。 =1 时转移 MOV C, JC
12M,该数值与最终产生的目标代码无关,仅用于软件模拟调试时显示程序执行时间。 正确设置该数值可使显示时间与实际所用时间一致,一般将其设置成与你的硬件所用晶振频率相同,如果没必要了解程序执行的时间,也可以不设,这里设置为 12。 设置对话框中的 OutPut 页面,如图 所示,这里面也有多个选择项,其中 Creat Hex file 用于生成可执行代码文件(可以用 编程器 写入单片机芯片的
TL1 TH0 TH1 AUXR 8FH 80H P0 SP DP0L DP0H DP1L DP1H PCON 87H 在表 中,对于没有定义的存储单元用户不能使用。 如果向这些存储单元写入数据将产生不确定的效果,从它们读取数据将得到一个随机 数。 对于字节地址低位为 8H 或者 FH的特殊功能存储器,既可以进行字节操作,也可以进行位操作。
的最底端,另四条分别放置 在水塔内不同高度如图 35 所示。 图 35 传感器连接示意图 吉林工业职业技术 学院论文 15 此原理的电路设计比脉冲调制 式红外发射接收器 结构简单,方便。 此电路的灵敏度可以达到本设计的要求,能够准确地分辨出有水信号和无水信号不用调试便可很方便的使用。 由此可知,这种设计方案简单实用,元器件选用方便,费用低。 此电路无需调试,解决了第一种方案中调试繁琐
ectrical machine ring should match close, fasten tasseled phase can be to get very wide frequency band, because of the fast speed ring should be good, dynamic configuration sexual can perturbation
电后中断可唤醒 l 看门狗定时器 1双数据指针 l掉电标识符 功能特性描述: AT89S52 是一 种低功耗、高性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。 使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。 片上 Flash 允许程序存储器在系统可编程,亦适于常规程器。 在单芯片上,拥有灵巧的 8 位 CPU