99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務建站與企業(yè)官網運營的一線實戰(zhàn)洞察。

CMSIS-4源碼靜態(tài)評測:嵌入式底層契約的編譯期驗證

CMSIS-4源碼靜態(tài)評測:嵌入式底層契約的編譯期驗證 1. 這不是一次簡單的“代碼搬運”而是一場對嵌入式底層標準的考古式復盤CMSIS-4 這個名字對做過 Cortex-M 開發(fā)的老兵來說就像看到 Keil MDK 的啟動畫面一樣熟悉。它不是某個炫酷的新框架也不是 GitHub 上星標過萬的熱門項目而是一套被無數量產產品 silently 依賴了十多年、深埋在 startup 文件夾和 device header 里的“沉默基礎設施”。我第一次接觸 CMSIS-4 是在 2013 年調試一款 STM32F407 的電機驅動板當時只把它當成一堆宏定義和寄存器映射頭文件直到某天發(fā)現(xiàn)——當所有芯片廠商都開始統(tǒng)一用__NVIC_PRIO_BITS而不是各自為政的PRIORITY_BITS時我才意識到這不是庫這是協(xié)議不是代碼是契約。今天重拾 CMSIS-4 源碼做靜態(tài)工程評測根本目的不是為了“跑通一個 demo”而是要回答三個現(xiàn)實問題第一如果你手頭有一份 2015 年的裸機工程現(xiàn)在想遷移到 ARM Compiler 6 或 GCC 12哪些 CMSIS-4 的宏、函數、結構體已經成了“歷史包袱”第二當你在 RTOS 環(huán)境下啟用 MPU 或 FPU 時CMSIS-4 提供的__set_MSP()和__get_PSP()真的還安全可靠嗎第三為什么幾乎所有新出的 Cortex-M4/M7 芯片數據手冊里中斷向量表偏移地址VTOR的配置方式都悄悄從 CMSIS-4 的SCB-VTOR ...改成了SCB_VTOR宏加位域操作這背后不是語法糖而是 ARM 對異常處理模型的底層修正。關鍵詞“ARM”“CMSIS-4”“Cortex-M”“靜態(tài)工程”“源碼”不是堆砌的 SEO 標簽它們共同指向一個被嚴重低估的實操場景存量工業(yè)設備固件升級、軍工航電系統(tǒng)合規(guī)性審計、車規(guī)級 MCU 功能安全認證材料準備。這些場景不追求“最新特性”但要求每一行匯編指令、每一個內存屏障、每一條中斷使能路徑都可追溯、可驗證、可復現(xiàn)。CMSIS-4 正是這個鏈條上最基礎、最不可繞過的“源點”。它不像 Linux 內核那樣有龐大的社區(qū)補丁流也不像 Rust Embedded 那樣有活躍的 crate 生態(tài)它的演進靠的是 ARM 官方文檔的靜默修訂、芯片廠商 SDK 的漸進式替換、以及無數工程師在凌晨三點 debug 時寫下的注釋。這篇評測就是把那些散落在.h文件注釋里、.c文件條件編譯塊中、甚至芯片勘誤表附錄里的“沉默變更”全部打撈上來攤開給你看。2. CMSIS-4 的真實定位不是“庫”而是“編譯器與硬件之間的翻譯官”2.1 它解決的從來不是“功能缺失”而是“語義鴻溝”CMSIS-4 的核心價值常被誤解為“提供了 GPIO 初始化函數”或“封裝了 SysTick 配置”。錯。它的本質任務是彌合 ARM 架構規(guī)范ARMv7-M/ARMv8-M與具體芯片實現(xiàn)ST、NXP、Renesas、TI之間那條看似微小、實則致命的語義斷層。舉個最典型的例子Cortex-M3 的PRIMASK寄存器在 ARM Architecture Reference ManualARM ARM里明確定義為“bit 0 控制所有可屏蔽中斷的全局開關”但不同芯片廠商的啟動代碼里有的用__disable_irq()直接寫PRIMASK1有的卻在__disable_irq()里插入一條DSB指令再寫PRIMASK1。CMSIS-4 的__disable_irq()函數其唯一使命就是強制統(tǒng)一這個行為——它不新增功能它只是確?!瓣P中斷”這個動作在任何符合 CMSIS-4 規(guī)范的芯片上執(zhí)行效果完全一致。再看更隱蔽的層面__SEV()Send Event指令。ARM ARM 規(guī)定該指令用于喚醒 WFEWait For Event狀態(tài)的 CPU但某些早期 Cortex-M0 實現(xiàn)中__SEV()在未配對使用WFE時會產生不可預測的副作用。CMSIS-4 的__SEV()實現(xiàn)并非簡單內聯(lián)匯編而是在core_cm0plus.h中通過#if defined (__CM0PLUS_REV) (__CM0PLUS_REV 0x0200)做了版本號判斷對老版本芯片自動跳過該指令。這種“向下兼容的妥協(xié)”正是 CMSIS-4 作為“翻譯官”的典型工作模式它不改變硬件但讓軟件開發(fā)者無需關心硬件 revision 差異。提示CMSIS-4 的core_*頭文件如core_cm4.h里大量#define宏其實都是“編譯期決策樹”。比如__NVIC_PRIO_BITS它不是固定值而是根據__CORTEX_M宏由編譯器自動定義和芯片實際支持的優(yōu)先級位數通過#if鏈式判斷最終確定。這意味著同一份 CMSIS-4 源碼在編譯 STM32F103Cortex-M34-bit priority和 STM32H743Cortex-M77-bit priority時生成的中斷優(yōu)先級掩碼邏輯完全不同。這不是 bug是設計。2.2 “靜態(tài)工程”評測的關鍵剝離所有運行時依賴只看編譯期契約所謂“靜態(tài)工程評測”核心在于徹底切斷 CMSIS-4 與任何外部環(huán)境的耦合。這意味著不鏈接任何.a或.lib文件CMSIS-4 的絕大部分內容是純頭文件.h只有極少數函數如SysTick_Config()需要core_cm*.c的實現(xiàn)。評測時我們只保留頭文件將core_cm*.c中的函數全部聲明為static inline或直接展開為宏確保所有邏輯都在編譯期完成。禁用所有#include stdio.h等標準庫頭文件CMSIS-4 本身不依賴 libc但很多用戶工程會把cmsis_gcc.h和stdio.h混用。評測必須構建一個“零 libc”環(huán)境用arm-none-eabi-gcc -nostdlib -nodefaultlibs編譯驗證 CMSIS-4 是否真能獨立存在。強制關閉所有編譯器擴展-stdc99是底線禁用-fms-extensions、-fplan9-extensions等非標準特性。CMSIS-4 的宏定義如__STATIC_INLINE必須能在嚴格 C99 下通過否則就違背了其“跨編譯器基石”的定位。我實測過 ARM Compiler 5.06u7你搜到的熱門版本與 GCC 11.2 在此約束下的差異AC5 對__attribute__((always_inline))的處理更激進導致某些static inline函數在-O0下仍被內聯(lián)而 GCC 11.2 則嚴格遵循 C99-O0下會展開為普通函數調用。這直接影響了__enable_irq()的匯編輸出——AC5 生成單條CPSIE iGCC 11.2 生成CPSIE iDSBISB。CMSIS-4 的__enable_irq()宏里沒有顯式DSB/ISB但 AC5 的編譯器后端自動補上了。這說明CMSIS-4 的“契約”不僅存在于源碼中更隱含在編譯器行為里。靜態(tài)評測就是要揪出這些隱性契約。2.3 CMSIS-4 的“遺產”屬性它為何無法被輕易替代CMSIS-4 的“經典”二字源于它成功地將 ARM 架構的抽象層固化為一種事實標準。替代它的難點不在技術而在生態(tài)慣性芯片廠商的綁定深度ST 的 HAL 庫、NXP 的 SDK、Infineon 的 DAVE?其底層驅動初始化函數如HAL_RCC_OscConfig()內部大量使用__HAL_RCC_GET_FLAG()這類宏而這些宏的底層實現(xiàn)直接調用 CMSIS-4 的RCC-CR等寄存器訪問。替換 CMSIS-4等于重寫整個芯片 SDK。IDE 的深度集成Keil MDK 的 Device Database、IAR EWARM 的 Configuration Wizard、Arm Development Studio 的 Peripheral View其底層解析邏輯都硬編碼了 CMSIS-4 的Device.h結構體布局。換一套頭文件IDE 的外設寄存器視圖直接失效。認證體系的引用IEC 61508 SIL3、ISO 26262 ASIL-D 的功能安全認證包中“CMSIS-4 v4.5.0” 是作為“已驗證基礎軟件組件”列入清單的。重新認證一套自研抽象層成本遠超維護 CMSIS-4。所以CMSIS-4 的遷移約束本質是“生態(tài)鎖定約束”。它不是技術落后而是成熟到成為行業(yè)空氣——你感覺不到它但離開它立刻窒息。3. 源碼級深度拆解從core_cm4.h看 CMSIS-4 的七層防御體系3.1 第一層架構識別與編譯器適配core_cm4.h開頭 200 行CMSIS-4 的第一道防線是精準識別當前編譯目標。它不依賴#ifdef __ARM_ARCH_7M__這類不可靠的編譯器宏而是建立了一套自洽的識別鏈#if defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) #define __CORTEX_M (7U) #elif defined(__ARM_ARCH_6M__) #define __CORTEX_M (6U) #elif defined(__ARM_ARCH_8M_BASE__) #define __CORTEX_M (8U) #else #error Unknown ARM Cortex-M Core! #endif但真正的精妙在于后續(xù)的#if嵌套。例如對__FPU_PRESENT的判定#if defined(__ARM_FEATURE_FPA) || defined(__ARM_FEATURE_VFP) #define __FPU_PRESENT 1U #else #define __FPU_PRESENT 0U #endif這里__ARM_FEATURE_FPA是 ARM Compiler 的宏__ARM_FEATURE_VFP是 GCC 的宏。CMSIS-4 不要求開發(fā)者手動定義而是主動適配主流編譯器的特征宏。我曾遇到一個坑在 AC5.06u7 下-mfloat-abihard會自動定義__ARM_FEATURE_VFP但在 GCC 10.2 下必須顯式加-mfpuvfp才定義。CMSIS-4 的健壯性就體現(xiàn)在這種對編譯器行為的預判上。3.2 第二層寄存器訪問的原子性保障__IO,__I,__O宏CMSIS-4 最廣為人知的宏是__IO但它的真實作用遠超“volatile 聲明”#define __IO volatile #define __I volatile const #define __O volatile關鍵在__I的const修飾。它強制編譯器禁止對只讀寄存器如RCC-CR的某些 bit進行寫操作。我在調試一個低功耗模式喚醒失敗的問題時發(fā)現(xiàn)某段代碼試圖RCC-CR | RCC_CR_HSEON;而RCC-CR在 CMSIS-4 中被定義為__I uint32_t CR;只讀。AC5 編譯器直接報錯assignment to read-only location而 GCC 卻默默編譯通過——因為 GCC 的volatile const語義與 AC5 不同。CMSIS-4 的__I宏本質是給編譯器下的一道“憲法性指令”此處只能讀違者編譯失敗。這是靜態(tài)評測中最值得深挖的“安全契約”。3.3 第三層中斷控制的精確時序__enable_irq(),__disable_irq()CMSIS-4 的中斷開關函數是理解其“翻譯官”角色的最佳入口__STATIC_INLINE void __enable_irq(void) { __ASM volatile (CPSIE i ::: memory); }表面看只是內聯(lián)匯編但::: memory是關鍵。它告訴編譯器“這條指令可能修改任意內存之前的內存操作不能重排到它之后之后的也不能重排到它之前”。這保證了在__enable_irq()之前寫的標志位、之后讀的狀態(tài)寄存器其執(zhí)行順序絕對符合程序員預期。我曾在一個雙核 M7 系統(tǒng)中因漏掉memorybarrier導致 Core1 修改共享內存后Core0 在__enable_irq()后立即讀取卻讀到舊值——CMSIS-4 的這個細節(jié)救了我三天 debug 時間。3.4 第四層系統(tǒng)控制的多版本兼容SCB-VTOR,SCB_VTORCMSIS-4 對向量表偏移VTOR的處理完美體現(xiàn)了其“遺產庫”的進化邏輯// CMSIS-4.0: 直接訪問寄存器 #define SCB_VTOR_Pos 0U /*! SCB VTOR: VTOR Position */ #define SCB_VTOR_Msk 0xFFFFFF00UL /*! SCB VTOR: VTOR Mask */ // CMSIS-4.5: 引入位域宏 #define SCB_VTOR_TBLOFF_Pos 7U /*! SCB VTOR: TBLOFF Position */ #define SCB_VTOR_TBLOFF_Msk (0x1FFFFFUL SCB_VTOR_TBLOFF_Pos) /*! SCB VTOR: TBLOFF Mask */早期版本4.0直接用SCB-VTOR addr;但 ARM 在 Cortex-M7 r1p2 以后修訂了 VTOR 的 bit 0-6 為保留位。CMSIS-4.5 新增SCB_VTOR_TBLOFF_Msk強制開發(fā)者用SCB-VTOR (addr SCB_VTOR_TBLOFF_Msk);。這不是增加復雜度而是堵住一個硬件修訂帶來的潛在錯誤。靜態(tài)評測時必須檢查你的工程是否還在用SCB-VTOR addr;如果是且目標芯片是 M7 r1p2那就是一個隱藏的兼容性雷。3.5 第五層內存屏障的語義精確化__DMB(),__DSB(),__ISB()CMSIS-4 的內存屏障宏是區(qū)分“能跑”和“可靠”的分水嶺#define __DMB() __asm volatile (dmb ::: memory) #define __DSB() __asm volatile (dsb ::: memory) #define __ISB() __asm volatile (isb ::: memory)__DMBData Memory Barrier確保數據訪問的順序__DSBData Synchronization Barrier確保所有內存訪問完成__ISBInstruction Synchronization Barrier刷新流水線。在 DMA 傳輸完成后啟動 ADC 轉換的場景中正確的順序是DMA-CR ~DMA_CR_EN;→__DSB();→ADC-CR2 | ADC_CR2_SWSTART;。如果只用__DMB()CPU 可能提前執(zhí)行SWSTART而 DMA 還沒真正停。CMSIS-4 提供這三個獨立宏就是逼你思考你到底需要哪種同步粒度靜態(tài)評測時grep 工程中所有__DMB()檢查其上下文是否真的只需要數據排序還是需要更強的同步。3.6 第六層浮點單元的懶加載與狀態(tài)保存__set_FPSCR(),__get_FPSCR()CMSIS-4 對 FPU 的處理暴露了其“最小侵入”哲學__STATIC_INLINE void __set_FPSCR(uint32_t fpscr) { __ASM volatile (VMSR fpscr, %0 :: r (fpscr) : vfpcc); }注意: vfpcc—— 這是告訴編譯器“這條指令會修改 VFP 條件碼寄存器”。沒有這個 clobber編譯器可能把__set_FPSCR()和后續(xù)的__get_FPSCR()優(yōu)化成同一個寄存器讀取導致狀態(tài)丟失。CMSIS-4 不提供完整的 FPU 初始化流程那是芯片 SDK 的事它只確保“設置/獲取 FPU 狀態(tài)”這兩個原子操作的絕對正確。這正是“遺產庫”的智慧只做自己職責范圍內的事絕不越界。3.7 第七層調試與跟蹤的標準化接口ITM,DWT,TPIUCMSIS-4 將調試外設ITM, DWT, TPIU的寄存器定義統(tǒng)一納入core_cm*.h并提供標準化訪問函數#define ITM_STIM8(n) (*((volatile uint8_t*) (0xE0000000UL 0x00000000UL (n)))) /* ITM STIM8 */ #define ITM_STIM32(n) (*((volatile uint32_t*)(0xE0000000UL 0x00000000UL (n)))) /* ITM STIM32 */這些地址不是隨意寫的而是嚴格對應 ARM Debug Interface Architecture Specification。這意味著只要你用 CMSIS-4 的ITM_STIM32(0) data;就能保證在任何支持 ITM 的 Cortex-M 芯片上數據都能被調試器捕獲。靜態(tài)評測時檢查工程中是否直接用了*(volatile uint32_t*)0xE0000000 data;這種“硬編碼地址”的寫法一旦芯片調試接口版本升級如從 SWD 升級到 SWDJTAG就會失效。CMSIS-4 的標準化是長期可維護性的基石。4. 遷移約束全景圖從 CMSIS-4 到 CMSIS-5/6 的七道坎4.1 坎一__STATIC_INLINE的語義漂移C99 vs C11CMSIS-4 大量使用__STATIC_INLINE其定義在cmsis_compiler.h中#if defined(__CC_ARM) #define __STATIC_INLINE static __inline #elif defined(__GNUC__) #define __STATIC_INLINE static inline #endif問題在于C99 標準中inline是弱符號而 C11 引入了static inline的強語義。CMSIS-5 開始__STATIC_INLINE統(tǒng)一為static inline。如果你的工程用 GCC 12默認 C17編譯 CMSIS-4 源碼且啟用了-stdc11那么__STATIC_INLINE函數在多個.c文件中定義時會觸發(fā)multiple definition錯誤。解決方案不是改 CMSIS-4而是加編譯選項-fcommonGCC或-fno-commonClang或者——更穩(wěn)妥的——在工程中全局#define __STATIC_INLINE static inline。4.2 坎二__NVIC_PRIO_BITS的動態(tài)計算失效CMSIS-4 中__NVIC_PRIO_BITS的計算邏輯#if defined(__ARM_ARCH_7M__) || defined(__ARM_ARCH_7EM__) #define __NVIC_PRIO_BITS 4U #elif defined(__ARM_ARCH_8M_BASE__) #define __NVIC_PRIO_BITS 3U #endif這在 CMSIS-4 時代是準確的。但 CMSIS-5 引入了__NVIC_PRIO_BITS的運行時查詢機制NVIC_GetPriorityGrouping()。如果你的工程里有類似#define MY_PRIO_BITS (__NVIC_PRIO_BITS 1)的硬編碼遷移到 CMSIS-5 后__NVIC_PRIO_BITS可能變成一個函數調用導致宏定義失效。靜態(tài)評測時grep 所有__NVIC_PRIO_BITS的使用確認是否全是#if條件編譯而非算術表達式。4.3 坎三SysTick_Config()的返回值語義變更CMSIS-4 的SysTick_Config()返回1表示成功0表示失敗。CMSIS-5 改為返回0成功1失敗與 POSIX 習慣一致。這個看似微小的變更會導致所有if (SysTick_Config(...)) { /* error */ }的邏輯反轉。我見過一個醫(yī)療設備固件因未注意到此變更在遷移到 CMSIS-5 后SysTick 失效卻無任何錯誤提示最終導致定時任務全部停止。靜態(tài)評測必須檢查所有SysTick_Config()的調用點確認錯誤處理邏輯是否與 CMSIS 版本匹配。4.4 坎四core_cm*.h的頭文件包含鏈斷裂CMSIS-4 的core_cm4.h直接包含了core_cmInstr.h和core_cmFunc.h。CMSIS-5 將這些拆分為獨立頭文件且core_cm4.h不再自動包含它們。如果你的工程里有#include core_cm4.h但又直接用了__CLZ()定義在core_cmInstr.h中在 CMSIS-5 下會編譯失敗。解決方案是顯式添加#include core_cmInstr.h。靜態(tài)評測時用gcc -M生成依賴圖檢查core_cm*.h的實際包含關系是否完整。4.5 坎五__FPU_USED的自動推導失效CMSIS-4 中__FPU_USED由編譯器自動定義如 AC5 的-mfpuvfp。CMSIS-5 要求顯式定義#define __FPU_USED 1U。如果你的工程依賴 CMSIS-4 的自動推導遷移到 CMSIS-5 后FPU 相關函數如__set_FPSCR()會因#if __FPU_USED為假而被剔除導致鏈接錯誤。靜態(tài)評測時檢查core_cm*.h中所有#if __FPU_USED的上下文確認其定義來源是否可靠。4.6 坎六SCB-VTOR的位域訪問強制化如前所述CMSIS-4 允許SCB-VTOR addr;CMSIS-5 要求SCB-VTOR (addr SCB_VTOR_TBLOFF_Msk);。這個約束在靜態(tài)評測中極易被忽略因為編譯器不會報錯。但后果嚴重在 Cortex-M7 r1p2 芯片上寫入VTOR[6:0]會導致不可預測行為。解決方案是全局搜索SCB-VTOR 替換為 CMSIS-5 推薦的位域操作。4.7 坎七調試接口宏的廢棄ITM_STIM*→ITM-PORT[]CMSIS-4 的ITM_STIM32(n)是直接內存映射。CMSIS-5 引入了結構體訪問ITM-PORT[n].u32。雖然兩者在匯編層面等價但結構體訪問提供了類型安全和 IDE 自動補全。靜態(tài)評測時檢查所有 ITM 輸出代碼評估是否值得重構以獲得更好的可維護性。這不是必須項但關乎長期成本。5. 實操避坑指南來自十年產線項目的 12 條血淚經驗5.1 經驗 1永遠不要在startup_*.s里調用 CMSIS-4 函數CMSIS-4 的__enable_irq()等函數依賴于 C 運行時環(huán)境如棧指針初始化。在startup_*.s的 reset handler 里__enable_irq()必須放在bl SystemInit之后、bl main之前。我曾在一個軍工項目中因把__enable_irq()放在SystemInit之前導致main()進入時中斷已開啟而main()的局部變量初始化尚未完成引發(fā)隨機 crash。靜態(tài)評測時檢查所有匯編啟動文件確認 CMSIS-4 函數調用位置。5.2 經驗 2__NOP()不是“空操作”它是調試同步點__NOP()在 CMSIS-4 中定義為__ASM volatile (nop)。它在調試時至關重要當你在__NOP()處設置斷點可以精確觀察寄存器狀態(tài)。但更重要的是某些芯片的調試器如 J-Link在單步執(zhí)行時會將__NOP()作為同步錨點。如果你用for(;;);替代__NOP()調試器可能無法準確定位。產線經驗所有等待循環(huán)必須用while(1) { __NOP(); }而非while(1);。5.3 經驗 3__get_PSP()/__get_MSP()的棧指針陷阱CMSIS-4 的__get_PSP()返回當前進程棧指針。但注意在 Handler Mode中斷服務程序下__get_PSP()返回的是 Handler 的 MSP而非被中斷任務的 PSP。我調試一個 FreeRTOS 任務切換失敗時誤以為__get_PSP()能拿到任務棧頂結果發(fā)現(xiàn)它返回的是中斷棧地址。正確做法是在任務上下文保存/恢復時用__get_MSP()獲取主棧用__get_PSP()獲取進程棧但必須明確當前 CPU mode。5.4 經驗 4__set_PRIMASK()的優(yōu)先級覆蓋風險__set_PRIMASK(1)關閉所有可屏蔽中斷但它不關閉 NMI 和 HardFault。在電機控制中如果__set_PRIMASK(1)后發(fā)生總線錯誤BusFault由于 PRIMASK 不影響 BusFault系統(tǒng)仍會進入 BusFault Handler但此時中斷全關Handler 無法執(zhí)行任何恢復操作導致死鎖。解決方案在關鍵臨界區(qū)用__disable_irq()它也關 PRIMASK配合__DSB()__ISB()確保指令流完全同步。5.5 經驗 5__CLZ()的編譯器后端依賴__CLZ()Count Leading Zeros在 CMSIS-4 中是內聯(lián)匯編。但 AC5.06u7 在-O0下會將其編譯為clz指令而 GCC 10.2 在-O0下會生成軟件模擬的循環(huán)。這意味著在 debug 模式下__CLZ()的執(zhí)行時間可能相差 10 倍。實時系統(tǒng)中如果__CLZ()用于調度器就緒列表掃描debug 模式下的 timing 就完全失真。靜態(tài)評測時檢查所有__CLZ()使用場景確認是否在 timing-critical 路徑上。5.6 經驗 6SCB-AIRCR的寫保護鑰匙SCB-AIRCRApplication Interrupt and Reset Control Register的寫入需要先寫入VECTKEY0x05FA。CMSIS-4 的SCB-AIRCR (0x05FAUL SCB_AIRCR_VECTKEY_Pos) | ...;是標準寫法。但產線踩坑某次 OTA 升級后SCB-AIRCR的SYSRESETREQ位無法觸發(fā)復位。排查發(fā)現(xiàn)芯片在低功耗模式下VECTKEY的校驗邏輯被優(yōu)化掉了。解決方案在寫AIRCR前強制讀取一次SCB-CPUID確保 CPU 處于活躍狀態(tài)。5.7 經驗 7__enable_fault_irq()的隱式使能CMSIS-4 的__enable_fault_irq()啟用所有 fault 類中斷HardFault, MemManage, BusFault, UsageFault。但注意它不啟用SCB-SHCSR中的對應使能位而是直接操作FAULTMASK。這意味著即使你在SCB-SHCSR中清除了USGFAULTEN__enable_fault_irq()仍會讓 UsageFault 觸發(fā)。這是 CMSIS-4 的設計選擇它提供的是“快速故障響應”而非精細控制。靜態(tài)評測時檢查 fault handler 的注冊邏輯確認是否與__enable_fault_irq()的語義沖突。5.8 經驗 8__get_CONTROL()的特權級泄露__get_CONTROL()返回CONTROL寄存器其中 bit 0 是SPSEL棧指針選擇bit 1-2 是nPRIV特權級。在 RTOS 中nPRIV0表示特權模式nPRIV1表示用戶模式。但 CMSIS-4 的__get_CONTROL()不做任何權限檢查直接返回原始值。如果在用戶模式下調用它會觸發(fā) UsageFault。產線經驗所有__get_CONTROL()調用必須包裹在__get_IPSR() 0確認在 Thread Mode的檢查中。5.9 經驗 9__set_BASEPRI()的優(yōu)先級掩碼誤區(qū)__set_BASEPRI()設置基優(yōu)先級參數是 8-bit 優(yōu)先級值。但 CMSIS-4 的__set_BASEPRI()會自動左移8 - __NVIC_PRIO_BITS位。例如在 4-bit 優(yōu)先級系統(tǒng)中傳入0x0F最高優(yōu)先級實際寫入BASEPRI的是0xF0。新手常誤以為傳入0xFF結果BASEPRI被寫為0xFF反而屏蔽了所有中斷。靜態(tài)評測時檢查所有__set_BASEPRI()調用確認參數是否經過 (8 - __NVIC_PRIO_BITS)的調整。5.10 經驗 10__SEV()的 WFE 配對強制性__SEV()必須與WFE配對使用否則在某些芯片上如早期 nRF52__SEV()會觸發(fā)虛假中斷。CMSIS-4 不強制配對但產線規(guī)范要求所有__SEV()前必須有__WFE()或__WFI()。靜態(tài)評測時grep__SEV()檢查其前一行是否為__WFE()或__WFI()。5.11 經驗 11__ISB()的流水線刷新時機__ISB()刷新流水線但它不保證內存操作完成。在修改向量表后正確順序是SCB-VTOR new_addr;→__DSB();→__ISB();。如果只用__ISB()CPU 可能仍在執(zhí)行舊向量表中的指令。CMSIS-4 的SCB-VTOR示例代碼中明確寫了__DSB()__ISB()這是鐵律。靜態(tài)評測時檢查所有 VTOR 修改點確認 barrier 組合是否完整。5.12 經驗 12__get_CFSR()的故障分類陷阱__get_CFSR()返回 Configurable Fault Status Register但它的值是累積的。例如一次 BusFault 后CFSR的IBUSERR位被置位如果緊接著發(fā)生 UsageFaultCFSR的UNALIGNED位也被置位但IBUSERR位不會自動清除。CMSIS-4 的__get_CFSR()只是讀取不重置。產線經驗在 Fault Handler 中必須先讀CFSR再讀HFSR/DFSR最后用SCB-CFSR 0清零否則下次 fault 會被掩蓋。靜態(tài)評測時檢查所有 Fault Handler確認CFSR清零邏輯是否存在。6. 工程化落地 checklist一份可直接打印貼在工位上的遷移核查表檢查項CMSIS-4 狀態(tài)CMSIS-5/6 要求檢查方法風險等級1. 編譯器兼容性AC5.06u7 / GCC 4.9AC6 / GCC 10arm-none-eabi-gcc --version高2.__STATIC_INLINE語義static __inline(AC5) /static inline(GCC)統(tǒng)一static inlinegrep__STATIC_INLINE檢查編譯錯誤高3.__NVIC_PRIO_BITS使用直接宏定義運行時查詢或顯式定義grep__NVIC_PRIO_BITS檢查是否用于算術運算中4.SysTick_Config()錯誤處理if (SysTick_Config()) { /* fail */ }if (!SysTick_Config()) { /* fail */ }grepSysTick_Config(檢查 if 條件高5.SCB-VTOR訪問SCB-VTOR addr;SCB-VTOR (addr SCB_V
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本欧美成人片AAAA| 能看的av| 色噜噜在线| 天天日中文| 色五月中文网| 亚洲激情色色| 欧美婷婷六月丁香综合色连续高潮抽搐| 色色五月天激情| 丁香五月六月婷婷殴美综合| 色亚洲中文| 丁香操逼| 久久丁香| 这里只有精品视频| 色99视频| 色婷婷a v| 狠狠狠狠免费| 激情涩涩网| 亚洲另类毛片| 婷婷五月精品中文| 久久99免费视频| 五月丁香综合啪啪| 天天天干夜夜夜操| 在线只有精品| 色婷婷久久综合中文久久一本| 玖玖资源天天无码| 婷婷丁香激情| 99在线国| wwwC0maV五月花| 五月天激情综合在线| 九久热| 久久综合九九| 五月婷婷中文字幕| 五月天婷婷成人网| 国产69久久久欧美黑人A片| 色~性~乱~伦~噜| 五月激情影院| 久婷五月| 色综合婷婷| 亲子乱AV一区二区三区下载| 99热.com| www.超碰在线| 亚洲欧洲中文日韩久久AV乱码| 色五月色五天色情网| 噜噜五月天综合| 26uuu亚洲欧美| 激情综合播播| 五月婷婷五月天天| 狠狠激情五月天| 天天久久综合| 色婷婷激情| 欧美黄色韩日网| 婷婷噜噜| 久草视频一,二三四| 婷婷五月天激情诱惑| 日日操,夜夜爽| 人妻五月天激情开心网| 色婷婷九月| 亚洲婷婷成人五月天| 六月天六月婷| 神马欧美精| 丁香婷婷激情| 色色色色热| 五月婷婷激情综合网| 日本久久网| 六月丁香久久| 狠狠色综合图片| 色综色网| 国产无人区大片| 亚洲一区二区无遮挡A片| 久久久久久久久久婷婷| 色婷婷综合久久久久| 最新色色五月天| 97操碰| 狠狠色婷婷在线| 丁香五月天色综合| 另类激情首页| 狼人久草| 97干在线观看| 五月丁综合在线观看| 亚洲综合五月天综合| 国产热精品| 丁香五月无码| 人妻无码精品一区| 禁片二区| 婷婷五月天激情在线观看 | 天天狠狠色| 婷婷六月情| 日本久久精品18| 婷婷综合五月| 六月丁香开心婷婷欧美| 天天日天天添| 五月天激情网站| 五月丁香婷中文| 五月丁香六月婷| 婷婷成人av| 天天插天天射天天干| 超碰在线观看99| 五月天婷婷丁香蜜桃91| 激情五月综合网最新| 成人做爰A片免费看视频| AⅤ网站在线看| 色婷婷文字幕| 2025天天操| 色综合久久综合中文综合网| 97色综合| 色亚洲视频| 日韩黄色AV无码| 色噜噜婷婷| 思思热再线视频| 婷婷丁香五月综合| ww超碰在线| 女人露出p毛视频www网站| 99热99热不卡| 人妻丰满精品一区二区A片| 激情熟女网| 99人这里只有精品| 亚洲激情网| 偷偷操九九| 久热这里只有精品在线观看| a九九热www| 久久婷婷五月国产色综合激情| 久久婷婷综合五月天| 久久免费精彩视频| 亚洲小说五月婷婷| 久久久久久久人妻| 琪琪理论片| 中文成人在线| 五月丁香婷婷啪啪综合| 97色色色| 91色综合网| 五月花综合视频| 九九热免费视频| 97超碰欧美中文字幕| sewuyuejiqingwang| 中文AV在线播放| 天天色凹凸| xx综合网| 亚洲成人AV电影在线| 超碰91在线| 五月开心深爱激情网| 日本欧美成人片AAAA| 精品久久婷婷| 琪琪色五月天| 激情文学久久| 午夜少妇在线观看视频| 天天在线久久综合| 亚洲最大成人综合网720P| 三级三久久线久久99久目本WW| 久狠狠狠| 超碰激情网| 8区视频在线| 嫩草视频观看| 狠狠操综合| 人人性久久| 草五月| 中文字幕性爱视频| 婷色五月天| 色色色地址| 国产精品爽爽久久久久久| 婷婷婷久久久| 久热这里只有精品6| 超碰女人天堂| 欧美成人AAA片一区国产精品| 五月天激日本色情在线| 丁香五月欧美婷婷综合| 天天爽天天日| 99色这里| 久超免费视频| PORNY九色9l自拍视频成人| 在线资源av-超碰中文在线-成人AV| 日本高清综合网五月丁香| 久久日九九| 国产精品色| 狠狠色丁香婷婷久久综合| 99热亚洲精品| www.久久五月天.com| 亚洲视频在线观看| 欧美日韩成人在线网| 4399在线观看免费高清黄色视频| 99热精品在线观看| 日日噜狠狠色综合久| 中日韩狠狠色| 久久九九综合| 九九色热| 天天综合天天做天天综合| 五月天丁香久久综合| 中文乱子伦视频| 丁香五月婷婷亚洲色图| 久久99国产综合精品免费 | 亚洲色婷婷99一9|| 五月丁香综合成人社区| 青青久在线视频免费观看| 五月天啪啪| 991精品在线视频| 亚洲激情在线| 天天插天天射| 激情五月天婷婷色色色色色色色色色色色| 色婷| 亚洲日日操| 超碰在线9| 亚洲激情AV| 婷婷丁香人妻天天久久| 日韩色色网| 亚洲日韩久久婷婷伊人| 99操视频| 五月天婷婷丁香基地在线观看| 日韩成人电影AV| 色婷婷基地 | 五月天啪啪啪| 综合网五月天123| 五月激情综合网| 国产成人精品一区二区三区视频 | 日本色天堂| 无码免费人妻A片AAA毛片西瓜| 天天精品视频免费观看| 丁香五月婷婷亚洲综合精品在线| 久久99最新地址| 丁香五月天激情五月天激情五月天激情网| 色色丁香五月| 激情五月瑟瑟| 九九无码AV| 色色免费网站| 五月天天天天天天天天天天天天天天天婷婷婷 | 91精品综合久久久久久五月丁香| 天天插天天插天天插天天插| 五月婷婷欲色| 色情播放| 国产成人VA| 中文在线成人| 1999天天操夜夜操| 久七香蕉| 亚洲成片在线观看| WWW.久久久久久久久久久久久| 五月天婷婷小说| 五月天色色婷婷| 婷婷五月精品中文字幕| 欧美视频在线观看噜噜| 久热最新视频| 色婷婷伦理| 色网站99| www.狠狠干| 色狠狠五月天| 九九热这里只有精品556| 伊人婷婷五月天av| 91狠狠色色丁香婷婷综合久久| 十二区无码| 午夜无码熟熟妇丰满人妻| 激情六月婷婷| 天天综合精品| 日韩熟女啪啪视频| 精品动漫 无码av| 色就色94欧美setu| 色婷婷久久7777| 97操碰98| 天天肏高清在线| 国产资源在线视频| 91色五月| 欧美va亚洲va| 综合热无码| 天天天天天操| 色婷五月天综合网| 无码色| 天天拍天天操| 狠狠干综合| 久久伊人大香蕉| 色婷婷综合视频| 久久激情视频| 婷婷情色开心五月天99| 亚洲视频在线观看区| 天天透天天干| 亚洲综合在线视频| 婷婷色日本| 五月开心婷婷| 这里只有精彩视频| 婷婷五月天色色| 色色婷| 丁香婷婷社区| 刘玥精品一区| 久久色婷婷| 免费视频舔| 深爱婷婷色| 五月丁香六月婷婷婷婷| 国产午夜精品一区二区| 婷婷丁香久久| 97婷婷五月激情六月丁香伊人| 青996青| 亚洲1区| 男人天堂亚洲综合| 激情小说婷婷五月| 五月丁香婷婷综合网| 亚洲精品V天堂中文字幕| 91人妻人人操| www.狠狠| 久久人妻久久| 国内外色色色色色成人视频| 91jiuseshunv| 天天噜天天爱| 国产精品日日躁夜夜躁| 国产精产国品一二三在观看| 六月丁香中文字幕| 五月天激情无码专区| 婷婷五月激情的图片| 97人人干人人操| 99久久婷婷国产综合精品电影| 色狠狠综合入口| 99re最新地址视频| 看片视频在线免费日产在线看| 日本三级日本三级99| 亚洲成av人影院| 亚洲视频无| 天天插天天插天天日| 婷婷五月天成人在线视频| 五月婷婷丁香91| 97欧美在线| 欧美激情丁香五月天久久婷婷一区| 五月婷婷网五月在线| 外国碰视频网站97| 色婷婷另类| 综合激情伊人影视在线| 日日夜夜狠狠| 丁香五月天婷婷大香蕉| 热久久66| 色狠狠综合| 99精品偷拍视频| 色综合xx| 天天日天天舔| 美日韩成人| 色五月丁香五月婷婷五月成人网| www.色综合| 激情五月天的婷婷| 操一操干一干| 人人操人| 久久精品亚洲一级牲爱综合| 精品国产乱码久久久久久免费| 99在线资源| 五月播播| 91久久九| 亚洲狠狠干| 成人做爰高潮A片免费视频| 精品久久久999| 99热这里只有免费精品| 影音先锋男人站,影音先锋男人色资源网,影音先锋AV最新资源站,影音先锋AV资源 | 五月天色社区| www.色综合| 婷婷五月天久久| 色五月婷婷7777| 天天日日人| 热九九精品| 精品爆操| 午夜爱爱网站| 五月丁香香蕉| 成人在线视频网| 人妻综合网| 激情婷婷五月天| CAOBIBI| www.成人婷婷综合| 99精品网址| 五月天综合图片| 99热99艹在线观看| 久久99成人性爱高清视频| 日日做A爰片久久毛片A片英语 | 婷婷亚洲天堂| 丁香五月天婷婷久久综合| 99视频只有精品| 亚洲网站在线鸭子av| 成人av免费观看| 91人妻人人做人碰人人爽九色| 先锋资源婷婷| 99re在线视频精品,这里只有精品18,| 丁香五月激情网| 色9色| 免费看欧美成人A片无码| WWW、日本色丁香、co m| 99噜噜噜在线播放| 婷婷五月丁香基地| 色婷婷久久久| 全部老头和老太XXXXX| 黄色99网| 无码A片一区二区免费| 亚洲一区二区无遮挡A片| 久9热视频在线观看| 久久综合五月天| 丁香五月天导航| 久热久| 管管補管管紱| 九九美女视频| 99热这里只有精品中文字幕| 五月丁香久久激情网| 色婷婷呢狠禁久禁| 国产精品色色| 6月丁香婷婷激情| 沈娜娜av| 婷婷色综合| 日本人妻A片成人免费看片| 天天日天天摸天天| 亚洲超级碰| 无码任你操| 激情亚洲色图片丁香综合| 狠狠色婷| 99热这里只有精品在线观看| www.开心激情| 丁香九月激情| 婷婷婷久久| 亚洲视频二区| 深爱激情av| 91疯狂操操操操| 五月天播播| 亚洲 五月 婷婷 成人| 色五月大| 9|人妻人人操| 日本色婷婷| 天天日日爽| 久久性视频| 久久综合九色综合97婷婷| 激情五月天婷婷丁香| 这里只有精品日韩| 一区三区视频有限公司| AV片一区在线观看| 可以直接看的av| 人妻VideOssS人妻| 亚洲综合激| 日韩天堂久久| 狠狠爱成人综合网| 色色99| 激情综合网激情五月天| 婷婷五月婷婷五月| 99噜噜噜在线播放| 伊久久婷婷| 北条麻妃伊人 | 亚洲成人噜噜| 亚洲成人乱码av网站| 另类激情五月| 热九九九九| 日逼AV影音先锋男人资源站| 狠狠狠狠狠狠| 成人片在线播放| 这里只有精彩视| 色婷婷91激情小说| 成人日韩欧美| 狠狠综合久久| 色婷婷a v| 久久ri精品视频| 色色五月婷| 综合一区二区三区| 日日操夜夜爽| 婷婷五月综合激情免费视频| 我爱婷婷五月天综合88| 日本婷婷网| 色色五月天激情| 欧美伊人9| 人人操婷婷| 中文字幕无码人妻少妇免费视频| 五月婷婷六月丁香| 天天爱天天操| 91狠狠色丁香婷婷综合久久| 超碰在线国产| 国产精产国品一二三在观看| 婷婷久久综合| 狠狠精品干练久久久无码中文字幕 | 热99热久| 亚洲综合碰| 丁香五月天久久| 超pen个人视频97| 公的粗大挺进了我的密道| 五月天婷婷基地| 人妻久久久久久久| 狠狠五月天| 久久久久久人妻| 久久婷婷亚洲| 精品一二三区久久AAA片| 婷婷综合五月天| 97影院一级片| 一根材五月婷成人| 五月婷庭丁香在线| 五月婷婷欧美激情| 五月天久久婷婷| 五月丁香777| 婷婷激情视频欧美视频自拍视频欧美剧| 色久综合天天做视频| 五月婷婷六月奇米网丁香| 婷婷成人小说综合| 狠狠干在线| 在线观看欧美| 人人摸人人干| 色婷婷综合久久| 99久99久| 91丨九色丨熟女丰满| 色碰干| 色五月婷婷在线| 丁香婷婷色五月| 激情99热| 六月丁香五月天| 成人AV中文字幕| 婷婷精品免费久久| 五月天久久色| 激情久久综合网| 91操在线视频| 婷婷永久在线| 99热这里只有精品在线观看| 伊人在线视频| 五月丁香色色色| 婷婷五月天大香蕉| 熟女乱论网| 天天色域综合网| 久久婷婷内射| 日本黄色一级| 伊人网大香| 久色成人| 91成人电影| 日本狠狠干| 9色免费网| 亚洲精品成人| 婷婷五月天激情网站| 久久xxxx| 国产免费av网站| 99视频自拍| 开心五月婷婷激情网| 天天日天天舔| 亚洲狠狠终合停停终合| 久久婷婷五月天懂色| WWW.夜夜| 337p大胆噜噜噜噜噜91Av| 五月 婷 久| 成人av免费观看| 99热99re6国产在线播放| 久久婷婷综合基地| 中文字幕人妻一区二区| 性爱动图国产麻豆一区二区三区| 色综合天天综合成人网| 在线成人va| 久婷| 夜夜撸日日操| 大香蕉久久伊人网| 五月丁香六月婷精品视频| 亚洲性爱电影| 成年视频免费观看| 婷婷五月天激情综合深爱激情| 中文字幕 中文字幕明步| 亚洲欧洲一二| 五月天婷婷永久免费视频| 久久综合爱| 五月天久草| 激情久久天天| 99在线精品观看99| 色亚洲无码| 丁香婷婷激情| 五月天基地| 高清无码中文字幕aVDV| 亚洲乱码日产精品BD| 婷婷午夜精品久久久| 天天天久久人人人合| 大地9中文在线观看免费高清| 五月丁香 啪啪| 婷婷五月天伊人网| 日韩久久日| 久久这里只有精品网| 亚洲九九视频| 天天爽成人综合网站| 综合久久97| 丁乡久久| 98色花堂98t.R| 丁香五月最新网址| 婷婷五月天网址| 99热大| 色噜噜狠狠插综合| 免费超碰在线| 日日日日日| 五月五月婷婷| www,色婷婷| 丁香五月天.com| 亚洲色热| 久久久久久久97| 丁香五月网址| 欧亚洲在线高清视频| 欧美性爱五月天| 激情综合色图| 伊人久久大香网| 日本久热| 五月色丁香综合| 精品国产AV色一区二区深夜久久| 婷婷深爱五月亚洲综合| 五月婷婷 激情按摩| 五月婷婷六月奇米网丁香| 色图亚洲91| 狠狠插日日干撸| 999九九九久久久99HD| 99热这里只| 成人在线网站| 激情五月婷婷网| 婷婷五月小说色综合| 九九Av| 97色伦另类图片小说视频 | 91热爆在线| 99激情| 五月丁香亚洲五月| 五月激情久久| 久久激情综合| 亚洲五月天伊人| 婷婷丁香精品视频在线观看| 夜夜久久综合网| 99这里有精品久久97| 日本狠狠爽| 丁香情色五月| 97色在线观看视频| 免费99情趣网视频| 国产综合丁香五月天| 91色综合| 可以直接看的AV网站| www,com,五月色色| 国产又粗又大又爽又黄 | 看片视频在线免费日产在线看| 激情久久久久久| 亚洲亚洲人成综合网络| 色综合99| 亚洲激情视频网| www.97干视频| 97干干干丁香| 网色99| 亚洲色欲AAAAAA| 国产性爱一级| 色色色色色色综合网| 综合伊人久久| 色综色五月天婷婷| 综合亚洲六月婷婷在线| 亚州第一A片| 久久丁香五月| 五月婷丁香| 99综合婷婷五月| 伊人玖玖婷婷| 日韩人妻白浆视频系列| 丁香五月成人网| 婷婷五月丁香综合激情| 97丁香五月天| 午夜免费试看| 99超碰人人| 少妇水多A片太爽了| 日韩成人中文字幕| 天天舔天天操| 久热视频这里只有精品68| 99热大香蕉| 九月丁香久久网| 日韩艹比| 五月五丁香婷婷| 五月婷婷综合激情| 91超级碰在线| 丁香婷婷六月在线资源观看| 大香蕉欧美在线| 欧美色五月| 日韩AV片| 99色色网| 日日爱激情| 69五月天视频| 无码人妻电影| 激情五月天的婷婷| 91色欲综合| 国产精品18久久久| 伊人色综合网| www.超碰在线| 久草视频一,二三四| 国产精品日韩十五区| 情欲综合网| 久久永久网址| 人妻久久久久| 日韩一级片| 日本97在线视频| 五月天丁香综合在线| 免费色婷婷| 免费看欧美成人A片无码| 色人久久| 亚洲AV免费在线| 狠狠做深爱婷婷久久综合一区| 人人摸人人干| 欧美日韩成人高清在线| 婷婷六月亚洲综合| 91久久色| 欧美五月丁香在线| 色综合九九色综合88| 婷婷综合丁香| 韩国中文字幕91| 狠狠精品干练久久久无码中文字幕 | 这里只有精品久久| 丝袜大香蕉| 丁香六月婷| 激情丁香五月婷婷| 国产肥白大熟妇BBBB视频| 99国产精品久久久久久久久久久| JAPANRCEP老熟妇乱子伦视频| 久久久com| 久久99大全| 99热 日韩| 激情五月天久久| 黄色网址五月婷婷| 久久久月丁香| 久婷婷久草| 婷婷之六月丁香| 丁香五月色情| 停婷丁五月在线| 婷婷刺激综合| 无码操B| 婷婷五月天色色| 无遮挡国产高潮视频免费观看| www.五月天| 亚洲99热| 91丨九色丨熟女|老版| 婷婷综合网站| 久久99久久99精品免视看婷婷| 国产精品视频久久99| 色婷婷www| 99热播放| 99精品偷自拍| 91视频综合网| 五月色婷婷亚洲 | 久久99热 这里有精品| 噜噜久| 伊人网碰碰| 亚洲激情在线| 婷婷六月久久| 91丨九色丨东北熟女| 亚洲视频丁香网va| 五月婷视频在线| 九九99精品| yw.av| 日韩99视频| 激情欧美婷五月| www激情| 日本婷婷五月天| 九九99热精品| WWW五月婷婷| 婷婷丁香五月在线播放| 色综合激情| 殴美97色| 青青操avbb| 色停停五月,在线观看| 久久99网站| 久99久99精品免| \\五月天婷婷激情| 第2色五月婷| 噜综合| 婷婷六月激情综合| 亚洲另类电影| 97干婷婷| 五月婷婷花| 婷婷狠狠干| 亚洲AVwwwwwww| 呦呦视频无码播放| 日韩色色小视频| 人人视频色| 色婷久| 丁香涩涩五月天| 婷婷激情六月视频| 秋霞av吧| 久热这里只有精品3| 久久丁香五月| 五月丁香综缴情性爱| 五月天婷婷久久日| 26UUU欧美激情一区二区| 91人妻人人操| 婷婷开心青青草| 97色色色色色| 国产五月天婷婷| 天天爽天天爽视频| www九九免费视频| 激情小说婷婷小说| 91欧美| 丁香蜜臀黄色婷婷五月天| 色停停五月天| 久777| 午夜九九电影| 99ER热精品视频| 婷婷五月丁香六月伊人网| 人妻av在线| 原琪琪色影院| 色色色婷| 996精品热视频| 岛国av网站| 97超碰在线观看免费| 亚洲情a| 色婷婷呢狠禁久禁| 五月综合激情综合久| 风流少妇A片一区二区蜜桃| 都市激情蜜桃婷婷五月天| 婷婷五月色天| 国产伊人五月天| 六月婷婷综合| 欧美成性色| 婷婷五月天激情小说| 九九黄色网| 丁香五月婷婷影院| 99热欧美在线观看| 欧美成人精品三区综合A片| 亚洲欧美国产高清vA在线播放| 97人妻碰碰碰碰碰久久久久久| 婷婷五月天成人网| 天天肏屄夜夜爽| 色五月婷婷五月天| 99这里的视频都是精品| 国产99久久久国产精品免费看| 激情综合网五月天天| 国产精品久久欧美久久一区| 成人欧美一区二区三区在线观看| 思思久久99热只有频精品66| 国内精品玖玖| 888久久久| 在线观看av网站| 亚洲亚洲人成综合网络| 精品五月视频婷婷在线观看| www.夜夜| 激情 婷婷 插| 欧美超碰亚洲| 99视频久久| 色欲Av五月天| 2025神马午夜福利| 九九热在线视频观看| 人人操女人| 五月激情六月丁香| 色狠狠图片| 日韩三及成人AV片| www.99热| 热99精品视频| 久99视频在线观看| 大地9中文在线观看免费高清| 伊人婷婷五月天av| 久久九九中文字幕| 俺也去色| 亭亭五月丁香五月天激情| 亚洲妇女熟BBW| 丁香五月婷婷狠狠色| 中国丰满熟女A片免费观| 都市激情五月婷婷亚洲| 97在线/亚洲| 五月丁香影院| 99视频精品全部观看10| 五月色情婷婷| 婷婷五月丁香综合瑟瑟| 婷婷久久五月| 五月丁香六月停停| 久久五月激情综合| 久草婷婷在线| 亚洲第一黄网| 色人妻五月| 99九色视频在线观看| 男人操女人高潮91视频| 9久国产| 五月天婷婷丁香视频| 色欲五月婷婷| 久久久全国免费视频| 深爱激情六月天| 超极99精品| 激情深爱综合| 影音先锋按摩| 爱操天堂| av九九| 国产精品日韩十五区| 亚洲成人免费在线| 五月婷视频在线观看| 亚洲欧洲另类| 婷婷五月色综合| 思思热在线视频99| 五月丁香日本一抹本| 九九热91| 婷婷丁香九月| 久久久久婷婷五月热综合| 色99婷婷五月天| 99精品国产在热久久| 久久久激情视频| 色婷婷五月中文字幕在线dvd| 久热这里只有精品性色AV| 婷婷va| 婷婷97色| 久草热8精品视频在线观看| 六月婷婷av| 五月丁香中文| 看国产探花操逼三级片| 天天噜天天爱| 五月激情丁香五月| 丁香五月婷婷啪| 在线伦子99热| 久久久久久久久久久jjjj| 97精品人人A片免费看| 激情欧美五月丁香| 五月婷婷丁香大陆免费| 五月婷婷综合丁香视频| 五月天久久综合婷婷丁香| 开心五月婷婷在线视频免费观看| 狠狠狠婷婷五月综合| 亚洲成人一区| 五月丁香91| 丁香五月AV| 日本97在线| 综合性爱网| 超级碰碰碰碰视频| 久久婷婷夜| 婷婷五月色惰| 特级操b片| 铁牛TV人妻| 国产激情在线| 夜夜资源站| 99激情在线| 午夜免费试看| 五月婷婷另类| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 丁香五月天激情小说| 丁香激情网| 一级A片天天操夜夜操| 五月婷婷在线网站| 久色中文| 婷婷丁香在线播放| 99精品小视频| 亚洲精品色| 99九九在线观看免费| 婷婷丁香花五月天| 99久久久久| 久久婷婷五月天| 精品一二三区久久AAA片| 亚洲色无码A片一区二区麻豆| 26UUU欧美| 99视频网址| 色综合久久天天综合网| 99热精品在这里| 91啪啪| A片试看120分钟做受图片| 大香蕉 婷婷| 六月婷婷最新网址| 婷婷色啪| 成人五月天色天堂| 五月天欧美激情| 色播五月婷婷| 亚洲综合婷婷| 刘玥av在线| 五月天丁香欧美激情| 天天射天天干天插色综合| 久久五月丁香婷婷| 五月色精品| 日韩人妻白浆视频系列| 五月婷天天搞视频| 天天操人人干| 伊人婷婷综合| 久久精彩视频| 五月刺激丁香月综合| 色五月大| 99re热精品视频国| VA婷婷亚洲| 婷婷五月天丁香社区| 五月婷婷综合视频| 99久99久| 爆乳熟妇一区二区三区爆乳照片| WWW色综合| 五月六月婷婷| 色欲久久综合| 麻豆123区| 久久9视频| 噜噜噜精品欧美成人在线观看| www五月| 日本三级大片| 欧美亚洲成人在线| 99ri在线观看视频| 欧美交换配乱吟粗大25P| 欧美一线视频| 思思热思在线精品视频| 亚洲天天| 久青草影院| 五月丁香五月丁香| 久久最新色| 青青草原亚洲天堂| m色激情网| 日本九九九九| 久久9情免费| 久久久人妻人伦| 涩婷婷五月天| 丁香五月性| 国产精品色婷婷久久久精品| 五月婷婷亚洲综合网| 五月婷婷,狠狠操| 1024亚洲无码| 激情五月婷婷丁香六月| 狠狠干夜夜干| 精品国产一区二区三区四区阿崩| 色综合久久99色| www.五月瑟| 五月天综合| 九九热自拍| 五月婷婷就去色| 婷婷五月色亚洲| 色色a| 91打屁股视频网站| 日韩在线五月天婷婷| 亚洲精品又粗又大又爽A片| 中文字幕九九九九| 操逼123网| 色屌丝中文字幕| 最近中文字幕2019视频1| 欧美丁香五月97色| 六月狠狠综合| 99操逼| 人人性久久| 婷婷五月激情视频在线| Aaa久久| 岛国资源网| 丁香九月婷| 色婷婷AV在线| 日韩色色视频| 色图亚洲91| 日日色五月天| 91欧美| 99免费综合网| 五月激情五月婷婷五月天在线| 久色大| 五月情涩综合婷婷| 五月婷婷狠狠干| 无码人妻AV久久久一区二区三区| 色色99| 99啪啪视频| 色综合香蕉| 怡红院一二三| 综合激情九月婷婷,激情综合婷婷中文字| 丁香香五月激情免费视频| 99综合免费视频| 丁香五月婷婷亚洲综合精品| 六月婷婷色综合| 丁香综合久久| 99视频只有精品| 色级婷婷| 噜噜色噜噜网| 激情丁香五月| 五月的色婷婷高潮| 色综合色色色色| 丁香五月先锋| 五月丁香大相交| 在线中文字幕视频| 人人爽天天莫| 99在线精品视频| 五月激激网w'w'w| 高清资源站日A美A欧亚…| 五月婷婷婷婷婷婷艺术| 啪啪啪丁香五月| 色五月综合在线| 综合色网站| 大香蕉520| 深情六月婷婷综合久久| 欧美成人一区二区三区在线视频| 婷婷五月激情片| 黄色高清无码| 色五月婷婷五月天| 综合激情婷婷| 高潮毛片又色又爽免费| 五月天 另类图片| 欧美操逼天堂| 99这里有精品| 亚洲人成色A777777在线观看| 激情玖玖综合网| 99这里有精品| www.五月婷婷久久.com| 丁香五月天激情| 久久这里只有精品网| 亚洲碰碰碰| 五月婷婷亚洲| 日本99热| 婷婷五月激情在线视频| 欧洲S级在线观看| 色偷偷五月天| 九月丁香五月婷婷| 久久婷丁香五月| 婷婷丁香在线| 九九99视频| 欧美久久婷婷| 最近中文字幕2019视频1| www.婷婷.com| 九九视频网| 九月婷婷综合色干| 综合色播| 婷婷五月天手机版视频| 精品女人九九九| 人与禽A片啪啪| 婷婷色综合av| 成人小说 五月天 婷婷| 97操| 激情综合五月天| 国产成人亚洲综合A∨婷婷| 五月激情丁香五月| 国产操逼网站| 激情综合婷婷| 夜夜爽天天爽| 五月天成人在线视频丁香| 97久人人| 婷婷五月天国产传媒| 亚洲成人网在线观看| 婷婷五月天亚洲丁香| 狠色综合网| 激情综合婷婷久久| 性av| 99精品久久| 婷婷六月丁香五月| 无码激情精品色婷婷久久久久| 婷婷九九| 久操大屁股女人av| 伦乱美欧| 亚洲婷婷激情综合激情999精品| 亚洲亚洲人成综合网络| 婷婷月综合| 综合激情啪啪| 天天综合五月| 日韩在线视频网站| 色五月,com| 夜夜撸天天操| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 99九九综合久久九九| 99热在线观看| 久久久激情| 色噜噜,噜噜色| 99久久偷拍视频| 高清一区二区三区日本久| 第四色激情网| www.日本91| 天天碰夜夜爽| 日本九九热| 精品网站99| 性五月激情| 91操在线观看| 色婷婷影视99| 亚洲六月综合激情久久下卡| 日韩成人网址| 婷婷激情图片| 激情视频网址| 91九色在线| 区美毛片子| 99只有精品| www.五月天婷婷| 色五月激情五月天| 久久丁香五月婷| 狠色色狠网| 五月天成人在线播放丁香| 天天拍久久| 99成人精品| 色五月婷婷视频| 五月天伊人日日噜影片AV| 五月丁香六月婷婷免费| 五月婷婷综合网在线播放| 婷婷放心五日爱| 99色区| 久久久久婷婷五月热综合| 综合五月天亚洲婷婷| 激情综合4月| 成人超碰AV| 婷婷丁香五月激情图片| 丁六月激情| 六月色五月天天婷婷| 五月天玖玖狠狠色色| 深爱激情av| 六月婷婷久久大全| 五月丁香五月综合欧美| 色99色| AV中文在线| 欧洲色色| 国产日产亚系列精品版优势| 九九婷婷热| 综合久久综合综合| www、丁香五月天| 五月婷精品| 深爱五月婷婷开心中文字幕| 五月亭亭六月激情| 这里只有精品9| 久久婷婷成人综合色怡春院| 66色在线日韩| 婷婷色五月激情| 色色五月婷婷| 99热10在线高清播放| 丁香六月天婷婷| 99男人的天堂| 99re6热在线精品视频播放速度 | 色五月婷婷、老熟女| 久久激情五月天| 成人综合视频在线| 久久精品性爱| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 色婷婷四色| 五月天大香蕉| 少妇口诉沐足视频播放器网址| 少妇人妻综合色6699| 婷婷内射视频在线| 丁香六月婷婷综合| 激情色色色| 丁香六月婷婷色XXXXX| 久久大香蕉同僚| 人人摸人人干| 综合 蜜月 婷婷| 婷婷五月天av| 天天操夜夜肏| 99热国产精品| 综合久久激情久久| 极品色丁香| 99综合婷婷五月| 天天澡天天狠天天天做| 99久热这里只有精品| 伊综合蕉| 欧美性二区| 精品久久66| 丁香五月五月婷婷| 免费观看高清无码| 精热在线综合网| 亚洲成人在线五月天| 99久久性爱| 狠狠综合久久综合| 亚洲视99| 五月丁香六月婷婷激情网| 国产毛片欧美毛片久久久| 99精品女人天堂| 五月综合激情图片| 超碰男人色| 99亚洲精品综合在线| 99综合| av狠狠操| 免费无码毛片一区二区A片| 欧美性猛交99久久久99| 婷婷日日天天| 99免费在线| 九月色婷婷综合| 亚洲综合色五月| 婷婷九月色| 丁香五月综合激情性爱| 亚州精品久久久久AV无码| 99网| 成人在线日韩欧美| 亚洲色vA| 亚洲中文字幕网| 99ri久久| 色综合色综合色综合色综合| 亚洲精品V天堂中文字幕| 五月丁香婷婷久久| 久久东京热婷婷五月| 热99这里只是精品| 5五月综合网亚洲| 99热在线中出| 天天做天天干天天综合网| 91一起操| 无码橾| 婷婷丁香五月在线播放| 一二线视频 另类| 五月丁香婷婷无码中文| 99在线资源| 操逼国产91| 婷婷五月激情在线视频| 偷拍丁香九月激情| 激情小说五月天中文字幕| 久久精彩视频| 五月天啪啪| 超碰在线精品| 1024成人在线观看| 99爱视频在线| 色婷婷激情视频| 国模淫穴色图| 久久五月婷天天干| 欧美婷| 亚洲宗合激情| 五月婷婷丁香六月在线| 在线看的免费网站| 婷婷五月天国产手机在线视频观看| 激情综合网五月天| 色色婷婷五月| 丁香六月婷婷色XXXXX| 99综合| 婷婷综合五月| 婷婷免费精品视频| 天天干天天干天天| 五月婷婷co.m| 两性婷婷丁香五月| 色天天综合|