文档库 最新最全的文档下载
当前位置:文档库 › 微机原理课程设计音乐播放器

微机原理课程设计音乐播放器

微机原理课程设计音乐播放器
微机原理课程设计音乐播放器

一、课程设计的任务和目的

课程设计题目:音乐播放器

课程设计的实现目的:本课程设计主要是通过汇编语言用软件编程的方法实现简单的音乐播放功能。通过在《微机原理与接口技术》课程上所学的汇编知识和8253/8254芯片相关知识,来完成本课程设计;用汇编程序完成键控音乐播放器的,用8253/8254定时器来产生声音。该播放器有若干首歌曲可以选择,开始时输出说明,要用户选择要播放的歌曲,然后根据用户按键进行播放、退出或出错提示。通过课程设计环节来加强对所学知识的理解和应用。

二、课程设计相关知识

2.1 定时/计数器8253/58254

在微机及控制系统中,经常要用到定时信号。如系统的日历时钟,动态存储器刷新。对外部执行机构控制时也需要定时中断、定时检测、定时查询等。定时的方法主要是两种:软件定时:利用指令的执行时间设计循环程序,使CPU 执行延迟子程序的时间就是定时时间。缺点:执行延迟时,CPU 一直被占用,降低了CPU 的效率。

硬件定时:用计数器/定时器作为主要硬件,在软件简单指令的控制下产生精确的时间延迟。突出优点为计数时不占用CPU 时间,如利用定时器/计数器产生中断信号,可建立多作业环境,提高了CPU 效率。

作为定时器可用8253或者8254,二者功能基本相同,知识工作的最高频率不一样。本实验就采用了8254,其主要功能为:

(1)每片上有3 个独立的16 位的减计数器通道。

(2)对于每个计数器,都可以单独作为定时器或计数器使用,并且都可以按照二进制或十进制来计数。

(3)每个通道都有6 种工作方式,都可以通过程序设置或改变。

(4)每个计数器的速率可高达10MHz。

主要部分有:数据总线缓冲器、读/写控制逻辑、控制字寄存器、计数通道0#、1#、2#:内部结构如下图:

8254内部结构

2.2 8254外部引脚

8254芯片是具有24个引脚的双列直插式集成电路芯片,其引脚分布如图所示。8254芯片的24个引脚分为两组,一组面向CPU,另一组面向外部设备,各个引脚及其所传送信号

的情况,介绍如下:

8254的引脚

(1)D7~D0:双向、三态数据线引脚,与系统的数据线连接,传送控制、数据及状态信息。

(2)RD:来自于CPU的读控制信号输入引脚,低电平有效。

(3)WR:来自于CPU的写控制信号输入引脚,低电平有效。

(4)CS:芯片选择信号输入引脚,低电平有效。

(5)A1、A0:地址信号输入引脚,用以选择8254芯片的通道及控制字寄存器。(6).VCC 及GND:+5V电源及接地引脚。

(7)CLKi: i=0,1,2,第i个通道的计数脉冲输入引脚,8254规定,加在CLK引脚的输入时钟信号的频率不得高于2.6MHZ,即时钟周期不能小于380ns。

(8)GATEi: i=0,1,2,第i个通道的门控信号输入引脚,门控信号的作用与通道的工作方式有关。

(9)OUTi:i=0,1,2,第i个通道的定时/计数到信号输出引脚,输出信号的形式由通道的工作方式确定,此输出信号可用于触发其它电路工作,或作为向CPU发出的中断请求信号。

2.3 8254端口地址

8254控制字

说明:

(1) 8254每个通道对输入CLK按二进制或二十进制从预置值开始减1计数,减到0时从OUT输出一个信号。

(2) 8254编程时先写控制字,再写时间常数。

2.4 8254工作方式

(1) 方式0:计数结束产生中断方式

当写入控制字后,OUT变为低电平,当写入初值后立即开始计数,当计数结束时,变成

高电平。

(2) 方式1:可编程单次脉冲方式

当初值装入后且GATE由低变高时,OUT变为低电平,计数结束变为高电平。

(3) 方式2:频率发生器方式

当初值装入时,OUT变为高;计数结束,OUT变为低。该方式下如果计数未结束,但

GATE为低时,立即停止计数,强制OUT变高,当GATE再变高时,便启动一次新的计数周期。

(4) 方式3:方波发生器

当装入初值后,在GATE上升沿启动计数,OUT 输出高电平;当计数完成一半时,OUT

输出低电平。方式3与方式2的工作方式类似,也是在初始化完成后能重复循环计数,只是

输出的波形不同。

(5)方式4:软件出发选通方式

进入工作方式4,OUTi输出高电平。装入计数值n后,如果GATE为高电平,则立即开始减“1”计数,直到计数值减到“0”为止,OUTi输出宽度为一个CLKi周期的负脉冲。由软件装入的计数值只有一次有效,如果要继续操作,必须重新置入计数初值n。如果在操作的过程中,GATE变为无效,则停止减“1”计数,到GATE再次有效时,重新从初值开始减“1”计数。

(6)方式5:硬件触发方式计数

进入工作方式5,OUTi输出高电平,硬件触发信号由GATE端引入。因此,开始时GATE应输入为0,装入计数初值n后,减“1”计数并不工作,一定要等到硬件触发信号由GATE端引入一个正阶跃信号,减“1”计数才会开始,待计数值计到“0”,OUTi将输出负脉冲,其宽度固定为一个CLKi周期,表示定时时间到或计数次数到。

三、程序设计思路

所有音乐都是由各个不同频率的音阶和其延续时间的长短来实现的。不同的音乐是由各

个音阶按某种排列各自播放一定时间形成的,将各音乐音阶和其延续时间存在数据段中,然

后根据不同按键值选择不同的音阶和时间表,再使用计数器产生该音阶频率。

CPU通过对定时器的通道2(端口地址为42)进行编程,使其I/O寄存器接收一个控制声音频率的16位计数值,端口61H的最低控制通道2门控的开断。以产生特殊的音响。当定时器接收的计数值为533H时,能产生896Hz的声音,因此产生其他频率的计数值就可算出来:

533Hz×896÷频率=1234DC÷频率

