女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]外部中斷有點像51單片機的中斷INT一樣,都能夠設(shè)置為上升沿、下降沿和雙邊沿觸發(fā);不同之處在于STM32的大多數(shù)GPIO口都能設(shè)置為外部中斷輸入功能,這樣帶來的好處有:在PCB設(shè)計和需求大量外部中斷功能很有幫助。STM32

外部中斷有點像51單片機的中斷INT一樣,都能夠設(shè)置為上升沿、下降沿和雙邊沿觸發(fā);不同之處在于STM32的大多數(shù)GPIO口都能設(shè)置為外部中斷輸入功能,這樣帶來的好處有:在PCB設(shè)計和需求大量外部中斷功能很有幫助。STM32F107VCT一共有5組GPIO,每組又有16個引腳。這里提供復(fù)用的方式提供了16個中斷源。PA0、PB0、PC0、PD0、PE0都是共有相同的中斷源EXIT0。

開發(fā)板上的按鍵對應(yīng)關(guān)系為:KEY1—PC4;KEY2—PB10;KEY3—PC13;KEY4—PA0。外接上拉電阻,在設(shè)置GPIO的狀態(tài)的時候,可以設(shè)置為輸入上拉模式。然后采用GPIO_EXTILineConfig庫函數(shù)將GPIO設(shè)置為EXTI模式。

/* Selects KEY1-PC.04 as EXTI Line 4 */

GPIO_EXTILineConfig(GPIO_PortSourceGPIOC, GPIO_PinSource4);

第三步是設(shè)置EXTI的模式,最后是編寫相應(yīng)的中斷函數(shù)。

需要注意的是中斷向量表中EXTI5到EXTI9是復(fù)用在一起的,名稱為EXTI9_5;

EXTI10到EXTI15是復(fù)用在一起的,名稱為EXTI15_10;

這部分主程序為:

void NVIC_Configuration(void)

{

NVIC_InitTypeDef NVIC_InitStructure;

/* Configure the Priority Group to 2 bits */

NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);

/* Enable the EXTI Interrupt */

NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;

NVIC_Init(&NVIC_InitStructure);

NVIC_InitStructure.NVIC_IRQChannel = EXTI4_IRQn;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1;

NVIC_Init(&NVIC_InitStructure);

NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn;

NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2;

NVIC_Init(&NVIC_InitStructure);

}

int main(void)

{

/* Setup STM32 system (clock, PLL and Flash configuration) */

SystemInit();

/* Add your application code here

*/

LED_Configuration();

KEY_Configuration();//按鍵時鐘和端口配置

EXIT_Configuration();//外部中斷配置

NVIC_Configuration();

/* Infinite loop */

while (1)

{

}

}

void EXTI0_IRQHandler(void)/* Key 4 */

{

if(EXTI_GetITStatus(EXTI_Line0) != RESET)

{

LED_ALL_OFF();

LED4_ON();

/* Clear the EXTI Line 0 */

EXTI_ClearITPendingBit(EXTI_Line0);

}

}

/*******************************************************************************

* Function Name: EXTI4_IRQHandler

* Description: This function handles External interrupt Line 4 request.

* Input: None

* Output: None

* Return: None

*******************************************************************************/

void EXTI4_IRQHandler(void) /* Key 1 */

{

if(EXTI_GetITStatus(EXTI_Line4) != RESET)

{

LED_ALL_OFF();

LED1_ON();

/* Clear the EXTI Line 4 */

EXTI_ClearITPendingBit(EXTI_Line4);

}

}

/*******************************************************************************

* Function Name: EXTI15_10_IRQHandler

* Description: This function handles External lines 15 to 10 interrupt request.

* Input: None

* Output: None

* Return: None

*******************************************************************************/

void EXTI15_10_IRQHandler(void) /* Key 2 & 3 */

