一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

英創(chuàng)信息技術(shù)JAVA操作英創(chuàng)主板SPI接口簡介

英創(chuàng)信息技術(shù) ? 來源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2020-02-06 11:09 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

2017年9月,英創(chuàng)在Linux的文件系統(tǒng)中移植了針對嵌入式Linux的JRE(Java Runtime Environment),能夠支持Java應(yīng)用程序的運(yùn)行。由于Java語言不能直接訪問硬件資源,英創(chuàng)提供了Java硬件支持包,主要支持的工控接口有:以太網(wǎng)、串口、CAN、GPIO、SPI、I2C、RTC等。本文主要介紹使用Java語言調(diào)用英創(chuàng)Java硬件支持包,操作英創(chuàng)主板SPI接口的過程。

1、SPI簡介

SPI(Synchronous Peripheral Interface)是一種同步串行數(shù)據(jù)通訊總線接口,常用于連接ADCs、EPROMs、Sensors或者是其他一些微控制器,SPI具有兩種工作模式:master和slave模式,其中master模式提供時鐘信號。

圖1SPI主從設(shè)備信號連接

SPI有四種數(shù)據(jù)傳輸模式,如表1所示,主要差別在于:輸出串行同步時鐘極性(CPOL)和相位(CPHA)可以進(jìn)行配置。

SPI mode CPOL CPHA Comments
0 0 0 時鐘的空閑狀態(tài)為低電平;上升沿采樣
1 0 1 時鐘的空閑狀態(tài)為低電平;下降沿采樣
2 1 0 時鐘的空閑狀態(tài)為高電平;下降沿采樣
3 1 1 時鐘的空閑狀態(tài)為高電平;上升沿采樣

表1SPI四種數(shù)據(jù)傳輸模式

2、SPI傳輸數(shù)據(jù)結(jié)構(gòu)

英創(chuàng)提供的SPI傳輸數(shù)據(jù)結(jié)構(gòu)源文件為emtronix.hardware.SPITransfer.java。每一個SPITransfer類實(shí)例代表一次SPI傳輸,其主要成員變量如下所示:

public class SPITransfer {

/*寫數(shù)據(jù)緩存,只讀模式時為null*/

public byte[] tx_buf;

/*讀數(shù)據(jù)緩存,只寫模式時為null */

public byte[] rx_buf;

/* 緩存長度

* 全雙工時,讀寫緩存應(yīng)該長度相同;

* 半雙工時,非工作狀態(tài)的緩存為null

*/

public int len;

/*SPI時鐘頻率*/

public int speed_hz;

/*兩個SPITransfer之間的延時*/

public char delay_usecs;

/*SPI傳輸字寬*/

public byte bits_per_word;

/*本次傳輸完成之后,是否改變片選*/

public byte cs_change;

public int pad;

}

SPI傳輸使用同步時鐘,在發(fā)送的同時,也在接收數(shù)據(jù)。因此其傳輸數(shù)據(jù)結(jié)構(gòu)要同時擁有寫數(shù)據(jù)緩存tx_buf和讀數(shù)據(jù)緩存rx_buf才能支持這種全雙工工作模式,并且兩個緩存區(qū)域長度都為len字節(jié)。當(dāng)然,如果要使用半雙工讀/寫,只需要讓tx_buf/rx_buf等于null就可以了。speed_hz為SPI的時鐘頻率,esm335x最大時鐘頻率48MHz,esm6800最大時鐘頻率60MHz;delay_usecs表示連續(xù)傳輸?shù)腡ransfer之間的間隔,單位為微秒;bits_per_word表示一個字有幾個比特組成,最大32;cs_change表示本次傳輸完成后是否修改片選信號;pad暫時不用設(shè)置,保留。

3、SPI傳輸接口函數(shù)

英創(chuàng)提供的SPI傳輸接口源文件為emtronix.hardware.SPI.java。用戶在實(shí)例化SPI類后可以調(diào)用Open、SetSPI、Transfer、Close對SPI硬件接口進(jìn)行操作。SPI類的具體信息如下,其中mFd為設(shè)備描述符,用戶不用設(shè)置,由接口函數(shù)自動修改。

