Q:基于ARM A9處理器怎樣編寫C語言工程,使用按鍵中斷將數字顯示在七段數碼管上呢?
A:基本原理:主程序需要首先調用子程序set_A9_IRQ_stack()初始化IRQ模式的ARM A9堆棧指針;然后主程序調用子程序config_GIC()初始化通用中斷控制器(GIC)以及config_KEYs()初始化按鍵端口來產生中斷。最后調用子程序enable_A9_interrupts()取消屏蔽ARM處理器中的IRQ中斷;初始化步驟完成之后,主程序在無限循環中被掛起。
另外創建interrupt_ID.h、exceptions.c、pushbutton_ISR.c以及defines.h代碼程序,并將exceptions.c和pushbutton_ISR.c添加到工程中。
編譯下載程序到DE1-SoC開發板上:按下KEY0后,HEX0上會顯示數字0;再按一次KEY0,HEX0顯示為空白;按KEY1、KEY2和KEY3會顯示數字1、2、3。