在送出频率计数值之前,还要给方式寄存器送一个方式值,该数决定对哪一个通道编程,采用什么模式,送入通道的计数值是一字节还是两字节,是二进制码还是BCD码。其位组合的格式如下:

当通道2用于发声时,采用的是模式3,在模式3下,输出线为“1”和为“0”的时间各占计数时间的一半,因而产生一系列间隔均匀的脉冲。

产生指定频率声音的程序段如下:

MOV AL,0B6H

OUT 43H,AL ;43H为8254的控制字端口

MOV DX,12H

MOV AX,34DCH

DIV DI ;(DI)=频率

OUT 42H,AL ;42H为8254的通道2端口

MOV AL,AH

MOV 42H,AL

从定时器输出的方波信号,经功率放大和滤波后驱动扬声器。送到扬声器的信号还受到了从并行接口芯片8255(端口地址为61H)来的双重控制,端口61H的最低位控制通道2的门控开断,以产生特殊的音频信号,端口61H的PA1位和定时器的输出信号同时作为与门的输入,PA0和PA1位可由程序决定为0还是为1。显然只有PA0和PA1都是1时,才能使扬声器发出声音。控制音长的时间可以简单地通过反复执行指令来得到。我们知道执行2801次LOOP指令约需要10MS的时间。因此用10MS的倍数值来控制扬声器开关的时间间隔,就可控制发声的音长了。实现程序如下:

IN AL,61H

MOV AH,AL

OR AL,3

OUT 61H,AL ;开扬声器

L: MOV CX,2801

DY:LOOP DY

DEC BX

JNZ L

MOV AL,AH

OUT 61H,AL ;关扬声器

四、功能流程图及子程序说明

1、总流程图

MAIN程序:MAIN程序是总程序,输出说明,等待用户按键并读取键值。根据不同的按键选择调用播音子程序播放不同的歌曲。

程序总流程图

2、音乐播放子程序流程图

PLAY子程序:PLAY子程序是播音子程序,SI指向音节表中的频率,BP指向音节表中的时间。从SI的指向的音节表中取一个频率,只要不是-1,即有效就再读取时间,然后计算计数初值送入计数器,产生各种频率。开启扬声器,根据所取的时间调用若干次延时子程序。这段时间扬声器就发出该频率的声音,延时结束,就关闭扬声器,调用音节之间的小延时程序。最后修改SI和BP,指向下一个频率,重复上面的工作

DELAY子程序和DELAY_OFF子程序:两个都是子程序,采用空操作循环多次的方法,只是第二个延时时间较短,大概为5ms。

播音流程图

五、试验结果截屏:

初始界面:

如果按错了键,会出现如下界面:

如果选择正确,将出现如下界面:

六、参考文献

【1】李长青. 微机原理与接口技术. 徐州:中国矿业大学出版社,2006

【2】沈美明. 汇编语言程序设计实验教程. 北京:清华大学出版社,2002年

【3】周明德. 微机原理与接口技术. 北京:人民邮电出版社,2002年

七、总结

在本次设计中,可以说是一次成功的经验。在我们学完了《微型计算机原理与接口技术》这门课的基础上来做这个设计,通过设计后,使我们对这门课的理论知识的理解有很大程度上的加强。微机原理这门课程本身是一门实验性和工程性很强的专业技术课,因此不仅要重视理论教学,更应注意实践技能的培养和训练。课程设计是这门课程的一个重要环节,通过课程设计,巩固、加深和拓宽了学习的理解,本课程设计的重点目标是使用汇编语言,而不过多涉及硬件方面的太多知识。

在编程方面我通过本次课程设计学到了很多。一开始面对很长的程序往往有畏难情绪,感觉无法下手,没办法只能硬着头皮啃下去,多看几个和音乐播放有关的汇编程序,然后我就能慢慢看懂了并理解了别的作者的设计思路。然后再根据自己的思路,对照本人在图书馆借的汇编语言指导书慢慢编写符合自己思路的程序。一次写出来的程序肯定不会是正确的,还需要进一步调试它。检查程序过程中,在充分思考的基础上多次实验是检查改正程序的良方。编写程序的过程中,体会最深的是子程序的调用和程序的条理问题,一个程序就算功能实现了,但是也要使主程序和子程序的条理分明,易读性高,才能算一个比较好的程序。调试程序中,学习了DEBUG 的使用,DEBUG对检查程序的错误作用很大。同时,也要灵活使用各种调试方法,来缩小寻找错误的范围。

书到用时方恨少。在课程设计过程中,我才体会到这句话的深意。课堂上学的8254的知识和汇编语言都太少,还不足以完成本次课设,为此我经常跑图书馆借了各种各样的工具书。有的书用处较大,有的书仅能用到一小块知识,就是这样,一步步在知识的海洋里我寻觅着自己需要的东西,确实克服了不少困难,解决了不少问题。或许坎坷才能更好的使人成长。在这次的课程设计中,我的收获是不但做出了一个符合要求的音乐播放器,而且为自己积累了一些宝贵的经验。同时我也对音乐方面的频率知识有了一些认识,我想如果不是本次课程设计中用到这方面知识,我这辈子可能没有机会去接触这方面的知识了。这,或许也是我比别的同学多出的一点收获吧!

六、附录

1、源程序代码:

SSEG SEGMENT PARA STACK 'stack'

dw 100h dup(0) ;Resize the stack by changing the number '100'

SSEG ENDS

DSEG SEGMENT

INFO1 DB 0DH,0AH,'--------------------------',0DH,0AH,'THERE ARE 3 SONGS:',0DH,0AH,0DH,0AH,'$' INFO2 DB '1.HAPPY BIRTHDAY',0DH,0AH,'$'

INFO3 DB '2.SHEEP',0DH,0AH,'$'

INFO4 DB '3.RIVER',0DH,0AH,'$'

INFO5 DB '0.EXIT',0DH,0AH,'$'

INFO6 DB 'YOU HAVE CHOSEN :$'

INFO7 DB 'THANK YOU FOR YOUR USE',0DH,0AH,'$'

INFO8 DB '---------------------------',0DH,0AH,'PRESS THE KEY TO SELECT SONG!',0DH,0AH,'$'

