本帖最后由 正点原子运营 于 2024-1-23 15:00 编辑
1)实验平台:正点原子 DFZU2EG_4EV MPSoC开发板
2) 章节摘自【正点原子】DFZU2EG_4EV MPSoC开发板之嵌入式Linux 驱动开发指南 V1.0
3)购买链接:https://detail.tmall.com/item.htm?id=692450874670
4)全套实验源码+手册+视频下载地址:http://www.openedv.com/docs/boards/fpga/zdyz-MPSOC.html
5)正点原子官方B站:https://space.bilibili.com/394620890
6)Linux技术交流QQ群:887820935
4.6 Visual StudioCode软件的安装和使用
4.6.1 Visual Studio Code的安装Visual Stuio Code和Source Insight一样,都是编辑器,Visual Studio Sode本教程以后就简称为VSCode,VSCode是微软出的一款编辑器,但是免费的。VSCode有Windows、Linux和macOS三个版本的,是一个跨平台的编辑器。VSCode下载地址是:https://code.visualstudio.com/,下载界面如下图所示: 在上图中下载自己想要的版本,本教程需要Windows和Linux这两个版本,所以下载这两个即可,我们已经下载好并放入了开发板光盘中,路径为:开发板资料盘(A盘)/6_软件资料/1_软件/Visual Studio Code。 1、Windows版本安装 Windows版本的安装和容易,和其他Windows一样,双击.exe安装包,然后一路“下一步”即可,安装完成以后在桌面上就会有VSCode的图标,如下图所示: 双击上图所以的图标打开VSCode,默认界面如下图所示: 2、Linux版本安装 我们有时候也需要在Ubuntu下阅读代码,所以还需要在Ubuntu下安装VSCode。Linux下的VSCode安装包我们也放到了开发板光盘中, 将开发板光盘中的.deb软件包拷贝到Ubuntu系统中,然后使用如下命令安装: - sudo dpkg -i code_1.61.0-1633631387_amd64.deb
复制代码等待安装完成,如下图所示: 安装完成以后搜索“code”就可以找到,如下图所示: 图 4.6.5 Visual Studio Code 每次打开VSCode都要搜索,太麻烦了,我们可以将图标添加到Ubuntu桌面上,安装的所有软件图标都在目录/usr/share/applications中,如下图所示: 在上图中找到Visual Studio Code的图标,然后点击鼠标右键,选择复制到->桌面,如下图所示: 按照上图所示方法将VSCode图标复制到桌面,以后直接双击图标即可打开VSC,如果出现未信任的应用程序启动器,点击“Trust and Lanch”,Ubuntu下的VSCode打开以后如下图所示: 可以看出Linux下的VSCode和Windows下的基本是一样的,所以使用方法也是一样的。
4.6.2 Visual Studio Code插件的安装VSCode支持多种语言,比如C/C++、Python、C#等等,本教程我们主要用来编写C/C++程序的,所以需要安装C/C++的扩展包,扩展包安装很简单,如下图所示: 我们需要按照的插件有下面几个: 1)、C/C++,这个肯定是必须的。 2)、C/C++ Snippets,即C/C++重用代码块。 3)、C/C++ Advanced Lint,即C/C++静态检测。 4)、Code Runner,即代码运行。 5)、Include AutoComplete,即自动头文件包含。 6)、Rainbow Brackets,彩虹花括号,有助于阅读代码。 7)、One Dark Pro,VSCode的主题。 8)、GBKtoUTF8,将GBK转换为UTF8。 9)、ARM,即支持ARM汇编语法高亮显示。 10)、Chinese(Simplified),即中文环境。 11)、vscode-icons,VSCode图标插件,主要是资源管理器下各个文件夹的图标。 12)、compareit,比较插件,可以用于比较两个文件的差异。 13)、DeviceTree,设备树语法插件。 如果要查看已经安装好的插件,可以按照下图所示方法查看: 安装好插件以后就可以进行代码编辑了,截至目前,VSCode界面都是英文环境,我们已经安装了中文插件了,最后将VSCode改为中文环境,使用方法如下图所示: 根据上图的提示,按下“Ctrl+Shift+P”打开搜索框,在搜索框里面输入“config”,然后选择“ConfigureDisplay Language”,如下图所示: 在打开的local.json文件中将locale修改为zh-cn,如下图所示: 修改完成以后保存local.json,然后重新打开VSCode,测试VSCode就变成了中文的了,如下图所示: 4.6.3 Visual Studio Code新建工程新建一个文件夹用于存放工程,比如我新建了文件夹目录为E:\VScode_Program\1_test,路径尽量不要有中文和空格打开VSCode。然后在VSCode上点击“件->打开文件夹…”,刚刚创建的“1_test”文件夹,打开以后如下图所示: 从上图可以看出此时的文件夹“1_TEST”是空的,点击文件->将工作区另存为…,打开工作区命名对话框,输入要保存的工作区路径和工作区名字,如下图所示: 工作区保存成功以后,点击图 4.6.15中的“新建文件”按钮创建main.c和main.h这两个文件,创建成功后的VSCode如下图所示: 从上图可以看出,此时“实验1 TEST”中有.vscode文件夹、mian.c和mian.h,这三个文件和文件夹同样会出现在“实验1 test”文件夹中,如下图所示: 在main.h中输入如下所示内容: - 示例代码4.5.3.1 main.h文件代码
- 1 #include <stdio.h>
- 2
- 3 int add(int a, int b);
复制代码在main.c中输入如下所示内容: - 示例代码4.5.3.2 main.c文件代码
- 1 #include <main.h>
- 2
- 3 int add(int a, int b)
- 4 {
- 5 return (a + b);
- 6 }
- 7
- 8 int main(void)
- 9 {
- 10 int value = 0;
- 11
- 12 value = add(5, 6);
- 13 printf("5+ 6 = %d", value);
- 14 return 0;
- 15 }
复制代码代码编辑完成以后VSCode界面如下图所示: 从上图可以看出,VSCode的编辑的代码高亮很漂亮,阅读起来很舒服。但是此时提示找不到“stdio.h”这个头文件,如下图所示错误提示: 上图中提示找不到“main.h”,同样的在main.h文件中会提示找不到“stdio.h”。这是因为我们没有添加头文件路径。按下“Ctrl+Shift+P”打开搜索框,然后输入“Edit configurations”,选择“C/C++:Edit configurations…”,如下图所示: C/C++的配置文件是个json文件,名为:c_cpp_properties.json,此文件默认内容如下图所示: 图 4.6.22c_cpp_properties.json内容 c_cpp_properties.json中的变量“includePath”用于指定工程中的头文件路径,但是“stdio.h”是C语言库文件,而VSCode只是个编辑器,没有编译器,所以肯定是没有stdio.h的,除非我们自行安装一个编译器,比如CygWin,然后在includePath中添加编译器的头文件。这里我们就不添加了,因为我们不会使用VSCode来编译程序,这里主要知道如何指定头文件路径就可以了,后面有实际需要的时候再来讲。 我们在VScode上打开一个新文件的话会覆盖掉以前的文件,这是因为VSCode默认开启了预览模式,预览模式下单击左侧的文件就会覆盖掉当前的打开的文件。如果不想覆盖的话采用双击打开即可,或者设置VSCode关闭预览模式,设置如下图所示: 我们在编写代码的时候有时候会在右下角有如下图所示的警告提示: 这是因为插件C/C++ Lint打开了几个功能,我们将其关闭就可以了,顺便也可以学习一下VSCode插件配置方法,如下图所示: 在C/C++ Lint配置界面上找到CLang:Enable、Cppcheck:Enable、Flexlint:Enable这个三个,然后取消掉勾选即可,如下图所示: 按照图 4.6.25所示取消这三个有关C/C++ Lint的配置以后就不会有图 4.6.24所示的错误提示了。但是关闭Cppcheck:Enable以后VSCode就不能实时检查错误了,大家根据实际情况选择即可。
4.7 SecureCRT软件安装和使用
4.7.1 SecureCRT安装在后续的开发过程中我们需要在Windows下使用串口终端,用来查看信息以及进行操作。常用的串口终端有SecureCRT、Putty和MobaXterm。 我们已经下载好放到开发板光盘中了,路径为:开发板资料盘(A盘)/6_软件资料/1_软件/SecureCRT7.1,我们提供了两个版本的软件: scrt712-x86.exe和scrt733-x64.exe,这两个分别为32位和64位,大家根据自己所使用的电脑来选择安装版本,我的电脑是64位的,因此安装scrt733-x64.exe。双击scrt733-x64.exe开始安装,界面如下图所示: 点击上图中的“Next”按钮,进入License许可界面,如下图所示: 在上图中,选择“I accept the terms in the license agreement”,然后点击“Next”按钮,进入使用者选择界面,如下图所示: 选择“Common profile(affects all users)”,也就是所有登陆到此电脑的用户都可以使用SecureCRT,选中以后点击“Next”进入下一步,进入安装类型选择界面,如下图所示: 在上图中我们选择“Custom”,也就是自定义安装,自定义安装我们可以选择安装目录,选择好以后点击“Next”进入下一步。进入安装路径选择界面,如下图所示 根据自己实际情况设置SecureCRT安装路径,设置好以后点击“Next”按钮,下一个界面让你选择是否在桌面创建图标,默认是需要创建的,所以我们不用做任何修改,直接点击“Next”,进入下图所示界面: 点击上图中的“Install”按钮正式开始安装,等待安装完成界面,安装完成以后如下图所示: 点击上图中的“Finish”按钮退出安装,至此SecureCRT安装成功,安装成功以后就会在桌面出现相应的图标,如下图所示:
4.7.2 SecureCRT使用SecureCRT功能很强大,支持SSH,可以用来远程登陆;支持串口,可以用来作为Linux开发板的串口终端。我们用的最多的就是将SecureCRT作为串口终端来使用。双击图 4.7.9所示的SecureCRT图标,打开SecureCRT,第一次打开界面如下图所示的无效许可对话框: 因为SecureCRT也是付费软件,所以会弹出无效许可对话框,点击“OK”按钮,弹出序列号输入对话框,如下图所示: 如果购买了序列号的话就可以输入序列号进行注册,注册成功以后就会进入到SecureCRT主界面,如下图所示: 我们以串口连接为例讲解如何使用SecureCRT,我们需要准备好一个能进行串口通信的设备,我们的DFZU2EG_4EV MPSoC开发板就可以。DFZU2EG_4EV MPSoC开发板出厂已经烧写了Linux系统,Linux系统在运行的过程中会通过串口输出信息,通过串口可以实现Linux命令行交互操作,就和Ubuntu里面的终端一样,使用方法如下: 1、查看开发板当前使用的串口号 首先通过USB线将开发板的串口和电脑连接起来,打开“设备管理器”,在设备管理器中查看当前连接到电脑的端口都有哪些,如下图所示: 在上图中可以看到有多个COM口,哪个才是我们开发板的呢?DFZU2EG_4EVMPSoC开发板使用的CH340芯片完成串口转USB,所以“USB-SERIAL CH340(COM8)”就是我的开发板所使用的端口,串口号为COM8。如果你的电脑连接了多个CH340做的USB转串口设备,无法区分哪个才是开发板所使用的,只需要把你的开发板串口拔掉,看看哪个串口号消失了,然后再重新插上开发板的串口线,再看一下那个消失的串口号会不会重新出现,如果会的话那你的开发板就是用的这个串口号。 2、设置SecureCRT 我们已经知道了当前开发板所使用的串口号了,比如我的是COM8,打开SecureCRT,然后点击File->Quick Connect…,如下图所示: 打开以后的快速连接界面如下图所示: 按照下图所示进行设置: 设置好以后点击“Connect”按钮进行连接,连接成功以后SecureCRT如下图所示: 在上图中,左侧是会话列表,保存着历史会话,会显示出所有曾经连接的串口,这个在关闭SecureCRT以后会被保存起来,下次重新打开SecureCRT就可以直接使用这个串口会话连接进行快速连接。比如我们关闭SecureCRT,在关闭SecureCRT之前要先关闭所有的会话(串口),重新打开SecureCRT,如下图所示: 上图中重新打开的SecureCRT保存这上次关闭之前建立的会话(串口)“serial-com8”,通过双击“serial-com8”可以重新连接会话(串口),不需要再使用快速连接对话框进行连接设置。 开发板默认出厂烧写了Linux系统,所以如果连接上SecureCRT以后会将串口作为终端,会输出Linux系统启动信息,并且可以通过SecureCRT来操作开发板中的Linux系统,此时SecureCRT就是开发板的终端,和Ubuntu中的终端一样,如下图所示: 图 4.7.19 SecureCRT作为Linux终端
4.8 Putty软件的安装和使用
4.8.1 Putty软件安装Putty和SecureCRT是类似的软件,都是用来作为SSH或者串口终端的,区别在于SecureCRT是付费软件,而Putty是免费的。虽然Putty没有SecureCRT功能强大,但是Putty用来作为嵌入式Linux的串口终端是绰绰有余的,而且在Ubuntu下安装Putty十分方便,只需一条命令即可: 可以看到Putty提供了32位和64位两个版本的软件,我们已经下载好放到开发板光盘中了,路径为:开发板资料盘(A盘)/6_软件资料/1_软件/Putty,有32位和64位两种,putty-0.70-installer.msi是32位版本的,putty-64bit-0.70-installer.msi为64位版本的,根据自己所使用的Windows系统选择合适的版本。因为我的电脑是64位系统,所以我使用的是putty-64bit-0.70-installer.msi,双击开始安装,安装界面如下图所示: 点击上图中的“Next”按钮,进入下一步,下一步是选择安装路径,大家根据自己的实际情况选择一个安装路径,如下图所示: 设置好安装路径以后点击“Next”按钮进入下一步,如下图所示: 点击上图中的“Install”按钮,开始安装,安装完成以后如下图所示: 点击上图中的“Finish”按钮退出安装。Putty安装完成以后桌面可能不会出现APP图标,自行找到安装目录,将Putty图标的快捷方式发送到桌面上即可,Putty图标如下图所示:
4.8.2 Putty软件使用使用USB线将开发板串口和电脑连接起来,打开Putty软件,打开以后是配置界面,如下图所示 我们要用到串口功能,所以在左侧选择“Serial”,然后在右侧配置串口,配置完成以后如下图所示: 按照上图配置好串口,配置好以后不要点击“Open”,我们还需要设置“Session”,设置如下图所示: 按照上图设置好以后,点击“Open”打开串口,如果开发板里面烧写了Linux系统的话,Putty就会显示Linux启动过程的信息,并且作为开发板的终端,如下图所示: 相比于SecureCRT,Putty开源且小巧方便,至于要用哪一个大家自行选择一个合适的,使用方面无本质差别。 |