{

if(EXTI_GetITStatus(EXTI_Line10) != RESET)

{

LED_ALL_OFF();

LED2_ON();

/* Clear the EXTI Line 10 */

EXTI_ClearITPendingBit(EXTI_Line10);

}

if(EXTI_GetITStatus(EXTI_Line13) != RESET)

{

LED_ALL_OFF();

LED3_ON();

/* Clear the EXTI Line 13 */

EXTI_ClearITPendingBit(EXTI_Line13);

}

}


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

MCS-51單片機有兩個外部中斷源INT0和INT1,它們分別在P3.2和P3.3引腳出現(xiàn)低電平或下降沿信號時向單片機發(fā)出中斷請求。外部中斷可用于檢測單片機外部發(fā)生的事件,如鍵盤敲擊和特定脈沖發(fā)生的次數(shù)等。

關(guān)鍵字: 51單片機 外部中斷

外部中斷是單片機實時地處理外部事件的一種機制。具體指的是,當(dāng)某種外部事件發(fā)生時,單片機的中斷系統(tǒng)迫使CPU暫停正在執(zhí)行的程序,轉(zhuǎn)而去進(jìn)行中斷事件的處理;中斷處理完畢后,又返回被中斷的程序處,繼續(xù)執(zhí)行下去。這里我們以Nuc...

關(guān)鍵字: MCU 外部中斷 ST

STM32CubeMX是官方推薦的配置軟件,而HAL庫也是取代之前的庫函數(shù)的通用庫,所以STM32CubeMX+HAL庫是當(dāng)前主流的工程創(chuàng)建方式,HAL庫的可移植性也高于被取代的庫函數(shù)。 之前在[程序員小哈]的公眾號中寫...

關(guān)鍵字: LED 外部中斷

1.ARM中一些常見英文縮寫解釋 MSB:最高有效位; LSB:最低有效位; AHB:先進(jìn)的高性能總線; VPB:連接片內(nèi)外設(shè)功能的VLSI外設(shè)總線; EMC:外部存儲器控制器; MAM:存儲器加速模塊; VIC:向量中...

關(guān)鍵字: ARM THUMB I2C 外部中斷

一、exit()函數(shù)?????? 函數(shù)聲明:void exit(int state);?????? exit()函數(shù)用于在程序運行的過程中隨時結(jié)束程序,exit的參數(shù)state是返回給操作系統(tǒng),返回0

關(guān)鍵字: exit atexit

/********************************文件所用資源1.外部中斷0、1 定時中斷0、1 串口中斷2.端口:P3.0,P3.1,P3.3,P3.4,P3.5********************...

關(guān)鍵字: c51程序 串口中斷 外部中斷 定時中斷

#include #include #include int main(void){MCUCR |= (1

關(guān)鍵字: AVR gcc編程 單片機 外部中斷

因為沒有中斷的清除標(biāo)志位,這一點與其它單片機是不同的。EXTI_CR1 觸發(fā)邊沿的設(shè)置要在總中斷沒開時才能寫入!PD7 是 不可屏蔽的最高優(yōu)先級的硬件中斷(TLI)設(shè)置順序:最好先關(guān)中斷 設(shè)置邊沿 開啟引腳 最后開總中斷...

關(guān)鍵字: stm8s 外部中斷

以下總結(jié)參考原子STM32開發(fā)指南STM32F103 的中斷控制器支持 19 個外部中斷/事件請求。STM32F103 的19 個外部中斷為:線 0~15:對應(yīng)外部 IO 口的輸入中斷。線 16:連接到 PVD 輸出。線...

關(guān)鍵字: STM32 外部中斷

一、STM32中斷分組:  STM32 的每一個GPIO都能配置成一個外部中斷觸發(fā)源,這點也是STM32的強大之處。STM32 通過根據(jù)引腳的序號不同將眾多中斷觸發(fā)源分成不同的組,比如:PA0,PB0,PC0,PD0,P...

關(guān)鍵字: gpio STM32 外部中斷
關(guān)閉