本文來源電子發燒友社區,作者:黃寶亞, 帖子地址:https://bbs.elecfans.com/jishu_2289350_1_1.html
使用448和450口,實現電機正傳幾圈,翻轉幾圈,一直循環
程序如下
復制代碼
使用448和450口,實現電機正傳幾圈,翻轉幾圈,一直循環
程序如下
- #include
- #include
- #include
- #include
- #include //define O_WRONLY and O_RDONLY
- #define SYSFS_GPIO_EXPORT "/sys/class/gpio/export"
- #define SYSFS_GPIO_RST_PIN_MOTOER1"448"
- #define SYSFS_GPIO_RST_DIR "/sys/class/gpio/gpio448/direction"
- #define SYSFS_GPIO_RST_DIR_MOTOER1"OUT"
- #define SYSFS_GPIO_RST_MOTOER1 "/sys/class/gpio/gpio448/value"
- #define SYSFS_GPIO_RST_MOTOER1_H "1"
- #define SYSFS_GPIO_RST_MOTOER1 _L "0"
- #define SYSFS_GPIO_EXPORT "/sys/class/gpio/export"
- #define SYSFS_GPIO_RST_PIN_MOTOER2 "450"
- #define SYSFS_GPIO_RST_DIR "/sys/class/gpio/gpio448/direction"
- #define SYSFS_GPIO_RST_DIR_MOTOER2 "OUT"
- #define SYSFS_GPIO_RST_MOTOER2"/sys/class/gpio/gpio448/value"
- #define SYSFS_GPIO_RST_MOTOER2 _H "1"
- #define SYSFS_GPIO_RST_MOTOER2 _L "0"
- int main()
- {
- int fd;
- //打開端口/sys/class/gpio# echo 448 > export
- fd = open(SYSFS_GPIO_EXPORT, O_WRONLY);
- if(fd == -1)
- {
- printf("ERR: Radio hard reset pin open error.n");
- return EXIT_FAILURE;
- }
- write(fd, SYSFS_GPIO_RST_PIN_MOTOER1,sizeof(SYSFS_GPIO_RST_PIN_MOTOER1));
- close(fd);
- //設置端口方向/sys/class/gpio/gpio448# echo out > direction
- fd = open(SYSFS_GPIO_RST_DIR, O_WRONLY);
- if(fd == -1)
- {
- printf("ERR: Radio hard reset pin direction open error.n");
- return EXIT_FAILURE;
- }
- write(fd, SYSFS_GPIO_RST_DIR_MOTOER2 , sizeof(SYSFS_GPIO_RST_DIR_MOTOER2 ));
- close(fd);
- //設置端口方向/sys/class/gpio/gpio450# echo out > direction
- fd = open(SYSFS_GPIO_RST_DIR, O_WRONLY);
- if(fd == -1)
- {
- printf("ERR: Radio hard reset pin direction open error.n");
- return EXIT_FAILURE;
- }
- write(fd, SYSFS_GPIO_RST_DIR_MOTOER2 , sizeof(SYSFS_GPIO_RST_DIR_MOTOER2 ));
- close(fd);
- //輸出復位信號: 拉高>100ns
- fd = open(SYSFS_GPIO_RST_MOTOER1, O_RDWR);
- if(fd == -1)
- {
- printf("ERR: Radio hard reset pin value open error.n");
- return EXIT_FAILURE;
- }
- while(1)
- {
- write(fd, SYSFS_GPIO_RST_MOTOER1 _H, sizeof(SYSFS_GPIO_RST_MOTOER1 _H));
- write(fd, SYSFS_GPIO_RST_MOTOER2 _H, sizeof(SYSFS_GPIO_RST_MOTOER2 _H));
- usleep(1000000);
- write(fd, SYSFS_GPIO_RST_ MOTOER1 _H, sizeof(SYSFS_GPIO_RST_ MOTOER1 _H));
- write(fd, SYSFS_GPIO_RST_ MOTOER2 _H, sizeof(SYSFS_GPIO_RST_ MOTOER2 _H));
- usleep(1000000);
- }
- close(fd);
- printf("INFO: Radio hard reset pin value open error.n");
- return 0;
- }
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
RISC-V
+關注
關注
45文章
2292瀏覽量
46210 -
賽昉科技
+關注
關注
3文章
154瀏覽量
14305
發布評論請先 登錄
相關推薦
預售啟動!昉·星光 2 AI套件正式發布,基于RISC-V構建AI算力
10月24日,昉·星光2(VisionFive2)AI套件正式開啟預售。該套件由中國RISC-V軟硬件生態領導者賽昉科技攜手邊緣人工智能(A
Ubuntu現已適配RISC-V單板計算機Milk-V Mars
近期,Canonical宣布優化的Ubuntu24.04鏡像已可用于RISC-V單板計算機Milk-VMars。Milk-VMars由深圳市群芯閃耀科技有限公司(Milk-V)設計并推出,搭載
信用卡大小的 RISC-V 單板計算機介紹
信用卡大小的 RISC-V 單板計算機 —— Mars
Mars 由深圳市群芯閃耀科技有限公司(Milk-V)設計并推出,搭載賽昉科技
發表于 04-12 16:39
賽昉科技VisionFive 2生態進展雙周報(2.1-2.29)
Image for VisionFive 2)
社區開發者發布4篇【昉·星光 2高性能RISC-V單板計算機體驗】系列文章,內容包括:為Ubuntu安裝Docker及常用軟件;以容器
發表于 02-29 15:45
【昉·星光 2 高性能RISC-V單板計算機體驗】以容器的方式安裝 HomeAssistant
【昉·星光 2 高性能RISC-V單板計算機體驗】以容器的方式安裝 HomeAssistant
下載并啟動容器
HomeAssisatant 官方并沒有提供基于
發表于 02-21 18:07
【昉·星光 2 高性能RISC-V單板計算機體驗】為 Ubuntu 安裝 Docker 及常用軟件
【昉·星光 2 高性能RISC-V單板計算機體驗】為 Ubuntu 安裝 Docker 及常用軟件
目的
為了更好的利用星光2,決定使用容器
發表于 02-21 17:54
【昉·星光 2 高性能RISC-V單板計算機體驗】VisionFive2開箱+安裝Ubuntu
【昉·星光 2 高性能RISC-V單板計算機體驗】VisionFive2開箱+安裝Ubuntu
前言
很感謝賽
發表于 02-21 17:49
昉·星光2 RISC-V單板計算機體驗(三) - SSH連接
昉·星光2 RISC-V單板計算機體驗(三) - SSH連接 一、官方資料 RISC-V官網: [https://rvspace.org]
評論