找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3263|回復(fù): 6
收起左側(cè)

單片機(jī)ADC采樣電壓超過10V,LCD上面不顯示小數(shù)點(diǎn)

[復(fù)制鏈接]
ID:525582 發(fā)表于 2020-8-2 21:19 | 顯示全部樓層 |閱讀模式
本帖最后由 yytda 于 2020-8-2 21:51 編輯

代碼見下圖,這是一個(gè)電壓采樣,并且在LCD上面顯示的代碼,正常情況下應(yīng)該顯示11.500V電壓,實(shí)際上顯示有問題,紅點(diǎn)那個(gè)位置如果填1,LCD就會(huì)顯示1.500V,紅點(diǎn)那個(gè)位置填2,LCD就會(huì)顯示11500V,請(qǐng)問是哪里出了問題?怎樣才能讓小數(shù)點(diǎn)前面顯示兩位數(shù)呢?單片機(jī)是STM32F103。低于10V的電壓顯示就沒有問題,大于10V才有問題

ADC1.jpg
回復(fù)

使用道具 舉報(bào)

ID:804115 發(fā)表于 2020-8-2 23:13 | 顯示全部樓層
看看圖片沒你有沒有啟發(fā)?
首先你將1改成2肯定沒問題,因?yàn)槟阋@示的整數(shù)部分變成11了,所以必然要顯示兩個(gè)數(shù)字。
但是你的起始坐標(biāo)沒有變,那么后面的1就會(huì)將小數(shù)點(diǎn)覆蓋,所以就顯示成11500了,所以,你有兩種方法可以改:
1. 將整數(shù)部分往左移一位,即16(size=16,所以一個(gè)字符在x軸就是占16個(gè)像素點(diǎn)),那就是將156改為140,這樣就可以顯示11.500了;
2. 將小數(shù)點(diǎn)兒和小數(shù)部分整體向右移動(dòng),這個(gè)你自己做實(shí)驗(yàn)吧,算作業(yè)了。
4.png
回復(fù)

使用道具 舉報(bào)

ID:525582 發(fā)表于 2020-8-3 00:30 | 顯示全部樓層
1692483014 發(fā)表于 2020-8-2 23:13
看看圖片沒你有沒有啟發(fā)?
首先你將1改成2肯定沒問題,因?yàn)槟阋@示的整數(shù)部分變成11了,所以必然要顯示兩 ...

高手啊,一眼就看出問題在哪了,adcx那一行156改小之后;,是顯示11.500V了,但是小數(shù)部分怎么移動(dòng)呢?把temp那一行里面的172改大,顯示電壓還是沒有小數(shù)點(diǎn)
回復(fù)

使用道具 舉報(bào)

ID:804115 發(fā)表于 2020-8-3 11:44 | 顯示全部樓層
yytda 發(fā)表于 2020-8-3 00:30
高手啊,一眼就看出問題在哪了,adcx那一行156改小之后;,是顯示11.500V了,但是小數(shù)部分怎么移動(dòng)呢?把 ...

從你的截圖中我無法看出那個(gè)小數(shù)點(diǎn)是怎么畫上去的,你要找到畫點(diǎn)的那一行代碼,然后同步調(diào)整才行。
回復(fù)

使用道具 舉報(bào)

ID:525582 發(fā)表于 2020-8-3 12:50 來自觸屏版 | 顯示全部樓層
1692483014 發(fā)表于 2020-8-3 11:44
從你的截圖中我無法看出那個(gè)小數(shù)點(diǎn)是怎么畫上去的,你要找到畫點(diǎn)的那一行代碼,然后同步調(diào)整才行。

畫點(diǎn)的那一行代碼,一般是在哪里可以找到?會(huì)不會(huì)根本就沒有這一行代碼,而是小數(shù)前面自動(dòng)加的點(diǎn)?
回復(fù)

使用道具 舉報(bào)

ID:420836 發(fā)表于 2020-8-4 08:20 | 顯示全部樓層
感謝您回答問題。 我們都從中學(xué)到了東西。
回復(fù)

使用道具 舉報(bào)

ID:1040393 發(fā)表于 2023-11-3 17:08 | 顯示全部樓層
1692483014 發(fā)表于 2020-8-2 23:13
看看圖片沒你有沒有啟發(fā)?
首先你將1改成2肯定沒問題,因?yàn)槟阋@示的整數(shù)部分變成11了,所以必然要顯示兩 ...

我也正在寫類似的程序,遇到相同的問題,看到樓主這樣的解答,瞬間清晰了
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表