有谁用hal库写过定时器触发的ad采集的程序吗 定时器和ad设置有什么要注意的地方

2019-07-20 11:48发布


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
arels
1楼-- · 2019-07-20 16:27
正点原子 发表于 2016-10-20 22:15
搞定了么?

谢谢  已经搞定了
arels
2楼-- · 2019-07-20 22:27
 精彩回答 2  元偷偷看……
arels
3楼-- · 2019-07-21 03:34
void MX_TIM5_Init(uint32_t Prescaler,uint32_t Period)
{

  TIM_MasterConfigTypeDef sMasterConfig;
  TIM_OC_InitTypeDef sConfigOC;

  htim5.Instance                         = TIM5;
  htim5.Init.Prescaler                 = Prescaler;
  htim5.Init.CounterMode         = TIM_COUNTERMODE_UP;
  htim5.Init.Period                 = Period;
  htim5.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
        HAL_TIM_PWM_DeInit(&htim5);
        HAL_TIM_PWM_Init(&htim5);


  sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
        HAL_TIMEx_MasterConfigSynchronization(&htim5, &sMasterConfig);


  sConfigOC.OCMode = TIM_OCMODE_PWM1;
  sConfigOC.Pulse = 500;
  sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
  sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
  HAL_TIM_PWM_ConfigChannel(&htim5, &sConfigOC, TIM_CHANNEL_1);

  //HAL_TIM_MspPostInit(&htim5);
  HAL_TIM_PWM_Start(&htim5,TIM_CHANNEL_1);//开启PWM通道1

}

//定时器底层驱动,时钟使能,引脚配置
//此函数会被HAL_TIM_PWM_Init()调用
//htim:定时器句柄
                void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef *htim)
                {
                        GPIO_InitTypeDef GPIO_Initure;
                __HAL_RCC_TIM5_CLK_ENABLE();                        //使能定时器5
                        __HAL_RCC_GPIOA_CLK_ENABLE();                        //开启GPIOA时钟

                        GPIO_Initure.Pin=GPIO_PIN_0;                   //PA0
                        GPIO_Initure.Mode=GPIO_MODE_AF_PP;          //复用推挽输出
                        GPIO_Initure.Pull=GPIO_PULLUP;          //上拉
                        GPIO_Initure.Speed=GPIO_SPEED_HIGH;     //高速
                        GPIO_Initure.Alternate= GPIO_AF2_TIM5;        //PA0复用为TIM5_CH1
                        HAL_GPIO_Init(GPIOA,&GPIO_Initure);
                }       
正点原子
4楼-- · 2019-07-21 04:04
arels 发表于 2016-10-19 14:40
void MX_TIM5_Init(uint32_t Prescaler,uint32_t Period)
{

搞定了么?
走下去
5楼-- · 2019-07-21 04:31
 精彩回答 2  元偷偷看……
gaoqianqian
6楼-- · 2019-07-21 07:41
大神,参考您的代码我尝试用TIMER1来触发AD,可是一直不成功……不知道为啥

一周热门 更多>