本帖最后由 yinwuqing110 于 2020-5-11 17:49 编辑
板卡收到有段时间了,相信参赛的坛友们都拿到了开发板了吧,此次作品得以RT-Thread为主题,因此我们需对RT-Thread有个初步的认识。RT-Thread是中国自主研发的嵌入式实时多线程操作系统,支持多任务,允许多个任务同时运行,但这并不意味着处理器在同一时刻真地执行了多个任务。事实上,一个处理器核心在某一时刻只能运行一个任务,由于每次对一个任务的执行时间很短、任务与任务之间通过任务调度器进行非常快速地切换(调度器根据优先级决定此刻该执行的任务),给人造成多个任务在一个时刻同时运行的错觉。在 RT-Thread 系统中,任务通过线程实现的,RT-Thread 中的线程调度器也就是以上提到的任务调度器。相较于 Linux 操作系统,RT-Thread 体积小,成本低,功耗低、启动快速,除此以外 RT-Thread 还具有实时性高、占用资源小等特点,非常适用于各种资源受限(如成本、功耗限制等)的场合。
今天将前段时间的开发体验分享一下。麻雀一号开发板虽然体型小,但资源相当丰富,集成WiFi、BLE、摄像头、音频扬声器、MIC 录音、TF 卡座、五向按键、还有一个1.44 寸的LCD 屏,使用常见的TypeC接口作为供电和调试串口,预留支持锂电池供电接口。拿到板卡后,上电检测一番。先打开串口调试助手,看看log信息。将Type-C接口的数据线与电脑连接,电脑的设备管理器中看到USB转串口的驱动,如果异常,则需安装CH340的USB转串口的驱动。
将SecureCRT工具设置对于串口号并将其打开
敲回车能看到命令行提示符“msh />”表示终端工作正常,然后再按一下Tab键,则会弹出常用的命令
接下来我们来了解一下ENV工具,RT-Thread中使用ENV命令行编译配置环境进行项目构建,将SDK包提供的“env_released_1.1.3.7z”压缩文件解压,并确保解压后的文件夹所在目录中不含中文字符,否则后续编译会报错。
在SDK的一级目录下,即“bk7221u_release”文件夹下鼠标右击选择“ConEmu Here”,启动ENV控制台,输入scons命令来编译当前的工程包。scons是RT-Thread使用的编译构建工具,可以使用scons相关命令来编译RT-Thread。如果输入menuconfig,则会启动类似Linux环境下的图形配置界面,其实其本质就是在配置当前目录下的.config文件。由此可见通过配置选项,可实现内核、组件和软件包进行自由裁剪,使系统以搭积木的方式进行构建。
麻雀一号开发板预留了烧录接口,可用配套的无线烧录器进行烧录all.bin 固件,烧录all.bin主要是用在开发板的程序异常无法正常通过OTA升级固件的情况下使用,all.bin文件主要由bootloader和app程序组成。在SDK包中“bk7221u_release\tool\beken_packager”目录下将“config_cam_4M.json”文件拖至“beken_packager.bat”文件中,则会生成“all_cam_4M_UART1.20190828.bin”,此二进制文件就是all.bin文件。
这里需要说明的是,在生成all_cam_4M_UART1.20190828.bin文件前需要先通过ENV工具编译工程,生成rtthread.bin文件哦,否则会报文件找不到的错误信息。接下来采用无线烧录方式将编译好后的rtthread.rbl文件烧录进开发板中。我们将无线烧录器按照操作手册指引方向与开发板连接,此时再用手机搜索附件WiFi,能看到名叫“BK_Wireless_Programer_f4fd”的WiFi名,此WiFi麻雀一号发射出的热点。
然后连接该热点,密码默认是12345678,能顺利连上,说明无误。这里我选择在PC端进行无线烧录,因此在PC端的WiFi连接处,选择与“BK_Wireless_Programer_f4fd”相连接,同样的输入密码12345678,建立连接。
然后再通过PC的网页浏览器进入烧录界面, 无线烧录器默认的IP是192.168.169.1
由于编译器编译出来的应用程序rtthread.bin属于原始固件,并不能用于RT-Thread OTA的升级固件,需要我们使用RT-Thread OTA固件打包器打包生成.rbl后缀名的固件,然后才能进行OTA 升级。将执行scons命令编译后生成的rtthread.bin打包生成rtthread.rbl
然后再在PC浏览器网页端选择打包好后的rbl文件
此时网页页面下后显示更新**信息
同时开发板的无线模块指示灯会不停闪烁
在线升级完成后,页面下的**信息输出如下:
但是在串口端并无看到打印信息输出,重启开发板也是一样的,而且屏幕不再点亮。然后进入SDK工程包中,详细了解一下源码。这里需用到Visual Studio Code开发工具,通过https://code.visualstudio.com/官网下载好软件,然后双击安装
一路选择默认,只是根据用户需要,更改一下安装的目录即可,安装完成后启动Visual Studio Code,界面还是蛮炫酷的。我们需要安装必要的软件包才能正常调试、编译。
这里我将所需的基本软件包总结了一下,仅供参考,大家可以在搜索栏中手动输入,并安装。
安装完这些插件后,重启Visual Studio Code软件,此时会发现变成中文界面,将bk7221u_release工程导入VSCode中,语法高亮显示,界面更炫酷了。此次分享就到这里吧,后续再对该工程包进行详细的梳理,调试部分代码,让麻雀一号飞起来哦。感谢各位坛友的关顾,如有不同见解,欢迎各抒己见,回帖吐槽,谢谢!
|