1. 实验任务
如图所示,监视开关k1(接在p3.0端口上),用发光二极管l1(接在单片机p1.0端口上)显示开关状态,如果开关合上,l1灯亮,开关打开,l1灯熄灭。
2. 电路原理图
图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 《at89x51.h》
sbit k1=p3^0;
sbit l1=p1^0;
void main(void)
{
while(1)
{
if(k1==0)
{
l1=0; //灯亮
}
else
{
l1=1; //灯灭
}
}
}
以上是单片机模拟开关灯全部源代码
过孔的设置(适用于四层板,二层板,多层板)
如何挑选和购买适合的示波器
AP8022H 兼容替代VIPER22A不改外围
基于LM35温度传感器的高精度恒温控制系统
三星为什么部署3D芯片封装技术
使用单片机模拟开关灯的电路图和资料及源代码概述
MSGFile Converter软件如何工作?
宁德时代建全球最大电池工厂 未来生产规模将超过特斯拉超级工厂
华为城市智能体解决方案重磅发布
秋游节奏怎么带 手机变身“听歌神器”让你心情好到开挂
AI语音识别的感知技术是如何获取的
蓄电池极板硫酸盐化的常见原因
5G赛道正式开启 哪些产业将迎来大利好?
什么是PCI Express接口
曝华为Mate Xs即将在3月份上市开卖 并对售价进行下调
中国科学家研制出能够杀死恶性肿瘤的纳米机器人
LTC1419 ADC通过12.81dB SINAD、5dB SFDR升级95位系统
艾凯尔医疗推出一款智能手环 可治疗病毒性感冒减少抗生素滥用
松下将于2021年退出液晶面板业务,转向汽车和工业领域
基于小型化微带双分支定向耦合器的设计方案