国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 1581|回復(fù): 0
打印 上一主題 下一主題

【CC3200實(shí)驗(yàn)教程7】瘋殼·AI語音人臉識(shí)別-中斷

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2022-9-1 10:41:59 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
CC3200AI實(shí)驗(yàn)教程
——瘋殼·開發(fā)板系列
中斷




    接口數(shù)據(jù)傳送控制方式有查詢、中斷和DMA等,中斷是重要的接口數(shù)據(jù)傳送控制方式。中斷控制分為全局和局部?jī)杉?jí),全局中斷由NVIC控制,局部中斷由外設(shè)控制。
    嵌套向量中斷控制器NVIC支持多個(gè)內(nèi)部異常和多達(dá)240個(gè)外部中斷。從廣義上講,異常和中斷都是暫停正在執(zhí)行的程序轉(zhuǎn)去執(zhí)行異常或中斷處理程序,然后返回原來的程序繼續(xù)執(zhí)行。從狹義上將,異常由內(nèi)部事件引起,而中斷有外部硬件產(chǎn)生。
    異常和中斷的處理與子程序調(diào)用有相似之處,但也有下列本質(zhì)區(qū)別:
    什么時(shí)候調(diào)用子程序是確定的,而什么時(shí)候產(chǎn)生異常和中斷時(shí)不確定的。子程序的起始地址由調(diào)用程序給出,而異常和中斷程序的起始地址存放在地址表中。
    子程序的執(zhí)行一般是無條件的,而異常和中斷處理程序的執(zhí)行要先使能。
    CC3200的NVIC具有下列特性:
    a、確定的、快速的中斷處理,總是12個(gè)時(shí)鐘周期;
    b、每個(gè)中斷的優(yōu)先級(jí)可編程(0~7,0表示最高優(yōu)先級(jí));
    c、3~8位優(yōu)先級(jí)配置;
    d、動(dòng)態(tài)重新分配中斷優(yōu)先級(jí);
    e、中斷優(yōu)先級(jí)分組允許選擇中斷優(yōu)先級(jí)分組和中斷子優(yōu)先級(jí)的數(shù)量。低延遲中斷和異常處理;
    f、中斷信號(hào)電平和邊沿檢測(cè)。
    1.1寄存器
    本小節(jié)將使用的GPIO外部中斷來實(shí)現(xiàn)按鍵的功能。每個(gè)GPIO端口的中斷功能通過7個(gè)寄存器來進(jìn)行控制。這些寄存器用來選擇中斷源、中斷優(yōu)先級(jí)和邊沿特性。當(dāng)一個(gè)或者多個(gè)GPIO輸入引起中斷時(shí),一個(gè)單中斷信號(hào)輸出到整個(gè)GPIO端口的中斷控制器。
    下面三個(gè)寄存器定義了引起中斷的邊沿或檢測(cè):
    a、GPIOIS:GPIO 中斷檢測(cè)寄存器;
    b、GPIOIBE:GPIO  中斷邊沿寄存器;
    c、GPIOIEV:GPIO  中斷時(shí)間寄存器。
    中斷功能通過GPIO中斷掩碼(GPIOIM)寄存器來進(jìn)行使能和關(guān)閉。
    當(dāng)一個(gè)中斷條件產(chǎn)生時(shí),有兩個(gè)地方可以查看中斷信號(hào)的狀態(tài):GPIO源中斷狀態(tài)(GPIORIS)寄存器和GPIO掩碼中斷狀態(tài)(GPIOMIS)寄存器。正如名稱暗示的那樣,GPIOMIS寄存器只顯示可以發(fā)送給中斷控制器的中斷條件。GPIORIS 寄存器表示一個(gè) GPIO引腳達(dá)到了產(chǎn)生中斷的條件,但是不一定會(huì)發(fā)送給中斷控制器。
    如果是GPIO電平檢測(cè)中斷,產(chǎn)生中斷的電平信號(hào)必須保持到中斷服務(wù)的產(chǎn)生。一旦輸入的信號(hào)解除中斷產(chǎn)生的邏輯信號(hào),對(duì)應(yīng)的GPIORIS寄存器中的源中斷寄存器位將被清零。對(duì)于GPIO邊沿檢測(cè)中斷,GPIORIS寄存器中的RIS位通過向寄存器GPIOICR中的對(duì)應(yīng)位寫入1來進(jìn)行清零。GPIOMIS寄存器中的對(duì)應(yīng)位反應(yīng)源中斷狀態(tài)位的掩碼值。
    當(dāng)編輯中斷控制寄存器時(shí),應(yīng)當(dāng)將中斷全部關(guān)閉(GPIOIM清零)。如果對(duì)應(yīng)的位使能的話,則寫任何中斷控制寄存器都會(huì)產(chǎn)生不必要的中斷
    GPIOIS是中斷檢測(cè)寄存器。置位則對(duì)應(yīng)的引腳進(jìn)行電平檢測(cè),清零則對(duì)應(yīng)的引腳進(jìn)行邊沿檢測(cè)。在復(fù)位時(shí),所有的位清零。如圖1.0.1所示。
    注意:為了防止產(chǎn)生錯(cuò)誤的中斷,在配置中斷檢測(cè)寄存器和邊沿寄存器的時(shí)候,應(yīng)當(dāng)清零GPIOIM寄存器中的IME位來屏蔽中斷引腳。配置GPIOIS寄存器的IS位和GPIOIBE寄存器的IBE位。清除GPIORIS寄存器。最后通過置位GPIOIM寄存器中的IME位來打開引腳。


    圖1.0.1 GPIOIS寄存器
    GPIOIBE寄存器允許雙邊沿來觸發(fā)中斷。當(dāng)GPIOIS寄存器設(shè)置為檢測(cè)邊沿時(shí), 則設(shè)置GPIOIBE寄存器來配置對(duì)應(yīng)的引腳來檢測(cè)上升和下降沿,而忽略 GPIOIEV 寄存器中的對(duì)應(yīng)位的配置。清零一位則配置為引腳受GPIOIEV寄存器的控制。復(fù)位之后,所有的位都被清零。如圖1.0.2所示。
    注意:為了防止產(chǎn)生錯(cuò)誤的中斷,在配置中斷檢測(cè)寄存器和邊沿寄存器的時(shí)候,應(yīng)當(dāng)清零GPIOIM寄存器中的IME位來屏蔽中斷引腳。配置GPIOIS寄存器的IS位和GPIOIBE寄存器的IBE位。清除GPIORIS寄存器。最后通過置位GPIOIM寄存器中的IME位來打開引腳。


    圖1.0.2 GPIOIBE寄存器
    GPIOIEV寄存器是中斷事件寄存器。置位該寄存器中對(duì)應(yīng)的位來配置對(duì)應(yīng)的引腳檢測(cè)上升沿或者高電平,這取決于GPIOIS 寄存器對(duì)應(yīng)位的配置。清零該寄存器中的對(duì)應(yīng)位則對(duì)應(yīng)的引腳檢測(cè)下降沿或者低電平,這取決于GPIOIS寄存器中對(duì)應(yīng)位的配置。復(fù)位之后所有的位都清零。如圖1.0.3所示。


    圖1.0.3 GPIOIEV寄存器
    GPIOIM寄存器是中斷掩碼寄存器。置位該寄存器中的對(duì)應(yīng)位,則對(duì)應(yīng)引腳上產(chǎn)生的中斷將通過組合中斷信號(hào)發(fā)送給中斷控制器。清零則對(duì)應(yīng)的引腳產(chǎn)生的中斷不會(huì)發(fā)送給中斷控制器。復(fù)位之后所有的位都清零。如圖1.0.4所示。


    圖1.0.4 GPIOIM寄存器
    GPIORIS寄存器是源中斷狀態(tài)寄存器。當(dāng)對(duì)應(yīng)的引腳達(dá)到中斷條件時(shí),該寄存器中對(duì)應(yīng)的位被置位。如果中斷掩碼(GPIOIM)寄存器中的對(duì)應(yīng)位被置位,   則發(fā)送中斷信號(hào)到中斷控制寄存器。某一位讀取為0,則說明對(duì)應(yīng)的引腳沒有產(chǎn)生中斷。對(duì)于電平觸發(fā)中斷,引腳上的中斷信號(hào)必須保持到中斷服務(wù)。一旦中斷信號(hào)達(dá)不到中斷邏輯檢測(cè)要求,則GPIOIS寄存器對(duì)應(yīng)的RIS位將被清零。對(duì)于一個(gè)GPIO邊沿檢測(cè)中斷,GPIORIS寄存器中的RIS位通過置位GPIOICR寄存器中對(duì)應(yīng)的位進(jìn)行清零。GOUIMIS寄存器中的位反映RIS位的掩碼值。如圖1.0.5所示。


    圖1.0.5 GPIORIS寄存器
    GPIOMIS寄存器是掩碼中斷狀態(tài)寄存器。如果寄存器中對(duì)應(yīng)位被置位,則對(duì)應(yīng)的中斷將被發(fā)送到中斷控制器。如果某一位被清零,則無論是否有中斷產(chǎn)生,
    中斷都會(huì)被屏蔽掉。GPIOMIS寄存器是中斷掩碼之后的狀態(tài)。如圖1.0.6所示。


    圖1.0.6 GPIOMIS寄存器
    GPIOICR寄存器是中斷清零寄存器。對(duì)于邊沿檢測(cè)中斷,置位GPIOICR寄存器中對(duì)應(yīng)的位,則會(huì)清除GPIORIS和GPIOMIS寄存器中對(duì)應(yīng)的位。如果中斷是電平檢測(cè),則該寄存器中的對(duì)應(yīng)位沒有影響。另外,向該寄存器中寫入0也沒有任何影響。如圖1.0.7所示。


    圖1.0.7 GPIOICR寄存器
    1.2實(shí)驗(yàn)現(xiàn)象
    本實(shí)驗(yàn)在是官方CC3200SDK_1.2.0中Interrupt例程代碼的基礎(chǔ)上修改得來的,打開Interrupt_Demo,由于本次實(shí)驗(yàn)用到串口和按鍵,所以在mian函數(shù)的PinMuxConfig()中配置了串口0的輸入輸出以及GPIO_13和GPIO_22的方向?yàn)檩斎搿?br />     本次實(shí)驗(yàn)的關(guān)鍵是在ButtonIntInit()函數(shù)中,該函數(shù)如圖1.0.8所示。


    圖1.0.8 ButtonIntInit()函數(shù)
    在該函數(shù)中吧GPIO_13與GOIO_22配置為下降沿觸發(fā),觸發(fā)的中斷函數(shù)為Button1IntHandler()以及Button2IntHandler(),進(jìn)入中斷后,首先清除標(biāo)志位,然后通過串口0打印出“Button1”以及“Button2”。
    打開Uniflash,把編譯后生成bin文件下載到板子上(參考GPIO小節(jié)),把串口選擇的撥碼的第一個(gè)“RXD”以及“CH340G_VCC”撥到ON,這里我們用到了串口0的接收,打開串口調(diào)試助手,選擇對(duì)應(yīng)的串口號(hào),波特率設(shè)置為115200,打開串口,a按下復(fù)位,可以看到串口打印信息如圖1.0.9所示。


    圖1.0.9 復(fù)位時(shí)串口打印
    按下板子上的SW2和SW3可以看到串口打印信息如圖1.1.0所示。


    圖1.1.0 按下按鍵后串口打印