INFO9 DB 0DH,0AH,'-------------------',0DH,0AH,'|INVALID

SELECTION|',0DH,0AH,'-------------------',0DH,0AH,'$'

FREG1 DW 2 dup(262),294,262,349,262,262,294,262,392,249,262,262,523,440,349 ;曲1的频率DW 330,294,466,266,440,349,392,349,-1

TIME1 DW 1,1,2,2,2,4,1,1,2,2,2,4,1,1,2,2,2,2,4,1,1,2,2,2,4 ;曲1的时间FREG2 DW 330,294,262,294,3 DUP(330) ;曲2的频率DW 3 DUP(294),330,392,392

DW 330,294,262,294,4 DUP(330)

DW 294,294,330,294,262, -1

TIME2 DW 6 DUP(1),2 ;曲2的时间DW 2 DUP(1,1,2)

DW 12 DUP(1),4

FREG3 DW 330,392,330,294,330,392,330,294,330,330,392,330,294,262,294,330,392,294 ;曲3的频率DW 262,262,220,196,220,262,294,332,262, -1

TIME3 DW 3 DUP(2),1,1,2,1,1,4 ;曲3的时间DW 2 DUP(2,2,1,1),4

DW 3 DUP(2,1,1,1),4

DSEG ENDS

CSEG SEGMENT

assume cs:CSEG, ds:DSEG, es:DSEG, ss:SSEG

INIT PROC ;初始化程序mov ax, dseg

mov ds, ax

mov es, ax

INIT ENDP

MAIN PROC ;程序入口

call INIT

RE: MOV DX,28BH ;关闭扬声器MOV AL,89H

OUT DX,AL

MOV DX,28AH

IN AL,DX

MOV DX,288H

OUT DX,AL

LEA DX,INFO1 ;输出说明信息MOV AH,09H

INT 21H

LEA DX,INFO2

INT 21H

LEA DX,INFO3

INT 21H

LEA DX,INFO4

INT 21H

LEA DX,INFO5

INT 21H

LEA DX,INFO8

INT 21H

MOV AH,01H ;读取按键

INT 21H

CMP AL,'1' ;根据不同的按键播放不同的曲子JE MUSIC1

CMP AL,'2'

JE MUSIC2

CMP AL,'3'

JE MUSIC3

CMP AL,'0'

JE EXIT

LEA DX,INFO9 ;无效选择,输出错误提示

MOV AH,09H

INT 21H

JMP RE

MUSIC1:

MOV SI,OFFSET FREG1 ;指向曲1的表

MOV BP,OFFSET TIME1

CALL PLAY

JMP RE

MUSIC2:

MOV SI,OFFSET FREG2 ;指向曲2的表

MOV BP,OFFSET TIME2

CALL PLAY

JMP RE

MUSIC3:

MOV SI,OFFSET FREG3 ;指向曲3的表

MOV BP,OFFSET TIME3

CALL PLAY

JMP RE

EXIT:

MOV DX,28BH ;关闭扬声器

MOV AL,89H

OUT DX,AL

MOV DX,28AH

IN AL,DX

OUT DX,AL

LEA DX,INFO7 ;输出欢迎使用信息,增加界面友好度MOV AH,09H

INT 21H

mov ax, 4c00h ;The end of the program, return to the system

int 21h

MAIN ENDP

PLAY PROC ;PLAY子程序,功能上面介绍过

L1: MOV BX,DS:[SI] ;取频率

CMP BX,-1 ;看是否有效

JE L0 ;无效就退出

MOV CX,DS:[BP] ;读取时间

MOV DL,CL ;保存时间

ADD DL,30H

MOV AH,02H

INT 21H

MOV DX,0FH ;计算计数初值,1M的十六进制为0F4240H MOV AX,4240H

DIV BX

MOV BX,AX

MOV DX,283H ;设置计数器工作方式

MOV AL,36H

OUT DX,AL

MOV DX,280H ;输入计数初值

MOV AX,BX

OUT DX,AL

MOV AL,AH

OUT DX,AL

MOV DX,28BH ;开扬声器

MOV AL,89H

OUT DX,AL

MOV DX,28AH

IN AL,DX

NOT AL

MOV DX,288H

OUT DX,AL

ROD:CALL DELAY ;延时

LOOP ROD

MOV DX,28BH ;关扬声器

MOV AL,89H

MOV DX,28AH

IN AL,DX

MOV DX,288H

OUT DX,AL

CALL DELAY_OFF ;音节间延时ADD SI,2

ADD BP,2

JMP L1

L0: RET

PLAY ENDP

DELAY PROC ;延时子程序

PUSH AX

PUSH BX

PUSH CX

PUSH DX

MOV BX,09FH

LL1:MOV CX,0FFFFH ;循环这么多次LOP: LOOP LOP

DEC BX

JNZ LL1

POP DX

POP CX

POP BX

POP AX

RET

DELAY ENDP

DELAY_OFF PROC

PUSH AX

PUSH BX

PUSH CX

PUSH DX

MOV BX,0FH

LL2:MOV CX,0CFFFH

LOP2: LOOP LOP2

DEC BX

JNZ LL2

POP DX

POP CX

POP BX

POP AX

RET

DELAY_OFF ENDP

CSEG ENDS

END MAIN

2、各个音符的对应频率表:

音符频率/HZ 半周期/us 音符频率/HZ 半周期/us

低1DO 262 1908 #4FA# 740 0676 #1DO# 277 1805 中5SO 784 0638 低2RE 294 1700 #5SO# 831 0602 #2RE# 311 1608 中6LA 880 0568 低3M 330 1516 #6LA# 932 0536 低4FA 349 1433 中7SI 988 0506 #4FA# 370 1350 高1DO 1046 0478 低5SO 392 1276 #DO# 1109 0451 #5SO# 415 1205 高2RE 1175 0426 低6LA 440 1136 #2RE# 1245 0402 #6LA# 466 1072 高3M 1318 0372 低7SI 494 1012 高4FA 1397 0358 中1DO 523 0956 #4FA# 1480 0338 #1DO# 554 0903 高5SO 1568 0319 中2RE 578 0842 #5S0# 1661 0292 #2RE# 622 0804 高6LA 1760 0284 中3M 659 0759 #6LA# 1865 0268 中4FA 698 0716 高7SI 1976 0253

