已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计报告课程名称 DSP原理与应用 设计题目 D/A转换实验、数字波形产生、 数字图像处理、二维图形生成 专业、班级 学 号 姓 名 指导教师 设计时间 2011 年 10 月 07 日一、 引言目的:D/A转换实验:1熟悉D/A转换的基本原理;2掌握AD7303的技术指标和常用方法;3熟悉DSP的多通道缓冲串口配置为SPI的应用方法;4掌握并熟练使用DSP和AD7303的接口及其操作。数字波形产生实验:1、了解数字波形产生的基本原理;2、学习用C54x DSP芯片产生正弦信号的基本方法和步骤。数字图像处理实验:1了解数字图象处理的基本原理;2学习灰度图象二值化处理技;3学习灰度图象反色处理技术。二维图像生成实验:1.了解DSP的图形处理功能;2.掌握CCS的图形观察功能;3.学会简单的二维图形生成编程。设备:计算机,CCS 2.0版软件,DSP仿真器,实验箱,示波器。二、 正文实验步骤:1. 系统连接 进行dsp实验之前,先必须连接好仿真器、试验箱及计算机。2. 上电复位 在硬件安装完成后,确认安装正确、各实验部件及电源连接正常后,接通仿真器电源或启动计算机,此时,仿真盒上的“红色小灯”应该是亮的,否则说明dsp开发系统与计算机连接有问题。3. 运行CCS程序 待计算机启动成功后,实验箱上电,启动CCS,此时仿真器上的“绿色小灯”应点亮,CCS正常启动,证明系统连接正常;否则仿真器的连接、JTAG接口存在问题。关掉实验箱电源,检查仿真器的连接、JTAG接口连接。4、新建工程:ProjectNew给工程起名xf,放在E盘xf文件夹。5、把E盘dsp_usb文件夹下的“DSP常用文件”下的“EXP06-AD”文件中的vectors.asm、tms320uc5402.h、 tms320uc5402.cmd 、RTS.LIB 文件拷贝至刚才工程文件pjt所在文件夹下。(D/A转换实验需要DspRegDefine.h、UCOS_II.cmd、delay_3us.asm 二维图像生成实验需要STDIO.H、MATH.H、memory.cmd)6、新建源文件:FileNewSource File,保存为xf.c到上述文件夹下。7、把上述红色字体的文件添加到工程中去:ProjectAdd Files to(注意:头文件.h文件是不能直接添加的,需要在c文件中include才能出现在工程中)8、编写程序xf.c,完成后再修改中断向量文件vectors.asm,点击工具Compile,如果没有问题,则点击Build(构建),在Debug文件夹下生成.out文件9、上述无误后,点击FileLoad Program,下载.out文件,接着点击Run按钮,观察实验结果。D/A转换实验:1、单击“Run”运行程序一次,然后取消运行。2、打开一个图形观察窗口,以观察程序产生的波形。3、设置观察窗口参数,起始地址为data_buff,长度为256,16位整型。4、然后单击“Run”全速运行程序。5、用示波器检测“D/A转换单元的的2号孔接口“输出1”输出一个正弦波。程序清单:/-头文件-/#include MMRegs.h#include DspRegDefine.h /VC5402 寄存器定义#include math.h/-/* * 宏定义 */#define UCHAR unsigned char#define UINT16 unsigned int#define UINT32 unsigned long#define TRUE 1#define FALSE 0#define pi 3.1415926#define LEN 256/- AD7303 控制字 -/ 15-14-13-12-11-10-9-8-/ INT/EXT-X-LDAC-PDB-PDA-A/B-CR1-CR0-/ 参考电压-保留- -B省电-A省电-0/A-1/B-/- /-/* 端口定义 */-ioport UINT16 port8001; /定义输出io端口为0x8001;/-/-/* 全局变量定义 */-int data_buffLEN; /数据缓冲UINT16 show = 0x00aa; /LED显示的数值 /* * 所使用的函数原型 */void cpu_init(void); /初始化CPUvoid Delay(UINT16 numbers); /延迟extern void delay_3us(void); /3us延迟void mcbsp0_write_rdy(UINT16 out_data);/MCBSP0发送一个数据void mcbsp0_init_SPI(void);/MCBSP0设置为SPI模式void mcbsp0_close(void);/MCBSP0关闭/-/* 函数定义 */-/ 函数名称 : void cpu_init(void)/ 函数说明 : 初始化CPU/ 输入参数 : 无/ 输出参数 : 无/-void cpu_init(void)asm( nop );asm( nop );asm( nop );/-/CLKMD DEFINITIONS:/ PLLMUL (bit 15-12) - 0000 PLL multiplier = 0 (mult by 1)/ PLLDIV (bit 11) - 0 PLL divider = 0 (div by 1)/ PLLCOUNT (bit 10-3)- 11111111 PLL counter set to max/ PLLONOFF (bit 2) - 1 PLL on/ PLLNDIV (bit 1) - 1 Select PLL mode/ PLLSTATUS (bit 1) - x PLL Status (read only)/ -/ 0000011111111111 = 0x07ff CLKMD=1 X CLKIN/- *(unsigned int*)CLKMD=0x0; /switch to DIV mode clkout= 1/2 clkin while(*(unsigned int*)CLKMD)&01)!=0); *(unsigned int*)CLKMD=0x37ff; /switch to PLL X 4 mode/-/ ST0 DEFINITIONS:/ ARP (bit 15-13) - 000 Auxiliary register pointer/ TC (bit 12) - 1 Test/control flag/ C (bit 11) - 1 Carry is set to 1 if the result of an addition generates a carry; it is cleared to 0 if the/ result of a subtraction generates a borrow./ OVA (bit 10) - 0 Overflow flag for accumulator A/ OVB (bit 9) - 0 Overflow flag for accumulator B/ DP (bit 8-0) - 00000000 Data-memory page pointer/ -/ 0001 1000 0000 0000 =0x1800 Reset value/-/ *(unsigned int*)ST0=0x1800; /-/ ST1 DEFINITIONS:/ BRAF (bit 15) - 0 Block-repeat active flag / CPL (bit 14) - 1 Compiler mode CPL=0 DP;CPL=1 SP/ XF (bit 13) - 1 XF status/ HM (bit 12) - 0 Hold mode/ INTM (bit 11) - 1 Interrupt mode INTM=0,All unmasked interrupts are enabled/ Reser (bit 10) - 0 Always read as 0/ OVM (bit 9) - 0 Overflow mode/ SXM (bit 8) - 1 Sign-extension mode/ C16 (bit 7) - 0 Dual 16-Bit/double-precision arithmetic mode/ FRCT (bit 6) - 0 Fractional mode/ CMPT (bit 5) - 0 Compatibility mode/ ASM (bit 4-0) - 00000 Accumulator shift mode/ -/ 0110 1001 0000 0000 =0x2900 Reset value/-/ *(unsigned int*)ST1=0x6900;/- /IPTR DEFINITIONS?/ IPTR (bit 15-7) - 001111111 Run-time Interrupt vector location = 0x3f80 (for now)/ MP/MC (bit 6) - 1 Turn off internal Instruction ROM (use RAM)/ OVLY (bit 5) - 1 Turn on internal RAM/ AVIS (bit 4) - 1 Address visibility on/ DROM (bit 3) - 0 Data ROM of FF00FFFF is external / CLKOFF (bit 2) - 0 Clockout enabled,only for use clkout=cpu clock/ SMUL (bit 1) - 1 Saturate before multiply on MAC/ SST (bit 0) - 0 Do not saturate before store/ -/ 0011 1111 1111 0010 = 0x3ff2/*-*/*(unsigned int*)PMST=0x3FF2;/-/ SWWSR DEFINITIONS?/ XPA (bit 15) - 0 Extended program address control bit. XPA is used in conjunction with the program space fields/ (bits 0 through 5) to select the address range for program space wait states/ I/O (bits 14-12) - 111 set to max wait states for seven/ Data1 (bits 11-9) - 111 Seven Wait state for Upper data space(0x8000-0xFFFF) / Data2 (bits 8-6) - 111 Seven Wait states for Lower data space (0x0000 - 0x7FFF)/ Prog1 (bits 5-3) - 111 Seven Wait state for Upper program space. (xx8000-xxFFFF)/ Prog2 (bits 2-0) - 111 Seven Wait states for Program space. (xx0000-xx7FFF)/ -/ 1 111 111 111 111 111 - 0x7fff/*-*/*(unsigned int*)SWWSR=0x7fff;/-/SWCR DEFINITIONS?/ Reserved (bits 15-1)/ SWSM (bit 0) - 1 wait-state base values are mulitplied by 2/ for a maximum of 14 wait states./ -/ 0000 0000 0000 0001/-*(unsigned int*)SWCR=0x0001;/-/BSCR DEFINITIONS?/ BNKCMP (bit 15-12) - 1111 Bank compare. Determines the external memory-bank size. BNKCMP is used to mask the four MSBs of/ an address./ 1111 4k/ 1110 8k/ 1100 16k/ 1000 32k/ 0000 64k/ PS-DS (bit 11) - 1 One extra cycle is inserted between consecutive data and program reads. / Reserved (bits 10-3) - 00000000/ HBH (bit 2) - 0 The hpi bus holder is disabled/ BH (bit 1) - 0 The data bus holder is disabled/ EXIO (bit 0) - 0 The external bus interface functions as usual/ -/ 1111 1000 0000 0000/- *(unsigned int*)BSCR=0xf800;/-asm( ssbx intm ); /Disable all mask interrupts /-/ IMR DEFINITIONS/ Writing a 1 to any IMR bit position enables the corresponding interrupt (when INTM = 0)/ Reserved (bits 15-14) - xx/ DMAC5 (bit 13) - 0 DMA channel 5 interrupt mask bit / DMAC4 (bit 12) - 0 DMA channel 4 interrupt mask bit/ BXINT1/DMAC3 (bit 11) - 0 McBSP1 transmit interrupt mask bit, or the DMA channel 3 / BRINT1/DMAC2 (bit 10) - 0 McBSP1 receive interrupt mask bit, or the DMA channel 2/ HPINT (bit 9) - 0 Host to 54x interrup /mask/ INT3 (bit 8) - 0 External interrupt 3 mask/ TINT1/DMAC1 (bit 7) - 0 timer1 interrupt mask bit, or the DMA channel 1 interrupt mask bit / DMAC0 (bit 6) - 0 reserved, or the DMA channel 0 interrupt mask bit/ BXINT0 (bit 5) - 0 McBSP0 transmit interrupt mask bit/ BRINT0 (bit 4) - 0 McBSP0 receive interrupt mask bit/ TINT0 (bit 3) - 0 Timer 0 interrupt mask bit/ INT2 (bit 2) - 0 External interrupt 2 mask bit/ INT1 (bit 1) - 0 External interrupt 1 mask bit/ INT0 (bit 0) - 0 External interrupt 0 mask bit/ -/ 0000 0000 0000 0000/-*(unsigned int*)IMR=0x0;/-/ IFR DEFINITIONS/ Writing a 1 to any IFR bit position clear the corresponding interrupt mask ,when corresponding interrupt occur IFR corresponding bit=1/ Reserved (bits 15-14) - xx/ DMAC5 (bit 13) - 1 DMA channel 5 interrupt flag bit / DMAC4 (bit 12) - 1 DMA channel 4 interrupt flag bit/ BXINT1/DMAC3 (bit 11) - 1 McBSP1 transmit interrupt flag bit, or the DMA channel 3 / BRINT1/DMAC2 (bit 10) - 1 McBSP1 receive interrupt flag bit, or the DMA channel 2/ HPINT (bit 9) - 1 Host to 54x interrutpflak/ INT3 (bit 8) - 1 External interrupt 3 flag/ TINT1/DMAC1 (bit 7) - 1 timer1 interrupt flag bit, or the DMA channel 1 interrupt mask bit / DMAC0 (bit 6) - 1 reserved, or the DMA channel 0 interrupt flag bit/ BXINT0 (bit 5) - 1 McBSP0 transmit interrupt flag bit/ BRINT0 (bit 4) - 1 McBSP0 receive interrupt flag bit/ TINT0 (bit 3) - 1 Timer 0 interrupt flag bit/ INT2 (bit 2) - 1 External interrupt 2 flag bit/ INT1 (bit 1) - 1 External interrupt 1 flag bit/ INT0 (bit 0) - 1 External interrupt 0 flag bit/ -/ 1111 1111 1111 1111/*-*/*(unsigned int*)IFR=0xffff;/- asm( nop );asm( nop );asm( nop ); /*- 函数名称 : void Delay(int numbers)- 函数说明 : 延时- 输入参数 : numbers- 输出参数 : 无*/void Delay(UINT16 numbers) UINT16 i,j; for(i=0;i4000;i+) for(j=0;jnumbers;j+);/*- 函数名称 : void mcbsp0_write_rdy(UINT16 out_data);- 函数说明 : MCBSP0发送一个数据- 输入参数 : data- 输出参数 : 无- 补充说明 : 内部带是否发送完成的判断*/void mcbsp0_write_rdy(UINT16 out_data) UINT16 j; *(unsigned int*)McBSP0_SPSA=0x0001; /McBSP0_SPSA 指向 SPCR2 while (*(unsigned int *)McBSP0_SPSD&0x0002)=0); /mask XRDY bit,XRDY = 1 Transmitter is ready for new data in DXR1,2. for(j=0;j20;j+); /delay *(unsigned int *)McBSP0_DXR1= out_data; /*- 函数名称 : void mcbsp0_init_SPI(void);- 函数说明 : MCBSP0设置为SPI模式- 输入参数 : 无- 输出参数 : 无- 补充说明 : */void mcbsp0_init_SPI(void) /- /复位 McBSP0 *(unsigned int*)McBSP0_SPSA=0x0000;/SPCR1 *(unsigned int*)McBSP0_SPSD=0x0000;/设置SPCR1.0(RRST=0) *(unsigned int*)McBSP0_SPSA=0x0001;/SPCR2 *(unsigned int*)McBSP0_SPSD=0x0000;/设置SPCR1.0(XRST=0) /- /延迟 Delay(0); /延迟 4000*CPU 时钟周期 /等待复位稳定 /- /配置 McBSP0为 SPI 模式 *(unsigned int*)McBSP0_SPSA=0x0000;/SPCR1 *(unsigned int*)McBSP0_SPSD=0x1800; /DLB (bit 15) 0 Digital loop back mode disabled /RJUST (bit 14-13) 00 Right-justify and zero-fill MSBs in DRR1,2 /CLKSTP (bit 12-11) 11 /X (bit 10-8) 000 Reserved /DXENA (bit 7) 0 data transmit delay bit.DX enabler is off /ABIS (bit 6) 0 A-bis mode is disabled /RINTM (bit 5-4) 00 RINT driven by RRDY /RSYNER (bit 3) 0 No synchronization error /RFULL (bit 2) 0 RBR1,2 is not in overrun condition /RRDY (bit 1) 0 Receiver is not ready /RRST (bit 0) 0 Serial port receiver is disabled and in reset state /- 0001 1000 0000 0000 *(unsigned int*)McBSP0_SPSA=0x0001;/SPCR2 *(unsigned int*)McBSP0_SPSD=0x0000; /X (bit 15-10) 000000 Reseved /FREE (bit 9) 0 Free running mode is disabled /SOFT (bit 8) 0 SOFT mode is disabled /FRST (bit 7) 0 Frame-synchronization logic is reset. /GRST (bit 6) 0 Sample rate generator is reset /XINTM (bit 5-4) 00 XINT driven by XRDY /XSYNER (bit 3) 0 No synchronization error /XEMPTY (bit 2) 0 XSR1,2 is empty /XRDY (bit 1) 0 Transmitter is not ready /XRST (bit 0) 0 serial port transmitter is disabled and in reset state /- 0000 0000 0000 0000 *(unsigned int*)McBSP0_SPSA=0x000E;/PCR *(unsigned int*)McBSP0_SPSD=0x0A0C; /X (bit 15-14) 00 Reseved /XIOEN (bit 13) 0 DX, FSX and CLKX are configured as serial port /RI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化学镀银工操作安全模拟考核试卷含答案
- 塑料模具工创新思维能力考核试卷含答案
- 工程船舶水手操作管理竞赛考核试卷含答案
- 多孔硝酸铵造粒工安全文明测试考核试卷含答案
- 绝缘防爆工具制作工岗前技术改进考核试卷含答案
- 五年级感冒咳嗽请假条
- 2025年呼吸制氧项目发展计划
- 2025年地震数字遥测接收机合作协议书
- 2026年数字孪生水务系统项目营销方案
- 2025年陕西省中考地理真题卷含答案解析
- 不良资产合作战略框架协议文本
- 2025年盐城中考历史试卷及答案
- 2026年孝昌县供水有限公司公开招聘正式员工备考题库完整参考答案详解
- 2025年郑州工业应用技术学院马克思主义基本原理概论期末考试模拟试卷
- 测绘资料档案汇交制度
- 2025年六年级上册道德与法治期末测试卷附答案(完整版)
- IPC7711C7721C-2017(CN)电子组件的返工修改和维修(完整版)
- 吕国泰《电子技术》
- 哈萨克族主要部落及其历史
- 2015比赛练习任务指导书
- 人教版七年级语文上册期末专题复习文言文训练及答案
评论
0/150
提交评论