OpenEdv-开源电子网

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

PWM输出试验

[复制链接]

65

主题

440

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-8-29
在线时间
17 小时
发表于 2012-11-19 11:56:47 | 显示全部楼层 |阅读模式
在设定PWM时候,TIMx_CNT寄存器的值是否要自己重新写。在原子的例程没有找到对 TIMx_CNT 寄存器赋值,但是寄存器初始值为0. 

void PWM_Init(u16 arr,u16 psc) 
{          
 //此部分需手动修改 IO口设置 
  RCC->APB1ENR|=1<<1;       //TIM3 时钟使能     
 GPIOA->CRH&=0XFFFFFFF0;//PA8输出 
 GPIOA->CRH|=0X00000004;//浮空输入  
 GPIOA->CRL&=0X0FFFFFFF;//PA7输出 
 GPIOA->CRL|=0XB0000000;//复用功能输出      
 GPIOA->ODR|=1<<7;//PA7上拉  
 
 TIM3->ARR=arr;//设定计数器自动重装值  
 TIM3->SC=psc;//预分频器不分频 
  TIM3->CCMR1|=7<<12;  //CH2 PWM2 模式     
 TIM3->CCMR1|=1<<11; //CH2预装载使能      
  TIM3->CCER|=1<<4;   //OC2  输出使能     
  TIM3->CR1=0x0080;   //ARPE 使能  
  TIM3->CR1|=0x01;    // 使能定时器 3              
}






int main(void) 
{    
   u16 led0pwmval=0; 
 u8 dir=1;  
   Stm32_Clock_Init(9); // 系统时钟设置 
  delay_init(72);      //延时初始化 
 uart_init(72,9600);  //串口初始化  
 LED_Init();      //初始化与 LED 连接的硬件接口 
 WM_Init(900,0);  // 不分频。PWM 频率=72000/900=8Khz 
     while(1) 
 { 
     delay_ms(10);      
  if(dir)led0pwmval++; 
  else led0pwmval--; 
 
     if(led0pwmval>300)dir=0; 
  if(led0pwmval==0)dir=1;             
  LED0_PWM_VAL=led0pwmval;     
 }   
}





人生永远追逐着幻光,但谁把幻光看作幻光,谁便沉入无边的苦海
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-11-19 12:46:38 | 显示全部楼层
回复【楼主位】sun_shine:
---------------------------------
可以自己设置,但是意义不大。
PWM就是靠CNT不停的计数,然后与CCRx的值以及ARR对比实现的。
CNT不断的在0和ARR之间变化,你设置一次有何意义?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

65

主题

440

帖子

0

精华

高级会员

Rank: 4

积分
782
金钱
782
注册时间
2012-8-29
在线时间
17 小时
 楼主| 发表于 2012-11-19 15:59:42 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
谢谢啊 明白了 我概念有点乱 
人生永远追逐着幻光,但谁把幻光看作幻光,谁便沉入无边的苦海
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-3-1 08:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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