send.txt
来自「用C实现信号发生装置:1、正弦波:频率、幅度可调。 2、三角波:频率、幅度可调」· 文本 代码 · 共 102 行
TXT
102 行
#include <REGX51.H>
int f=1;
int t=0;
int k=1;
int code a[720]={127,128,129,130,131,133,134,135,136,137,138,139,140,
141,142,144,145,146,147,148,149,150,151,152,153,154,156,157,158,159,
160,161,162,163,164,165,166,167,168,169,170,171,173,174,175,176,177,
178,179,180,181,182,183,184,185,186,187,188,189,190,191,191,192,193,
194,195,196,197,198,199,200,201,202,203,203,204,205,206,207,208,209,
209,210,211,212,213,214,214,215,216,217,218,218,219,220,221,221,222,
223,224,224,225,226,226,227,228,228,229,230,230,231,232,232,233,234,
234,235,235,236,236,237,238,238,239,239,240,240,241,241,242,242,243,
243,243,244,244,245,245,246,246,246,247,247,247,248,248,248,249,249,
249,250,250,250,250,251,251,251,251,252,252,252,252,252,253,253,253,
253,253,253,253,254,254,254,254,254,254,254,254,254,254,254,254,254,
254,254,254,254,254,254,254,254,253,253,253,253,253,253,253,252,252,
252,252,252,251,251,251,251,250,250,250,250,249,249,249,248,248,248,
247,247,247,246,246,246,245,245,244,244,243,243,243,242,242,241,241,
240,240,239,239,238,238,237,236,236,235,235,234,234,233,232,232,231,
230,230,229,228,228,227,226,226,225,224,224,223,222,221,221,220,219,
218,218,217,216,215,214,214,213,212,211,210,209,209,208,207,206,205,
204,203,203,202,201,200,199,198,197,196,195,194,193,192,191,190,190,
189,188,187,186,185,184,183,182,181,180,179,178,177,176,175,174,173,
171,170,169,168,167,166,165,164,163,162,161,160,159,158,157,156,154,
153,152,151,150,149,148,147,146,145,144,142,141,140,139,138,137,136,
135,134,133,131,130,129,128,127,126,125,124,123,121,120,119,118,117,
116,115,114,113,112,110,109,108,107,106,105,104,103,102,101,100,98,
97,96,95,94,93,92,91,90,89,88,87,86,85,84,83,81,80,79,78,77,76,75,
74,73,72,71,70,69,68,67,66,65,64,63,63,62,61,60,59,58,57,56,55,54,
53,52,51,51,50,49,48,47,46,45,45,44,43,42,41,40,40,39,38,37,36,36,
35,34,33,33,32,31,30,30,29,28,28,27,26,26,25,24,24,23,22,22,21,20,
20,19,19,18,18,17,16,16,15,15,14,14,13,13,12,12,11,11,11,10,10,9,9,
8,8,8,7,7,7,6,6,6,5,5,5,4,4,4,4,3,3,3,3,2,2,2,2,2,1,1,1,1,1,1,1,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,2,2,2,2,2,3,
3,3,3,4,4,4,4,5,5,5,6,6,6,7,7,7,8,8,8,9,9,10,10,11,11,11,12,12,13,
13,14,14,15,15,16,16,17,18,18,19,19,20,20,21,22,22,23,24,24,25,26,
26,27,28,28,29,30,30,31,32,33,33,34,35,36,36,37,38,39,40,40,41,42,
43,44,45,45,46,47,48,49,50,51,51,52,53,54,55,56,57,58,59,60,61,62,
63,64,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,83,84,
85,86,87,88,89,90,91,92,93,94,95,96,97,98,100,101,102,103,104,105,
106,107,108,109,110,112,113,114,115,116,117,118,119,120,121,123,124,125,126};
void intIsr0(void ) interrupt 0
{
if((P1&0x80)==0x00)
{
f=f+1;
if (f>4 )
f=1;
}
if((P1&0x40)==0x00)
{
t=t+20;
if (t>320)
t=0;
}
if((P1&0x20)==0x00)
{
k=k+1;
if (k>5)
k=1;;
}
}
void nop(int a)
{ int c;
c=a;
while(c>1)c--;
}
main()
{
int b;
int c;
EX0=1;
EA=1;
while(1)
{
if ((P1&0x01)==0x00)
for (b=0;b<720;b+=k)
{
P2=(int)(a[b]*(f*1.0)/4);
nop(t);
}
if ((P1&0x02)==0x00)
for (b=0;b<255;b+=k)
{
P2=(int)(b*(f*1.0)/4);
nop(t);
}
if ((P1&0x04)==0x00)
{ c=t;
for (b=0;b<720;b+=k)
{
if (b<720/2) P2=(int)(0*(f*1.0)/4);
else P2=(int)(255*(f*1.0)/4);
nop(t);
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?