java构建的网站如何跟RS485通信? 在java的web程序中怎么使用串口通讯

\u5173\u4e8e\u4f7f\u7528Java\u5b9e\u73b0rs485\u4e32\u53e3\u901a\u4fe1\u7684\u95ee\u9898

comm.jar
\u901a\u8fc7\u4e32\u53e3\uff0cPC\u673a\u53ef\u4ee5\u83b7\u53d6\u8bbe\u5907\u7684\u8f93\u5165\u6570\u636e\uff0c\u4e5f\u53ef\u4ee5\u8ba9PC\u673a\u5411\u8bbe\u5907\u8f93\u51fa\u8f93\u51fa\u3002\u4f60\u7684\u8bbe\u5907\u5e94\u8be5\u6709\u76f8\u5173\u7684\u7a0b\u5e8f\u4e0e\u8bf4\u660e\u3002

\u6700\u8fd1\u5728\u505ajava\u4e32\u53e3\u901a\u8baf\uff0c\u4e3b\u8981\u662f\u7528\u4e2a\u4eba\u7535\u8111\u901a\u8fc7\u4e32\u53e3\u4eceRS485\u8bfb\u53d6\u6570\u636e\uff0c\u5e76\u901a\u8fc7crc\u5faa\u73af\u5197\u4f59\u6821\u9a8c\uff0c\u628a\u63a5\u6536\u6b63\u786e\u7684\u6570\u636e\u89e3\u6790\uff0c\u63d2\u5165\u6570\u636e\u5e93mysql\uff0c\u5e76\u7528SSH\u6280\u672f\u628a\u6570\u636e\u5e93\u6570\u636e\u4ee5\u8868\u683c\u4ee5\u53ca\u56fe\u8868\u5f62\u5f0f\u663e\u793a
\u601d\u8def\uff1a
1.\u4e3a\u4e86\u4eceRS485\u8bfb\u53d6\u6570\u636e\uff0c\u7531\u4e8e\u6682\u65f6\u6ca1\u6709\u786c\u4ef6\u8bbe\u5907\uff0c\u7cfb\u7edf\u662fwin7\uff0c\u6545\u91c7\u7528Virtual Serial Port Drive\uff08VSPD\uff09\u8fd9\u5757\u865a\u62df\u4e32\u53e3\u8f6f\u4ef6\u4ee3\u66ff\u3002\u5e76\u4e0b\u8f7dsscom32.exe\u6a21\u62df\u4e32\u53e3\u901a\u4fe1\u8f6f\u4ef6\u3002

2. \u8981\u60f3\u5b9e\u73b0\u4e32\u53e3\u901a\u4fe1\uff0c\u7528Java\u5b9e\u73b0\u4e32\u53e3\u901a\u4fe1\uff08windows\u7cfb\u7edf\u4e0b\uff09\uff0c\u9700\u8981\u7528\u5230sun\u63d0\u4f9b\u7684\u4e32javacomm20-win32.zip\u3002\u5176\u4e2d\u8981\u7528\u5230\u4e09\u4e2a\u6587\u4ef6\uff0c\u914d\u7f6e\u5982\u4e0b\uff1a
comm.jar\u653e\u7f6e\u5230 JAVA_HOME/jre/lib/ext;
win32com.dll\u653e\u7f6e\u5230 JAVA_HOME/bin;
javax.comm.properties \u4e24\u4e2a\u5730\u65b9\u90fd\u8981\u653e
jre/lib(\u4e5f\u5c31\u662f\u5728JAVA\u6587\u4ef6\u5939\u4e0b\u7684jre),JAVA_HOME/jre/lib\u4e0b
\u8fd9\u4e2a\u914d\u7f6e\u5728\u6211\u7535\u8111\u4e0a\u6d4b\u8bd5\u6210\u529f\uff0c\u4e5f\u8bb8\u4e0d\u9700\u8981\u8fd9\u6837\u9ebb\u70e6\u3002\u6ce8\u610f\u7684\u662f\uff0c\u5982\u679c\u4f60\u4f7f\u7528myeclipse\uff0c\u56e0\u4e3a\u5b83\u81ea\u5e26jre\uff0c\u4f60\u9700\u8981\u5728\u5b83\u6240\u5728\u7684jre\u76f8\u5e94\u4f4d\u7f6e\u653edll\u4ee5\u53caproperties\u6587\u4ef6\u3002

