访问电脑版页面

导航:老古开发网手机版51单片机51单片机IO口

51单片机的模拟开关设计

导读:
关键字:
51单片机,模拟开关,

1.实验任务

如图4.2.1所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。

2.电路原理图

51单片机的模拟开关设计

图4.2.1

3.系统板上硬件连线

(1). 把“单片机系统”区域中的P1.0端口用导线连接到“八路发光二极管指示模块”区域中的L1端口上;

(2). 把“单片机系统”区域中的P3.0端口用导线连接到“四路拨动开关”区域中的K1端口上;

4.程序设计内容

(1).开关状态的检测过程

单片机对开关状态的检测相对于单片机来说,是从单片机的P3.0端口输入信号,而输入的信号只有高电平和低电平两种,当拨开开关K1拨上去,即输入高电平,相当开关断开,当拨动开关K1拨下去,即输入低电平,相当开关闭合。单片机可以采用JB BIT,REL或者是JNB BIT,REL指令来完成对开关状态的检测即可。

(2).输出控制

如图3所示,当P1.0端口输出高电平,即P1.0=1时,根据发光二极管的单向导电性可知,这时发光二极管L1熄灭;当P1.0端口输出低电平,即P1.0=0时,发光二极管L1亮;我们可以使用SETB P1.0指令使P1.0端口输出高电平,使用CLR P1.0指令使P1.0端口输出低电平。5.程序框图

图4.2.2

6.汇编源程序

ORG 00H

START: JB P3.0,LIG

CLR P1.0

SJMP START

LIG: SETB P1.0

SJMP START

END

7.C语言源程序

#include

sbit K1=P3^0;

sbit L1=P1^0;

void main(void)

{

while(1)

{

if(K1==0)

{

L1=0; //灯亮

}

else

{

L1=1; //灯灭

}

}

}

来源:工程师周亮   作者:lhl545545  2019/5/14 15:28:00
栏目: [ 51单片机IO口]

相关阅读

MCS-51单片机P0口扩展技术研究

MCS-51单片机并行P3口的功能及特性

51单片机多功能端口P3口的用法解析

8051单片机P3口的两个功能解析

AT89S51单片机与82C55接口芯片的设计

51单片机对电磁式蜂鸣器的驱动

一种C51单片机并行口扩展设计及应用

TI54xxDSP与51单片机的接口技术

为什么89C51单片机的P0-P3口进行输入时要设置为1

MCS-51单片机四个双向8位IO口的工作原理解析

51单片机的模拟开关设计

51单片机P0口的特性及使用方法解析

MCS-51单片机并行P2口的功能及使用方法

如何为51单片机的P0口选择合适的上拉电阻

MCS-51单片机的8位I/O端口是如何进行存取的?

MCS-51单片机并行P1口的应用

51单片机P0口上拉电阻的取值问题分析

基于MCS-51单片机的I/O口结构组成及功能解析

关于51单片机的P0口上拉电阻取值问题

浅析51单片机P0口上拉电阻的选择应用