chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

詳解stm32定時器的編碼器模式

CHANBAEK ? 來源:電子愛好者 ? 作者:LinuxARM ? 2023-01-19 09:14 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言:

增量式編碼器在實際應(yīng)用中還是很常見。stm32定時器帶的也有編碼器模式。所用的編碼器是有ABZ三相,其中ab相是用來計數(shù),z相輸出零點信號。AB相根據(jù)旋轉(zhuǎn)的方向不同,輸出的波形如下圖所示:

Dingtalk_20221206154648.jpg

第一步:具體配置如下圖:

Dingtalk_20221206154648.jpg

重點說明:

一、如果編碼模式設(shè)置為 Encoder Mode TI1 and TI2 則會默認(rèn)檢測AB相的上升沿與下降沿;

每一個上升沿和下降沿都觸發(fā)計數(shù),所以每轉(zhuǎn)一格計數(shù)器就會+4;那么上圖計數(shù)周期設(shè)置為400;也就是編碼器轉(zhuǎn)100格,計數(shù)器就會置零,重新開始計數(shù)!

二、關(guān)于Polarity參數(shù):這個參數(shù)的意思是在檢測到上升沿的時候就觸發(fā)encoder捕獲AB相的值,而并不是這里設(shè)置的是上升沿就只檢測AB相的上升沿,下降沿還是同樣會計數(shù)的。

第二步:

可以根據(jù)自身需要在NVIC 中斷控制器中配置中斷響應(yīng)優(yōu)先級。這里的配置方法可以參考前面幾章!

第三步:代碼分析:

