大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是i.MXRT1xxx系列裏暗藏的Product ID寄存器

MCU 廠商在定義一個產品系列時,通常是會預先規劃產品發展路線的(即會有一大波 MCU 型號面世,各型號間特性有差异),因此 MCU 內部一般都會有一個專門的只讀寄存器用以存放 Product ID 值,應用程序可讀取這個 ID 值來識別當前 MCU 型號,這樣在設計軟件時可以讓代碼在這個 MCU 系列上通用,從而方便項目做 MCU 型號更換昇級。

前段時間,痞子衡做了一個面向 i.MXRT 全系列的 超級下載算法,需要用 Product ID 來區分型號,但當時苦無在 i.MXRT1xxx 系列上沒有找到這樣的寄存器,因此用了一個替代方法,詳見 《識別當前i.MXRT型號》 一文。不過最近痞子衡發現 i.MXRT1xxx 系列上其實是有 Product ID 寄存器的,就是隱藏得比較深,今天我們把它挖出來:

一、i.MXRT 系列 ID 寄存器

i.MXRT1xxx 家族迄今為止一共出了 i.MXRT1010/1020/1050/1060/1170 五大主型號,基於主型號也擴展出了 i.MXRT1015/1024/1064/1160 四個特色型號,我們看看它們的 ID 寄存器是怎麼設計的:

1.1 第一代架構 i.MXRT10xx 上設計

所有的 i.MXRT10xx 型號都屬於第一代架構,它們的 Product ID 寄存器都統一隱藏在 USB_ANALOG 模塊裏。如下是 i.MXRT1050 裏的 USB_ANALOG->DIGPROG 寄存器定義,這個寄存器值標明了 Chip Silicon Version,其中 DIGPROG[31:16] 是型號碼,DIGPROG[15:0] 是版本碼。

其中型號碼跟芯片真實 Part Number 沒有直接的聯系,需要轉譯,規律來看 DIGPROG[19:16] 記錄的是芯片推出順序,i.MXRT1050 是系列第一個型號,標 A;i.MXRT1020 是系列第二個型號,標 B...。

1.2 第二代架構 i.MXRT11xx 上設計

以 i.MXRT1170 為代錶的型號屬於第二代架構,它們的 Product ID 寄存器都統一放在了 ANADIG_MISC 模塊裏。如下是 i.MXRT1170 裏的 ANADIG_MISC->MISC_DIFPROG 寄存器定義,這個寄存器值標明了 Chip Silicon Version,其中 MISC_DIFPROG[23:8] 是型號碼,MISC_DIFPROG[7:0] 是版本碼。

其中型號碼直接就是芯片真實 Part Number 中的數字,簡單明了,希望接下來的新型號保持這種風格。

二、i.MXRT 系列 ID 值

最後收錄下 i.MXRT1xxx 目前全部型號的 Product ID 值,均是在板子上實測讀取的(注意:部分芯片參考手册上的值是錯的),以這裏的值為准。

i.MXRT型號 ID寄存器類型 ID寄存器值 備注
i.MXRT1011 USB_ANALOG->DIGPROG 0x006D0000 /
i.MXRT1015 USB_ANALOG->DIGPROG 0x006B0000 基於i.MXRT1021的特色型號
i.MXRT1021 USB_ANALOG->DIGPROG 0x006B0000 /
i.MXRT1024 USB_ANALOG->DIGPROG 0x006B0000 i.MXRT1021的SIP版
i.MXRT105x USB_ANALOG->DIGPROG 0x006A0001 /
i.MXRT106x USB_ANALOG->DIGPROG 0x006C0000 /
i.MXRT1064 USB_ANALOG->DIGPROG 0x006C0000 i.MXRT106x的SIP版
i.MXRT116x ANADIG_MISC->MISC_DIFPROG 0x001160A0 基於i.MXRT117x的特色型號
i.MXRT117x ANADIG_MISC->MISC_DIFPROG 0x001170B0 /

至此,i.MXRT1xxx系列裏暗藏的Product ID寄存器痞子衡便介紹完畢了,掌聲在哪裏~~~

歡迎訂閱

文章會同時發布到我的 博客園主頁CSDN主頁知乎主頁微信公眾號 平臺上。

微信搜索"痞子衡嵌入式"或者掃描下面二維碼,就可以在手機上第一時間看了哦。

