硬汉嵌入式论坛

 找回密码
 立即注册
查看: 748|回复: 2
收起左侧

PWM输入捕获一直没有数据

[复制链接]

3

主题

4

回帖

13

积分

新手上路

积分
13
发表于 2024-7-14 11:38:39 | 显示全部楼层 |阅读模式
以下是我的代码


#define cnt_clk 180000000/180//计数器频率
#define arr 65535//自定重装载值   
uint32_t CCR1,CCR2,end_flag;//存捕获寄存器获取的值的变量
float duty_cycle,frequency;//频率,占空比





int main(void)
{

  /* USER CODE BEGIN 1 */

  /* USER CODE END 1 */

  /* MCU Configuration--------------------------------------------------------*/

  /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  HAL_Init();

  /* USER CODE BEGIN Init */

  /* USER CODE END Init */

  /* Configure the system clock */
  SystemClock_Config();

  /* USER CODE BEGIN SysInit */

  /* USER CODE END SysInit */

  /* Initialize all configured peripherals */
  MX_GPIO_Init();
  MX_TIM8_Init();
  /* USER CODE BEGIN 2 */
        HAL_TIM_IC_Start_IT(&htim8, HAL_TIM_ACTIVE_CHANNEL_1);
        HAL_TIM_IC_Start_IT(&htim8, HAL_TIM_ACTIVE_CHANNEL_2);
  /* USER CODE END 2 */

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */

    /* USER CODE BEGIN 3 */
  }
  /* USER CODE END 3 */
}

void HAL_TIM_IC_CaptureCallback(TIM_HandleTypeDef *htim)
{
        if(htim == &htim8)
        {
                CCR1=HAL_TIM_ReadCapturedValue(&htim8, TIM_CHANNEL_1);
                if(CCR1!=0)
                {
                        CCR2=HAL_TIM_ReadCapturedValue(&htim8, TIM_CHANNEL_2);
                        frequency=(float)cnt_clk/(CCR1+1);
                        duty_cycle=(float)(CCR2+1)*100/(CCR1+1);       
                        end_flag=1;
                }
                else
                {
                        frequency=0;
                        duty_cycle=0;
                }
        }
}

/* USER CODE END 4 */


回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
116779
QQ
发表于 2024-7-15 08:01:25 | 显示全部楼层
楼主的代码不太全,现在能正常进入捕获中断吗
回复

使用道具 举报

3

主题

4

回帖

13

积分

新手上路

积分
13
 楼主| 发表于 2024-7-15 10:45:48 | 显示全部楼层
eric2013 发表于 2024-7-15 08:01
楼主的代码不太全,现在能正常进入捕获中断吗

无语了,是我外接的杜邦线问题,代码可以运行的
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-7-6 22:14 , Processed in 0.229551 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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