【小作业】基于AT89C51的按键控制流水灯作业

这篇具有很好参考价值的文章主要介绍了【小作业】基于AT89C51的按键控制流水灯作业。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

题目

单片机与4个独立按键k1~k4及8个LED指示灯的一个独立式键盘。4个按键接在P1.0~P1.3引脚,P3口接8个LED指示灯,控制LED指示灯亮与灭。

按下k1键,P3口8个LED正向(由上至下,间隔1盏灯)流水点亮;

按下k2键,P3口8个LED反向(由下而上,间隔1盏灯)流水点亮;

按下k3键,P3口8个LED(先由上至下,再由下而上,间隔1盏灯)流水点亮;

按下k4键,高、低4个LED交替点亮。

 

protues仿真图:

at89c51流水灯,单片机

 keil c51 程序代码:

#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
sbit key1=P1^0;
sbit key2=P1^1;
sbit key3=P1^2;
sbit key4=P1^4;
void delay(uint i)
{
		uint j;
	while(i--)
	for(j=0;j<100;j++);
}

void key_1()
{
	uint i;
	uchar temp;
	temp=0xfe;
	for(i=0;i<4;i++)
	{
		P3=temp;
		temp=_crol_(temp,2);
		delay(300);
	}
	P3=0xff;
}
void key_2()
{
	uint i;
	uchar temp;
	temp=0x7f;
	for(i=0;i<4;i++)
	{
		P3=temp;
		temp=_cror_(temp,2);
		delay(300);
	}
	P3=0xff;
}
void key_3()
{
		uint i;
		uchar temp;
		temp=0xfe;
	for(i=0;i<4;i++)
	{
		P3=temp;
		temp=_crol_(temp,2);
		delay(300);
	}
	temp=0x7f;
	for(i=0;i<4;i++)
	{
		P3=temp;
		temp=_cror_(temp,2);
		delay(300);
	}
	P3=0xff;
}
void key_4()
{
	uint i;
	for(i=0;i<5;i++)
	{
		P3=0x0f;
		delay(300);
		P3=0xf0;
		delay(300);
		P3=0xff;
	}
}
void main()
{
	P1=0x0f;
	if((0x0f&P1)!=0x0f)
	{   delay(30);
			if((0x0f&P1)!=0x0f)
		 {
					switch(P1)
				{
				case 0x0e:{key_1();break;}
				case 0x0d:{key_2();break;}
				case 0x0b:{key_3();break;}
				case 0x07:{key_4();break;}
				}
		 }
  }
}

本文章所有内容只是目的性的完成作业内容。仿真如有问题可评论回复。

 文章来源地址https://www.toymoban.com/news/detail-739073.html

 

 

 

 

到了这里,关于【小作业】基于AT89C51的按键控制流水灯作业的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于AT89C51单片机的温度检测报警设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87777752?spm=1001.2014.3001.5503 源码获取 主要内容: 基于51单片机设计一个温度检测报警器,至少具有以下功能:温度的检测和超过设定值时的报警功能 基本要求: 1、功能齐全,要配有功能说明;

    2024年02月03日
    浏览(57)
  • 基于AT89C51单片机的交通灯设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87779238?spm=1001.2014.3001.5503 源码获取 主要内容: 在日常生活中,交通灯是一项必不可少的公共设施,可 以维护道路的畅通和交通的秩序。如若交通灯发生故障,那 么后果可想而知。因此,交通灯

    2024年02月08日
    浏览(55)
  • 基于AT89C51单片机的温度计设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87773445 源码获取 主要内容: 设计一个简易温度计;要求电路实现如下功能: 设计通过单片机和数码管、led灯等组成,可以显示温度,并且可以显示大于零度的温度和小于零度的温度,还可以超出

    2024年02月05日
    浏览(55)
  • 基于AT89C51单片机的电子万年历系统

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87708258 源码获取 主要内容: 电子万年历系统以实时时钟芯片DS1302和AT89C52单片机为主要研究对象,着重进行51单片机控制系统的设计研究和如何读取DS1302内部时钟信息的研究。以及运用18B20进行实

    2024年02月09日
    浏览(48)
  • 基于AT89C51单片机的简易计算机设计

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87715642?spm=1001.2014.3001.5503 源码获取 主要内容: 本设计是以单片机AT89C51为核心的简易计算器设计,要通过芯片AT89C51实现计算器程序运行来完成加、减、乘和除的简单计算功能。 基本要求: 1、采

    2024年02月08日
    浏览(51)
  • 基于AT89C51单片机的电子时钟设计与仿真

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87779867?spm=1001.2014.3001.5503 源码获取 主要内容: 使用DS1302芯片作为计时设备,用6个7段LED数码管或者LCD162作为显示设备,实现时钟功能; 基本要求: (1)可以分别设定小时、分钟和秒,复位后时

    2024年02月06日
    浏览(50)
  • 基于AT89C51单片机的电子秒表设计与仿真

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87775018添加链接描述 源码获取 主要内容: 设计一个电子秒表,至少具有以下功能:开始/暂停、记录、复位等。设计方案主要分为实验的系统分析,具体的设计方案,以及最终的测试,最终完成实

    2024年02月16日
    浏览(52)
  • 基于AT89C51单片机的倒数计时器设计

    1.设计任务 利用AT89C51单片机为核心控制元件,设计一个简易的数字电压表,设计的系统实用性强、操作简单,实现了智能化、数字化。 本设计采用单片机为主控芯片,结合 周边 电路组成 LED 彩灯的 闪烁 控制系统器,用来控制 红色 的LED 闪烁 发光,实现 LED灯在倒计时结束后

    2024年02月03日
    浏览(59)
  • 基于AT89C51单片机的交通灯设计与仿真

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87763760?spm=1001.2014.3001.5503 源码获取 主要内容: 设计一个能够控制十二盏交通信号灯的模拟系统,:利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并用LED灯显示倒计时间。 基本要

    2024年02月08日
    浏览(49)
  • 基于AT89C51单片机的计算器设计与仿真

    点击链接获取Keil源码与Project Backups仿真图: https://download.csdn.net/download/qq_64505944/87759134?spm=1001.2014.3001.5503 源码获取 主要内容: 本次设计所提出的一种基于单片机技术的简易计算器的方案,能更好的解决计算机计算的问题,随着数字生活的到来,单片机在生活中越来越重要,它

    2024年02月03日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包