用C语言实现流水灯控制的方式有好几种。
方法1:IO口移位法,用C语言编写的单片机程序可以让八个LED轮流点亮,每个灯点亮和熄灭时间均为1秒。首先赋值P2=0x01;然后进入主循环
P2口是8个引脚,P2.0到P2.7;每8秒一个循环,
第1秒我们给P2引脚赋值00000001,写成16进制就是0x01;。
第2秒左移一位我们给P2引脚赋值00000010,写成16进制就是0x02;。
第3秒左移一位我们给P2引脚赋值00000100,写成16进制就是0x04;。
第4秒左移一位我们给P2引脚赋值00001000,写成16进制就是0x08;。
第5秒左移一位我们给P2引脚赋值00010000,写成16进制就是0x10;。
第6秒左移一位我们给P2引脚赋值00100000,写成16进制就是0x20;。
第7秒左移一位我们给P2引脚赋值01000000,写成16进制就是0x40;。
第8秒左移一位我们给P2引脚赋值10000000,写成16进制就是0x80;。
方法2:查表赋值法,首先定义一个数组。
data[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};