导航:首页 > 操作系统 > 单片机控制继电器程序

单片机控制继电器程序

发布时间:2022-01-14 05:03:08

1. 求51单片机控制继电器程序

程序就免了,给你几个建议。

  1. 你最好把按键的程序和逻辑控制分开写,这样比较清晰,按键驱动的结果就是消抖以后的按键状态,处理完清除,最好用固定时钟驱动少用延时,按键驱动看着容易做好了还是不容易的。

  2. 逻辑控制无非就是if else。。。用全局量记录之前的状态,最好有个简单明了的逻辑状态图否则很容易乱套,然后操作继电器就是两个io口就是了。

  3. 你用的这个和89c都是stc比较老的型号了,建议你到官网看看,很多新型号跑得更快,程序上能不能通用注意两点,死等延时的时间和硬件上的区别。

  4. stc很多型号都用3.0和3.1口下载程序,所以按键会有影响,建议换个io口

  5. 继电器的常开和常闭是接线决定的,按键常开和常闭可以用上下拉电阻来控制,硬件上处理一下,主要是要保证系统刚上电之前的这段时间的状态是对的。

  6. 51和stm32是完全不同的cpu,如果要移植到stm32上初始化和寄存器操作是不一样的,c语言的层面上大概只有逻辑控制这块儿能用,而且stm32是3.3V硬件上也要处理。

  7. 这个做成并不难,做好就要花些心思,自己做才有意义解决问题就是学习的过程。

2. 单片机控制继电器代码

单片机,可以做到:60s、30s,交替输出高低电平。

继电器,需要由外接的驱动电路来进行控制。

3. 单片机怎么控制继电器

继电器有个电压线圈,只要那个线圈通电,继电器就会闭合,或者断开,从而控制大电压的触点断开或者闭合

4. 单片机89c51控制多个继电器程序

我来帮你做,你稍等。
差不多肯定你这里条件没说明白,因为全是断开没有吸合,先按字面意思来。
假设八个继电器由P1口驱动,高电平有效,及你所谓的打开,这是一个子程序,按键扫描你自己处理,当前键值为KEY,并将1-4键键值定义成KEY1、KEY2、KEY3、KEY4。
。。。。。。
MOV P1,#0C3H;这个加入你的主程序初始化中,1、4键控制的继电器吸合
。。。。。。
MOV A,KEY;这个加入你的主程序键盘处理部分,键值送入A然后调用下面子程序
LCALL ONOFF
。。。。。。
ONOFF:

CJNE A,KEY1,CKEY2;不是1号键转去判断2号键

ANL ,#C3H;2-3键控制的继电器断开

RET
CKEY2:

CJNE A,KEY2,CKEY3;不是2号键转去判断3号键

ANL ,#CCH;1-3键控制的继电器断开

RET
CKEY3:

CJNE A,KEY3,CKEY4;不是3号键转去判断4号键

ANL ,#0F0H;1-2键控制的继电器断开

RET
CKEY4:

CJNE A,KEY4,ERROR;不是4号键键值错误,退出

ANL ,#C0H;1-2-3键控制的继电器断开

ERROR:
RET

5. 如何用单片机控制继电器

不要用三极管放大,接上拉电阻即可。

做实验直接选用线圈电压为5V的继电器就可以。单片机输出引脚与继电器之间要接一个三极管,单片机I/O直接继电器电流不够。

单片机是一个弱电器件,一般情况下它们大都工作在5V甚至更低。驱动电流在mA级以下。而要把它用于一些大功率场合,比如控制电动机,显然是不行的。

在这里,继电器驱动含有两个意思:一是对继电器进行驱动,因为继电器本身对于单片机来说就是一个功率器件。


(5)单片机控制继电器程序扩展阅读:

现在,单片机的某一个需要控制这个继电器电路的输出引脚就是一只"手",当单片机的这个引脚输出低电平的时候,就像"手"在打开三极管"水龙头",水就从上往下流,继电器"水轮机"就开始转起来了。

反之,如果是输出高电平,"手"就开始关"水龙头",继电器"水轮机"因为没有水流下来,就会停止。

这就是三极管的开关作用。

简单的理解和记忆就是:三极管是一个开关器件,其实真的可以将它看成是一个开关,只不过它不是用手来控制,而是用电压(电流)来控制的,因此,三极管有些时候也被称做电子开关(与机械开关相区别)。

6. 单片机控制继电器,用keil如何编程

单片机控制继电器,就是用一个l/O脚输出高低电平来实现的,写程序就很简单。
先用sbit 定义Ⅰ/O引脚,程序就控制输高低电平就行了。举例,在主程序前面定义引脚,
sbit jdq=P1^1;//定义引脚,假设输出高电平,继电器吸合。
主程序控制方法
jdq=1;//吸合
jdq=0;//关闭
如果是输出低电平吸合,控制方法相反。