\u662f\u4e0d\u662f\u611f\u89c9\u8fd9\u4e2a\u5f88\u9ebb\u70e6\uff0c\u8fd8\u6709windows\u7684\u9650\u5236\u3002\u540e\u6765\u6211\u4eec\u4e0b\u8f7drxtx\u8fd9\u6b3e\u5f00\u6e90\u5305\u4ee3\u66ff\u4e86\u521a\u624d\u7684comm\u3002\u4e0d\u4ec5windows\u4e0b\u53ef\u4ee5\uff0clinux\u4e0b\u4e5f\u53ef\u4ee5\u3002\u4f7f\u7528\u65b9\u6cd5\u5f88\u7b80\u5355\uff0c\u914d\u7f6e\u5982\u4e0b\uff1a

RXTXcomm.jar\u653e\u5230JAVA_HOME/jre/lib/ext
rxtxSerial.dll\u653e\u5230JAVA_HOME/bin
\u5982\u679c\u4f60\u4f7f\u7528myeclipse\u5de5\u5177\uff0c\u4f60\u9700\u8981\u628arxtxSerial.dll\u653e\u5230\u5b83\u81ea\u5e26\u7684jre\u91cc\u3002

3.\u65b0\u5efaeclipse\u5de5\u7a0b\uff0c\u6dfb\u52a0comm.jar\u6216\u8005RXTXcomm.jar\u5305\u3002\u56e0\u4e3ajavacomm20-win32.zip\u5305\u91cc\u6709\u6837\u4f8bSimpleRead.java\uff0c\u53ef\u4ee5\u901a\u8fc7\u8fd9\u4e2a\u4f8b\u5b50\u6d4b\u8bd5\u4e32\u53e3\u662f\u5426\u6b63\u786e

4.\u63a5\u6536\u6570\u636e\u6b63\u786e\u540e\uff0c\u6839\u636e\u4f20\u9001\u63a5\u6536\u53cc\u65b9\u7684\u534f\u8bae\uff0c\u91c7\u7528CRC\u5faa\u73af\u6821\u9a8c\uff0c\u6839\u636e\u4f20\u8f93\u7684\u4e00\u65b9\u7684\u6821\u9a8c\u51fd\u6570\u5224\u5b9a\u662f\u5426\u662f\u6b63\u786e\u4f20\u8f93

5.\u628a\u6b63\u786e\u7ed3\u675f\u7684\u6570\u636e\u89e3\u6790\uff0c\u67e5\u770b\u81ea\u5df1\u6307\u5b9a\u7684\u901a\u8baf\u89c4\u5219\uff0c\u7136\u540e\u89e3\u6790

6.\u63d2\u5165\u6570\u636e\u5e93\uff0cjdbc\u63d2\u5165

7.\u6570\u636e\u7edf\u8ba1\uff0c\u5b9a\u65f6\u7edf\u8ba1\u6bcf\u5c0f\u65f6\uff0c\u6bcf\u5929\uff0c\u6bcf\u6708\uff0c\u6bcf\u5e74\u7684\u5e73\u5747\u503c\uff0c\u91c7\u7528quartz\u670d\u52a1\u6765\u5b9e\u73b0\u3002

8.\u5efa\u7acbweb\u5de5\u7a0b\uff0c\u91c7\u7528hibernate3\uff0cspring3\uff0cdwr\u6280\u672f\u628a\u6570\u636e\u5e93\u6570\u636e\u52a8\u6001\u663e\u793a\uff0c\u56fe\u8868\u91c7\u7528jfreechart\uff0c\u4ee5\u53caAJAX\u7684\u8fd0\u7528

