按键控制组合灯3

2026/4/26 0:30:23

按键控制组合灯

一、任务

在单片机学习开发板硬件平台上,编写完整程序实现如下功能,4个按键分别控制2个灯,4个按键从左至右分别称为S1-S4,单片机引脚1、2所接灯分别为LED1、LED2,按下S1控制LED1亮灭变化(当前灭则点亮,当前亮则变灭),S2控制LED2亮灭变化,S3开所有灯,S4关闭所有灯。

二、要求

1、根据提供的开放板硬件,分析系统功能,并画出系统主程序流程图;

2、编写程序,程序代码要符合编程规范(函数/子程序名称、功能、入口参数、出口参数、注释等),易读性要好; 3、编译调试、下载程序; 4、调试系统达到功能指标; 5、编写设计报告。

三、功能分析

根据任务要求,需要设计按键扫描函数,主函数根据按键

情况,分别控制灯进行相应动作。

四、流程图

图1 主函数流程图

五、源程序清单

#include

#define S1 0x0e //宏定义按键 #define S2 0x0d #define S3 0x0b #define S4 0x07

sbit P10=P1^0; sbit P11=P1^1;

void Delay(unsigned char t) //延时函数 {

unsigned char j,k; for(k=0;k

for(j=0;j<114;j++); }

unsigned char Scankey() //按键扫描函数 {

unsigned char key;

if((P3&0x0f)==0x0f) return(0xff);

Delay(8);

if((P3&0x0f)==0x0f) return(0xff); key=P3&0x0f;

while((P3&0x0f)!=0x0f); return(key); }

void main() {

unsigned char c; while(1){ c=Scankey(); switch(c) {

case S1:P10=!P10;

break;

case S2:P11=!P11;

break;

case S3: P1=0xfc; break;

case S4: P1=0xff; break; } } }


按键控制组合灯3.doc 将本文的Word文档下载到电脑
搜索更多关于: 按键控制组合灯3 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219