实验二用定时器实现数字振荡器

实验二用定时器实现数字振荡器

ID:47769064

大小:113.00 KB

页数:9页

时间:2020-01-17

实验二用定时器实现数字振荡器_第1页
实验二用定时器实现数字振荡器_第2页
实验二用定时器实现数字振荡器_第3页
实验二用定时器实现数字振荡器_第4页
实验二用定时器实现数字振荡器_第5页
资源描述:

《实验二用定时器实现数字振荡器》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、电子科技大学通信学院标准实验报告(实验)课程名称DSP设计与实践电子科技大学教务处制表精选范本,供参考!电子科技大学实验报告学生姓名:学号:指导教师:向超实验地点:实验时间:一、实验室名称:电子科技大学—美国德州仪器DSP技术/培训中心二、实验项目名称:用定时器实现数字振荡器三、实验学时:4学时四、实验原理:数字振荡器原理设一个传递函数为正弦序列sinkωT,其z变换为H(z)=EMBEDEquation.3EMBEDEquation.3v儭丌a=2cosÉ͔,B=-1,C=sinÉ͔其中,A=2cosωT,B=-1,C

2、=sinωT。设初始条件为0,求出上式的反Z变换得:y[k]=Ay[k-1]+By[k-2]+Cx[k-1]这是一个二阶差分方程,其单位冲击响应即为sinkωT。利用单位冲击函数x[k-1]精选范本,供参考!的性质,即仅当k=1时,x[k-1]=1,代入上式得:k=0y[0]=Ay[-1]+By[-2]+0=0k=1y[1]=Ay[0]+By[-2]+c=ck=2y[2]=Ay[1]+By[0]+0=Ay[1]k=3y[3]=Ay[2]+By[1]..k=ny[n]=Ay[n-1]+By[n-2]在k>2以后,y[k]能

3、用y[k-1]和y[k-2]算出,这是一个递归的差分方程。根据上面的说明,我们可以开始数字振荡器的设计。设该振荡器的频率为2kHz,采样率为40kHz(通过定时器设置,每隔25us中断一次,即产生一个y[n]),则递归的差分方程系数为:A=2cosωT=2cos(2xPIx2000/40000)=2x0.95105652x41e6f0B=-1C=sinωT=sin(2xPIx2000/40000)=0.30901699x4=9e4b为了便于定点DSP处理,我们将所有的系数除以2,然后用16位定点格式表示为:af378c4

4、f25这便是本实验中产生2KHz正弦信号的三个系数。在本实验中,主程序在初始化时先计算出y[1]和y[2],然后开放定时器中断。以后每次进入定时器中断服务程序时,利用前面的y[1]和y[2],计算出新的有y[0],通过CCS提供的图形显示工具,我们将在图形窗口中看到一个正弦信号波形。下面是初始化和中断服务程序代码片段:初始化y[1]和y[2]:ssbxFRCT;置FRCT=1,准备进行小数乘法运算st#INIT_A,AA;将常数A装入变量AAst#INIT_B,BB;将常数B装入变量BBst#INIT_C,CC;将常数C

5、装入变量CCpshdCC;将变量CC压入堆栈popdy2;初始化y2=CCldAA,T;装AA到T寄存器mpyy2,a;y2乘系数A,结果放入A寄存器stha,y1;将A寄存器的高16位存入变量Y1中断服务程序片段:ldBB,T;将系数B装入T寄存器精选范本,供参考!mpyy2,a;y2乘系数B,结果放入A寄存器ltdy1;将y1装入T寄存器,同时复制到y2macAA,a;完成新正弦数据的计算,a寄存器中为;y1*AA+y2*BBstha,1,y1;将新数据存入y1,因所有系数都除过2,所以在保;存结果时转移一位,恢复数

6、据正常大小。stha,1,y0;将新正弦数据存入y0(2)C54X的定时器操作C54X的片内定时器利用CLKOUT时钟计数,用户使用三个寄存器(TIM,PRD,TCR)来控制定时器,参见表4-1。在表4-2中列出了定时器控制寄存器的各个比特位的具体定义。‘VC5402的另一个定时器(定时器1)的控制寄存器分别为:0x30(TIM1),0x31(PRD1),0x32(TCR1)。从上面的介绍可以看到定时器实际上可以有20个比特的周期寄存器。它对CLKOUT信号计数,先将PSC减1,直到PSC为0,然后用TDDR重新装入PS

7、C,同时将TIM减1,直到TIM减为0。这时CPU发出TINT中断,同时在TOUT引脚输出一个脉冲信号,脉冲宽度为CLKOUT一致。然后用PRD重新装入TIM,重复下去直到系统或定时器复位。因而定时器中断的频率由下面的公式决定:TINT的频率=EMBEDEquation.3EMBEDEquation.3v儭乴ch蠺祃LKOUT其中tc表示CLKOUT的周期。定时器当前的值可以通过读取TIM寄存器和TCR寄存器的PSC比特位得到。下面是本实验中初始化定时器的程序片段:stm#10h,TCR;停止定时器stm#2499,PR

8、D;设置PRD寄存器值为2499,TINT中断频率为;Foutclk/(2499+1)=100MHz/2500=40KHzstm#20h,TCR;重新装入TIM和PSC,然后启动定时器(3)C54X中断的使用在C54X中用户可以通过中断屏蔽寄存器IMR来决定开放或关闭一个中断请求。其中,HPINT表示HPI接口中断,

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

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

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