亚洲春色中文字幕久久久-三上亚,91精品国产亚一区二区三区,久久久九色综合亚洲成色777,涩涩视频下载,国产午夜亚洲精品午夜鲁丝片,国产精品A一区二区三区腾讯导航,影音先锋色情AV在线看片,蜜臀国产在线视频,极品少妇高潮啪啪无码吴梦梦 ,精品人妻无码一区二区三区手机版

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4707|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

STM系列(7)--STM32 上 RTOS 的中斷管理

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主


一. 中斷管理體系

圖1  STM32 的中斷服務(wù)


本文以STM32F1,F(xiàn)2,F(xiàn)3,F(xiàn)4 為例(采用Cortex-M3,M4 內(nèi)核),內(nèi)核支持中斷嵌套(最多可設(shè)置 256 個(gè)中斷優(yōu)先級(jí))。STM32 只使用其中的16 個(gè)優(yōu)先級(jí)。


如圖 1 所示,RTOS 一般不會(huì)將優(yōu)先級(jí)分組,但是會(huì)設(shè)置為 3 類,優(yōu)先級(jí)最低的中斷(級(jí)別 15)由 SysTick,PendSV 所使用; 中斷級(jí)別8~14 的服務(wù)程序可以調(diào)用內(nèi)核提供的進(jìn)程間通信函數(shù),但是此 類中斷服務(wù)程序會(huì)受到內(nèi)核的影響,中斷響應(yīng)可能被 推遲(在進(jìn)入臨界區(qū)后,CPU 會(huì)設(shè)置為忽略為 8~15 的優(yōu)先級(jí)中斷請(qǐng)求,但中斷控制器會(huì)鎖存這些請(qǐng)求,在告別臨界區(qū)后重新 打開中斷便可立即產(chǎn)生 中斷請(qǐng)求);級(jí)別0~7 的中斷服務(wù)程序不使用內(nèi)核提供的任何函數(shù),即內(nèi)核不會(huì)影響這些中斷,因此 其中斷延遲時(shí)間是非常短的。


  

. 中斷延遲的實(shí)例

  

1. 測(cè)簡(jiǎn)

初始化GPIO PA0 為EXTI 中斷,進(jìn)入臨界區(qū)后按PA0(中斷源),中斷不會(huì)即時(shí)響應(yīng),離開臨界區(qū) 后此中斷會(huì)被響應(yīng)。

/* 配置 PA0 為 EXTI 中斷 */
EXTILine0_Config();
CPU_SR_Save(); // 進(jìn)入臨界區(qū)
for (i=0;i<200;i++)
{
for (j=0;j<50000;j++);
}
CPU_SR_Restore(); //離開臨界區(qū)

臨界區(qū)實(shí)現(xiàn)如下,此臨界區(qū)實(shí)現(xiàn)屏蔽掉所有中斷優(yōu)先級(jí)的中斷,注意在M3/M4 內(nèi)核下,可以屏蔽一定 級(jí)別的中斷。

__asm void CPU_SR_Save(void)
{ M
RS R0, PRIMASK ; Set prio int mask to mask all (except faults)
CPSID I
BX LR
}
__asm void CPU_SR_Restore(void)
{
MSR PRIMASK, R0
BX LR
}

融創(chuàng)芯城與ST建立倉(cāng)儲(chǔ)物流合作,亞太區(qū)ST MCU開發(fā)工具,融創(chuàng)芯城獨(dú)家負(fù)責(zé)倉(cāng)儲(chǔ)、發(fā)放!親,這樣實(shí)力雄厚的企業(yè),它的拉人注冊(cè)享豪禮,你還猶豫什么?抓緊拉人注冊(cè),享受做小股東的樂趣!!


三.FreeRTOS 下的設(shè)置

FreeRTOSConfig.h 中

#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY        0xf
#define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY   8

文章來(lái)源:微信公眾號(hào)   融創(chuàng)芯城(一站式電子元器件、PCB、PCBA購(gòu)買服務(wù)平臺(tái),項(xiàng)目眾包平臺(tái),方案共享平臺(tái))


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:316311 發(fā)表于 2018-4-25 15:46 | 只看該作者
很多平臺(tái)跑FreeRTOS系統(tǒng)的都用USB接口芯片如SR9700/SR9800來(lái)實(shí)現(xiàn)網(wǎng)絡(luò)功能~分享一下~
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表