微机原理课程设计报告交通灯

WORD格式微机原理课程设计 设计题目交通灯的设计 实验课程名称微机原理 姓名王培培 学号080309069 专业09自动化班级2 指导教师张朝龙 开课学期2011至2012学年上学期

一、实验设计方案 实验名称:交通灯的设计实验时间:2011/12/23 小组合作:是□否?小组成员:无 1、实验目的: 分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。(红,黄,绿三色灯) 2、实验设备及材料: 微机原理和接口技术实验室的实验箱和电脑设备等。 3、理论依据: 此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255 的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的 三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK,2 OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。OUT2产生 1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本 输入输出方式,红绿灯的转换由软件编程实现。

4、实验方法步骤及注意事项: ○1设计思路 红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1 控制。 设8253各口地址分别为:设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2 为04A4H,命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时 间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。 由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方 式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方 式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1s,因此 通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以 通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H 既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测 到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086 共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态 反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态 变化,计9次状态变化可完成5次闪烁。 三个通道的门控信号都未用,均接+5V即可。 ○ 2硬件原理及电路图 由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A 0 线分别与 8086CPU的A2、A线相连,而将8086的 1 A 0 线作为选通信号。如果是按8255A内部地址来看, 则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

微机原理课程设计电压报警器实验报告

南通大学电子信息学院 微机原理课程设计 报告书 课题名: 班级: 姓名: 学号: 指导老师: 日期: xxx

目录 1.设计目的 (2) 2.设计内容 (2) 3.设计要求 (2) 4.设计原理 (3) 5.硬件电路图 (3) 6.程序代码 (5) 7.程序及硬件系统调试情况 (19) 8.设计总结与体会 (19)

一、设计目的 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 二、设计内容 设计一个电压报警器,要求采集实验箱提供的0~5V的电压,当输入电压在3V以内,显示电压值,如2.42。当输入电压超过3V,显示ERR,并报警。电压值可在七段数码管显示,点阵广告屏显示或液晶屏显示。报警形式自行设计,

音乐播放器的详细设计

音乐播放器详细设计 1.引言 随着社会的快速发展,现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,音乐成了我们生活工作中的一个重要的部分。而3G时代的到来,手机移动应用越来越普遍。此文档就是为了能更好地设计出一个基于android系统的音乐播放器而编写的。 1.1 编写目的 为软件的开发者能更好的理解和明确软件开发的详细过程,安排项目与进度、组织软件开发与测试,撰写本文档。本文档供项目组成员,软件开发人员参考。1.2项目背景 本项目由李雪梅、杨挺等人提出,由本组成员联合开发,实现播放现今流行的音乐MP3等文本格式。 该软件是基于Android系统的音乐播放软件,并能够与其他音乐播放软件兼容。 1.3 参考资料 [1] 重庆大学出版社《软件工程》“软件计划与可行性分析” [2] 靳岩、姚尚明人民邮电出版社《Android开发入门与实践》 [3] 可行性分析 [4] 《音乐播放器需求分析书》 [5] 《音乐播放器总体设计说明书》 1.4项目开发计划 实施计划:

阶段名称负责人 需求分析杨挺、李雪梅 总体设计李雪梅、杨挺 详细设计李雪梅、杨挺 软件测试李雪梅、杨挺 在技术方面,编程知识比较缺乏,对有些与项目相关的软件 不熟悉,需进行人员的技术培训(自学为主),技术难点是数据库的构架和软件功能的设计。 2. 总体设计 2.1 项目目的 本项目的目的是开发一个可以播放主流的音乐文本格式的播放器。设计的主要实现功能是播放MP3等格式的音乐文件,并且能控制播放,暂停,停止,音量控制,选择上一曲,选择下一曲,更改皮肤,歌曲列表文件的管理操作,在线播放,读取 存储卡播放等多种播放控制,界面简明,操作简单。 软件系统检测到错误行为时,报告错误,并提示处理操作。 2.2 软件运行环境 硬件:Android操作系统手机 系统软件:Android 2.2 -- 4.0版本 支撑软件:Eclipse 7.5 、ADT 1.5 2.3 需求概述

微机原理课程设计报告

微机原理课程设计报告 课程设计是每一个大学生在大学生涯中都不可或缺的, 它使我们在实践中了巩固了所学的知识、在实践中锻炼自己的动手能力,本文就来分享一篇微机原理课程设计报告,希望对大家能有所帮助! 微机原理课程设计报告(一)以前从没有学过关于 汇编语言的知识,起初学起来感觉很有难度。当知道要做课程设计的时候心里面感觉有些害怕和担心,担心自己不会或者做不好。但是当真的要做的时候也只好进自己作大的努力去做,做到自己最好的。 我们在这个过程中有很多自己的感受,我想很多同学都 会和我有一样的感受,那就是感觉汇编语言真的是很神奇,很有意思。我们从开始的担心和害怕渐渐变成了享受,享受着汇编带给我们的快乐。看着自己做出来的东西,心里面的感觉真的很好。虽然我们做的东西都还很简单,但是毕竟是我们自己亲手,呵呵,应该是自己亲闹做出来的。很有成就感。 我想微机原理课程设计和其他课程设计有共同的地方, 那就是不仅加深和巩固了我们的课本知识,而且增强了我们自己动脑,自己动手的能力。但是我想他也有它的独特指出,那就是让我们进入一个神奇的世界,那就是编程。对于很多学过汇编或者其他的类似程序的同学来说,这不算新奇,但是对于我来说真的新奇,很有趣,也是我有更多的兴趣学习微机原理和其他的汇编。 微机原理与接口技术是一门很有趣的课程,任何一个计 算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。讨论某一部分原理时又要涉及到其它部分的工作原理。这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。 学习该门课程知识时,其思维方法也和其它课程不同,

嵌入式MP3播放器的设计

