新手上路
- 积分
- 29
- 金钱
- 29
- 注册时间
- 2016-3-24
- 在线时间
- 8 小时
|
1金钱
为什么只有一路输出啊 新手求教
#include "timer.h"
#include "delay.h"
//TIM3 PWM2¿·Ö3õê¼»ˉ
//PWMêä3ö3õê¼»ˉ
//arr£o×Ô¶ˉ֨װÖμ
//psc£oê±ÖóÔ¤·ÖÆμêy
void TIM3_PWM_Init(u16 arr,u16 psc)
{
RCC->APB1ENR|=1<<1; //TIM3ê±Öóê1Äü
RCC->APB2ENR|=1<<2; //ê1ÄüPORTAê±Öó
RCC->APB2ENR|=1<<3; //ê1ÄüPORTBê±Öó
RCC->APB2ENR|=1<<4;
GPIOC->CRH&=0XFFFFFFF0;//PC8Çåáã
GPIOC->CRH|=0X0000000B;// ¸′λ1|Äüêä3ö
RCC->APB2ENR|=1<<0; //
AFIO->MAPR&=0XFFFFF3FF; //
AFIO->MAPR|=3<<10;
TIM3->ARR=arr; //é趨¼ÆêyÆ÷×Ô¶ˉ֨װÖμ
TIM3-> SC=psc; //Ô¤·ÖÆμÆ÷2»·ÖÆμ
TIM3->CCMR2|=7<<4; //CH3 PWM2Ä£ê½
TIM3->CCMR2|=1<<3; //CH3Ô¤×°ÔØê1Äü
TIM3->CCER|=1<<8; //OC3 êä3öê1Äü
TIM3->CCR3=1028; //OC3 êä3öê1Äü
TIM3->CR1|=1<<7; //ARPEê1Äü
TIM3->CR1|=0x01; //ê1Äü¶¨ê±Æ÷3
}
void TIM1_PWM_Init(u16 arr,u16 psc)
{
//′Ë2¿·ÖDèêÖ¶ˉDT¸ÄIO¿úéèÖÃ
RCC->APB2ENR|=1<<11; //TIM1ê±Öóê1Äü
GPIOA->CRH&=0XFFFFFFF0; //PA8Çå3y֮ǰμÄéèÖÃ
GPIOA->CRH|=0X0000000B; //¸′óÃ1|Äüêä3ö
TIM1->ARR=arr; //é趨¼ÆêyÆ÷×Ô¶ˉ֨װÖμ
TIM1-> SC=psc; //Ô¤·ÖÆμÆ÷éèÖÃ
TIM1->CCMR1|=7<<4; //CH1 PWM2Ä£ê½
TIM1->CCMR1|=1<<3; //CH1Ô¤×°ÔØê1Äü
TIM1->CCER|=1<<0; //OC1 êä3öê1Äü
TIM1->BDTR|=1<<15; //MOE Ö÷êä3öê1Äü
TIM1->CR1=0x0080; //ARPEê1Äü
TIM1->CR1|=0x01; //ê1Äü¶¨ê±Æ÷1
}
|
|