导航:首页 > 操作系统 > 单片机正反

单片机正反

发布时间:2022-05-05 15:09:15

‘壹’ 单片机控制电机的正反转 程序及电路图

这个很简单,我教你怎么玩,下面是思路和方式
思路:有三个输入,分别是一个按钮、两个霍尔传感器(也就是接近开关),我用p0.0到p0.2来代替;输出2个或以上(这看你接什么显示器,如果是pc的话,就不用数字量输出,直接串口就可以了)控制正反转的继电器管脚用p1.0、p1.1;
ps:显示那块我不知道你怎么处理,但是需要与一个全局变量转动次数k连接起来,另外两个输入接近开关选用npn传感器或用光电隔离,总之有效信号能把管脚电压拉低就可以了,具体硬件要注意什么,有需要就问我
现在我们来写程序:
#include
//选用晶振11.0592mhz
unsigned
char
k=0;
//k表示正反转次数
sbit
x0=p3^2;
//调节按钮
sbit
x1=p1^1;
//上限位接近开关信号
sbit
x2=p1^2;
//下限位接近开关信号
sbit
y1=p0^0;
//电机上升(注意:我使用的是管脚输出为0时候,电机运动,这样可以避免启动时候,单片机自复位对电机点动的影响)
sbit
y2=p0^1;
//电机下降
void
delay50ms(unsigned
int
i)
{
unsigned
int
j;
for
(i;i>0;i--)
for(j=46078;j>0;j--);
}
main()
{
it0=1;
//下降沿触发
ex0=1;
//开p3.2外部中断
ea=1;
//总中断开
while(1)
while(k)
{
y1=0;
//正转
while(x1==1);
//等待正转接近开关反应
y1=1;
//正转停
delay50ms(1);
//停止时间50ms
y2=0;
//反转
while(x2==1);
//等待反转接近开关反应
y2=1;
//反转停
k--;
//圈数减一
}
}
void
counter0(void)
interrupt
0
{
k++;
//外部中断控制圈数加一
//这个位置可以加你显示程序
}
程序已经通过测试,放上去就能用,很好玩哟,呵呵

‘贰’ 如何分辨单片机方向

丝印正对自己,从左往右第一脚为第一引脚,或者看缺口,缺口在左边,第一只脚为第一引脚!

‘叁’ 单片机如何判断4个按键正反依次按下后状态

计数啊。如果是先按1或是4 就进入去。中间注意循环等待时间。
if(key1 == 0x00)
{
if(key2 == 0x00)
{
顺向。

}
else
{
不是顺向,单独动作。
}
}

‘肆’ 单片机控制交流电机正反转的C语言程序

这个很简单,我教你怎么玩,下面是思路和方式
思路:有三个输入,分别是一个按钮、两个霍尔传感器(也就是接近开关),我用P0.0到P0.2来代替;输出2个或以上(这看你接什么显示器,如果是PC的话,就不用数字量输出,直接串口就可以了)控制正反转的继电器管脚用P1.0、P1.1;
PS:显示那块我不知道你怎么处理,但是需要与一个全局变量转动次数k连接起来,另外两个输入接近开关选用NPN传感器或用光电隔离,总之有效信号能把管脚电压拉低就可以了,具体硬件要注意什么,有需要就问我
现在我们来写程序:
#include <reg51.h> //选用晶振11.0592MHz
unsigned char k=0; //k表示正反转次数
sbit X0=P3^2; //调节按钮
sbit X1=P1^1; //上限位接近开关信号
sbit X2=P1^2; //下限位接近开关信号
sbit Y1=P0^0; //电机上升(注意:我使用的是管脚输出为0时候,电机运动,这样可以避免启动时候,单片机自复位对电机点动的影响)
sbit Y2=P0^1; //电机下降
void delay50ms(unsigned int i)
{
unsigned int j;
for (i;i>0;i--)
for(j=46078;j>0;j--);
}
main()
{
IT0=1; //下降沿触发
EX0=1; //开P3.2外部中断
EA=1; //总中断开
while(1)
while(k)
{
Y1=0; //正转
while(X1==1); //等待正转接近开关反应
Y1=1; //正转停
delay50ms(1); //停止时间50ms
Y2=0; //反转
while(X2==1); //等待反转接近开关反应
Y2=1; //反转停
k--; //圈数减一
}
}
void counter0(void) interrupt 0
{
k++; //外部中断控制圈数加一
//这个位置可以加你显示程序
}
程序已经通过测试,放上去就能用,很好玩哟,呵呵

