基于51单片机的简易电子琴设计内容摘要:
PTR MOV TL1,A ;音律表查询值低八位赋值 ACALL DLAY AJMP KEYPRO ;跳转回键盘扫描程序 TINT1: JB , FLUTE_ON ;判断是否 跳到长笛音色档 JB , PIANO_ON ;判断是否调到钢琴音色档 JB , TRUMPET_ON ;判断是否调到小号音色档 JB , VIOLIN_ON ;判断是否跳到小提琴音色档 JB , PICCOLO_ON ;判断是否跳到短笛音色档 FLUTE_ON: ;若是长笛音色档,则控制 口电压变化 CPL POP DPH POP DPL PUSH DPL PUSH DPH RETI PIANO_ON: ;若是钢琴琴音色档,则控制 口电压变化 CPL 21 POP DPH POP DPL PUSH DPL PUSH DPH RETI TRUMPET_ON: ;若是小号音色档,则控制 口电压变化 CPL POP DPH POP DPL PUSH DPL PUSH DPH RETI VIOLIN_ON: ;若是小提琴音色档,则控制 口电 压变化 CPL POP DPH POP DPL PUSH DPL PUSH DPH RETI PICCOLO_ON: ;若是短笛音色档,则控制 口电压变化 CPL POP DPH POP DPL PUSH DPL PUSH DPH RETI DLAY: MOV R2, 0F0H ;延时程序 DL2: MOV R3,0F0H DL1: NOP NOP DJNZ R3, DL1 DJNZ R2, DL2 RET TABLE1: ;音律表 DW 0F88BH ; 1 DW 0F95BH ; 2 DW 0FA14H ; 3 DW 0FA67H ; 4 DW 0FB07H ; 5 22 DW 0FB8FH ; 6 DW 0FB9EH ; 6 DW 0FC0BH ; 7 DW 0FC43H ; 1 DW 0FCACH ; 2 DW 0FD09H ; 3 DW 0FD33H ; 4 DW 0FD83H ; 5 DW 0FDC7H ; 6 DW 0FDE7H ; 6 DW 0FE05H ; 7 DW 0FE22H ; +1 DW 0FE56H ; +2 DW 0FE84H ; +3 DW 0FE9AH ; +4 DW 0FEC1H ; +5 DW 0FEE3H ; +6 DW 0FEF3H ; +6 DW 0FF02H ; +7 ORG 0F00H SUB_SONG: ;自动播放歌曲的子程序 1 EQU 0H。 低音域简谱码 2 EQU 1H 3 EQU 2H 4 EQU 3H 5 EQU 4H 6 EQU 5H 6 EQU 6H 7 EQU 7H 1 EQU 8H ;中音域简谱码 2 EQU 9H 3 EQU 0AH 4 EQU 0BH 5 EQU 0CH 6 EQU 0DH 6 EQU 0EH 7 EQU 0FH 23 +1 EQU 10H ;高音域简谱码 +2 EQU 11H +3 EQU 12H +4 EQU 13H +5 EQU 14H +6 EQU 15H +6 EQU 16H +7 EQU 17H FREQ_TEMP .EQU 31H TIME_TEMP .EQU 32H TH0_TEMP .EQU 33H TL0_TEMP .EQU 34H ORG 00H ;播放乐曲子程序的主程序 JMP START ORG OBH JMP TIMER0 START: MOV SP, 50H MOV IE, 10000010B ;中断, EA=ET0=1 MOV TMOD, 00000001B。 设定计数器 0 为 mode1 BEGIN: MOV A, 00H MOVC A,@A+DPTR ;取得简谱码 MOV FREQ_TEMP,A INC DPTR ;指向下一个地址 MOV A, 00H MOVC A, @A+DPTR ;取得节拍码 MOV TIME_TEMP, A JZ STOP ;比较唱歌是否结 束 PUSH DPH PUSH DPL MOV A,FREQ_TEMP CJNE A, FFH, SING_SONG ;比较是否停止发音 CLR TR0 ;停止计时 JMP HOLD SING_SONG: 24 CLR TR0 ;停止计时 MOV DPTR, TABLE ;频率值存放开始地址 MOV A, FREQ_TEMP ; RL A ; FREQ_TEMP 地址乘以 2 MOVC A, @A+DPTR ;取得频率值高位组 MOV TH0,A ; TH0=频率值高位组 MOV TH0_TEMP, A MOV A, FREQ_TEMP RL A ; FRE。基于51单片机的简易电子琴设计
相关推荐
工作方式是硬件设计必不可少的步骤。 AT89C51 单片机的定时器 /计数器的结构如下乳 31 所示 【 6】。 图 31 89C51 定时器 /计数器结构图 定时器 /计数器 T0 由特殊功能寄存器 TH0、 TL0 构成,定时器 /计数器 T1 由特殊功能寄存器 T TL1 构成。 特设功能寄存器 TMOD 用于选择定时器 /计数器 T0、 T1得工作模式和工作方式。 特殊功能寄存器
业、解惑”,是一件任重道远的事情,我更加需要不断努力提高自身的综合素质和教学水平。 三、班主任工作方面 在班主任日常管理工作中,积极负责,认真到位,事事留心。 从早晨的卫生监督,作业上交,早读到课间纪律,课堂纪律,午休管理,自习课,晚自修等等,每样事务都负责到底,细致监督。 当然,在监督他们的同时不忘结合他们的个性特点进行思想道德教育,以培养他们正确的学习目标 ...... 本文来自公务员之家
3 02 图 DS1302 芯片引脚图 其的引脚功能参照表。 表 DS1302 引脚功能说明 引脚号 名称 功能 1 VCC1 备份电源输入 2 X1 晶振输入 3 X2 晶振输出 4 GND 地 5 RST 控制移位寄存器 /复位 6 I/O 数据输入 /输出 7 SCLK 串行时钟 8 VCC2 主电源输入 电子时钟硬件电路设计 电子闹钟至少要包括秒信号发生器、时间显示电路、按键电路
状态来驱动蜂鸣器,从而控制蜂鸣器只在整点时发出响声。 具体的连接如图 25 所示: 图 25 整点报时电路硬件图 整点报时模块工作原理 由于蜂鸣器的工作电流一般比较大, 所以 单片机的 I/O 口是无法直接驱动的, 故本文设计 利用 一个 PNP 三极管来放大电路 来驱动 蜂鸣器。 三极管 Q1 起开关作 用,其基极的低电平使三极管饱和导通,使蜂鸣器发出响声;而基极高电平则使三极管截止
D3OEC L O C KV c cV1G N DD1IN 2IN 1IN 0A D D AA D D BA D D CA L ED7D6D5D4D0V2D2A D C 0 8 0 9DSJKFHJKDH FJDHJKFH KDSJH JKDHF JKDS HKJ HGFDSJHF JHFJK HFKSD JKFJDSKJF DSJF。 DS AT89C52 单片机 AT89C51 是 51
相邻的引脚上。 这样,不仅降低了穿过整个芯片的 电流,另外还在印制电路板上容易布置去耦电容,从而降低系统的噪声。 现在为了适应各种应用的需要,很多单片机的输出能力都有了很大提高, Motorola 公司的单片机 I/O 口的灌拉电流可达 8mA 以上,而 Microchip 公司的单片机可达 25mA。 其它公司: AMD, Fujitsu,NEC , Infineon, Hitachi,