看板 C_and_CPP 關於我們 聯絡資訊
本身在做控制的領域,用C寫晶片時,遇到一個問題 我有一個浮點的變量,想藉由RS232介面把數據全傳出來 再用繪圖軟體(excel,matlab)把波形畫出來 現在是假設我的變數是x=56.87, 想把它輸出 ScicRegs.SCITXBUF=x; /*把變量給我輸出的暫存器*/ 輸出之後我用超級終端機看,並不是56.87,而是8 因為我這暫存器只能是int型態,所以56.87會先變成56 而rs232傳輸協議會把56看成ASCII碼,56對應為8,所以就輸出8 目前想到是先把浮點轉成字元,想請問C中有類似 itoa() (int轉字串),或是ltoa() (long轉字串) 這種的浮點轉字串的函數嗎? -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 134.208.1.29
AstralBrain:snprintf 10/03 20:18
bigpigbigpig:char s[100]; sprintf(s,%lf",val); 10/03 20:21
stupid0319:傳兩個INT也可以吧,一個實數,一個指數 10/03 20:51
EdisonX:@stup~ : 但重點是它傳過去是用字串收. 10/03 23:59
stupid0319:可是他用超級終端機看的啊,當然變ASCII顯示 10/04 01:17
stupid0319:傳輸只會傳byte吧,怎麼會有看成ASCII碼的難理解的情況! 10/04 01:19