痞子衡MCU裸机基础+通用外设相关文章 - 汇总索引

--------------------------------------------------------------------------------------

职场经验与见闻感悟

痞子衡在嵌入式行业也摸打滚爬了不少年,有一些个人经验可以给大家参考。所谓他山之石可以攻玉,希望痞子衡的经验对大家的职场之路有所帮助。

职场经验篇(持续更新中...4/4)

职场上有效地向师傅请教问题的几点建议
关于做技术的工作态度方面的几点建议
工作多年的工程师且看这四条进阶之路
读工程师岗位工作31年退休的同事离职信有感

博文总结篇(持续更新中...11/11)

Farewell, 我的写博故事2016-2019
Farewell, 我的写博故事2020
博文总量终于追平了中文Kinetis博客第一人jicheng0622
博客园积分排名终于挤进了前3000名榜单
Farewell, 我的写博故事2021
入选了2021年度与非网(eefocus)星选创作者Top10
Farewell, 我的写博故事2022
拿到了CSDN博客专家实体证书
Farewell, 我的写博故事2023
拿到了2023年度电子星球(eestar)黑马作者
入选了2023年度与非网(eefocus)最佳创作者Top15

社区活动篇(持续更新中...3/3)

被邀请做贸泽电子&与非网联合推出的《对话工程师》节目嘉宾
被邀请做科锐国际旗下数科同道主办的技术沙龙嘉宾
被邀请做嵌入式联盟主办的职场奇葩说(上海站)辩手

NXP岁月篇(持续更新中...8/8)

当选了2019年度恩智浦官方论坛i.MXRT板块的顶级贡献者
关于恩智浦入驻B站的一些思考
三个小项目陆续上线恩智浦官方Github
为2021 TencentOS Tiny AIoT应用创新大赛做了场直播培训
在恩智浦度过职业生涯第一个十年
AppCodeHub - 一站网罗恩智浦MCU应用程序
在华邦电子&恩智浦2023联合技术论坛当了回演讲嘉宾
在华邦电子&恩智浦2024联合技术论坛继续担任演讲嘉宾

--------------------------------------------------------------------------------------

嵌入式从业者应知应会知识点

嵌入式开发需要掌握的知识点非常多,不同的技术方向有不同的知识侧重点,本系列试图整理总结嵌入式开发(尤其是软件)中那些必须要会的知识点,试图给你呈现一幅嵌入式界的清明上河图,本系列计划连更十年,且让时间给答案。

计算机原理篇(持续更新中...1/2)

不可不知的计算机原理知识(1)- 整数表示(原码,反码,补码)
不可不知的计算机原理知识(2)- 浮点数表示

嵌入式碎片集(持续更新中...9/10)

嵌入式里堆栈原理及其纯C实现
ARM Cortex-M内核下字节对齐访问问题
嵌入式里通用微秒(microseconds)计时函数框架设计与实现
嵌入式里串口(UART)自动波特率识别程序设计与实现(中断)
嵌入式里串口(UART)自动波特率识别程序设计与实现(轮询)
嵌入式Cortex-M中标准的三重中断控制设计
嵌入式Cortex-M裸机环境下临界区保护的三种实现
嵌入式Cortex-M中断向量表原理及其重定向方法
嵌入式Cortex-M中断向量表对齐原则的深入研究
嵌入式Cortex-M系统中断延迟及其测量方法简介

代码规范篇(持续更新中...3/3)

开源软件协议(MIT/BSD/Apache/LGPL/MPL/GPL)
飞思卡尔半导体软件开发C代码规范
恩智浦SDK驱动代码风格、模板、检查工具

数据差错控制篇(持续更新中...3/6)

常用的数据差错控制技术(1)- 重复校验(Repetition Code)
常用的数据差错控制技术(2)- 奇偶校验(Parity Check)
常用的数据差错控制技术(3)- 和校验(Checksum)
常用的数据差错控制技术(4)- 循环冗余校验(CRC)
常用的数据差错控制技术(5)- 汉明码校验(Hamming Code SEC-DED)
常用的数据差错控制技术(6)- 博斯-乔赫里-霍克文黑姆码校验(BCH Code)

行业标准篇(持续更新中...7/9)

微控制器CPU性能测试基准(EEMBC-CoreMark)
微处理器CPU性能测试基准(Dhrystone)
并行NAND接口标准(ONFI)及SLC Raw NAND简介
并行NAND互操作性标准(JESD230)
并行NOR接口标准(CFI-JESD68)及SLC Parallel NOR简介
串行EEPROM接口事实标准及SPI EEPROM简介
串行NOR接口标准(SFDP-JESD216)及QuadSPI NOR简介
高速串行NOR兼容性标准(xSPI-JESD251)及OctalSPI/HyperBus NOR简介
内存读写正确性压力测试程序(memtester)

