完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include "DSP28x_Project.h"
#define AD_EN GpioDataRegs.GPADAT.bit.GPIO16 //GPIO0作为启动中断信号,上升沿有效 interrupt void cpu_timer0_isr(); //定时器0中断服务子程序 void main() { // Uint16 i; InitSysCtrl(); //系统初始化 DINT; //关闭全局中断 InitPieCtrl(); //初始化PIE IER=0x0000; //关闭CPU中断 IFR=0x0000; //清除CPU中断信号 InitPieVectTable(); //初始化中断向量列表 //adc_init(); //初始化ADC模块 EALLOW; PieVectTable.TINT0=&cpu_timer0_isr; EDIS; InitCpuTimers(); //初始化定时器 #if(CPU_FRQ_150MHZ) //如果系统时钟频率为150MHz ConfigCpuTimer(&CpuTimer0,150,1000000); #endif #if(CPU_FRQ_100MHZ) //如果系统时钟频率为100MHz ConfigCpuTimer(&CpuTimer0,100,1000000); #endif if(AD_EN) //AD_EN上升沿到来启动中断,并且触发ADC转换开始 { CpuTimer0Regs.TCR.all=0x4001;//启动定时器0开始运行 EALLOW; GpioCtrlRegs.GPAMUX1.bit.GPIO5 = 0; GpioCtrlRegs.GPADIR.bit.GPIO5 = 1; EDIS; IER|=M_INT1; //使能CPU的中断信号 PieCtrlRegs.PIEIER1.bit.INTx7=1;//TINT0为与PIE组中的第7位 EINT;//使能全局中断 ERTM; } for(;;); } interrupt void cpu_timer0_isr() { CpuTimer0.InterruptCount++; //GpioDataRegs.GPATOGGLE.bit.GPIO5 = 1; PieCtrlRegs.PIEACK.all=PIEACK_GROUP1; } |
|
相关推荐 |
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
550 浏览 1 评论
1260 浏览 0 评论
基于DSP C6000教学实验箱_数字图像处理教程:5-9 图像反色实验案例分享
1557 浏览 0 评论
1257 浏览 0 评论
2575 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 17:59 , Processed in 0.539486 second(s), Total 70, Slave 54 queries .
Powered by 电子发烧友网
© 2015 www.ws-dc.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号