7. 单片机控制继电器

这个事专为你写的程序。在keil里编译通过。

ORG 00H
LJMP START
ORG 0BH
LJMP TIM
ORG 30H
START:
MOV IE,#10000010B
MOV TMOD,#00000010B
MOV TH0,#05H
SETB TR0
CLR 20H.0
MOV R0,#00H
MOV R1,#00H
MOV R2,#00H
MOV R3,#00H
MOV R4,#00H
MOV SP,#2FH
LOOP:
JBC 20H.0,NEXT1
SJMP LOOP
NEXT1:
CJNE R3,#00H,NEXT2
INC R3
MOV R1,#00H
MOV R2,#00H
MOV R4,#00H
CLR 20H.2
JNB 20H.2,$
CLR 20H.2
MOV P0,#11111101B
AJMP LOOP
NEXT2:
CJNE R3,#01H,NEXT3
INC R3
MOV R1,#00H
MOV R2,#00H
MOV R4,#00H
CLR 20H.1
JNB 20H.1,$
MOV P0,#11111011B
AJMP LOOP
NEXT3:
CJNE R3,#02H,NEXT4
INC R3
MOV P0,#11110111B
AJMP LOOP
NEXT4:
CJNE R3,#03H,NEXT5
INC R3
AJMP LOOP
NEXT5:
CJNE R3,#04H,NEXT6
INC R3
AJMP LOOP
NEXT6:
CJNE R3,#05H,NEXT7
INC R3
AJMP LOOP
NEXT7:
CJNE R3,#06H,NEXT8
INC R3
AJMP LOOP
NEXT8:
CJNE R3,#07H,NEXT9
INC R3
MOV P0,#11101111B
AJMP LOOP
NEXT9:
CJNE R3,#08H,NEXT10
INC R3
AJMP LOOP
NEXT10:
CJNE R3,#09H,NEXT11
INC R3
MOV P0,#11011111B
AJMP LOOP
NEXT11:
CJNE R3,#0AH,NEXT12
INC R3
MOV P0,#11011111B
AJMP LOOP
NEXT12:
CJNE R3,#0BH,NEXT13
INC R3
MOV P0,#11011111B
AJMP LOOP
NEXT13:
CJNE R3,#0CH,NEXT14
INC R3
MOV P0,#11011111B
AJMP LOOP
NEXT14:
CJNE R3,#0DH,NEXT15
INC R3
MOV P0,#11011111B
AJMP LOOP
NEXT15:
CJNE R3,#0EH,NEXT16
INC R3
MOV P0,#10111111B
AJMP LOOP
NEXT16:
CJNE R3,#0EH,NEXT
INC R3
MOV P0,#10111111B
AJMP LOOP
NEXT:
MOV R3,#00H
AJMP NEXT1

TIM:
INC R0
CJNE R0,#40,OVER
MOV R0,#00H
INC R1
CJNE R1,#10,OVER
MOV R1,#00H
SETB 20H.0
INC R2
CJNE R2,#100,OVER
MOV R2,#00H
SETB 20H.1
INC R4
CJNE R4,#18,OVER
MOV R4,#00H
SETB 20H.2
OVER:
RETI
END

8. 单片机89c51控制继电器程序

很好做呀
#include<reg51.h>
sbit key=P1^0;
sbit jdq=P2^0;
main()
{
unsigned int times;
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
while(1)
{
if(key==0)

{
while(key==0);

jdq=0;

TR0=1;

times=0;

while(times>=2400)

{
while(TF0==0);

TF0=0;

TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
times++;

}

jdq=1;

TR0=0;

}

}

}

9. 用单片机设计程序实现继电器开关控制

这个单片机实验看似简单,就算程序没问题,仿真的时候也失败的多,原因是继电器这个仿真模型挺深奥的,不想我们想的那样……如果出现了郁闷的情况,千万别说有BUG哈,好好研究一下,呵呵
实际做电路,出实物的时候应该问题不大吧

阅读全文

与单片机控制继电器程序相关的资料

热点内容
工作三年的大专程序员 浏览:726
java毕业设计文献 浏览:138
筹码集中度指标源码 浏览:477
listsortjava 浏览:180
plc闪光电路编程实例 浏览:297
socket编程试题 浏览:201
华为的服务器怎么设置从光驱启动 浏览:867
程序员真的累吗 浏览:323
学信网app为什么刷脸不了 浏览:871
天蝎vs程序员 浏览:991
单片机下载口叫什么 浏览:186
程序员的道 浏览:924
云服务器不实名违法吗 浏览:556
怎样查看文件夹图片是否重复 浏览:993
文件怎么导成pdf文件 浏览:806
打开sql表的命令 浏览:101
安卓手机如何面部支付 浏览:37
天元数学app为什么登录不上去 浏览:823
明日之后为什么有些服务器是四个字 浏览:104
安卓系统l1是什么意思 浏览:26