91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

瑞芯微(EASY EAI)RV1126B I2C使用

廣州靈眸科技有限公司 ? 2026-01-04 09:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. I2C介紹

IIC又簡(jiǎn)寫成I2C,是一種串行通信總線,使用多主從架構(gòu)。

最初設(shè)計(jì)目的為了讓主板、嵌入式系統(tǒng)手機(jī)用來連接低速周邊設(shè)備。多用于小數(shù)據(jù)量的場(chǎng)合,有傳輸距離短,任意時(shí)刻只能有一個(gè)主機(jī)等特性。

Linux嵌入式應(yīng)用開發(fā)的情景下,完全可以不必理會(huì)IIC協(xié)議的詳細(xì)規(guī)定。只需要按照驅(qū)動(dòng)層提供給我們的操作IIC外設(shè)的操作接口函數(shù)就可以像操作linux中其他普通設(shè)備文件那樣輕松的操作IIC外設(shè)了。

1.1 開發(fā)板上I2C資源介紹

EASY EAI Nano-TB開發(fā)板預(yù)留引出了1路IIC資源:IIC_5,以供用戶自定義調(diào)用。確切的分部位置,如下圖所示:

wKgZO2lZxVOAb2X3ABZVWXedUhc148.jpg

1.2 硬件接線示意圖

wKgZO2lUw7qAYD_5AADYb7LhCcw830.jpg

本示例采用ADS1115電壓檢測(cè)模塊進(jìn)行輔助演示。此模塊功能是把檢測(cè)到的電壓(模擬信號(hào))轉(zhuǎn)化為數(shù)字信號(hào)存入寄存器中,然后以IIC的通信方式對(duì)外提供電壓信息的提取。

ADS1115模塊與EASY EAI Nano-TB的接線原理圖如下所示:

wKgZO2lZxVKAATgbAABuq_aL1JI571.jpg

2. 快速上手

2.1 開發(fā)環(huán)境準(zhǔn)備

如果您初次閱讀此文檔,請(qǐng)閱讀《入門指南/開發(fā)環(huán)境準(zhǔn)備/Easy-Eai編譯環(huán)境準(zhǔn)備與更新》,并按照其相關(guān)的操作,進(jìn)行編譯環(huán)境的部署。

在PC端Ubuntu系統(tǒng)中執(zhí)行run腳本,進(jìn)入EASY-EAI編譯環(huán)境,具體如下所示。

cd ~/develop_environment ./run.sh

wKgZPGkmcrqAUDHhAAGt1XOkqw8819.jpg

2.2 源碼下載以及例程編譯

首先,在虛擬機(jī)后臺(tái)終端,執(zhí)行以下命令,創(chuàng)建外設(shè)單例源碼管理目錄:

cd /opt mkdir -p EASY-EAI-Nano-TB/demo

首先,到【百度網(wǎng)盤】上下載相關(guān)的單例程序:

鏈接:https://pan.baidu.com/s/1Br608Hiff2Xs65PzWO_qWQ?pwd=1234

提取碼:1234

比如把單例程序下載到:此電腦\D:\BaiduNetdisk (無規(guī)定,用戶可自主選擇),如下圖所示。

wKgZPGlZxVOABk5XAAClvPQb7LE471.jpgwKgZPGlZxVOAVMveAAEl6-tWuWA146.jpgwKgZO2kmcruAekwKAAEv5Q2aAtI194.jpgwKgZPGlZxVOAA2TsAAD5k-hlVL4004.jpg

最后,進(jìn)入到對(duì)應(yīng)的例程目錄執(zhí)行編譯操作,具體命令如下所示:

cd EASY-EAI-Nano-TB/demo/08_IIC ./build.sh

注:

* 由于依賴庫(kù)部署在板卡上,因此交叉編譯過程中必須保持/mnt掛載。

wKgZO2lZxVOAVH2GAAFDauAeuRM282.jpg

編譯成功后,會(huì)生成一個(gè)test-ads1115的可執(zhí)行程序,并會(huì)自動(dòng)部署到開發(fā)板的/userdata/目錄中。

2.3 例程運(yùn)行

通過串口調(diào)試或ssh調(diào)試,進(jìn)入板卡后臺(tái),定位到例程部署的位置,如下所示:

cd /userdata

wKgZO2lZxVOAGOpPAAAcRB7OsvM874.jpg

執(zhí)行例程命令,如下所示:

sudo ./test-ads1115

執(zhí)行效果如下所示,利用探測(cè)分別觸碰3V3,1V8,GND三個(gè)端子,則可在終端測(cè)出對(duì)應(yīng)的電壓值。

wKgZPGlZxVSAfg8SAAC1mtBWJNQ097.jpg

3. C語(yǔ)言使用案例

