DSP定时器中断触发AD采样.docVIP

  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定时器中断触发AD采样

定时器中断触发AD采样 1、矢量文件vectors.asm ; SOLUTION FILE FOR VECtor.ASM .mmregs .def rsvect .ref _c_int0 .ref _adint .sect vectors ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ;Interrupt vector table for core ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ rsvect: b _c_int0 int1: b _int1 int2: b int2 int3: b int3 int4: b int4 int5: b int5 int6: b int6 2、主程序 .include register.h int ADRESULT[14]; // 定义一个数组用于保存AD转换的结果 volatile unsigned int j; // 定义一个指针变量j int i=0X00; // 屏蔽中断子程序 void inline disable() { asm(‘setc INTM‘); } // 开总中断子程序 void inline enable() { asm(‘clrc INTM’); } // 系统初始化子程序 void initial() { asm(‘setc SXM’); // 符号位扩展有效 asm(‘clrc OVM’); // 累加器中结果正常溢出 asm(‘clrc CNF’); // B0被配置为数据存储空间 *SCSR1=0x028c; // CLKIN=15M,CLKOUT=2*CLKIN=30M *WDCR=0x0E8; // 不使能看门狗,因为SCSR2中的WDOVERRIDE // 即WD?の桓次缓蟮娜笔≈滴?,故可以用 // 软件禁止看门狗 *IMR=0x0001; // 允许INT1中断 *IFR=0x0FFFF; // 清除全部中断标志,写1清0 } // AD初始化子程序 void ADINIT() { *MCRC=*MCRC|0x006; /* IOPE1-2被配置为基本功能方式,PWM7-8 */ *T3PR=0X6000; // 设置T3的周期寄存器 *ACTRB=0x06; /* PWM2低有效,PWM1高有效 */ *CMPR4=0x2000; /* 比较单元3设置 */ *T3CNT=0X0000; // T3计数器清0 *COMCONB=0x8200; /* 使能比较操作 */ *T3CON=0X1000; // T3为连续增计数模式,1分频,且选用内部时钟源 *DBTCONB=0x0FF0; /* DBTCONA=0x0AF0;//死区时间设为f*16*15.33us, ;使能死区定时器1\2\3(pwm123456) */ *GPTCONB=0X0100; // T3周期中断标志触发AD转换 *EVBIFRB=0X0FFFF; // 清除EVB中断标志,写1清0 *ADCTRL1=0X410; // 采样时间窗口预定标位ACQ PS3-ACQ PS0为0, // 转换时间预定标位CPS为0,AD为启动/停止模式,排 // 序器为级连工作方式,且禁止特殊的两种工作模式 *ADCTRL2=0X8404; // 可以用EVB的一个事件信号触发AD转换, // 且用中断模式1 *MAXCONV=0X0F; // 16通道 *CHSELSEQ1=0X3210; *CHSELSEQ2=0X7654; *CHSELSEQ3=0X0BA98; *CHSELS

文档评论(0)

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

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

1亿VIP精品文档

相关文档