[Vision Board创客营]学习片上Flash移植FAL

文章目录

  • [Vision Board创客营]学习片上Flash移植FAL
    • 介绍
    • 环境搭建
    • 使用
      • 组件
      • 测试
        • porbe
        • erase
        • write
        • read
    • 结语

[Vision Board创客营]学习片上Flash移植FAL

水平较菜,大佬轻喷。😰😰😰

介绍

🚀🚀Vision-Board 开发板是 RT-Thread 推出基于瑞萨 Cortex-M85 架构 RA8D1 芯片,为工程师们提供了一个灵活、全面的开发平台,助力开发者在机器视觉领域获得更深层次的体验。

🚀🚀Vision Board搭载全球首颗 480 MHz Arm Cortex-M85芯片,拥有Helium和TrustZone技术的加持。SDK包里集成了OpenMV机器视觉例程,配合MicroPython 解释器,使其可以流畅地开发机器视觉应用。

img

环境搭建

🚀🚀环境搭建可以查看这个Vision Board 环境搭建文档(https://docs.qq.com/doc/DY2hkbVdiSGV1S3JM),特别需要注意的就是,版本一定要新,我使用之前老版的RASC是不行的,如果开发过程中遇到奇奇怪怪的问题,可以首先检查自己版本的问题。

使用

🚀🚀首先基础的使用我这里就不重复介绍了,官方教程以及Rb导师的视频教程已经足够详细了,我这里就介绍如何移植FAL,因为我是第一次开发Flash,RT-Thread也没接触多少,如有错误还请各位大佬指出,谢谢啦!🙏🙏

🚀🚀值得注意的地方就是,Rb导师已经把BSP更新到了1.1.0,大家用最新的就好。创建完模板工程大概就是下面这样子。

在这里插入图片描述

组件

🚀🚀这边我们打开DFS和Fatfs,主要是后面会用,所以提前打开一下,如果只是移植FAL的话应该可以不开,因为DFS在FAL的上层,暂时用不到。

🚀🚀然后在硬件部分打开片上flash,如下图所示:

在这里插入图片描述

🚀🚀再打开FAL,这里也有点问题,就是现在FAL移植进入内核了,不是软件包了,我还纳闷为啥无法加入。

在这里插入图片描述

🚀🚀然后我们编译一下,不出意外的话出问题了,报错如下:

在这里插入图片描述

🚀🚀这个原因是因为我们没有在RA的RASC里面使能Flash(这里卡了我好久,因为接触瑞萨比较少,不知道Flash要使能,还是问了一下李肯导师才知道的😰😰),所以我们去使能一下:

在这里插入图片描述

在这里插入图片描述

🚀🚀然后我们使初始化fal,代码如下所示:

#include <rtthread.h>
#include <rtdevice.h>
#include "hal_data.h"#define LED_PIN    BSP_IO_PORT_01_PIN_02 /* Onboard LED pins */void hal_entry(void)
{rt_kprintf("\nHello RT-Thread!\n");fal_init();  // 介里while (1){rt_pin_write(LED_PIN, PIN_HIGH);rt_thread_mdelay(500);rt_pin_write(LED_PIN, PIN_LOW);rt_thread_mdelay(500);}
}

🚀🚀搞完了之后再编译还是一堆报错,这个时候我们重启一下Studio,再次编译就好了,问了一下大佬,可能是编译缓存的原因,暂时也没搞懂。

🚀🚀然后接到开发板的DAPlink上面烧录就好了,成功之后应该是这样的:
在这里插入图片描述

测试

🚀🚀然后测试fal命令,如下所示:

porbe
fal probe disk

在这里插入图片描述

erase
fal erase 0 128# msh />fal erase 0 128
# Erase data success. Start from 0x00000000, size is 128.
write
msh />fal write 4 1 2 3 4
Write data success. Start from 0x00000004, size is 4.
Write data: 1 2 3 4 .
read
msh />fal read 0 4
Read data success. Start from 0x00000000, size is 4. The data is:
Offset (h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
[00000000] 82 EF EC C1 

🚀🚀结果如下图所示(第一次接触,不太会用):

在这里插入图片描述

结语

🚀🚀因为是第一次接触,所以很多地方不太懂,请大家见谅,然后Rb导师还要我移植一个文件系统,算是全新的尝试,我也会写一篇文章来记录,谢谢大家!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/630446.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高仿小米商城用户端

高仿小米商城用户端(分为商城前端&#xff08;tongyimall-vue)和商城后端(tongyimall-api)两部分)&#xff0c;是Vue SpringBoot的前后端分离项目&#xff0c;用户端包括首页门户、商品分类、首页轮播、商品展示、商品推荐、购物车、地址管理、下订单、扫码支付等功能模块。 …

单链表-通讯录

目录 单链表实现 通讯录代码实现 初始化 初始化函数 添加 删除 展示 查找 修改 销毁 代码展示 main.c text.c text.h list.c list.h 和前面的通讯录实现差不多这次就是实现一个以单链表为底层的通讯录 单链表实现 数据结构&#xff1a;单链表-CSDN博客 通讯…

Springboot+Vue项目-基于Java+MySQL的高校心理教育辅导系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

现在给政府机关医院学校部队供货的方式有哪些?

给政府机关、医院、学校和部队供货的方式主要包括以下几种&#xff1a; 直接采购&#xff1a;政府机关、医院、学校和部队通过招标或直接与供应商进行谈判&#xff0c;确定采购的产品和价格。这种方式常见于大宗或重要物资的采购&#xff0c;能够确保采购过程的透明度和公正性…

【笔试强训】双指针的思想!

1.数组中字符串的最小距离 题目链接 解题思路&#xff1a; 小技巧 ✌&#xff1a;标记两个字符串是否被找到&#xff0c;每次找到一个字符串就更新一次答案来保证找到的是最小距离。 实现代码&#xff1a; #include <iostream> using namespace std;int main() {in…

阿斯利康、赫力昂、京东健康、宝洁等行业大咖齐聚2024中国消费者健康数字创新峰会

随着健康中国2030战略规划不断推进&#xff0c;消费者健康市场发展也日趋强劲&#xff0c;体现出健康消费意识提前&#xff0c;自我健康管理意识增强的局面。后疫情时代下&#xff0c;消费者健康市场呈现出卓越的韧性与活力。 由ECV International倾力打造的2024中国消费者健康…

微服务之CircuitBreaker断路器

一、概述 1.1背景 在一个分布式系统中&#xff0c;每个服务都可能会调用其它的服务器&#xff0c;服务之间是相互调用相互依赖。假如微服务A调用微服务B和微服务C&#xff0c;微服务B和微服务C又调用其他的微服务。这就是构成所谓“扇出”。 如果扇出的链路上某个微服务的调…

Goland远程连接Linux进行项目开发

文章目录 1、Linux上安装go的环境&#xff12;、配置远程连接3、其他配置入口 跑新项目&#xff0c;有个confluent-Kafka-go的依赖在Windows上编译不通过&#xff0c;报错信息&#xff1a; undefined reference to __imp__xxx似乎是这个依赖在Windows上不支持&#xff0c;选择让…

MES给制造业带来看得见的效益

作为连接生产控制系统和企业管理系统的纽带&#xff0c;MES为企业提供实时生产数据&#xff0c;帮助企业进行更加明智的决策&#xff0c;并实时调整生产管理&#xff0c;最终降低运营成本、提高运营利润和资产利用率、保证生产安全与合规。 MES主要功能包括工艺技术管理、生产…

Tomcat和Spring Boot配置https

生成测试证书 生成证书前&#xff0c;先验证本地是否正确配置jdk环境变量&#xff0c;如果jdk环境变量配置正确&#xff0c;在命令行程序输入生成证书的命令。 keytool -genkey -alias tomcat -keyalg RSA -keystore "F:\job\apache-tomcat-8.5.29\key\freeHttps.keysto…

如何使用WinSCP通过固定公网TCP地址实现远程连接内网设备传输文件

文章目录 1. 简介2. 软件下载安装&#xff1a;3. SSH链接服务器4. WinSCP使用公网TCP地址链接本地服务器5. WinSCP使用固定公网TCP地址访问服务器 1. 简介 ​ Winscp是一个支持SSH(Secure SHell)的可视化SCP(Secure Copy)文件传输软件&#xff0c;它的主要功能是在本地与远程计…

SAP HCM 离职是1号 正确计算免税金额

员工是1号离职&#xff0c;如何正确计算个税中的免税金额&#xff0c;例如员工2024年3月1日离职&#xff0c;现在计算2月的工资&#xff0c;因为是下发薪所以&#xff0c;12月、1月、2月是三个月&#xff0c;3*500015000&#xff0c;但是系统计只有10000. 如果要计算出三个月&a…