|

楼主 |
发表于 2020-3-1 18:37:13
|
显示全部楼层
#include "U8glib.h"
//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8
U8GLIB_PCD8544 u8g(3, 4, 7, 5, 6); // SPI Com: clk = 3, din = 4, ce = 7, dc = 5, rst = 6
int x, y;
int v0, v1;
int Buffer[84];//48*84的屏
void setup() {
u8g.firstPage();
do {
u8g.setFont(u8g_font_helvB14);
//字型設定可在此網址找/ https://github.com/olikraus/u8glib/wiki/fontsize
//判斷式要放在 本大括號內才會在屏幕上顯示
u8g.drawStr(0, 14, "V=");
u8g.drawStr(26, 14, "12.34");
u8g.drawStr(0, 30, "A=");
u8g.drawStr(26, 30, "56.789");
u8g.setFont(u8g_font_helvR08);
u8g.drawStr( 0, 39, "T=");
u8g.drawStr(10, 39, "12.34");
u8g.drawStr(37, 39, "\260C");
u8g.drawStr(52, 39, "fan on");
} while ( u8g.nextPage() );
delay(2000);
}
void loop( )
{
do {
v0 = analogRead(A0);
}
while (v0 > 10);
for (x = 0; x < 84; x++) //信号采样
Buffer[x] = 31 - (analogRead(A0) >> 5);
u8g.firstPage(); //清屏
do//显示
{
for (x = 0; x < 83; x++)
u8g.drawLine(x, Buffer[x], x, Buffer[x + 1]); //画相邻两点连线
u8g.drawLine(42, 0, 42, 47); // 画坐标轴
u8g.drawLine(0, 24, 84, 24);
for (x = 0; x < 84; x += 21) //画坐标轴刻度
u8g.drawLine(x, 23, x, 25);
for (x = 0; x < 48; x += 8)
u8g.drawLine(41, x, 43, x);
u8g.drawFrame(0, 0, 84, 48); //画边框
}
while (u8g.nextPage( ));
}
|
|