6291|8

10

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

stm32 has not field TIM_Channel如可解决。说有ST库更新呀? [复制链接]

在做TIM2方波的时候没有输出。TIM配置如下:
  TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
  TIM_OCInitTypeDef TIM_OCInitStructure;/**/
  TIM_DeInit(TIM2);/**/
  /*----配置时间基-------------------------------------------------------------------*/
  TIM_TimeBaseStructure.TIM_Period = 0xffff;
  TIM_TimeBaseStructure.TIM_Prescaler = 0x02;
  TIM_TimeBaseStructure.TIM_ClockDivision = 0x0;
  TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
  TIM_TimeBaseInit(TIM2,&TIM_TimeBaseStructure);
  /*----通道 1 输出比较模式----------------------------------------------------------*/
  /**/
  TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Toggle;
  TIM_OCInitStructure.TIM_Channel = TIM_Channel_1;/**/  
  TIM_OCInitStructure.TIM_Pulse = CCR1_Val;
  TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
  TIM_OC1Init(TIM2,&TIM_OCInitStructure);
  TIM_OC1PreloadConfig(TIM2,TIM_OCPreload_Disable);

  
  TIM_Cmd(TIM2,ENABLE);
  TIM_ITConfig(TIM2,TIM_IT_CC1,ENABLE);/**/
void TIM2_IRQHandler(void)
{ /*
  if(TIM_GetITStatus(TIM2,TIM_IT_Update)!=RESET)
    {
   TIM_ClearITPendingBit(TIM2,TIM_IT_Update);
   GPIO_WriteBit(GPIOB,GPIO_Pin_5,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOB,GPIO_Pin_5)));
}*/
  /**/
  if(TIM_GetITStatus(TIM2,TIM_IT_CC1)!=RESET)
    {
   TIM_ClearITPendingBit(TIM2,TIM_IT_CC1);
   capture1=TIM_GetCapture1(TIM2);
   TIM_SetCompare1(TIM2,capture1+CCR1_Val);
    }
}


编译的时候出现 has not field TIM_Channel问题     查看ST库是发现OCInit中没有定义TIM_Channel
到网站查找问题,一般都说是ST有差异。这个问题如何解决呢?????
谁有新的ST库分享下,谢谢!!!!
此帖出自stm32/stm8论坛

最新回复

为什么这一句要删掉,是不是2.0的库需要,3.5的库就不需要了?  详情 回复 发表于 2016-11-2 10:24
点赞 关注
 

回复
举报

2131

帖子

0

TA的资源

至上芯片

沙发
 
你用的是哪个版本的库呢?
应该是TIM_Channel这个吧,你首先看看stm32f10x_tim.h中的定义
此帖出自stm32/stm8论坛
 
个人签名处处留心皆学问!
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
TIM_Channel 在OCInit没有定义 在ICInit中定义
此帖出自stm32/stm8论坛
 
 

回复

2131

帖子

0

TA的资源

至上芯片

4
 

回复 板凳 xy03043126 的帖子

那么你定义一个TIM_ICInitTypeDef 的变量TIM1_ICInitStructure

TIM1_ICInitTypeDef  TIM1_ICInitStructure;
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;
  ........
  TIM1_OC1Init(&TIM1_ICInitStructure);
你定义的是V2.0的库中是你原来那样使用的,你可以参考厂家给的关于各个库的例子,或者相关说明文件,不同版本之间的差距不同!如果出现错误你可以在相关的头文件中查找一下! 你可以去官方下一个最新库的程序,参考一下.如果是2.0和低版本的我用过,不过高的就没用过了,不知道你现在用的是哪个型号的!

[ 本帖最后由 daicheng 于 2009-12-24 09:03 编辑 ]
此帖出自stm32/stm8论坛
 
个人签名处处留心皆学问!
 
 

回复

6366

帖子

4896

TA的资源

版主

5
 
看看你的包含文件里有没有这个文件,如果没有,加上这个文件看那

另外,你的程序是根据那个版本的库写的,然后对照这个版本的库

最新的库文件到ST官方下是最准确的
此帖出自stm32/stm8论坛
 
 
 

回复

57

帖子

0

TA的资源

一粒金砂(中级)

6
 
TIM_OCInitStructure.TIM_Channel = TIM_Channel_1;/**/   这句删掉,多余的;
此帖出自stm32/stm8论坛
 
个人签名http://shop58590371.taobao.com/
 
 

回复

159

帖子

0

TA的资源

一粒金砂(高级)

7
 
有没有在开发环境里选错芯片类型?
此帖出自stm32/stm8论坛
 
个人签名*我的EMAIL:     sunke9@qq.com  
*我的博客http://blog.ednchina.com/sunke9/
*我网店:https://sunke9.taobao.com/
承接:电子、自动控制产品设计开发;单片机、ARM编程。
 
 

回复

10

帖子

0

TA的资源

一粒金砂(中级)

8
 
问题解决。通道1使用比较输出模式时使用如下配置:
    //TIM1_OC1模块设置
     TIM_OCStructInit(& TIM_OCInitStructure);
     TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_Toggle;              //管脚输出模式:翻转
     TIM_OCInitStructure.TIM_Pulse = 2000;                            //翻转周期:2000个脉冲
     TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;    //使能TIM1_CH1通道
     TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High;        //输出为正逻辑
     TIM_OC1Init(TIM1, &TIM_OCInitStructure);                         //写入配置
此帖出自stm32/stm8论坛

赞赏

1

查看全部赞赏

 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

9
 
yf654987 发表于 2009-12-24 09:21
TIM_OCInitStructure.TIM_Channel = TIM_Channel_1;/**/   这句删掉,多余的;

为什么这一句要删掉,是不是2.0的库需要,3.5的库就不需要了?
此帖出自stm32/stm8论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条
电源解决方案和技术 | DigiKey 应用探索站
当月好物、电源技术资源、特色活动、DigiKey在线实用工具,干货多多~

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表