#include "SYSCFG.h"
#define led PA1
#define led_out TRISA1
unsigned int xian_a1 =0;
volatile char W_TMP @ 0x70 ;//系统占用不可以删除和修改
volatile char BSR_TMP @ 0x71 ;//系统占用不可以删除和修改
void interrupt ISR(void)
{
#asm;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
NOP;//系统设置不可以删除和修改
#endasm;//系统设置不可以删除和修改
if(T4UIE && T4UIF)
{
xian_a1 ++;
if(xian_a1 ==10000)
{
xian_a1 =0;
//T4UIF = 1; //写1清零标志位
if(led ==1){led =0;} else{led =1;}
}
}
T4UIF = 0;
}
main()
{
TIM4EN =1; //TIM4 模块时钟
T4ARPE =1; //计数周期的自动预装载
T4CKS1 =0; //00 = Sysclk
T4CKS0 =0;
T4OPM =0; //单脉冲模式关闭
T4URS =1; //计数器上溢
T4UDIS =0; //产生更新事件控允许
T4CEN =1; //TIM4 计数使能
T4PSC2 =1; //Timer4 预分频100 = 16
T4PSC1 =1;
T4PSC0 =1;
//T4CNT =0; //Timer4 计数值
TIM4ARR =0x7f; //预装载值
//TIM4ARR =0x0f;
TIM4EN =1; //TIM4 模块时钟
GIE =1; //全局中断
PEIE =1; //外设总中断
T4UIE =1; //允许更新中断
//T4UIF //更新事件中断标志位
led_out =0; //0输出
led =1;
led =0;
MCKCF3 =0; //0111/1,0000/lirc
MCKCF2 =0;
MCKCF1 =0;
MCKCF0 =0;
while(1);
}
|