138模块实现数码管扫描
时间:10-02
整理:3721RD
点击:
[hide=d1e+48]#include <STC89.H>
#define uchar unsigned char
uchar code tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};
sbit _138_A=P2^0;
sbit _138_B=P2^1;
sbit _138_C=P2^2;
void delay(uchar ms)
{
while(--ms);
}
void dis(uchar i)
{
// switch(i)
// {
// case 0: _138_C=0;_138_B=0;_138_A=0;
// break;
// case 1:_138_C=0;_138_B=0;_138_A=1;
// break;
// case 2:_138_C=0;_138_B=1;_138_A=0;
// break;
// case 3:_138_C=0;_138_B=1;_138_A=1;
// break;
// case 4:_138_C=1;_138_B=0;_138_A=0;
// break;
// case 5:_138_C=1;_138_B=0;_138_A=1;
// break;
// case 6:_138_C=1;_138_B=1;_138_A=0;
// break;
// case 7:_138_C=1;_138_B=1;_138_A=1;
// break;
// } /正方向/
switch(i)
{
case 0: _138_C=1;_138_B=1;_138_A=1;
break;
case 1:_138_C=1;_138_B=1;_138_A=0;
break;
case 2:_138_C=1;_138_B=0;_138_A=1;
break;
case 3:_138_C=1;_138_B=0;_138_A=0;
break;
case 4:_138_C=0;_138_B=1;_138_A=1;
break;
case 5:_138_C=0;_138_B=1;_138_A=0;
break;
case 6:_138_C=0;_138_B=0;_138_A=1;
break;
case 7:_138_C=0;_138_B=0;_138_A=0;
break;
}
P0=tab;
delay(100);
P0=0x00;
}
void main()
{
while(1)
{
uchar i,j;
for(i=0;i<8;i++)
{
for(j=0;j<160;j++)
{
delay(60000);
dis(i);
}
}
}
}
[/hide]
#define uchar unsigned char
uchar code tab[]={0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};
sbit _138_A=P2^0;
sbit _138_B=P2^1;
sbit _138_C=P2^2;
void delay(uchar ms)
{
while(--ms);
}
void dis(uchar i)
{
// switch(i)
// {
// case 0: _138_C=0;_138_B=0;_138_A=0;
// break;
// case 1:_138_C=0;_138_B=0;_138_A=1;
// break;
// case 2:_138_C=0;_138_B=1;_138_A=0;
// break;
// case 3:_138_C=0;_138_B=1;_138_A=1;
// break;
// case 4:_138_C=1;_138_B=0;_138_A=0;
// break;
// case 5:_138_C=1;_138_B=0;_138_A=1;
// break;
// case 6:_138_C=1;_138_B=1;_138_A=0;
// break;
// case 7:_138_C=1;_138_B=1;_138_A=1;
// break;
// } /正方向/
switch(i)
{
case 0: _138_C=1;_138_B=1;_138_A=1;
break;
case 1:_138_C=1;_138_B=1;_138_A=0;
break;
case 2:_138_C=1;_138_B=0;_138_A=1;
break;
case 3:_138_C=1;_138_B=0;_138_A=0;
break;
case 4:_138_C=0;_138_B=1;_138_A=1;
break;
case 5:_138_C=0;_138_B=1;_138_A=0;
break;
case 6:_138_C=0;_138_B=0;_138_A=1;
break;
case 7:_138_C=0;_138_B=0;_138_A=0;
break;
}
P0=tab;
delay(100);
P0=0x00;
}
void main()
{
while(1)
{
uchar i,j;
for(i=0;i<8;i++)
{
for(j=0;j<160;j++)
{
delay(60000);
dis(i);
}
}
}
}
[/hide]
