DSP实验1_戴蕊.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
DSP实验1_戴蕊

北京邮电大学实验报告信号与信息处理综合实验DSP实验一——Hello World和LED 班级: 2013211125 专业: 信息工程 姓名: 戴蕊 学号: 2013210688 电话: 目录一、实验目的1二、实验工具1三、实验要求1四、实验原理1Ⅰ、总体介绍1Ⅱ、处理器介绍2Ⅲ、相关函数介绍2Ⅳ、寄存器介绍3五、程序功能4Ⅰ.在控制台中显示Hello World4Ⅱ . 控制LED灯闪烁4六、程序流程5七、分工合作6八、功能说明6九、调试过程中的主要问题及难点6十、心得体会7十一、实验总结7十二、程序源代码8实验目的通过本实验熟悉DSP的开发流程,了解开发环境CCS的操作步骤,深入理解寄存器配置、存储器映射等,熟练掌握DSP的调试方法,初步培养良好的编程习惯和编程风格,初步学习程序和设计文档的撰写方法。实验工具Code Composer Studio v5软件和Windows 7实验要求A、LED0以2.5次/秒的速率闪烁;B、读取DIP3的状态,当DIP按下时,点亮LED;否则LED关闭;C、修改LED 的闪烁频率;D、通过写8bit数值到CPLD寄存器来控制LED,使得4个LED以200ms的频率同时打开和关闭。实验原理Ⅰ、总体介绍DSP芯片也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。本学期DSP实验所用芯片为TI公司生产的TMS320C6416T。TMS320C6416T为定点DSP,基于第二代高性能的VLIW架构,拥有超长指令字,即一种非常长的指令组合,它把许多条指令连在一起,增加了运算的速度。Ⅱ、处理器介绍该系列芯片的处理器由三部分组成:(1)CPU内核:有8个并行操作的功能单元,被分为类似的两套有两组寄存器,每组包括16个32位寄存器;(2)存储器:包括程序存储器和数据存储器片内程序存储器总线宽度为256bit,每个周期可取8条32位指令;(3)外设:直接存储器访问DMA、外部存储器接口EMIF、串口、扩展总线、定时器等。Ⅲ、相关函数介绍为了方便用户对DSP系统进行开发,TI公司的第三方提供一种简单的系统评估平台,即DSK开发套件和评估板。DSK和EVM(评估板)除了提供基本的硬件平台外,还提供完整的代码生成工具和调试工具。用户可以使用DSK或EVM完成需要设计系统的硬件性能、软件算法的评估,为确定系统的软/硬件方案提供可靠的依据。以下为DSK6416提供的DSP开发相关函数:void DSK6416_init();/* 初始化所有板子的初始函数*/uint8 DSK6416_rget(int16 regnum); /* 读取CPLD寄存器的8bit 值*/void DSK6416_rset(int16 regnum, uint8 regval); /* 写8 bit数值到CPLD寄存器*/void DSK6416_wait(uint32 delay); /* 插入dl次的迭代循环*/void DSK6416_waitusec(Uint32 ?delay); /* 插入dl 微秒的迭代循环*/利用以上函数,实现DSP板子的初始化以及开关状态读取和LED灯的亮灭控制。Ⅳ、寄存器介绍CPLD寄存器定义如下:本实验所需配置的寄存器为USER_REG,该寄存器用于读取DIP开关状态,并将LED灯开关。其具体描述如下:由上表可以看出,USER_REG前四个比特用于DIP,读该寄存器前四比特,若相应比特位置一表示所对应开关断开,相应比特位置零表示所对应开关打开;后四个比特用于LED控制,向该寄存器写数据,若相应比特位置一表示点亮所对应LED灯,置零则表示将所对应LED熄灭。五、程序功能Ⅰ.在控制台中显示Hello World 运行程序后,在控制台显示Hello World。使用 printf(Hello World!\n);语句可以直接实现输出功能。Ⅱ . 控制LED灯闪烁 FTP给出一个LED的程序模板,可以控制LED 0的闪烁。基于该模板,需要完成:修改闪烁的频率;通过控制函数 DSK6416_waitusec( );的值来控制等待时间,即可控制闪烁频率。通过写8bit数值到CPLD寄存器来控制LED,使得4个LED以200ms的频率同时打开和关闭。通过函数 DSK6416_rset();来实现LED的同时开关。六、程序流程开始按键0是否按下按键1是否按下按键3是否按下LED 3亮LED 3灭LED 0闪烁 周期为0.2秒所有LED闪烁,周期为0.4秒?所有LED闪烁,周期为0.2秒?是是是否否否七、分工合作这次实验肖佳莉同学进行代码的编写,我进行数据修改以及实验板的调整,由于

文档评论(0)

peain + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档