欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

3天內(nèi)不再提示

STM8S_009_ EXTI外部中斷

黃工的嵌入式技術(shù)圈 ? 來源:黃工的嵌入式技術(shù)圈 ? 2020-03-14 14:56 ? 次閱讀

有人問

我使用EXIT喚醒芯片,沒什么沒有觸發(fā)中斷,芯片卻喚醒了?

Ⅰ寫在前面

使用STM8S開發(fā)過上面類似功能的朋友應該會知道,STM8S的穩(wěn)定性不如STM32,特別是在低功耗時,使用EXTI外部中斷喚醒,很容易受到干擾信號而喚醒。因此,這種情況需在硬件電路上多加考慮抗干擾的電路。

其次,就是注意軟件的上下拉配置,如果外部加了上拉或下拉電阻,不建議再配置成上拉或下拉;如果沒有,建議加上。要使其軟件穩(wěn)定,還得深入EXTI的功能。

ⅡEXTI基礎(chǔ)知識

STM8S的EXTI外部中斷歸屬于GPIO一類,只需要將其IO配置成外部中斷、使能全局中斷、在中斷入口函數(shù)添加相關(guān)的代碼即可。

開啟中斷功能

用戶可以在I/O引腳為輸入模式時通過設(shè)置Px_CR2寄存器的相應位來配置某個I/O作為外部輸入中斷模式。在該配置下, I/O引腳上的一個信號沿或是低電平會產(chǎn)生一個中斷請求。

在EXTI_CR[2:1]寄存器中對于每一個中斷向量都可以獨立編程為上升沿或下降沿觸發(fā)。

外部中斷只有在對應I/O口被設(shè)置為輸入模式下才有效。

屏蔽中斷功能

可以通過對Px_CR2寄存器的相應位進行編程來單獨使能/關(guān)閉外部中斷功能。復位后外部中斷是關(guān)閉的。

提示:EXTI外部中斷只有在IO輸入模式下才有效,配置才輸出模式,不能正常由外部觸發(fā)中斷。

Ⅲ軟件工程源代碼

1.關(guān)于工程

本文提供的工程代碼是基于前面軟件工程“STM8S-A04_UART基本收發(fā)數(shù)據(jù)”增加EXTI外部中斷修改而來。初學的朋友可以參看我前面對應的基礎(chǔ)文章,那些文章講的比較詳細。

2.EXTI引腳配置

我們尚且定義為按鍵KEY,浮動輸入,中斷模式。

#define KEY_GPIO_PORT GPIOD

#define KEY_GPIO_PIN GPIO_PIN_2

GPIO_Init(KEY_GPIO_PORT, (GPIO_Pin_TypeDef)KEY_GPIO_PIN, GPIO_MODE_IN_FL_IT);

3.EXTI中斷配置

void EXTI_Configuration(void)

{

EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOD, EXTI_SENSITIVITY_FALL_ONLY);

EXTI_SetTLISensitivity(EXTI_TLISENSITIVITY_FALL_ONLY);

}

這個地方配置成下降沿中斷,端口需對應引腳的端口。

4.中斷入口函數(shù)

#define KEY_READ GPIO_ReadInputPin(KEY_GPIO_PORT, KEY_GPIO_PIN)

INTERRUPT_HANDLER(EXTI_PORTD_IRQHandler, 6)

{

if(RESET == KEY_READ)

{

IT_Delay(50); //延時消抖

if(RESET == KEY_READ) //確認按下

{

LED_REVERSE; //改變LED狀態(tài)

}

}

}

提示:我們使用的GPIOD,入口需要對應。

下載

STM8S資料

http://pan.baidu.com/s/1o7Tb9Yq

軟件源代碼工程兩版本(STM8S-A09_EXTI外部中斷):

http://pan.baidu.com/s/1c2EcRo0

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • EXIT圖
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    7029
  • STM8S
    +關(guān)注

    關(guān)注

    16

    文章

    149

    瀏覽量

    31514