public class SPI {

private int mFd;

/**

*打開spi主設(shè)備,返回fd.自動修改mFd

*@paramdev "/dev/spidev1.0"

*@return成功返回spi主設(shè)備描述符,失敗返回-1

*/

publicnativeintOpen(String dev);

/**

*設(shè)置SPI的工作參數(shù)

*@paramargs "S16000000-M1-B16-D100" S為時鐘速率,M為數(shù)據(jù)傳輸模式(0-3),B為數(shù)據(jù)位寬,D發(fā)送完后的延時

* 四個參數(shù)之間不分順序“M1-D100-B16-S16000000”與之前的相同

*@return成功返回0;失敗返回-1

*/

publicnativeintSetSPI(String args);

/**

* SPI一次傳輸,trans.tx_buf=null,trans.rx_buf != null, only receive;

* trans.tx_buf!=null,trans.rx_buf=null,only send;

* trans.tx_buf!=null,trans.rx_buf!=null, send&receive

*@paramtrans,一次spi傳輸參數(shù)

*@paramntrans,進(jìn)行ntrans次spitransfer

*@return成功返回0;失敗返回-1

*/

publicnativeintTransfer(SPITransfer[] trans,intntrans);

/**

*關(guān)閉SPI主設(shè)備

*@return成功返回0;失敗返回-1

*/

publicnativeintClose() ;

}

4、SPI測試程序

SPI傳輸接口中操作SPI的接口函數(shù)聲明都有native的前綴,表明其實(shí)現(xiàn)部分在本地的庫當(dāng)中。英創(chuàng)將所有英創(chuàng)主板的硬件接口訪問函數(shù)的實(shí)現(xiàn)部分編譯成了動態(tài)鏈接庫libemtronixhardware.so,放在了文件系統(tǒng)/lib目錄下。

在編寫SPI傳輸主程序的時候,首先需要加載該庫,如下所示:

publicclasstestSPIMain {

static{

System.loadLibrary("emtronixhardware");

}

publicstaticvoidmain(String[] args) {

...

}

}

然后,就可以在main函數(shù)中實(shí)例化SPI類,并打開主板的SPI設(shè)備:

SPI spi = new SPI();

spi.Open("/dev/spidev1.0");

接著,初始化SPI傳輸數(shù)據(jù)結(jié)構(gòu),發(fā)送數(shù)據(jù):

int transcnt = 1;

SPITransfer[] trans = new SPITransfer[transcnt];

trans[0] = new SPITransfer();

trans[0].tx_buf = tArray;

trans[0].rx_buf = rArray;

trans[0].len = bytes;

trans[0].speed_hz = speed;

trans[0].bits_per_word = (byte) bitspw;

if(spi.Transfer(trans, transcnt) == 0) {

//傳輸成功,處理數(shù)據(jù)

}

其中,transcnt表示SPITransfer的個數(shù),每一個SPITransfer需要用戶自己實(shí)例化。

最后,使用完畢后關(guān)閉SPI設(shè)備:

spi.Close();

5、SPI測試程序運(yùn)行結(jié)果

運(yùn)行SPI傳輸Java主程序需要把編譯結(jié)果bin文件中的所有目錄文件拷貝到主板/mnt/nandflash,或者通過nfs掛載到主板/mnt/nfs目錄下。然后,使用“java 包名.類名”運(yùn)行,如下圖所示:

圖2運(yùn)行SPI測試程序

