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

枣庄企业网站建设移动应用开发难学吗

枣庄企业网站建设,移动应用开发难学吗,网站正在建设中页面的英文,南宁网页制作培训PWM驱动舵机 接线图如上图所示。注意#xff0c;舵机的5V 线不能接到面包板上的正极#xff0c;面包板上的正极只有3.3V,是STM32提供的#xff0c;所以要接到STLINK的5V, 我们如何驱动舵机呢#xff1f;由之前我们介绍原理知道#xff0c;要输出如下图对应的PWM波形才行…PWM驱动舵机  接线图如上图所示。注意舵机的5V 线不能接到面包板上的正极面包板上的正极只有3.3V,是STM32提供的所以要接到STLINK的5V, 我们如何驱动舵机呢由之前我们介绍原理知道要输出如下图对应的PWM波形才行只要你的波形能按照这个规定准确的输出就能驱动 在上次PWM驱动呼吸灯的基础上改一下我们现在电路图连接的是PA1口的通道2这里GPIO的初始化时改为GPIO_Pin_1,可以从引脚定义表去看看呼吸灯是使用PA0引脚所以是定时器2的通道1但是PA1是用的定时器2的通道2所以要把TIM_OC1Init改为OC2. TIM_OC2Init(TIM2,TIM_OCInitStructure); 如果通道1和通道2都想用的话就直接初始化两个通道比如 TIM_OC2Init(TIM2,TIM_OCInitStructure);TIM_OC1Init(TIM2,TIM_OCInitStructure); 这样就能同时使用两个通道来输出PWM了同理通道3与通道4也是可以使用的。 那对于同一个定时器的不同通道输出的PWM他们的频率因为不同通道是共用一个计数器的所以他们的频率必须是一样的。它们的占空比由各个的CCR决定所以占空比可以各自设定 还有它们的相位由于计数器更新所有PWM同时跳变所以它们的相位是同步的。这就是同一个定时器不同通道输出PWM的特点如果驱动多个舵机或者直流电机那使用同一个定时器不同通道的PWM就完全可以了。  最后把改的CCR全部变为通道2. 然后根据舵机计算公式设置CCRPSC,ARR. 最后代码如下所用的所有模块如下 main.c #include stm32f10x.h // Device header #include Delay.h #include OLED.h #include Servo.h #include Key.huint8_t KeyNum; float Angle;int main(void) {OLED_Init();Servo_Init();Key_Init();OLED_ShowString(1, 1, Angle:);while (1){KeyNum Key_GetNum();if (KeyNum 1){Angle 30;if (Angle 180){Angle 0;}}Servo_SetAngle(Angle);OLED_ShowNum(1, 7, Angle, 3);} }Servo.c #include stm32f10x.h // Device header #include PWM.hvoid Servo_Init(void) {PWM_Init(); }void Servo_SetAngle(float Angle) {PWM_SetCompare2(Angle / 180 * 2000 500); }Servo.h #ifndef __SERVO_H #define __SERVO_Hvoid Servo_Init(void); void Servo_SetAngle(float Angle);#endif其他的模块都在前面的博客有自己可以去找一下后面我会全部整理在一起。 PWM驱动直流电机 接线图 代码如下 所有模块如下 main.c #include stm32f10x.h // Device header #include Delay.h #include OLED.h #include Motor.h #include Key.huint8_t KeyNum; int8_t Speed;int main(void) {OLED_Init();Motor_Init();Key_Init();OLED_ShowString(1,1,Speed:);while(1){KeyNumKey_GetNum();if(KeyNum1){Speed20;if(Speed100){Speed-100;}}Motor_SetSpeed(Speed);OLED_ShowSignedNum(1,7,Speed,3);} } Mortor.c #include stm32f10x.h // Device header #include PWM.hvoid Motor_Init(void) {RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Speed GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Pin GPIO_Pin_4|GPIO_Pin_5;//方向控制脚GPIO_Init(GPIOA, GPIO_InitStructure);PWM_Init(); }void Motor_SetSpeed(int8_t Speed) {if(Speed0){GPIO_SetBits(GPIOA, GPIO_Pin_4);GPIO_ResetBits(GPIOA, GPIO_Pin_5);PWM_SetCompare3(Speed);}else{GPIO_ResetBits(GPIOA, GPIO_Pin_4);GPIO_SetBits(GPIOA, GPIO_Pin_5);PWM_SetCompare3(-Speed);} } Mortor.h #ifndef __OLED_H #define __OLED_H void Motor_Init(void); void Motor_SetSpeed(int8_t Speed);#endif
http://www.pierceye.com/news/759509/

相关文章:

  • 接单子做网站词类似酷家乐做庭院的网站
  • 道路建设网站专题推广做黄页网站
  • 做展柜平时在哪里网站推广青岛原创工程设计有限公司
  • 网站建设加网络营销营销网站有多种类型
  • 深圳网站网页制作公司深圳品牌网站建设公司有哪些
  • 网站建设中 windows网站后台用什么做
  • 外贸营销型网站建站怎么做便民信息网站
  • 事业单位门户网站建设的建议大连建设工程信息网华宇凤凰城东侧市政管网配套工程
  • 上海网站建设开发哪亚马逊官网首页中国
  • 常德网站建设套餐报价英文网站字体大小
  • 橙色网站logo 配色播放器网站怎么做
  • dw网站制作怎样做网站xml
  • 房屋租赁网站开发意义新网站如何做排名
  • 钉钉如何做自己的网站银川企业网站建设
  • 做游戏女角色去衣的网站网站建设及售后服务的说明书
  • 微网站下载资料怎么做网站开发毕业设计任务书怎么写
  • ckplayer网站根目录泉州 网站制作
  • 中国建设银行网站江苏分行帮别人做网站收多少钱合适
  • 公司该建哪种网站带有互动的网站开发
  • 怎样进入谷歌网站怎么做一个简易网站
  • 邯郸网站优化公司集团公司简介模板
  • 网站的需求分析怎么写文山州住房建设网站
  • 广东网站开发费用动易的网站能否静态
  • 网站的后期维护php建设图书网站代码
  • 做营销网站制作外贸多语言网站建设
  • 广州做网站 信科网络wordpress优化宝塔
  • 深圳网站制作作枣庄做网站制作
  • 企业做网站方案建筑公司网站平台
  • 简单的企业网站phpwordpress 图标插件
  • 网页界面设计评分标准东营网站关键字优化