1

我一直在努力與NVIC,爲什麼它被使用?以及如何使用它? 在我的項目我使用嵌套向量中斷控制器

NVIC_IntDisable(NVIC_SSP0); 
NVIC_ClrPend(NVIC_PIO_0); 
NVIC_IntPri(NVIC_PIO_0, 17);  
NVIC_IntEnable(NVIC_PIO_0);  

system.c這些都被定義任何人都可以解釋我爲什麼這些使用什麼perticular命令使用。請提及我可以反悔的任何好的木材。

謝謝。

+1

你可以更具體。事實上,你的問題幾乎要求數據表中的所有信息。 – domen

+0

雖然對於專家來說可能很明顯,您指的是ARM NVIC,但您的問題是vert特定目標,因此您應指定目標。另外文件system.c特定於你的應用程序,庫或開發工具鏈,所以你也應該指定它。最終,您需要閱讀ARM技術文檔以獲取詳細信息;稍微簡單一點,可能是Joseph Yiu的書籍之一(假設ARM Cortex-M)。但是,如果你必須問NVIC是什麼,你可能首先需要學習一些中斷和微處理器的基礎知識。 – Clifford

回答

0

NVIC是一個嵌套向量中斷控制器(類似於x86 PC上的PIC)。

您可以在ARM網站 http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0179b/ar01s01s01.html以及特定芯片數據表和ARM手冊中獲得有關子架構的更多信息。

+1

我個人發現這篇博客文章非常有助於理解NVIC:https://mcuoneclipse.com/2016/08/14/arm-cortex-m-interrupts-and-freertos-part-1/。它以一種易於理解的方式詳細解釋了基於ARM Cortex-M系統的中斷系統。 – Tim

+0

所有這些答案都是說明OP已經知道的內容(從閱讀問題中可以明顯看出),然後刪除指向手冊的鏈接。這個問題實際上可能過於寬泛,無法用現有的方式來回答。 – Lundin

+0

好吧,問題也被要求提供「良好的matrial」,我把它鏈接到了。我還要求澄清。另一種選擇就是降低問題的質量,但這似乎更不明顯。 – domen