英创公司ESM8400工控主板可搭载Windows 10 IoT企业版操作系统构成基于ARM64的Win10平台。微软的Win10平台为用户提供了多种开发方法,客户可以根据自身需求选择用MFC或UWP开发界面程序。
本文将介绍如何开发一个简单的界面程序。
1.1 Windows开发主机
推荐使用Visual Studio 2022在Windows 10 IoT平台上进行软件开发。同时,微软提供免费的Visual Studio 2022社区版,可以满足开发需求。用户可在微软官网获得下载链接。下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux
Visual Studio 2022通过Visual Studio Installer进行安装,安装过程中需要连接到互联网。后续如果需要增加或删除相关功能,也是通过Visual Studio Installer进行。
在Window 10 IoT平台的ARM64工控主板上进行MFC程序或UWP程序开发,需要安装时,在“工作负荷中”勾选上:
1. .NET桌面开发
2. 使用C++的桌面开发
3. Windows应用程序开发
4. 使用C++的移动开发
在“单个组件”中勾选上:
1. Windows 10 SDK(10.0.19041.0)
2. 带有Spectre缓解措施、适用于最新v143生产工具的C++ ATL(ARM64/ARM64EC)
3. 带有Spectre缓解措施、适用于最新v143生产工具的C++ MFC(ARM64/ARM64EC)
4. 适用于最新v143生产工具的C++ ATL(ARM64/ARM64EC)
5. 适用于最新v143生产工具的C++ MFC(ARM64/ARM64EC)
1.2 ARM64工控板
为了能够在ARM64工控板上进行在线联调,设置断点追踪等,需要在ARM64工控板上安装Visual Studio 2022 远程工具。
1、在微软官网上搜索下载ARM64的Visual Studio 2022 远程工具并安装。下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux
该工具也将放在“Win10IoT光盘资料/工具”中,或联系英创工程师获得。
2、创建共享目录
在目标机上创建一个共享目录,用于Visual Studio将开发程序及组件部署到目标机中。这里以ESM8400为例, ESM8400用户名设置为Win10IoT,在其C盘下创建名“remotetemp”的共享目录。
MFC作为windows早先框架,相对成熟,有大量应用实例。Windows 10 IoT在兼容性上保证了各个版本的MFC程序(x86平台,ARM平台)都能在ARM64工控板上运行(ARM64平台MFC程序效率更高)。熟悉MFC开发的工程师能更快上手,使用原x86平台资源库更方便,将老平台程序功能移植到Windows 10 IoT上的开发进度会更快。
UWP是微软最新框架,在跨平台上更有优势,在界面设计上功能更强大。微软提供的Devices库在调用硬件接口上更加方便。UWP有沙箱化的运行机制,对权限控制更精细。
工程师应根据实际情况选择合适的开发平台。
2.1 MFC程序开发示例
1、在开发主机上启动VS2022,创建新项目,选择“MFC应用”,点下一步创建。
2、选择基于对话框的应用程序类型,其它使用默认选项,点击完成创建工程。
3、在工程对话框编辑页面里,设置Static Text控件的文本为“Hello World”,点击编译,运行,即可看到程序在开发机平台上的初步样貌。
4、现在让程序在ARM64平台上运行,选择配置管理器。
5、选择活动解决方案平台,新建ARM64平台,参考当前平台配置。
6、右键点击工程->属性,打开工程属性页,设置远程调试的相关参数。
这里需要配置远程服务器名称(ARM64工控板的地址),填目标IP,或者目标网络名均可。
配置工作目录,和部署目录为ARM64工控板的共享目录路径。
设置“远程命令”,即应用exe的启动路径。可参考图中配置,共享目录路径+$(TargetFileName)
7、最后返回配置管理器,把ARM64的部署项勾选上。
8、启动ARM64工控板上远程工具,即可开始调试。
2.2 UWP程序开发示例
1、在开发主机上启动VS2022,创建新项目,选择“通用Windows C++”,点下一步创建工程。
2、点击工程MainPage.xaml。打开界面编辑。
拖动TextBlock控件到界面中,并在属性栏中修改文本为HelloWorld。
也可以直接在xaml中添加如下字段。
<Grid> <TextBlock Horizontalalignment=Center"TextWrapping="W'rap"Text="Hello World” vertica1Alignment="Center" Fontsize="36"7> </Grid>
点击编译,运行,即可看到程序在开发机平台上的初步样貌。
3、现在让程序在ARM64平台上运行,选择平台ARM64
4、右键点击工程->属性,打开工程属性页,设置远程调试的相关参数。
这里只需要配置计算机名(ARM64工控板地址),可以点开选择<Locate…>
如果ARM64工控板的远程工具已打开,那么可以在弹出窗口中快速选择配置好网络地址。也可以手动输入ARM64工控板的地址。
5、ARM64工控板上远程工具启动后,即可点击调试按钮进行调试。
3.1 启动ARM64工控板上远程工具
从目标机Windows开始菜单,启动Remote Debugger(ARM64)
3.2 点击Visual Studio调试按钮,调试运行程序
1、调试MFC程序示例
2、调试UWP程序示例
Windows 10 IoT下设置程序自启动和Windows一样,以下介绍最简单的方式。
4.1 MFC程序自启动
1、找到ARM64工控板里要自启动的exe,右键点击,创建快捷方式。
2、将快捷方式拷贝到ARM64工控板系统自启动目录。在ARM64工控板系统里,按 Win + R 输入 shell:startup,即可打开当前用户的启动文件夹。
3、重启测试程序是否自启动成功。
4.2 uwp程序自启动
1、在ARM64工控板系统里,按 Win + R 输入 shell:appsfolder,打开系统应用列表,找到要自启动的App,右键点击,创建快捷方式。
2、将快捷方式拷贝到ARM64工控板系统自启动目录。在ARM64工控板系统里,按 Win + R 输入 shell:startup,即可打开当前用户的启动文件夹。
3、重启测试程序是否自启动成功。
成都英创信息技术有限公司 028-8618 0660