刚接触到华大的芯片,小新一枚,请大家多多关照
使用HC32F003的基本定时器,去官网上也下载了例程,下载到自己的板子上发现无法进入中断,网上搜没有帖子作参考,自己琢磨了一天也没用,还请大家帮我看看
void Tim2_IRQHandler(void)
{
Gpio_WriteOutputIO(LEDRed_GPIO,TRUE);
if (TRUE == Bt_GetIntFlag(TIM2))
{
Bt_ClearIntFlag(TIM2);
timer.time1++;
if(timer.time1>30000)
timer.time1=0;
}
}
void BaseTime_Init(void)
{
stc_bt_cfg_t stcCfg;
uint16_t u16ArrData = 0xf000;
uint16_t u16InitCntData = 0xC000;
DDL_ZERO_STRUCT(stcCfg);
Sysctrl_SetPeripheralGate(SysctrlPeripheralBt, TRUE);//打开BT外设时钟
stcCfg.enGateP = BtPositive; //门控极性控制
stcCfg.enGate = BtGateDisable; //门控使能
stcCfg.enPRS = BtPCLKDiv8; //预除频配置
stcCfg.enTog = BtTogDisable; //反转输出使能
stcCfg.enCT = BtTimer; //定时/计数功能选择
stcCfg.enMD = BtMode2; //计数模式配置
Bt_Init(TIM2, &stcCfg);//Bt初始化
//设置重载值和计数值,启动计数
Bt_ARRSet(TIM2, u16ArrData);
Bt_Cnt16Set(TIM2, u16InitCntData);
Bt_Run(TIM2);
//TIM2中断使能
Bt_ClearIntFlag(TIM2);
Bt_EnableIrq(TIM2);
EnableNvic(TIM2_IRQn, IrqLevel2, TRUE);
}
就这些代码,没其他的了
|