Keil MDK知识篇(持续更新中...3/3)

一个奇怪的Keil MDK下变量链接强制对齐报错问题(--legacyalign)
在MDK开发环境下将关键函数重定向到RAM中执行的几种方法
在MDK开发环境下自定义安装与切换不同编译器版本的方法

IAR EWARM知识篇(持续更新中...14/14)

在IAR开发环境下为工程开启CRC完整性校验功能的方法
探析开启CRC完整性校验的IAR工程生成.out和.bin文件先后顺序
一次利用IAR自带CRC完整性校验功能的实践(为KBOOT加BCA)
在IAR开发环境下将关键函数重定向到RAM中执行的三种方法
在IAR开发环境下将整个源文件代码重定向到任意RAM中的方法
在IAR开发环境下RT-Thread工程自定义函数段重定向失效分析
深扒IAR启动函数流程及其__low_level_init设计对函数重定向的影响
深扒IAR启动函数流程之段初始化函数__iar_data_init3实现
深扒IAR启动函数流程之段初始化实现中可用的压缩选项(zeros/packbits/lz77)
在IAR开发环境下手动拷贝自定义程序段到RAM中执行的方法
在IAR开发环境下将尽可能多的代码重定向到RAM中执行的方法
IAR内部C-SPY调试组件配套宏文件(.mac)用法介绍
浅析IAR下调试信息输出机制之硬件UART外设
浅析IAR下调试信息输出机制之半主机(Semihosting)

JLink工具知识篇(持续更新中...3/3)

JLink Script文件基础及其在IAR下调用方法
从JLink V7.62开始优化了手动增加新MCU型号支持方法
JLink命令行以及JFlash对于下载算法的作用地址范围认定

存储器冷知识篇(持续更新中...6/6)

串行NOR Flash的DQS信号功能简介
串行NOR Flash的页编程模式对于量产效率的影响
国内外串行NOR Flash厂商官网Cross Reference功能使用体验
存储器大厂Micron的NOR Flash芯片特殊丝印设计(FBGA代码)
主流QuadSPI NOR Flash厂商关于QE位与IO功能复用关联设计
英飞凌MirrorBit工艺NOR Flash的扇区架构设计

厂商盘点篇(持续更新中...3/3)

盘点国内Cortex-M内核MCU厂商高性能产品(2021版 - 主频不低于96MHz)
盘点国内Cortex-M内核MCU厂商高主频产品(2023版 - 主频不低于144MHz)
盘点国内车规级MCU厂商(2020年及之前发布产品)

--------------------------------------------------------------------------------------

恩智浦MCU开发环境与工具相关知识

恩智浦半导体的MCU产品线非常之广,其配套软件开发工具也非常强大,基本可以涵盖项目开发全过程所需要的各种工具,利用好这些工具可以大大加速项目开发。

MCUXpresso SDK篇(持续更新中...1/1)

恩智浦MCUXpresso SDK在GitHub上线了

MCUXpresso IDE篇(持续更新中...15/15)

MCUXpresso IDE下SDK工程导入与workspace管理机制
MCUXpresso IDE下添加新路径下源文件进工程编译的方法
MCUXpresso IDE下添加C++源文件进SDK工程编译的方法
MCUXpresso IDE下C++源文件中嵌套定义的复合数据类型命名空间认定
MCUXpresso IDE下SDK工程在Build配置上与IAR,MDK差异
MCUXpresso IDE下工程链接文件配置管理与自动生成机制
MCUXpresso IDE下将应用程序RW段分散链接的几种方法
MCUXpresso IDE下将关键函数重定向到RAM中执行的几种方法
MCUXpresso IDE下高度灵活的FreeMarker链接文件模板机制
MCUXpresso IDE下将源码制作成Lib库方法及其与IAR,MDK差异
MCUXpresso IDE下设置代码编译优化等级的几种方法
MCUXpresso IDE下生成镜像文件的方法及其与IAR,MDK差异
MCUXpresso IDE下使用J-Link下载算法在Flash调试注意事项
MCUXpresso IDE下在线调试时使用不同复位策略的现象总结
MCUXpresso IDE下在线联合调试i.MXRT1170双核工程的三种方法

MCUXpresso for VS Code篇(持续更新中...1/1)

MCUXpresso for VS Code开发环境搭建及SDK工程导入

MCUXpresso Config Tools篇(持续更新中...1/1)

MCUXpresso Config Tools初体验(Pins, Clocks, Peripherals)

--------------------------------------------------------------------------------------

恩智浦MCX系列微控制器相关知识

恩智浦半导体于2022年11月发布MCX系列MCU,分为四大子系列N/A/W/L,可涵盖任何终端设备,从消费者到工业以及介于两者之间的一切。其中N系列首批产品:MCX N94x(主频 150MHz 双核 Cortex-M33,N1-16 系列 NPU,CoolFlux BSP32 型音频处理单元)和MCX N54x,专为简化安全智能边缘应用(包括物联网和工业应用)打造。

  本系列文章会逐一介绍MCX系列微控制器开发相关知识。

