|
实验内容
1.P1 口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮
2.P1.0,P1.1作输入口接两个拨动开关,P1.2,P1.3作输出口,接两个发光二极管,编写程序读取开关状态,将此状态,在发光二极管上显示出来。编程时应注意P1.0,P1.1作为输入口时应先置1,才能正确读入值。
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:
- //实验1
- #include <reg51.h>
- #define LED P1
- void delay(int); //声明延迟函数
- //主程序
- main()
- {
- unsigned char i;
- //让LED最右端的灯亮
- while(1)
- {
- LED = 0xfe;
- for(i=0;i<8;i++)
- {
- delay(100);
- LED=(LED<<1)|0x01; //让左边一个LED灯亮
- }
- }
- }
- //延迟函数
- void delay(int x)
- {
- int i,j;
- for(i=0;i<x;i++)
- for(j=0;j<600;j++);
- }
复制代码- //实验2
- #include<reg51.h>
- #define uchar unsigned char
- #define unit unsigned int
- sbit k1=P1^0;
- sbit k2=P1^1;
- sbit led1=P1^2;
- sbit led2=P1^3;
- void main()
- {
- while(1)
- {
- k1=1;
- k2=1;
- if(k1==0)
- led1=0;
- else led1=1;
- if(k2==0)
- led2=0;
- else led2=1;
- }
- }
复制代码
全部资料51hei下载地址:
实验一 IO口输入输出实验.zip
(397.89 KB, 下载次数: 14)
|
评分
-
查看全部评分
|