收藏 人收藏

    評論

    相關(guān)推薦

    STM32CUBEMX(11)--外部中斷(EXTI)

    概述 外部中斷和事件控制器 (EXTI) 管理外部和內(nèi)部異步事件 / 中斷,并生成相應的事件請求到CPU/
    發(fā)表于 09-10 15:44

    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(4)EXTI 中斷介紹

    EXTI(中斷/事件控制器)包含多個相互獨立的邊沿檢測電路并且能夠向處理器內(nèi)核產(chǎn)生中斷請求或喚醒事件。 EXTI 有三種觸發(fā)類型:上升沿觸發(fā)、下降沿觸發(fā)和任意沿觸發(fā)。
    的頭像 發(fā)表于 08-13 11:20 ?579次閱讀
    【GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(4)<b class='flag-5'>EXTI</b> <b class='flag-5'>中斷</b>介紹

    TPD8S009用于DisplayPort和HDMI的8通道ESD保護數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TPD8S009用于DisplayPort和HDMI的8通道ESD保護數(shù)據(jù)表.pdf》資料免費下載
    發(fā)表于 07-11 10:41 ?0次下載
    TPD<b class='flag-5'>8S009</b>用于DisplayPort和HDMI的<b class='flag-5'>8</b>通道ESD保護數(shù)據(jù)表

    求助,關(guān)于STM8S103外部中斷問題求解

    );/*設(shè)置為上升沿和下降沿觸發(fā)觸發(fā)中斷*/ EXTI_CR1 |= (uint8_t)((uint8_t)(0x01) << 4);/*設(shè)置為上升沿和下降沿觸發(fā)觸發(fā)
    發(fā)表于 05-16 07:25

    STM8進入halt模式后由EXTI中斷喚醒,程序無法繼續(xù)正常運行下去的原因?

    大家好,我現(xiàn)在有一個問題請教: 1. 我的STM8S103K3在執(zhí)行完相關(guān)任務(wù)后進入halt模式,在進入之前我設(shè)置了幾個EXTI中斷 2. 中斷服務(wù)函數(shù)中沒有任何的操作,只起一個喚醒系
    發(fā)表于 05-15 06:40

    STM8L外部中斷跟普通MCU的外部中斷不一致,為什么?

    最近公司一個案子需要用到超低功耗MCU,在TI和ST的片子中糾結(jié)了一段時間,最后選了ST的STM8L151G2U6。 在使用外部中斷的時候迷糊了,發(fā)現(xiàn)這個的外部
    發(fā)表于 05-15 06:23

    stm32怎么設(shè)置EXTI10 、EXTI11、EXTI12、EXTI13、EXTI14、EXTI15的中斷優(yōu)先級呢?

    EXTI15_10_IRQHandler中EXTI10 、EXTI11、EXTI12、EXTI13、EX
    發(fā)表于 05-14 08:30

    求助,關(guān)于STM32F072C外部中斷問題求解

    我在使用PB4 做外部中斷時,要求下降沿進中斷,但測試發(fā)現(xiàn)當我按下Key 時,可以進中斷,但我釋放Key時也進中斷....不清楚為什么? P
    發(fā)表于 05-11 07:05

    求助,STM8S外部中斷的問題求解

    stm8s103 外部中斷問題,比如PD2口設(shè)置了外部中斷,上升沿觸發(fā),此中斷軟件優(yōu)先級3級最高
    發(fā)表于 05-10 08:23

    STM8S外部中斷進去了,出不來怎么解決?

    STM8S外部中斷進去了,出不來。也沒有中斷標志位,怎么才能讓程序走出來?
    發(fā)表于 05-09 06:25

    【GD32F470紫藤派開發(fā)板使用手冊】第三講 EXTI-按鍵中斷檢測實驗

    通過本實驗主要學習以下內(nèi)容: EXTI中斷原理; 按鍵中斷檢測原理;
    的頭像 發(fā)表于 05-05 09:22 ?618次閱讀
    【GD32F470紫藤派開發(fā)板使用手冊】第三講 <b class='flag-5'>EXTI</b>-按鍵<b class='flag-5'>中斷</b>檢測實驗

    請問stm32l152的外部中斷EXTI9_5_IRQn怎么使用?

    中斷向量EXTI9_5_IRQn包含了5種管腳的中斷。如果我設(shè)置了GPIO6和GPIO7為外部中斷。我使用HAL庫,,那么
    發(fā)表于 04-22 06:14

    求助,關(guān)于STM32F030RCT6使用兩個外部中斷配置問題求解

    名稱:uart_exti_init 函數(shù)功能:RX引腳配置為外部中斷 輸入?yún)?shù):無 返 回 值:無 備 注:無
    發(fā)表于 04-09 07:40

    STM32中斷分組及外部中斷的配置過程分享

    結(jié)構(gòu)體   NVIC_InitStructure.NVIC_IRQChannel=EXTI2_IRQn;//使能外部中斷所在的通道
    發(fā)表于 04-08 08:05

    PC13 PC14 PC15作為外部中斷輸入口,頻繁進入中斷是為什么?

    );/* 禁止修改RTC和后備寄存器*/ //BKP_ITConfig(DISABLE); ? ? ? /* 禁止TAMPER 中斷*/ } void EXTI0_Config(void)//外部
    發(fā)表于 04-03 07:39