单片机c语言编了个流水灯,用按键怎么实现它暂停。

[复制链接]
查看11 | 回复4 | 2020-12-21 16:37:45 | 显示全部楼层 |阅读模式
实现流水灯的方式有很多种(中断,定时器,延时等等),看用哪种方式,最简单的是延时做流水灯,那么在死循环里面增加按键检测,判断出有按键按下来时,再进入死循环,程序不往下走就可以暂停,再按跌出死循环。#include //51系列单片机定义文件#define uchar unsigned char //定义无符号字符#define uint unsigned int //定义无符号整数void delay(uint); //声明延时函数void main(void){uint i;uchar temp;...
回复

使用道具 举报

千问 | 2020-12-21 16:37:45 | 显示全部楼层
//流水灯 4 个按键 4种 亮法,自己修改 成自己要的 亮法,供参考#include //51头文件#define DY_PORTP1 //设置LED连接的I/O组#define DY_SPEED100 //设置每一个明亮级的停留时间(值域:0~65535)sbit k1=P3^0;sbit k2=P3...
回复

使用道具 举报

千问 | 2020-12-21 16:37:45 | 显示全部楼层
利用外部中断可以,在中断函数里面写入你要执行的让流水灯停止的程序,设置一个全局变量FLAG=0;每次进入中断就取反,通过判断FLAG的值来决定是暂停还是继续...
回复

使用道具 举报

千问 | 2020-12-21 16:37:45 | 显示全部楼层
可以用定时器设置流水灯的时间间隔,按键控制定时器开关...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行