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

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

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

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

【昉·星光 2(VisionFive 2)RISC-V單板計算機】板上直接開發(fā)-USB手柄按鍵采集

嵌入式USB開發(fā) ? 來源:嵌入式USB開發(fā) ? 作者:嵌入式USB開發(fā) ? 2023-07-21 09:06 ? 次閱讀

前言

前面我們直接在開發(fā)板上安裝了GCC等開發(fā)環(huán)境,可以直接在板上進行開發(fā)。

剛好手里有個USB的游戲手柄,我們就來編寫代碼讀取手柄按鍵,體驗下板上直接C開發(fā)。

輸入設(shè)備

圖片1.png

插入USB手柄,可以看到多了/dev/input文件夾,多了event0設(shè)備
圖片2.png

代碼

vi key.c添加如下代碼

1.  /* 單獨測試:#define KEY_TEST 1
1.  * 作為接口:#define KEY_TEST 0
1.  * 編譯 aarch64-linux-gnu-gcc key.c -o key -lpthread
1.  * 運行 chmod +x key
1.  *      ./key /dev/input/event8
1.  */
1.
1. #include< stdint.h >
1. #include< stdio.h >
1. #include< stdlib.h >
1. #include< string.h >
1. #include< unistd.h >
1.
1. #include< pthread.h >
1.
1. #include < linux/input.h >
1. #include < sys/types.h >
1. #include < sys/stat.h >
1. #include < fcntl.h >
1.
1. #define KEY_TEST 1
1.
1. int s_keys_fd = -1;
1. uint32_t s_keys_state = 0;
1.
1.
1. void key_setstate(int code , int vaule, uint32_t* key)
1. {
1.  if(vaule == 0)
1.  {
1.   switch(code)
1.   {
1.    case 296:
1.     *key &= ~(1u< 3);
1.    break;
1.    case 297:
1.     *key &= ~(1u< 4);
1.    break;
1.    case 288:
1.     *key &= ~(1u< 5);
1.    break;
1.    case 289:
1.     *key &= ~(1u< 8);
1.    break;
1.    case 290:
1.     *key &= ~(1u< 6);
1.    break;
1.    case 291:
1.     *key &= ~(1u< 7);
1.    break;
1.    case 292:
1.     *key &= ~(1u< 1);
1.    break;
1.    case 294:
1.     *key &= ~(1u< 2);
1.    break;
1.    default:
1.    break;
1.   }
1.  }
1.  else
1.  {
1.   switch(code)
1.   {
1.    case 296:
1.     *key |= (1u< 3);
1.    break;
1.    case 297:
1.     *key |= (1u< 4);
1.    break;
1.    case 288:
1.     *key |= (1u< 5);
1.    break;
1.    case 289:
1.     *key |= (1u< 8);
1.    break;
1.    case 290:
1.     *key |= (1u< 6);
1.    break;
1.    case 291:
1.     *key |= (1u< 7);
1.    break;
1.    case 292:
1.     *key |= (1u< 1);
1.    break;
1.    case 294:
1.     *key |= (1u< 2);
1.    break;
1.    default:
1.    break;
1.   }
1.  }
1. }
1.
1. /*
1.  * SELECT 296   SELECT   3
1.  * START  297   START    4
1.  * UP     288   右上     5
1.  * RIGHT  289   右右     8
1.  * DOWN   290   右下     6
1.  * LEFT   291   右左     7
1.  * A      292   左前上    1
1.  * B      294   左前下    2
1.  */
1. int key_getstate(int key)
1. {
1.  if(s_keys_state & (1u<

編譯

gcc key.c -o key

測試

按不同的按鍵,打印如下
圖片3.png

總結(jié)

可以看到直接在板上開發(fā)非常方便,免去了交叉編譯的繁瑣。

審核編輯:湯梓紅

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

    關(guān)注

    19

    文章

    7607

    瀏覽量

    89823
  • 編程
    +關(guān)注

    關(guān)注

    88

    文章

    3673

    瀏覽量

    94692
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5389

    瀏覽量

    100891
  • 交叉編譯
    +關(guān)注

    關(guān)注

    0

    文章

    32

    瀏覽量

    12802
  • 單板計算機
    +關(guān)注

    關(guān)注

    0

    文章

    82

    瀏覽量

    15863
  • RISC-V
    +關(guān)注

    關(guān)注

    46

    文章

    2461

    瀏覽量

    48006
  • RISC-V處理器
    +關(guān)注

    關(guān)注

    0

    文章

    80

    瀏覽量

    10258
收藏 人收藏

    評論

    相關(guān)推薦

    ·星光 2VisionFive 2RISC-V單板計算機】嘗試玩3D賽車-幀率有點低

    ·星光 2VisionFive 2RISC-V單板計
    的頭像 發(fā)表于 07-21 09:05 ?1408次閱讀
    【<b class='flag-5'>昉</b>·<b class='flag-5'>星光</b> <b class='flag-5'>2</b>(<b class='flag-5'>VisionFive</b> <b class='flag-5'>2</b>)<b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>】嘗試玩3D賽車-幀率有點低

    ·星光 2VisionFive 2RISC-V單板計算機】SDL開發(fā)

    ·星光 2VisionFive 2RISC-V單板計
    的頭像 發(fā)表于 07-21 09:08 ?1630次閱讀
    【<b class='flag-5'>昉</b>·<b class='flag-5'>星光</b> <b class='flag-5'>2</b>(<b class='flag-5'>VisionFive</b> <b class='flag-5'>2</b>)<b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>】SDL<b class='flag-5'>開發(fā)</b>

    ·星光 2 高性能RISC-V單板計算機體驗】+3、系統(tǒng)功能測試

    ·星光 2 高性能RISC-V單板計算機體驗】+3、系統(tǒng)功能測試
    的頭像 發(fā)表于 07-26 08:59 ?1478次閱讀
    【<b class='flag-5'>昉</b>·<b class='flag-5'>星光</b> <b class='flag-5'>2</b> 高性能<b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>體驗】+3、系統(tǒng)功能測試

    ·星光單板計算機正式發(fā)售,加速RISC-V生態(tài)發(fā)展

    RISC-V Summit 2021大會上,賽科技(簡稱“賽”)作為中國RISC-V軟硬件生態(tài)的領(lǐng)導(dǎo)者,宣布“·
    發(fā)表于 12-09 09:22 ?1375次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b><b class='flag-5'>單板計算機</b>正式發(fā)售,加速<b class='flag-5'>RISC-V</b>生態(tài)發(fā)展

    ·星光 2 高性能RISC-V單板計算機體驗】VisionFive2開箱+安裝Ubuntu

    ·星光 2 高性能RISC-V單板計算機體驗】VisionFive2開箱+安裝Ubuntu
    發(fā)表于 02-21 17:49

    科技·星光RISC-V單板計算機首發(fā)試用

    ·星光VisionFive全球第一代高性價比的可運行Linux的RISC-V單板計算機,采用64位RI
    發(fā)表于 04-12 10:14

    RISC-V專題】賽科技·星光RISC-V單板計算機首發(fā)試用

    ! 上海賽科技作為此次活動的合作廠商,同步上線·星光RISC-V單板計算機VisionFive
    發(fā)表于 04-14 15:17

    RISC-V VisionFive星光單板計算機)系列課程

    利用賽科技VisionFive單板計算機學(xué)習(xí)Linux系統(tǒng)第一期:交叉編譯是什么第二期:學(xué)習(xí)和使用RISC-V(第一部分)第三期:在VisionF
    發(fā)表于 04-15 15:01

    RISC-V專題】·星光 2VisionFive 2RISC-V單板計算機免費試用

    VisionFive 2是全球首款集成3D GPU的高性能量產(chǎn)RISC-V 單板計算機 。與上一代相比,VisionFive
    發(fā)表于 05-16 11:26

    ·星光 2 高性能RISC-V單板計算機體驗】2更換Debian操作系統(tǒng)

    接上兩篇:【·星光 2 高性能RISC-V單板計算機體驗】1初識賽科技StarFive -
    發(fā)表于 08-31 00:03

    RISC-V + OpenCV 計算機視覺】用 VisionFive 2 ·星光 2 進行物體識別

    廣泛應(yīng)用于視頻監(jiān)控、自動駕駛等領(lǐng)域。 基于Debain操作系統(tǒng)和OpenCV框架,賽科技在VisionFive 2·星光
    發(fā)表于 09-08 11:42

    ·星光 2VisionFive 2RISC-V單板計算機】根目錄擴容-愉快的install大型軟件

    ·星光 2VisionFive 2RISC-V單板計
    的頭像 發(fā)表于 07-18 07:20 ?1055次閱讀

    ·星光2 RISC-V單板計算機體驗(一) - 開箱

    ·星光2 RISC-V單板計算機體驗(一) - 開箱 一、開箱 ·
    的頭像 發(fā)表于 02-21 10:10 ?931次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b><b class='flag-5'>2</b> <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>體驗(一) - 開箱

    ·星光2 RISC-V單板計算機體驗(二) - 系統(tǒng)環(huán)境

    ·星光2 RISC-V單板計算機體驗(二) - 系統(tǒng)環(huán)境 一、官方資料 RISC-V官網(wǎng): [
    的頭像 發(fā)表于 02-21 10:15 ?829次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b><b class='flag-5'>2</b> <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>體驗(二) - 系統(tǒng)環(huán)境

    ·星光2 RISC-V單板計算機體驗(三) - SSH連接

    ·星光2 RISC-V單板計算機體驗(三) - SSH連接 一、官方資料 RISC-V官網(wǎng):
    的頭像 發(fā)表于 02-21 10:21 ?674次閱讀
    <b class='flag-5'>昉</b>·<b class='flag-5'>星光</b><b class='flag-5'>2</b> <b class='flag-5'>RISC-V</b><b class='flag-5'>單板計算機</b>體驗(三) - SSH連接