熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂(lè)園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2022-2-9 15:53
正文摘要:如下圖所示為設(shè)備通信指令解析 當(dāng)發(fā)送“01 10 00 28 00 01 02 00 04 A1 BB”后設(shè)備會(huì)發(fā)送一次回復(fù)指令和n次測(cè)距數(shù)據(jù)直到收到停止命令 ,窗口助手接收到回復(fù)指令“01 10 00 28 00 01 81 C1”,然后就不斷 ... |
TEC 發(fā)表于 2022-2-14 13:28 是stm32單片機(jī)解析另一塊單片機(jī)發(fā)過(guò)來(lái)的數(shù)據(jù),這個(gè)我沒(méi)能解決。后面我才用定時(shí)器中斷查詢的方法獲取數(shù)據(jù)了 |
你的問(wèn)題是上位機(jī)(串口調(diào)試工具)如何解析下位機(jī)(單片機(jī))的數(shù)據(jù),還是STM32單片機(jī)解析另一塊單片機(jī)通過(guò)串口發(fā)送過(guò)來(lái)的數(shù)據(jù)?如果是用電腦上的串口調(diào)試工具軟件解析,那么市面上一些通用的串口工具是不能直接解析的,得針對(duì)性的開(kāi)發(fā)上位機(jī)。 |
lkc8210 發(fā)表于 2022-2-10 14:40 萬(wàn)分感謝大佬的指點(diǎn),我嘗試一下 |
不懂STM32 抽空寫了一個(gè)51的 你可以參考看看 仿真可用 從機(jī)用的是Modbus Slave 所以命令格式是Func 03 命令(Senddata2) 而不是你的定位命令 而且沒(méi)有命令回覆 只有定位數(shù)據(jù) 并把你要的數(shù)據(jù)在數(shù)碼管顯示 ![]() ![]() ![]() |
munuc_w 發(fā)表于 2022-2-10 09:39 抱歉,第一次接觸這個(gè)通信協(xié)議 |
串口做數(shù)據(jù)處理最好是中斷接收,用隊(duì)列存儲(chǔ),然后去輪詢處理數(shù)據(jù)就可以了。 |
這就一個(gè)modbus 協(xié)議啊,根據(jù)協(xié)議解析就可以了 |
通信中,收發(fā)數(shù)據(jù)的使用必須按通信協(xié)議解析,否則,不知道如何處理。 |
Powered by 單片機(jī)教程網(wǎng)