[STM8] STM8s tim1 计频 问题

[复制链接]
6935|9
 楼主| wgggjfg 发表于 2010-5-11 22:44 | 显示全部楼层 |阅读模式
我想用stm8s的 外部时钟源模式2 进行计频,我调用了tim1的库函数,我从外部引脚([TIM1_ETR] AIN3/PB3)发信号,TIM1使终不计数,也没进中断,有人能解决一下吗?或都有人用过该模试的发个源码上来。
源程序如下:
TIM1_DeInit();
TIM1_ETRClockMode2Config(TIM1_EXTTRGPSC_DIV4,TIM1_EXTTRGPOLARITY_INVERTED,1);
TIM1_TimeBaseInit(0,TIM1_COUNTERMODE_UP,100,0x2);
TIM1_ITConfig(TIM1_IT_UPDATE,ENABLE);
TIM1_Cmd(ENABLE);
wenshu20 发表于 2010-5-12 15:25 | 显示全部楼层
改变选项字节,PB3备选功能为TIM1_ETR!
gxgclg 发表于 2010-5-12 20:00 | 显示全部楼层
从两个方面找,一个是信号进来没,二是中断到底开了没,也就是说配置好了没
 楼主| wgggjfg 发表于 2010-5-12 20:18 | 显示全部楼层
说细点好吗?
是在GPIO里配置,还是在TIM1中了?
手册上是这样说的:
11.7.1复用功能输入
部分I/O口可以被用作复用功能输入。例如:可以被用来作为输入到定时器的输入捕捉口。复用的输入功能是不会自动选择的,用户可以通过写相应的外设寄存器的控制位来选择复用功能。
xsgy123 发表于 2010-5-12 20:24 | 显示全部楼层
首先检查的是中断的配置
wenshu20 发表于 2010-5-12 20:40 | 显示全部楼层
你确定备选功能改了吗?
 楼主| wgggjfg 发表于 2010-5-12 22:50 | 显示全部楼层
在调试窗口中可看到Tim1没有计数,跟开没开中断没有关系吧。
我对GPIO模块没设置,但默认就是输入。
备选功能是不是说的这里(手册资料):
位6 ECE:外部时钟使能
该位用于使能外部时钟模式2。
0:禁止外部时钟模式2;
1:使能外部时钟模式2,计数器的时钟为ETRF的有效沿。

ECE 已在"TIM1_ETRClockMode2Config"置1了
wenshu20 发表于 2010-5-13 10:32 | 显示全部楼层
//选项字节
        FLASH_Unlock(FLASH_MEMTYPE_DATA);
        FLASH_ProgramOptionByte(0x4803,0x20);//端口B3备选功能为TIM1_ETR
        status = FLASH_WaitForLastOperation(FLASH_MEMTYPE_DATA);
        if (status == FLASH_STATUS_SUCCESSFUL_OPERATION)
        {
       
        }
                FLASH_Lock(FLASH_MEMTYPE_DATA);

去看看你所用芯片的手册中的选项字节!
CrazyST 发表于 2010-5-16 10:25 | 显示全部楼层
跟我之前犯的错误一样,没有改IO复用第二功能选项字节没有改,STVP改最方便
jiachenglong01 发表于 2013-3-28 12:31 | 显示全部楼层
CrazyST 发表于 2010-5-16 10:25
跟我之前犯的错误一样,没有改IO复用第二功能选项字节没有改,STVP改最方便 ...

你好,我刚接触stm8,用的STVD+COSMIC,stm8s103f3p6。检测高电平宽度快一周了还是捕获不了,很急,能不能给个捕捉的    库操作   工程文件,谢谢。1032186673@qq.com
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:专业人做专业事!高效充电。

65

主题

438

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部