你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1595|回复: 3

关于103 Tim1捕获的求助

[复制链接]

4

主题

10

回帖

4

蝴蝶豆

初级会员

最后登录
2020-8-12
发表于 2013-1-16 22:02:21 | 显示全部楼层 |阅读模式
各位大侠,

       我在用STM8s103F2时遇到这样的问题。

       TIM1的捕获用不了。同样的程序在105上运行得很好。

       以下是我的程序。请大家给我点建议,

void Tim1CapInit(void)
{
    /*时钟分频*/
    TIM1-&gtSCRH = 0x00;
    TIM1-&gtSCRL = 0x08;

    /*失能捕获1*/
    TIM1->CCER1 &= ~0x01;
       
    /*CH1配置为输入,映射到TI1FP1上*/
    TIM1->CCMR1 = (TIM1->CCMR1& (~(0x03 | 0x0F))) | 0x01;

    /*低电平或者下降沿有效*/
    TIM1->CCER1 |= 0x02;

    /*使能捕获1*/
    TIM1->CCER1 |= 0x1;
   
    /*允许捕获溢出中断*/
    TIM1->IER |= 0x02;
    TIM1->IER |= 0x01;

    /*启动定定时器1*/
    TurnOnT1();
   
    /*启用定时器*/
    enableInterrupts();
    //TIM1->CR1 |= 0x01;
}

/*定时器1捕获中断处理*/
@far @interrupt void T1_Capture(void )
{
    if(0x02 == (TIM1->SR1 & 0x02))
    {
        TIM1->SR1 &=  ~0xFF;
    }
}

/*定时器1溢出中断处理*/
@far @interrupt void T1_OverFlow(void)
{
    if(0x01 == (TIM1->SR1 & 0x01))
    {
        TIM1->SR1 &=  ~0x01;
    }
}

void main(void)
{
    #ifdef STM8S105   /*105的通道1在C1*/
    GPIO_Init(GPIOC,GPIO_PIN_1,GPIO_MODE_IN_FL_NO_IT);
    #endif

    #if STM8S103      /*103的通道1在C6*/
    GPIO_Init(GPIOC,GPIO_PIN_6,GPIO_MODE_IN_FL_NO_IT);
    #endif
   
    Tim1CapInit();
    while (1);
}
回复

使用道具 举报

8

主题

206

回帖

0

蝴蝶豆

中级会员

最后登录
2019-10-23
发表于 2013-1-17 09:26:12 | 显示全部楼层

RE:关于103 Tim1捕获的求助

怎么 STM8S 跟32 不一样的啥 你要仔细看看啥
回复 支持 反对

使用道具 举报

4

主题

10

回帖

4

蝴蝶豆

初级会员

最后登录
2020-8-12
 楼主| 发表于 2013-1-17 09:36:03 | 显示全部楼层

RE:关于103 Tim1捕获的求助

32的没有搞过,呵,所以不清楚的,
回复 支持 反对

使用道具 举报

4

主题

10

回帖

4

蝴蝶豆

初级会员

最后登录
2020-8-12
 楼主| 发表于 2013-1-17 11:44:32 | 显示全部楼层

RE:关于103 Tim1捕获的求助

终得结果,
原因是我的Option byte没有配置,
回复 支持 反对

使用道具 举报

关于 意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
13245底部标题123相同标题
12底部标题123相同标题
33333底部标题123相同序号
3435底部标题-无链接
关注我们
st-img 微信公众号
st-img 手机版