以上就是使用Java操作英創(chuàng)主板SPI接口的介紹,感興趣的客戶可以通過電話或者郵件聯(lián)系英創(chuàng)工程師。我們將提供Java示例程序源碼供客戶參考。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11511

    瀏覽量

    213815
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6102

    瀏覽量

    36307
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    中星微技術(shù)斬獲2025金???b class='flag-5'>創(chuàng)企業(yè)獎

    6月14日,由中國證券報主辦的2025科創(chuàng)金牛獎頒獎典禮在上海市舉行,2025科創(chuàng)金牛獎獲獎名單現(xiàn)場揭曉。其中中星微技術(shù)獲得新一代信息技術(shù)金???b class='flag-5'>創(chuàng)
    的頭像 發(fā)表于 06-16 14:16 ?759次閱讀

    科普|信創(chuàng)是什么?一文讀懂“信息技術(shù)應(yīng)用創(chuàng)新”戰(zhàn)略

    什么是信創(chuàng)?信創(chuàng),即“信息技術(shù)應(yīng)用創(chuàng)新”,是國家推動IT系統(tǒng)自主可控、安全可控的重要戰(zhàn)略工程。它不僅是技術(shù)層面的創(chuàng)新,更承載著保障國家網(wǎng)絡(luò)安全、推動產(chǎn)業(yè)升級和實(shí)現(xiàn)數(shù)字主權(quán)的重任。簡單來
    的頭像 發(fā)表于 06-13 10:06 ?2010次閱讀
    科普|信<b class='flag-5'>創(chuàng)</b>是什么?一文讀懂“<b class='flag-5'>信息技術(shù)</b>應(yīng)用創(chuàng)新”戰(zhàn)略

    諾達(dá)斬獲第四屆“創(chuàng)贏未來”集成電路賽道一等獎

    日前,“創(chuàng)贏未來”第四屆長三角G60科創(chuàng)走廊科技與產(chǎn)業(yè)創(chuàng)新大賽(松江賽區(qū))暨第五屆“海聚英才”全球創(chuàng)新創(chuàng)業(yè)大賽(松江區(qū)選拔賽)成功舉辦,諾達(dá)憑借其EDA軟件及解決方案,從80余個硬科技項(xiàng)目中脫穎而出,斬獲集成電路賽道一等獎!
    的頭像 發(fā)表于 05-23 10:16 ?442次閱讀

    創(chuàng)浪潮下,國產(chǎn)主板有什么新的發(fā)展機(jī)遇?

    信息技術(shù)應(yīng)用創(chuàng)新浪潮的推動下,國產(chǎn)主板迎來了諸多新的發(fā)展機(jī)遇。信創(chuàng)產(chǎn)業(yè)旨在實(shí)現(xiàn)信息技術(shù)領(lǐng)域的自主可控,這一戰(zhàn)略目標(biāo)為國產(chǎn)主板的發(fā)展提供了廣
    的頭像 發(fā)表于 05-09 09:24 ?219次閱讀
    信<b class='flag-5'>創(chuàng)</b>浪潮下,國產(chǎn)<b class='flag-5'>主板</b>有什么新的發(fā)展機(jī)遇?

    韌科技推出新主控,4K隨機(jī)讀寫超120萬IOPS創(chuàng)行業(yè)標(biāo)桿

    了一款新的主控芯片,這顆芯片在技術(shù)上有了哪些突破?針對當(dāng)前洶涌而來的AI技術(shù),又有哪些布局?為此,電子發(fā)燒友網(wǎng)采訪到了韌科技的CEO劉剛和數(shù)據(jù)存儲技術(shù)副總裁陳杰。 ?
    的頭像 發(fā)表于 03-26 00:10 ?2338次閱讀
    <b class='flag-5'>英</b>韌科技推出新主控,4K隨機(jī)讀寫超120萬IOPS<b class='flag-5'>創(chuàng)</b>行業(yè)標(biāo)桿

    JavaSPI機(jī)制詳解

    作者:京東物流 楊葦葦 1.SPI簡介 SPI(Service Provicer Interface)是Java語言提供的一種接口發(fā)現(xiàn)機(jī)制,
    的頭像 發(fā)表于 03-05 11:35 ?784次閱讀
    <b class='flag-5'>Java</b>的<b class='flag-5'>SPI</b>機(jī)制詳解

    飛騰助力首屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽圓滿落幕

    近日,由中國教育技術(shù)協(xié)會主辦,教育部教育管理信息中心教育信創(chuàng)實(shí)驗(yàn)室、公安部第三研究所、中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會信創(chuàng)工委會支持,北京航空航天
    的頭像 發(fā)表于 12-24 09:57 ?516次閱讀

    威騰CHE100變頻器原理圖

    圖紙包括:威騰變頻器電源及通訊電路騰變頻器TMS320LF2406外圍電路、威騰變頻器電流檢測電路、威騰變頻器電源及通訊電路、
    發(fā)表于 12-16 11:06 ?11次下載

    國產(chǎn)工控主板,信創(chuàng)產(chǎn)業(yè)發(fā)展新引擎

    在當(dāng)今科技飛速發(fā)展的時代,信創(chuàng)產(chǎn)業(yè)正成為國家戰(zhàn)略的重要支撐。而我們的國產(chǎn)工控主板,以其卓越的性能和可靠的品質(zhì),為信創(chuàng)產(chǎn)業(yè)的發(fā)展注入強(qiáng)大動力。國產(chǎn)工控主板在信
    的頭像 發(fā)表于 11-06 10:29 ?674次閱讀

    中科創(chuàng)達(dá)榮獲2024年軟件和信息技術(shù)服務(wù)優(yōu)秀企業(yè)

    及前百家企業(yè)”名單。中科創(chuàng)達(dá)憑借非凡的技術(shù)實(shí)力與持續(xù)的創(chuàng)新能力,成功入選“2024年度軟件和信息技術(shù)服務(wù)競爭力百強(qiáng)企業(yè)”以及“2024年軟件和信息技術(shù)服務(wù)優(yōu)秀企業(yè)”。
    的頭像 發(fā)表于 10-30 11:44 ?975次閱讀

    銳恩科技引領(lǐng)微控制器MCU技術(shù)創(chuàng)新,賦能多元化應(yīng)用!

    ,成為國家高新技術(shù)半導(dǎo)體企業(yè)的佼佼者。銳恩科技不僅致力于為客戶提供高可靠性、高性能、高性價比的一站式半導(dǎo)體芯片供應(yīng)服務(wù),更在8位和32位MCU市場不斷創(chuàng)新,推動技術(shù)進(jìn)步與產(chǎn)品應(yīng)用拓展。
    發(fā)表于 09-29 13:40

    引領(lǐng)智能未來:銳恩科技的國產(chǎn)低功耗單片機(jī)ENMCU

    在科技飛速發(fā)展的今天,低功耗單片機(jī)的應(yīng)用越來越廣泛,尤其是在安防監(jiān)控、智能家居和微波雷達(dá)照明等領(lǐng)域。作為國內(nèi)專精特新國家高新技術(shù)半導(dǎo)體企業(yè),銳恩科技致力于為客戶提供高性能、低功耗的單片機(jī)解決方案
    發(fā)表于 09-26 17:16

    銳恩科技,以實(shí)力打造國產(chǎn)單片機(jī)替代品牌!

    今天我們要介紹的深圳銳恩科技的單片機(jī)。 鑒于我國集成電路產(chǎn)業(yè)起步較晚,核心研發(fā)技術(shù)非常的短缺,導(dǎo)致了我國芯片需要依賴進(jìn)口。而可替代進(jìn)口MCU的國產(chǎn)芯片,產(chǎn)品性能必須要穩(wěn)定。 深圳銳恩科技是一國
    發(fā)表于 09-25 09:49

    創(chuàng)國產(chǎn)化背景下的工控主板發(fā)展現(xiàn)狀

    創(chuàng),是信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)業(yè)的簡稱,于2016年“信創(chuàng)工委會”(信息技術(shù)應(yīng)用創(chuàng)新工作委員會)提出,目的就是要推動我們國內(nèi)軟硬件關(guān)鍵技術(shù)的研發(fā)
    的頭像 發(fā)表于 09-21 16:15 ?880次閱讀

    中軟國際信創(chuàng)服務(wù)助力大連信創(chuàng)產(chǎn)業(yè)發(fā)展

    為進(jìn)一步激發(fā)大連本地信創(chuàng)產(chǎn)業(yè)生態(tài)的活力與潛力,搭建一個高效、開放的交流平臺。由大連軟件行業(yè)協(xié)會攜手大連市信息技術(shù)應(yīng)用創(chuàng)新綜合服務(wù)中心主辦,中軟國際協(xié)辦的,2024年大連市信息技術(shù)應(yīng)用創(chuàng)新產(chǎn)業(yè)發(fā)展大會
    的頭像 發(fā)表于 08-27 16:49 ?1312次閱讀