求单片机控制步进电机正反转圈数程序。。。。哪位高手教教我,在线等。。。

怎样设置一个程序,当温度高于25度时,步进电机正转8圈后停止不动,当温度低于25度时,步进电机反转8圈停止不动。温度可以在数码管上显示。我的步进电机是5线四相的。单片机是... 怎样设置一个程序,当温度高于25度时,步进电机正转8圈后停止不动,当温度低于25度时,步进电机反转8圈停止不动。 温度可以在数码管上显示。我的步进电机是5线四相的。单片机是51单片机。 给高分。。。。。。。。。。。 展开
 我来答
霞子说什么
2012-11-18 · 超过18用户采纳过TA的回答
知道答主
回答量:58
采纳率:100%
帮助的人:30.1万
展开全部
你先定义正反向控制数组
void control()
{
if(温度>=25)
do
{
正转(圈数)
}while(!(圈数=8))
if(温度<25)
do
{
反转(圈数)
}while(!(圈数=8))
}

void display(uint temp)
{
尽量避免浮点数运算
. 显示数码管要专门用一位显示一个点
}

void main()
{
system_init()
while(1)
{
control();
display(tem);

}
}

架构大概是这样了,你什么都没给,帮你写了 你还得改,还是自己参照原理图写吧。
望采纳,并祝早日成功!
德鸿数智
2024-10-30 广告
步进位移台是北京德鸿数智科技有限责任公司提供的一种高精度运动控制设备。它采用先进的步进电机驱动技术,能够实现微小且精确的位移控制。该位移台具有定位准确、运动平稳、响应速度快等特点,适用于各种需要高精度定位的领域,如光学实验、半导体制造、精密... 点击进入详情页
本回答由德鸿数智提供
百度网友7de1cb0
2012-11-30 · 超过15用户采纳过TA的回答
知道答主
回答量:86
采纳率:0%
帮助的人:32.3万
展开全部
//4拍励磁步进电机
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar table[]={0x08,0x04,0x02,0x01};
uchar direction;
uchar speed,wendu;
/*******MS级别延时********************/
void delayms(uchar a)
{
uchar b,c;
for(b=0;b<a;b++)
for(c=0;c<110;c++);
}
/*************正转函数********************/
void zheng()
{
uchar i;
for(i=0;i<4;i++)
{
P1=table[i];
delayms(speed);
}
}
/****************反转函数*******************/
void fan()
{
uchar i;
for(i=3;i>-1;i--)
{
P1=table[i];
delayms(speed);
}
}
/****************停止函数*******************/
void ting()
{
P1=0X00;
}
void main()
{
speed=10;
direction=1;
uchar i;
while(1)
{
if(wendu>25)
{
for(i=0;i<9;i++)
zheng();
ting();
}
else
{
for(i=0;i<9;i++)
zheng();
ting();
}
}
}
数码管显示由于所接电路不一样,你就自己写吧!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
442725822
2012-11-22
知道答主
回答量:29
采纳率:0%
帮助的人:11.6万
展开全部
你是什么不懂啊 是不懂怎么控制步进电机吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爾下掃祐邊
2012-11-18
知道答主
回答量:16
采纳率:0%
帮助的人:7万
展开全部
不知道啊~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式