dsp 汇编语言 简单小程序 经典

dsp 汇编语言 简单小程序 经典

ID:11854707

大小:86.50 KB

页数:24页

时间:2018-07-14

dsp 汇编语言 简单小程序 经典_第1页
dsp 汇编语言 简单小程序 经典_第2页
dsp 汇编语言 简单小程序 经典_第3页
dsp 汇编语言 简单小程序 经典_第4页
dsp 汇编语言 简单小程序 经典_第5页
资源描述:

《dsp 汇编语言 简单小程序 经典》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、DSP汇编DSP2010-04-1217:39:36阅读155评论0  字号:大中小 订阅实验一 新手上路]初学者编写的第一个程序通常是控制XF引脚的变化,然后用示波器测量XF脚波形或观察与相接的LED。这个程序也常常用来测度一下DSP能否正常工作。实验1.1 最简单的程序:控制XF引脚周期性变化实验目的:通过简单的程序了解DSP程序的结构,熟悉CCS开发环境。**************************************************************最简单的程序:T

2、estXF1.asm*循环对XF位置1和清0,用示波器可以在XF脚检测到电平高低周期性变化*常用于检测DSP是否工作。*************************************************************.mmregs ;预定义的寄存器.def CodeStart ;定义程序入口标记.text ;程序区CodeStart: ;程序入口SSBX XF ;XF置1RPT #999 ;重复执行1000次空指令产生延时NOPRSBX XF ;XF清0RPT #999 ;重

3、复执行1000次空指令产生延时NOP B CodeStart ;跳转到程序开头循环执行.end NOP指令执行时间为一个时钟周期,设DSP工作频率是50MHz,可以估算出XF引脚电平的变化频率约为:50M/2000=25kHz在没有示波器的情况下,就要将程序1.1稍作改进,增加延时,用一个延时子程序将XF脚电平变化频率降到肉眼可分辨的程度,就可以用LED来显示电平的变化,程序如下:实验1.2 子程序调用实验目的:学习子程序的调用************************************

4、**************************TestXF2.asm*对TestXF1.asm稍作改进,用延时子程序设置较长的延时,*可以用试验板上的LED看到XF引脚电平的变化*************************************************************.mmregs ;预定义的寄存器.def CodeStart ;定义程序入口标记.text ;程序区CodeStart: ;程序入口SSBX XF ;XF置1CALL Delay ;调用延时程序RS

5、BX XF ;XF清0CALL Delay ;调用延时程序B CodeStart ;跳转到程序开头循环执行***************************************************************延时子程序:Delay*用两级减一计数器来延时。调整AR1和AR2的大小LED闪烁的频率不同**************************************************************Delay: STM #999,AR1 ;循环次数100

6、0LOOP1: STM #4999, AR2 ;循环次数5000LOOP2: BANZ LOOP2,*AR2- ;如果AR2不等于0,AR2减1,再判断BANZ LOOP1,*AR1- ;如果AR1不等于0,AR1减1,跳转到LOOP1RET.end***************************************************************注意这种延时方法并不精确,需要精确定时必须用定时器。*按此法延时的近似公式为:4*(AR2+1)*(AR1+1)*时钟周期*当D

7、SP工作在50MHz(时钟周期20ns),AR1=999, AR2=4999时*延时约为400ms,则LED闪烁的周期为800ms,频率1.25Hz**************************************************************设计指导:1.源代码书写格式源代码的书写有一定的格式,初学者往往容易忽视。简单归纳如下:1.每一行代码分为三个区:标号区、指令区和注释区。标号区必须顶格写,主要是定义变量、常量、程序标签时的名称。指令区位于标号区之后,以空格或TAB

8、格开。如果没有标号,也必须在指令前面加上空格或TAB,不能顶格。注释区在标号区、程序区之后,以分号开始。注释区前面可以没有标号区或程序区。另外还有专门的注释行,以*打头,必须顶格开始。2.一般区分大小写,除非加编译参数忽略大小写。3.标点符号有时不注意会打成中文全角字符导致错误。书写格式的要求在很多DSP书里都没有提,初学者往往只把书上的代码输入进去,编译时得到错误的提示,而不知所措。其中最容易犯的错误指令顶格写,不过一般经提示后不会犯第二次。有些格式CCS并没有做要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。