嵌入式MP3播放器的设计 1 系统概述 本文采用STM32系列微控制器,结合解码芯片VS1003、SD卡、LCD等外围设备设计并实现了MP3播放器。其主要功能有:播放VS1003支持的所有音频文件,如MP3、WMA、WAV文件,且音质非常好;通过触摸屏实现按键功能,控制播放上一首/下一首、音量增减等;通过LCD显示歌曲名字和播放状态;本系统还实现了读卡器功能,PC机可通过USB接口直接对开发板上的SD卡进行读写操作,以方便拷贝音频文件。 MP3播放过程是STM32通过SPI1接口将数据从SD卡中取出,然后通过SPI2接口送至解码芯VS1003解码播放。这里解码模块单独使用一个SPI接口,以减小干扰和噪声、提高音质。 2 系统硬件设计方案 本系统在硬件上分为6个模块: 微控制器STM32F103、解码模块VS1003、存储模块SD卡、触摸屏、USB接口和显示屏LCD。系统硬件框架如图5所示。 VS1003 STM32 图5 系统硬件框架图 2.1 存储模块设计 SD卡在现在的日常生活与工作中使用非常广泛,时下已经成为最为通用的数据存储卡。在诸如MP3、数码相机等设备上也都采用SD卡作为其存储设备。SD卡之所以得到如此广泛的使用,是因为它价格低廉、存储容量大、使用方便、通用性与安全性强等优点。SD卡支持两种总线方式: SD方式与SPI方式。其中SD 方式采用6线制,而SPI方式采用4线制,采用单片机对SD卡进行读写时一般都采用SPI模式。可用不同的初始化方式使SD卡工作于SD方式或SPI方式。 在本设计中,音频数据MP3文件是以SD卡为载体。所以在电路设计中必须含有读取SD卡模块。该系统使用STM32内部接口SPI1与SD卡进行通信,下面介绍其引脚连接情况。 PE3:低电平有效,连接到SD卡的片选引脚CD/DAT3。SPI在和SD卡进行通

基于51单片机的音乐播放器设计

题目:音乐播放器 课程设计(论文)任务书

摘要 随着电子技术的发展和计算机越来越普遍的使用,单片机作为这两项技术的有机结合也得到了广泛的应用,在某些领域具有不可替代的作用。音乐播放功能随处都会用到,如,在开发儿童智力的玩具中,等等。目前,基于单片机实现音乐播放,其体积小、价格低、编程灵活等特点在这一领域独领风骚。 单片机的英文名称为single chip microcomputer,最早出现在20世纪70年代,国际上现在已逐渐被微控制器(Microcontroller Unit 或MCU)一词所取代。它体积小,集成度高,运算速度快,运行可靠,功耗低,价格廉,因此在数据采集、智能化仪表、通讯设备等方面得到了广泛应用。而8051单片机在小到中型应用场合很常见,已成为单片机领域的实际标准。随着硬件的发展,8051单片机系列的软件工具也有了C级编译器和实时多任务操作系统RTOS,为单片机编程使用C语言提供了便利的条件;并针对单片机常用的接口芯片编制通用的驱动函数,可针对常用的功能模块,算法等编制相应的函数;C语言模块化程序结构特点,可以使程序模块大家共享,不断丰富,这样就使得单片机的的程序设计更简单可靠,实时性强,效率高。作为测控技术与仪器的学生,掌握8051单片机硬件基础及其相关软件操作,将其应用于现代电子产品中是必要而且重要的,这次课程设计我们的题目是用单片机实验箱系统制作音乐播放器。 本次课程设计主要内容是通过单片机C51语言进行编程,以产生乐曲音符和节拍,把乐谱翻译成计算机语言(音符转换诚成相对应的方波频率即定时器装载初值,节拍转换成相对应的延长时间),并将其预先存储到单片机里,然后根据按键调用再由单片机进行信息处理,在经过信号放大,由喇叭放出乐曲声,实现音乐播放的功能。其主要表现在可以播放十首歌曲,可以用十个数字键控制播放的歌曲,并且能在LCD液晶屏显

微机原理课程设计报告

微型计算机技术课程设计 指导教师: 班级: 姓名: 学号: 班内序号: 课设日期: _________________________

目录 一、课程设计题目................. 错误!未定义书签。 二、设计目的..................... 错误!未定义书签。 三、设计内容..................... 错误!未定义书签。 四、设计所需器材与工具 (3) 五、设计思路..................... 错误!未定义书签。 六、设计步骤(含流程图和代码) ..... 错误!未定义书签。 七、课程设计小结 (36)

一、课程设计题目:点阵显示系统电路及程序设计 利用《汇编语言与微型计算机技术》课程中所学的可编程接口芯片8253、8255A、8259设计一个基于微机控制的点阵显示系统。 二、设计目的 1.通过本设计,使学生综合运用《汇编语言与微型计算机技术》、《数字电子技术》等课程的内容,为今后从事计算机检测与控制工作奠定一定的基础。 2.掌握接口芯片8253、8255A、8259等可编程器件、译码器74LS138、8路同相三态双向总线收发器74LS245、点阵显示器件的使用。 3.学会用汇编语言编写一个较完整的实用程序。 4.掌握微型计算机技术应用开发的全过程,包括需求分析、原理图设计、元器件选用、布线、编程、调试、撰写报告等步骤。 三、设计内容 1.点阵显示系统启动后的初始状态 在计算机显示器上出现菜单: dot matrix display system 1.←left shift display 2.↑up shift display 3.s stop 4.Esc Exit 2.点阵显示系统运行状态 按计算机光标←键,点阵逐列向左移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标↑键,点阵逐行向上移动并显示:“微型计算机技术课程设计,点阵显示系统,计科11302班,陈嘉敏,彭晓”。 按计算机光标s键,点阵停止移动并显示当前字符。 3.结束程序运行状态 按计算机Esc键,结束点阵显示系统运行状态并显示“停”。 四.设计所需器材与工具 1.一块实验面包板(内含时钟信号1MHz或2MHz)。 2.可编程芯片8253、8255、74LS245、74LS138各一片,16×16点阵显示器件一片。

音乐播放器的设计与实现

德州学院信息管理学院 课程设计报告实习名称课程设计2 设计题目Android音乐播放器的设计与实现实习时间 专业班级12级计算机科学与技术 指导老师刘想 教学单位(盖章) 小组成员分工情况: 学号姓名分工 3018 周生明音乐播放的设计与实现1052曹法瑞 1040 张正奎 1055 李元华 2049 王山 二〇一五年六月三十日

