打印
[STM8]

STM8 定时器2

[复制链接]
1013|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
我用定时器2定时12.5us 输出到GPIOB口中的一个脚上,配置如下
void Tim2_Init(void)
{
  /* Enable TIM2 clock */
  CLK_PeripheralClockConfig(CLK_Peripheral_TIM2, ENABLE);
  TIM2_DeInit();
  TIM2->IER = 0x00; // 禁止中断
  TIM2->PSCR = 0x00; // 计数器时钟=主时钟/128=2MHZ/2
  // 设定重装载时的寄存器值
  // 注意必须保证先写入高8 位,再写入低8 位
  TIM2->ARRH = 0x00; // 设定重装载时的寄存器的高8 位
  TIM2->ARRL = 0x32;
  TIM2->CNTRH = 0x00; // 设定计数器的初值
  TIM2->CNTRL = 0x32;
  TIM2->EGR = 0x01; // 允许产生更新事件
  
  TIM2->EGR = 0x01; // 允许产生更新事件
// 相当于计数器周期为1uS
  
  // 定时周期=1*60000=60000uS=60ms
  TIM2->CR1 |= 0x01; // b0 = 1,允许计数器工作
  // b1 = 0,允许更新
  // 设置控制器,启动定时器
  TIM2->IER = 0x01; // 允许更新中断
  TIM2->SR1 = 0X00;
}

结果波形不对,帮忙查看一哈哪里配置有问题?

boxign.bmp (1.86 MB )

这个是示波器捕捉到的波形

这个是示波器捕捉到的波形
沙发
yilusuiyuan|  楼主 | 2015-4-15 10:01 | 只看该作者
我找到原因了,因为时间太短了,有其他中断影响!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:看山是山,看水是水!

5

主题

44

帖子

0

粉丝