ART-Pi入门篇——(三)ART-Pi代码手册-程序员宅基地

技术标签: RTT  OS  ART-Pi  RTThread  IoT  

SDK 代码 框架介绍

在这里插入图片描述
工程项目代码由三部分构成,分别是 通用驱动库,工程逻辑代码,RT-Thread 源码,下面的表格来详细介绍这个三个部分:

工程项目代码 文件夹 说明
通用驱动库 libraries 用于存放 HAL 库以,基于 HAL 库的外设驱动文件以及其他通用库
工程逻辑代码 projects 项目工程文件夹,包含了各种开源例程
RT-Thread 源码 rt-thread RT-Thread 源码

ART-Pi 除了配备一颗 W25Q64JV 用于存放程序外,同时配备了另一颗 W25Q128JV 用于存放 WIFI 固件,蓝牙固件,等其它数据.
为了保证 NOR FLASH (W25Q128) 的数据的安全性,对 NOR FLASH 做了统一约束,使用 FAL 制定统一分区,分区情况见下表:(官方建议这颗 W25Q128JV 的空间划分如下:)

分区名 分区起始地址 分区大小(bytes) 说明
wifi_image 0 512 K 保存 WIFI 固件
bt_image 512 * 1024 512 K 保存 BT 固件
download 1024 * 1024 2048 K 下载固件分区
easyflash 3 * 1024 * 1024 1024 K easyflash 保存参数分区
filesystem 4 * 1024 * 1024 12 M 挂载文件系统分区

开发阶段

  1. 按照例程需求,编写例程代码,代码编写需符合《RT-Thread 编程风格》,Git 提交日志信息描述清晰

  2. 软件代码尽可能的简洁,保证用户看到的代码清晰,容易理解。在 menuconfig 中也不要开启无关选项

    menuconfig 中目录名称说明

  - Hardware Drivers Config    硬件驱动配置
    - Board extended module    外部扩展板相关的选项
      - ART-Media              多媒体扩展板相关选项 如:wm8988
      - ART-Industrial         工业扩展板相关选项 如:LWIP
      - ART-Lorawan Lorawan    扩展板相关选项
    - Onboard Peripheral       板载外设相关选项 如:AP6212
    - On-chip Peripheral       片上外设相关选项 如:ADC
  - External Libraries         外部扩展库选项 如:wifi Library
  1. 片上外设驱动统一放在 libraries\drivers 目录下 如 drv_eth.c
  2. 扩展板相关的组件在 libraries 目录下创建相关的文件夹,并放置相关代码 如:libraries/audio 目录下存放 drv_wm8988.c 以及 MP3 解码库
  3. 如果项目中使用到了软件包
  • 软件包的版本 必须 选择为 release 版本。如果没有,请联系管理员尽快发布
  1. 项目工程 README
  • 创建的例程必须详细写明该例程实现的功能
  • 写明该例程的操作说明
  • 写明该例程的注意事项
  • 填写维护人联系信息
  1. 新建 docs 文件夹放在工程目录下 如:sdk-bsp-stm32h750-realthread-artpi\projects\art_pi_wifi\docs
  • 编写项目 设计思想.md。包含项目设计思想,简要的逻辑实现流程图。
  1. 参考 RealThread_STMH750-ART-Pi.yaml 文件内信息,修改 yaml 文件,增加新例程的描述信息
  2. 开发收尾前,需要手动打包 SDK 生成 ZIP 文件,使用 Studio 导入离线 SDK 的方式检查新建的 project 能正常被创建,能编译通过,能正常下载。保证开发者拿到手的例程是可以做到 开箱即用
  • 打包成 zip 文件
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v9zkxhdy-1642233508729)(./figures/sdk_zip.png)]

  • 导入离线 SDK
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AvCm8nU0-1642233508730)(./figures/resource_pack.png)]

  • 新建工程,保证能正常编译通过,能正常下载
    (img-Q7Ad8ecs-1642233508731)(./figures/creat_project.png)]

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lgyLGY35/article/details/122511392

智能推荐

laravel注册页面(jquery验证)_$("#coderandom").val(data.message)-程序员宅基地

文章浏览阅读792次。html<form class="reg_info" action="" method="post"> <div class="col-md-6 login-do1 animated wow fadeInLeft" data-wow-delay=".5s"> @if(count($errors)>0) @if_$("#coderandom").val(data.message)

texstudio统计字数-程序员宅基地

文章浏览阅读2.5w次,点赞10次,收藏8次。texstudio:工具-分析文本不同的词组70个,意思是有70个单词_texstudio统计字数

python 七大数据类型-程序员宅基地

文章浏览阅读213次。python 七大数据类型

吉时利Keithley 4200-SCS参数分析仪_吉时利了4200-scs-程序员宅基地