您好,如果有确定的接收字节长度,设置Rthreshold等于接收字节长度有利接收正确率提高.由于你的几个下位机返回数据包字节不等长,你可根据寻址命令发出前预先改变Rthreshold值来保证接收返回符合要求的字节长度.
不然你接收多少字节符合你改发下一寻址命令呢?程序代码处理难度较高.
实际下位机返回数据包可在其代码中补一定其它字节来达到等长,从而使接收代码变得简洁.
等长接收数据后可对接收处理清0来等待下次接收.
补充:
假如下位机的返回数据按地址号能确定接收字节长度,下列代码可实现接收不等长数据,仅供参考:
Private Sub MSComm1_OnComm()
On Error Resume Next
Dim BytReceived() As Byte
Dim strBuff As String
Dim strData As String
Dim i As Integer
Dim x As Integer
Select Case MSComm1.CommEvent
Case 2
MSComm1.InputLen = 0
strBuff = MSComm1.Input
BytReceived() = strBuff
For i = 0 To UBound(BytReceived)
If Len(Hex(BytReceived(i))) = 1 Then
strData = strData & "0" & Hex(BytReceived(i))
Else
strData = strData & Hex(BytReceived(i))
End If
Next
Text3 = Text3 + strData
If Left(strData, 2) = "00" And Len(strData) = 8 Then
Text1(0).Text = Left(strData, 8)
Call DataClear
ElseIf Left(strData, 2) = "01" And Len(strData) = 10 Then
Text1(1).Text = Left(strData, 10)
Call DataClear
End If
End Select
End Sub

  • 濡備綍鍐欎竴涓笌鏁版嵁搴撶浉杩炵殑Java绋嬪簭
    绛旓細涓銆侀鍏堜綘瑕佸畨瑁呭ソ鏁版嵁搴擄紝骞惰鍏惰繍琛岃捣鏉ャ備簩銆佸湪鏁版嵁搴撲腑鍑嗗濂戒綘闇瑕佺殑琛ㄤ笌鏁版嵁銆備笁銆佷笅杞界浉搴旂殑鏁版嵁搴撹繛鎺ュ櫒鍖咃紝骞舵斁鍦JAVA鎵鍦ㄧ洰褰曚笅鐨刲ib瀛愮洰褰曞唴銆傚洓銆佸弬鑰冪ず渚嬬▼搴忕悊瑙e悇姝ユ搷浣滅殑鎰忎箟銆備笅闈互MS SQL Server涓轰緥璇存槑涔嬨傚畨瑁呫佽繍琛岃鏁版嵁搴擄紝骞跺噯澶囧繀瑕佺殑鏁版嵁銆備粠浠ヤ笅缃戝潃涓嬭浇MSSQLServer鐨凧DBC...
  • java 濡備綍鍚戜覆鍙e彂閫佹寚浠
    绛旓細java 濡備綍鍚戜覆鍙e彂閫佹寚浠 100 鐜板湪鎴戞湁涓俯搴﹂噰闆嗚澶,閫氳繃RS232涓插彛鏉ヨ繛鎺,閲囬泦娓╁害鏁版嵁闇瑕佸彂閫佸崄鍏繘鍒堕噰闆嗗懡浠も淓B 90 01 55 2F鈥漞clipse閲鎬庝箞鏉ュ疄鐜板晩?mfrankc | 娴忚5616 娆 |涓炬姤 鎴戞湁鏇村ソ鐨勭瓟妗堟帹鑽愪簬2016-02-01 19:53:54 鏈浣崇瓟妗 涓句釜渚嬪瓙:byte[] bt = new byte{鈥︹; ???濡備綍瀹氫箟 ...
  • JAVA闂,鎬~!!
    绛旓細杩炴帴Access鎴戞湁涓涓緥瀛愶細import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.Statement;public class Connectaccess { Connection connect;Statement state;ResultSet rs;public Connectaccess() { init();} public void init() { try { Class.forName(...
  • 鎬庢牱鎶奡QL2000涓庣綉绔缁撳悎璧锋潵
    绛旓細System.out.println(rs.getString(1)+" "+rs.getString(2)+" "+rs.getString(3)+" "+rs.getFloat(4));} 鏄剧ず鎵浠ュ瓧娈靛 rs.close();stmt.close();}catch(Exception e){ e.printStackTrace();} } } 涔熷彲浠ラ氳繃鏁版嵁婧愭ˉ鎺ユ潵瀹炵幇锛屽叾婧愮爜濡備笅锛// 浣跨敤JDBC-ODBC妗寤虹珛鏁版嵁搴撹繛鎺 import...
  • java涓鏁版嵁搴(鍦ㄧ嚎鍏堢瓑 楂樻墜杩)
    绛旓細);/*鍙互鏇挎崲涓:*/ // PreparedStatement ps=conn.prepareStatement("select * from student");ResultSet rs=ps.executeQuery();/*閲嶇偣*/ while(rs.next()){ StudentDTO student=new StudentDTO();student.setStuNum(rs.getInt("stuNum"));student.setStuName(rs.getString("stuName"));...
  • JDBC璁块棶SQLserver2000
    绛旓細sql 2000 sp4琛ヤ竵銆係P4琛ヤ竵 灏辨槸杩炴帴涓嶄笂浣犵殑SQL鏈嶅姟鍣紝鎴戞兂瀵嗙爜鎴栫敤鎴峰悕閿欒浣犱笉浼氬嚭鐜板惂锛熻涓嬫槸浠涔堟搷浣滅幆澧冿紝杩樻湁涓滆タ鐨勭増鏈
  • java缃戜笂鍟嗗煄oracle鏁版嵁搴撹〃鎬庝箞鍒涘缓
    绛旓細Connection con=java.sql.DriverManager.getConnection(url,user,password);(3)鍒涘缓Statement瀵硅薄 渚嬪锛歋tatement stmt = con.createStatement();(4)璋冪敤骞舵墽琛孲QL璇彞 渚嬪锛歋tring sql = 鈥渟elect a,b,c from table1";//table1涓轰綘鎵瑕佹煡璇㈢殑琛ㄥ悕,a,b,c涓烘墍瑕佹煡璇㈢殑瀛楁 ResultSet rs = stmt....
  • 鎬庝箞鍦╡clipse涓娇鐢ㄦ暟鎹簱杩炴帴
    绛旓細4銆佹帴涓嬫潵瑙e帇缂╀笅杞界殑mysql jar鍖呭苟澶嶅埗.jar鏂囦欢銆5銆佸湪椤圭洰lib鍖呴偖浠朵腑閫夋嫨绮樿创绮樿创锛屽鍒秏ysql jar鍖呫6銆佸彸閿崟鍑籱ysql jar鍖呬互閫夋嫨鏋勫缓璺緞 - 娣诲姞鍒版瀯寤鸿矾寰勩7銆佹坊鍔犲畬鎴愬悗锛岄」鐩笌Mysql jar鍖呭叧鑱斻傜幇鍦ㄦ偍鍙互浣跨敤鐩稿叧鐨勭被鍜屾柟娉曘8銆佸湪椤圭洰涓垱寤轰竴涓柊鐨凧dbcTest1.java绫汇9銆佷箣鍚庨夋嫨閿洏...
  • 澶у浣跨敤JavaAPI鐨5涓妧宸
    绛旓細濡傛灉涓嶅枩娆娇鐢⊿pringBoot,閭d箞鍙互浣跨敤Dropwizard鍘绘惌寤篔AX-RS鎶鏈爤銆4.鐩戣搴旂敤鍜屾ц兘鎸囨爣 濡傛灉鏃犱换浣曟暟鎹殑鎯呭喌涓嬫槸寰堥毦鍙戠幇绋嬪簭鐨勯敊璇殑銆係pring Boot閫氳繃浣跨敤Actuator,鑳借鏀堕泦鎸囨爣鏁版嵁鍙樺緱瀹规槗锛屽彧闇瑕佸湪搴旂敤涓鍔犱竴涓緷璧栵紝濡備笅:<dependency><groupld>org.springframework.boot</groupld><artifactld>...
  • 瀛︾敓淇℃伅缁煎悎鏌ヨ绠$悊绯荤粺 JAVA绋嬪簭缂栧啓
    绛旓細(1)瀛︾敓鍩烘湰淇℃伅銆佽绋嬩俊鎭拰閫夎淇℃伅鐨勫綍鍏ュ姛鑳;(2)缁熻鏌ヨ鍔熻兘,鍙互鏌ヨ瀛︾敓淇℃伅銆佽绋嬩俊鎭拰閫夎淇℃伅(3)瀛︾敓鎴愮哗鏌ヨ鍔熻兘,鏌ヨ瀛︾敓鐨勫悇绉戞垚缁,璁$畻瀛︾敓鐨勫钩鍧囧垎, GPA鎴愮哗绛(4)鎺掑簭鍔熻兘,鍙互鎸夊鐢熷鍚嶃佸崟绉戞垚缁╁拰骞冲潎鎴愮哗绛夎繘琛屾帓搴忚璁℃濊矾.1. 寤虹珛褰曞叆瀛︾敓鎴愮哗鐨勭晫闈2. 褰曞叆鐨勫鐢熶俊鎭瓨鏀惧湪鏁版嵁搴撲腑3. ...
  • 扩展阅读:x86国产cpu ... javascript免费网站 ... java自学入门免费网站 ... 免费b站在线观看人数统计 ... jquerymobile日本ad ... 在线linux网站 ... java.52emu.cn ... javascript高级视频 ... javascript秘密花园官网 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网