static void MX_TIM4_Init(void)
{


  /* USER CODE BEGIN TIM4_Init 0 */


  /* USER CODE END TIM4_Init 0 */


  TIM_Encoder_InitTypeDef sConfig = {0};
  TIM_MasterConfigTypeDef sMasterConfig = {0};


  /* USER CODE BEGIN TIM4_Init 1 */


  /* USER CODE END TIM4_Init 1 */
  htim4.Instance = TIM4;
  htim4.Init.Prescaler = 0;
  htim4.Init.CounterMode = TIM_COUNTERMODE_UP;
  htim4.Init.Period = 400;
  htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
  htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
  sConfig.EncoderMode = TIM_ENCODERMODE_TI12;
  sConfig.IC1Polarity = TIM_ICPOLARITY_FALLING;
  sConfig.IC1Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC1Prescaler = TIM_ICPSC_DIV1;
  sConfig.IC1Filter = 15;
  sConfig.IC2Polarity = TIM_ICPOLARITY_FALLING;
  sConfig.IC2Selection = TIM_ICSELECTION_DIRECTTI;
  sConfig.IC2Prescaler = TIM_ICPSC_DIV1;
  sConfig.IC2Filter = 15;
  if (HAL_TIM_Encoder_Init(&htim4, &sConfig) != HAL_OK)
  {
    Error_Handler();
  }
  sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
  sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
  if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK)
  {
    Error_Handler();
  }
  /* USER CODE BEGIN TIM4_Init 2 */
  HAL_TIM_Encoder_Start(&htim4, TIM_CHANNEL_ALL); //啟動編碼器接口
  /* USER CODE END TIM4_Init 2 */
}
//主函數(shù)里面調(diào)用計數(shù)值
 while (1)
  {
    // Enc_Count:獲取計數(shù)個數(shù)
    Enc_Count =  __HAL_TIM_GET_COUNTER(&htim4);
    
    //若需要檢測編碼器轉(zhuǎn)了多少格,記得要/4,因為轉(zhuǎn)一格是+4;
    //Enc_Count =  __HAL_TIM_GET_COUNTER(&htim4)/4;
     
    

    /* USER CODE END WHILE */


    /* USER CODE BEGIN 3 */

  }
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 控制器
    +關(guān)注

    關(guān)注

    114

    文章

    17503

    瀏覽量

    188490
  • 編碼器
    +關(guān)注

    關(guān)注

    45

    文章

    3875

    瀏覽量

    140529
  • STM32
    +關(guān)注

    關(guān)注

    2301

    文章

    11073

    瀏覽量

    369389
  • 定時器
    +關(guān)注

    關(guān)注

    23

    文章

    3347

    瀏覽量

    120967
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    電機控制基礎(chǔ)3——定時器編碼器模式使用與轉(zhuǎn)速計算

    上篇介紹了 定時器捕獲輸入脈沖的原理 ,那種方式是根據(jù)捕獲的原理,手動切換上升沿與下降沿捕獲,計算脈沖寬度的過程原理比較清晰,但編程操作起來比較麻煩。 對于電機測速用到的正交編碼器,測速時需要捕獲2
    的頭像 發(fā)表于 08-30 17:26 ?1.6w次閱讀
    電機控制基礎(chǔ)3——<b class='flag-5'>定時器</b><b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>使用與轉(zhuǎn)速計算

    stm32定時器編碼器模式

    0、編碼器模式stm32定時器帶的也有編碼器模式。所用的
    發(fā)表于 08-09 06:55

    STM32利用定時器編碼器模式處理帶編碼器直流電機

    STM32 Cubemax(五) —— STM32利用定時器編碼器模式處理帶編碼器直流電機文章目
    發(fā)表于 09-03 07:38

    stm32 定時器編碼器模式有哪幾種呢

    stm32 定時器編碼器模式有哪幾種呢?STM32固件庫中編碼器接口的配置函數(shù)是怎樣的?
    發(fā)表于 11-15 06:11

    請問怎么實現(xiàn)STM32f103定時器配置為編碼器模式使用?

    請問怎么實現(xiàn)STM32f103定時器配置為編碼器模式使用?
    發(fā)表于 11-18 07:30

    STM32單片機定時器1設(shè)置成為AB項編碼器模式的方法

    STM32單片機定時器1設(shè)置成為AB項編碼器模式大家好·,我是DXZ,這篇博客是使用STM32單片機定時
    發(fā)表于 11-26 08:09

    STM32F407定時器編碼器接口模式的相關(guān)資料推薦

    STM32F407定時器編碼器接口模式16位定時器擴展32位
    發(fā)表于 01-12 06:17

    怎樣去使用STM32定時器編碼器模式

    STM32F103-定時器編碼器模式和高級定時器輸出互補的PWM信號剛使用STM32時使用輸入捕
    發(fā)表于 01-14 08:02

    為什么STM32單片機的定時器PWM輸入捕獲模式無法讀取編碼器

    為什么STM32單片機的定時器PWM輸入捕獲模式無法讀取編碼器呢?怎樣去解決STM32單片機的定時器
    發(fā)表于 01-21 06:30

    電機控制知識——定時器編碼器模式的使用

    ,計數(shù)向上計數(shù),反轉(zhuǎn)時,通道A的信號滯后,向下計數(shù)。設(shè)置信號的極性反相,可以使向下計數(shù)代表電機正轉(zhuǎn)。 2 定時器編碼器模式配置以STM32
    發(fā)表于 03-05 07:00

    STM32單片機定時器1設(shè)置成為AB項編碼器模式

    STM32單片機定時器1設(shè)置成為AB項編碼器模式大家好·,我是DXZ,這篇博客是使用STM32單片機定時
    發(fā)表于 11-18 15:21 ?21次下載
    <b class='flag-5'>STM32</b>單片機<b class='flag-5'>定時器</b>1設(shè)置成為AB項<b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>

    STM32——編碼器測速原理及STM32編碼器模式

    本問講解了編碼器測速原理及STM32編碼器模式,文末有STM32編碼器
    發(fā)表于 11-26 11:36 ?278次下載
    <b class='flag-5'>STM32</b>——<b class='flag-5'>編碼器</b>測速原理及<b class='flag-5'>STM32</b><b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>

    STM32F103-定時器編碼器模式和高級定時器輸出互補的PWM信號

    STM32F103-定時器編碼器模式和高級定時器輸出互補的PWM信號剛使用STM32時使用輸入捕
    發(fā)表于 01-14 12:53 ?11次下載
    <b class='flag-5'>STM32</b>F103-<b class='flag-5'>定時器</b><b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>和高級<b class='flag-5'>定時器</b>輸出互補的PWM信號

    STM32F407定時器編碼器模式簡介

    STM32F407定時器編碼器模式
    發(fā)表于 03-31 17:14 ?9497次閱讀
    <b class='flag-5'>STM32</b>F407<b class='flag-5'>定時器</b><b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>簡介

    STM32CubeMx定時器編碼器模式基本使用方法

    增量式編碼器在實際應(yīng)用中還是很常見。stm32定時器帶的也有編碼器模式。所用的編碼器是有ABZ
    發(fā)表于 06-01 14:36 ?6928次閱讀
    <b class='flag-5'>STM32</b>CubeMx<b class='flag-5'>定時器</b><b class='flag-5'>編碼器</b><b class='flag-5'>模式</b>基本使用方法