目录 摘要 ................................................................................................................ 错误!未定义书签。 1 引言 ............................................................................................................ 错误!未定义书签。 2 可行性分析................................................................................................. 错误!未定义书签。 2.1 技术可行性...................................................................................... 错误!未定义书签。 2.2 经济可行性...................................................................................... 错误!未定义书签。 2.3 管理可行性...................................................................................... 错误!未定义书签。 2.4 可行性分析结论.............................................................................. 错误!未定义书签。 3 系统需求分析............................................................................................. 错误!未定义书签。 3.1 功能分析.......................................................................................... 错误!未定义书签。 3.2 数据流程分析.................................................................................. 错误!未定义书签。 4 系统功能设计............................................................................................. 错误!未定义书签。 4.1 播放器功能结构.............................................................................. 错误!未定义书签。 4.1.1 播放器主界面功能模块....................................................... 错误!未定义书签。 4.1.2 播放器菜单功能模块........................................................... 错误!未定义书签。 4.2 播放器功能流程.............................................................................. 错误!未定义书签。 5 系统实现..................................................................................................... 错误!未定义书签。 5.1 播放器主界面功能列表.................................................................. 错误!未定义书签。 5.2 播放器基本功能的实现.................................................................. 错误!未定义书签。 5.3 播放列表的实现.............................................................................. 错误!未定义书签。 6 软件测试与验证......................................................................................... 错误!未定义书签。 6.1 软件测试的目的.............................................................................. 错误!未定义书签。 6.2 软件测试的方法.............................................................................. 错误!未定义书签。 6.3 软件测试环境.................................................................................. 错误!未定义书签。 6.3.1 android模拟器 ...................................................................... 错误!未定义书签。 6.3.2 真机测试............................................................................... 错误!未定义书签。 6.4 软件测试流程与结果评估.............................................................. 错误!未定义书签。 6.4.1 测试流程............................................................................... 错误!未定义书签。 6.4.2 结果评估............................................................................... 错误!未定义书签。

汇编与微机原理课程设计报告

微机接口课程设计报告 (题目:模拟自动门) 指导老师郭兰英 班级2015240204

目录 一概述 (1) 1.1 课程设计名称 (1) 1.2 课程设计要求 (1) 1.3 课程设计目的 (1) 二设计思想 (1) 三实施方案 (2) 3.1 获得传感器和“门”的状态 (2) 3.2 驱动步进电机和点阵模块 (2) 3.3 实现硬件延时 (3) 四硬件原理 (3) 4.1 中断控制器8259 (4) 4.2并行接口8255 (4) 4.3 定时/计数器8254 (5) 4.4 点阵LED显示屏 (5) 4.5 步进电机 (6) 4.6 红外距离传感器 (7) 五软件流程 (8) 六程序运行结果及分析 (11) 6.1 开门状态 (11) 6.2 关门状态 (12) 6.3 关门操作进行时中断到开门操作 (14)

6.4特殊状态 (15) 七个人感想 (16) 八附录 (18)

一、概述 1.1课程设计名称 模拟自动门 1.2课程设计要求 1)用汇编语言编程完成硬件接口功能设计。 2)硬件电路基于80x86微机接口。 3)程序功能包含:步进电机转动、点阵显示开关门、传感器检测是否有人、8254延时。 4)传感器检测有人时开门,门全开后延时几秒关门,若关门时检测到有人,立刻开门。 1.3课程设计目的 通过本课程设计,让学生对微机系统有一个较面的理解,对典型数字接口电路的应用技术有一个较深入的掌握,并对应用系统进行硬件原理和软件编程进行分析、设计和调试,达到基本掌握简单微型计算机应用系统软硬件的设计方法,提高项目开发能力的目的。要求同学分组完成课题,写出课程设计说明书,画出电路原理图,说明工作原理,编写设计程序及程序流程图。 二、设计思想 本程序主要功能是模拟商场等公共场所的自动门,实现有物体靠近并被传感器检测到时发生一系列变化的效果,模拟实现开门关门的功能。 为了尽量模拟真实场景下的自动门状态变化,本程序主要可以实现以下功能: 1、当传感器可检测范围内检测到物体,并且“门”为“关”的状态,立即“打开门”,即用一系列的硬件动作模拟自动门打开的动作和状态。 2、当“门”完全打开后一段时间后,传感器范围内检测不到物体时,立即“关闭门”, 用一系列的硬件动作模拟自动门关闭的动作和状态。

音乐播放器设计文档

生产实习报告 题目:音乐播放器 学生姓名:张凡 学号: 201220220123 班级: 1222201 专业:数字媒体技术 指导教师:张金 2015年08 月08日

目录 一、引言 (3) 1.1 项目背景 (3) 1.2 项目研究的目的 (4) 1.3 安卓简介 (4) 二.功能分析 (5) 2.1 功能需求分析 (5) 2.2 系统性能需求 (6) 2.3 运行环境需求 (6) 三.程序详细设计 (6) 3.1 主界面的设计 (6) 3.2 播放界面设计 (11) 3.3 其他功能 (14) 四.调试与运行 (18) 4.1 调试 (18) 4.2 运行结果 (19) 五.总结 (21)

一、引言 1.1 项目背景 当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,symbian,Windows mobile,以及谷歌的Android操作系统,其中占有开放源代码优势的Android系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢?答案是:肯定的,谷歌Android系统就能做到。本文的音乐播放器就是基于谷歌Android手机平台的播放器。 随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户(如听歌,看电影)的需求,除了能播放常见格式的语音视频文件,高级功能:还能播放RMVB格式的视频文件。此外,还能支持中文、英文等语言界面。

微机原理课程设计实验报告DOC

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 课程名称: 学年学期: 指导教师: 年月

课程设计成绩评定表 学生姓名学号成绩 专业班级起止时间2011.12.24—2012.11.28 设计题目字符串动画显示 指 导 教 师 评 语 指导教师: 年月日

目录 一、课程设计的目的 (1) 二、设计题目 (1) 三、设计内容要求 (2) 四、设计成员及分工 (2) 五、课程设计的主要步骤 (2) 六、课程设计原理及方案 (3) 七、实现方法 (3) 八、实施结果 (8) 九、总结 (8) 十、体会感受 (8)

一、课程设计的目的 课程设计是以自己动手动脑,亲手设计与调试的。它将基本技能训练、基本工艺知识和创新启蒙有机结合,培养我们的实践和创新能力。课程设计的意义,不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。作为信息时代的大学生,基本的动手能力是一切工作和创造的基础和必要条件。 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。 《微机原理及应用》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。 通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书等表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作态度。 通过设计过程,要求学生熟悉和掌握微机系统的软件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件调试、查阅资料、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练的熟练掌握微机系统的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。 二、设计题目

微机原理课程设计报告-数字时钟的实现(附代码)

合肥工业大学 计算机与信息学院 课程设计 课程:微机原理与接口技术设计专业班级:计算机科学与技术x班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

在线音乐播放系统详细设计

<在线音乐播放系统> 详细设计说明书 作者: 完成日期: 签收人: 签收日期: 修改情况记录:

1 引言 1.1 编写目的 为软件开发人员在编码的过程中有所依据和参考。 面向人员:程序开发人员 1.2 背景 说明: a.待开发的软件系统的名称:在线音乐播放系统 b.列出本项目的任务提出者:北软老师 c.开发者:邓凯 d.用户:广大互联网用户 e.将运行该项软件的单位:web服务器 1.3 定义 OMS :Online music system,在线音乐播放系统。 1.4 参考资料 列出要用到的参考资料,如: a.本项目的经核准的计划任务书或合同、上级机关的批文; b.在线音乐播放系统概要设计.doc; c.本文件中各处引用的文件、资料,包括所要用到的软件开发标准。 列出这些文件的标题、文件编号、发表日期和出版单位,说明能够得到这些文件资料的来源。 2 程序系统的结构 本程序主要采用四层结构,如下所示: 图1 系统结构示意图

3 程序(标识符)设计说明 3.1 在线音乐网络爬虫设计说明: 资源的数量和质量将决定了系统的商业价值,为了获取更多的网络媒体资源,为系统设计了一款针对互联网上音乐资源的网络爬虫。 3.1.1爬虫的原理: 网络爬虫是一个自动提取网页的程序,它为搜索引擎从Internet网上下载网页,是搜索引擎的重要组成。 传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,在抓取网页的过程中,不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。 聚焦爬虫的工作流程较为复杂,需要根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列。然后,它将根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统的某一条件时停止,另外,所有被爬虫抓取的网页将会被系统存贮,进行一定的分析、过滤,并建立索引,以便之后的查询和检索;对于聚焦爬虫来说,这一过程所得到的分析结果还可能对以后的抓取过程给出反馈和指导。 相对于通用网络爬虫,聚焦爬虫还需要解决三个主要问题: (1)对抓取目标的描述或定义; (2)对网页或数据的分析与过滤; (3)对URL的搜索策略。 3.1.2在线音乐播放系统爬虫的设计: 与通用爬虫不同,在线音乐播放系统爬虫只针对https://www.wendangku.net/doc/db15569600.html,音乐频道 https://www.wendangku.net/doc/db15569600.html,音乐频道,针对MP3格式的资源。 3.1.3爬虫的流程图:

8086.8088微机原理课程设计

8086/8088微机原理课程设计 1、课程设计说明 “微机原理与接口技术课程设计”主要是测试学生的8086/8088系统输入输出技术应用能力、数字电路应用能力和程序设计能力。 设计题目中综合了《数字逻辑》、《微机原理与接口技术》和《程序设计基础》等课程中的相关知识点。特别是电气工程系各专业学习了《模拟电子》、《传感器技术》、《单片机技术》等课程,给题目的扩展和实际应用提供了基础。本课程的课程设计实际上是一个综合性应用的设计和制作。 这里只给出了部分课程设计的题目,主要和接口电路有关,每个题目的实现方式和扩展空间都很大,指导教师可根据学生的具体情况决定设计题目的内容和设计量。纯汇编语言软件的设计未在这里列出。 欢迎学生自拟题目,经指导教师审核其难易程度和确定所用器材,优先选用。 2、课程设计计分办法 课程设计的计分由课设题目(60)、课设报告(20)、考勤(20)三部分组成。 一、题目的选择 设计题目分为星级制(★),根据选择题目的难易程度确定成绩,以百分制计算,按比例计入总成绩。要根据个人情况合理选择题目,不可多组选择同一题目。 1、无星为最简题目,做完多个题目仅记分为及格(69分及以下)。 2、1星(★)为简单题目,做完1个题目记分为良(70~89分)。 3、2星(★★)为较难题目,做完1个题目记分优(90~100分)。 4、星级题目多做可提高分值。 5、课设一般为分组实施,主要设计者记原星级分值,辅助者减1星。 6.、未完成设计者视设计程度减星计分。 7、无星题目可单人完成,但不选题目者记0分。 二、报告要求 课设报告应按规定格式书写,并按时上交。报告原则上要求手工书写,如要打印必须是独立版本,遇雷同课设报告均不计入总成绩。 三、考勤 考勤。点名一次未到扣5分,5次以上记0分。

音乐播放器的设计与实现

