请选择 进入手机版 | 继续访问电脑版

安富莱电子论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 5601|回复: 1
收起左侧

stm8l 外部脉冲计数始终为零。。。求助

[复制链接]

7

主题

36

帖子

7

积分

新手上路

积分
7
发表于 2015-7-10 15:42:41 | 显示全部楼层 |阅读模式
RT:我想用stm8L的 外部时钟源模式2 进行计频,我调用了tim2的库函数,TIM2_CH1通道(PB0)计数,结果一直为零。
程序:

void TIM2_CH1_ETR_Init(void)
{
        TIM2_DeInit();    //复位TIME2
        CLK_PeripheralClockConfig(CLK_Peripheral_TIM2,ENABLE); //开启TIME2的时钟中断
        FLASH_Unlock(FLASH_MemType_Data);
        FLASH_ProgramOptionByte(0x5253,0x20);
        FLASH_Lock(FLASH_MemType_Data);
        GPIO_Init(GPIOB,GPIO_Pin_0,GPIO_Mode_In_PU_No_IT);
        
        TIM2_TimeBaseInit(TIM2_Prescaler_1,TIM2_CounterMode_Up,65535);//不分频 ,计数 65535
        
        TIM2_ETRClockMode2Config(TIM2_ExtTRGPSC_OFF,TIM2_ExtTRGPolarity_NonInverted,0);//没有外部触发预分频器,高电平或上升沿有效,使能外部时钟模式2
        
        TIM2_SelectInputTrigger(TIM2_TRGSelection_ETRF); //选择外部触发
        TIM2_ARRPreloadConfig(ENABLE);
        
        TIM2_ClearFlag(TIM2_FLAG_Update);
        TIM2_ITConfig(TIM2_IT_Update,ENABLE);   //打开中断
        
        TIM2_SetCounter(0);
        TIM2_Cmd(ENABLE);
}



@far @interrupt void TIM2_IRQHandler(void){
        if (TIM2_GetITStatus(TIM2_IT_Update) != RESET)             {
                TIM2_ClearITPendingBit(TIM2_IT_Update);                Cnt_a++;
            }}
然后在定时器1里面计算:

@far @interrupt void TIMER1_IRQHandler(void){
        if(TIM1_GetITStatus(TIM1_IT_Update)== SET) //溢出中断        {
                TIM1_ClearITPendingBit(TIM1_IT_Update);                TIM1_Cmd(DISABLE);
                TIM2_Cmd(DISABLE);                Frequency=Cnt_a*65535 + TIM2_GetCounter();
                TIM2_SetCounter(0);                Cnt_a = 0;
                TIM1_Cmd(ENABLE);                TIM2_Cmd(ENABLE);
              printf("the period is : %d\n",Frequency);        }
    }
回复

使用道具 举报

5537

主题

3万

帖子

4万

积分

管理员

做人第一,工作第二

Rank: 9Rank: 9Rank: 9

积分
44725
QQ
发表于 2015-7-10 16:42:56 | 显示全部楼层
一直没有用STM8,帮顶
淘宝小店: https://armfly.taobao.com/
专注,努力,用心的做好每一件事情,Fighting!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|安富莱电子论坛 ( 鄂ICP备09023347号,公安机关备案号42010602000201 )

GMT+8, 2019-4-24 02:12 , Processed in 0.159490 second(s), 24 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表