做简单网站代码,做百度移动网站快速,上海公司建立网站吗,珠海网站外包目录 前言一、实验平台简介1.1 W601简介1.2 RT-Thread简介1.3 ENV简介 二、开发环境搭建2.1 MDK安装2.2 Git安装2.3 RT-Thread相关下载2.4 其他素材 三、移植RT-Thread四、ENV使用五、W601开发板下载验证5.1 使用串口下载软件5.2 ST-Link下载 前言 本文以正点原子W601开发板为例… 目录 前言一、实验平台简介1.1 W601简介1.2 RT-Thread简介1.3 ENV简介 二、开发环境搭建2.1 MDK安装2.2 Git安装2.3 RT-Thread相关下载2.4 其他素材 三、移植RT-Thread四、ENV使用五、W601开发板下载验证5.1 使用串口下载软件5.2 ST-Link下载 前言 本文以正点原子W601开发板为例讲解如何移植RT-Thread 一、实验平台简介
1.1 W601简介 W601就是国内联盛德微电子推出的一款集 WiFi 与 MCU 为一体的 WIFI 芯片方案以代替传统的 WIFI 模组外置 MCU 方案。它集成了 Cortex-M3 内核是一款支持多功能接口的 SoC 芯片。可作为主控芯片应用于智能家电、智能家居、智能玩具、医疗监护、工业控制等物联网领域 学习 W601 有几份资料经常用到 《W601 芯片产品规格书》 《WM_W601_寄存器手册》 《W601 芯片设计指导书》 其中最常用的是《WM_W601_寄存器手册》该文档是官方针对 W601 芯片提供的一份参考资料里面有绝大部分寄存器的详细描述内容详实方便大家编写代码不过没有实例也没有对 Cortex-M3 构架进行多少介绍读者只能根据自己对书本的理解来编写相关代码。当然官方也提供了相关外设例程但也都是基于操作系统的。而《W601 芯片产品规格书》和《W601 芯片设计指导书》可以让我们更好的了解 W601 的电气参数和硬件电路的设计。
1.2 RT-Thread简介 RT-Thread全称是 Real Time-Thread顾名思义是一款完全由国内团队开发维护的嵌入式实时操作系统RTOS基本属性之一是支持多任务。可以使用Env工具对源码功能进行配置或裁剪生成 MDK/IAR/GCC 工程需要配合 MDK/IAR/GCC 使用。也可以使用自家RT-Thread Studio下载源码包并创建 rt-thread 工程独立完成开发、编译、下载、调试等功能并能进行功能裁剪。 RT-Thread内核分为三个版本有标准版本、Nano版本以及Smart版本。RT-Thread Nano 是一个极简版的硬实时内核类似于FreeRTOS。RT-Thread Smart 是基于 RT-Thread 操作系统上的混合操作系统它把应用从内核中独立出来形成独立的用户态应用程序并具备独立的地址空间32 位系统上是 4G 的独立地址空间类似于linux操作系统。Nano版与其他RTOS区别不大没有设备驱动和scons构建概念而Smart版太复杂学习难度不低于Linux所以不建议深入了解。 近年来物联网Internet Of ThingsIoT概念广为普及物联网市场发展迅猛嵌入式设备的联网已是大势所趋。终端联网使得软件复杂性大幅增加传统的 RTOS 内核已经越来越难满足市场的需求在这种情况下物联网操作系统IoT OS的概念应运而生。RT-Thread标准版与其他很多 RTOS 如 FreeRTOS、uC/OS 的主要区别之一是它不仅仅是一个实时内核还具备丰富的中间层组件相当于RTOSLWIP如下图所示。 本篇文章以rt-thread-master为例为大家讲解移植具体内核与设备驱动学习可以见官网详细说明 https://www.rt-thread.org/document/
1.3 ENV简介 env 是 RT-Thread 推出的开发辅助工具针对基于 RT-Thread 操作系统的项目工程提供编译构建环境、图形化系统配置及软件包管理三大功能。其内置的 menuconfig 提供了简单易用的配置剪裁工具可对内核、组件和软件包进行自由裁剪使系统以搭积木的方式进行构建。有以下特性
menuconfig 图形化配置界面交互性好操作逻辑强丰富的文字帮助说明配置无需查阅文档使用灵活自动处理依赖功能开关彻底自动生成 rtconfig.h无需手动修改使用 scons 工具生成工程提供编译环境操作简单提供多种软件包模块化软件包耦合关联少可维护性好软件包可在线下载软件包持续集成包可靠性高
二、开发环境搭建
2.1 MDK安装 MDK安装与使用见下链接注意串口驱动CH340-以及ST-Link驱动的安装 https://blog.csdn.net/weixin_44567668/article/details/134191384
2.2 Git安装 Env软件包管理功能需要git的支持Git的安装与命令操作见以下链接 https://blog.csdn.net/weixin_44567668/article/details/125102572
2.3 RT-Thread相关下载 RT-Thread内核源码与ENV工具前往RT-Thread官网下载 https://www.rt-thread.org/download.html
2.4 其他素材
正点原子W601 RTT例程W601官方SDK星通智联串口调试下载助手
下载链接https://download.csdn.net/download/weixin_44567668/88692870
三、移植RT-Thread 本来想详细写的发现内容太多遂放弃。本小节只介绍移植注意事项此外需要对Keil使用的了解见2.1小节 首先打开工程光标停在C文件上就可以看见文件所在目录位置这样就可以在Manage Project Items添加文件 注意libc文件可以不用这是RTT的一个组件我们常用的组件就需要finsh就够了 然后打开Options for Target-Target注意ROM与RAM的起始位置。ROM的地址是因为Flash里RUN AREA区起始地址为0x8010000而RUN PARAM又占用了 256 个字节所以代码实际存放的位置是从0x80100000x1000x8010100地址处开始的。 然后在User选项卡里注意下面这两个文件。其中 Run #1为调用 MDK 提供的工具生成 bin 文件bin 文件的名字为 Output 选项卡中设置的名字。Run #2为调用官方提供的 makeimg.exe 和 makeimg_all.exe 工具生成 FLS 文件可用于 W601 芯片串口升级功能。由于 makeimg.bat 脚本中固定了 bin 文件名所以请不要随意修改 Output 选项中的名字。
fromelf --bin !L --output rtthread.bin
.\makeimg.bat最后注意的是Linker要取消勾选Use Memory Layout Target Dialog使用drivers目录下编译工具链。点击Edit可以发现链接里的ROM和RAM设置与Option里的默认配置不一样 剩下的就是常规的移植与配置
四、ENV使用 下载好了之后解压点击env.exe控制台菜单栏右击-Settings 点击Integration点击Register注册到环境变量最后保存设置 此时可以在空白处右击打开env 在工程目录下右击打开env 注意第一次打开 env 时杀毒软件可能会误报务必添加其至信任白名单 输入以下命令可以编译
scons # 编译
scons --targetiar # 编译生成IAR工程
scons --targetmdk5 # 编译生成MDK5工程注意如果工程目录有中文会编译失败 输入menuconfig打开配置项目。menuconfig是图形化界面它丰富的配置菜单可以自动处理依赖自动生成 rtconfig.h RT-Thread 提供一个软件包管理平台这里存放了官方提供或开发者提供的软件包。这些软件包位于 RT-Thread online packages 菜单下进入该菜单后则可以看如下软件包分类 找到你需要的软件包然后选中开启保存并退出menuconfig 。此时软件包已被标记选中但是还没有下载到本地所以还无法使用。
下载 如果软件包在本地已被选中但是未下载此时输入pkgs --update 该软件包自动下载更新 如果选中的软件包在服务器端有更新并且版本号选择的是 latest 。此时输入 pkgs --update 该软件包将会在本地进行更新删除 某个软件包如果无需使用需要先在 menuconfig 中取消其的选中状态然后再执行 pkgs --update 。此时本地已下载但未被选中的软件包将会被删除。 使用menuconfig -s命令进入Env配置界面进入后看见Env config后按回车 3 个选项分别为软件包自动更新功能在退出 menuconfig 功能后会自动使用pkgs --update命令来下载并安装软件包同时删除旧的软件包。本功能在下载在线软件包时使用。自动创建 MDK 或 IAR 工程功能当修改 menuconfig 配置后 必须输入 scons --targetxxx 来重新生成工程。开启此功能就会在退出 menuconfig 时自动重新生成工程无需再手动输入 scons 命令来重新生成工程。使用镜像服务器下载软件包由于大部分软件包目前均存放在 GitHub 上所以在国内的特殊环境下下载体验非常差。开启此功能可以通过 国内镜像服务器下载软件包大幅提高软件包的下载速度和稳定性
五、W601开发板下载验证
5.1 使用串口下载软件 首先需要安装串口驱动安装见前面开发环境搭建。然后在附件资源里找到星通智联串口调试下载助手双击运行ThingsTurn_Serial_Tool.exe。 选择 ALIENTEK W601 开发板在电脑上的 COM 口在电脑的“控制面板-设备管理器-端口COM 和 LPT”中查看如果电脑的 COM 口太多请插拔开发板的 USB 线观察具体的 COM 口编号。串口参数按如图所示参数进行设。打开串口后还需要选择 FLS 文件路径这里的文件选择上面新建工程并且编译后的 BIN 文件夹路径就可以了如果没有 FLS请先编译工程然后点击下载就可以将程序下载到 W601 芯片。
5.2 ST-Link下载 首先需要安装ST-Link驱动安装见前面开发环境搭建。打开 Options for Target 选项卡在 Debug 栏选择仿真工具为 ST-Link Debugger这里我们还勾选了 Run to main()如图所示 然后我们点击 Settings设置ST-Link的一些参数如图所示 单击 OK完成此部分设置接下来我们还需要在 Utilities 选项卡里面设置下载时的目标编程器我们直接勾选 Use Debug Driver即和调试一样选择高速 DAP 来给目标器件的 FLASH 编程如图所示 然后这里需要拷贝官方提供的下载算法 W60X_QFlash.FLM路径为附件资源\W601的RT-Thread开发环境\WM_SDK\Doc\W60X_QFLASH_Driver_for_SWD\W60X_QFlash文件到MDK安装目录下路径为.\Keil_v5\ARM\Flash如图所示 然后点击 Utilities-Settings在 Download Function 勾选“Reset and Run”功能在“RAM for Algorithm”处需要将 Size 改为“0x00002000”而后点击 Add 选项选择刚刚拷贝的下载算法“Winner Micro 1M Flash V1.0”然后点击 Add添加后最后点击 OK 退出就可以了。 在设置完之后点击确定然后再点击 OK回到 IDE 界面编译一下工程。然后点击下载按钮就可以下载代码到 W601 上面了如图所示