#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit cs=P0^0;
sbit sclk=P0^3;
sbit mosi=P0^1;
sbit miso=P0^2;
sbit rac=P0^4;
sbit inter=P0^5;
void delay(uint i)
{
while(i--);
}
void stopmode()
{
uchar m,i,j;
cs=1;
sclk=0;
cs=0;
m=0x30;
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
mosi=CY;
sclk=0;
sclk=1;
}
cs=1;
}
void powerdown()
{
uchar m,i,j;
cs=1;
sclk=0;
cs=0;
m=0x10;
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
mosi=CY;
sclk=0;
sclk=1;
}
cs=1;
}
void powerup()
{
uchar m,i,j;
cs=1;
sclk=0;
cs=0;
m=0x20;
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
mosi=CY;
sclk=0;
sclk=1;
}
cs=1;
}
void record(uint address)
{
uchar m,i,j;
uint datasoute=0;
powerup();
delay(5118);
powerup();
delay(5118);
delay(5118);
cs=1;
sclk=0;
m=0xa0;
cs=0;
for(i=0;i<16;i++)
{
address=_iror_(address,1);
datasoute=address<<1;
mosi=CY;
sclk=0;
sclk=1;
}
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
mosi=CY;
sclk=0;
sclk=1;
}
cs=1;
sclk=0;
m=0xb0;
cs=0;
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
mosi=CY;
sclk=0;
sclk=1;
}
cs=1;
P0=0xff;
datasoute=0;
while(inter==1)
{
if(rac)
{
delay(20000);
datasoute++;
}
}
}
void audioout(uint address)
{
uchar m,i,j;
uint datasoute;
powerup();
cs=1;
sclk=0;
cs=0;
m=0xe0;
for(i=0;i<16;i++)
{
address=_iror_(address,1);
datasoute=address<<1;
sclk=0;
mosi=CY;
sclk=1;
}
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
sclk=0;
mosi=CY;
sclk=1;
}
cs=1;
sclk=0;
m=0xf0;
cs=0;
for(i=0;i<8;i++)
{
m=_cror_(m,1);
j=m<<1;
sclk=0;
mosi=CY;
sclk=1;
}
cs=1;
P0=0xff;
while(inter==1)
{}
}
void main()
{
record(0);
audioout(0);
while(1);
}
阅读(622) | 评论(0) | 转发(0) |