找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

求思路 串口助手發(fā)送一連串字符并在單片機LCD1602A上實時顯示出來,并且可以自動換行

[復(fù)制鏈接]
ID:1110076 發(fā)表于 2024-1-25 00:32 來自觸屏版 | 顯示全部樓層 |閱讀模式
由于本論壇禁止直接求程序,禁止伸手黨,所以向大家請教一下大致的實現(xiàn)方法與思路,理清頭緒后我自己來寫程序去實現(xiàn),謝謝大家

在串口助手發(fā)送一連串的字符后,顯示的總是只有第2個字符
初學(xué)者求大神帶帶這種情況應(yīng)該怎么解決
回復(fù)

使用道具 舉報

ID:161164 發(fā)表于 2024-1-25 07:59 | 顯示全部樓層
uchar RecBuff[32];

if(RI==1)
{
static uchar i = 0;
RI=0;
RecBuff[[i] = SBUF;
i++;
if(i>=32)i=0;
}
回復(fù)

使用道具 舉報

ID:895440 發(fā)表于 2024-1-25 09:07 | 顯示全部樓層
首先你先做到串口接收所有的字符,并在串口助手中返會
然后再做到在lcd上顯示字符
兩者結(jié)合起來就是,至于換行就是數(shù)你的lcd一行是幾個字符,用個變量表示這是第幾個字符,然后換行
回復(fù)

使用道具 舉報

ID:646520 發(fā)表于 2024-1-25 10:30 | 顯示全部樓層
①實現(xiàn)一串?dāng)?shù)據(jù)的完整接收,將這一幀數(shù)據(jù)原封不動的在發(fā)出來。首先你得知道一幀數(shù)據(jù)是什么時候結(jié)束的,根據(jù)幀尾還是超時接收?
②實現(xiàn)字符串在屏幕的顯示函數(shù)
③將①正確接收的字符數(shù)組傳入②函數(shù)。
就你的描述來看,猜測沒有完整接收到字符串。
回復(fù)

使用道具 舉報

ID:1110076 發(fā)表于 2024-1-25 10:48 來自觸屏版 | 顯示全部樓層
雷歐庫珀 發(fā)表于 2024-1-25 09:07
首先你先做到串口接收所有的字符,并在串口助手中返會
然后再做到在lcd上顯示字符
兩者結(jié)合起來就是,至 ...

不好意思,為什么還要在串口助手中返回呢
回復(fù)

使用道具 舉報

ID:73992 發(fā)表于 2024-1-25 12:22 來自觸屏版 | 顯示全部樓層
首先,設(shè)立一塊內(nèi)存區(qū)域每行16字節(jié)。具體設(shè)置多少行,依據(jù)需求和單片機容量。第二將1602的32個字符顯示映射到這塊內(nèi)存地址空間的首2行。并且增加一個變量,控制1602顯示該內(nèi)存的行數(shù)。當(dāng)串口接收的數(shù)據(jù)大于16,這個變量指定1602顯示下一行。
回復(fù)

使用道具 舉報

ID:1110076 發(fā)表于 2024-1-25 16:05 來自觸屏版 | 顯示全部樓層
最后一個夏天1 發(fā)表于 2024-1-25 10:30
①實現(xiàn)一串?dāng)?shù)據(jù)的完整接收,將這一幀數(shù)據(jù)原封不動的在發(fā)出來。首先你得知道一幀數(shù)據(jù)是什么時候結(jié)束的,根據(jù) ...

是的,每次通過串口助手發(fā)送字符的時候,顯示屏上都只顯示這段字符中的第二個字符
回復(fù)

使用道具 舉報

ID:895440 發(fā)表于 2024-3-3 13:08 | 顯示全部樓層
米小忙 發(fā)表于 2024-1-25 10:48
不好意思,為什么還要在串口助手中返回呢

保證你確實接收成功了
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

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

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