• STM32.定时器


    一.定时器分类

    11个定时器:

    定时器:

    1、8      高级(7路PWM输出)

    2、3、4、5  通用(4路)

    6、7        基本

    2个看门狗

    1个sysTick

    时钟分布:

    二.这里我们主要对定时器中 定时时间的安排以及几路PWM的输出配置

    1,时间安排

    当计数器达到自动重装载寄存器值 就会发生中断。

    2.TIM2_Configuration(void)

    其中的这两句

    /* 自动重装载寄存器周期的值(计数值)*/
    TIM_TimeBaseStructure.TIM_Period=1000;

    /*时钟预分频数为71+1*/
    TIM_TimeBaseStructure.TIM_Prescaler= 71;

    故定时器溢出时间为:

    TIM_Period / Auto Reload Register(ARR) = 1000   TIM_Prescaler--71 

    TIM_Period = 1 / (72MHz/72)

    故中断时间:1 / (72MHz/72)*1000 = 1ms

    3.输出方波(输出比较)

    TIMxCLK/CK_PSC --> TIMxCNT --> TIMx_ARR --> TIMxCNT 重新计数

                (计数寄存器)

                TIMx_CCR(电平发生跳变)

    TIMxCNT = TIMx_CCR //当两个寄存器的值相等的时候电平发生跳变

    TIMx_CCR:自动重装载寄存器的值:

    TIM_TimeBaseStructure.TIM_Period = 999;

    CK_PSC分频:

     TIM_TimeBaseStructure.TIM_Prescaler = 0;

    ②信号周期=(TIMx_ARR +1 ) * 时钟周期

    ③占空比=TIMx_CCR/(TIMx_ARR +1)

      TIM_OCInitStructure.TIM_Pulse = CCR1_Val;

    同一个定时器,输出4路PWM波形,频率不可不同,波特率可不同;

    在使用KEIL自带的仿真的时候,

    Use Simulator

  • 相关阅读:
    2018-8-10-win10-uwp-win2d-使用-Path-绘制界面
    2018-8-10-win10-uwp-win2d-使用-Path-绘制界面
    PHP money_format() 函数
    PHP metaphone() 函数
    PHP md5_file() 函数
    PHP md5() 函数
    PHP ltrim() 函数
    查看统计信息
    CF960F Pathwalks_权值线段树_LIS
    hdu 5691 Sitting in line 状压动归
  • 原文地址:https://www.cnblogs.com/Ph-one/p/4110421.html
Copyright © 2020-2023  润新知