|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
具体实验内容步骤:
1. 实验任务
2. 电路原理图
3. 系统板上硬件连线
4. 程序设计内容
5.程序框图
6.汇编源程序
7.C语言源程序
电路说明
如:模拟开关灯这个简单程序
1.实验任务
如图4.2.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.汇编源程序ORG00H
START:JBP3.0,LIG
CLRP1.0
SJMPSTART
LIG:SETBP1.0
SJMPSTART
END
7.C语言源程序
#include
sbitK1=P3^0;
sbitL1=P1^0;
voidmain(void)
{
while(1)
{
if(K1==0)
{
L1=0;//灯亮
}
else
{
L1=1;//灯灭
}
}
}
<ignore_js_op>
2009-12-18 17:04:42 上传
<strong>下载附件</strong> (10.16 KB)
</ignore_js_op>
<ignore_js_op>
1.rar
<em class="xg1">(1.32 MB, 下载次数: 396)
</em>
2009-12-18 17:05:50 上传
下载次数: 396
下载积分: 积分 -1
</ignore_js_op> |
|