嵌入式爱好者

查看: 20376|回复: 1

[评测] 飞凌嵌入式OKA40i-C开发板试用体验 之 交叉编译

[复制链接]

4

主题

4

帖子

31

积分

扫一扫,手机访问本帖
发表于 2020-9-11 09:01:15 | 显示全部楼层 |阅读模式
本帖最后由 jfxian 于 2020-9-11 09:22 编辑

环境:Unbuntu20.4LTS
交叉编译工具链:arm-linux-gnueabihf-gcc
软件:VsCode
  • helloworld交叉编译初体验

选择下载交叉编译工具链(我就按照其他教程下载配置的)  
1.png


安装工具链及相关的库,配置环境变量
2.png


在开发板上配置sftp用于文件传输,将编译完成的可执行文件传到开发板上运行
3.png


在Unbuntu20下编写一个helloworld.c文件
4.png


通过其他教程学习了一下Makefile文件的构成及简单实现,make编译得到可执行文件main
5.png

6.png


将main文件通过sftp复制到开发板root目录下,修改运行权限并运行测试
7.png


  • 利用上述方式控制LED闪烁
    linux系统下一切皆文件
编写gpio_test.c文件,这里参考了文章https://www.jianshu.com/p/e5ecd92c0787
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <unistd.h>
  4. #include <sys/stat.h>
  5. #include <sys/types.h>
  6. #include <fcntl.h>

  7. char *GPIO_PATH = "/sys/class/gpio/gpio43/value";

  8. int main(int argc, char *argv[])
  9. {
  10.     int res = 0;
  11.     int fd;
  12.     char *path;
  13.    
  14.     printf("Gpio test demo\n");

  15.     if(argc >= 2)
  16.     {
  17.         path = argv[1];
  18.     }
  19.     else
  20.     {
  21.         path = GPIO_PATH;
  22.     }
  23.    
  24.     fd = open(path, O_WRONLY);
  25.     if(fd<0)
  26.     {
  27.         printf("Failed to Open gpio %s/n", path);
  28.         exit(1);
  29.     }

  30.     while(1)
  31.     {
  32.         write(fd, "1", 1);
  33.         sleep(1);
  34.         write(fd, "0", 1);
  35.         sleep(1);
  36.     }
  37.     close(fd);
  38. }
复制代码

编写Makefile文件进行编译
91.png


将生成的可执行文件gpio_flash复制到开发板目录中,不加任何参数运行可以看到核心板上的LED闪烁
92.png

h_flash.gif


带参数可以换一个gpio进行控制
93.png
d_flash.gif






回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-11-22 03:48

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表