为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

数字音乐盒

2017-10-16 25页 doc 182KB 27阅读

用户头像

is_624976

暂无简介

举报
数字音乐盒数字音乐盒 ※※※※※※※※※ ※※ 2008级学生单片机 ※※ 课程设计 ※※ ※※※※※※※※※ 单片机课程设计报告书 基于单片机的数字音乐盒设计 课题名称 姓 名 学 号 院 系 专 业 指导教师 2011年 6月10日 1 一、 设计任务及要求: 1. 利用振荡器驱动AT89C52,输出到蜂鸣器发出音乐 2. 采用数码管显示音乐曲目, 3. 并用proteus实现仿真效果。 指导教师签名: 2011年 04 月 22日 二、指导教师评语: 指导教师签名: 2011年 6 月 ...
数字音乐盒
数字音乐盒 ※※※※※※※※※ ※※ 2008级学生单片机 ※※ 课程设计 ※※ ※※※※※※※※※ 单片机课程设计报告书 基于单片机的数字音乐盒设计 课题名称 姓 名 学 号 院 系 专 业 指导教师 2011年 6月10日 1 一、 设计任务及要求: 1. 利用振荡器驱动AT89C52,输出到蜂鸣器发出音乐 2. 采用数码管显示音乐曲目, 3. 并用proteus实现仿真效果。 指导教师签名: 2011年 04 月 22日 二、指导教师评语: 指导教师签名: 2011年 6 月 16 日 三、成绩 验收盖章 2011年6 月 16日 2 基于单片机的数字音乐盒设计 1设计目的 应用AT89C52单片机原理和控制理论来设计音乐盒的硬件电路,并利用C51单片机语言进行程序设计。通过单片机的定时器来产生不同频率的方波,驱动喇叭发出不同音调的音乐,再利用延迟来控制发音世间的长短。对单片机和音乐爱好者有一定借鉴价值。 2设计的主要内容和要求 本设计是基于51系列单片机,蜂鸣器,现实数码管LED的数字音乐盒设计,通过利用I/O一定频率的方波,驱动蜂鸣器发出不同的音调,从而演奏各种乐曲(本设计为三首,若有必要,可以增加),通过LCD可以现实不同的信息,并且可以通过功能键来选择乐曲,暂停,播放,前进,后退等功能。具体如下: 1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲(最少储存三首乐曲,每首不少于30秒)。 2)采用LCD显示信息。 3)开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称)。 4)可通过功能键选择乐曲,暂停,播放。 5)选作内容:显示乐曲播放时间或剩余时间。 6)本设计中用AT89C52单片机,蜂鸣器,七段显示数 3 整体#设计# 3 振荡器扬声器 (方波电(蜂鸣器)路) AT89C52 LED数码管 (显示歌曲曲功能键盘 目) 图3.1设计方框图 由于计算器需要比较多的输入输出口,所以选择内部存储资源比较多的AT89C52单片机,8位LED。 扬声器可以用一个I/O口,采用AT89C52作为运算和控制单元完全满足系统的需求。 4 硬件电路的设计 方波电路:51核片内有一个反向放大器构成振荡器,本系统采用内部方式,在XTAL1和XTAL2端外接石英晶体作为定时元件,内部反向放大器自激振荡,产生时钟发生器对振荡脉冲二分频。电容采用22pF电容。音乐盒的电路设计过程在硬件和软件方面进行同步。其中,硬件方面选择内部分储存资源丰富的AT89C52单片机,时钟采用12MHz晶体振荡电路。 4 4.1整体设计原理图 5 软件设计 软件方面从分析电路各个功能子模块的功能、流程图设计,再到程序的编写设计均进行了综合考虑。编程语言从程序总体设计以及高效性和硬件要求方面考虑,采用汇编语言进行编写。本设计程序的流程如下: 先从主程序开始,接着初始化变量及LED接口,然后出示话方波发生器,晶体管,使LED显示信息,就进入了开机状态,等待动做选择按键,包括播放键,暂停键,停止键,当然也可以选择返回:加入选择的是播放键,LED上就会实现歌曲编号,与此同时演奏相应的乐曲,此时,你可以按上一曲获下一曲键,使其演奏上一个或者先一个乐曲 5 主程序开始开始 初始化变量及LCD接口初始化计数器T0,定时器T1LCD显示英文欢迎字符 N等待按键,是否有按键,包括等待按键,是否有按键,包括播放键,暂停键,停止键播放键,暂停键,停止键 Y 歌曲号及播放时间显示在LCD上依据按键码演奏对应的歌曲 图5.1主控制器程序流程图 6 6 系统仿真 在Proteus的ISIS 7.1sp2软件环境下画出电路原理图,接下来就是将设计的程序在Keil C51 μVision2开发集成环境上编译成机器语言,进入Proteus的ISIS,鼠标左键点击菜单“Debug”, 选中“use romote debuger monitor”,便可实现KeilC与Proteus连接调试。首先在Proteus中双击单片机AT89C51,将KeilC下编程生成的 .HEX文件导入到AT89C51中,可在Proteus中单击全速仿真运行按钮,进行现象的查看,能清楚地观察到芯片上每一个引脚的电平变化,红色代表高电平,蓝色代表低电平;如果现象不正确,则在KeilC中单步调试程序,并在Proteus观察现象,那一步不正确则对该段的程序进行修改,调试直到仿真完全成功为止。 如图6.1所示,该仿真验证的过程为,首先按开始按,然后按下键盘的开始/暂停键,蜂鸣器开始播放音乐。 播放第一首曲目如图所示: 图6.1 键盘扫描LED显示仿真图 7使用说明 7 课程设计采用Protues软件仿真。首先设计数字音乐盒的源程序,源程序经过软件Keil uVision2汇编后,生成的目标文件经过仿真调试。在Proteus中单击全速仿真运行按钮,依次按下扫描键盘上的三个按钮,待三个按钮全部输入后,会在数码管上显数字音乐盒的的曲目编号由七段显示器显示如图6.2所示。 图7.1 数码管动态显示地址仿真图 例如播放曲目三: 图7.2播放曲目三 8设计总结 程序调试中出现的问题及解决的办法: 有时会出现程序一点错误也没有,但就是不能正常运行的现象,最后我们发行是因为程序中有的指令书写得不规范导致的。 编程时要注意,在程序开始时,要写入各定时器中断的入口地址。 编程过程中要注意加注释或分割线,否则,在程序过长时容易变得很乱,不 8 便于查找或更改。 程序的结构要设计的合理,避免上下乱调用的现象,这样会使程序更加清晰化。 编程前要加流程图,这样会使思路清晰,例如数字音乐盒的设计思路完全可以按着MP3的工作方式列写流程图。 本文通过对基于单片机音乐演奏控制设计的研究和设计,分析了设计的实现的意义和可行性。单片机AT89C52是一种非常小巧但功能非常多,应用非常广的一种芯片,功率也非常的小,采用AT89C52作为系统核心制作音乐演奏控制设计电路简单了很多,由于可以反复烧写,为学习降低成本。本设计外部采用单片机的复位电路设计、单片机的震荡电路设计、LED数码管显示正在播放的音乐序号,按键控制等,但由于AT89C52分辨率不是太高,音乐有点单调,另外,由于时间关系具体电路还有的地方不尽完善之处。 参考文献 [1] 李炳宇,萧蕴诗,李永东.AT89C51单片机在多层楼宇对讲系统中的应用[J].自动化与仪 表,2001,38(04):23-25. [2] 李强华,张根宝,段力(基于单片机控制的楼宇对讲系统的设计[J].电气应用,2007, 12(01):04-06. [3] 吴庆元,卢益民.智能小区系统通信的设计[J].通信技术,2003,19(7):98-99. [4] 赵建东,陈小乐.基于Internet的智能家庭网络控制器的实现[J].电子技术应用, 2002,34(12) :23-25. [5] 李建忠.单片机原理及应用[M].西安:西安电子科技大学出版,2002:63-78. [6] 张俊谟.单片机中级教程[M].北京:北京航空航天大学出版,2000:36-45. 附录程序设计 OUT BIT P2.0 ;定义音频输出端口,p2.0 N EQU 3 ;歌曲总数 OUT_NUM EQU P1 ;数码管显视当前所放歌曲曲数 ORG 0000H AJMP MAIN ORG 0003H AJMP LAST_SONG ;外部中断0用于接上一曲歌按键 9 ORG 000BH AJMP F_T0 ;定时器0用于定时,作音符发生器用 ORG 0013H q4: AJMP NEXT_SONG ;外部中断1接下一曲歌按键 ORG 001BH AJMP START_PAUSE ;定时器1用计数,这里用作中断,接开始/暂停键,初值为 0ffH,方式2 ORG 0030H MAIN: MOV SP,#60H MOV DPTR,#TABLE ;DPRT指向每首歌曲的入口地址的地址。 MOV R0,#30H ;R0中存入数据30H,这里在以30H开始的单元存放每 首歌曲的入口地址,其中30H,31H存放 ;歌曲的节拍入口地址,32H,33H存放歌曲音符入口地 址,每首歌占用四个存储存单元。 MOV R5,#00H ;R5中存放表TABLE中正在执行操作的序号 MOV R6,#1 ;R6存放正在设置入口信息的歌曲数 SET_TAB: MOV A,R5 ;设置每首歌曲的入口信息,存放在以30H开始的存储 单元中。 MOVC A,@A+DPTR MOV @R0,A INC R5 INC R0 MOV A,R5 MOVC A,@A+DPTR MOV @R0,A INC R5 INC R0 MOV A,R5 MOVC A,@A+DPTR MOV @R0,A INC R0 INC R5 MOV A,R5 MOVC A,@A+DPTR MOV @R0,A INC R0 INC R5 INC R6 ;设置完一首歌曲后,歌曲数加一 10 CJNE R6,#N+1,SET_TAB ;是否设置完,没有便继续,否则进行下面的操作 ;*********************************** 对中断,计数器的相关参数进行设置 MOV TMOD, #61H ;计数器0工作方式1,计数器1工作方式2 MOV TH1,#0FFH ;给计数器1置初值0FFH,又由于是工作方式2,所以 MOV TL1,#0FFH ;计数器计数为1,相当于一外部中断。 SETB ET1 ;允许计数器1中断 SETB ET0 ;允许计数器具0中断 CLR PT0 ;计数器0为低优先级 SETB PT1 ;计数器1为高优先级 SETB IT0 ;外部中断0为跳沿触发 SETB PX0 ;高优先级 SETB IT1 ;外部中断1为跳沿触发 SETB PX1 ;高优先级 SETB EX1 ;允许外部中断1中断 SETB EX0 ;允许外部中断定0中断 SETB EA ;开中断总开关 SETB TR1 ;定时器1开始工作,作中断用 SETB OUT ;音频输出端口初始化 ;*********************************** ;设置结束 CLR F0 ;设置F0=0,用来作暂停/播放的标置位用 MOV 22H,#01H ;22H单元中存放正在播放的歌曲编号 MOV DPTR,#OUT_TAB ;将正在播放的歌曲编号送数码管显视 MOV A,22H MOVC A,@A+DPTR MOV OUT_NUM,A MOV R7,#00H ;R7中存放歌曲总信息的入口地址 START0:MOV R4,#00H ;R4存放当前正在播放歌曲的第几个节拍数 MOV R0,#30H ;30H开始的单元中存放歌曲的入口信息 MOV A,R7 ;将歌曲的节拍表的入口地址送到DPTR ADD A,R0 MOV R0,A MOV DPH,@R0 11 INC R0 MOV DPL,@R0 INC R0 MOV A,R4 INC R4 MOVC A,@A+DPTR ;取出第一节拍数,其实第一个节拍不是歌曲的第一个节拍,而是表示几分音符 ;**************************************************** MOV 26H,A ;将取出的音符数+节拍数保存在职26H单元中 NEXT: MOV R0,#30H ;开始取出歌曲的第一个数据 MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,@R0 INC R0 MOV DPL,@R0 INC R0 MOV A,R4 INC R4 MOVC A,@A+DPTR ;放在A中 ;**************************************************** JZ END0 ;若为0,则表示为休止符,不唱,本次音符不唱, MOV R1,A ;不为0,取出节拍数 ANL A,#0FH MOV R2,A MOV A,R1 SWAP A ANL A,#0FH JNZ SING ;音符不为0,唱 CLR TR0 ;为0,不唱,关频率发生器 SJMP SING1 SING: DEC A ;开始唱,进行相应的数据处理 MOV R3,A RL A MOV DPH,@R0 INC R0 MOV DPL,@R0 INC R0 12 MOVC A,@A+DPTR MOV 21H,A MOV TH0,A MOV A,R3 RL A INC A MOVC A,@A+DPTR MOV 20H,A MOV TL0,A SETB TR0 ;开唱 SING1:LCALL DELAY ;每个音符唱多久 JB F0,FOR ;是否暂停, AJMP NEXT ;没有暂停,继续 FOR: CLR TR0 ;暂停,不唱 JB F0,$ ;等待播放 AJMP NEXT ;开始播放 END0: CLR TR0 ;不唱 MOV A,22H ;唱完处理 CJNE A,#N,WW ;是不是全部歌曲都唱完 MOV 22H,#01H ;全部唱完,则从第一首开始再唱 MOV R7,#00H MOV OUT_NUM,#06H ;数码管显视第一首歌曲编号 AJMP WWW WW: MOV A,R7 ;没有全部唱完,唱下一首,歌曲的入口信息调整 ADD A,#4 MOV R7,A INC 22H CLR EA PUSH DPH PUSH DPL MOV A,22H MOV DPTR,#OUT_TAB MOVC A,@A+DPTR MOV OUT_NUM,A ;数码管显视相应的歌曲编号 POP DPL POP DPH WWW: SETB EA AJMP START0 ;开始下一首的演唱 13 F_T0: MOV TH0,21H ;定时器0置初值 MOV TL0,20H CPL OUT ;频率产生 RETI NEXT_SONG: PUSH ACC ;下一曲中断程序处理,保护现场 PUSH DPH PUSH DPL CLR EA ;关中断 MOV A,22H CJNE A,#N,Q ;是最后一首吗, MOV R7,#00H ;是最后一首,则R7指向第一首,演唱第一首 MOV 22H,#01H AJMP BACK Q: INC 22H ;不是最后一首,唱下一首,R7内容加4,歌曲数加1 MOV A,R7 ADD A,#4 MOV R7,A BACK: MOV R4,#00H ;数码管显视相应的歌曲编号 MOV A,22H MOV DPTR,#OUT_TAB MOVC A,@A+DPTR MOV OUT_NUM,A ;******************************************** MOV B,R0 ;对下首要演唱的歌曲的几分拍进行调整,同时对R0中的 内容进行保护 MOV R4,#00H MOV R0,#30H MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,@R0 INC R0 MOV DPL,@R0 INC R0 MOV A,R4 INC R4 MOVC A,@A+DPTR MOV 26H,A ;结果存入26H单元中 14 DEC R4 MOV R0,B ;恢复R0中的内容 ;******************************************** POP DPL ;恢复现场 POP DPH POP ACC SETB EA RETI ;中断返回 LAST_SONG: PUSH ACC ;上一曲中断程序处理开始,保护现场 PUSH DPH PUSH DPL CLR EA ;关中断 MOV A,22H ;曲目数送A CJNE A,#1,QQ ;是否是第一首 MOV 22H,#N ;是第一首歌曲 MOV B,#4 ;将R7指向最后一首歌曲 MOV A,#N-1 MUL AB MOV R7,A AJMP BACK2 ;处理结束 QQ: DEC 22H MOV A,R7 ;R7减4 SUBB A,#4 MOV R7,A BACK2: MOV R4,#00H MOV A,22H MOV DPTR,#OUT_TAB MOVC A,@A+DPTR MOV OUT_NUM,A ;数码管显视相应歌曲的编号 ;******************************************** MOV B,R0 ;对下首要演唱的歌曲的几分拍进行调整,同时对R0中的内容进 行保护 MOV R4,#00H MOV R0,#30H MOV A,R7 ADD A,R0 MOV R0,A MOV DPH,@R0 15 INC R0 MOV DPL,@R0 INC R0 MOV A,R4 INC R4 MOVC A,@A+DPTR MOV 26H,A ;结果存入26H单元中 DEC R4 MOV R0,B ;R0中的内容恢复 ;******************************************** POP DPL ;恢复现场 POP DPH POP ACC SETB EA RETI ;中断返回 START_PAUSE:CPL F0 ;开始/暂停中断处理程序,将标置位取反 JB F0,RETURN ;为1返回 SETB TR0 ;为0则播放 RETURN: RETI ;中断返回 DELAY: MOV 27H,26H ;音符演奏时间控制 D2: MOV 28H,#125 D3: MOV 29H,#248 DJNZ 29H,$ DJNZ 28H,D3 DJNZ 27H,D2 DJNZ R2,DELAY RET OUT_TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H,73H ; 共阴数码管显视用 ;OUT_TAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88H,83H,0C6H,0A1H,86H,8EH,0FFH ;共阳 TABLE: DW SONG1,TABLE1,SONG2,TABLE2,SONG3,TABLE3 TABLE1:DW 64580,64684,64777,64820,64898,64968,65030 DW 63628,63835,64021,64103,64260,64400,64524 SONG1: DB 04H ;1=C 2/4 军港之夜 DB 16 32H,54H,52H,32H,54H,52H,32H,12H,12H,32H,32H,54H,52H,32H,52H,52H,32H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14H DB 0C2H,32H,32H,12H,21H,31H,24H,32H,34H,0D2H,0C2H,14H,14H,32H,52H,52H,32H,52H,54H,32H,34H,31H,21H,12H,24H,24H DB 34H,0E2H,0C2H,0D1H,0E1H,0D4H,12H,0E2H,32H,32H,0E2H,0D1H,0E1H,0D4H,0D2H,0E2H,32H,32H,0E2H,0E2H,0D1H,0E1H,0D4H DB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,52H,52H,32H,62H,5H,61H,54H,31H,52H,31H,12H,31H,31H,32H,54H,52H,32H,52H,52H,32H DB 32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,34H,34H,32H,52H,52,32H,62H,51H,61H,54H,31H,52H,31H,12H,32H,12H,32H,32H,54H,52H DB 32H,52H,52H,31H,31H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14H DB 32H,52H,52H,32H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14H DB 0C2H,32H,32H,12H,21H,31H,24H,32H,34H,0D2H,0C2H,14H,14H,32H,52H,52H,32H,52H,54H,32H,34H,31H,21H,12H,24H,24H DB 34H,0E2H,0C2H,0D1H,0E1H,0D4H,12H,0E2H,32H,32H,0E2H,0D1H,0E1H,0D4H,0D2H,0E2H,32H,32H,0E2H,0E2H,0D1H,0E1H,0D4H DB 22H,0D1H,11H,0E2H,0D2H,0C4H,0C4H,32H,52H,52H,32H,62H,5H,61H,54H,31H,52H,31H,12H,31H,31H,32H,54H,52H,32H,52H,52H,32H DB 32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,34H,34H,32H,52H,52,32H,62H,51H,61H,54H,31H,52H,31H,12H,32H,12H,32H,32H,54H,52H DB 32H,52H,52H,31H,31H,32H,21H,31H,24H,0E2H,0D1H,0E1H,0D2H,0C2H,14H,14H DB 32H,52H,52H,32H,32H,21H,31H,24H,74H,0D2H,0C2H,14H,14H,14H,14H DB 00H TABLE2:DW 63835,64021,64103,64260,64400,64524,64580,64684,64777 DW 64820,64898,64968,65030,65058,65110,65157,65178 SONG2: DB 02H ;1=C 4/4 死了都要爱 DB 04H,94H DB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02H DB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H DB 04H,0C2H,0C2H,0D4H,0C2H,0D2H,0D8H,0D4H,0D2H,92H 17 DB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02H DB 0A4H,0A2H,0B2H,0B4H,0C4H,0E8H,0D8H DB 0C8H,0C8H,08H,08H,78H,28H,38H,34H,24H DB 24H,64H,64H,24H,64H,72H,72H,78H,58H,54H,44H,38H,34H,14H,34H,84H,74H,74H,62H,62H,0D8H,78H,28H,38H,34H,24H DB 24H,64H,64H,24H,64H,72H,72H,72H,94H,92H,94H,0A4H,58H,58H,54H,44H ;#音不准 DB 58H,58H,58H,58H,0A8H,0A8H,0A4H,0B4H,0A4H,84H,0A4H,94H,98H,98H,08H DB 84H,82H,82H,82H,82H,94H,0A2H,94H,92H,82H,74H,72H,74H,72H,72H,72H,72H,92H,91H,91H,94H,54H,74H,94H ;;************************************************* DB 0A8H,0A4H,0A2H,0B2H,0C4H,0B4H,0A4H,0A4H,0A4H,92H,92H,98H,82H,72H,78H,04H,0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H DB 04H,0C4H,0D4H,0C4H,0C8H,04H,94H DB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02 DB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H,04H,0C2H,0C2H,0D4H,0D8H,0D4H,0D2H,92H DB 0E8H,0E4H,0E4H,0E8H,0E4H,0F4H,0D4H,0C4H,0B4H,84H,84H,92H,92H,94H,92H,02 DB 0A4H,0A2H,0B2H,0B4H,0C4H,84H,82H,92H,94H,0A4H,04H,0C2H,0C2H,0D4H,0D8H,0D4H,0D2H,92H ;************* DB 0A4H,0A2H,0B2H,0B3H,0C4H,0E8H,0D8H DB 0C8H,0C8H,0C8H,08H DB 00H TABLE3: DW 64898,64968,65030,65086,65135,65158,65199,64260,64400,64524,64580,64684,64777,64862 SONG3: DB 03H ;G=2/4 中华人民共和国国歌 DB 04H,04H,0C2H,14H,12H,12H,12H,11H,11H,0C2H,0D1H,0E1H,14H,14H,02H,32H,12H,21H,31H,52H,51H,51H,54H DB 32H,31H,31H,12H,11H,31H,52H,51H,31H,24H,24H,24H,64H,54H,24H,34H,52H,34H,52H,32H,21H,31H,12H,11H,21H,34H,04H DB 18 52H,51H,0D1H,12H,12H,32H,31H,31H,52H,51H,51H,22H,22H,22H,0D2H,0D1H,0D1H,24H,22H,0C2H,14H,12H,12H,34H,32H,32H,54H,54H,54H,54H DB 12H,11H,31H,52H,51H,51H,64H,54H,32H,31H,11H,52H,52H,52H,32H,02H,12H,02H,0C4H,14H DB 0A2H,0A1H,11H,52H,52H,52H,32H,02H,12H,02H,0C4H,14H,0C4H,14H,0C4H,14H,14H,04H DB 04H,04H,04H,04H DB 00H END; 19
/
本文档为【数字音乐盒】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索