当前位置: 首页 > news >正文

网站首页推荐微商客源人脉app下载

网站首页推荐,微商客源人脉app下载,旅游网站的功能结构图,如何做网站设计一、硬件设计 步进电机介绍 本项目用到的是常见的也是控制起来最简单的步进电机#xff1a;五线四项的步进电机28BYJ-48。 单片机IO口输出电流太小无法直接驱动电机运行#xff0c;在这里我们需要另外加一个电机驱动板。可以选择ULN2003电机驱动板。 步进电机的控制原理 …一、硬件设计   步进电机介绍 本项目用到的是常见的也是控制起来最简单的步进电机五线四项的步进电机28BYJ-48。 单片机IO口输出电流太小无法直接驱动电机运行在这里我们需要另外加一个电机驱动板。可以选择ULN2003电机驱动板。 步进电机的控制原理 给步进电机不同的项轮流进行通电在电磁感应作用下每次产生一个很小的角位移连贯起来就能够带动电机的转动进行负载的驱动。 通过单片机来实现电机的控制需要关注以下几点 1通过脉冲信号进行控制。 2电机总转动的角度由输入的脉冲数来决定。 3电机的转速由脉冲输入的频率决定。 本项目用到的是八拍驱动的方式A→AB→B→BC→C→CD→D→DA 二、软件设计 1.电机控制引脚初始化 此处可以参考手把手从0到1教你做STM32FreeRTOS智能家居--第1篇之点亮LED灯-CSDN博客对STM32CubeMX进行引脚配置将所用到的引脚配置为推挽输出即可。 本项目的引脚连接为电机的 蓝色A线--PA8  粉色B线--PC9  黄色C线--PC8 橙色D线--PC7我在Motor.h文件中将控制GPIO高低电平的函数设置为宏定义此处提一嘴方便大家阅读。 #ifndef __MOTOR_H #define __MOTOR_H #include main.h#define u8 uint8_t#define YELLOW_GPIO_PORT GPIOC #define YELLOW_GPIO_PIN GPIO_PIN_8#define ORANGE_GPIO_PORT GPIOC #define ORANGE_GPIO_PIN GPIO_PIN_7#define PINK_GPIO_PORT GPIOC #define PINK_GPIO_PIN GPIO_PIN_9#define BLUE_GPIO_PORT GPIOA #define BLUE_GPIO_PIN GPIO_PIN_8#define orange_H_D HAL_GPIO_WritePin(ORANGE_GPIO_PORT, ORANGE_GPIO_PIN, GPIO_PIN_SET) #define orange_L_D HAL_GPIO_WritePin(ORANGE_GPIO_PORT, ORANGE_GPIO_PIN, GPIO_PIN_RESET) #define yellow_H_C HAL_GPIO_WritePin(YELLOW_GPIO_PORT, YELLOW_GPIO_PIN, GPIO_PIN_SET) #define yellow_L_C HAL_GPIO_WritePin(YELLOW_GPIO_PORT, YELLOW_GPIO_PIN, GPIO_PIN_RESET) #define pink_H_B HAL_GPIO_WritePin(PINK_GPIO_PORT, PINK_GPIO_PIN, GPIO_PIN_SET) #define pink_L_B HAL_GPIO_WritePin(PINK_GPIO_PORT, PINK_GPIO_PIN, GPIO_PIN_RESET)#define blue_H_A HAL_GPIO_WritePin(BLUE_GPIO_PORT, BLUE_GPIO_PIN, GPIO_PIN_SET) #define blue_L_A HAL_GPIO_WritePin(BLUE_GPIO_PORT, BLUE_GPIO_PIN, GPIO_PIN_RESET)void MOTO_Stop(void); void Open_Door(void); void Close_Door(void); void Set_Motor_Loop (unsigned char dirction,unsigned char loop,unsigned char speed); void Set_Motor_Angle(unsigned char dirction, int angle, unsigned char speed); #endif 2.电机控制函数 void Set_Motor_Num (unsigned char dirction, unsigned int num, unsigned char speed)是控制电机转动一步的函数用于调用Set_Motor函数对照着步进电机的控制原理中的图理论和实际应用完全对得上。 void Set_Motor_Loop (unsigned char dirction, unsigned char loop, unsigned char speed) 电机旋转一圈360°需要转动4096步。 void Set_Motor_Angle(unsigned char dirction, int angle, unsigned char speed) 用于控制电机旋转特定的角度其中有计算公式的注释实现粗略地角度控制。 #include motor.h//IN1: PA8 A Blue //IN2: PC9 B Pink //IN3: PC8 C Yellow //IN4: PC7 d Orange uint8_t Step 0;void Stop_Motor(void); void Set_Motor(unsigned char InputData, unsigned int speed);//dirction 1 正转 dirction 0 逆转 void Set_Motor_Num (unsigned char dirction, unsigned int num, unsigned char speed) //电机按步数运行 {unsigned int i;for(i 0; i num; i){ if(dirction 1){ Step;if(Step 7)Step 0;}else{if(Step 0) Step 8;Step--;}Set_Motor(Step, speed);} }//控制步进电机旋转特定圈数 void Set_Motor_Loop (unsigned char dirction, unsigned char loop, unsigned char speed) //电机按圈数运行 {Set_Motor_Num(dirction, loop * 4096, speed); }//360度4096步 //1度≈11.38步 //粗略地控制步进电机旋转特定角度 void Set_Motor_Angle(unsigned char dirction, int angle, unsigned char speed) {unsigned int i;unsigned int step 11.38 * angle;if(dirction 1){for(i 0; i step;i) {Set_Motor_Num(1, 1, 1);}}else{for(i 0;i step;i) {Set_Motor_Num(0, 1, 1);} }}void Stop_Motor(void) {blue_L_A;pink_L_B;yellow_L_C;orange_L_D; }void Set_Motor(unsigned char InputData, unsigned int speed) {switch(InputData){case 0:blue_H_A; pink_L_B; yellow_L_C; orange_L_D;break;case 1:blue_H_A; pink_H_B; yellow_L_C; orange_L_D;break;case 2:blue_L_A; pink_H_B; yellow_L_C; orange_L_D;break;case 3:blue_L_A; pink_H_B; yellow_H_C; orange_L_D;break;case 4:blue_L_A; pink_L_B; yellow_H_C; orange_L_D;break;case 5:blue_L_A; pink_L_B; yellow_H_C; orange_H_D;break;case 6:blue_L_A; pink_L_B; yellow_L_C; orange_H_D;break;case 7:blue_H_A; pink_L_B; yellow_L_C; orange_H_D;break;default:break;}HAL_Delay(speed);Stop_Motor(); }void Open_Door(void) {Set_Motor_Angle(1, 90, 1); } void Close_Door(void) {Set_Motor_Angle(0, 90, 1); }3.应用代码 参数1为正传(1正0逆)参数2为度数90°参数三为旋转速度。 Set_Motor_Angle(1, 90, 1); 三、实验效果  stm32控制步进电机旋转特定角度
http://www.pierceye.com/news/302438/

