加入收藏夹
域名:www.kincony.com    www.hificat.com       English Version || 公司简介|| 汇款须知 || 汇款确认及留言 || 论坛 || 淘宝网店


轻松学习PIC之按键篇 PIC单片机学习系列教程

    按键是单片机系统中常用的信息输入部件,同时也是人机对话中不可缺少的输入设备,其外形如图10-8所示。在和单片机构成系统的时候,按键通常有两种接法,一种叫做独立式按键,另外一种叫做行列式或者是扫描式按键,我们在基础实例中只学习独立式的按键电路。
按键
图10-8 按钮实物图

实例功能
在这个实验里,我们RB0来控制LED的亮和灭。
PIC开发板
pic开发板
图10-9 按键实验演示图

器件和原理

    首先我们来了解一下按键的结构。一般的按键从实物来看,是个四端口器件,但是其实它是个二端口器件,参照图10-8中的按钮实物就不难明白,在按下塑料柱子之前,两个触点之间是不导通的,按下的时候就导通,通过外部电路的不同接法,就可以使其中一个端口在按下和不按下的时候产生电平变化,而单片机正是通过检测到这种变化来完成对按键输入信息的获得。那么我们不妨来看看原理图所示的按键的状态变化。我们知道单片机在按键按下之前,端口RB0保持在高电平状态,当按键按下时,RB0通过按键接到VSS,这个时候就是低电平。所以,我们要想在程序里检测到是否有按键按下,关键就是检查对应端口的状态变化,这个就是单片机系统中的按键编程的原理。所以针对我们的程序设计目的,我们的方法就是不断的检测RB0,然后根据检测结果控制LED。
硬件电路
根据实例要求,我们可以设计出如下图10-10的硬件原理图。
pic开发
图10-10 硬件原理图

程序设计
#include<pic.h>

void main(void)
{
TRISB=0xFF; //input
TRISC=0x00; //output
PORTC=0x00; //off led
while(1)
{
if((PORTB&0x01)==0x00) //RB0
{
PORTC=0x01;
}
else
{
PORTC=0x00;
}
}
}

电子制作杂志

电子制作杂志

--->>>返回首页


以上部分内容转载于网上,如有涉及到版权问题,请即通知本人删除 ICP备05019516号
联系地址:浙江省杭州市登云路428号 浙江时代电子市场4楼851室 邮政编码:310011 Email:hificat@163.com
电话总机:0571-88009850 产品咨询:转分机1 技术支持:转分机2 传真:转分机3 手机:13185018567
杭州晶控电子有限公司 版权所有 COPYRIGHT2003——2010 HANGZHOU KinCony ELECTRONICS CO.,LTD All rights reserved