嵌入式系统设计实验报告 下载本文

数码管显示模 块 蜂鸣器模块 LPC2131 PWM 串口模块

四、系统详细设计(模块详细设计及流程图)

LED显示与键盘模块

五、系统测试(数据测试结果及分析)

通过键盘按键输入相应功能,发送到开发板,数码管和LED灯接收到数据后,数码管会自动变化到该按键号,并且相应的LED灯在数码管变化的同时会点亮。在程序运行的任何期间都可以从键盘输入相应功能,而且程序会自动判断要满足的用户的优先级。 此次试验实现了简单的基本MP3功能。 六、总结

通过这次课程设计,使我对以前完全陌生的ARM 软件有了初步的接触,我学到了如何在ARM中实现基本的MP3播放功能。原先我对嵌入式系统并没有很深刻的了解,在做完课程设计后,我对数码管、蜂鸣器及流水灯的结构和功能有了更进一步的了解,并且知道了一些相关函数的功能与运用,真正的把所学的东西运用到了实际中,更好的把课本知识与实际相结合,对我以后的学习有很大帮助。 七、附录(代码+注释)

#include \#include \#include \

#define KEY1 #define KEY2 #define KEY3 #define KEY4 #define KEY5 #define KEY6

1 << 16 // P0.16连接KEY1 1 << 17 // P0.17连接KEY2 1 << 18 // P0.18连接KEY3 1 << 19 // P0.19连接KEY4 1 << 20 // P0.20连接KEY5 1 << 21 // P0.21连接KEY6

#define BEEP 1 << 7 // P0.7控制蜂鸣器BEEP

#define HC595_CS (1 << 29) //P0.29口为74HC595的片选

#define TaskStkLengh 栈长度

OS_EVENT *voice; OS_EVENT *b_n; OS_EVENT *p_s;

//歌曲曲谱 - 虹彩妹妹 const uint32 HCMM1[] = {

_LA,_SO,_MI,_LA,_SO,_MI, };

/* 歌曲节拍 */

const uint32 HCMM_L1[] = { };

// 歌曲曲谱 - 倩女幽魂 const uint32 HCMM2[] =

_4, _8, _8, _4, _8, _8, _8, _4, _8, _2, _4, _8, _8, _4, _8, _8, _8, _4, _8, _2,

_4, _8, _8, _8, _8, _8, _8, _8, _4, _8, _2, _4, _4, _4, _8, _8, _8, _4, _8, _2, _LA, _LA, _SO, _LA,

_LA, _SO, _MI, _LA, _SO, _MI, _RE, _RE, _DO, _RE,

_MI, _MI, _SO, _LA, _DO1, _LA, _SO, _MI, _MI, _SO, _DO, _MI, _MI, _MI, _MI, _MI, _1LA,_1LA,_1SO,_1LA,

64

//Define the Task0 stack length 定义用户任务0的堆

{

_LA, _SO, _MI, _MI, };

// 歌曲节拍

const uint32 HCMM_L2[] = {

_16, _16,_8, _2d, _4d, _4, _4, _8, _16, _16,_8, _2d,

_4, _4,_4d, _8, _1,

_4,_8, _8, _4d, _8, _1,

_4, _4,_4, _4,

_SO, _SO, _MI, _DO, _1LA, _RE,

_DO1, _DO1,_RE, _RE, _RE, _FA,

_DO1, _FA, _MI, _FA, _LA,

_MI,_RE, _DO, _DO1,_FA, _MI, _RE, _1TI, _1TI, _FA, _MI, _RE,_DO,

_1LA, _1SO, _1LA, _1LA, _MI, _RE, _DO, _SO, _LA, _DO, _LA, _LA,

_DO1, _DO1,_LA, _LA, _MI,

_DO1,_DO, _1TI, _DO, _1TI, _1LA,

_DO1, _DO1,_MI,_SO, _DO,_DO,_LA,

_1LA,