#ifndef __PWMDIAN_H
#define __PWMDIAN_H
void Motor_Init(void);
extern void Move(int counter,int PC1_pulseWide,int PC0_pulseWide);
#endif
#include "pwmdian.h"
#include "delay.h"
void Motor_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); //PORTC时钟使能
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_0; //Pin.1 Pin.0
GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP; //推挽输出
GPIO_Init(GPIOC, &GPIO_InitStructure);
}
void Move(int counter,int PC1_pulseWide,int PC0_pulseWide)
{
int i;
for(i=1;i<=counter;i++)
{
GPIO_SetBits(GPIOC,GPIO_Pin_0 );
delay_us(PC1_pulseWide);
GPIO_ResetBits(GPIOC,GPIO_Pin_0);
GPIO_SetBits(GPIOC,GPIO_Pin_1 );
delay_us(PC0_pulseWide);
GPIO_ResetBits(GPIOC,GPIO_Pin_1);
delay_ms(20);
}
}
#include "stm32f10x.h"
#include "pwmdian.h"
int main(void)
{
Motor_Init();
Move(65,1300,1700);
while(1);
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>