|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請教:如何發(fā)送浮點數(shù)到調(diào)試串口界面顯示?? |
| 作者:caozltao 欄目:ARM技術(shù) |
在ADS里面編程運算出來的浮點數(shù),不知道怎么發(fā)到調(diào)試串口上去,請教大俠給予指教,謝謝! 用的是AT91RM9200,調(diào)試串口接到超級終端上。 我用sprintf函數(shù),但是運行到此處就死住了,程序如下: sprintf((CHAR*) message,"xx= %f \n\r",(float)1.25463); AT91F_DBGU_Printk((CHAR *)message); 直接用 AT91F_DBGU_Printk(“%f",(float)1.234); 也是不行。。。用printf就更不行了 郁悶中,不知道怎么發(fā)送浮點數(shù)到調(diào)試串口上顯示。 下面的倒是可以,但是運行麻煩且不通用。 x=(int)(xx); x1=(int)((xx-x)*10); x2=(int)(((xx-x)*10-x1)*10); sprintf((CHAR*) message,"xx= %d.%d%d \n\r",(unsigned int)x,(unsigned int)x1,(unsigned int)x2); AT91F_DBGU_Printk((CHAR *)message); |
| 2樓: | >>參與討論 |
| 作者: me改變命運 于 2006/3/3 12:50:00 發(fā)布:
是否這樣 串口只能識別0 和1,一個字節(jié)一個字節(jié)發(fā)送接收,對于一個浮點數(shù),在內(nèi)存中是4個字節(jié),在發(fā)送時,就按順序把4個字節(jié)發(fā)送過去,接收方按相同的方法解碼,恢復(fù)成浮點數(shù)并顯示 |
|
| 3樓: | >>參與討論 |
| 作者: me改變命運 于 2006/3/3 12:55:00 發(fā)布:
數(shù)據(jù)結(jié)構(gòu)定義 enion MyData{ fp32 Data; BYTE Table[4]; }; |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |