打印
[STM8]

是8位的而不是DATASHEET上所说的16位

[复制链接]
610|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiahy|  楼主 | 2018-12-7 12:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在使用STM8L051的TIM3 PWM时发现,这东东是8位的而不是DATASHEET上所说的16位
沙发
wyjie| | 2018-12-7 12:18 | 只看该作者
然后呢?你是怎么应对这个的呢

使用特权

评论回复
板凳
jiahy|  楼主 | 2018-12-7 12:21 | 只看该作者
CC1H这人寄存器没有卵用。设置这个寄存器对脉宽没有任何影响。花了我一天的时间!!!

使用特权

评论回复
地板
jlyuan| | 2018-12-7 12:24 | 只看该作者
这么多的TIM,肯定不可能都是16位

使用特权

评论回复
5
yszong| | 2018-12-7 12:29 | 只看该作者
通常只有一到两个是,其余都是8,手册也有错的,看看有没有勘误表。

使用特权

评论回复
6
jiahy|  楼主 | 2018-12-7 12:32 | 只看该作者

这东东不做为PWM使用就是16位的,勘误表也没写。

使用特权

评论回复
7
yiyigirl2014| | 2018-12-7 12:50 | 只看该作者
CLK_PeripheralClockConfig(CLK_Peripheral_TIM3, ENABLE);
/*
                set SB_TX_LOCK mode:
                PWM mode,T = 60us,
                Duty Ratio: 3/4  represents  send bit 1
                                                                1/2  represents  send bit 0
                                                                1/4  represents  a  respond
        TIM3_Prescaler_16,and T = 60;                                               
        */
        GPIO_Init(SB_TX_LOCK_PORT,SB_TX_LOCK_PIN,GPIO_Mode_Out_PP_High_Fast);
       
        TIM3_DeInit();
       
#if (SYS_CLOCK_16M)
        TIM3_TimeBaseInit(TIM3_Prescaler_16, TIM3_CounterMode_Up,PWM_T);
#endif
#if (SYS_CLOCK_8M)
        TIM3_TimeBaseInit(TIM3_Prescaler_8, TIM3_CounterMode_Up,PWM_T);
#endif
#if (SYS_CLOCK_4M)
        TIM3_TimeBaseInit(TIM3_Prescaler_4, TIM3_CounterMode_Up,PWM_T);
#endif

  /* PWM1 Mode configuration: Channel1 default Duty Ratio is 1/2 */
  TIM3_OC1Init(TIM3_OCMode_PWM1, TIM3_OutputState_Enable,PWM_T/2,TIM3_OCPolarity_High,TIM3_OCIdleState_Set);
  TIM3_OC1PreloadConfig(ENABLE);
        TIM3_ARRPreloadConfig(ENABLE);
        TIM3_ITConfig(TIM3_IT_Update,ENABLE);
        /*enable PWM output*/
        TIM3_CtrlPWMOutputs(ENABLE);   
  /* TIM3 enable counter */
        TIM3_Cmd(ENABLE);
该代码已经测试通过。占空比是50%,周期是PWM_T.

使用特权

评论回复
8
yiyigirl2014| | 2018-12-7 18:49 | 只看该作者
难道手册错了?

使用特权

评论回复
9
天灵灵地灵灵| | 2018-12-8 16:48 | 只看该作者
不会吧,没用过这个,难道手册错了很多年?

使用特权

评论回复
10
wanduzi| | 2018-12-9 16:48 | 只看该作者
手册也错?开玩笑呢?这么重要的一个参数怎么会搞错。

使用特权

评论回复
11
晓伍| | 2018-12-11 12:54 | 只看该作者
发现问题就行啊 要不然能卡好几天呢

使用特权

评论回复
12
wakayi| | 2018-12-12 12:53 | 只看该作者
并不是所有的都支持16位寄存器操作

使用特权

评论回复
13
paotangsan| | 2018-12-12 13:01 | 只看该作者
这个还真没关心过 都是用cube生成代码的

使用特权

评论回复
14
labasi| | 2018-12-12 13:02 | 只看该作者
这都是细节啊

使用特权

评论回复
15
heimaojingzhang| | 2018-12-12 13:23 | 只看该作者
估计之后st会出勘误表吧

使用特权

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

本版积分规则

862

主题

9861

帖子

4

粉丝