一、实验内容:流水点亮P2端口外8个LED灯,编程使其以500ms的频率亮灭。
用Proteus画出89C52控制P2端口外8个LED灯的原理图,并下载程序仿真。
二、功能要求及参考程序
#include<reg52.h>//编写c51程序所需要的头文件
#include<intrins.h>//包含循环左移函数_crol_的头文件
#define uint unsigned int//宏定义用uint代替unsigned int
#define led P2//宏定义用led代替P2,方便以后修改
/延时子程序*****/
void delay(uint t)
{
uint i,j;
for(i=0;i<t;i++)
for(j=0;j<114;j++);
}
/主函数*/
void main()
{
led=0xfe;//P2口是共阳接法,低电平点亮。所以这里点亮第一栈led
while(1)
{
delay(500);//延时100ms
led=crol(led,1);//循环左移点亮流水灯
}
}
三、I/O端口分配列表
四、protues原件列表
五、protues仿真原理图