51单片机实现步进电机加减速的例子-加注释

发布者:BlissfulSunrise最新更新时间:2014-12-31 来源: 51hei关键字:51单片机  步进电机  加减速 手机看文章 扫描二维码
随时随地手机看文章
void  motor_ffw()
 {
   unsigned char i;
 
      for (i=0; i<8; i++)       //一个周期转30度
        {
          P1 = FFW[i]&0x1f;  //取数据
  //FFW为步进码
          delay();           //调节转速
        }
     }
 
 
 
 void delay()  
{                          
   unsigned int k,t;
    t=rate;  //转速定义
   while(t--)
   {
     for(k=0; k<150; k++)
     { }
   }
}
void motor_turn()
{
 unsigned char x;
 rate=0x0a;
 x=0x40;
 do
 {
  mote_ffw();
  rate--;  //每进一步时间越来越短
 }while(rate!=0x01);//处于加速过程
 do
 {
 motor_ffw();
 x--;     //每减一,进一步,匀速过程
          //此处同样可以设延时函数
 } while(x!=0x01);
 do
 {
  motor_ffw();
  rate++; //每进一步时间越来越长
 
 }  while(rate!=0x0a);//处于减速过程
}
关键字:51单片机  步进电机  加减速 引用地址:51单片机实现步进电机加减速的例子-加注释

上一篇:基于51单片机之74HC165实验例程
下一篇:74HC595使用SPI总线连接51单片机的驱动程序

推荐阅读最新更新时间:2024-03-16 13:50

51单片机设计解决电动车在跷跷板上的运行和控制问题
1.前 言 本设计为参加电子设计竞赛而作,较好地解决了电动车在跷跷板上的运行和控制问题,系统结构比较简单,控制比较准确。 2.系统方案设计、比较与论证 根据题目的基本要求,设计任务主要完成电动车在规定时间内按规定路径稳定行驶,并能具有保持平衡功能,同时对行程中的有关数据进行处理显示。为完成相应功能,系统可以划分为以下几个基本模块:电动机驱动模块、寻迹线探测 模块、平衡状态检测模块、信息显示模块。见图1 图1 系统框图 2.1寻迹线探测模块 探测路面黑色寻迹线的原理:光线照射到路面并反射,由于黑线和白纸的反射系数不同,可根据接受到反射光强弱由 传感器 产生高低 电平 并最终通过 单片机 判断是否到
[单片机]
用<font color='red'>51单片机</font>设计解决电动车在跷跷板上的运行和控制问题
一种简单51单片机电子密码锁设计
随着工业化进程的不断加快,信息化也逐渐进入千家万户,人们对家庭居住和文件资料等隐私的安全要求也逐渐提高,而传统的机械锁也日益不能满足要求,因此保密性高、灵活性好、安全系数高的电子锁的设计和提出对生活有着重大意义。结合这种情况,本文对单片机的电子密码锁的设计进行了分析和探究。 1 单片机电子密码锁的背景和设计特点 在高科技迅速发展的今天,人们已经发明了密码锁、电子锁和激光锁等多种形式。这些锁在传统钥匙的基础上,利用磁场、声波和光束等多种方式来控制锁的开启和关闭,从而有效地增强了锁的安全性,保护了人们的生命财产和安全,有效地防止盗贼的光顾。 单片机又称为单片微电脑或者单片微型计算机,它有效的集合了中央处理器、只读存储器、随机存取存储
[单片机]
一种简单<font color='red'>51单片机</font>电子密码锁设计
51单片机C语言运算符表
51单片机C语言运算符表: 注意:在逻辑运算中,凡结果为“0”的数值即为真,等于“0”为假。
[单片机]
<font color='red'>51单片机</font>C语言运算符表
51单片机 矩阵按键控制数码管显示0~F
通过按下4*4矩阵按键让数码管显示对应的数值 #include reg52.h typedef unsigned char u8; typedef unsigned int u16; u8 code smgduan ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //0 1 2 3 4 5 6 7 8 9 A b C d E F u16 key_value; void delay(u16 i) { while(i--); } void keyscan() { P1=
[单片机]
STM32C8T6控制步进电机
STM32C8T6发送控制信号给电机驱动,电机驱动控制步进电机。 电机驱动:控制一个步进电机转动,使用一路PWM信号和一路方向信号,根据pwm信号的频率控制步进电机的转速,方向信号控制步进转动的方向。 void SteppingMotor_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2, ENABLE); RCC_APB2
[单片机]
基于51单片机的六足仿生机器人
一、整体框架: (1)设计功能: ①能完成多方向行走以及其他的自定义的动作。(前进,后撤,左右转,避障); ②可自动避障; ③通过手机蓝牙下令他的下一步动作。 (2)功能框架: (3)使用器材: ①STC89C52单片机、74LS04(反相器); ②蓝牙串口通信模块; ③超声波测距模块; ④9G舵机18个; ⑤PVC线槽若干(模具); ⑥PCB转印板; ⑦螺丝螺母若干。 ⑦keil3软件 二、工作原理: (1)蓝牙串口通讯模块: 蓝牙串口通讯模块接收手机蓝牙软件发送字符串信号,单片机通过串口通讯协议处理蓝牙模块接收到的信息,再根据信息的内容来判断机器人将进行的下一步行动。 (2)超声波测距模块: 超声波模块向某一方向发射
[单片机]
基于<font color='red'>51单片机</font>的六足仿生机器人
单片机 步进电机 驱动程序 ULN2003 28BYJ-48 5线4相电机
/*************** writer:shopping.w ******************/ #include reg52.h #define uint unsigned int #define uchar unsigned char uchar code FFW = { 0x01, 0x03, 0x02, 0x06, 0x04, 0x0c, 0x08, 0x09 }; uchar code REV = { 0x09, 0x08, 0x0c, 0x04, 0x06, 0x02, 0x03, 0x01 }; sbit K1 = P3 ^ 0; sbit K2 =
[单片机]
单片机 <font color='red'>步进电机</font> 驱动程序 ULN2003 28BYJ-48 5线4相电机
步进电机发热解决方法,转速上不去和丢步故障的解决方法
发热是步进电机的一个普遍现象,但怎样的发热程度才算正常,以及如何尽量减小步进电机发热呢?以下是简单的分析。 1、步进电机发热的原因 1.步进电机为什么会发热对于各种步进电机而言,内部都是由铁芯和绕组线圈组成的。绕组有电阻,通电会产生损耗,损耗大小与电阻和电流的平方成正比,这电流不是标准的直流或正弦波,还会产生谐波损耗;铁心有磁滞涡流效应,在交变磁场中也会产生损耗,其大小与材料、电流、频率、电压有关,这叫铁损。铜损和铁损都会以发热的形式表现出来,从而影响电机的效率。步进电机比较大,且谐波成分高,电流交变的频率也随转速而变化,因而步进电机普遍存在发热比一般交流电机严重。 2.步进电机发热的合理范围电机发热允许到什么程度,主要取
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved