初级会员

- 积分
- 174
- 金钱
- 174
- 注册时间
- 2014-3-5
- 在线时间
- 0 小时
|
5金钱
实现功能:初始化马上将pa6.pb0置高
仿真问题:如图1所示,
初始化时的144us内,信号同时为高低电平
软件代码:#include "stm32f10x.h"
#include "led.h"
#include "key.h"
#include "pwm_output.h"
#include "delay.h"
#include "action.h"
#include "lcd1602.h"
#include "timer.h"
#include "DS18B20.h"
u8 tab[]={"Cleaning Car!"};
extern void Delay(__IO u32 nCount) ;
void SENSOR_GPIO_Config(void);
void NVIC_Configuration(void );
void GPIO_Configuration(void);
void TIM1_Configuration(void);
void TIM2_Configuration(void);
u8 f1qianf=0,f2diel=0,f3xuank=0;
int main(void)
{
u8 *s=tab;
SystemInit();
TIM3_PWM_off(); //PWM.H高
GPIO_Configuration(); ///通用io
LED_GPIO_Config(); ///功能灯
Key_GPIO_Config(); ///按键端口
delay_init(); //延时初始化//
LCD_init(); //lcd初始化
LCD_prints(2,0,s);//初始化输出
EXTIX_Init(); //按键中断初始化
while(1)
{
PWMj142_ini(); //软件延时产生pwm
}
}
TIM3_PWM_off()来自PWM.C函数
static void TIM3_GPIO_Config2(void) // 停止电机的配置高
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
//PB0复用为TIM3的通道3
TIM_Cmd(TIM3,DISABLE);
GPIO_InitStructure.GPIO_Pin =(GPIO_Pin_0 |GPIO_Pin_1);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_SetBits(GPIOB,GPIO_Pin_0);
GPIO_SetBits(GPIOB,GPIO_Pin_1);
}
static void TIM3_GPIO_Config3(void) // 电机固定端配置高
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
GPIO_InitStructure.GPIO_Pin =(GPIO_Pin_6 | GPIO_Pin_7);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_SetBits(GPIOA,GPIO_Pin_6);
GPIO_SetBits(GPIOA,GPIO_Pin_7);
}
void TIM3_PWM_off(void) //停止 H-H
{
TIM3_GPIO_Config3();
// TIM1_ini();
TIM3_GPIO_Config2();
}
|
|