-
感谢楼主的分享
-
同楼上具体内容得写出来才可以得到最快的答案
-
具体看附件哈!!
-
#include
#include
#include "inc/hw_memmap.h"
#include "inc/hw_types.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"
#define GPIO_PB6_M0PWM0 0x00011804
#define GPIO_PB7_M0PWM1 0x00011C04
#define GPIO_PB4_M0PWM2 0x00011004
#define GPIO_PB5_M0PWM3 0x00011404
void PWM_init(void)
{
//PWM时钟配置:64分频
SysCtlPWMClockSet(SYSCTL_PWMDIV_64);
//使能PWM0模块
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);
//使能PWM0模块
SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM0);
//GPIO引脚配置
GPIOPinConfigure(GPIO_PB7_M0PWM1);
GPIOPinConfigure(GPIO_PB6_M0PWM0);
GPIOPinConfigure(GPIO_PB5_M0PWM3);
GPIOPinConfigure(GPIO_PB4_M0PWM2);
//配置引脚为PWM功能
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_7);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_6);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_5);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_4);
//配置PWM发生器0和发生器1:加减计数不分频
PWMGenConfigure(PWM0_BASE, PWM_GEN_0,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC);
PWMGenConfigure(PWM0_BASE, PWM_GEN_1,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC);
//设置PWM发生器1的频率,时钟频率/pwm分频数/n,80M/64/3125=400hz
PWMGenPeriodSet(PWM0_BASE, PWM_GEN_0, 3125);
PWMGenPeriodSet(PWM0_BASE, PWM_GEN_1, 3125);
//设置PWM0/PWM1输出的脉冲宽度
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_0, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_1, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_2, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_3, 1200);
//使能PWM发生器
PWMGenEnable(PWM0_BASE, PWM_GEN_0);
PWMGenEnable(PWM0_BASE, PWM_GEN_1);
//使能PWM0和PWM1的输出
PWMOutputState(PWM0_BASE, (PWM_OUT_0_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_1_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_2_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_3_BIT), true);
}
void GPIOPin_init(void)
{
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); //使能启动GPIOF
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); //使能启动GPIOD
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); //使能启动GPIOA
GPIOPinTypeGPIOInput(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2); //设置GPIOD_PIN2、6 为输入
GPIOPinTypeGPIOInput(GPIO_PORTA_BASE,0x3C); //设置GPIOA_PIN2-7 为输入
GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4);
GPIODirModeSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_DIR_MODE_IN);
GPIODirModeSet(GPIO_PORTA_BASE,0x3C,GPIO_DIR_MODE_IN);
GPIOPadConfigSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);//上拉
GPIOPadConfigSet(GPIO_PORTA_BASE,0x3C,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);
}
void StartElCo(void)
{
uint32_t h0=1250,h1=1250,h2=1250,h3=1250,i;
SysCtlDelay(48000000);//2s
for(i=0;i
-
#include #include #include "inc/hw_memmap.h" #include "inc/hw_types.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" #define GPIO_PB6_M0PWM0 0x00011804 #define GPIO_PB7_M0PWM1 0x00011C04 #define GPIO_PB4_M0PWM2 0x00011004 #define GPIO_PB5_M0PWM3 0x00011404 void PWM_init(void) { //PWM时钟配置:64分频 SysCtlPWMClockSet(SYSCTL_PWMDIV_64); //使能PWM0模块 SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB); //使能PWM0模块 SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM0); //GPIO引脚配置 GPIOPinConfigure(GPIO_PB7_M0PWM1); GPIOPinConfigure(GPIO_PB6_M0PWM0); GPIOPinConfigure(GPIO_PB5_M0PWM3); GPIOPinConfigure(GPIO_PB4_M0PWM2); //配置引脚为PWM功能 GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_7); GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_6); GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_5); GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_4); //配置PWM发生器0和发生器1:加减计数不分频 PWMGenConfigure(PWM0_BASE, PWM_GEN_0,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC); PWMGenConfigure(PWM0_BASE, PWM_GEN_1,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC); //设置PWM发生器1的频率,时钟频率/pwm分频数/n,80M/64/3125=400hz PWMGenPeriodSet(PWM0_BASE, PWM_GEN_0, 3125); PWMGenPeriodSet(PWM0_BASE, PWM_GEN_1, 3125); //设置PWM0/PWM1输出的脉冲宽度 PWMPulseWidthSet(PWM0_BASE, PWM_OUT_0, 1200); PWMPulseWidthSet(PWM0_BASE, PWM_OUT_1, 1200); PWMPulseWidthSet(PWM0_BASE, PWM_OUT_2, 1200); PWMPulseWidthSet(PWM0_BASE, PWM_OUT_3, 1200); //使能PWM发生器 PWMGenEnable(PWM0_BASE, PWM_GEN_0); PWMGenEnable(PWM0_BASE, PWM_GEN_1); //使能PWM0和PWM1的输出 PWMOutputState(PWM0_BASE, (PWM_OUT_0_BIT), true); PWMOutputState(PWM0_BASE, (PWM_OUT_1_BIT), true); PWMOutputState(PWM0_BASE, (PWM_OUT_2_BIT), true); PWMOutputState(PWM0_BASE, (PWM_OUT_3_BIT), true); } void GPIOPin_init(void) { SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); //使能启动GPIOF SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); //使能启动GPIOD SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); //使能启动GPIOA GPIOPinTypeGPIOInput(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2); //设置GPIOD_PIN2、6 为输入 GPIOPinTypeGPIOInput(GPIO_PORTA_BASE,0x3C); //设置GPIOA_PIN2-7 为输入 GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4); GPIODirModeSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_DIR_MODE_IN); GPIODirModeSet(GPIO_PORTA_BASE,0x3C,GPIO_DIR_MODE_IN); GPIOPadConfigSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);//上拉 GPIOPadConfigSet(GPIO_PORTA_BASE,0x3C,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU); } void StartElCo(void) { uint32_t h0=1250,h1=1250,h2=1250,h3=1250,i; SysCtlDelay(48000000);//2s for(i=0;i
-
支持的!数据手册里面有介绍
-
#include
#include
#include "inc/hw_memmap.h"
#include "inc/hw_types.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"
#define GPIO_PB6_M0PWM0 0x00011804
#define GPIO_PB7_M0PWM1 0x00011C04
#define GPIO_PB4_M0PWM2 0x00011004
#define GPIO_PB5_M0PWM3 0x00011404
void PWM_init(void)
{
//PWM时钟配置:64分频
SysCtlPWMClockSet(SYSCTL_PWMDIV_64);
//使能PWM0模块
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOB);
//使能PWM0模块
SysCtlPeripheralEnable(SYSCTL_PERIPH_PWM0);
//GPIO引脚配置
GPIOPinConfigure(GPIO_PB7_M0PWM1);
GPIOPinConfigure(GPIO_PB6_M0PWM0);
GPIOPinConfigure(GPIO_PB5_M0PWM3);
GPIOPinConfigure(GPIO_PB4_M0PWM2);
//配置引脚为PWM功能
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_7);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_6);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_5);
GPIOPinTypePWM(GPIO_PORTB_BASE, GPIO_PIN_4);
//配置PWM发生器0和发生器1:加减计数不分频
PWMGenConfigure(PWM0_BASE, PWM_GEN_0,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC);
PWMGenConfigure(PWM0_BASE, PWM_GEN_1,PWM_GEN_MODE_DOWN | PWM_GEN_MODE_NO_SYNC);
//设置PWM发生器1的频率,时钟频率/pwm分频数/n,80M/64/3125=400hz
PWMGenPeriodSet(PWM0_BASE, PWM_GEN_0, 3125);
PWMGenPeriodSet(PWM0_BASE, PWM_GEN_1, 3125);
//设置PWM0/PWM1输出的脉冲宽度
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_0, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_1, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_2, 1200);
PWMPulseWidthSet(PWM0_BASE, PWM_OUT_3, 1200);
//使能PWM发生器
PWMGenEnable(PWM0_BASE, PWM_GEN_0);
PWMGenEnable(PWM0_BASE, PWM_GEN_1);
//使能PWM0和PWM1的输出
PWMOutputState(PWM0_BASE, (PWM_OUT_0_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_1_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_2_BIT), true);
PWMOutputState(PWM0_BASE, (PWM_OUT_3_BIT), true);
}
void GPIOPin_init(void)
{
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOF); //使能启动GPIOF
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOD); //使能启动GPIOD
SysCtlPeripheralEnable(SYSCTL_PERIPH_GPIOA); //使能启动GPIOA
GPIOPinTypeGPIOInput(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2); //设置GPIOD_PIN2、6 为输入
GPIOPinTypeGPIOInput(GPIO_PORTA_BASE,0x3C); //设置GPIOA_PIN2-7 为输入
GPIOPinTypeGPIOOutput(GPIO_PORTF_BASE,GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4);
GPIODirModeSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_DIR_MODE_IN);
GPIODirModeSet(GPIO_PORTA_BASE,0x3C,GPIO_DIR_MODE_IN);
GPIOPadConfigSet(GPIO_PORTD_BASE,GPIO_PIN_6|GPIO_PIN_2,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);//上拉
GPIOPadConfigSet(GPIO_PORTA_BASE,0x3C,GPIO_STRENGTH_2MA,GPIO_PIN_TYPE_STD_WPU);
}
void StartElCo(void)
{
uint32_t h0=1250,h1=1250,h2=1250,h3=1250,i;
SysCtlDelay(48000000);//2s
for(i=0;i
-
l楼主要的东西!!百度云:链接:http://pan.baidu.com/s/1c0w6Paw 密码:6yaj
-
/使能FPU
FPUEnable();
FPULazyStackingEnable();
-
秒杀隐藏帖..但还是希望楼主多发精品好帖啦.....
-
在新建一个工程的时候会有一个启动代码当时点击添加即可!你尝试下!!
-
积分没了
-
感谢楼主分享
-
楼上威武
-
支持,,,,,,,,,,,,,
-
感谢楼主无私分享
-
大爱楼主~~~~~~~~~~~~~
-
用CCS编译试下!!!
-
感谢楼主分享!!!没有芯币了~~~~(>_
-
感谢楼主分享