[文章]使用VSCode烧写Hi3518ev300应用时的问题解决

阅读量0
0
0


(前文参见https://bbs.elecfans.com/jishu_2032244_1_1.html和https://bbs.elecfans.com/jishu_2035011_1_1.html)。
依照前文完成平台搭建与应用程序编译之后,即可进行烧写。烧写工作是在Windows平台下进行的。本来整个过程根据官网流程可以傻瓜式完成,但笔者却遇到了几个问题,在逐个解决之后,才烧写成功。这里不再赘述如何烧写,着重给大家分享下所遇到的问题和解决方法。
在连接设备、正确配置完Configure->Burn中所有选项,然后点击Burn右侧的绿三角图标开始烧写,各种问题就出现了,下面一一道来。
Q表示问题,A表示解决方法,以标号相对应)
Q1点击Burn失败,错误提示如下。
hpm : 无法加载文件 C:UsersyouruserAppDataRoamingnpmhpm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的
about_Execution_Policies。
所在位置 行:1 字符: 1     
+ hpm run 'upload'
+ ~~~
    + CategoryInfo          : SecurityError: (:) [],PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess
The terminal process "C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
A1引起Q1错误的原因是未开启hpm权限,解决方法如下:
使用管理员权限运行Windows PowerShell,输入:set-ExecutionPolicy RemoteSigned,然后选择A。
图片1.png
Q2:再次点击Burn,Q1问题解决,出现新的错误提示如下。
Executing task: hpm run 'upload' <
internal/modules/cjs/loader.js:883
  throw err;
  ^
Error: Cannot find module 'Z:itemsohcode10%UPLOAD_SCRIPT%'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}
The terminal process "C:WINDOWSSystem32WindowsPowerShellv1.0powershell.exe -Command hpm run 'upload'" terminated with exit code: 1.
A2:Q2问题是由于Hpm解析配置文件错误导致,需要修改hpm配置文件。用文本编辑器打开C:/Users/youruser/.hpm/hpmrc,可看到第二行是个空白行,删除该行后保存,重启IDE进行烧写。
图片2.png
Q3:再次点击Burn,Q2问题解决,新的错误提示如下。
> Executing task: hpm run 'upload' <
Load u*** failed.
Please make sure system variable 'NODE_PATH' has been configured.
You can run "npm config get prefix" to get prefix path, Set NODE_PATH to prefixnode_modules
Do you want to install modules: u*** now? y/n (default:y):
A3:根据提示,查询环境变量,发现系统中已经存在:
图片3.png

根据提示,在Terminal中输入npm config get prefix,将回显值与环境变量值对比,未发现错误。
因此尝试安装u***模块,输入y,结果遇到新的问题Q4。
Q4:承接A3步骤,输入y,出现以下错误提示。
> Executing task: npm install -g u*** <
(node:18832) Warning: Setting the NODE_TLS_REJECT_UNAUTHORIZED environment variable to '0' makes TLS connections and HTTPS requests insecure by disabling certificate verification.
(Use `node --trace-warnings ...` to show where the warning was created)
> u***@1.6.3 install C:UsersyouruserAppDataRoamingnpmnode_modulesu***

> prebuild-install --verbose || node-gyp rebuild
略...
Filesnodejsnode_modulesnpmnode_modulesnode-gypbinnode-gyp.js" rebuild )
gyp ERR! find Python
gyp ERR! find Python Python is not set from command line or npm configuration
gyp ERR! find Python Python is not set from environment variable PYTHON
gyp ERR! find Python checking if "python" can be used
gyp ERR! find Python - "python" is not in PATH or produced an error
gyp ERR! find Python checking if "python2" can be used
gyp ERR! find Python - "python2" is not in PATH or produced an error
gyp ERR! find Python checking if "python3" can be used
gyp ERR! find Python - "python3" is not in PATH or produced an error

gyp ERR! find Python checking if the py launcher can be used to find Python 2
略...
A4:根据gyp ERR!开头的错误打印首先推测是python的安装问题。打开命令行,输入python并回车,发现无任何回显,因此python确实有问题。
于是下载并安装python3.9.4,再次输入python并回车,可以进入python环境。重试burn,仍然报相同错误。保险起见,重启电脑再试。
重启后,搞定!
图片5.png
提示断电并重启底板(注意此时开发板有两个u***线路连接主机,一个是3pin,一个4pin,此时只是重新插拔4pin,其他情况可能导致烧写失败)。
等待几分钟,固件烧写完成。
图片6.png
每次烧写U-boot,都需要配置内核启动命令和参数,依次输入以下命令:
setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";
setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";
saveenv
reset
测试:
在VSCode下面的工具栏,点击Serial Port,在TERMINAL中显示串***互界面:首先输入IPC对应的USB编号,例如:COM16。然后是波特率、数据位等设置,一路回车默认即可。
重新插拔4Pin线缆,可以看到启动Log,等待出现main, entering wait字样时,说明鸿蒙系统启动成功,这时敲回车,会出现OHOS#开头的回显字样。
图片7.png
执行应用程序:./bin/camera_app,程序打印出“你好,鸿蒙!”。
图片8.png
大功告成!

回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友