01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| #include //声明库
U8GLIB_ST7920_128X64_4X u8g(13, 12, 11); // 声明液晶屏 SPI Com: SCK =13, MOSI = 12, CS = 11
int x,y; //绘点坐标
int Buffer[128]; //缓存值储存数组
void setup( ) { }
//采样
void sample( )
{
for(x = 0;x < 128;x++)
Buffer[x] = analogRead(A0); //信号采样
for(x = 0;x < 128;x++)
Buffer[x] = 63-(Buffer[x]>>4); //计算纵坐标值
}
//显示
void draw( )
{
for(x = 0;x < 127;x++)
u8g.drawLine(x,Buffer[x],x,Buffer[x+1]); //画相邻两点连线
u8g.drawLine(64,0,64,63); // 画坐标轴
u8g.drawLine(0,32,128,32);
for(x=0;x<128;x+=8) //画坐标轴刻度
u8g.drawLine(x,31,x,33);
for(x=0;x<64;x+=8)
u8g.drawLine(63,x,65,x);
u8g.drawFrame(0,0,128,64); //画边框
}
void loop( )
{
sample(); //采样
u8g.firstPage(); //清屏
do draw( ); //显示
while( u8g.nextPage( ));
}
|