標(biāo)題: 單片機(jī)串口打印輸出printf函數(shù)的參數(shù)數(shù)目是否有限制? [打印本頁]

作者: hhcb2020    時(shí)間: 2021-6-19 11:53
標(biāo)題: 單片機(jī)串口打印輸出printf函數(shù)的參數(shù)數(shù)目是否有限制?
諸位我使用單片機(jī)的串口打印來查看數(shù)據(jù),代碼如下:

printf("ExposureL 0x%X LowSum 0x%08lX MidSum 0x%08lX HighSum 0x%08lX\n",ExposureL,LowSum,MidSum,HighSum);                        
printf("HighSum 0x%08lX\n",HighSum);
printf("0x000003e4 0x%08lX \n",isp_read_reg(0x000003e4));


其中ExposureL,是16位無符號(hào)數(shù)。LowSum,MidSum,HighSum 都是無符號(hào)32位整數(shù)使用0x%08lX輸出,F(xiàn)在的問題是,LowSum,MidSum這兩個(gè)數(shù)據(jù)打印結(jié)果正確。但是,HighSum始終不對(duì)。
一開始以為,是本來 HighSum 數(shù)據(jù)的讀取就沒有正確,所以,在下面代碼中,獨(dú)立打印數(shù)據(jù) HighSum,結(jié)果反而對(duì)了。

這是打印結(jié)果,紅框1那里的打印結(jié)果不對(duì),但是紅框2那里獨(dú)立打印變量 HighSum  又反而對(duì)了。


所以,想知道一點(diǎn):是否在單片機(jī)的printf打印輸出時(shí)候,存在一個(gè)對(duì)打印參數(shù)的個(gè)數(shù)限制?例如最多打印三個(gè),不然就錯(cuò)了?


作者: xuyaqi    時(shí)間: 2021-6-19 19:56
和緩沖區(qū)的大小有關(guān)吧。
作者: yzwzfyz    時(shí)間: 2021-6-21 14:00
你的printf函數(shù)是哪里來的,就查哪里的手冊(cè),看看手冊(cè)上是如何說的。
作者: hhcb2020    時(shí)間: 2021-6-25 22:37
yzwzfyz 發(fā)表于 2021-6-21 14:00
你的printf函數(shù)是哪里來的,就查哪里的手冊(cè),看看手冊(cè)上是如何說的。

接收的項(xiàng)目上面的printf函數(shù)
作者: hhcb2020    時(shí)間: 2021-6-25 22:42
xuyaqi 發(fā)表于 2021-6-19 19:56
和緩沖區(qū)的大小有關(guān)吧。

緩沖區(qū)大小怎么查看。窟是固定的?
作者: 人人學(xué)會(huì)單片機(jī)    時(shí)間: 2021-7-6 20:28

串口1打印程序 可以打印3個(gè)十六位的變量 波特率9600 http://www.torrancerestoration.com/bbs/dpj-201660-1.html





歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1