ADS1115的C語(yǔ)言使用案例,代碼地址為08_IIC/test-ads1115/main.c,供用戶編碼參考。以下代碼展示了對(duì)ADS1115操作流程:

int32_t ads1115_config_register(uint32_t fd, uint8_t configH, uint8_t configL) { uint8_t reg_data[3] = {ADS1015_REG_POINTER_CONFIG, configH, configL}; return iic_write(fd, ADS1115_ADDRESS, reg_data, sizeof(reg_data)); } int16_t ads1115_read_data(uint32_t fd) { bool ret = false; /*讀取數(shù)據(jù)*/ uint8_t tx_data[1] = {ADS1015_REG_POINTER_CONVERT}; if(iic_write(fd, ADS1115_ADDRESS, tx_data, sizeof(tx_data)) < sizeof(tx_data)){ printf("iic write faild !\n"); return -1; } uint8_t rx_data[3]={0}; if(iic_read(fd, ADS1115_ADDRESS, rx_data, 2) < 0){ printf("iic read faild !\n"); return -1; } int16_t data = rx_data[0]*256+rx_data[1]; return data; } double ads1115_get_voltage_val(uint32_t fd, uint8_t configH, uint8_t configL) { /*配置寄存器*/ if(ads1115_config_register(fd, configH, configL) < 0){ printf("ads1115 config register faild\n"); return 0.0; } usleep(100 * 1000); int16_t ad_val = ads1115_read_data(fd); if((0x7FFF == ad_val)|(0X8000 == ad_val)) {//是否超量程了 ad_val = 0; printf("ads1115 over PGA\r\n"); } double val = 0.0; switch((0x0E&configH)>>1)//量程對(duì)應(yīng)的分辨率 { case(0x00): val = (double)ad_val*187.5/1000000.0; break; case(0x01): val = (double)ad_val*125/1000000.0; break; case(0x02): val = (double)ad_val*62.5/1000000.0; break; case(0x03): val = (double)ad_val*31.25/1000000.0; break; case(0x04): val = (double)ad_val*15.625/1000000.0; break; case(0x05): val = (double)ad_val*7.8125/1000000.0; break; default: val = 0.0; break; } return val; } int main(int argc, char const *argv[]) { bool ret = false; double val; int fd = iic_init("/dev/i2c-2"); if(fd < 0){ printf("iic init faild \n"); return -1; } if(0 != iic_set_addr_len(fd, 7)){ return -1; } if(0 != iic_set_addr(fd, ADS1115_ADDRESS)){ return -1; } while (1) { val = ads1115_get_voltage_val(fd, CONFIG_REG_H, CONFIG_REG_L); printf("val: %f V\r\n",val); sleep(2); } iic_release(fd); return 0; }

其中iic_init(),iic_set_addr_len(),iic_set_addr(),iic_read(),iic_write(),iic_release()是對(duì)系統(tǒng)調(diào)用的易用化封裝。具體實(shí)現(xiàn)于08_IIC/commonApi/iic.c

除了需要有對(duì)IIC硬件資源進(jìn)行操作的接口以外,要需要清楚IIC總線上的IIC從機(jī)設(shè)備的寄存器操作方法。如ADS1115電壓檢測(cè)芯片,與其寄存器相關(guān)的操作定義均在08_IIC/test-ads1115/ads1115.h中實(shí)現(xiàn)。

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

    關(guān)注

    88

    文章

    11756

    瀏覽量

    218997
  • 瑞芯微
    +關(guān)注

    關(guān)注

    27

    文章

    790

    瀏覽量

    54264
  • EASY-EAI靈眸科技
    +關(guān)注

    關(guān)注

    4

    文章

    66

    瀏覽量

    3607
  • RV1126B
    +關(guān)注

    關(guān)注

    0

    文章

    54

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    (EASY EAI)RV1126B 音頻輸入

    1.聲卡資源介紹EASY-EAI-Nano-TB僅有一塊由RV1126B主控輸出的聲卡。通過串口調(diào)試或ssh調(diào)試,可以進(jìn)入開發(fā)板終端。執(zhí)行aplay命令查看聲卡相關(guān)的詳細(xì)信息,如下所示
    的頭像 發(fā)表于 12-18 13:41 ?2354次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音頻輸入

    (EASY EAI)RV1126B PWM使用

    1.PWM簡(jiǎn)介1.1開發(fā)板PWM資源1.2查找PWM節(jié)點(diǎn)rv1126b的pwm資源表如下:【PWM1CH0】對(duì)應(yīng)的是pwm1_4ch_0,寄存地址為20700000?!綪WM1CH1】對(duì)應(yīng)
    的頭像 發(fā)表于 01-06 10:49 ?6620次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> PWM使用

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】+初識(shí)篇

    Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的開發(fā)板,它基于RV1126B處理器,集成了4個(gè)Cortex-A53及獨(dú)立的NEON協(xié)處理器,它支持4K@30fps的H.
    發(fā)表于 10-25 22:06

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-燈閃

    GPIO5_C1 紅綠燈板 LEDy 接EASY EAI Nano-TB(RV1126B)開發(fā)板 P1 的 37 EASY
    發(fā)表于 11-01 21:26

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目

    EAI Nano-TB(RV1126B)開發(fā)板 功能 GPIO5_C0 紅綠燈板 LEDg 綠 接EASY EAI Nano-TB(
    發(fā)表于 11-02 18:34

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈按鈕項(xiàng)目

    可以作為紅綠燈項(xiàng)目輸入按鈕。 EASY EAI Nano-TB(RV1126B)開發(fā)板按鍵S2是LOAD按鍵,用于固件更新和CPU的SARADC0_VIN0_KEY/RECOVERY相
    發(fā)表于 11-03 10:00

    請(qǐng)問各位大佬,如何解決, RV1126B 使用 mpp 自帶工具 調(diào)試時(shí),內(nèi)核直接報(bào)錯(cuò)崩潰!

    請(qǐng)問各位大佬,如何解決, RV1126B 使用 mpp 自帶工具 調(diào)試時(shí),內(nèi)核直接報(bào)錯(cuò)崩潰! 調(diào)試輸出如下:
    發(fā)表于 11-19 16:01

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】+1、開箱上電

    ,避免因接觸不良導(dǎo)致顯示或采集異常。 2 硬件解析:強(qiáng)勁AI核心與豐富接口 2.1 核心處理器性能 EASY EAI Nano-TB開發(fā)板的核心基于
    發(fā)表于 11-19 21:39

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】+3、GPIO操作

    GPIO是嵌入式系統(tǒng)開發(fā)中最基礎(chǔ)且重要的功能模塊。在EASY EAI Nano-TB開發(fā)板上,GPIO提供了與外部世界交互的直接通道。 1. RV1126B特性 RV1126B GPI
    發(fā)表于 11-20 21:51

    EASY EAI Nano-TB(RV1126B)開發(fā)板試用】介紹、系統(tǒng)安裝

    ,并介紹了系統(tǒng)鏡像安裝部署的相關(guān)流程。 介紹 EASY-EAI-Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的AIOT主板。 核心板基于
    發(fā)表于 12-23 18:05

    RV1126系列選型指南:從RV1126RV1126B,一文看懂升級(jí)差異

    2025年7月,正式發(fā)布新一代AI視覺芯片RV1126B。作為其金牌方案商,EASYEAI靈眸科技同步推出搭載該芯片的AIoT核心板EAI11
    的頭像 發(fā)表于 09-04 10:50 ?4509次閱讀
    <b class='flag-5'>RV1126</b>系列選型指南:從<b class='flag-5'>RV1126</b>到<b class='flag-5'>RV1126B</b>,一文看懂升級(jí)差異

    【免費(fèi)試用】EASY EAI Nano-TB(RV1126B)開發(fā)套件評(píng)測(cè)

    EASY-EAI-Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的AIOT主板。核心板基于RV1126B處理器設(shè)計(jì),并引入了新
    的頭像 發(fā)表于 09-23 08:09 ?1040次閱讀
    【免費(fèi)試用】<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b> Nano-TB(<b class='flag-5'>RV1126B</b>)開發(fā)套件評(píng)測(cè)

    RV1126B特性概述

    RV1126BRockchip在2025年第二季度全新推出的Arm架構(gòu)AI視覺芯片,搭載4核Cortex-A53與自研3Tops算力NPU。全面替代上一代的
    的頭像 發(fā)表于 10-09 11:22 ?1770次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b>特性概述

    替代升級(jí)實(shí)錘!實(shí)測(cè)RV1126B,CPU性能吊打RV1126

    AI智能芯片迭代提速,推出了全新的Arm架構(gòu)AI視覺芯片RV1126B,是否替換RV1126,CPU性能是擠牙膏還是大突破。帶著這些核
    的頭像 發(fā)表于 12-11 17:13 ?2219次閱讀
    替代升級(jí)實(shí)錘!實(shí)測(cè)<b class='flag-5'>RV1126B</b>,CPU性能吊打<b class='flag-5'>RV1126</b>

    (EASY EAI)RV1126B 人體關(guān)鍵點(diǎn)識(shí)別

    的特點(diǎn)。本人員檢測(cè)算法在數(shù)據(jù)集表現(xiàn)如下所示:基于EASY-EAI-Nano-TB(RV1126B)硬件主板的運(yùn)行效率:17個(gè)人體關(guān)鍵點(diǎn)索引定義:2.快速上手2.1開發(fā)
    的頭像 發(fā)表于 01-23 10:13 ?2165次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 人體關(guān)鍵點(diǎn)識(shí)別