痞子衡嵌入式:原來i.MXRT1xxx系列裏也暗藏了Product ID寄存器的更多相關文章

  1. 痞子衡嵌入式:對比i.MXRT與LPC在RTC外設GPREG寄存器使用上的异同

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是對比i.MXRT與LPC在RTC外設GPREG寄存器使用上的异同. 本篇是 <在SBL項目實戰中妙用i.MXRT1xxx裏Syst ...

  2. 痞子衡嵌入式:恩智浦LPC系列MCU開發那些事 - 索引

    大家好,我是痞子衡,是正經搞技術的痞子.本系列痞子衡給大家介紹的是恩智浦LPC系列微控制器相關知識. 恩智浦半導體最早於2003年便開始推出LPC系列MCU,但早期的產品LPC2000/3000系列屬 ...

  3. 痞子衡嵌入式:IVT裏的不同entry設置可能會造成i.MXRT1xxx系列啟動App後發生异常跑飛

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家分享的是IVT裏的不同entry設置可能會造成i.MXRT1xxx系列啟動App後發生异常跑飛問題的分析解决經驗. 事情緣起恩智浦官方論壇上的一 ...

  4. 痞子衡嵌入式:利用i.MXRT1xxx系列ROM提供的FlexSPI driver API可輕松IAP

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是i.MXRT系列ROM中的FlexSPI驅動API實現IAP. 痞子衡的技術交流群裏經常有群友提問: i.MXRT中的FlexSPI驅動 ...

  5. 痞子衡嵌入式:了解i.MXRTxxx系列ROM API及其與i.MXRT1xxx系列的差异

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是i.MXRTxxx系列ROM API設計細節. 痞子衡之前寫過兩篇文章 <利用i.MXRT1xxx系列ROM提供的FlexSPI ...

  6. 痞子衡嵌入式:系統時鐘配置不當會導致i.MXRT1xxx系列下OTFAD加密啟動失敗

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家分享的是系統時鐘配置不當會導致i.MXRT1xxx系列下OTFAD加密啟動失敗問題. 我們知道,i.MXRT1xxx家族早期型號(RT1050/ ...

  7. 痞子衡嵌入式:利用i.MXRT1xxx系列內部DCP引擎計算Hash值時需特別處理L1 D-Cache

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是利用i.MXRT1xxx系列內部DCP引擎計算Hash值時需特別處理L1 D-Cache. 關於i.MXRT1xxx系列內部通用數據協處 ...

  8. 痞子衡嵌入式:在SBL項目實戰中妙用i.MXRT1xxx裏SystemReset不複比特的GPR寄存器

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是i.MXRT1xxx裏SystemReset不複比特的GPR寄存器的小妙用. 我們知道稍大規模的項目代碼設計一般都是多人協作完成的,在項目 ...

  9. 痞子衡嵌入式:改動i.MXRT1xxx裏IOMUXC_GPR寄存器保留比特可能會造成系統异常

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是改動i.MXRT1xxx裏IOMUXC_GPR寄存器保留比特可能會造成系統异常. 痞子衡的嵌入式技術交流群裏有一比特非常活躍的朋友(網名:文 ...

  10. 痞子衡嵌入式:飛思卡爾i.MX RT系列MCU特性介紹(2)- RT1052DVL6性能實測

    大家好,我是痞子衡,是正經搞技術的痞子.今天痞子衡給大家介紹的是飛思卡爾i.MX RT系列MCU的性能. 在前面的文章 i.MXRT微控制器概覽 裏,痞子衡給大家簡介過恩智浦半導體在2017年推出的新 ...

隨機推薦

  1. iOS 淺談:深.淺拷貝與copy.strong

    深.淺拷貝 copy mutableCopy NSString NSString *string = @"漢斯哈哈哈"; // 沒有產生新對象 NSString *copyStri ...

  2. windows上面捕獲聲卡數據

    轉自:http://shanewfx.github.io/blog/2013/08/14/caprure-audio-on-windows/ 前一段時間接到一個任務,需要采集到聲卡的輸出信號,以便與麥 ...

  3. 重新加載maven項目的依賴項

    最近在調試reportNG,測試允許完以後,報告總是使用的testNG的格式,並且只有index和overview兩個文件. 找了好多帖子,大家都是那麼設置的都沒有問題,難道是哥人品不好?錯! 大家基 ...

  4. greensock的tween源碼閱讀筆記

    對於一個處於gc狀態的tween,如果這個gc狀態是由kill觸發的,那麼直接從masterList删除否則的話,被tweenlite的垃圾回收删除! 對於一個不是立即啟動的tween,它被添加到ti ...

  5. Solr配置集群

    1.主機SolrConfig.xml <requestHandler name="/replication" class="solr.ReplicationHand ...

  6. OAuthBase.cs

    using System; using System.Security.Cryptography; using System.Collections.Generic; using System.Tex ...

  7. 國內Android應用推廣的六大主流方式

    國內Android應用推廣的六大主流方式 http://mobi.baike.com/article-19433.html 隨著Android市場份額的飛速增長,越來越多的國內開發團隊和公司開始投入A ...

  8. (插播)unity的 异常捕捉和 ios Android 崩潰信息的捕捉。

    近期 做些准備性得工作和有意思的事情.所以近期做了一個適合ios和android 錯誤信息捕捉的unity插件. 兩個功能,app崩潰也就是閃退 是開發人員 非常頭疼的一件事,還有就是一些莫名得錯誤 ...

  9. WPF開發進階 - Fody/PropertyChanged(二)

    前一篇 簡單的介紹了Fody/PropertyChanged的使用方法, 這一篇,我們詳細介紹它的一些比較重要的特性和規則 1. Attributes 通過在類或屬性上標記這些特性,可以在編譯代碼時, ...

  10. SQL join的介紹

    學員錶 SELECT * FROM tb_address; SELECT * FROM tb_student 1.JOIN關聯兩個錶數據,將匹配數據展示,數據無匹配值則不展示 注釋:INNER JOI ...