本实验运用keil uvision4软件以及isis7 Professional仿真软件完成的。需事先安装好这两个软件,如果不会,可以评论下方询问,欢迎大家打扰!下面开始我们的实验:
我们先用isis7 绘制出如图所示的电路图:
由于我对中间单片机芯片有些许移动,因此,线有点乱,望理解!(此处运用INT0)
接下来,我们开始在keil软件中编程输入以下代码:
#include<reg51.h>
sbit K=P3^3;
/*void delays()
{
unsigned i,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
} */
void main(void)
{
EA=1;
EX0=1;
IT0=1;
P1=0xff;
while(1);
}
void int1(void) interrupt 1
{
P1=~P1;
}
随后查错!点击
观察下方,当提示没有错误时,我们右键Target 1如图:
随后,点击第一个选择output,勾选☑️Create HEX File ,随后点击ok!
最后点击build或rebuild,生成相应的.hex文件且显示无错误!如图:
最后我们回到isis7,双击单片机,选择.hex文件,导入.hex文件即可!
点击ok,按下运行键!开关在这里!!!!
手势键哦!
按下后8个灯的状态会发生明显变化哦!就是这么神奇!
从图片中可以看到,开关闭合灯亮,抓拍的,拍了好几张才成功!希望大家支持!!!
大家也可以将控制端由INT0改为INT1口!电路图只需小小的改动,将原来接INT0转换接到INT1。
代码改为:
#include<reg51.h>
sbit K=P3^3;
/*void delays()
{
unsigned i,j,k;
for(i=20;i>0;i--)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
} */
void main(void)
{
EA=1;
EX1=1;
IT1=1;
P1=0xff;
while(1);
}
void int1(void) interrupt 2
{
P1=~P1;
}
即可!
小小萌新希望大家大力支持一下,谢谢谢谢🙏!!!