如何區分觸發stm32外部中斷的gpio引腳

時間 2021-08-30 10:29:12

1樓:匿名使用者

arm coetex-m3核心共支援256箇中斷,其中16個內部中斷,240個外部中斷和可程式設計的256級中斷優先順序的設定。stm32目前支援的中斷共84個(16個內部+68個外部),還有16級可程式設計的中斷優先順序的設定,僅使用中斷優先順序設定8bit中的高4位。

stm32可支援68箇中斷通道,已經固定分配給相應的外部裝置,每個中斷通道都具備自己的中斷優先順序控制位元組pri_n(8位,但是stm32中只使用4位,高4位有效),每4個通道的8位中斷優先順序控制字構成一個32位的優先順序暫存器。68個通道的優先順序控制字至少構成17個32位的優先順序暫存器。

4bit的中斷優先順序可以分成2組,從高位看,前面定義的是搶佔式優先順序,後面是響應優先順序。按照這種分組,4bit一共可以分成5組

第0組:所有4bit用於指定響應優先順序;

第1組:最高1位用於指定搶佔式優先順序,後面3位用於指定響應優先順序;

第2組:最高2位用於指定搶佔式優先順序,後面2位用於指定響應優先順序;

第3組:最高3位用於指定搶佔式優先順序,後面1位用於指定響應優先順序;

第4組:所有4位用於指定搶佔式優先順序。

2樓:最愛個人工

樓上是正解! 我一般就是使用開漏模式,電路上需外接上拉電阻。當需要查詢輸入電平時,需先把內部的輸出置成高,之後讀取該引腳的輸入電平狀態即可。

stm32中外部中斷io口設定後,會影響同一組的其他引腳嗎?

3樓:匿名使用者

看你的配bai置,很明顯是 gpio 模擬i2c操作。

一旦du中斷打斷了zhii2c時序,很喲dao可能不正常(比如讀內不到ack的情況)。

建議你在lcd更新數容據函式裡面, 關鍵操作之前把exit關閉,操作完成後再開啟。至於那個是關鍵操作,仔細看你的lcd手冊裡面關於通訊時序的部分。

估計你的中斷就是個按鍵 ,其實完全可以用查詢方式讀取按鍵狀態。

4樓:匿名使用者

真不知道怎麼回事,經你這一說,應用時真得注意了

5樓:攪史棍

埠肯定是多功能複用埠,要到相應的暫存器進行設定。

你那些程式都是些寫好的函式,最好是用底層的暫存器進行編寫程式。

如何區分觸發stm32 外部中斷的gpio引腳

6樓:擇善而從心安

stm32往往多個io口線分組對應同一個中斷,所以這樣你在設計之初注意這點.

比如:你想用三個外部觸發中斷,最好錯開放在不同的中斷線上。這樣便於區分。

stm32f103系列效能如何,STM32F103字尾名不同,其功效有什麼區別?

西西哩的小馬甲 優點如下 1 stm32屬於arm核心的一個版本,比傳統的51微控制器高階多了,有很多資源是51不具備的,如usb控制器。而且已經廢除了機器週期什麼的,速度不是51能比的。2 stm32微控制器程式都是模組化的,介面相對簡單些,因為它自身帶好多功能,工作速度也快。而51的自身功能少,...

stm32微控制器spi問題,STM32微控制器SPI問題

才慕悅臧優 基本的底層驅動都是有的,如果使用到某個感測器,而網上一時還沒有對應的驅動庫,可以自己根據感測器的手冊編寫對應的驅動 和spi口的cs sck sdi sdo是怎麼對應的 這是你從裝置上的標識吧。一般接線為 左邊主裝置,右邊從裝置 spix nss cs spix sck sck spix...

stm32f767採用什麼核心,stm32f767可以達到多快的速度?

雌高中生酶 我也沒學過核心,一樣能控制stm32。但是,沒有這些知識,你只會執行主管的要求,卻很難做到設計。想進一步提高,必須要學習這些基礎知識。這些我遲早也要花時間去了解下的。stm32f767可以達到多快的速度? 核心可以達到216mhz 長瀨綿秋 32的用原子的可以,隨便選擇一款,微控制器用吳...