導航:首頁 > 操作系統 > 51單片機實時數據

51單片機實時數據

發布時間:2025-01-19 03:31:20

❶ OLED怎樣實時顯示51單片機測得的數據

先實現劃線的函數,把相鄰的采樣點轉化為屏幕坐標之後,連接起來就可以了,下面劃線函數可以作為參考

void Line(char x1,char y1,char x2,char y2)
{
char xdelta; // width of rectangle around line
char ydelta; // height of rectangle around line
char xinc; //increment for moving x coordinate
char yinc; //increment for moving y coordinate
char rem; //current remainder
//Bool bit = 0;//used for dashed lines
char s,e; //Start,End
//See if the line is horizontal or vertical. If so, then call special routines.
if (y1 == y2)
{ //draw a horizontal line
if(x1 > x2 ) s = x2,e = x1;
else s = x1,e = x2;
for(; s <= e; s++) SetPixel(s,y1,1);
}
else if (x1 == x2)
{//draw a vertical line
if(y1 > y2 ) s = y2,e = y1;
else s = y1,e = y2;
for(; s <= e; s++) SetPixel(x1,s,1);
}
else
{// The line may be partially obscured. Do the draw line algorithm
// checking each point against the clipping regions.
xdelta = x2 - x1;
ydelta = y2 - y1;
if (xdelta < 0) xdelta = -xdelta;
if (ydelta < 0) ydelta = -ydelta;
xinc = (x2 > x1)? 1 : -1;
yinc = (y2 > y1)? 1 : -1;
// draw the first point
//SetPixel( x1, y1, 1);
if (xdelta >= ydelta)
{
rem = xdelta / 2;
for (;x1 != x2; x1 += xinc)
{
SetPixel(x1, y1,1);
rem += ydelta;
if (rem >= xdelta){
rem -= xdelta;
y1 += yinc;
}
}
}
else
{
rem = ydelta / 2;
for (;y1 != y2; y1 += yinc)
{
SetPixel(x1, y1,1);
rem += xdelta;
if (rem >= ydelta) {
rem -= ydelta;
x1 += xinc;
}
}
}
}
g_nCoordinateX = x2;//
g_nCoordinateY = y2;
}

❷ 51單片機如何實時顯示時間

單片機實時顯示時間,可以用ds1302產生時鍾,然後計算時鍾,並送出結果。

閱讀全文

與51單片機實時數據相關的資料

熱點內容
pe怎麼解開加密 瀏覽:504
為什麼今天伺服器維護 瀏覽:839
程序員統一桌面 瀏覽:559
如何注銷qq的登錄app手機版 瀏覽:343
php運行bat文件 瀏覽:404
怎麼做伺服器運維 瀏覽:380
崑山共享電瓶車app叫什麼 瀏覽:334
法考程序員 瀏覽:248
蘇民峰pdf 瀏覽:943
hbm源碼 瀏覽:851
徐州稅務伺服器地址 瀏覽:169
為什麼安卓手機比蘋果手機貶值快 瀏覽:247
源碼微信小程序搭建 瀏覽:280
linux遠程桌面連接命令 瀏覽:861
adams教程pdf 瀏覽:264
Arm和單片機區別 瀏覽:559
阿里雲伺服器綁定主機頭 瀏覽:949
游戲手機什麼最好用安卓 瀏覽:11
江蘇程序員怎麼樣 瀏覽:510
捉妖股選股公式源碼 瀏覽:541