芯闻篇(持续更新中...1/1)

低功耗&高性能边缘人工智能应用的新答案 - MCXN947

调试篇(持续更新中...)

启动篇(持续更新中...)

--------------------------------------------------------------------------------------

恩智浦i.MX RT三位数系列微控制器相关知识

恩智浦半导体于2018年10月发布的i.MX RT三位数系列开启了ML/AI MCU的新纪元,其第一款芯片i.MX RT685,搭载一颗主频高达300MHz的Cortex-M33内核,以及一颗主频高达600MHz的Cadence Tensilica HiFi4 DSP。主要面向实时机器学习(ML)/人工智能(AI)应用。

芯闻篇(持续更新中...2/2)

为下一代智能可穿戴设备而生 - i.MXRT500
为下一代AI智能边缘设备而生 - i.MXRT700

介绍篇(持续更新中...2/2)

恩智浦i.MX RTxxx系列MCU特性那些事(1)- 概览
恩智浦i.MX RTxxx系列MCU特性那些事(2)- RT685SFVK性能实测(Dhrystone)

启动篇(持续更新中...8/12)

恩智浦i.MX RTxxx系列MCU启动那些事(1)- Boot简介
恩智浦i.MX RTxxx系列MCU启动那些事(2)- Boot配置(ISP Pin/OTP)
恩智浦i.MX RTxxx系列MCU启动那些事(3)- Serial ISP模式(blhost)
恩智浦i.MX RTxxx系列MCU启动那些事(4)- OTP及其烧写方法
恩智浦i.MX RTxxx系列MCU启动那些事(5)- Bootable image格式与加载(elftosb/.json)
恩智浦i.MX RTxxx系列MCU启动那些事(6)- 从Serial(Multi-IO) NOR启动
恩智浦i.MX RTxxx系列MCU启动那些事(6.A)- FlexSPI NOR启动时间(RT500)
恩智浦i.MX RTxxx系列MCU启动那些事(6.B)- FlexSPI NOR连接方式大全(RT600)
恩智浦i.MX RTxxx系列MCU启动那些事(6.B)- FlexSPI NOR连接方式大全(RT500)
恩智浦i.MX RTxxx系列MCU启动那些事(7)- 从SD/eMMC启动
恩智浦i.MX RTxxx系列MCU启动那些事(8)- 从Serial(1-bit SPI) NOR恢复启动
恩智浦i.MX RTxxx系列MCU启动那些事(9)- 动态解密安全启动需知(OTFAD)

经验篇(持续更新中...13/13)

类别 文章
系统启动 一种i.MXRT下从App中进入ROM串行下载模式的方法
快速定位i.MXRT600板级设计ISP[2:0]启动模式引脚上电时序问题的方法
i.MXRT连接特殊Octal Flash时(OPI DTR模式下反转字节序)下载与启动注意事项(以MX25UM51245为例)
了解i.MXRTxxx系列ROM中灵活的串行NOR Flash启动硬复位引脚选择
深扒i.MXRTxxx系列ROM中集成的串行NOR Flash启动SW Reset功能及其应用场合
揭秘i.MXRTxxx系列上串行NOR Flash双程序可交替启动设计
片内存储 对比i.MXRT与LPC在RTC外设GPREG寄存器使用上的异同
从功耗测试角度了解i.MXRTxxx系列片内SRAM分区电源控制
下载算法 轻松为i.MXRT设计更新Segger J-Link Flash下载算法文件(i.MXRT600为例)
在线升级 了解i.MXRTxxx系列ROM API及其与i.MXRT1xxx系列的差异
解锁i.MXRTxxx上FlexSPI模块自带的地址重映射(Remap)功能
仿真调试 揭秘i.MXRT600的ISP模式下用J-Link连接后PC总是停在0x1c04a的原因(Debug Mailbox)
通用外设
双核通信
外存扩展 不清i.MXRTxxx里FLEXSPI_MCR0寄存器保留位会造成IP CMD读写异常
性能分析
安全可靠

项目篇(持续更新中...1/1)

RT-MFB - 一种灵活的i.MXRT下多串行NOR Flash型号选择的量产方案

--------------------------------------------------------------------------------------

恩智浦i.MX RT四位数系列微控制器相关知识

恩智浦半导体于2017年10月发布的i.MX RT四位数系列开启了高性能MCU的新纪元,其第一款芯片i.MX RT1052,搭载Cortex-M7内核,主频高达600MHz,CoreMark跑分高达3020。

资料篇(全1篇已完结)

史上最强i.MX RT学习资源汇总(持续更新中...)

芯闻篇(持续更新中...1/1)

