OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5055|回复: 4

哪位仁兄能帮我把这段换成库函数版

[复制链接]

3

主题

17

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-7-28
在线时间
0 小时
发表于 2014-8-2 17:23:08 | 显示全部楼层 |阅读模式
5金钱
  
   RCC->APB2ENR|=1<<11;           //设置TIM1定时器时钟开启
  TIM1->SMCR&=0XFFF0;    //选择定时器TIM1时钟源为内部时钟,即SMS[2:0]为000B
 
  TIM1->ARR=arr;                //设置自动重装载寄存器,16为寄存器
  TIM1->SC=psc;                 //设置TIM1 预分频器,16为寄存器
  TIM1->RCR=0;     //设置重复计数器的值为0,即REP[7:0]为0
  TIM1->CR1&=0xffef;   //设置DIR为0,即计数器向上计数
    
  TIM1->CR1|=1<<2;      //选择更新请求源,设置URS
  TIM1->DIER|=1;    //UIE=1;允许更新中断
  TIM1->CR1|=1;        // 使能计数器,CEN=1
      
  MY_NVIC_Init(1,3 ,TIM1_UP_IRQChannel,1); 

最佳答案

查看完整内容[请看2#楼]

深感还是自己基础不好,对着中文参考手册和固件库,大概弄明白了     TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure; TIM_ICInitTypeDef  TIM_ICInitStructure;      GPIO_InitTypeDef  GPIO_InitStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE);  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); &nb ...
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

17

帖子

0

精华

新手上路

积分
49
金钱
49
注册时间
2014-7-28
在线时间
0 小时
 楼主| 发表于 2014-8-2 17:23:09 | 显示全部楼层
深感还是自己基础不好,对着中文参考手册和固件库,大概弄明白了
    TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
TIM_ICInitTypeDef  TIM_ICInitStructure;
    

GPIO_InitTypeDef  GPIO_InitStructure;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3, ENABLE); 
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
    GPIO_Init(GPIOA, &GPIO_InitStructure);

TIM_SelectSlaveMode(TIM3,TIM_SlaveMode_External1);   //SMCR:SMS[2:0]=111,从模式选择,为外部时钟模式1
TIM_SelectInputTrigger(TIM3,TIM_TS_TI1FP1);     //SMCR:TS[2:0]=101,同步计数器的触发输入,滤波后的定时器输入1(TI1FP1)
 
TIM_ICInitStructure.TIM_Channel = TIM_Channel_1;   //CCMR1:CC1S[1:0]=01,选择输入端 IC1  
TIM_ICInitStructure.TIM_ICSelection = TIM_ICSelection_DirectTI;   //CCMR1:CC1S[1:0]=01,映射到TI1上
   TIM_ICInitStructure.TIM_ICFilter = 0x00;   //CCMR1:IC1F[3:0]=0000,配置输入滤波器 不滤波
   TIM_ICInitStructure.TIM_ICPrescaler = TIM_ICPSC_DIV1;  //CCMR:IC1PSC[1:0]=00,配置输入分频,不分频,一个事件捕获一次 
   TIM_ICInitStructure.TIM_ICPolarity = TIM_ICPolarity_Rising;   //CCER:CCIP=0,上升沿捕获
   TIM_ICInit(TIM3, &TIM_ICInitStructure);

TIM_TimeBaseStructure.TIM_Period = arr; 
TIM_TimeBaseStructure.TIM_Prescaler =psc;  
TIM_TimeBaseStructure.TIM_ClockDivision = 0; 
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  
TIM_TimeBaseInit(TIM3, &TIM_TimeBaseStructure); 

TIM_Cmd(TIM3, ENABLE);
回复

使用道具 举报

109

主题

1606

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2222
金钱
2222
注册时间
2011-12-15
在线时间
37 小时
发表于 2014-8-2 22:23:42 | 显示全部楼层
免费的我估计热心人不多呀。
专业制作STM32 物联网通信模块板,模块交流群:369840039。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-8-2 22:59:24 | 显示全部楼层
呵呵,帮顶.
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2014-8-3 23:45:48 | 显示全部楼层
回复【4楼】逍遥winter:
---------------------------------
谢谢分享
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-4 22:52

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表