iii

#include <stdint.h>
#include <stdbool.h>
#include “inc/hw_memmap.h”
#include “inc/hw_types.h”
#include “inc/hw_gpio.h”
#include “driverlib/sysctl.h”
#include “driverlib/rom.h”
#include “driverlib/gpio.h”
#include “driverlib/pwm.h”
#include “driverlib/fpu.h”
#include “driverlib/pin_map.h”
int main (void)
{
uint32_t R = 0;
uint32_t B = 0;
uint32_t G = 0; //设置系统时钟为50MHz
SysCtlClockSet(SYSCTL_SYSDIV_1 |SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_XTAL_16MHZ);
SysCtlPWMClockSet(SYSCTL_PWMDIV_1);// PWM时钟配置:不分频 //使能 SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM1); //配置PWM功能
GPIOPinConfigure(GPIO_PF1_M1PWM5);
GPIOPinConfigure(GPIO_PF2_M1PWM6);
GPIOPinConfigure(GPIO_PF3_M1PWM7);
GPIOPinTypePWM(GPIO_PORTF_BASE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3); //配置PWM发生器
PWMGenConfigure(PWM1_BASE,PWM_GEN_2,PWM_GEN_MODE_UP_DOWN|PWM_GEN_MODE_NO_SYNC); PWMGenConfigure(PWM1_BASE,PWM_GEN_3,PWM_GEN_MODE_UP_DOWN|PWM_GEN_MODE_NO_SYNC); //设置PWM发生器的周期
load PWMGenPeriodSet(PWM1_BASE, PWM_GEN_2, 640);
PWMGenPeriodSet(PWM1_BASE, PWM_GEN_3, 640); //设置输出的脉冲宽度
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_5, R); PWMPulseWidthSet(PWM1_BASE, PWM_OUT_6, B);
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_7, G); //使能PWM发生器
PWMGenEnable(PWM1_BASE, PWM_GEN_2);
PWMGenEnable(PWM1_BASE, PWM_GEN_3); //使能输出
PWMOutputState(PWM1_BASE, PWM_OUT_5_BIT | PWM_OUT_6_BIT | PWM_OUT_7_BIT, true);
while(1)
{
while(R != 600)
{ R++;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_5, R);
SysCtlDelay(10000);
}
while(R != 10)
{ R–;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_5, R);
SysCtlDelay(10000); }
while(B != 600)
{ B++;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_6, B);
SysCtlDelay(10000);
}
while(B != 10)
{ B–;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_6, B); SysCtlDelay(10000);
}
while(G != 600)
{ G++;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_7, G);
SysCtlDelay(10000);
}
while(G != 10)
{ G–;
PWMPulseWidthSet(PWM1_BASE, PWM_OUT_7, G);
SysCtlDelay(10000);
} }}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值