终于可以放开聊一聊i.MXRT1170这颗划时代MCU了

介绍篇(全4篇已完结)

恩智浦i.MX RT1xxx系列MCU特性那些事(1)- 概览
恩智浦i.MX RT1xxx系列MCU特性那些事(2)- RT1052DVL6性能实测(CoreMark)
恩智浦i.MX RT1xxx系列MCU特性那些事(3)- 命名规则
恩智浦i.MX RT1xxx系列MCU特性那些事(4)- RT105x选型

硬件篇(持续更新中...7/7)

恩智浦i.MX RT1xxx系列MCU硬件那些事(1)- 官方EVK简介
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.1)- 玩转板载OpenSDA,Freelink调试器
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.2)- 在串行NOR Flash XIP调试原理
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.3)- 串行NOR Flash下载算法(J-Link工具篇)
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.4)- 串行NOR Flash下载算法(Keil MDK篇)
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.5)- 串行NOR Flash下载算法(IAR EWARM篇)
恩智浦i.MX RT1xxx系列MCU硬件那些事(2.6)- 串行NOR Flash下载算法(MCUXpresso IDE篇)

工具篇(持续更新中...24/24)

MCU-CodingStyleChecker - 恩智浦SDK驱动代码风格检查工具
恩智浦MCU安全加密启动一站式工具NXP-MCUBootUtility用户指南
恩智浦MCU安全加密启动一站式工具NXP-MCUBootUtility常见问题
开启NXP-MCUBootUtility工具的HAB签名功能 - CST(中英双语)
开启NXP-MCUBootUtility工具的HAB加密功能 - CST(中英双语)
开启NXP-MCUBootUtility工具的BEE加密功能 - image_enc
恩智浦i.MX RT系列MCU量产神器NXP-MCUBootFlasher用户指南
恩智浦i.MX RT系列MCU量产神器NXP-MCUBootFlasher常见问题

如果i.MX RT是一匹悍马,征服它时别忘了用马镫MCUBootUtility
MCUBootUtility v2.0.0来袭,i.MXRT1010哪里跑
MCUBootUtility v2.3.0发布,这次不再放过任何一款Flash
MCUBootUtility v2.3.1发布,解决了长久以来非空flash可能无法下载的问题
MCUBootUtility v2.4.0发布,轻松更换Flashloader文件
MCUBootUtility v3.0.0发布,开始支持LPC, Kinetis啦
MCUBootUtility v3.3.0发布,可配合SBL项目使用
MCUBootUtility v3.4.0发布,支持串行NAND
MCUBootUtility v3.5.0发布,支持串行NOR的ECC及双程序启动
MCUBootUtility v4.0.0发布,开始支持MCX啦
MCUBootUtility v5.0.0发布,初步支持i.MXRT1180
MCUBootUtility v5.3.0发布,利用XMCD轻松使能外部RAM
MCUBootUtility v6.3.0发布,支持获取与解析启动日志

如果你正在量产i.MX RT产品,不妨试试这款神器RT-Flash
MCUBootFlasher v3.0.0发布,为真实的产线操作场景而生

启动篇(持续更新中...20/26)

