我用stm8s003f3p6定时器1定时10us进入一次中断,为什么实现不了?

2019-07-19 20:38发布

       我用stm8s003f3p6定时器1定时10us进入一次中断,为什么实现不了?      我进入中断翻转一次io电平,用示波器看确实20us翻转一次,这是为什么?(采用内部16m晶振)以下是定时器初始化代码

    TIM1->CR1 = 0x00;         //计数器使能,开始计数
    TIM1->IER = 0x01;         //允许更新中断
    TIM1->PSCRH = 0;
    TIM1->PSCRL = 15;          //(15+1)分频为1M
    TIM1->ARRH = 0x0;
    TIM1->ARRL = 0x0A;        //每10us中断一次
    TIM1->CR1 = 0x01;         //计数器使能,开始计数



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
12条回答
TCS
1楼-- · 2019-07-19 21:44
是你不是哪里搞错了,有点不对的就是ARRL也是10-1,也就是9
dozm
2楼-- · 2019-07-20 01:10
 精彩回答 2  元偷偷看……
dozm
3楼-- · 2019-07-20 04:27
试试定时器的PWM+外部晶振 有机会
ssssssssssss
4楼-- · 2019-07-20 09:19
 精彩回答 2  元偷偷看……
ssssssssssss
5楼-- · 2019-07-20 10:30
 精彩回答 2  元偷偷看……
ssssssssssss
6楼-- · 2019-07-20 11:44
dozm 发表于 2017-7-8 15:55
试试定时器的PWM+外部晶振 有机会

用寄存器就好了

一周热门 更多>