部件号:LAUNCHXL-F2.8377万S
工具/软件:Code Composer Studio
您好,
请告诉我如何声明正确的变量。 我要将此DELAY DELAY DELAY _US(1000*500)声明为程序末尾给出的变量T1。
//包含的文件
//
#include "F28x_Project.h"
//
//定义
//
#Define Blinky_LED_GPIO 12.
中断无效XINT1_ISR(void);
Void主(void)
{
//
//步骤1. 初始化系统控制:
// PLL,看门狗,启用外设时钟
//此示例函数可在F2837xS_sysctrl.c文件中找到。
//
InitSysCtrl();
//
//步骤2. 初始化GPIO:
//此示例函数可在F2837xS_GPIO.c文件和中找到
//说明了如何将GPIO设置为其默认状态。
//
伊尼特·格皮奥();
GPIO_SetupPinMux (Blinky_LED_GPIO,GPIO _MUX_CPU1,0);
GPIO_SetupPinOptions (Blinky_LED_GPIO,GPIO输出,GPIO);
//
//步骤3. 清除所有中断并初始化PIE矢量表:
//禁用CPU中断
//
色调;
//
//将PIE控件寄存器初始化为其默认状态。
//默认状态是禁用所有PIE中断和标志
//被清除。
//此函数位于F2837xS_PIECTRL.c文件中。
//
InitPieCtrl();
//
//禁用CPU中断并清除所有CPU中断标志:
//
IER = 0x0000;
IFR = 0x0000;
//
//使用指向外壳中断的指针初始化PIE矢量表
//服务例程(ISR)。
//这将填充整个表,即使中断也是如此
//在本例中不使用。 这对于调试非常有用。
// shell ISR例程位于F2837xS_DefaultIsr.C.中
//此函数位于F2837xS_PieVect.C.中
//
InitPieVectorTable();
//
//本示例中使用的中断被重新映射到
//此文件中找到ISR函数。
//
EALLOW;//这是写入EALLOW保护寄存器所必需的
PieVectorTable.XINT1_INT =&XINT1_ISR;
EDIS;//这是禁用写入EALLOW保护寄存器所必需的
//
//
//在PIE中启用XINT1和XINT2:组1中断4和5
//启用连接到WAKEINT的INT1:
//
PieCtrlRegs.PIECTRL.bit.ENPIE =1;//启用PIE块
PieCtrlRegs.PIEIER1.bit.INTx4 =1;//启用PIE组1 INT4
PieCtrlRegs.PIEIER1.bit.INTx5 =1;//启用PIE组1 INT5
IER || M_INT1;//启用CPU INT1
EINT;//启用全局中断
// GPIO14是输入
//
EALLOW;
GpioCtrlRegs.GPAMUX1.bit.GPIO14 = 0;// GPIO
gpioCtrlRegs.GPADIR.bit.GPIO14 = 0;//输入
GpioCtrlRegs.GPAQSEL1.bit.GPIO14 = 0;// XINT1仅同步到SYSCLKOUT
EDIS;
//
// GPIO14是XINT1
//
GPIO_SetupXINT1Gpio(14);
//
//配置XINT1
//
XintRegs.XINT1CR.Bit.Polarity = 1;//提升边缘中断1
//下降边缘中断0
//
//启用XINT1
//
XintRegs.XINT1CR.bit.enable = 1;//启用XINT1
//
//
//启用全局中断和更高优先级的实时调试事件:
//
EINT;//启用全局中断INTM
ERTM;//启用全局实时中断DBGM
//
//步骤6。 空闲循环。 只需坐下来永远循环(可选):
//
对于(;;)
{
}
}
//
//我的内部
//
// XINT1_ISR -外部中断1 ISR
//
中断无效XINT1_ISR(void)
{
//
//打开LED
//
GPIO写入引脚(Blinky_LED_GPIO,0);
//
//延迟一段时间。
//
DELAY _US(1000*500);
//
//关闭LED
//
GPIO_WritePin (Blinky_LED_GPIO,1);
//
//延迟一段时间。
//
DELAY _US(1000*500);
//打开LED
//
GPIO写入引脚(Blinky_LED_GPIO,0);
//
//延迟一段时间。
//
DELAY _US(1000*500);
//
//关闭LED
//
GPIO_WritePin (Blinky_LED_GPIO,1);
//
//延迟一段时间。
//
DELAY _US(1000*500);
//
//确认此中断以从组1获得更多信息
//
PieCtrlRegs.PIEACG.ALL = PIEACK_GROUP1;
}
//
//文件结束
//