恩智浦i.MX RT1xxx系列MCU启动那些事(1)- Boot简介
恩智浦i.MX RT1xxx系列MCU启动那些事(2)- Boot配置(BOOT Pin/eFUSE)
恩智浦i.MX RT1xxx系列MCU启动那些事(3)- Serial Downloader模式(sdphost/MfgTool)
恩智浦i.MX RT1xxx系列MCU启动那些事(4)- Flashloader初体验(blhost)
恩智浦i.MX RT1xxx系列MCU启动那些事(5)- 再聊eFUSE及其烧写方法
恩智浦i.MX RT1xxx系列MCU启动那些事(6)- Bootable image格式与加载(elftosb/.bd)
恩智浦i.MX RT1xxx系列MCU启动那些事(7)- 静态解密安全启动需知(HAB)
恩智浦i.MX RT1xxx系列MCU启动那些事(8)- 从Raw NAND启动
恩智浦i.MX RT1xxx系列MCU启动那些事(8.A)- SEMC NAND启动时间(RT1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(9)- 从Parallel NOR启动
恩智浦i.MX RT1xxx系列MCU启动那些事(10)- 从Serial NAND启动
恩智浦i.MX RT1xxx系列MCU启动那些事(10.A)- FlexSPI NAND启动时间(RT1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(11)- 从Serial NOR启动
恩智浦i.MX RT1xxx系列MCU启动那些事(11.A)- FlexSPI NOR启动时间(RT1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(11.B)- FlexSPI NOR连接方式大全(RT1015/1020/1050)
恩智浦i.MX RT1xxx系列MCU启动那些事(11.B)- FlexSPI NOR连接方式大全(RT1060/1064(SIP))
恩智浦i.MX RT1xxx系列MCU启动那些事(11.B)- FlexSPI NOR连接方式大全(RT1010)
恩智浦i.MX RT1xxx系列MCU启动那些事(11.B)- FlexSPI NOR连接方式大全(RT1024(SIP))
恩智浦i.MX RT1xxx系列MCU启动那些事(11.B)- FlexSPI NOR连接方式大全(RT1160/1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(12)- 从SD/eMMC启动
恩智浦i.MX RT1xxx系列MCU启动那些事(12.A)- uSDHC eMMC启动时间(RT1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(13)- 从Serial(1-bit SPI) EEPROM/NOR恢复启动
恩智浦i.MX RT1xxx系列MCU启动那些事(13.A)- LPSPI NOR启动时间(RT1170)
恩智浦i.MX RT1xxx系列MCU启动那些事(14)- 动态解密安全启动需知(BEE)
恩智浦i.MX RT1xxx系列MCU启动那些事(15)- 动态解密安全启动需知(OTFAD)
恩智浦i.MX RT1xxx系列MCU启动那些事(16)- 终极一站式工具(NXP-MCUBootUtility)

经验篇(持续更新中...100/103)

类别 文章
电源时钟 浅谈i.MXRT1xxx系列MCU时钟相关功能引脚的作用
浅谈i.MXRT10xx系列MCU外接24MHz晶振的作用
i.MXRT1xxx系列MCU外接24MHz有源晶振的方式与注意事项
i.MXRT1xxx系列GPIO提早供电会影响上电时序导致内部DCDC启动失败
系统启动 如果i.MXRT1xxx离线无法启动,请先查看SRC_SBMRx寄存器
如果i.MXRT离线无法启动,试着分析ROM启动日志
理解i.MXRT1xxx上的XIP和Non-XIP App制作、下载、启动、调试上的差异
在i.MXRT1xxx上设计一个level2 bootloader实现App分散加载启动
使能i.MXRT1050,1060 Hab签名或加密启动时App链接在片内SRAM的限制
IVT里的不同entry设置可能会造成i.MXRT1xxx系列启动App后发生异常跑飞
16MB以上NOR Flash使用不当可能会造成软复位后i.MXRT无法正常启动
导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之SFDP
导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之QE bit
导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之Write Protection
i.MXRT中不支持DQS的FlexSPI引脚组连接串行NOR Flash下载与启动注意事项
深入i.MXRT1050系列ROM中串行NOR Flash启动初始化流程
了解i.MXRT1060系列ROM中串行NOR Flash启动初始化流程优化点
自识别特性(Auto Probe)可以让i.MXRT1060无需FDCB也能从NOR Flash启动
从头开始认识i.MXRT启动头FDCB里的lookupTable
在i.MXRT启动头FDCB里调整Flash工作频率也需同步设Dummy Cycle(以IS25WP128D为例)
在i.MXRT启动头FDCB里使能串行NOR Flash的DTR模式
在i.MXRT1170上启动含DQS的Octal Flash可不严格设Dummy Cycle(以MT35XU512为例)
在i.MXRT1050上启动含DQS的Hyper Flash可不严格设Dummy Cycle(以S26KS512为例)
在i.MXRT启动头FDCB里使能串行NOR Flash的Continuous read模式
串行NOR Flash的Continuous read模式下软复位后i.MXRT无法启动问题解决方案之RESET#
串行NOR Flash的Continuous read模式下软复位后i.MXRT无法启动问题解决方案之SW Reset
在i.MXRT启动头FDCB里使能串行NOR Flash的QPI/OPI模式
在i.MXRT启动头FDCB里配置串行NOR Flash多个寄存器的注意事项
系统时钟配置不当会导致i.MXRT1xxx系列下OTFAD加密启动失败
FlexSPI复位方式不当会导致i.MXRT系列下OTFAD加密启动失败
揭秘i.MXRT1060,1010上串行NOR Flash冗余程序启动设计
揭秘i.MXRT1170上串行NOR Flash双程序可交替启动设计
聊聊系统看门狗WDOG1在i.MXRT1xxx系统启动中的应用及影响
利用i.MXRT1xxx系列ROM集成的DCD功能可轻松配置指定外设
聊聊i.MXRT1xxx上第三级启动保障 - SDMMC manufacture模式
借助i.MXRT10xx系列INIT_VTOR功能可以缩短程序热重启时间
在i.MXRT1xxx系列上用NAND型启动设备时可用两级设计缩短启动时间
片内存储 在SBL项目实战中妙用i.MXRT1xxx里SystemReset不复位的GPR寄存器
i.MXRT1010,1170型号上不一样的SNVS GPR寄存器读写控制设计
改动i.MXRT1xxx里IOMUXC_GPR寄存器保留位可能会造成系统异常
原来i.MXRT1xxx系列里也暗藏了Product ID寄存器
了解i.MXRT1xxx系列里负责动态分配ITCM/DTCM/OCRAM大小的FlexRAM模块
下载算法 一个关于Segger J-Flash在Micron Flash固定区域下载校验失败的故事(SR寄存器BP[x:0]位)
在线升级 利用i.MXRT1xxx系列ROM提供的FlexSPI driver API可轻松IAP
其实i.MXRT1050,1020,1015系列ROM也提供了FlexSPI driver API
其实i.MXRT下改造FlexSPI driver同样支持AHB方式去写入NOR Flash
探讨i.MXRT下FlexSPI driver实现Flash编程时对于中断支持问题
借助Serial Plot软件观测i.MXRT系列FlexSPI驱动Flash页编程执行时间分布
利用i.MXRT1060,1010上新增的FlexSPI地址重映射(Remap)功能可安全OTA
可通过USB Device Path来唯一指定i.MXRT设备进行ROM/Flashloader通信
仿真调试 IAR在线调试时设不同复位类型可能会导致i.MXRT下调试现象不一致(J-Link/DAPLink)
Keil在线调试时设不同复位类型可能会导致i.MXRT下调试现象不一致(J-Link/DAPLink)
揭秘i.MXRT1170上用J-Link连接复位后PC总是停在0x223104的原因
不同J-Link版本对于i.MXRT1170连接复位后处理行为有所不同
IAR环境下无法直接下载调试i.MXRT分散链接工程的解决方案(宏文件.mac+双Flashloader)
通用外设 以i.MXRT1xxx的GPIO模块为例谈谈中断处理函数(IRQHandler)的标准流程
关于恩智浦SDK2.0里事务型中断处理函数(DriverIRQHandler)的重定向注意事项
对比恩智浦全系列MCU(包含Kinetis/LPC/i.MXRT/MCX)的GPIO电平中断设计差异
聊聊i.MXRT1xxx上的普通GPIO与高速GPIO差异及其用法
实测i.MXRT1010上的普通GPIO与高速GPIO极限翻转频率
再测i.MXRT1060,1170上的普通GPIO与高速GPIO极限翻转频率
聊聊i.MXRT1170双核下不同GPIO组的访问以及中断设计
探析i.MXRT1050在GPIO上增加RC延时电路后导致边沿中断误触发问题(上篇)
介绍i.MXRT定时器PIT的多通道链接模式及其在coremark测试工程里的应用
i.MXRT1170上PXP对CM7 TCM进行随机地址短小数据写入操作限制
双核通信 大话双核i.MXRT1170之Cortex-M7与Cortex-M4互相激活之道
大话双核i.MXRT1170之单独在线调试从核工程的方法(IAR篇)
大话双核i.MXRT1170之在线联合调试双核工程的三种方法(IAR篇)
外存扩展 同一厂商不同系列Flash型号下Dummy Cycle设置方法可能有差异(以IS25LP064A为例)
关于i.MXRT中FlexSPI外设lookupTable里配置Normal read的一个小误区(Dummy Cycle不可设0)
理解i.MXRT中FlexSPI外设lookupTable里配置访问行列混合寻址Memory的参数值
串行NAND Flash的两大特性(坏块,读等待)导致其在i.MXRT FlexSPI下无法XiP
i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad
在i.MXRT1060-EVK上利用memtester程序给SDRAM做压力测试
分享一个i.MXRT系列配套DRAM压力测试上位机工具(i.MXRT DRAM Tester)
浅聊恩智浦i.MXRT官方SDK里关于串行Flash相关的驱动与例程资源(上篇)
性能分析 链接函数到8字节对齐地址或可进一步提升i.MXRT1xxx内核执行性能
i.MXRT中FlexSPI外设对AHB Burst Read特性的支持
i.MXRT全系列下FlexSPI外设AHB Master ID定义与AHB RX Buffer指定的异同
实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形(无缓存)
实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形(有预取)
实抓Flash信号波形来看i.MXRT的FlexSPI外设下AHB读访问情形(全加速)
在串口波特率识别实例里逐步展示i.MXRT上提升代码执行性能的十八般武艺
利用GPIO模块来测量i.MXRT1xxx的系统中断延迟时间
对比MbedTLS算法库纯软件实现与i.MXRT上DCP,CAAM硬件加速器实现性能差异
音频图像 记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(提问篇)
记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(解答篇)
降低刷新率是定位LCD花屏显示问题的第一大法(i.MXRT1170, 1280x480 LVDS)
在i.MXRT1170上快速点亮一款全新LCD屏的方法与步骤(MIPI DSI接口)
使用恩智浦GUI Guider快速创建全新LCD屏示例工程的步骤
安全可靠 简析i.MXRT1170 Cortex-M7 FlexRAM ECC功能特点、开启步骤、性能影响
简析i.MXRT1170 Cortex-M4 L-MEM ECC功能特点、开启步骤、性能影响
简析i.MXRT1170 XECC功能特点及其保护串行NOR Flash和SDRAM之道
简析i.MXRT1170 XECC开启及Data Swap功能对于外部RAM的访问性能影响
简析i.MXRT1170 MECC64功能特点及其保护片内OCRAM1,2之道
原来i.MXRT1170内部RAM的ECC初始化工作可全部由ROM完成
揭秘i.MXRT1170 eFuse空间访问可靠性的保护策略(冗余与ECC)
SNVS Master Key仅在i.MXRT10xx Hab关闭时才能用于DCP加解密
利用i.MXRT10xx系列内部DCP引擎计算Hash值时需特别处理L1 D-Cache
利用i.MXRT10xx系列内部DCP引擎计算CRC32值时需注意数据长度对齐

项目篇(持续更新中...14/15)

kFlashFile - 一个基于Flash的掉电数据存取方案
RT-UFL - 一个适用全平台i.MXRT的超级下载算法设计
超级下载算法RT-UFL v1.0发布,附J-Link下安装教程
超级下载算法RT-UFL v1.0在MCUXpresso IDE下的使用
超级下载算法RT-UFL v1.0在IAR EW for Arm下的使用
超级下载算法RT-UFL v1.0在Keil MDK下的使用
超级下载算法RT-UFL v1.0在Segger Ozone下的使用
超级下载算法(RT-UFL)开发笔记(1) - 执行在不同CM内核下
超级下载算法(RT-UFL)开发笔记(2) - 识别当前i.MXRT型号
超级下载算法(RT-UFL)开发笔记(3) - 统一FlexSPI驱动访问
超级下载算法(RT-UFL)开发笔记(4) - 轮询Flash配置参数
超级下载算法(RT-UFL)开发笔记(5) - 动态调整FlashDevice内容
超级下载算法(RT-UFL)开发笔记番外(1) - JLinkScript妙用
基于恩智浦i.MXRT1010的MP3音乐播放器(RT-Mp3Player)设计
基于恩智浦i.MXRT1060的MP4视频播放器(RT-Mp4Player)设计

第三方篇(持续更新中...3/3)

2021 TencentOS Tiny AIoT应用创新大赛 - 初赛阶段的38个作品速览
把玩i.MXRT1062 TencentOS Tiny EVB_AIoT开发板(1) - 开发环境搭建与点灯
把玩i.MXRT1062 TencentOS Tiny EVB_AIoT开发板(2) - 在Flash调试及离线启动

--------------------------------------------------------------------------------------

飞思卡尔Kinetis系列和恩智浦LPC系列微控制器相关知识

飞思卡尔半导体(现恩智浦半导体)于2010年开始推出的Kinetis系列昭示着ARM Cortex-M MCU阵营又多了一个顶级厂商,其第一款芯片Kinetis K60,搭载Cortex-M4内核(也是业界第一款Cortex-M4内核产品),主频最高可达150MHz,性能可达1.25DMIPS/MHz。

Kinetis芯片家族发展至今(2017)已拓展至7大家族系列:K/L/E/V/EA/M/W,其中K/L系列主打通用市场,其余5个系列专攻细分领域。

恩智浦半导体最早于2003年便开始推出LPC系列MCU,但早期的产品LPC2000/3000系列属于ARM7/9内核的产品,直到2008年开始推出的LPC1800系列标志着恩智浦也加入了ARM Cortex-M MCU阵营,LPC18xx系列MCU,搭载Cortex-M3内核,主频最高可达180MHz。

LPC芯片家族发展至今(2022)出现过很多家族成员系列:800/1100/1200/1300/1500/1700/1800/2000/3000/4000/4300/54000/5500系列,其中800/1100/54000/5500系列是目前的主推产品系列。

Kinetis调试篇(持续更新中...1/3)

飞思卡尔Kinetis开发板OpenSDA调试器那些事(上)- 背景与架构
飞思卡尔Kinetis开发板OpenSDA调试器那些事(中)- 使用与修复
飞思卡尔Kinetis开发板OpenSDA调试器那些事(下)- 原理与开发

Kinetis启动篇(持续更新中...5/12)

飞思卡尔Kinetis系列MCU启动那些事(1)- KBOOT架构
飞思卡尔Kinetis系列MCU启动那些事(2)- KBOOT形态(ROM/Bootloader/Flashloader)
飞思卡尔Kinetis系列MCU启动那些事(3)- KBOOT配置(FOPT/BOOT Pin/BCA)
飞思卡尔Kinetis系列MCU启动那些事(4)- KBOOT通信外设(uart/spi/i2c/can/usb-hid)
飞思卡尔Kinetis系列MCU启动那些事(5)- KBOOT初级工具(blhost/bus_pal/KinetisFlashTool)
飞思卡尔Kinetis系列MCU启动那些事(6)- 从片内Flash启动
飞思卡尔Kinetis系列MCU启动那些事(7)- KBOOT高级工具(elftosb/QCBGenerator/embedded_host)
飞思卡尔Kinetis系列MCU启动那些事(8)- 从片外QSPI NOR Flash启动
飞思卡尔Kinetis系列MCU启动那些事(9)- KBOOT特性(完整性检测)
飞思卡尔Kinetis系列MCU启动那些事(10)- KBOOT特性(可靠升级)
飞思卡尔Kinetis系列MCU启动那些事(11)- KBOOT特性(ROM API)
飞思卡尔Kinetis系列MCU启动那些事(12)- KBOOT特性(Security)

LPC外设驱动篇(持续更新中...1/1)

恩智浦经典LPC系列MCU内部Flash IAP驱动入门

--------------------------------------------------------------------------------------

ARM Cortex-M内核微控制器相关知识

ARM公司从2004年开始推出Cortex-M系列内核,迄今Cortex-M家族已经包含九款Cortex-M0/M0+/M1/M3/M4/M7/M23/M33/M35P,一个合格的Cortex-M微控制器开发者必须要对这些内核有充分了解,读内核手册是了解内核的主要途径,而对于Cortex-M软件开发者来说还可以从CMSIS(Cortex-M软件接口标准)入手来逐步了解内核的使用。

资料篇(全1篇已完结)

史上最强ARM Cortex-M学习资源汇总(持续更新中...)

芯闻篇(持续更新中...2/2)

单片机AI的春天已来,ARM Cortex-M55发布了
Ethos-U55,ARM首款面向Cortex-M的microNPU

内核篇(持续更新中...8/14)

ARM Cortex-M内核那些事(1)- 内核架构编年史
ARM Cortex-M内核那些事(2)- 第一款微控制器
ARM Cortex-M内核那些事(3.1)- 功能模块看差异(M0/3/4/7)
ARM Cortex-M内核那些事(3.2)- 为Security而生(M23/33/35P)
ARM Cortex-M内核那些事(4)- 性能指标大比拼
ARM Cortex-M内核那些事(5)- 一表搜罗指令集
ARM Cortex-M内核那些事(6)- 系统堆栈机制
ARM Cortex-M内核那些事(7)- 内核寄存器
ARM Cortex-M内核那些事(8)- 系统总线(AHB/APB/AXI)
ARM Cortex-M内核那些事(9.1)- 存储保护(MPU - PMSAv6/7)
ARM Cortex-M内核那些事(9.2)- 存储保护(MPU - PMSAv8)
ARM Cortex-M内核那些事(10)- 浮点计算(FPU)
ARM Cortex-M内核那些事(11)- 数字信号处理(DSP)
ARM Cortex-M内核那些事(12)- 安全区域(TrustZone)

中断篇(持续更新中...0/5)

ARM Cortex-M中断那些事(1)- 工作机制
ARM Cortex-M中断那些事(2)- 管理模块(SCB/NVIC)
ARM Cortex-M中断那些事(3)- 向量表
ARM Cortex-M中断那些事(4)- 优先级设置
ARM Cortex-M中断那些事(5)- 异常处理

功耗篇(持续更新中...0/0)

ARM Cortex-M低功耗那些事(0)- 索引

调试篇(持续更新中...1/8)

ARM Cortex-M调试那些事(1)- 4线协议标准(JTAG)
ARM Cortex-M调试那些事(2)- 2线协议标准(SWD)
ARM Cortex-M调试那些事(3)- CoreSight架构
ARM Cortex-M调试那些事(4)- DAPLink调试器
ARM Cortex-M调试那些事(5)- J-Link仿真器
ARM Cortex-M调试那些事(6)- IAR内嵌调试C-SPY
ARM Cortex-M调试那些事(7)- Flashloader
ARM Cortex-M调试那些事(8)- 常用技巧

文件篇(全9篇已完结)

ARM Cortex-M文件那些事(0)- 文件关联
ARM Cortex-M文件那些事(1)- 源文件(.c/.h/.s)
ARM Cortex-M文件那些事(2)- 链接文件(.icf)
ARM Cortex-M文件那些事(3)- 工程文件(.ewp)
ARM Cortex-M文件那些事(4)- 可重定向文件(.o/.a)
ARM Cortex-M文件那些事(5)- 映射文件(.map)
ARM Cortex-M文件那些事(6)- 可执行文件(.out/.elf)
ARM Cortex-M文件那些事(7)- 反汇编文件(.s/.lst/.dump)
ARM Cortex-M文件那些事(8)- 镜像文件(.bin/.hex/.s19)

posted @ 2018-03-01 21:49  痞子衡  阅读(5813)  评论(11编辑  收藏  举报