文章浏览阅读51次。它可以帮助研究人员对不同材料的电学特性进行准确测量和分析。-KEITHLEY吉时利4200-SCS半导体特性分析系统还被广泛应用于功率器件的研究和测试。-在光电子学领域,KEITHLEY吉时利4200-SCS半导体特性分析系统可用于测量光电二极管和太阳能电池等器件的性能。它为学生和研究人员提供了一个实验平台,可以进行各种半导体器件的测量和分析实验,促进他们的学习和研究成果。-在半导体器件制造过程中,KEITHLEY吉时利4200-SCS半导体特性分析系统可用于对制造过程中的器件进行测试和质量控制。_吉时利了4200-scs

Casey 正统 Runes 协议的发行和转账|本地 Bitcoin 网络实操_比特币符文部署教程-程序员宅基地

文章浏览阅读991次,点赞22次,收藏18次。Casey 正统 Runes 协议的发行和转账|本地 Bitcoin 网络实操 _比特币符文部署教程

java outputstream api_java – 从OutputStream创建一个文件-程序员宅基地

文章浏览阅读648次。我有这个问题,我正在创建一个文件,但这是创建空文件.我使用的是Dropbox的API,Dropbox的代码运行良好,但我不知道我不好.我已经为我的应用程序使用了2º和3º代码,这是运行良好.这通过分层次操作.我正在发送outputStream用于功能.但这是空的.我正在使用outputStream,因为我需要它与outputstream一起运行.1º代码(Class Test || Call):F..._outputstream生成文件

随便推点

Android开发之PopupWindow(实现弹窗)_android popupwindow-程序员宅基地

文章浏览阅读6.8k次,点赞8次,收藏36次。包括唤出弹窗、弹窗内容的自定义与监听。_android popupwindow

TOMCAT 中间件安全加固_中间件加固方案-程序员宅基地

文章浏览阅读228次。对于一些常见的错误页面,我们可以在配置文件/etc/tomcat/web.xml中,重定向403、404以及500错误到指定页面。在这里插入图片描述我们现在在web.xml配置文件中加入error-page参数。在这里插入图片描述我们现在编辑我们的错误页面。该错误页默认放在我们webapps目录中。在这里插入图片描述这里是我们tomcat默认的页面所在位置。在这里插入图片描述重启tomcat服务,我们可以看到,页面为我们自定义的错误页面了。在这里插入图片描述。_中间件加固方案

layui实现数据表格table的搜索功能_layui table查询-程序员宅基地

文章浏览阅读3.1k次,点赞2次,收藏10次。layui根据特定信息对表格进行搜索并显示效果实现html部分js部分Controller层Mapper层注意总结效果先放效果图此处根据“角色名称”进行搜索,得到效果实现html部分此处注意!!需要要为input、table里边加上“id”属性,在js部分需要特定进行获取。<div class="layuimini-container"> <div class="layuimini-main"> _layui table查询

机器学习中的数学——深度学习优化的挑战:病态_优化函数 病态-程序员宅基地

文章浏览阅读1.5w次,点赞5次,收藏7次。优化通常是一个极其困难的任务。传统的机器学习会小心设计目标函数和约束,以确保优化问题是凸的,从而避免一般优化问题的复杂度。在训练神经网络时,我们肯定会遇到一般的非凸情况。即使是凸优化,也并非没有任何问题。在本文中,我们会总结几个训练深度模型时会涉及的主要挑战。病态在优化凸函数时,会遇到一些挑战。这其中最突出的是Hessian矩阵HHH的病态。这是数值优化、凸优化或其他形式的优化中普遍存在的问题。病态问题一般被认为存在于神经网络训练过程中。病态体现在随机梯度下降会“卡”在某些情况,此时即使很小的更新步长也_优化函数 病态

Spring Boot配置文件_server: port: 8084 spring: application: name: insi-程序员宅基地

文章浏览阅读356次。idea小技巧:Alt+Ins:快速调出getter、setter方法或toString等方法。二、配置文件1、配置文件SpringBoot使用一个全局的配置文件,配置文件名是固定的;application.propertiesapplication.yml配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;YAML(YAML Ain’t Markup Language)​ YAML A Markup Langu._server: port: 8084 spring: application: name: insideoperation-server profile

jetpack compose原理解析-程序员宅基地

文章浏览阅读3.4k次,点赞7次,收藏7次。目录jetpack compse原理解析jetpack compse声明式ui开发原理分析整体框架介绍compose LayoutNode布局介绍@Composeable注解实现细节属性更新小结jetpack compse原理解析jetpack compseJetpack Compose是Google在2019 I/O大会上公布开源的一个非捆绑工具包。Jetpack Compose是用于构建原生Android UI的现代工具包。 Jetpack Compose使用更少的代码,强大的工具和直观的Kotl_jetpack compose原理

推荐文章

热门文章

相关标签