📄 main.c.bak
字号:
#include <reg51.h>
void main( )
{
SP=0x70;
P1=0xff;
P2=0xff;
P3=0xff;
P0=0xff;
EA=0;
maii( );
}
void maii( )
{
unsigned char apc1,apc2;
rest( );
dstop( );
LED=1;
if(STOP=0)
{
mrest( );
}
do{}while(AN==1);
delay( );
if(AN==0)
{
powerup( );
switch(MORA)
{
case 1 : apc1=0x40;
apc2=0x04;
break;
case 0 : apc1=0x80;
apc2=0x04;
break;
default : break;
}
wr_apc(apc1,apc2);
waitrdy( );
while(1)
{
clrint( );
waitrdy( );
chk_mem( );
switch(PR)
{
case 1 : rec( );
break;
case 0 : play( );
break;
default : break;
}
}
}
}
void rec( )
{
bdata unsigned char resta;
unsigned char i;
delayms(50);
do
{
resta=SPOI(0x41);
resta=SPOI(0x00);
SS=1;
resta=chesr1( );
}while(resta^3==0);
LED=0;
for(i=0;i<200;i++)
{
while(AN==0)
{
checkfull( );
}
}
LED=1;
clrint( );
stopp( );
do
{
if(STOP==0) mrest( );
}while(AN==1);
clrint( );
stopp( );
}
void play( )
{
bdata unsigned char resr;
do{ }while(AN==0);
do
{
resr=SPOI(0x40);
resr=SPOI(0x00);
SS=1;
resr=chesr0( );
}while(resr^0==1);
LED=0;
do
{
if(STOP==0) mrest( );
resr=chesr1( );
}while(resr^0==0);
LED=1;
stopp( );
do
{
if(STOP==0) mrest( );
}while(AN==1);
fwd( );
}
void checkfull( )
{
bdata unsigned char i;
unsigned char j;
rdstatus( );
i=SPOI(05);
if(i^1==1)
{
while(1)
{
LED=1;
for(j=0;j<10;j++)
{
delayms(5);
if(AN==0) mrest( );
}
LED=0;
for(j=0;j<10;j++)
{
delayms(5);
if(AN==0) mrest( );
}
}
}
}
void mrest( )
{
unsigned char i,j;
for(i=0;i<60;i++)
{
if(STOP==1) break;
if(i==59)
{
gerase( );
for(j=0;j<3;j++)
{
LED=0;
delayms(40);
LED=1;
delayms(40);
}
}
}
stopp( );
clrint( );
maii( );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -