[BearPi-Pico H2821]测评 ②开发环境搭建、编译、烧录
<div class='showpostmsg'><p>小熊派官方已经编写了一份开发环境搭建及编译烧录的指导文档,可以看一下官方链接,虽然不是一步一步保姆级指导,但也写的比较详细了。<a href="https://www.bearpi.cn/core_board/bearpi/pico/h2821/software/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BAwindows.html" target="_blank">https://www.bearpi.cn/core_board/bearpi/pico/h2821/software/%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BAwindows.html</a></p><p> </p>
<p>首先说明一下,H2821支持Win和linux两个环境。在Win下使用deveco-device-tool + DevTools_CFBB + VS Code。linux则是直接提供了Vmware的Ubuntu镜像。</p>
<p>我还是喜欢win,虚拟机编写代码和烧录都怪麻烦的。</p>
<p> </p>
<p>在win环境下只需要下载这三个即可(如果你没有安装CH340驱动,那么CH341SER.EXE要下载安装一下。如果没有串口工具,可以下载一下QCOM_V1.6.exe,或者自己去下载一下别的串口工具)</p>
<div style="text-align: center;"></div>
<p>先安装deveco-device-tool-all-in-one-1.1.7.exe,他会自动检测你有没有安装python和vscode,如果没有帮你安装。(这里有个坑,你一定要用小熊派提供的,不要去华为那边下载,这个我认为是个定制版的,专门给H2821开发用的。还有如果你是公司电脑,安装软件需要管理员账号,那也不行,里面的vscode是为当前账号安装的,不是为所有账号安装的,py可能也是,这个我没去看,需要把你的账号解除限制,用你的账号安装)</p>
<p>软件安装我就不截图了,基本上就是下一步,路径我也没改,直接用默认</p>
<p>deveco-device-tool要求的py版本为3.8-3.9(64-bit),vscode版本为1.69.2+。他已经成功检测到我电脑上安装的版本,py太高了,直接点安装他就会帮我安装。或者点自定义安装,他会弹出py的安装界面,你自己安装</p>
<div style="text-align: center;"></div>
<p>两个都安装完成的状态</p>
<div style="text-align: center;"></div>
<p>然后我们把DevTools_CFBB_V1.0.12.zip找个地方解压,注意路径不能含中文、空格、特殊字符</p>
<div style="text-align: center;"></div>
<p>最后把烧录工具也解压缩一下,虽然VSCode里面也可以直接烧录</p>
<div style="text-align: center;"></div>
<p>然后我们去gitee上clone一下SDK</p>
<pre>
<code class="language-bash">git clone https://gitee.com/bearpi/bearpi-h2821_pico.git</code></pre>
<div style="text-align: center;"></div>
<p>打开vscode,可以看到deveco-device-tool的插件已经自动安装到vscode里了,但是要注意!!!千万不要点升级按钮!!!</p>
<div style="text-align: center;"></div>
<p>开始导入工程,路径选择刚才clone下来的SDK</p>
<div style="text-align: center;">
<div style="text-align: center;"></div>
<p style="text-align: left;">然后选择soc和开发板</p>
</div>
<div style="text-align: center;"></div>
<p>然后配置ToolChain,路径就选择刚才我们解压DevTools_CFBB_V1.0.12的地方</p>
<div style="text-align: center;"></div>
<p>接下来打开Kconfig,配置一下要编译那个工程</p>
<p>需要注意的是,vscode的默认终端要选择PowerShell</p>
<div style="text-align: center;"></div>
<p>正常打开KConfig界面如下</p>
<div style="text-align: center;"></div>
<p>可以看到默认的选择了Blink的demo,GPIO为Pin31,500ms闪烁一次。我就直接用默认的了。选好要编译的工程后,点击save即可关闭KConfig</p>
<div style="text-align: center;"></div>
<p>然后点击“Rebuild”,对整个工程重新编译一次(如果日常调试,可以点build,只编译修改的文件,可以快一点)</p>
<div style="text-align: center;"></div>
<p>编译完成</p>
<div style="text-align: center;"></div>
<p> </p>
<p>接下来烧录一下,烧录有2种方法,要么在vscode里直接烧录,日常开发用这个最好。还有一种就是用烧录工具</p>
<p> </p>
<p>先看一下vscode里的</p>
<p>开发板连接电脑(确保你已经安装了CH340驱动,并且可以识别到),然后配置一下开发板的串口,让烧录工具知道应该给那个串口发数据</p>
<div style="text-align: center;"></div>
<div>点击“Upload”,然后看终端提示,按下复位键</div>
<div style="text-align: center;">
<div style="text-align: center;"></div>
<p style="text-align: left;">烧录成功后要手动点击开发板上的复位键,LED灯开始闪烁</p>
<p style="text-align: left;">47e02d0439cbc7804fc68716d79c6157<br />
</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">第二中烧录方法就是用BurnTool_H2821</p>
<p style="text-align: left;">打开刚才解压的BurnTool,然后选择开发板使用的COM口和需要烧录的固件的文件(波特率可以不用选,默认就是750000),自动烧录和自动断连也勾上</p>
<div style="text-align: center;">
<div style="text-align: center;"></div>
<p style="text-align: left;">成功加载文件</p>
<div style="text-align: center;"></div>
<p style="text-align: left;">然后点击“Connect”,根据提示按下复位键</p>
</div>
<div style="text-align: center;">
<div style="text-align: center;"></div>
<p style="text-align: left;">烧录成功提示</p>
<div style="text-align: center;"></div>
<p style="text-align: left;">烧录完成后按下复位键即可运行程序</p>
<p style="text-align: left;"> </p>
<p style="text-align: left;"> </p>
<p style="text-align: left;">最后我有一个疑问,我看了原理图,芯片是有复位pin的,为什么不用?而是选择用按键直接控制供电芯片的EN脚,这样的设计我还是头一回见</p>
<div style="text-align: center;"></div>
<p style="text-align: left;">还有一个改进想法,希望后续可以做一个自动烧录电路,这样就不用我去按复位键了</p>
</div>
<p style="text-align: left;"> </p>
<p style="text-align: left;"> </p>
</div>
<p> </p>
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页:
[1]