第一章绪论 1.1背景 随着电子技术的飞速发展,嵌入式设备在各领域的应用越来越广泛,复杂度也越来越高,对其他开发方法也提出了更多的要求和更大的挑战。在嵌入式设备系统开发过程中需要将软件应用与操作系统编译连接成一个整体,然后下载到目标机上运行,所以,嵌入式设备的开发过程是一个复杂的过程。 3作为高质量音乐压缩标准,给音频产业带来了具大的冲击。3技术使音乐数据压缩比率大,回放质量高。如格式的音乐数据压缩成3格式,音效相差无己,但大小至少可压缩12倍。由于3音乐的较小数据量和近乎完美的播放效果使其在网络上传输得以实现。1995年,3格式的音乐文件刚在网络上传播时,主要用等播放软件进行播放,使3音乐无法脱离计算机进行播放,给音乐欣赏带来了不便。近几年以来,随着3播放器的出现及其技术的发展,人们对3播放器的要求越来越高,制造商在3播放器的选型、设计、开发、附加功能和适用领域等方面做了很多努力,设计了多种方案。本设计主要是利用技术设计一款新型的3播放器。 9是公司的16/32位处理器,是适用于普通设备的一种高性价比的微控制器。本设计采用的是三星公司推出的9芯片S3C2440,具有低价格、低功耗、高性能、超小体积等特点主要适用于中高端场合,目前在嵌入式系统中正得到日益广泛的应用。S3C2440主频高达400M,片上集成了丰富的资源:如()总线与控制器,为与数模转换器()的连接提供了一种理想的解决方案。 3播放器的设计比较复杂且对处理器的要求较高,因而3播放器必须仔细设计以降低成本。本设计是在9平台上设计、实现一个3播放器。 第二章系统总体方案 2.1 系统功能 本设计提出了一种基于嵌入式处理器硬件平台的3播放器设计方法。此播放器采用体系结构中的9作为系统控制器,利用外围设备通用串行接口下载3歌曲,用存贮3文件。主要对3做了各个方面的功能分析,对硬件设计、软件设计、软件实现、系统编译等方面做了介绍。系统的主要部分是音频编码与解码,这是系统设计的核心。3播放器设计的突出问题就是硬件控制和软件控制,另外还有硬盘控制、键盘控制、液晶显示,这些控制都是基于一块芯片。基于9的3播放器设计的软件体系结构采用分层模式,它包括软件层、硬件层、驱动层、操作系统层、及3播放器应用层。主要实现歌曲的播放。 2.2 设计指标 1、3工作电压为具有3.3V左右,电流250,具有音频解码和播放功能。 2、通过接口与大容量外部存储设备进行数据传输,能实现网络播放与下载、触摸屏输入功能。

微机原理步进电机控制课程设计报告

河北科技大学 课程设计报告学生姓名:学号: 专业班级: 课程名称: 学年学期: 2 0 —2 0 学年第学期指导教师: 2 0 年月 课程设计成绩评定表

目录 一、设计题目………………………………………………………………. 二、设计目的………………………………………………………………. 三、设计原理及方案………………………………………………………. 四、实现方法………………………………………………………………. 五、实施结果………………………………………………………………. 六、改进意见及建议……………………………………………………….

七、设计体会………………………………………………………………. 、 一、设计题目 编程实现步进电机的控制 二、设计目的 1.了解步进电机控制的基本原理 2.掌握控制步进电机转动的编程方法 3.了解8086控制外部设备的常用电路 4.掌握8255的使用方法 三、设计原理及方案 设计原理 步进电机驱动原理是通过对每相线圈中的电流的顺序切换(实验中的步进电机有四相线圈,每次有二相线圈有电流,有电流的相顺序变化),来使电机作步进式旋转。 驱动电路由脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。 利用 8255对四相步进电机进行控制。当对步进电机施加一系列连续不断的控制脉冲时,它可以连续不断地转动。每一个脉冲信号对应步进电机的某一相或两相绕组的通电状态改变一次,也就对应转子转过一定的角度(一个步距角)。当通电状态的改变完成一个循环时,转子转过一个齿距。四相步进电机可以在不同的通电方式下运行,常见的通电方式有单(单相绕组通电)四拍(A-B-C-D-A…),双(双相绕组通电)四拍(AB-BC-CD-DA-AB…),八拍(A-AB-B-BC-C-CD-D-DA-A…)等。 通过编程对8255的输出进行控制,使输出按照相序表给驱动电路供电,则步进电机的输入也和相序表一致,这样步进电机就可以正向转动或反向转动。 硬件连接图 四.实现方法 .步进电机控制程序流图

微机原理课程设计报告

— 微机原理 课程设计报告 ——电子表程序设计 ^ 。

(一)设计任务: 用汇编语言设计一电子表程序,要求: ! (1)实现秒、分、时的计时,并显示于屏幕中央 (2)能够校时 (3)能够半点、整点报时 (二)设计原理 该程序主要由三部分构成:时间设置、延时程序和时钟显示。 (1)时间设置 … ①输入初始时间 先调用DOS操作系统模块2,在显示屏上显示‘:’,再调用DOS操作系统模块10,提示输入初始时间。由键盘输入的时间以字符串形式存放在已定义的存储器缓冲区内,继而调用TRAN1转换子程序和MUL10乘10子程序,将存放在存储器缓冲区内的ASCII字符转换为压缩BCD码,并将时、分、秒的值放置在寄存器CH、DH、DL中。 ②暂停计时 按Pause Break键即可暂停计时,再按下任意键恢复计时 ③重新输入时间 在程序运行时,可按下Esc键重新输入初始时间,此时程序检测到Esc(ASCII码为1BH)被按下,返回①步提示重新输入时间。 以上两步可实现校时的功能。

④半点、整点报时 《 程序运行时,分钟值每次改变都需要与30、60比较,若相等,则调用DOS操作系统模块7使计算机响铃并在时间后显示‘ ------’。同时若分、秒值为60则需进位,时为24时进位,保证时钟程序的正确性。 (2)延时程序 计算机在执行指令时,各种操作都按指令执行,但在像程序控制器那样由计算机发出指令控制外部设备是,由于外部设备所具有的机械惯性或其他原因,需要在计算机发出指令后有规律地延迟或等待一段时间。这类延时,可以用硬件延时来完成,单用软件来实现也是一种方便和常用的方法。 计算机执行每一条指令,虽然很快,但还是需要一段时间的。因此从理论上讲,可在程序中加一些与程序无关的指令去完成,要计算指令执行的时间,又不能过多的为了延时而增加编制程序的工作量。因此,编制延时程序,应尽量采用较少的指令,节约存储器,并且不能对主程序造成影响。 每条指令执行时间的长短,是以计算机的时钟周期为基本单位的。当CPU采用的时钟频率一定时,时钟周期也为定值。因此可根据时钟周期的多少来计算执行指令所需的时间。完成本设计任务使用的计算机采用Intel Pentium 4处理器,主频为,时钟周期约为。 通过时间约1s的长延时累加,并以时、分、秒的形式显示出来,就可以编写出一个时钟程序。 (3)时钟显示 … ①设置光标位置子程序IOSET

相关文档
相关文档 最新文档