单片机按键控制led灯的仿真原理图(proteus工程文件可到本帖附件下载):
单片机源程序:
- //---------------------------------------------------------------------------------------------------------------
- // 程序名: AJ5-3.c
- // 程序功能:P2端口按键输入,控制P1端口LED
- //---------------------------------------------------------------------------------------------------------------
- #include<reg51.h> // 头文件
- sbit K1=P2^4; // 定义按键K1
- sbit K2=P2^5; // 定义按键K2
- sbit K3=P2^6; // 定义按键K3
- sbit K4=P2^7; // 定义按键K4
- main() // 主函数
- {
- unsigned int i; // 声明无符号整型变量i
- P1=0xff; // P1初始值
- P2=0xff; // P2初始值
- while(1) // 无限循环
- {
- if(K1==0) // 如果按下K1键
- {
- P1=0xe7; // P1输出0xe7,2个LED亮
- for(i=0;i<50000;i++); // 延时一段时间
- P1=0xff; // P1输出0xff , LED熄灭
- }
- if(K2==0) // 如果按下K2键
- {
- P1=0xc3; // P1输出0xc3,4个LED亮
- for(i=0;i<50000;i++); // 延时一段时间
- P1=0xff; // P1输出0xff ,LED熄灭
- }
- if(K3==0) // 如果按下K3键
- {
- P1=0x81; // P1输出0x81,6个LED亮
- for(i=0;i<50000;i++); // 延时一段时间
- P1=0xff; // P1输出0xff ,LED熄灭
- }
- if(K4==0) // 如果按下K4键
- {
- P1=0x00; // P1输出0x00,8个LED亮
- for(i=0;i<50000;i++); // 延时一段时间
- P1=0xff; // P1输出0xff ,LED熄灭
- }
- }
- }
- //-----------------------------------------------------------------------------------------------------------------
复制代码
该系列源码包含有很多非常经典,代码风格十分规范,而且注释详细的单片机例程,还带仿真,对于MCU学习特别是初学者是很有帮助的,全部源码下载(共25个项目):http://www.51hei.com/bbs/dpj-79328-1.html
本例程下载(含proteus仿真工程文件与源码):
5-3单片机按键控制LED灯实.rar
(38.94 KB, 下载次数: 50)
|