?? test_dac0832.c
字號(hào):
#include <reg51.h>
#include "LCD1602.c"
#define uchar unsigned char
#define uint unsigned int
uchar code tab[128]={64,67,70,73,76,79,82,85,88,91,94,96,99,102,104,106,109,111,113,
115,117,118,120,121,123,124,125,126,126,127,127,127,127,127,127,
127,126,126,125,124,123,121,120,118,117,115,113,111,109,106,104,
102,99,96,94,91,88,85,82,79,76,73,70,67,64,60,57,54,51,48,45,42,
39,36,33,31,28,25,23,21,18,16,14,12,10,9,7,6,4,3,2,1,1,0,0,0,0,0,
0,0,1,1,2,3,4,6,7,9,10,12,14,16,18,21,23,25,28,31,33,36,39,42,45,48,51,54,57,60};
void delay( )
{
uchar i;
for(i=0;i<255;i++);
}
void saw() //鋸齒波.
{
uchar i;
while(1)
{
for(i=0;i<255;i++)
P0=i;
}
}
void tran() //三角波
{
uchar i;
while(1)
{
for(i=0;i<255;i++)
P0=i;
for(i=255;i>0;i--)
P0=i;
}
}
void square() //方波
{
while(1)
{
P0=0x00;
delay();
P0=0xff;
delay();
}
}
void sin() //正弦波
{
unsigned int i;
while(1)
{
if(++i==128)i=0;
P0=tab[i];
}
}
void key_press()
{
uchar key;
while(1)
{
if(P1==0xff)
delay();
if(P1==0xff)
key=P1;
switch(key&0x0f)
{
case 0x0e:{disp_onechar(0,2);saw();};break;
case 0x0d:{disp_onechar(0,3);tran();};break;
case 0x0b:{disp_onechar(0,4);square();};break;
case 0x07:{disp_onechar(0,5);sin();};break;
default:disp_onechar(0,1);
}
}
}
void main()
{
init();
key_press();
while(1);
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -