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

查看: 6043|回复: 1

【ST公益分享】STM8 定时器2 占空比

[复制链接]

10

主题

10

回帖

0

蝴蝶豆

新手上路

最后登录
2019-8-1
发表于 2011-3-23 23:42:36 | 显示全部楼层 |阅读模式
TIMx_OCMODE_TOGGLE   //此模式或产生任意频率的50%占空比方波 (FOSC/分频系数)/(2*TIM2_Period)
  TIMx_OCMODE_PWM1    //PWM模式可设置PWM一周期的时钟数,并调可节占空比
<div class="dp-highlighter">view plaincopy to clipboardprint?

<ol start="1" class="dp-c">    <li class="alt">#include "stm8s.h"      #include "stm8s_tim2.h"  
    <li class="alt">#include "stm8s_tim3.h"      u16 CCR1_Val = 300;  
    <li class="alt">u16 CCR2_Val = 100;      u16 CCR3_Val = 100;  
    <li class="alt">void main(void)      {   
    <li class="alt">  CLK_HSECmd(ENABLE);//外部时钟开        CLK_LSICmd(ENABLE);//使能内部低频RC  
    <li class="alt">  CLK_HSICmd(ENABLE);//使能内部高频RC         CLK_SYSCLKConfig(CLK_PRESCALER_HSIDIV1);//内部高速RC振荡时钟分频  
    <li class="alt">  CLK_SYSCLKConfig(CLK_PRESCALER_CPUDIV1);//CPU核心时钟分频           CLK_ClockSwitchCmd(ENABLE); //切换使能  
    <li class="alt">  CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO ,CLK_SOURCE_HSE,DISABLE,CLK_CURRENTCLOCKSTATE_DISABLE);//切换配置        
    <li class="alt">  TIM3_TimeBaseInit(TIM3_PRESCALER_1, 1024);          
    <li class="alt">  TIM3_OC1Init(TIM3_OCMODE_TOGGLE, TIM3_OUTPUTSTATE_ENABLE,CCR1_Val, TIM3_OCPOLARITY_HIGH);//此模式或产生任意频率的50%占空比方波 (FOSC/分频系数)/(2*TIM2_Period)        TIM3_OC1PreloadConfig(ENABLE);    
    <li class="alt">          TIM3_OC2Init(TIM3_OCMODE_TOGGLE, TIM3_OUTPUTSTATE_ENABLE,CCR1_Val, TIM3_OCPOLARITY_HIGH);//此模式或产生任意频率的50%占空比方波 (FOSC/分频系数)/(2*TIM2_Period)  
    <li class="alt">  TIM3_OC2PreloadConfig(ENABLE);            
    <li class="alt">  TIM3_ARRPreloadConfig(ENABLE);        TIM3_Cmd(ENABLE);  
    <li class="alt">          /* Time base configuration */  
    <li class="alt">  TIM2_TimeBaseInit(TIM2_PRESCALER_1, 1024);        TIM2_OC1Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE,CCR1_Val, TIM2_OCPOLARITY_HIGH);//PWM模式可设置PWM一周期的时钟数,并调可节占空比  
    <li class="alt">  TIM2_OC1PreloadConfig(ENABLE);          
    <li class="alt">  TIM2_OC2Init(TIM2_OCMODE_PWM1, TIM2_OUTPUTSTATE_ENABLE,CCR1_Val, TIM2_OCPOLARITY_HIGH);//PWM模式可设置PWM一周期的时钟数,并调可节占空比        TIM2_OC2PreloadConfig(ENABLE);    
    <li class="alt">  TIM2_ARRPreloadConfig(ENABLE);        TIM2_Cmd(ENABLE);  
    <li class="alt">        while (1)  
    <li class="alt">  {          DelayUs(1000);  
    <li class="alt">    if(CCR1_Val
回复

使用道具 举报

91

主题

4603

回帖

4

蝴蝶豆

论坛元老

最后登录
2020-12-8
发表于 2017-7-3 11:33:02 | 显示全部楼层
来点注释就好了
回复 支持 反对

使用道具 举报

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版