找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

[汽车电路] 模拟开关灯

[复制链接]
admin 发表于 2013-3-14 19:45:08 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
1.实验任务
  
如图4.2.1所示,监视开关K1(接在P3.0端口上),用发光二极管L1(接在单片机P1.0端口上)显示开关状态,如果开关合上,L1亮,开关打开,L1熄灭。
2.电路原理图
030243anxa4g44r4mr44ha.jpg
         图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.程序框图
030247xz6vzucmfc2xeuue.gif
                      图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;             //灯灭
          }
    }
}
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-28 21:43 , Processed in 0.058683 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表