如需定制開發(fā),請(qǐng)通過官網(wǎng)“瘋殼”網(wǎng)頁底部的“聯(lián)系我們”進(jìn)行聯(lián)系

文件下載請(qǐng)點(diǎn)擊: 【5】中斷.pdf (758.29 KB)

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 丝袜系列小说 | 国产欧美日韩综合一区二区三区 | 国产综合久久久久影院 | 日本精品一区二区三区在线视频 | 失乐园电视剧日本第5集 | 国内特级毛片 | 免费看一级a一片毛片 | 91在线视频观看 | 免费在线看黄色的网站 | 精品国产麻豆免费人成网站 | h黄动漫在线观看播放 | 欧美一区二区三区在线观看免费 | 日韩欧美不卡一区二区三区 | 日韩综合色 | 四虎影视永久在线 | 日韩精品毛片 | 亚洲动漫第一页 | 国产在线一区二区三区欧美 | 国产成人精品免费影视大全 | 精品久久久久久乐 | 日本免费成人网 | 91久久精一区二区三区大全 | 91视频亚洲| 欧美在线视频不卡 | 欧美中文字幕在线 | 亚洲不卡视频在线 | 免费精品视频 | 亚洲激情在线观看 | 精品视频一区二区三区 | 亚洲欧美日韩精品中文乱码 | 亚洲欧美精品日韩欧美 | 99热只有 | 99在线播放| 日本强日本不卡一 | 香蕉视频99 | 日韩免费观看的一级毛片 | 日本特黄视频 | 男人天堂va| 99在线观看视频免费精品9 | 成人夜色香网站在线观看 | 日韩激情视频网站 |