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

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2954|回復(fù): 8
打印 上一主題 下一主題
收起左側(cè)

怎么把單片機(jī)讀到的數(shù)轉(zhuǎn)化成自己想要的數(shù)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:531986 發(fā)表于 2019-11-24 20:38 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
怎么把單片機(jī)讀到的數(shù)轉(zhuǎn)化成自己想要的數(shù)

1574599068(1).png (75.91 KB, 下載次數(shù): 69)

1574599068(1).png
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

來(lái)自 3#
ID:367934 發(fā)表于 2019-11-25 14:14 | 只看該作者
AA AB BB CC CD DD EE EF FF

這個(gè)是一個(gè)16進(jìn)制的數(shù)據(jù)。
AA兩個(gè)為一個(gè)字節(jié),即八位
說(shuō)明中說(shuō)到 AA AB BB 為Roll軸的數(shù)據(jù),意思就是他把一個(gè)數(shù)據(jù)使用3個(gè)字節(jié)保存。
AA AB BB 分為 高8位 中8位 低8位
轉(zhuǎn)換為十進(jìn)制為:
(AA*256*256)+(AB*256)+BB
另一種方法:
(AA<<16)+(AB<<8)+BB
要清楚那幾位為一組
換成10進(jìn)制就很容易理解
比如一個(gè)數(shù)999可以分成
9*10*10+9*10+9 = 09 09 09
982
9*10*10+8*10+2 = 09 08 02

評(píng)分

參與人數(shù) 1黑幣 +70 收起 理由
admin + 70 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:584814 發(fā)表于 2019-11-24 21:04 | 只看該作者
你想要讀什么 ?
回復(fù)

使用道具 舉報(bào)

地板
ID:531986 發(fā)表于 2019-11-25 16:46 | 只看該作者

我想串口發(fā)送一個(gè)命令,獨(dú)到的是數(shù)據(jù)域的值
回復(fù)

使用道具 舉報(bào)

5#
ID:531986 發(fā)表于 2019-11-25 16:47 | 只看該作者
適得府君書(shū) 發(fā)表于 2019-11-25 14:14
AA AB BB CC CD DD EE EF FF

這個(gè)是一個(gè)16進(jìn)制的數(shù)據(jù)。

好人真是多啊,問(wèn)自己的同門(mén),支支吾吾
回復(fù)

使用道具 舉報(bào)

6#
ID:584814 發(fā)表于 2019-11-26 09:57 | 只看該作者
17851000590 發(fā)表于 2019-11-25 16:46
我想串口發(fā)送一個(gè)命令,獨(dú)到的是數(shù)據(jù)域的值

加了高分的那個(gè)C+V了點(diǎn)二進(jìn)制換算常識(shí)而已,答非所問(wèn)基本扯蛋。
從你貼出的那一點(diǎn)點(diǎn)說(shuō)明,可以看出返回的一串?dāng)?shù)據(jù)是這樣用的:
68 0D 00 84,疑似指令集,最后一個(gè)與說(shuō)明那欄標(biāo)題0x84對(duì)應(yīng);后面接的是飛行姿態(tài)數(shù)據(jù):
00 10 50 表示滾轉(zhuǎn)角Roll +010.50度,第一位是符號(hào)位,0/1表示正/負(fù),接下來(lái)三位是小數(shù)點(diǎn)前,末兩位是小數(shù)點(diǎn)后;
10 10 05 表示俯仰角Pitch -010.05度,01 04 01表示偏航角heading +104.01度,雖然是讀16進(jìn)制數(shù)但直接用;
最后的1C疑似結(jié)束標(biāo)志或校驗(yàn)位,詳見(jiàn)說(shuō)明書(shū)。
回復(fù)

使用道具 舉報(bào)

7#
ID:531986 發(fā)表于 2019-11-28 14:20 | 只看該作者
man1234567 發(fā)表于 2019-11-26 09:57
加了高分的那個(gè)C+V了點(diǎn)二進(jìn)制換算常識(shí)而已,答非所問(wèn)基本扯蛋。
從你貼出的那一點(diǎn)點(diǎn)說(shuō)明,可以看出返回 ...

不好意思,上面協(xié)議沒(méi)貼
回復(fù)

使用道具 舉報(bào)

8#
ID:648521 發(fā)表于 2019-11-28 20:50 | 只看該作者
要改為機(jī)器可以識(shí)別的二進(jìn)制數(shù)字。
回復(fù)

使用道具 舉報(bào)

9#
ID:155507 發(fā)表于 2019-11-29 16:33 | 只看該作者
從你貼出的那一點(diǎn)點(diǎn)說(shuō)明,可以看出返回的一串?dāng)?shù)據(jù)是這樣用的:
68 0D 00 84
標(biāo)示符:固定為68H  
0D 數(shù)據(jù)長(zhǎng)度:從數(shù)據(jù)長(zhǎng)度到校驗(yàn)和(包括校驗(yàn)和)的長(zhǎng)度  (13)
00 地址碼:采集模塊的地址,默認(rèn)為00
84 命令字 傳感器應(yīng)答回復(fù)

最后一個(gè)與說(shuō)明那欄標(biāo)題0x84對(duì)應(yīng);
后面接的是飛行姿態(tài)數(shù)據(jù):
00 10 50 表示滾轉(zhuǎn)角Roll +010.50度,第一位是符號(hào)位, 0/1表示正/負(fù),接下來(lái)三位整數(shù)是小數(shù)點(diǎn)前,末兩位是小數(shù)點(diǎn)后;
10 10 05 表示俯仰角Pitch -010.05度,
01 04 01 表示偏航角heading +104.01度,雖然是讀16進(jìn)制數(shù)但直接用;(是BCD; 用4位二進(jìn)制數(shù)來(lái)表示1位十進(jìn)制數(shù)中的0~9這10個(gè)數(shù)碼)

最后的1C 為校驗(yàn)和位:數(shù)據(jù)長(zhǎng)度、地址碼、命令字和數(shù)據(jù)域的和不考慮進(jìn)位


回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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