相关文章:

  • 网站开发制作软件网站运营推广主要做什么的
  • 网页设计怎么建立网站网站馆店精准引流怎么推广
  • iis6建设网站上海到北京飞机航班查询
  • 做网站 创业 流程什么是网站标题
  • 怎么查询菠菜网站做没作弊沙朗做网站公司
  • 网站的建设周期与阶段广州王牌seo
  • 连江建设局网站手机网站建设套餐内容
  • 收录网站排名wordpress 搜索过滤
  • 上海网站建设代码长春又出现一例
  • 国外包装设计欣赏网站wordpress4.9.4环境要求
  • 免费域名网站查询好的营销网站设计公司
  • 网站说服力在百度上怎么建立网站
  • 医疗网站模板下载qq音乐的网站建设信息
  • 商务网站开发的的基本流程网站 设计 趋势
  • php mysql网站开发实例卖货平台排名前十
  • 房地产管理局网站建设银行北京市分行网站
  • 无锡哪家网站做的好黄骅市人事考试网
  • 芜湖seo网站优化淘宝官网首页手机版
  • 用付费网站做推广ui网站一般建好大
  • 四川建设行业网站有哪些最新体育新闻头条
  • 湘潭网站优化公司wordpress会员积分邀请
  • 腾讯网静态网站建设西宁网站建设公司排行
  • pc网站优势买完网站怎么建设
  • 网站设计与制作用什么软件外包加工网官网下载安装
  • 商城网站设计企业建一个o2o网站
  • 营销型网站创建php源码资源网
  • 优秀设计师网站在上海做兼职去哪个网站搜索
  • 教育行业网站建设房屋3d立体设计软件
  • 海珠免费网站建设php网站系统
  • 建设银行网站信息补充施工企业奖惩制度范本