在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

對比恩智浦全系列MCU的GPIO電平中斷設計差異

痞子衡嵌入式 ? 來源:痞子衡嵌入式 ? 2023-02-07 09:01 ? 次閱讀

大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是恩智浦全系列MCU(包含Kinetis, LPC, i.MXRT, MCX)的GPIO電平中斷設計差異

在痞子衡舊文 《以i.MXRT1xxx的GPIO模塊為例談談中斷處理函數(IRQHandler)的標準流程》里,痞子衡主要介紹得是 GPIO 一般控制以及最常用的輸入邊沿中斷相關知識。最近恩智浦官方社區有用戶反映 i.MXRT1060 上 GPIO 中斷狀態寄存器(GPIO->ISR)在發生有效電平中斷后的置位并不需要手動清零(W1C),其會在 I/O 輸入電平狀態切換后自動清零,這和手冊里描述不一致。

首先在痞子衡的認知里 GPIO 輸入電平中斷沒有什么具體應用場景,想象一下,如果 GPIO 中斷事件由輸入電平值來觸發,如果發生了有效輸入電平且其狀態不改變,那么 GPIO 中斷響應函數就會被不斷重復執行(此時 CPU 時間片無法再分給主函數),什么樣的任務需要這樣的處理呢?暫且不論應用場景,痞子衡今天就從恩智浦全系列 MCU 這方面的行為角度來做一下對比吧。

一、I/O中斷控制模塊差異

恩智浦現有的經典 Arm Cortex-M MCU 產品線共有如下五大類,它們在 GPIO 一般控制和中斷控制外設上是有差異的。首先 i.MXRT四位數/Kinetis/LPC 這三條線各自是完全不同的外設,然后 i.MXRT三位數是在 LPC 外設基礎上做了增強,而最新的 MCX 系列則是組合了 Kinetis 和 LPC 外設。

芯片系列 I/O一般控制 I/O中斷控制
Kinetis GPIO type1 PORT
LPC GPIO type2 PINT
i.MXRT四位數 GPIO type3 GPIO type3
i.MXRT三位數 GPIO type2 GPIO type2(增加interrupt A/B)
PINT
MCX GPIO type1 GPIO type1(集成Kinetis PORT)
PINT

二、不同系列MCU下測試結果

根據上一節外設情況我們知道,只要測試了 i.MXRT四位數/Kinetis/LPC 這三個系列的情況,剩下兩個系列自然也就不用測試了。

2.1 Kinetis

Kinetis 系列分為 K/KL/KE/KS/KW/KV/KM/K32L 等若干子系列,但是它們關于 GPIO 中斷設計這一塊是一樣的。痞子衡選取了 MKL03Z 這顆芯片來做的測試,查看其手冊 PORTx->PCRn[ISF] 位或者 PORTx->ISFR 寄存器均標記了中斷狀態,并且標明了需要做 W1C 操作。

25e9b048-a63f-11ed-bfe3-dac502259ad0.png

我們可以直接在 SDK_2.3.1_FRDM-KL03Zoardsfrdmkl03zdriver_examplesgpioinput_interrupt 例程上做測試,只需要做簡單修改,痞子衡摘取了主要代碼如下。FRDM-KL03Z 板上 SW3 按鍵對應 PTB5 引腳(按下為低電平,松開為高電平),代碼設計里按一次 SW3 便打印一次。測試結果來看,在 Kinetis 上即使是電平中斷,PORTx->ISFR 寄存器也是必須要手動清零的,與手冊描述一致。

IRQ函數中是否清零Flag SW3動作 IRQ執行情況 打印輸出結果
上電默認松開(高電平) IRQ函數未觸發
SW3按下(低電平) IRQ函數重復執行
SW3松開(高電平) IRQ函數不再觸發 出現一次打印
上電默認松開(高電平) IRQ函數未觸發
SW3按下(低電平) IRQ函數重復執行
SW3松開(高電平) IRQ函數重復執行

volatileboolg_ButtonPress=false;
voidPORTB_IRQHandler(void)
{
//清除中斷標志
PORTB->ISFR=1U<

2.2 i.MXRT四位數

i.MXRT四位數系列分為 RT1010/1015/1020/1040/1050/1060/1160/1170/1180 等若干子型號,但是它們關于 GPIO 中斷設計是一樣的。痞子衡選取了 i.MXRT1062 這顆芯片來做的測試,查看其手冊 GPIOx->ISR 寄存器標記了中斷狀態,同樣標明了需要做 W1C 操作。

2610dec0-a63f-11ed-bfe3-dac502259ad0.png

我們可以直接在 SDK_2_12_1_EVK-MIMXRT1060oardsevkmimxrt1060driver_examplesgpioinput_interrupt 例程上做測試,只需要做簡單修改,主要代碼如下。MIMXRT1060-EVK 板上 SW8 按鍵對應 WAKEUP_GPIO5[0] 引腳(按下為低電平,松開為高電平),代碼設計里按一次 SW8 便打印一次。測試結果來看,在 i.MXRT 四位數上如果是電平中斷,GPIOx->ISR 寄存器會在電平狀態切換時自動清零,跟手冊描述有點差異,不過這樣的設計比 Kinetis 上看起來更合理。

IRQ函數中是否清零Flag SW8動作 IRQ執行情況 打印輸出結果
是/否 上電默認松開(高電平) IRQ函數未觸發
SW8按下(低電平) IRQ函數重復執行
SW8松開(高電平) IRQ函數不再觸發 出現一次打印

volatileboolg_InputSignal=false;
voidGPIO5_Combined_0_15_IRQHandler(void)
{
//清除中斷標志
GPIO5->ISR=1U<

2.3 LPC

LPC系列分為 800/1x00/4000/4300/51Uxx/54000/5500 等若干子型號,但是它們關于 GPIO 中斷設計是一樣的。痞子衡選取了 LPC54114 這顆芯片來做的測試,查看其手冊 PINT->IST 寄存器標記了中斷狀態,這里關于 W1C 操作做了邊沿方式和電平方式的區別,其中對于電平方式,W1C 是切換有效電平邏輯。

262d4d8a-a63f-11ed-bfe3-dac502259ad0.png

我們可以直接在 SDK_2_9_0_LPCXpresso54114oardslpcxpresso54114driver_examplespintpin_interrupt 例程上做測試,只需要做簡單修改,主要代碼如下。LPCXpresso-54114 板上 SW1 按鍵對應 PIO0[24] 引腳(按下為低電平,松開為高電平),代碼設計里按一次 SW1 便打印一次。測試結果來看,在 LPC 上如果是電平中斷,PINT->IST 寄存器會在電平狀態切換時自動清零,跟手冊描述有點差異,并且中斷處理函數里如果主動加上 W1C 操作其效果就變成了雙邊沿中斷,這樣的設計比 i.MXRT 四位數更進了一步。

IRQ函數中是否清零Flag SW1動作 IRQ執行情況 打印輸出結果
上電默認松開(高電平) IRQ函數未觸發
SW1按下(低電平) IRQ函數重復執行
SW1松開(高電平) IRQ函數不再觸發 出現一次打印
上電默認松開(高電平) IRQ函數未觸發
SW1按下(低電平) IRQ函數執行一次 出現一次打印
SW1松開(高電平) IRQ函數執行一次 出現一次打印

volatileboolg_ButtonPress=false;
voidPIN_INT0_DriverIRQHandler(void)
{
uint32_tpmstatus=PINT_PatternMatchResetDetectLogic(PINT);
if(s_pintCallback[kPINT_PinInt0]!=NULL)
{
s_pintCallback[kPINT_PinInt0](kPINT_PinInt0,pmstatus);
}
//清除中斷標志
PINT->IST=(1UL<

至此,恩智浦全系列MCU的GPIO電平中斷設計差異痞子衡便介紹完畢了,掌聲在哪里~~~

審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17323

    瀏覽量

    352655
  • 恩智浦
    +關注

    關注

    14

    文章

    5881

    瀏覽量

    108437
  • 電平
    +關注

    關注

    5

    文章

    361

    瀏覽量

    40008
  • 中斷
    +關注

    關注

    5

    文章

    900

    瀏覽量

    41755
  • GPIO
    +關注

    關注

    16

    文章

    1216

    瀏覽量

    52381

原文標題:對比恩智浦全系列MCU的GPIO電平中斷設計差異

文章出處:【微信號:pzh_mcu,微信公眾號:痞子衡嵌入式】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    i.MXRT1xxx系列MCU的Serial NAND啟動

    大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是i.MXRT1xxx系列MCU的Serial NAND啟動。
    發表于 08-21 09:20 ?357次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>i.MXRT1xxx<b class='flag-5'>系列</b><b class='flag-5'>MCU</b>的Serial NAND啟動

    MCU也開始卷了,率先將NPU集成進MCU

    幾天前IC Insights發布了2021年MCU銷售情況,MCU銷售額達到了37.95億美元,排名第一。其實,
    的頭像 發表于 06-18 08:00 ?4215次閱讀

    i.MX RTxxx系列MCU的特性

      大家好,我是痞子衡,是正經搞技術的痞子。今天痞子衡給大家介紹的是i.MX RTxxx系列MCU的基本特性。  
    發表于 11-04 07:08

    推出帶中斷和復位功能且符合AEC-Q100標準的GPIO

    —憑借在汽車聯網智能和安全解決方案領域的領先優勢,半導體NXP Semiconductors N.V. (NASDAQ:NXPI) 近日宣布推出符合AEC-Q100標準、面向I2C總線
    發表于 07-09 15:57 ?1426次閱讀

    2009年MCU產品系列總覽

    2009年MCU產品系列總覽,又需要的下來看看。
    發表于 12-15 15:05 ?22次下載

    ARM_MCU開發工具速選

    ARM_MCU開發工具速選,下來看看。
    發表于 12-15 15:01 ?10次下載

    無線MCU產品及方案介紹

    無線MCU產品及方案介紹
    發表于 10-16 15:42 ?9次下載
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>無線<b class='flag-5'>MCU</b>產品及方案介紹

    :安全的無線MCU是核心問題

    作為去年消費電子展 (CES) 上推出的Tri-Radio系列的最新成員,表示 RW612 使用與其 i.MX RT 系列“跨界”MCU
    的頭像 發表于 01-30 09:42 ?742次閱讀

    經典LPC系列MCU內部Flash IAP驅動介紹

    LPC 系列 MCU公司于 2003 年開始推出的非常具有代表性的產品,距今已經有近 20 年的生命。
    的頭像 發表于 03-30 09:19 ?2398次閱讀

    ACH拉近您與MCU專家的距離

    這個 ACH 將會匯聚內部 MCU 專家們開發的各種應用筆記配套代碼(AN SW),通用代碼片段,應用軟件包(SW Pack)和綜合參考例程(Demo),涵蓋
    的頭像 發表于 08-17 15:18 ?775次閱讀
    ACH拉近您與<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>MCU</b>專家的距離

    發布新一代MCX A系列MCU

    半導體近日發布了MCX A14x和MCX A15x兩款通用MCU,作為MCX A系列中的首批產品,現已正式上市。
    的頭像 發表于 02-02 14:41 ?1794次閱讀

    【上海】5月25日-基于MCX N系列MCU結合RT-Thread的應用與實踐 線下培訓

    5月25號,RT-Thread將攜手共同舉辦基于MCXN系列MCU結合RT-Thre
    的頭像 發表于 05-13 18:19 ?1025次閱讀
    【上海】5月25日-基于<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>MCX N<b class='flag-5'>系列</b><b class='flag-5'>MCU</b>結合RT-Thread的應用與實踐 線下培訓

    MCX W系列無線MCU的獨特魅力

    作為MCX微控制器家族中的新成員,MCX W系列無線MCU,旨在為新一代智能和安全互聯設備提供更緊湊、可擴展和創新的設計。MCX W的安全、無線子系統和智能外設均經過精心設計,專
    的頭像 發表于 08-27 09:56 ?1636次閱讀

    基于MCX N系列MCU的應用示例

    全新MCX微控制器系列,為新一代工業與物聯網廣泛的應用賦能,受到廣大邊緣智能開發者的青睞。
    的頭像 發表于 10-25 14:26 ?861次閱讀

    MCX L系列超低功耗MCU概述

    新年伊始,MCX微控制器家族就迎來了一位新成員——MCX L系列超低功耗MCU。從此,嵌入式工程師的手中又多了一款高能效設計的開發利器!
    的頭像 發表于 01-17 10:55 ?312次閱讀
    主站蜘蛛池模板: 人人做人人看 | 免费看国产黄色片 | 日日噜噜夜夜狠狠久久丁香 | 四虎影院成人在线观看 | 国语自产免费精品视频一区二区 | 亚洲国产视频一区 | 欧美中字 | 久久澡人人澡狠狠澡 | 日夜操在线视频 | 在线天堂资源 | 欧美性黄色 | 国语自产免费精品视频一区二区 | 久久久久久久久久免免费精品 | wwwwww日本| h在线网站 | 国产三级精品最新在线 | 全部在线播放免费毛片 | 日韩免费一级毛片 | 特级片在线观看 | 七月色婷婷 | 超级毛片 | 亚洲精品卡1卡二卡3卡四卡 | 波多野结衣在线网址 | 人人添人人澡人人澡人人人爽 | 午夜在线视频免费 | 性瘾高h姚蕊全文免费阅读 性做久久久久 | 色噜噜亚洲男人的天堂 | 91极品反差婊在线观看 | 国产日日操 | 欧美高清视频一区 | 美女张开大腿让男人桶 | 亚洲看黄 | 久久www免费人成_看 | 亚洲人成人网毛片在线播放 | 9久久99久久久精品齐齐综合色圆 | 亚洲天堂社区 | a成人在线 | 天堂中文在线最新版地址 | a资源在线 | 四虎精品永久在线网址 | fxxx性xxx性 |