硬汉嵌入式论坛

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

[客户分享] CX32L003 使用高级定时器TIM1初始化4路pwm

[复制链接]

1

主题

5

回帖

8

积分

新手上路

积分
8
发表于 2021-8-10 14:16:48 | 显示全部楼层 |阅读模式
此处使用CX32L003 TIM1(高级定时器)的PWM初始化 4路pwm,IO复用引脚使用的是PC6(TIM1_CH1),PD2(TIM1_CH2),PC3(TIM1_CH3),PC4(TIM1_CH4)
  1. RCC->HCLKEN |= 1 << 2;
  2.         RCC->HCLKEN |= 1 << 3;
  3.         RCC->PCLKEN |= 1 << 10;//RCC_TIM1
  4.        
  5.         GPIOC->AFR |= 0X01000000;//TIM1_CH1
  6.         GPIOC->DIRCR |= 1 << 6;//pc6
  7.         GPIOC->OTYPER &= ~(1 << 6);
  8.         ///GPIOC->PUPDR |= 2 << 12;
  9.         GPIOC->SLEWCR &= ~(1 << 6);
  10.        
  11.        
  12.         GPIOD->AFR |= 0X00000100;//TIM1_CH2
  13.         GPIOD->DIRCR |= 1 << 2;//PD2
  14.         GPIOD->OTYPER &= ~(1 << 2);
  15.         ///GPIOD->PUPDR |= 2 << 4;
  16.         GPIOD->SLEWCR &= ~(1 << 2);
  17.        
  18.        
  19.         GPIOC->AFR |= 0X00001000;//TIM3_CH1
  20.         GPIOC->DIRCR |= 1 << 3;//PC3
  21.         GPIOC->OTYPER &= ~(1 << 3);
  22.         ///GPIOC->PUPDR |= 2 << 6;
  23.         GPIOC->SLEWCR &= ~(1 << 3);
  24.        
  25.         GPIOC->AFR |= 0X00010000;//TIM4_CH1
  26.         GPIOC->DIRCR |= 1 << 4;//PC4
  27.         GPIOC->OTYPER &= ~(1 << 4);
  28.         ///GPIOC->PUPDR |= 2 << 8;
  29.         GPIOC->SLEWCR &= ~(1 << 4);
  30.        
  31.         TIM1->ARR = arr;
  32.         TIM1->PSC = psc;
  33.        
  34.         TIM1->CCMR1 |= 6 << 4;//TIM1_CH1 OC_MODE1
  35.         TIM1->CCMR1 |= 1 << 3;//OC_MODE1 enable
  36.        
  37.         TIM1->CCMR1 |= 6 << 12;//TIM1_CH2 OC_MODE1
  38.         TIM1->CCMR1 |= 1 << 11;//OC_MODE2 enable
  39.        
  40.         TIM1->CCMR2 |= 6 << 4;//TIM1_CH3 OC_MODE1
  41.         TIM1->CCMR2 |= 1 << 3;//OC_MODE3 enable
  42.        
  43.         TIM1->CCMR2 |= 6 << 12;//TIM1_CH4 OC_MODE1
  44.         TIM1->CCMR2 |= 1 << 11;//OC_MODE4 enable
  45.         /*
  46.         TIM1->CR1 |= 1<<7;//TIM1 ARP1 enable
  47.         TIM1->CR1 |= 1<<4;//TIM1 计数器向下计数
  48.         */
  49.         TIM1->CCER |= 1 << 0;//OC1 enable
  50.         TIM1->CCER |= 1 << 4;//OC2 enable
  51.         TIM1->CCER |= 1 << 8;//OC3 enable
  52.         TIM1->CCER |= 1 << 12;//OC4 enable
  53.          
  54.         TIM1->CCR1 = TIM1_CH1_PULSEWIDTH;
  55.         TIM1->CCR2 = TIM1_CH2_PULSEWIDTH;
  56.         TIM1->CCR3 = TIM1_CH3_PULSEWIDTH;
  57.         TIM1->CCR4 = TIM1_CH4_PULSEWIDTH;
  58.        
  59.         TIM1->BDTR |= 1 << 15;
  60.        
  61.         ///TIM1->CR1 = 0x0080;//ARPE enable
  62.        
  63.         TIM1->CR1 |= 1 << 0;//TIM1 enable
复制代码


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107641
QQ
发表于 2021-8-10 16:06:12 | 显示全部楼层
谢谢分享。
回复

使用道具 举报

1

主题

5

回帖

8

积分

新手上路

积分
8
 楼主| 发表于 2021-8-23 09:36:53 | 显示全部楼层

版主知道哪里可以申请到CX32L003F8P6 TSSOP-20的开发板吗?我想用开发板仿真下寄存器操作
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107641
QQ
发表于 2021-8-24 08:43:53 | 显示全部楼层
hejun96 发表于 2021-8-23 09:36
版主知道哪里可以申请到CX32L003F8P6 TSSOP-20的开发板吗?我想用开发板仿真下寄存器操作

可以去他们官网看看有没有联系方式。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-9 08:01 , Processed in 0.263940 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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