大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在i.MXRT1xxx系列上用NAND型启动设备时可用两级设计缩短启动时间。 去年痞子衡写过一篇骚操作文章 《借助i.MXRT10xx系列INIT_VTOR功能可以缩短程序热重启时间》,这对于 NAND 型启动设备上程序热重启时间的缩短 ...
在上一篇中,老周用 .NET Nano Framework 给大伙伴们演示了 WS2812 灯带的控制,包括用 SPI 和 红外RMT 的方式。利用 RMT 是一个很机灵的方案,不过,可能很多大伙伴对 ESP32 的 RMT 不是很熟悉。除了乐鑫自己的文档,没几个人写过相关的水文,可见这里头空白的水 ...
/******************************************************************************************************** * * 提高可移植性 Copyright (c) 2023-2024 cececlmx@ ...
为什么要使用操作系统 使用操作系统的主要原因是为了实现 CPU 多进程分时复用以及内存隔离 如果没有操作系统,应用程序会直接与硬件进行交互,这时应用程序会直接使用 CPU,比如假设只有一个 CPU 核,一个应用程序在这个 CPU 核上运行,但是同时其他程序也需要运行,因为没有操作系统来帮助切换,就需 ...
Part1:sleep 实验要求与提示 可以参考 user/echo.c, user/grep.c 和 user/rm.c 文件 如果用户忘记传递参数,sleep 应该打印一条错误消息 命令行参数传递时为字符串,可以使用 atoi 函数将字符串转为数字 使用系统调用 sleep,有关实现 sleep ...
一、工程简介 MultiButton 是一个小巧简单易用的事件驱动型按键驱动模块。 Github地址:https://github.com/0x1abin/MultiButton 这个项目非常精简,只有两个文件: (1)可无限扩展按键; (2)按键事件的回调异步处理方式可以简化程序结构,去除冗余的按 ...
课程简介 课程目标 理解操作系统的设计和实现 通过 XV6 操作系统动手实验,可以扩展或改进操作系统 操作系统的目标 Abstraction:对硬件进行抽象 Multiplex:在多个应用程序之间共用硬件资源 Isolation:隔离性,程序出现故障时,不同程序之间不能相互干扰 Sharing:实现 ...
ESP32 Arduino开发 MQTT 目录ESP32 Arduino开发 MQTT1. 安装程序库2. 编写相关程序2.1. 引入头文件2.2. 定义MQTT相关参数2.3. 创建对象2.4. 连接网络2.5. 连接MQTT服务器2.6. MQTT回调函数3. 完整的代码例程4. MQTT连接测 ...
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是使能i.MXRT1050, 1060 Hab签名或加密启动时App链接在片内SRAM的限制。 最近有客户反馈,在 RT1060 上测试 Non-XIP 程序启动,如果程序体部分链接进 0x20280000 地址之后的片内 OCRAM 区 ...
在我写虚拟内存时遇到一些问题,jalr t0就是可以的,而call main则没办法成功 而且这里默认main是偏移前的地址,怪哉!!! 让我们看看jalr 和call(伪指令!!!) 然后在链接后看看main的地址,主要看程序中main是不是偏移 悬着的心也死了!!! 查看一下ucore也有类似的 ...
痞子衡嵌入式半月刊: 第 97 期 这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,投稿或推荐你知道的嵌入式那些事儿。 上期回顾 ...
因为当前项目单片机容量不够使用,打算开启编译器优化,结果在使用KEIL编译器优化后,程序在发送Modbus数据时,程序直接跑飞了 先说结论: 最后发现是局部变量指针作为了DMA的内存地址参数,导致当DMA连续搬运数据时,实际那个局部变量已经被释放,导致DMA搬运数据的过程中出现错误,但是为什么没优化 ...
ESP-IDF NVS 目录ESP-IDF NVS1. 什么是NVS?2. NVS中的概念2.1. partition 分区2.2. namespace 命名空间2.3. key-value 键值对3. ESP-IDF中NVS的代码实现 1. 什么是NVS? 非易失性存储 (NVS) 库主要用于在 ...
MCP2515是SPI转CAN 模块 建议在完成且掌握泰山派小手机项目的全过程后进行此操作,这样难度会低一些 目标平台: 泰山派 连接: rk3566(泰山派)的spi3各管脚连接MCP2515的SPI接口,另外MCP2515还需要一个中断引脚,用到的全部管脚如下: 其中GPIO3_A6为中断引脚 ...
关于PPM输出的具体实现我们必然先知道其原理,本人是参考站内qiyuexin大佬的PPM 信号解析这篇文章。 基本要点 1.ppm每个通道所占用的时间并不固定 2.ppm的精度主要受制于时钟精度 3.对于一个通道数据每次开头都有0.5ms的固定低电平,之后跟着0.5ms的固定的高电平,之后是0 - ...
g++编译os的memory'时不知道为什么报错。尝试了很多方法(也可能搜错了) 可以确定是纯虚函数出现了问题 复习一下虚函数的子类构造和析构的过程吧(一年过去了) 允许派生类调用父类的同名函数而实现不同的功能,也叫动态联编。 底层原理:虚函数表+虚函数表指针。每一个类都会对应一个虚函数表,一个存放 ...
大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是i.MXRT1xxx系列GPIO提早供电会影响上电时序导致内部DCDC启动失败。 最近有一个 RW612 产品线的同事在设计一个双 MCU 系统 Demo 时发现,当 RW612 板卡和 RT1060 板卡通过 UART 对接时,如果 ...
代码参考出处:https://github.com/mcuwty/osal.git 我在此此基础上做了整理,移植到了stm32f103上:demo链接: https://pan.baidu.com/s/1WoL8QCnicxO11hdeh4uh2Q 提取码: wsn3 参考资料: 学习笔记(二)—— ...
参考 Fedora Quick Docs Fedora Server Documentation Deploy an ARM64 Fedora VM on your PC: 3 steps Architectures/AArch64/Install with QEMU Virtualization ...
痞子衡嵌入式半月刊: 第 96 期 这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。 本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,投稿或推荐你知道的嵌入式那些事儿。 上期回顾 ...