完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
#include "DSP2833x_Device.h"
#include "DSP2833x_examples.h" #include "LED.h" /***********************函数声明**********************/ void DELAY1(Uint32 t); interrupt void Light_led1(); interrupt void Light_led2(); #define tiME 10000000 /***********************主程序************************/ void DELAY1(Uint32 t) { Uint32 i; for (i=0;i void main() { /*******初始化*********/ InitSysCtrl(); DINT; InitPieCtrl(); IER=0x0000; IFR=0x0000; InitPieVectTable(); //Init_LED(); //Init_KEYBOARD(); /*******外部中断PIE向量表配置*********/ EALLOW; //PieVectTable.XINT1=&Light_led1; //PieVectTable.XINT2=&Light_led2; EDIS; /*******PIE,CPU中断使能*********/ PieCtrlRegs.PIECTRL.bit.ENPIE=1; PieCtrlRegs.PIEIER1.bit.INTx4=1; PieCtrlRegs.PIEIER1.bit.INTx5=1; IER |= M_INT1; EINT; //开全局中断 /*外部中断采样频率(与系统时钟相同)*/ EALLOW; GpioCtrlRegs.GPBPUD.bit.GPIO60=0; //LED10输出设置初始化 GpioDataRegs.GPBSET.bit.GPIO60=1; // GpioCtrlRegs.GPBMUX2.bit.GPIO60=0; // GpioCtrlRegs.GPBDIR.bit.GPIO60=1; // GpioCtrlRegs.GPBPUD.bit.GPIO61=0; //LED11输出设置初始化 GpioDataRegs.GPBSET.bit.GPIO61=1; // //GpioDataRegs.GPBCLEAR.bit.GPIO61=0; // GpioCtrlRegs.GPBMUX2.bit.GPIO61=0; // GpioCtrlRegs.GPBDIR.bit.GPIO61=1; // EDIS; EALLOW; GpioCtrlRegs.GPADIR.bit.GPIO14=0; //K3输入设置初始化 GpioCtrlRegs.GPAMUX1.bit.GPIO14=0; // GpioCtrlRegs.GPADIR.bit.GPIO15=0; //K4输入设置初始化 GpioCtrlRegs.GPAMUX1.bit.GPIO15=0; // EDIS; EALLOW; GpioCtrlRegs.GPAQSEL1.bit.GPIO14=0; GpioCtrlRegs.GPAQSEL1.bit.GPIO15=0; EDIS; /***********中断I/O接口************/ GpioIntRegs.GPIOXINT1SEL.bit.GPIOSEL=0x0E; GpioIntRegs.GPIOXINT2SEL.bit.GPIOSEL=0x0F; /*******触发方式(下降沿)*********/ XIntruptRegs.XINT1CR.bit.POLARITY=0; XIntruptRegs.XINT2CR.bit.POLARITY=0; /*********使能XINT1、XINT2*********/ XIntruptRegs.XINT1CR.bit.ENABLE=1; XIntruptRegs.XINT2CR.bit.ENABLE=1; /**************D10、D11屏蔽******************/ for(;;); } /*********************中断子程序***********************/ interrupt void Light_led1(void) { Uint32 i; int A; A=K3_SWITCH; for(i=0;i<10000000;i++); while(A==0) D10_ON; DELAY1(TIME); PieCtrlRegs.PIEACK.all=PIEACK_GROUP1; } interrupt void Light_led2(void) { Uint32 i; Uint32 j; int B; B=K4_SWITCH; for(i=0;i<10000000;i++); while(B==0) for(j=0;j<5;j++) { D11_ON; DELAY1(TIME); D11_OFF; DELAY1(TIME); } PieCtrlRegs.PIEACK.all=PIEACK_GROUP1; } |
|
相关推荐
1个回答
|
|
PIE向量的函数地址屏蔽掉了还有中断组的启用也有问题
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
593 浏览 0 评论
基于 DSP5509 进行数字图像处理中 Sobel 算子边缘检测的硬件连接电路图
3410 浏览 0 评论
814 浏览 0 评论
普中科技F28335开发板中,如何使用aic23播放由代码生成的正弦波
3830 浏览 0 评论
4588 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 00:26 , Processed in 0.563203 second(s), Total 78, Slave 60 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号