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

熱點內容
公眾號吸粉源碼 瀏覽:122
你無權保存到你當前文件夾 瀏覽:473
lol巨神峰伺服器什麼時候開 瀏覽:258
程序員世界漫畫 瀏覽:224
安卓javaios開發 瀏覽:148
數據的運算是演算法嗎 瀏覽:649
諾基亞為什麼用的是原生安卓系統 瀏覽:767
android繼承fragment 瀏覽:580
單片機小系統設計 瀏覽:14
養老保險核演算法 瀏覽:894
伺服器代碼如何更改 瀏覽:586
易語言調用java 瀏覽:329
安卓sha加密 瀏覽:81
餘姚同城游戲app叫什麼 瀏覽:550
方維奪寶20源碼下載 瀏覽:870
shell編譯成功後退出 瀏覽:721
你們用什麼美妝鑒別的app嗎 瀏覽:118
手機設備信息在哪個文件夾 瀏覽:978
安卓應用亂怎麼解決 瀏覽:261
windowssocket網路編程 瀏覽:732