資料介紹
軟件簡介
java 鏈路層封包協議, 實現數據包完整性校驗 可用于無線模塊(紅外/zigbee/433Mhz)實現TCP/IP通信
說明
-
沒有重傳確認功能, 發(fā)送不保證對方一定收到包,亦不保證順序。需要結合 tun/tap 才能實現TCP通信
-
如果收到包,則可保證包數據完整性(使用md5算法校驗和)
-
配合 tun/tap 使用,可實現多終端全雙工通信, 建議MTU設置為256以下,惡劣環(huán)境下需設置更低的值
-
雖然433Mhz, 紅外功耗低,但傳輸速率也較低,因此不適合用來瀏覽互聯網,建議用在物聯網少量數據傳輸場景
user-program -> tun/tap -> rawip4j -> wireless(zigbee, 433Mhz, Infrared-ray) -> (THE AIR) -> wireless -> rawip4j -> tun/tap -> user-program
public?static?void?main(String[]?args)?throws?IOException,?InterruptedException?{ //?定義隊列用于存儲接收到的包?received?packet?queue final?LinkedBlockingQueue?queue?=?new?LinkedBlockingQueue<>(); //?通過?rxtx?獲取設備的InputStream?和?OutputStream //TODO?get?the?InputStream?&?OutputStream?from?SerialPort?devices //?you?can?use?librxtx-java?(aptitude?install?librxtx-java) //?or?http://mvnrepository.com/artifact/org.rxtx/rxtx?(untested) InputStream?ins?=?null; OutputStream?outs?=?null; /*?***********************************************************************************************************************?*/ //?開始讀取包,讀到的包將放入隊列中,這個方法是永不返回的,因此要新開線程執(zhí)行 //?start?a?thread?to?receive?packet?into?the?queue new?Thread(new?Runnable()?{ @Override public?void?run()?{ try?{ RxdUtil.readloop(ins,?queue); }?catch?(IOException?|?InterruptedException?e)?{ e.printStackTrace(); } } }).start(); /*?***********************************************************************************************************************?*/ ????//?新開線程處理接收到的包 //?start?a?received?packet?handler?thread new?Thread(new?Runnable()?{ @Override public?void?run()?{ while(true){ try?{ final?byte[]?data?=?queue.take(); System.out.println("received?packet:?"?+?new?String(data)); }?catch?(InterruptedException?e)?{ e.printStackTrace(); } } } }).start(); /*?***********************************************************************************************************************?*/ //?發(fā)送包,不保證對方一定接收到包,但如果接收到,則能保證包的數據完整性 ??? ? //?chksumlength:?校驗和字節(jié),可以設置為2-16,越大越安全,?建議8 //?send?a?data?packet //?chksumlength:?use?md5?to?checksum?a?packet,?the?value?can?be?2-16,?recommend?8 new?PacketFrame((byte)8,?"hello,?rawip4j".getBytes()).write(outs); /*?***********************************************************************************************************************?*/ TimeUnit.SECONDS.sleep(Long.MAX_VALUE); }
效果圖
433MHz模塊9600波特率, 距離20米,隔2墻1窗1門,ping丟包率5%, wget 600bytes/s
?
- Twitter4j Twitter的Java客戶端API
- Evalon4J Java接口文檔生成工具
- iot4j IoT Java客戶端包
- SAE J1939協議標準文檔中英文合集 60次下載
- 一種新型的未知鏈路層協議幀切割算法 5次下載
- J1939協議理解 13次下載
- Java程序設計之網絡編程J2ME的詳細資料概述 3次下載
- Java程序設計教程之Java語言的基礎知識概述 36次下載
- 數據鏈路層選擇重傳協議優(yōu)化 55次下載
- 數據鏈路層SAE_J1939-21 62次下載
- JAVA教程之89SSL及HTTPS協議 7次下載
- 分離載荷近距協議的數據鏈路層仿真研究 12次下載
- 基于J1939協議的組合儀表的設計與實現
- 基于可靠鏈路層模型的節(jié)能路由協議
- 數據鏈路層.ppt 0次下載
- ICMPv4協議—互聯網控制報文協議 518次閱讀
- 簡單了解Java的新特性 835次閱讀
- log4j日志框架分析 975次閱讀
- 網絡封包分析軟件——Wireshark抓包教程 1187次閱讀
- 基于802.11協議數據鏈路層的MAC子層實現的節(jié)能機制研究 1551次閱讀
- Deeplearning4j框架中的庫,企業(yè)大數據應用程序中的深度學習 7303次閱讀
- java入門經典書籍推薦 1.9w次閱讀
- 一文看懂數據鏈路層和網絡層的區(qū)別 7.1w次閱讀
- 數據鏈路層設備有哪些 2.4w次閱讀
- 數據鏈路層和傳輸層的區(qū)別是什么 2.6w次閱讀
- 數據鏈路層常用成紙法有哪些_數據鏈路層的作用 2043次閱讀
- 數據鏈路層到底是什么_數據鏈路層工作原理是怎樣的 3w次閱讀
- 關于java的一些基礎知識解析 4661次閱讀
- 解析J-Link、J-Trace、Open JTAG原理以及其區(qū)別 1.8w次閱讀
- 數據鏈路層發(fā)送與接收的處理過程及涉及到的模塊 9944次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多