MCU学习之按键控制LED

2015-03-14 20:48:17来源: 互联网 关键字:MCU  LED
程序 :

/**

* 读IO, 用按钮控制点灯.

*/

#include

#include

// 10个LED

sbit P10 = P1^0;

sbit P11 = P1^1;

sbit P12 = P1^2;

sbit P13 = P1^3;

sbit P14 = P1^4;

sbit P15 = P1^5;

sbit P16 = P1^6;

sbit P17 = P1^7;

// 定义开关. 低电平有效.

sbit K1 = P3^2;

sbit K2 = P3^5;

void main( void )

{

while( 1 )

{

if( !K1 ) // K1按下, 点亮LED

{

P10 = 0;

}

if( !K2 ) // K2按下, 熄灭LED

{

P10 = 1;

}

}

}

总结 :

1. 对于MCU来说, 所有的端口永远都提供高电平(低电平有效), 如果你想让某个端口提供低电平, 必须手工设定(仅仅是猜测).

2. 上面的K1, K2在开发板上是以按钮形式出现, 按下就是提供低电平, 弹起就是提供高电平

对于第2点,可以通过程序来考证 :

while( 1 )

{

// 当K1被按下, 此时P3^2提供低电平, 弹起后P3^2依然是低电平.

if( !K1 )

{

P10 = 0;

P11 = 1;

}

else

{

P10 = 1;

P11 = 0;

}

}

仿真的时候, 很明白的看到是P11点亮, P10熄灭. 说明执行的是else, 也就是K1一直处于电平状态.

当按下K1之后, P10点亮 P11熄灭, 说明K1提供了低电平, 按钮按下起了作用. 然后松手弹起K1, 看看到P10熄灭P11点亮. 说明K1又恢复了高电平.

由此可见按钮是onPress时改变了管脚电平, onRelease的时候又恢复了.

作业 :

把程序改为: 按K1,P10灯亮,P11灯灭。按K2,P10灯灭,P11灯亮。

/**

* 读IO, 用按钮控制点灯.

*/

#include

#include

// 10个LED

sbit P10 = P1^0;

sbit P11 = P1^1;

sbit P12 = P1^2;

sbit P13 = P1^3;

sbit P14 = P1^4;

sbit P15 = P1^5;

sbit P16 = P1^6;

sbit P17 = P1^7;

// 定义开关

sbit K1 = P3^2;

sbit K2 = P3^5;

void main( void )

{

while( 1 )

{

if( !K1 ) // K1按下, 点亮LED

{

P10 = 0;

P11 = 1;

}

if( !K2 ) // K2按下, 熄灭LED

{

P10 = 1;

P11 = 0;

}

}

}

关键字:MCU  LED

编辑:探路者 引用地址:http://www.eeworld.com.cn/LED/2015/0314/article_11817.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:MSP430电容触摸转轮和LED PWM输出设计
下一篇:通过计算光电耦合器中LED寿命 预测产品可靠性

论坛活动 E手掌握
关注eeworld公众号
快捷获取更多信息
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
MCU
LED

小广播

热门关键词

独家专题更多

东芝在线展会——芯科技智社会创未来
东芝在线展会——芯科技智社会创未来
2017东芝PCIM在线展会
2017东芝PCIM在线展会
TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源

颜工专栏

LED专区

现任华润矽威科技(上海)有限公司市场部经理/高工,上海市传感技术学会理事、副秘书长。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved