Java調(diào)用明華RF讀寫器DLL文件過程解析
這篇文章主要介紹了Java調(diào)用明華RF讀寫器DLL文件過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
首先jdk必須得是32位的,IDE也必須是32位的(我用的idea,所以為了使用32位的,下載了2018年1月版本的)。
明華RF讀寫器演示文件提供了一份名為mwrf32.dll的動態(tài)鏈接庫文件
java如果想要調(diào)用的話,就必須使用JNI或者JNA的方式,畢竟跨語言了
首先在pom.xml文件中空白地方,右鍵選擇Dependency,在里面搜索jna,選擇jna:5.4.0或者jna-platform 回車 導(dǎo)入依賴。
依賴導(dǎo)入成功后
創(chuàng)建一個文件夾取名為impl
在其中創(chuàng)建接口名為Connect 繼承 Library
public interface Connect extends Library { Connect jihiseaDLL = Native.loadLibrary("mwrf32.dll",Connect.class); int rf_init(int port,int baud);//對mwrf32.dll中需要使用的rf_init函數(shù)進(jìn)行聲明 }
創(chuàng)建ConnectImpl類引入Connect接口。
public class ConnectImpl implements Connect { public int rf_init(int port,int baud) { int icdev = jihiseaDLL.rf_init(0,9600);//設(shè)置端口號和波特率然后初始化端口 return icdev; } }
這樣之后就可以調(diào)用了,完成了對讀寫器的初始化。
ConnectImpl systeminit = new ConnectImpl();//在這里對全局初始化icdev int icdev = systeminit.rf_init(0,9600);
電腦插上讀寫器之后,System.out.println返回一下icdev之后查看是否成功
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Spring?Boot?利用?XML?方式整合?MyBatis
這篇文章主要介紹了Spring?Boot?利用?XML?方式整合?MyBatis,文章圍繞主題的相關(guān)資料展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,組要的小伙伴可以參考一下2022-05-05Java使用JDBC連接Oracle_MSSQL實(shí)例代碼
這篇文章主要介紹了Java使用JDBC連接Oracle_MSSQL實(shí)例代碼,需要的朋友可以參考下2014-01-01IntelliJ IDEA 中使用jRebel進(jìn)行 Java 熱部署教程圖解
Rebel是一款JAVA虛擬機(jī)插件,它使得JAVA程序員能在不進(jìn)行重部署的情況下,即時看到代碼的改變對一個應(yīng)用程序帶來的影響。本文通過圖文并茂的形式給大家介紹了IntelliJ IDEA 中使用jRebel進(jìn)行 Java 熱部署教程圖解,需要的朋友參考下吧2018-04-04SpringBoot+Spring?Data?JPA整合H2數(shù)據(jù)庫的示例代碼
H2數(shù)據(jù)庫是一個開源的關(guān)系型數(shù)據(jù)庫,本文重點(diǎn)給大家介紹SpringBoot+Spring?Data?JPA整合H2數(shù)據(jù)庫的示例代碼,感興趣的朋友跟隨小編一起看看吧2022-02-02Java?實(shí)現(xiàn)使用Comparable按照我們指定的規(guī)則排序
這篇文章主要介紹了Java?如何使用Comparable按照我們指定的規(guī)則排序,通過練習(xí)創(chuàng)建TreeSet集合使用無參構(gòu)造方法,并按照年齡從小到大的順序排序,若年齡相同再按照姓名的字母順序排序展開內(nèi)容,需要的朋友可以參考一下2022-04-04如何解決UnsupportedOperationException異常問題
這篇文章主要介紹了如何解決UnsupportedOperationException異常問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-05-05