标题:
STC15F104W单片机四路按键循环开关程序
[打印本页]
作者:
6313
时间:
2020-12-16 14:00
标题:
STC15F104W单片机四路按键循环开关程序
用一个按键控制四个继电器循环导通,程序由51单片机的程序改到STC15F104W上,第一次按键,第一个继电器吸合,第二次按键,第二个继电器吸合,第一个继电器释放,以此类推。最初的想法就是实现电风扇,三档开关,程序里面可以修改端口。
#include<reg52.h>
sbit key = P3^4; //定义按键
void delayms(void); //延时
void led_refresh(unsigned char i); //led显示
unsigned char keyscan(void); //按键
void init(void); //初始化
void main(void)
{
unsigned char m;
init();
while(1)
{
m = keyscan();
led_refresh(m);
}
}
void delayms(void) //延时函数
{
unsigned int i;
i = 10000;
while(i--);
}
void led_refresh(unsigned char j) //led显示
{
switch(j)
{
case 0 : P3=0xFF; break; // 全部熄灭
case 1 : P3=0xFE; break; // led1 点亮
case 2 : P3=0XFD; break; // led2 点亮
case 3 : P3=0XFB; break; // led3
case 4 : P3=0XF7; break;
}
}
unsigned char keyscan(void) //按键扫描
{
static unsigned char count = 0;
unsigned char z = 0;
static bit keyflag = 1;
static bit backup = 1;
keyflag = key;
if(keyflag != backup )
{
delayms();
if(keyflag == key)
{
if(backup == 0)
{
count++;
if(count >= 5)
{
count = 0;
} }
}
}
完整程序请下载文件
作者:
51hei团团
时间:
2020-12-16 14:06
楼主您好 ,程序不完整啊
作者:
6313
时间:
2020-12-16 14:19
想上传文件,手机怎么上传不了
作者:
51hei团团
时间:
2020-12-16 14:21
6313 发表于 2020-12-16 14:19
想上传文件,手机怎么上传不了
手机点击底部的电脑版可以传文件,好像手机版只能发图片
作者:
6313
时间:
2020-12-16 17:45
STC15F104W四路按键循环开关.zip
(750 Bytes, 下载次数: 139)
2020-12-16 17:44 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
6313
时间:
2020-12-16 17:55
程序由51单片机修改而来的,只要修改一下输出端口,51和STC15F104都可以用
作者:
6313
时间:
2020-12-16 17:56
51hei团团 发表于 2020-12-16 14:06
楼主您好 ,程序不完整啊
附件已上传
作者:
jialishoushi
时间:
2021-1-4 05:05
非常感谢 有空也照着做一个
作者:
w234
时间:
2021-4-21 16:55
非常好 反向很好 刚好需要一个这种好的程序 谢谢贴主
作者:
6313
时间:
2021-7-12 21:37
这只是模拟电风扇的循环开关,谁可以在这基础上再加一个定时程序,就是电风扇的定时程序,一个按键控制,按一次加30分钟,或者是一个小时,一个按键循环使用
作者:
zzya1985
时间:
2023-9-28 11:19
感谢楼主分享,正在用业余时间学习51单片机
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1