📄 l.c
字号:
#include<c8051f020.h>
void setoff();
void senddata(unsigned char,unsigned char);
void delay(long int);
void run(unsigned char,unsigned char,unsigned char,unsigned char);
unsigned char changeh(unsigned char);
unsigned char changel(unsigned char);
main()
{
unsigned char e;
WDTCN=0xde;
WDTCN=0xad;
OSCXCN=0x67;
delay(10000);
delay(10000);
e=!OSCXCN&0x80;
while(e);
OSCICN|=0x08;
XBR2=0x40;
P1MDOUT=0xFF;
P1MDOUT=0xFF;
TMOD=0x01;
DAC0CN=0x00;
REF0CN=0x03;
setoff();
while(1)
{
P2=0x01;
run(1,7,0,6);
P2=0x00;
senddata(1,0);
senddata(2,0x80);
P2=0x02;
run(1,7,0,6);
P2=0x00;
senddata(1,0);
senddata(2,0x80);
}
}
void dac0(unsigned char m,unsigned char n)
{
DAC0H=m;
DAC0L=n;
DAC0CN|=0x80;
delay(1000);
}
void run(unsigned char p,unsigned char q,unsigned char r,unsigned char s)
{
unsigned int x,g,h;
for(p;p<=3;p++)
{
for(q;q<10;q++)
{
for(r;r<10;r++)
{
for(s;s<=9;s++)
{ x=p*1000+q*100+r*10+s;
switch(x)
{
case 1706:
{
senddata(1,0);
senddata(2,0x81);
break;
}
case 1876:
{
senddata(1,1);
senddata(2,0x81);
break;
}
case 2048:
{
senddata(1,2);
senddata(2,0x81);
break;
}
case 2218:
{
senddata(1,3);
senddata(2,0x81);
break;
}
case 2384:
{
senddata(1,4);
senddata(2,0x81);
break;
}
case 2559:
{
senddata(1,5);
senddata(2,0x81);
break;
}
case 2730:
{
senddata(1,6);
senddata(2,0x81);
break;
}
case 2901:
{
senddata(1,7);
senddata(2,0x81);
break;
}
case 3071:
{
senddata(1,8);
senddata(2,0x81);
break;
}
case 3242:
{
senddata(1,9);
senddata(2,0x81);
break;
}
case 3413:
{
senddata(1,0);
senddata(2,0x82);
break;
}
}
h=changeh(x);
g=changel(x);
dac0(h,g);
if(x==3413)
{
s=10;
dac0(13,85);
}
}
if(x==3413)
r=10;
else
s=0;
}
if(x==3413)
q=10;
else
r=0;
}
if(x==3413)
p=10;
else
q=0;
}
delay(60000);
dac0(0,0);
}
unsigned char changeh(unsigned int y)
{
unsigned char f;
f=y/256;
return f;
}
unsigned char changel(unsigned int z)
{
unsigned char u,v,w,k;
u=z/256;
v=(z-u*256)/16;
w=z-u*256-v*16;
k=v*16+w;
return k;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -