欢迎光临散文网 会员登陆 & 注册

Linux之C应用编程点灯步骤

2023-07-18 21:33 作者:有人插袋记得拍照  | 我要投稿

基于Linux的C应用编程,是学习嵌入式的一个重要分支,今日历经万难,才把灯给点亮,我觉得还是有必要记录一下的。

首先是要准备的硬件条件:

  • PC一台;

  • 开发板(正点原子IMX6ULL-MINI,eMMC+DDR);

  • 2根USB数据线;

然后是软件部分:

  • VMware+Ubuntu18;

  • SecureCRT7.0;

  • VScode(ubuntu);

  • XFTP(文件传输工具);


本次实验的具体框图如下:

顶层框图

下面开始每一步的详细介绍:

第一部分:先给开发板烧入系统。

        烧录有2种方法,每种方法又可以烧在不同的存储介质上。分别是USB_OTG和脚本烧录,可以烧在SD卡、eMMC或NANDFlash上。本次实验是通过USB_OTG烧录在eMMC上。

        一根USB插在板子的USB_OTG上,烧系统用;另一根插在USB_TTL上,与板子通信用。

开发板子上的USB

因为是用OTG烧录,所以拨码开关拨到如图所示的位置,即0100 0000。

OTG下载的拨码配置

然后打开烧录软件,这里使用的是正点原子家的,可以去他家找下载得到。根据自己的选择的烧录方案选择对应的下载脚本,本次实验用到的是图中绿色框选中的脚本。



正点原子提供的烧录脚本

打开界面如下:

烧录软件界面

出现 “符合HID 标准的供应商定义设备” 则表示没问题,点击“Start” 开始烧录。

当烧录完成后,点击Stop(一定要点),然后点击Exit。

done

烧录完成后,我们再次调整拨码开关,因为本次实验是EMMC启动,所以是10100110。

各种启动设备的拨码配置

接下来打开SecureCRT,选择开发板对应的COM口,PC是通过串口来与板子通信的。新建一个绘画然后有如下配置:


SecureCRT配置
SecureCRT串口配置

配置好SecureCRT后,按下板子上的RST按钮。此时SecureCRT会接收到板子上的信息,表示正在启动Linux系统。启动完成如图所示。

启动完成

第二部分:程序编写

     进入虚拟机下的Ubuntu18,在用户目录下建立一个Linux文件夹,然后建立两个子目录,分别是 vsCode_ws(放源代码) 和tools(放交叉编译工具链)。

建立目录如下

在vscode_ws目录下建立一个工程文件夹。

建立工程名

打开Vscode。打开刚刚建立的工程文件夹,然后建立一个.c文件

写上代码:

具体功能就步解释了,不是本章重点。

第三部分,编译,调试。

从正点原子资料中找到,fsl-imx-xll-glibc-x86_64.................sh 文件,用XFTP等文件传输工具从window传到Ubuntu里面,放到刚刚建立的tools下。

已经从window传过来了

如果是白色的字符显示,说明不够执行权限。用一下命令添加权限。

然后执行:

终端会问你存在那个目录,我们默认就好。根据提示敲入回车。

添加下环境变量:

搞定交叉编译器后,就可以在Vscode中点击“新建终端”,在终端里输入:

然后可以发现我们生成了一个ELE文件,这个文件可以被开发板执行。

产生了新的文件

再次打开XFTP,把这个文件传去window。

XFTP操作

打开SecureCRT,选择一个目录(别再root下,最好在用户目录下),输入 rz 命令,回车。

已经传输到板子上了

执行以下,发现失败,应该是权限不够。

使用如下代码给文件添加权限。

修改权限

可以发现板子上的灯亮了。

然后试试关灯:

灯点好了,然后呢?



参考文献:

1、【正点原子】I.MX6U嵌入式Linux C应用编程指南V1.4

2、【正点原子】I.MX6U用户快速体验V2.6

正点原子资料下载:

http://www.openedv.com/docs/index.html

Linux之C应用编程点灯步骤的评论 (共 条)

分享到微博请遵守国家法律