|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
#include$ W. x' Y8 H8 J4 k7 D
#include * E, Y( f* |+ F6 F
void delay(void) $ `& Y* s$ R; n( w' f& l* l
{
+ s0 N3 ]( u) L: x! r( [ unsigned int i,j,k; % H: I- d: I9 Z; R* g
for(i=20;i>0;i--) . }3 D& b" L9 _
for(j=20;j>0;j--)0 P5 C8 W2 ^8 M3 x: |! O
for(k=248;k>0;k--);
- I& s6 W* ?5 f' P }
* ~/ T" p a h+ R void main() 8 [1 G3 G( s. @ R4 B R2 N, ?% A; |
{# j v0 n ]+ X6 ]
int temp;
t5 X# M) h" L4 u+ L temp=0x01;% O' p0 ^* @: Q; H) P* ?
while(1)6 |) }8 \0 k+ w7 G
$ z( g1 R" v+ Q8 p1 V4 e2 [ {
) ]) h; C* t9 p4 }5 Q2 M7 ~5 ?
1 U8 o. `* D: P* C: Q+ r8 T P1=~temp;
( l! T5 [1 w7 R9 M4 D. m delay();
4 w! D2 }: }$ o( A& P+ e P1=0xff;
6 q7 L( f7 H* r4 W temp=temp<<1;: s Q* Y* v# {8 P1 F2 K0 ?
if (temp==0x00)
8 [9 |0 e. F( g/ b. d temp=0x01;
( a' X. L4 T% f+ Z M4 I; { }
0 Y! \) r. Y6 F5 @9 i; {- `
' K" e9 ^1 K. ]9 L }. {2 o' {/ h$ y8 p
想要用单片机左位移指令实现流水灯,程序正确,调试也显示正确,在单片机上运行了一遍也是可以实现,问题在于,当第八个LED熄灭后,要等很长时间后第一个LED才会重新亮起,实在看不出哪里有问题,有大神来看下吗
& h+ P# t/ H* S. P9 m |
|