随笔分类 - B1.嵌入式开发基础
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是JLink命令行以及JFlash对于下载算法的作用地址范围认定。 最近痞子衡在给一个 RT1170 客户定制一个 Infineon MirrorBit 类型 64MB Flash 的 SEGGER 下载算法,做完之后在 JFlash 下
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在MDK开发环境下自定义安装与切换不同编译器版本的方法。 Keil MDK 想必是嵌入式开发者最熟悉的工具之一了,自 2005 年 Arm 公司收购 Keil 公司之后,MDK 就走上了发展快车道,从 v2.50a 一路狂奔到现在最新的
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法。 最近和同事在讨论一个客户案例,客户 APP 工程是基于 IAR 开发环境,客户希望将工程里尽可能多的代码都重定向到 RAM 里执行,仅留必要或者指定的源文件代码在 Flas
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是英飞凌MirrorBit工艺NOR Flash的扇区架构设计。 NOR Flash 大家都很熟悉,其内部按组织从小到大分为 Page(128B/256B/512B)、Sector(4KB)、Block(32KB/64KB/128KB/25
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是JLink 7.62优化了手动增加新MCU型号支持方法。 JLink 工具可以说是搞单片机开发的必备神器,JLink 包括一个硬件仿真器(分不同用途的 EDU/BASE/PLUS/WIFI/ULTRA+/PRO)和 PC 机上的驱动软件
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR下手动拷贝自定义程序段到RAM中执行的方法。 在痞子衡旧文 《IAR下RT-Thread工程自定义函数段重定向失效分析》 里,我们知道 IAR 链接器处理自定义程序段重定向是有一些限制的,只要用户重写了底层 __low_level
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是**几家主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计**。 痞子衡之前写过一篇文章 [《串行NOR Flash下载/启动常见影响因素之QE bit》](https://www.cnblogs.com/henj
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家介绍的是国内Cortex-M内核MCU厂商高主频产品。 在 2021 年初痞子衡写了篇 《盘点国内Cortex-M内核MCU厂商高性能产品》,搜罗了当时市面上主频不低于 96MHz 的 CM 核国产 MCU。如今过去了两年,痞子衡又一次梳理了国
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是存储器大厂Micron的NOR Flash芯片特殊丝印设计(FBGA代码)。 痞子衡之前写过一篇文章 《J-Flash在Micron Flash固定区域下载校验失败的故事》,这篇文章里提及了 Micron 家的串行 NOR Flash 与
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家讲的是国内外串行NOR Flash厂商官网Cross Reference功能。 串行 NOR Flash 是一个相对发展稳定的市场,目前全球市场约 90% 的份额被中国的三家厂商(Winbond华邦/MXIC旺宏/GigaDevice兆易创新)
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR下调试信息输出机制之半主机(Semihosting)。 在嵌入式世界里,输出打印信息是一种非常常用的辅助调试手段,借助打印信息,我们可以比较容易地定位和分析程序问题。在嵌入式应用设计里实现打印信息输出的方式有很多,本系列将以 IA
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR下调试信息输出机制之硬件UART外设。 在嵌入式世界里,输出打印信息是一种非常常用的辅助调试手段,借助打印信息,我们可以比较容易地定位和分析程序问题。在嵌入式应用设计里实现打印信息输出的方式有很多,本系列将以 IAR 环境为例逐一
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR内部C-SPY调试组件配套宏文件(.mac)用法。 痞子衡之前写过一篇 《JLink Script文件基础及其在IAR下调用方法》,那篇文章介绍了 J-Link 硬件调试器配套的 .JLinkScript 文件功能及用法,今天我们
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在IAR开发环境下将整个源文件代码重定向到任意RAM中的方法。 痞子衡旧文 《在IAR下将关键函数重定向到RAM中执行的方法》 里介绍了三种关键函数重定向方法,不过这三种方法只是写法形式不同,本质上没啥区别,都是利用 IAR 链接器特性
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR启动函数流程里段初始化实现中可用的压缩选项。 接着 《IAR启动函数流程之段初始化函数__iar_data_init3实现》 一文,咱们再深入一步。对于 .bss 段的初始化,其实没什么好说的,就是简单的清零操作,但是 .data
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR启动函数流程里的段初始化函数__iar_data_init3实现。 本篇是 《IAR启动函数流程及其__low_level_init设计对函数重定向的影响》 一文的后续,在上篇文章里我们在 IAR 软件安装目录下找到了标准启动函数
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是Cortex-M系统中断延迟及其测量方法。 在嵌入式领域里,实时性是个经常被我们挂在嘴边的概念,这里的实时性主要强调得是当外界事件发生时,系统是否能在规定的时间范围内予以响应处理,这个时间阈值越小,系统的实时性就越高。当然关于这个实时性
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是IAR启动函数流程及其__low_level_init设计对函数重定向的影响。 上一篇文章 《IAR下RT-Thread工程自定义函数段重定向失效分析》 里我们找出了影响 IAR 链接器处理自定义程序段重定向的原因,主要跟 __low_
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在IAR开发环境下RT-Thread工程函数重定向失效分析。 痞子衡旧文 《在IAR下将关键函数重定向到RAM中执行的方法》 里介绍了三种关键函数重定向方法,不过这三种方法只是写法形式不同,本质上没啥区别,都是利用 IAR 链接器特性将
阅读全文
摘要:大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是Cortex-M中断向量表对齐原则。 今天这篇文章的内容主要来自于五年前做 Kinetis K32W 系列双核启动时的发现,最近正好有同事碰到了 ARM Cortex-M 中断向量表对齐问题,于是痞子衡想起了这事(感慨自己记性还挺好),
阅读全文