protues用51单片机的P1口控制八位发光二极管循环往复的从左到右逐个点亮,再从右往左依次点亮,用Proteus中的keil51编译软件
时间: 2024-01-24 18:17:40 浏览: 115
首先,在 Keil51 编译软件中编写相应的代码,实现 P1 口控制八位发光二极管循环往复的从左到右逐个点亮,再从右往左依次点亮。
下面是示例代码:
```c
#include<reg52.h> //包含头文件reg52.h
void delay() //定义延迟函数
{
int i,j;
for(i=0;i<100;i++)
for(j=0;j<1000;j++);
}
void main() //主函数
{
unsigned char i; //定义变量i为无符号字符型
while(1) //死循环
{
for(i=0x01;i<=0x80;i<<=1) //P1口从左到右逐个点亮
{
P1=i; //将i赋值给P1口
delay(); //调用延迟函数
}
for(i=0x80;i>=0x01;i>>=1) //P1口从右到左逐个点亮
{
P1=i; //将i赋值给P1口
delay(); //调用延迟函数
}
}
}
```
然后,在 Proteus 中添加 51 单片机和 8 个发光二极管。将 51 单片机的 P1 口连接到 8 个发光二极管的阳极,再将发光二极管的阴极连接到 GND。
最后,在 Proteus 中仿真运行即可看到八位发光二极管循环往复的从左到右逐个点亮,再从右往左依次点亮的效果。
阅读全文