/*****************************************************
*** 功能:8位流水灯
*** 实验内容:本实验是用二进制写的程序
*****************************************************/
#include //包含单片机内部资源预定义
__CONFIG(0xFF32);
//芯片配置字,看门狗关,上电延时开,掉电检测关,低压编程关,加密,4M晶体HS振荡
void delay(); //delay函数申明
/****************************************************************************
* 名 称:main()
* 功 能:主函数
* 入口参数:
* 出口参数:
****************************************************************************/
void main()
{
TRISD = 0; //portd 输出
TRISC = 0xf0; //porta 输出
PORTC = 0x00; //74HC138控制端口
while (1) //死循环,让数码管持续点亮
{
PORTD=0b00000001; //点亮第1个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b00000010; //点亮第2个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b00000100; //点亮第3个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b00001000; //点亮第4个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b00010000; //点亮第5个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b00100000; //点亮第6个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b01000000; //点亮第7个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
PORTD=0b10000000; //点亮第8个发光管
delay();
PORTD=0b00000000; //关掉发光管 也可以写成16位的 自己试一试吧
delay();
}
}
/****************************************************************************
* 名 称:delay()
* 功 能:延时
* 入口参数:
* 出口参数:
****************************************************************************/
void delay()
{
int i; //定义整形变量
for (i = 10000;i--;); //延时
}