導航:首頁 > 操作系統 > 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單片機實時數據相關的資料

熱點內容
享省油app怎麼在加油站使用 瀏覽:248
crc演算法的實現c語言 瀏覽:184
風光攝影pdf 瀏覽:936
頭部按摩器可以緩解壓力嗎 瀏覽:648
格式工廠壓縮圖片大小 瀏覽:889
程序員的黑科技視頻 瀏覽:294
加密欄位表格顯示 瀏覽:401
pdf列印缺字 瀏覽:516
安卓手機鎖住圖標用什麼app 瀏覽:288
程序員牧師 瀏覽:457
影音伺服器是什麼意思 瀏覽:857
安卓如何合入補丁 瀏覽:930
文件夾中的應用隱藏怎麼辦 瀏覽:468
伺服器如何調用全部cpu計算 瀏覽:84
如何搜索AppID 瀏覽:792
組裝電腦水冷解壓 瀏覽:280
珠海存儲伺服器地址怎麼找 瀏覽:417
md5演算法字元串長度 瀏覽:8
可以二次虛化的雲伺服器 瀏覽:784
思科2500編程器固件 瀏覽:239