找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 31|回复: 5
打印 上一主题 下一主题
收起左侧

继电器控制

[复制链接]
跳转到指定楼层
楼主
ID:1104510 发表于 2026-1-12 10:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大神,麻烦帮我看一下,用C语言写一个51单片机程序,实现如下功能:单片机型号为STC15W408AS,有四个输入口,两个输出口。4个输入口分别命名为key1~key4,2个输出继电器口分别命名为kt1~kt2;key1接入的是一个自复位按钮开关,key2,key3接入的是两个光电开关。key1主要实现按钮一键控制继电器kt1启停(不管key2和key3的状态),即按一下开,再按一下关。当kt1处于打开状态时,如果检测到key2和key3任意一个输入口没有输入信号时,关闭kt1;引脚定义:sbit key1 = P1^2;                        /*单片机1.2引脚检测key1是否动作*/
        sbit key2 = P1^3;                        /*单片机1.3引脚检测key2是否动作*/
        sbit key3 = P1^4;                        /*单片机1.4引脚检测key3是否动作*/
        sbit key4 = P1^5;                        /*单片机1.5引脚检测key4是否动作*/
          
        sbit kt1 = P3^7;                  /*单片机3.7引脚控制继电器kt1*/
        sbit kt2 = P3^6;                  /*单片机3.6引脚控制继电器kt2*/    输入口为0表示有信号输入;输入口为1表示无信号输入;输出口为0表示开启继电器,输出口为1表示关闭继电器;  我自己写了一些,然后又在deepseek上问了  写出来的都不对  麻烦各位大神看看怎么写
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:69038 发表于 2026-1-12 11:36 | 只看该作者
"我自己写了一些,然后又在deepseek上问了  写出来的都不对"...
DeepSeek也要训练的,不对就要提出来,让它完善啊。。。
回复

使用道具 举报

板凳
ID:230500 发表于 2026-1-12 11:45 | 只看该作者
key1主要实现按钮一键控制继电器kt1启停(不管key2和key3的状态),


KEY1  KEY2 KEY3 控制KT1   那KEY4 和KT2呢?   问题需求你都没描叙清楚
回复

使用道具 举报

地板
ID:1104510 发表于 2026-1-12 12:40 | 只看该作者
a399288395 发表于 2026-1-12 11:45
key1主要实现按钮一键控制继电器kt1启停(不管key2和key3的状态),

key4  kt2 暂时闲置
回复

使用道具 举报

5#
ID:1104510 发表于 2026-1-12 12:41 | 只看该作者
zhuls 发表于 2026-1-12 11:36
"我自己写了一些,然后又在deepseek上问了  写出来的都不对"...
DeepSeek也要训练的,不对就要提出来,让 ...

提了   改来改去都跟没改一样
回复

使用道具 举报

6#
ID:1104510 发表于 2026-1-12 12:45 | 只看该作者
a399288395 发表于 2026-1-12 11:45
key1主要实现按钮一键控制继电器kt1启停(不管key2和key3的状态),

在kt1是关闭状态时,不管key2和key3什么状态,只要按下key1,就打开kt1;在kt1是打开状态时,不管key2和key3什么状态,只要按下key1,就关闭kt1;在kt1处于打开状态时,key2或者key3任意一个输入点无信号,都关闭kt1;
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表