‘伍’ 51单片机电机正反转控制程序

正转:PWM1高电平,PWM2低电平;

反转:PWM1低电平,PWM2高电平;

‘陆’ 用单片机怎样实现电机的正反转控制

方案一:使用开关直接控制电动机的正反转,此种设计非常简便易懂,便于修理与使用。

缺点:该方案直接控制易产生火花电弧,会危害操作者生命安全。 如图1所示:

图1中的开关为单刀双掷开关,所以开关有左,中,右三个位置。 方案一开关控制过程如下:

将单刀双掷开关置向左边电动机开始正转,将开关置向右端电动机开始反转,将开关置向中间位置电动机停止转动。

方案二:使用电磁继电器进行控制电动机的正反转。此种设计使用了电磁继电器为了是能让控制过程更安全可靠,顺利解决了方案一的不足。

缺点:该方案不能够满足现代生活对自动化智能化的基本要求。

‘柒’ 单片机电机正反转

单片机不能直接驱动直流电机的,要加驱动芯片,因为要驱动直流电机并不是只要达到驱动电压就行,一定要达到驱动电流,不信你试一下,当直接接上电机后用电压表测电压一定小于5V,这是在电路中很重要的一点,设计电路时并不是只考虑电压和电流的一定要达到额定功率,单片机连一个简单的二极管都驱动不了(当然这只是在单片机提供高电压情况下,即源电流状态),另外几乎所有的数字电路都驱动不了大功率器件,因为数字电路追求的是低功耗,所以要加驱动芯片或电路。就解释这么多吧,想了解更多的话可以qq1069512711

‘捌’ 51单片机步进电机正反转程序

单片机控制步进电机,我想你说的是两相步进电机,一般是控制其相序分配的顺逆从而控制正反转,一般而言,步进电机相序分配你可以做成一个数组比如step[]={0x03,0x06,0x0c,0x09},这样来说可以假设P0口是步进电机控制口,那么可以按如下方式来控制: while(1) { for(i=0;i<4;i++) { if(fx==1)P0=step[i]; //正向 else P0=step[3-i]; //反向 delay(x); //x大小决定电机速度。
根据电机相数买个驱动器。然后用单片机产生脉冲来控制电机的转动以及正反转。单片机产生脉冲的方法和单片机控制流水灯是一样的。ULN2003D 是驱动步进电机的驱动芯片,主要是匹配电机所需的电流。 由于是四相电机,步进电机之所以可以转动就需要给相绕组提供连续的脉冲,所以需要4个端口来控制四相绕组的工作状态(P15应该是不需要的),具体的编码要看电机的拍数; 一旦明白这些,你就可以很容易编写代码来控制电机的转动了,还有在脉冲间你可以设置不同的延时时间来调节电机的转速。

‘玖’ 用单片机怎么使直流电机正反转

单片机控制直流电机正反转,最简单的方法是 两个I/O口 控制两个继电器(一组常开、常闭)的就可以,电机 两个极 接 两个继电器 的 动触点,两个继电器 的 常开点接+(电机电源),两个常闭点接-,就可以了。
单片机控制接通一个继电器 是正转,控制接通另一个继电器 是反转,两个继电器都不接通(或者都接通)电机不转。

‘拾’ 单片机焊接有正负极吗

你的板子上是先焊20脚IC座,焊接时有方向(不叫正负极),IC座右端的凹槽与板子上丝印的凹槽对应,如下图所示。在插单片机时,千万要注意方向(也不叫正负极),单片机一端的凹槽在左边,就是看单片机上的型号字母是正的,千万别看成倒立的型号。

阅读全文

与单片机正反相关的资料

热点内容
社会学波普诺pdf 浏览:582
解压做食物的小视频 浏览:756
pdf怎么单独设置文件夹 浏览:472
业务逻辑程序员 浏览:659
addto新建文件夹什么意思 浏览:160
有服务器地址怎么安装软件 浏览:659
安卓如何完全清除数据 浏览:690
安卓安卓证书怎么信任 浏览:53
服务器被攻击如何解决 浏览:221
学霸变成程序员 浏览:881
c语言编译错误fatalerror 浏览:441
ipv4内部服务器地址怎么分配 浏览:463
java线程安全的方法 浏览:950
重复命令画梯形 浏览:164
在疫情就是命令 浏览:328
自己搭建一个什么服务器好玩 浏览:253
java基础马士兵 浏览:823
完美世界手游如何查看服务器 浏览:859
光遇安卓与ios什么时候互通 浏览:598
js如何运行时编译 浏览:918