芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密

飞芯科技提供芯片解密,芯片破解,IC解密,单片机解密,MCU解密,STM解密逆向服务

IC解密STM32蓝牙遥控小车带三个舵机源码

IC解密单片机源程序如下:

  1. IC解密#include "stm32f10x.h"
  2. IC解密#include "pwm.h"
  3. IC解密#include "gpio.h"
  4. #include "delay.h"
  5. #include "system.h"
  6. #include "motor.h"
  7. #include "USART.h"
  8. #include "bluetooth.h"
  9. #include "duojipwm.h"

  10. #define KEY1  GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_8)
  11. #define KEY2  GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_9)

  12. int CMD=0x61;
  13. void USART3_Init(void);
  14. void GPIOdianji_Init(void);
  15. void TIM4_PWM_Init(u16 arr,u16 psc);


  16. int main(void){
  17.         USART_Config();//串口
  18.         GPIOdianji_Init();//电机引脚
  19.         GENERAL_TIM_Init();//电机PWM初始化
  20.         blueToothInit();//蓝牙初始化
  21.         TIM4_PWM_Init(199,7199);
  22.         TIM_SetCompare4(TIM4, 4);
  23.         TIM_SetCompare1(TIM4, 5);
  24.         TIM_SetCompare2(TIM4, 23);
  25.         TIM_SetCompare3(TIM4, 13);
  26.         while(1){
  27.                 //如果蓝牙断开,小车会一直在刹车状态
  28.                 if(BLUE_TOOTH_STATE != Bit_SET){
  29.                         stop();
  30.                 }
  31.                 if(KEY1==0)
  32.                 {
  33.                     forward();
  34.                         TIM_SetCompare1(TIM4,25);

  35.                 }
  36.                 if(KEY2==0)
  37.                 {
  38.                         stop();
  39.                         TIM_SetCompare1(TIM4,5);
  40.                 }
  41. //                car_speed();
  42.         }

  43. }

复制代码


  1. #include "duojipwm.h"
  2. #include "delay.h"


  3. void TIM4_PWM_Init(u16 arr,u16 psc)
  4. {  
  5.         //**结构体声明**//
  6.         GPIO_InitTypeDef GPIO_InitStructure;            //声明GPIO
  7.         TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure; //声明定时器
  8.         TIM_OCInitTypeDef  TIM_OCInitStructure;         //声明PWM通道
  9.        
  10.         //**时钟使能**//
  11.         RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, ENABLE);        //使能定时器TIM4时钟
  12.         RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);         //使能PB端口时钟
  13.        
  14.         //****//
  15.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;                                 //LED0-->PB.6 端口配置
  16.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;                  //复用推挽输出
  17.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
  18.         GPIO_Init(GPIOB, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.6
  19.         GPIO_SetBits(GPIOB,GPIO_Pin_6);
  20.         //****//
  21.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7;                                 //LED0-->PB.7 端口配置
  22.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;                  //复用推挽输出
  23.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
  24.         GPIO_Init(GPIOB, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.7
  25.         GPIO_SetBits(GPIOB,GPIO_Pin_7);
  26.        
  27.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8;                                 //LED0-->PB.7 端口配置
  28.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;                  //复用推挽输出
  29.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
  30.         GPIO_Init(GPIOB, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.7
  31.         GPIO_SetBits(GPIOB,GPIO_Pin_8);
  32.        
  33.         GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;                                 //LED0-->PB.7 端口配置
  34.         GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;                  //复用推挽输出
  35.         GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;                 //IO口速度为50MHz
  36.         GPIO_Init(GPIOB, &GPIO_InitStructure);                                         //根据设定参数初始化GPIOB.7
  37.         GPIO_SetBits(GPIOB,GPIO_Pin_9);

  38.   //初始化TIM3
  39.         TIM_TimeBaseStructure.TIM_Period = arr; //设置在下一个更新事件装入活动的自动重装载寄存器周期的值
  40.         TIM_TimeBaseStructure.TIM_Prescaler =psc; //设置用来作为TIMx时钟频率除数的预分频值
  41.         TIM_TimeBaseStructure.TIM_ClockDivision = 0; //设置时钟分割:TDTS = Tck_tim
  42.         TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;  //TIM向上计数模式
  43.         TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure); //根据TIM_TimeBaseInitStruct中指定的参数初始化TIMx的时间基数单位

  44.         //初始化TIM3 Channel1 PWM模式         
  45.         TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //选择定时器模式:TIM脉冲宽度调制模式2
  46.         TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
  47.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性:TIM输出比较极性高
  48.         TIM_OC1Init(TIM4, &TIM_OCInitStructure);  //根据T指定的参数初始化外设TIM3 OC1
  49.        
  50.         //初始化TIM3 Channel2 PWM模式         
  51.         TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //选择定时器模式:TIM脉冲宽度调制模式2
  52.         TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
  53.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性:TIM输出比较极性高
  54.         TIM_OC2Init(TIM4, &TIM_OCInitStructure);  //根据T指定的参数初始化外设TIM3 OC2
  55.        
  56.         TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //选择定时器模式:TIM脉冲宽度调制模式2
  57.         TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
  58.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性:TIM输出比较极性高
  59.         TIM_OC3Init(TIM4, &TIM_OCInitStructure);  //根据T指定的参数初始化外设TIM3 OC3
  60.        
  61.         TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; //选择定时器模式:TIM脉冲宽度调制模式2
  62.         TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; //比较输出使能
  63.         TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; //输出极性:TIM输出比较极性高
  64.         TIM_OC4Init(TIM4, &TIM_OCInitStructure);  //根据T指定的参数初始化外设TIM3 OC4

  65.         TIM_OC1PreloadConfig(TIM4, TIM_OCPreload_Enable);  //使能TIM4_CH1预装载寄存器
  66.         TIM_OC2PreloadConfig(TIM4, TIM_OCPreload_Enable);  //使能TIM4_CH2预装载寄存器
  67.         TIM_OC3PreloadConfig(TIM4, TIM_OCPreload_Enable);  //使能TIM4_CH3预装载寄存器
  68.         TIM_OC4PreloadConfig(TIM4, TIM_OCPreload_Enable);  //使能TIM4_CH4预装载寄存器
  69.    
  70.         TIM_Cmd(TIM4, ENABLE);  //使能TIM4
  71. }



联系方式

地址:石家庄市新华区民族路77号华强广场D座2009
电话:0311-88816616/87087811
手机:13315190088
传真:0311-67901001
联系人:张工
网址:www.taihedz.cn
邮箱:feixindz@163.com
微信:xinpianjiemi
QQ:527263666/568069805

在线客服
热线电话

企业微信