亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

STM32開發(fā)新選擇:VSCode+CubeIDE+OpenOCD+STLink

STM32開發(fā)新選擇:VSCode+CubeIDE+OpenOCD+STLink 寫這篇東西之前先說個背景。前陣子幫朋友調(diào)一塊 STM32F103C8T6 的板子他習(xí)慣用 Keil但我手上只有 Linux 環(huán)境裝個 Keil 基本不現(xiàn)實于是順手把STM32 VSCode CubeIDE OpenOCD ST-Link這套組合又完整走了一遍。這一走不要緊才發(fā)現(xiàn)這幾年這套工具鏈已經(jīng)成熟到可以當主力開發(fā)環(huán)境用了尤其是對剛?cè)肟?STM32 的朋友來說與其糾結(jié)到底用 Keil 還是 CubeIDE不如直接把這條鏈路打通后面寫代碼、調(diào)試、看 Git 歷史都會舒服很多。這篇文章我不打算寫成那種“環(huán)境搭建教程”的流水賬而是把整套工具鏈的分工邏輯、配置文件的每個參數(shù)含義、以及我實際踩過的坑都攤開講。你能看懂為什么這么配也能照著這個思路適配到自己的板卡上。1. 工具鏈拆解為什么是 VSCode CubeIDE OpenOCD ST-Link 四件套很多新手看到這串名詞就直接勸退了覺得又是編輯器又是調(diào)試器繞來繞去干嘛不直接用現(xiàn)成的 CubeIDE 或者 Keil。這里我先解釋一下這套組合的底層邏輯清楚了之后你就知道這不是“炫技”而是用四個各有所長的工具拼出一條高效產(chǎn)線。1.1 四個工具各自扮演什么角色先說 CubeIDE。它本質(zhì)上是 ST 官方基于 Eclipse 二次開發(fā)的集成環(huán)境自帶代碼生成器、編譯器、調(diào)試器。很多人不知道的是CubeIDE 的代碼生成能力其實是獨立于 IDE 的核心叫 STM32CubeMX。你在圖形界面里勾選引腳、配置時鐘、選擇外設(shè)它就能生成初始化代碼。這個功能非常香尤其是時鐘樹配置手工寫 RCC 那一堆寄存器想想就頭大。但 CubeIDE 的短板也很明顯編輯器體驗相對落后對 Git 的支持并不如 VSCode 順手插件生態(tài)更是天差地別。所以我在實際項目中通常只把 CubeIDE 當“代碼生成器”用生成完代碼就扔到 VSCode 里做后續(xù)開發(fā)。再說 VSCode。它是個編輯器不是 IDE這個東西既是它的弱點也是優(yōu)勢。弱點在于它默認不會編譯、不會燒錄、不會調(diào)試需要靠配置文件把這些能力“借”過來。優(yōu)勢在于你想接哪個編譯器、哪個調(diào)試器、哪個構(gòu)建系統(tǒng)都行自由度極高。配合 C/C 插件、Cortex-Debug 插件、Git 插件寫代碼體驗直接拉滿——補全、跳轉(zhuǎn)、重命名、斷點調(diào)試一個不少。然后說 OpenOCD。這是個開源的片上調(diào)試器程序?qū)iT負責(zé)把 GDB 的調(diào)試指令翻譯成目標芯片能理解的 SWD/JTAG 信號。你可能要問ST-Link 不是也能調(diào)試嗎為什么不直接用 ST 官方的調(diào)試工具因為 OpenOCD 是通用的它支持 ST-Link、J-Link、CMSIS-DAP 等一堆調(diào)試器這意味著你今天用 ST-Link明天換成 DAP-Link調(diào)試配置幾乎不用動。而且 OpenOCD 報錯信息非常直白出問題的時候好排查。最后是 ST-Link。這是一塊硬件調(diào)試器常見的有獨立的小板子也有 Nucleo 開發(fā)板上的板載版本。它通過 SWD 四根線SWDIO、SWCLK、GND、3.3V連接目標芯片負責(zé)燒錄和讀取調(diào)試信息。沒有它電腦和芯片之間就相當于沒有“探針”O(jiān)penOCD 再能干也碰不到芯片。1.2 為什么這套組合適合替代 Keil說實話Keil 在 STM32 開發(fā)里依然有很龐大的用戶群很多教程都是基于 Keil 寫的比如你可能看過一些經(jīng)典入門視頻系列。但 Keil 有幾個讓我很不舒服的地方工程文件是.uvprojx改起來極其費勁別說進 Git 做代碼評審了兩個人協(xié)作一個工程文件就夠吵一架的編輯器對現(xiàn)代屏幕縮放支持一般代碼補全體驗也比較老派正版授權(quán)要錢雖然學(xué)生有社區(qū)版但出了校園做商業(yè)項目就得掂量而這套 VSCode 工具鏈是全開源的CubeMX 授權(quán)也免費OpenOCD 和 GCC 編譯器更不用說了零成本起步。另外 VSCode 的終端、任務(wù)系統(tǒng)、多根工作區(qū)面對 STM32 這種既要寫固件又要寫上位機、偶爾還要寫 Python 腳本的混合項目效率明顯更高。1.3 這套方案適合哪些人如果你想做基于 STM32 的畢設(shè)、課程設(shè)計或者跟著一些教程視頻做智能臺燈、條形碼識別這類項目但又不想被 IDE 綁定這套組合非常合適。如果你以后打算從事嵌入式 Linux 開發(fā)、機器人、芯片驗證相關(guān)工作提前熟悉編輯器 編譯器 調(diào)試器 探針這種解耦的思想也很有價值。反過來如果你只想要一個“打開就能編譯”的一體化工具懶得折騰那直接用 CubeIDE 或 Keil 沒毛病沒必要為了折騰而折騰。2. 環(huán)境搭建與工具鏈裝配實戰(zhàn)確定要折騰之后第一步就是把工具鏈湊齊。我按 Windows 和 Linux 兩個系統(tǒng)情況分別說因為這兩者在驅(qū)動和路徑配置上有差異踩坑點完全不同。2.1 需要準備哪些組件完整的環(huán)境至少需要這幾樣組件作用下載/安裝方式STM32CubeIDE代碼生成 ARM GCC 工具鏈ST 官網(wǎng)注冊下載安裝后自帶 CubeMX 和編譯器VSCode代碼編輯官網(wǎng)直接下載安裝OpenOCD調(diào)試橋梁Windows 用開箱即用的發(fā)布包Linux 用apt install openocdST-Link 驅(qū)動讓系統(tǒng)識別 ST-Link 硬件ST 官網(wǎng)的 ST-Link 驅(qū)動Windows 必須裝make構(gòu)建工具Windows 用mingw32-make或 GNU makeLinux 自帶或 apt 裝注意一個細節(jié)CubeIDE 雖然自帶編譯器但它的編譯器路徑藏得很深。Windows 下一般在C:\ST\STM32CubeIDE_xxx\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.xxx\tools\binLinux 類似。如果你不想每次都翻這個路徑也可以單獨裝一個arm-none-eabi-gcc并把它的 bin 目錄加進系統(tǒng) PATH。我個人推薦獨立裝一個因為后面用 OpenOCD 調(diào)試、用命令行構(gòu)造 Hex 文件都會頻繁用到。2.2 Windows 環(huán)境下的關(guān)鍵步驟Windows 上最容易出問題的環(huán)節(jié)是驅(qū)動和 PATH。我建議按這個順序操作先裝 ST 官方驅(qū)動如果你用的是板載 ST-Link插上 USB 后設(shè)備管理器里應(yīng)該能看到一個STM32 STLink設(shè)備如果出現(xiàn)黃色感嘆號說明驅(qū)動沒裝好。熱詞里那個virtual COM port 嘆號的問題多半就是驅(qū)動沒裝全下載 ST 官網(wǎng)的stsw-link009驅(qū)動包完整安裝即可。安裝 OpenOCD。Windows 下要下載別人打包好的發(fā)布版本解壓后把bin目錄加進 PATH。裝完后在命令行輸入openocd --version能打印版本號就算成功。安裝 make。我建議直接用mingw32-make然后把可執(zhí)行文件復(fù)制成make.exe或配置別名的辦法二選一不然很多教程里的make命令會提示找不到。這個細節(jié)我當年被坑過印象很深。2.3 Linux 環(huán)境下的關(guān)鍵步驟Linux 相對省心但如果用的是某些精簡發(fā)行版還是要注意幾個包的缺失。sudo apt install -y build-essential gdb-multiarch openocd sudo apt install -y arm-none-eabi-gcc arm-none-eabi-binutils arm-none-eabi-newlib這里有個坑gdb命令默認是 x86 架構(gòu)的調(diào)試器沒法調(diào)試 ARM 程序必須用gdb-multiarch。Cortex-Debug 插件在配置調(diào)試器路徑時應(yīng)該填gdb-multiarch而不是arm-none-eabi-gdb除非你確定裝了 ARM 版的 GDB。我第一次配置 launch.json 的時候順手填成了arm-none-eabi-gdb結(jié)果提示找不到命令排查半天才發(fā)現(xiàn)是路徑問題。ST-Link 在 Linux 下不需要額外裝驅(qū)動系統(tǒng)內(nèi)核自帶stlink的 USB 設(shè)備支持。插上后可以用lsusb看到類似STMicroelectronics ST-LINK/V2的設(shè)備能看見就說明硬件通了。2.4 快速驗證環(huán)境是否可用環(huán)境裝完別急著進 VSCode先在命令行跑一遍這條鏈路arm-none-eabi-gcc --version openocd --version make --version然后把手頭的 ST-Link 插上隨便拿一塊 STM32 板子用下面這個命令試試 OpenOCD 能不能連上芯片以 F103 為例openocd -f interface/stlink.cfg -f target/stm32f1x.cfg如果終端輸出類似Info : stm32f1x.cpu: hardware has 6 breakpoints, 4 watchpoints說明 OpenOCD 已經(jīng)和芯片建立了連接。如果彈出一段Error: open failed或者no stm32 target found!的提示先別慌后面第五節(jié)我會專門講這一類報錯的排查思路。3. 三個核心配置文件精講整套工具鏈能不能跑起來最終都落在 VSCode 工作區(qū)里的三個 JSON 文件上。理解了這三個文件的每個字段你就能靈活適配任意一款 STM32 芯片。我把它們拆開逐一講。3.1 編譯任務(wù)tasks.json 怎么配tasks.json 負責(zé)告訴 VSCode“如何編譯這個項目”。CubeMX 生成工程時如果選擇了Makefile作為工具鏈會自動幫我們把構(gòu)建規(guī)則寫好我們只需讓 VSCode 調(diào)用make命令即可。一個可用的最小配置長這樣{ version: 2.0.0, tasks: [ { label: build, type: shell, command: make, args: [-j4], group: { kind: build, isDefault: true }, problemMatcher: [ $gcc ] } ] }args里的-j4是并行編譯參數(shù)表示同時用 4 個線程編譯。如果你的電腦核心少可以改成-j2核心多可以改成-j8能明顯縮短編譯時間。problemMatcher的作用是讓 VSCode 自動解析 make 輸出的錯誤信息然后在“問題”面板里列出點擊錯誤能直接跳到對應(yīng)源碼行這個體驗十分順手。如果你不想每次手動點終端里的編譯按鈕也可以加一條CtrlShiftB的快捷鍵綁定或者給這個 task 配上runOptions: { runOn: folderOpen }打開文件夾就自動編譯。不過我不建議后者因為大項目編譯一次挺費時自動編譯會拖慢啟動速度。3.2 調(diào)試配置launch.json 深度解讀調(diào)試是這套工具鏈的重頭戲也是配置最細的地方。我用 Cortex-Debug 插件作為調(diào)試前端它是目前 VSCode 下調(diào)試 ARM 芯片最成熟的方案。先看完整示例{ version: 0.2.0, configurations: [ { name: OpenOCD STM32 Debug, cwd: ${workspaceFolder}, type: cortex-debug, request: launch, servertype: openocd, executable: ${workspaceFolder}/build/stm32_project.elf, device: STM32F103C8, configFiles: [ interface/stlink.cfg, target/stm32f1x.cfg ], svdFile: ${workspaceFolder}/STM32F103C8.svd, gdbPath: gdb-multiarch, runToMain: true, preLaunchTask: build, liveWatch: { enabled: true, samplesPerSecond: 4 } } ] }逐個字段說明executable指向編譯生成的 ELF 文件。注意一定是 ELF不能是 Hex 或 Bin因為 ELF 里包含了符號表、源碼路徑等調(diào)試信息GDB 靠這些信息才能把斷點映射到代碼行。servertype固定為openocd表示讓 Cortex-Debug 自己啟動 OpenOCD 作為 GDB Server。這也意味著你不需要手動在另一個終端里先跑 OpenOCD插件會一體管理。configFilesOpenOCD 的配置文件列表。第一行interface/stlink.cfg告訴 OpenOCD 用的是 ST-Link 調(diào)試器第二行target/stm32f1x.cfg指定目標芯片架構(gòu)。stm32f1x.cfg適用于整個 F1 系列如果你用的是 F4、F7、H7分別換stm32f4x.cfg、stm32f7x.cfg、stm32h7x.cfg即可。svdFileSVD 文件是 ARM 官方提供的“外設(shè)寄存器描述文件”有了它調(diào)試時可以在 Watch 窗口直接展開看某個外設(shè)的寄存器位域比如直接看USART1-SR的每一位含義。ST 官方或者芯片廠商一般都會提供也可以在 GitHub 上搜對應(yīng)的.svd文件。沒有也不影響斷點調(diào)試但有了之后調(diào)試體驗提升明顯。gdbPath指向上一步裝好的調(diào)試器路徑。runToMain設(shè)為true后啟動調(diào)試時會自動運行到main函數(shù)入口不用每次手動跳過啟動代碼的一堆匯編。這個選項我強烈建議打開。preLaunchTask每次點調(diào)試前先執(zhí)行編譯任務(wù)保證燒進芯片里的固件是最新的。liveWatch實時變量監(jiān)視。Cortex-Debug 擴展支持在調(diào)試時把某些變量實時刷新出來類似 MDK 的System Viewer。但要注意開得太頻繁會影響調(diào)試速度samplesPerSecond設(shè) 4 就夠了。3.3 代碼補全和語法檢查c_cpp_properties.json這一步很多人容易忽略但影響很大。沒有它VSCode 的 IntelliSense 會把寄存器地址、HAL 庫函數(shù)全都標紅補全功能基本癱瘓。一個支持 STM32F1 HAL 庫的配置示例{ configurations: [ { name: STM32, includePath: [ ${workspaceFolder}/**, ${workspaceFolder}/Core/Inc, ${workspaceFolder}/Drivers/STM32F1xx_HAL_Driver/Inc, ${workspaceFolder}/Drivers/CMSIS/Device/ST/STM32F1xx/Include, ${workspaceFolder}/Drivers/CMSIS/Include ], defines: [ USE_HAL_DRIVER, STM32F103xB ], compilerPath: /usr/bin/arm-none-eabi-gcc, cStandard: c11, intelliSenseMode: linux-gcc-arm } ], version: 4 }includePath的路徑取決于工程具體結(jié)構(gòu)但 CubeMX 生成的項目基本都遵循這個目錄模板。defines里的STM32F103xB是編譯宏它是芯片型號的一部分CMSIS和 HAL 庫會根據(jù)這個宏決定哪些外設(shè)的聲明和寄存器地址被編譯。如果宏填錯了明明你芯片是 F103C8補全里卻出現(xiàn)一堆 F103ZET 的引腳定義就有可能是宏不匹配。compilerPath告訴 IntelliSense 使用哪個編譯器的內(nèi)置宏這能讓補全和實際編譯時的判斷一致。Windows 下注意路徑分隔符要轉(zhuǎn)義。4. 從 CubeMX 到 VSCode 的完整流程配置文件的原理講明白了下面我從零開始用一顆 STM32F103C8T6 跑一個點燈 串口打印的例程把完整流程串一遍。你可以跟著走一遍跑通了再改自己的外設(shè)需求。4.1 在 CubeMX 里生成 Makefile 工程打開 STM32CubeIDE或者直接單獨打開 CubeMX新建項目選擇芯片型號 STM32F103C8Tx。進入圖形界面后在System Core - SYS選擇 Debug 為Serial Wire。這步非常關(guān)鍵如果選了No Debug芯片第一次燒錄后調(diào)試口可能被禁用OpenOCD 之后連不上只能用串口 ISP 擦除。新手的 “no stm32 target found” 報錯經(jīng)常就是這里埋下的雷。配置時鐘。F103 的 HSE 一般是 8MHz 外部晶振在Clock Configuration頁面里把 HCLK 調(diào)到 72MHz系統(tǒng)會自動算出各總線分頻值。點開PC13引腳設(shè)置為GPIO_Output這是經(jīng)典板載 LED 所在引腳。再點開PA9和PA10設(shè)置為USART1_TX和USART1_RX。在Connectivity - USART1里設(shè)置波特率115200、數(shù)據(jù)位 8、停止位 1、無校驗。最關(guān)鍵的一步在Project Manager - Project里把Toolchain / IDE選為Makefile。只有選了 Makefile生成出來的工程才自帶完整的 GNU make 構(gòu)建規(guī)則VSCode 這邊才可以直接調(diào) make 編譯。點GENERATE CODE生成到指定目錄。4.2 用 VSCode 打開并編譯生成完工程后用 VSCode 直接File - Open Folder打開該目錄。按前面配好的tasks.json按CtrlShiftB觸發(fā)編譯。第一次編譯如果遇到recipe for target ... failed報錯最可能的原因是 make 版本不兼容或者編譯器的路徑?jīng)]配置對??磮箦e信息里給出的具體文件路徑核對 CubeIDE 里工具鏈是否安裝完整。還有一個常見問題是 Windows 下?lián)Q行符 CRLF 混入 Makefile導(dǎo)致 make 語法解析失敗用 VSCode 右下角把Makefile、*.mk等文件的換行符改成LF就好。編譯成功后build目錄下會生成.elf、.hex、.bin文件??吹?elf文件出現(xiàn)說明工具鏈已經(jīng)通了。4.3 第一次調(diào)試燒錄與下斷點按F5鍵啟動調(diào)試。如果一切正常Cortex-Debug 會做三件事根據(jù)launch.json里的configFiles啟動 OpenOCD用 GDB 連接 OpenOCD 建立的調(diào)試通道加載固件到芯片然后根據(jù)runToMain自動跑到main函數(shù)。在main函數(shù)里的while(1)那一行下一個斷點讓程序全速跑一會兒然后再點暫停。只要能停在斷點處并且左邊的“變量”窗口里能看到像huart1、GPIOA這樣的結(jié)構(gòu)體變量說明這套調(diào)試鏈路已經(jīng)完全打通了。此時可以試試在Watch窗口輸入GPIOA-ODR單步運行幾行代碼觀察 ODR 寄存器在點燈前后的變化這是學(xué)習(xí)寄存器操作特別直觀的方式。4.4 串口重映射的小技巧熱詞里提到的“串口1重映射”其實在 CubeMX 里做非常方便但很多人找不到入口。以 F103 為例USART1的默認引腳是PA9/PA10但也可以通過重映射改成PB6/PB7。操作步驟是在 CubeMX 的Pinout Configuration頁面里先選中USART1模式為Asynchronous然后再去System Core - GPIO頁面把對應(yīng)的引腳功能手動改到PB6/PB7CubeMX 會自動追加GPIO_PinRemapConfig相關(guān)設(shè)置。如果你的應(yīng)用里PA9/PA10被 PWM 或者別的外設(shè)占用用重映射方式就非常靈活。有一點要特別注意重映射之后CubeMX 生成的主循環(huán)里通常不會自動打印引腳重映射信息但 HAL 庫初始化函數(shù)內(nèi)部已經(jīng)根據(jù)引腳定義做了Alternate Function設(shè)置。如果你在初始化代碼之外又手動去操作AFIO寄存器很容易和 HAL 庫產(chǎn)生沖突導(dǎo)致串口收發(fā)異常。我建議盡量在 CubeMX 的圖形界面里完成所有引腳分配生成代碼后不要去手工改GPIO_InitStruct引腳映射。5. 常見問題與排查技巧實錄這部分是我認為整篇最有價值的地方。熱詞里那一堆報錯比如error: no stm32 target found! if your product embeds debug authentication、flash timeout、寫保護問題、virtual COM port 嘆號我全都遇到過下面按問題分類給出排查思路和處理方法。5.1 最常見的 OpenOCD 報錯no stm32 target found這個報錯完整文本一般是Error: no stm32 target found! if your product embeds debug authentication, please perform a full power cycle我先說你看到這句英文時第一反應(yīng)該是什么OpenOCD 已經(jīng)識別到了 ST-Link 硬件但沒能和芯片自身建立調(diào)試連接。這個報錯幾乎和“程序?qū)戝e了”“引腳沖突”沒有關(guān)系它就是一個連接層面的問題。排查順序我建議嚴格按下面來檢查 SWD 四根線是否接對SWDIO、SWCLK、GND、3.3V。這四根線里最容易錯的是 SWCLK 和 SWDIO因為它們經(jīng)常被板子默認接到別的外設(shè)上比如某個按鍵或者某個傳感器。確認芯片供電是否正常。如果目標板是電池供電或者獨立電源ST-Link 的 3.3V 引腳雖然接了但不一定扛得住芯片的大電流負載。最好外接電源并且共地。檢查復(fù)位電路。某些板子的 NRST 引腳被外部電容拉低或者被人為接了按鍵可能導(dǎo)致芯片在調(diào)試連接階段不停復(fù)位。如果前幾步都正常試著把 OpenOCD 的 SWD 速度調(diào)低。在target/stm32f1x.cfg里或者命令行加參數(shù)-c adapter speed 100把速度從默認的 1000kHz 降到 100kHz很多接觸不良引起的偶發(fā)連不上問題就這樣解決了。前面說過 CubeMX 里如果 Debug 選了No Debug芯片可能關(guān)閉了調(diào)試接口。這時候 OpenOCD 連不上就需要先用 ST-Link UtilityWindows或者手動拉低 NRST 進入復(fù)位態(tài)連接把 Option Bytes 里的調(diào)試口重新打開。最省事的方案是使用 ST-Link Utility 的Target - Connect under reset功能連接成功后將 RDP 等級設(shè)為 0再全片擦除一次。5.2 寫保護與 Flash 異常的處理很多人在網(wǎng)上搜 “st-link utility 解決 寫保護問題” 和 “flash timeout” 這兩個關(guān)鍵詞其實是同一類情況。當芯片開啟了讀保護RDP level 1之后ST-Link 沒法正常擦除和寫入 FlashOpenOCD 在燒錄時就會報出類似Error: flash write failed或者target not halted的提示。一個有效的處理流程是打開 ST-Link Utility點擊Target - Connect如果沒有自動進入連接模式就按住目標板的復(fù)位鍵保持低電平再點連接。在Target - Option Bytes里看到Read Out Protection選項把級別從Level 1改成Level 0點擊Apply。執(zhí)行全片擦除Target - Erase Chip。斷開連接重新回到 VSCode 里用 OpenOCD 燒錄。這里順帶提醒一句OpenOCD 本身也支持一定程度的解除保護操作但不同芯片型號的處理方式不同沒有 ST 官方工具那么統(tǒng)一。所以對于“芯片進寫保護”這個問題我的建議是優(yōu)先用 ST-Link Utility 或 STM32CubeProgrammer這種圖形化工具操作最可靠不適合在命令行下折騰。5.3 ST-Link 虛擬串口出現(xiàn)感嘆號Windows 下如果設(shè)備管理器里STM32 Virtual COM Port前面有個黃色感嘆號通常是驅(qū)動沒有正確安裝。ST-Link 上集成的串口功能需要專門的驅(qū)動支持安裝stsw-link009驅(qū)動包后感嘆號一般就會消失。部分系統(tǒng)下可能還需要在設(shè)備管理器里右鍵手動“更新驅(qū)動程序”選擇STMicroelectronics對應(yīng)驅(qū)動。5.4 ST-Link 指定序列號多調(diào)試器場景熱詞里有“st-link怎樣指定序列號腳本燒錄”這個問題在做產(chǎn)線或者同時插多塊板子時會遇到。OpenOCD 支持通過序列號選擇特定的 ST-Link配置方法是在配置里加一行hla_serial 你的ST-Link序列號如果是命令行可以寫成openocd -f interface/stlink.cfg -c hla_serial 066FFF323233324750323456 -f target/stm32f1x.cfgST-Link 的序列號可以從ST-Link Utility - Help - About或者設(shè)備管理器里的 USB 設(shè)備詳細信息中查到。這種用法對自動化燒錄腳本非常友好可以寫一個 for 循環(huán)依次把固件燒錄到插在同一臺電腦上的多塊板子而不用每次都拔插 USB 區(qū)分。5.5 CAN 總線 Bus_Off 恢復(fù)熱詞里還有 stm32 cube busoff 恢復(fù)順手寫一下。如果在 STM32 上做 CAN 通信總線上出現(xiàn)嚴重錯誤會導(dǎo)致控制器進入Bus_Off狀態(tài)。HAL 庫里最常用的恢復(fù)手段是打開自動總線恢復(fù)Abort Automatic Bus-Off Recovery在CAN_InitTypeDef里把AutoBusOff使能hcan.Instance CAN1; hcan.Init.AutoBusOff ENABLE;如果需要在代碼里手動恢復(fù)可以在HAL_CAN_ErrorCallback中調(diào)用HAL_CAN_Start重新啟動 CAN或者干脆執(zhí)行HAL_CAN_DeInitHAL_CAN_Init讓控制器重新初始化。需要注意的是Bus_Off 狀態(tài)下 CAN 不能立即恢復(fù)正常通信必須等待總線空閑一段時間軟件只能主動復(fù)位控制器不能繞過去強制發(fā)幀。5.6 定時器捕獲測頻率熱詞里出現(xiàn)stm32定時器捕獲測頻率我就多講一句這套工具鏈在調(diào)試定時器捕獲時比 Keil 更方便因為在liveWatch里可以實時看到捕獲寄存器的值變化。用 TIM 輸入捕獲測頻率的核心邏輯是開啟上升沿捕獲記錄兩次捕獲的計數(shù)值差然后用定時器時鐘頻率除以計數(shù)值差得到信號頻率。在調(diào)試時注意看TIMx-CCR1的值是否在更新如果一直不動優(yōu)先檢查輸入引腳是否有信號、濾波器和極性是否配置正確。6. 這套環(huán)境后續(xù)還能怎么擴展最后再分享兩個我實際使用中的體會。第一VSCode 下的插件生態(tài)是可以繼續(xù)往上疊的?,F(xiàn)在熱門的一些 AI 輔助編程插件也能直接用在嵌入式代碼上寫 HAL 庫初始化、寫結(jié)構(gòu)體定義的時候非常省力。我自己現(xiàn)在的習(xí)慣是CubeMX 管外設(shè)初始化AI 插件管讓我少打字GDB 管讓我少燒腦VSCode 管讓我看著舒服。這一套組合下來做一個小型畢業(yè)設(shè)計級別的項目效率比單純用 Keil 高出不少。第二這套配置不僅適配 STM32F1。你把target/stm32f1x.cfg替換成stm32f4x.cfg、stm32h7x.cfg把defines和 SVD 文件換掉同一個工作區(qū)就能開發(fā)另一顆芯片。遷移成本幾乎為零這也是把工具鏈拆開帶來的最大紅利。如果你第一次配不完全順利別急。OpenOCD 的報錯雖然看起來嚇人但它每個報錯都對應(yīng)一個明確的物理原因照著上面的思路逐條排查大部分問題都能在十分鐘內(nèi)解決。等這套環(huán)境真正跑通之后你會覺得以前被 IDE 牽著走的日子實在有點虧。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
97色欧州| 色色色日本| 蜜臀久久在线视频| 三级片大波波| 午夜影美女日鸡鸡天天视频国产| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 9久精品| 超碰久久.com| 日本一区二区三区精品| 精品人人插人人操| 偷窥自拍A片| 婷婷色色五月天福利| 亚洲AV色图一区| 91色综| 欧美人妻一区| 乱伦日本中文自拍| 天天影视色香欲综合网小说| 无码高清操逼| 日本成a人v网站在线观看| 视频黄站| 天天影视综合色| 色眯眯射| 人妻在线臀日韩| 熟妇在线视频一区二区| 国产AV超爽| 亚洲国产av中文字幕久久 | 2020中文字幕在线观看| 超碰97.com| 成人天天看站长推荐| 亚洲的天堂网| 国产精品人妻免费精品| 狠狠操狠狠插| rion磁力链接| 69精品少妇一区二区三区蜜桃| 91精品电影18| 日韩成人大片在线观看| 蜜臀久久99精品久久综合| 日韩精品资源| 日本免费不卡二区| 亚洲天堂一区二区久久| 久久精品中文字幕女同| 亚洲天堂中文字幕无码男同| 91亚洲网| 国产欧美后入| 日韩影片中文字幕一区二区三区| 秋霞久久亚洲精品成人| 五月天九九日国产精品一区二区三区| 黄页视频网站野外| 综合网 欧美| 婷婷月色| 大伊香蕉在线视频免费| 国产精品精品系列在线观看| 东北女人操比视频| 国产91影院| 色五月激情AV在线| 啊啊啊好舒服好爽啊啊啊视频| 国产精品人妻免费精品| 欧美—性—交—色| 蜜桃精品视频一区二区三区| 久久国产99精品72福利| 在线人人人人人人精品超 | 天天爱天天韩国日本牛牛牛牛| 久久久精品网站| 在线小视频| 精品人妻1237| 久久超碰、| 国产无码一二三区| xxx0国产在线播放| 天天激情干| 国产精品96| 色香网| 东京热熟女亚洲视频网站| 啊啊啊啊啊好舒服视频| 久久曰曰| 老熟妇一区二区三区啪啪| 国产欧美日韩女同性恋ww喷水精品 | 91在线视频免费中出| 五月天啪啪| 亚洲日韩AV视色| 国产精品永久免费10000| 精品大全99999| 天天综合亚在线| 日本网色| AND人妻系列| 日日橹狠狠爱欧美超碰| 99re在线视频国产| 欧美激情内射| 香蕉视频欧美一卡二卡| 日本性爱欧美性爱| a天堂视频| 日逼国产| 日本不卡码黄色| 亚洲国产日韩欧美熟妇在线| 婷婷丁香六月天| 人妻碰碰碰碰碰碰| 狠狠夜色午夜久久综合在线| 欧美亚洲涩涩| 97综合在线| 国产家庭乱伦表演| 天堂种子在线www网资源| 婷婷午夜| 久久99精品国产| 干B| 中文不卡视频| 国产日韩区| 亚洲性爱无码乱伦av| 看看小穴| 日韩综合第八区国产精品| 999999精品| 美中日韩无码| 1区2区3区中文字幕日韩| 好屌色综合| 欧美91变态| 伊人成人中文字幕久久网| 欧美狠狠弄| 日韩内| 男人天堂久久精品| 在线小视频| 欧美色图 人妻| 老熟女乱伦一区| 亚洲av综合色区无码一| 青青草黑寡妇男人天堂| 97久久精品| 丁香激情五月天| 狠狠躁久久躁| 日日夜夜干| 国产日韩怡红院| 亚洲精品视频在线| 欧美啪啪天堂| 亚洲无码免费看| 人妻少妇色综合| 免费A V在线播放| 九九人妻| 四虎AV无码| 蜜臀久久99精品久久久久久酒店| 久操九九九九| www.99中文字幕| 日本不卡三级网在线播放| 丝袜综合| 爱我干综合| 青青青在线高清视频在线一二三四区| 五月丁香激情综合网| 超碰一区二区| 久久98| 大香蕉日韩| 97亚洲一区| 欧美偷拍区| 国产suv精品一区二六| 国内自拍 日韩激情 99| 91亚洲综合在线| 60秒免费小视频| 丝袜熟女一区二区三区| 欧美色图20p| 美女裸体麻豆天美蜜桃91| 蜜乳AV一区| 日韩欧美蜜桃精品久久中文字幕久久| 亚洲国产精品乱码在线观看| 黄色免费网页无码| 手机午夜电影神马久久| 亚洲欧美在线丝袜| 精品人妻15区| 看黑人AV不卡| 婷婷五月影院| 欧美人妻精品一区二区| 国产精品视频内谢女人| 婷婷亚洲五月***久久| 97色碰| 99re在线视频国产| 成人黄页| 亚洲中文sv| 人妻内射一区二区在线视频| 江都AV在线| 色999;丁香五月| 欧美强奸乱能| 国产高清无码一区二区三区四区皇冠| 综合av社区| 国产9区| 亚洲欧美伦综合| 91视频综合在线| 成人资源中文字幕在线观看天天| 男女打扑克高清网站| 久草男人天堂| 九九九不卡| 少妇高潮九九九九| 色乱二区| 亚洲色天堂日韩中| 丝袜综合色图| 嗯嗯啊好大| 午夜呻吟欧美| 亚洲熟妇白浆无码AV| 91 亚欧| 97Ai亚洲| 欧美综合中文| 免费试看60秒| 亚欧国产无码精品在线| 精品久久視頻在线| 人妻内射一区二区在线视频| 97在线播放| 1000部熟女视频在线观看| 在线毛片片免费观看| 在线观看亚洲专区| 骚货| 91色图片| 91美女小视频| 中文字幕 人妻不满 在线视频| 97超碰碰碰| 91国产美女丝袜足交精品视频| 日日躁天天躁狠狠躁| 天天视频网站黄| 成人精品一区二区91毛片不卡| 大奶啊啊好爽 | 国产精品久久久久久久久久二区三区| 亚洲高清欧美总合| 亚洲精品成人激情在线| 色男人色天堂东京热| 中文字幕一区二区三区人妻不卡 | 自拍偷拍2025在线观看| 国产精品乱码久久久久久| 男人的天堂1024| 国产精品免费视频人成| 人妻爽爽啪视频| 97无码视频在线播放| 日本三级中国三级99人妇网站| 国产AV激情无码久久无码| 久九九九九九九热| 99精品久久| 日韩不卡码| 午夜无码熟妇丰满人妻| 9热9热综合网| 97干在线| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 青娱乐91| 久久久一区二区三区四区五区| 另类专区加勒比| 啊啊啊啊啊啊啊啊啊啊在线观看| 啊啊啊不要啊啊受不了了视频在线 | 亚州性色| 中国AAAAAA黄色片| 香蕉久久AⅤ...| 成人八戒网站| 精品视频日日夜夜| 精品中文日韩字幕视频| 热热色AV| 天天草天天日| 久久一区二区三区入口| 久久久久久久人妻| 亚洲18禁| 麻豆a'v电影| 国产精品视频在线观看| 无码免费在线观看黄色片| 欧美aaaaaaa| 密臀在线免费观看| 国产精品视频在线播放| 中文字幕欧美日本乱码一线二线| 欧美91变态| 囯戸精品高潮呻吟旡码| 性爱乱伦网址| 色情亚洲日本成人| 中精品一区二区三区| 91网站18| 91精品啪在线观看国产城中村| www.91色| 9997se| 国产精品久久久 | 老熟妇91| 久久精品毛片免费不卡| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 妺妺跟我一起洗澡没忍住| 高清无码人妻久久久一区二区三区aⅴ| 欧美第一页性| 国产亚洲精品精AV.| 欧美色图亚洲色,麻豆| 欧美中文字幕一区 | 国产97色在线| 性色高清在线| 图片区小说区| 亚洲啪AⅤ永久无码| 蜜臀av网址| 超碰97起碰| 久久精品国产97欧美精品亚洲| 精品久久視頻在线| 又黄又爽在线观看视频 | AA丁香综合激情| 国产偷拍自拍在线视频| 日韩在线人妻网站| 国产精品天堂| 男人的天堂啪啪| 国产高清26uuu| 91综合国产精品| HEYZO高无码国产精品227| 大象AV在线| 91精品人妻电影| 人妻夜夜爽天天爽麻豆三区网站| 日本亚欧爱爱| 操我啊啊啊啊啊| 久 久无码人妻AV| 插欧洲美女欧美精品| 亚洲另类久操网| 91久热| 亚洲无码久久久久久久| 日本熟妇自慰性高潮一区二区三区| 操国产逼| 艳尻美人妻| 国产一级内射高清视频| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 亚洲中文字幕熟女| 美女露胸露奶头| 高清无码人妻久久久一区二区三区aⅴ| 亚洲成a人在线观看久| 日韩欧美偷拍美女视频| 人人操人人干网页| 亚洲色丰满少妇高潮| 国产JDAV无码视频在线观看| 97久精品| 三级AV入口| 欧美少妇性乱| 精品国产人成在线| 亚洲情色 自拍| 国产精品久久久久av| 欧美激情精品久久久| 国产探花精品在线| 欧美91网| 91精品电影18| 91天堂| 精品久久久久9999| 无码高清操逼网址| 都市激情人妻一区二区青青操视频 | 欧美日韩国产成人高清| 大香蕉久| 福利在线黄片| 97色在线观看| AV中文字幕三四五| 国产精品永久免费10000| 欧美色性爱| 能直接看AV的网站| 熟妇人妻精品一区二区| 天天享受天天看| 日韩福利综合一区| 91精品国产日韩欧美综合| 色偷偷色偷偷欧美日韩| 小情侣高清国产在线视频| 91精品久久久久久久久久| 性开放中文AV高清无码免费看| 欧美在线干| 午夜无码熟妇丰满人妻| 婷婷五月天网| {男男暴菊gay无套网站| 久伊人网78| 富二代亚洲精品99| 成人黑料社久久| 日韩免费福利在线观看| 中文一区二区| 久操热| 日日夜夜精品| 高清孕妇孕交 交| 五月天伊人| 久99热| av最新免费中文字幕| 美女丝袜激情小说| 精品久久久久黄少妇| 日韩国产乱子伦App| 不卡在线观看视频| 秋霞福利网| 理论久久婷婷网 8| 国产亚洲精品自在线亚洲情侣| 久9久9久9久9久9久9| 欧美超碰96| 在线 制服丝袜中出 人妻| 一本大道不卡一二三区| 97网色| 欧日韩一二三f区| 亚洲欧洲无码97久久精品| 九月婷婷| 日韩欧美字幕亚洲一区二区| 亚洲国产尤物yw在线观看| 少妇无码999| 久久久久骚| 天天色综合图片| 欧美亚洲色图另类国产| 思思热在线视频免费| 91色欧美| 我爱操| 九九九久| 青青草综合在线| 欧美性爱一区| 91超级碰碰| 国产成人精品亚洲日本| 91精品啪在线观看国产城中村| 97碰久久| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 色爱三区| 另类小色呦| 亚州操逼图| 亚洲,日韩,欧美,成人播放| 欧美亚洲| 97欧美资源| 日日日日做夜夜夜夜做无码97| 性色乱AV一区二区| 亚洲男人的天堂AV| 9久精品视频在线观看| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 久久午夜鲁丝片| 国产精品久久久久无码Av网曝门| 少妇被c 黄 免费观看| 狠狠色婷婷7777久| 五月婷婷影院| 9 9精品一区二区三区| 干超碰碰熟女| 久久99九九九九6666免费观看软件| 九九九精品美女| 婷婷去俺也去六月色| 强奸抽插av| 97在线免费观看| 91性高潮久久久久久久久| AV一起草在线| 日本人妻伦在线中文字幕| J?P?NESEHD熟女熟妇伦| 久久久久久久强迫| 天天干18禁| 久久久9视频| 中文久久一区| 中文字幕在线播放2中文字幕在线观看2 | 久久午夜色播影院免费高清| 国产真实野战在线视频| 超碰吊日色| 国产精品久久久久久久久久久久| 久久精品国产亚洲5555| 欧亚性爱在线视频| 人人操AV| 西西美女视频网| 色综合1991| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 一区,二区,三区视频| 超碰在线97国产| 97久久超碰亚洲| 一区AV| 国产亚洲日本精品在线| 久久极品一区二区| 久久人体一区二区| 飘花国产午夜精品不卡| 凹凸视频特色日本特黄| 一区二区三区日韩欧美| 4tube欧美女厕所| 亚洲欧洲自拍图片专区满春格| 日韩成人精品视频自拍| 一牛影视久久久一区二区三区| 亚欧中文字幕在线视频| 欧美人体性爱互联网第一页婷婷日本| 久久人人舔人人爽舔人人av片| 久久久中文| 日韩黄色小说| 中文字幕日韩精品久久| 1区2区3区在线视频| 啊啊啊不要嗯嗯在线观看| 亚洲一二三四区在线免费看视频| 国产福利电影| 天天综合,91综合永久| 福利五区| 久草福利在线资源站| 婷婷色香| 午夜a成v人电影| 老鸭窝亚洲毛片| 欧美一区二区三区四区综合| 精品一区二区啪啪啪| 亚洲麻豆18发?| 老熟妇一区二区三区…| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 久久精品视| 1769成人国产精品视频| 中亚av| 久久精品视频久久久| 9Ⅰ老熟女| 99在线免费视频| 国产精品在线免费| 亚洲午夜免费狠狠干| 精品美女久久一二三| 亚洲,日韩,欧美,成人播放| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 在线看的av| 99热这里只有精| 麻豆精品一区二区三区四区免费观看| 国产精品不卡一区二区三区av| 亚洲情色电影网| 天天综合官网| 欧美黄色片AAAAA| 日产国产精品中文久久婷婷| 伊人国产AV| 清纯唯美亚洲综合| 日韩精品午夜操呦呦不卡影院| 亚洲激情在线一区二区| 天天久久久久久| 日本女人操逼| 色爱天堂| 欧美狠狠操| 日韩欧美午夜一区二区| 国产精品久久久久久久久久久久久久久久久久 | 91中出视频| 98一区二区精品| 亚洲色图图片| 欧美白嫩在线放| www.伪伪| 动漫片子网站3黄| 亚洲天天做日日做天天谢日日| 欧美A√综合网| 亚洲AV无码黄色强奸| 日本幼女18+| 欧美 中文字幕 一区| 在线播放成人高清免费视频| 99热日| 日韩黄色成人性爱| 12一15性XXXX粉嫩国产| 天天色怡春院| 偷拍自拍在线视频观看| 久久久精选| 北条麻妃99精品青青久久| 日韩综合无码色欲vv| 伊人四虎综合| 久久国色天香香蕉| 日韩av不卡在线观看| 黄页av| 久久精品视| 97超碰69| 欧美劲爆视频一区二区| 97色碰| 一卡二卡在线播放| 人人澡综合涩| 狠狠狠狠狠| 老司机福利青青草| 日本 情色 1区2区3区| 人妻久热在线| 丁香婷婷激情五月天无毒不卡| 岛国小电影| 天天日日夜夜| 日本九九久久99播| 日本好吊色视频| 亚洲一二三四区在线免费看视频| 96麻豆精品一区二区三区| 特污精品女优骚货黄色视频在线免费观看| 密臀成人视频久久久| 国产 亚洲 丝袜 制服| 麻豆一区二区三区在线看 | 2020视频1区2区3区| 婷婷六月色| 国产高清无码一区三区二区| 久久久久久久97| 精品久久9| 91丝袜美腿网站| 亚洲 一区二区 自拍| 加勒比综合网| 制服丝袜第二页| 黄片在线免费在线观看| 一区二区三区视频国产免费| 美女十八禁| 激情四射婷婷六月天| 亚洲蜜臀懂色| 精品少妇一区二区三区免费观看| 青草青草久热| 国产精品一区二区三区,亚洲综合 性开放中文AV高清无码免费看 | 伊人网一本| 亚洲情色一区二区三区| 超碰性爱97| 亚洲激情综合| 九九热最新| 国产农村一一级特黄毛片| 久操大香蕉| surenchaopeng| 97综合在线观看| 97亚洲综合电影| 不卡超碰护士AV在线免费播放| 激情视屏国产乱伦强奸| 在线免费观看日韩一区| 熟女这里只有精品6| 国产精品高清2021在线| 东京热男人的天堂| 国产精品久久久久久久AV大片| 日日爱99| 女人综合网| 亚洲国产丝袜熟女av| 任你干在线视频| 熟妇人妻一区二区 | 国产一区二区在线播放| 超碰78| 欧美成人性爱视频在线播放| 国产精品久久久啊| 久久天堂| 激情天天视频| 综合欧美日韩在线观看| 亚洲欧美国产中文视频| 在线人人人人人人精品超| 久久久久久国产精品免费网站| hd成人一区二区在线| 98色网| 五月婷婷深深爱| 操b网站亚洲无码| 级品肉射| 久久伊人亚洲AV无码网站| 日本人人操人人操| 亚洲中文字幕乱码无码一区二区 | 麻豆影音天美视频| 国产老太乱伦一区| 亚洲AV无码乱码在线观看性色| 婷婷五月丁香五月| 麻豆黄色五月天| 啊啊啊久久久视频| 精品午夜福利| 黄色免费网页无码| 久久久禁| 无套内射人妻在线播放| 欧美制服网站美腿丝袜| 97操B| 久久婷婷热| 黄色网址久久精品欧美喷水| 小电影欧美91| 亚洲精品尤物yw在线影院| 欧美亚洲丝袜美女电影| 91久久国产精品| 狼狼色丁香久久婷婷综合五月| 99热综合在线| 加勒比综合在线| 亚洲精品一区二区三区在线播放 | 东京热熟女亚洲视频网站| 中文字幕丰满人妻日本| 玖玖综合色| 秋霞一级鲁丝片A片| 人妻嗯啊啊在线播放| 亚洲欧美综合图片| 大香樵伊人网| 欧美性爱精品七区| 91久久国产综合精品| a男人的天堂久久一级A毛片| 嗯啊免费视频| 中日韩久久久| 老鸭窝成人| 欧美性爱精品一区二区| 性欧美999| 国产av尤物| 人人操 欧美| 蜜臀va69| 户外裸露刺激视频第一区| 欧美日韩人妻精品系列一区二区三区| 亚洲激情网一二三四区| 丁香色狠狠色综合久久小说| 国产精品久久久久久久免牛肉蒲团| 试看60秒 爽| 东北女人av| 亚洲av影院在线观看| 嗯嗯不要视频| 東南亚性呦成人伦理资源在线视频| 亚洲91在线播放影院| 日韩欧美资源| 啊啊啊不要好疼视频| 黄片免费看的| 一区二区不卡免费| 神马久久久久久久久久久久| 五月丁香啪啪啪| 亚洲天堂人妻熟妇视频| 丰满人妻一区二区三区四区| 国产一区二区三区,在线观看观看| 91精品久久久久久综合五月天| 亚洲图片色图欧美另类| 亚洲丝袜诱惑| 麻豆天美传媒毛片| 91在线丝袜| 91久久午夜无码鲁丝片久久人妻| 91操人| 免费自拍三级综合| 欧美性爽xyxOOOO| 又粗又长又大国产不卡| 国产老女人久久毛| 久久只有精品| 男人女人18禁片免费看网站| 国内毛片四区| 日韩久射综合| 99精品人妻| 精品亚洲成人免费在线| 一区二区三区黄色片a| 神马久久久久久伦理片| 无遮挡一级毛片视频免费的| 久久国产免费激情视频| 高潮的A片激情扒开一区| 91久久九九精品国产综合| 日本韩国国产精品一区| .精品人妻一区二区三| 成人毛片免费| 岛国黄| 亚洲av综合伊人久久| 国产不卡免费在线视频| 老司机天天操| 六月丁香啪啪| 97精品综合久久网| 国产精品第一页国产大屁股视频免费区i| 中文字幕文字幕无码一区二区三区电影99| 97人人爱人人做人人乐| 成人片视频| 久久午夜神马| 亚洲AV无线| 蜜臀久久久国产| 大香蕉2017| 日韩黄片影院| 欧美综合骚| 日本一线产区和二线产区伦理片| 9国产超碰| 日本久久精品| 国产精品久久久亚洲第一牛牛_在线观看 | 国产aⅴ无码片毛片一级网站| 国产亚洲精品自在线亚洲情侣| 亚洲成?V人片在线观看福利| 91伊人久久在线| 欧美亚洲色图另类国产| 中文字幕在线观看AV| 欧美狠狠| 少妇高潮99p| 欧美性暴力| 日韩AV熟女乱伦| 97色97好| 超碰免费人妻在线| 思思99热| 欧美日韩色综合网| 少妇500双飞99| 懂色av色欲av蜜臀av| 4141514逼喷水三级片| 另类图片天天影视| 色色色五月婷婷| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 91天天综合日韩欧美| 亚洲av无码成人精品国产| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 日本人妻中文字幕| 欧美精品偷拍| 一区二区三区探花在线观看| 日本天天干天天日一区| 黄片aaaaa一区| 97超碰影音| 婷婷五月天成人网| 男人天堂欧美| 日韩精品9999| 无遮挡h肉动漫在线观看| 亚州,欧美在线| 91N欧美| 亚洲欧美天| 国产精品久久久久久照片| 97精品国产97久久久久久免费| 日韩综合无码一区久久92| 欧美久久婷| 亚洲欧美精品福利在线| 黄色片一区二区三区四区五区| 蜜乳av一区二区三区四区不卡| 欧美一级黄片免费播放| 日韩性爱免费观看视频| 日韩三级性| 亚洲激情网一二三四区| 午夜120视频在线观看| 嗯嗯啊啊视频一区二区三区| 国产精品人人爽人人做可爱福利| 亚洲激情深爱文学小说网站| 黑操B| 99综合视频一体| 中文字幕交换人妻| 97人人夜夜精品视频| 色爱天堂| 亚洲欧美变态| 欧美丝袜91| 1区2区3区中文字幕日韩| 中文字幕在线观看第二页| 偷拍欧美激情| 国产无马av| 天美麻花大全视频| 欧美亚洲日本激情在线| 手机看片1025| 国产97在线视频| 91亚洲综合在线| 欧美另类丝袜熟女| 9久在线视频只有精品| 男人久久天堂| 日韩99神马视频片| 欧亚久久偷拍视频| 九九九久久久久| 夜夜騷av、一區二區| 澳门成人网站久国产日韩| 亚洲限制级在线| 精品国产一区二区三区久久久蜜臀 | 国产精品内射婷婷一级二| 91劲爆| a级免费在线观看| 福利视频一区二区微拍| 欧美性爱伊人| 精品国产一区二区久久| 熟妇亚洲一区二区三区| 九九热五区| 无码视频一区二区| 91激情网| 久操电影| 亚洲精品啪视频| 精品妇女一区二区三区| 亚洲宗合网| 九九这里只有精品| com 首页 18岁 禁区 女优 免费 精选 同城 | 最新日本中文字幕| 91free福利| 日韩国语字幕| 欧美丰满熟妇XXXX性ppX人交| 99青草| 日日碰视频网| 乱操乱伦AV| 好淫网一二三视区| 九九九网站| 97亚洲在线| 91精品91久久久久77777俄罗斯老妇姓x| 丰满人妻一区二区三区性色| 色婷婷99| 国产97av| 人人干人人操人人..com| 97超碰碰碰| 精品176精品2| 偷拍 亚洲 欧美| 91精品久久久久五月天精品| 日本熟女中文字幕一区| 国产激情综合| 干美女人妻| 亚洲最大成人a毛毛片| 操淫穴亚洲五月丁香 | 久久久久久久久久久久久久久性生活视频| 亚洲性少妇| 日韩性爱电影一区| 久9久9久9久9久9久9 | 18禁的网站在线| 亚洲偷91色| 99久久网站| 97综合国产| 九九久久99| 一级aaaaa欧美中文字幕录像片| 欧美少妇色综合| 风流老熟女一区二区三区l| 自拍亚洲综合| 99亚洲天堂| www.久久制服糖| 国产又长又大又粗的视频| 人妻一二三区| 91制服丝袜| 欧美 日韩 另类 亚洲| 国产亚洲日本精品在线| 亚洲AV无码乱码| 五月天黄色激情视频| 大JI巴好深好爽又大又粗视频| 91色黑人少妇| 超碰av人人人| 中文字幕一区二区韩| 亚洲欧美日韩中文播放| 69丨亚洲丨精品丨入口免费播放| 久无码| 国产伦精品一区二区三区在线观 | 久久久人妻| av网页一区二区三区| 激情五月天中文字幕色| 动漫av中文| 黄总AV色图| 91精品国产综合久久久蜜臀| 免费国产电影一区二区| 1024精品在线| 国产亚洲日本| 桃色五月天| 人妻少妇一区二区| 欧美日产国产在线成人第一区| 中文字幕一区二区视频在线观看| 一级黄碟在线观看| 久久婷婷综合国际产色怕| 日韩欧美大力操| 免费人成在线观看网站品爱网| 久久精品| 国产免费内射视频| 777超碰| 国产在线播放成人免费| 午夜国产综合视频在线观看| 综合网欧美| 97在线观看免费| 美女91网址| 欧美性色欧美| 欧美综合另类| 91站街按摩店老熟女熟女| 熟女一区二区| 日本中文字幕一区| 啊啊啊啊好疼| 婷婷激情丁香| 超碰精品日韩欧美国产| 日韩字幕一区| 激情专区综合| 簧片免费看视频| 熟女六十路| av在线浏览| 亚洲精品九九九九九九| 色97干| 97免费视频在线| 在线国产福利网址导航| 婷婷丁香成人| 99色综合| 麻豆天美传媒在线视频天堂| 欧美日韩丝袜| 97av,com| 高清国产性猛交xxxx乱大交| 三级片网站在线播放| 欧美日韩人人精品| 亚洲精品美女操逼| 91狠狠狠| 免费av大片| 亚洲凸凹超碰成人| 国产偷拍网站| 日韩三级一区| 精品丰满熟妇人妻一区| 欧美色图91| 伊人网av| 熟妇人妻精品一区二区| 丝袜剧情| 欧美日韩中国x| 先锋激情∨在线视频播放| 丁香五月影院| 国产黄片在线免费观看| 精品丰满熟妇人妻一区| 日韩少妇无码| 97综合在线观看| 99热一区二区三区四区| 天天视频网站黄| 婷婷色色网| 在线洲亚线| 国产成人www免费人成看片| 欧洲中文字幕| 91色人妻| 欧美少妇性乱| 国产无码高清操逼视频| 乱老熟女一区二区三区| 无码精品久久| 欧美亚洲高清晰 | 日韩欧美丝袜诱惑| 中文字幕日韩专区精品系列| 蜜臀亚洲中文| 无码人妻一区二区三区色欲aⅴ| 国产农村妇女精品一| 欧美一区二区三区四区综合| 久久思思热| 国产伦精品一区二区三区在线观 | 人妻丝袜肏逼| 日本五十路熟女一区二区| 花野真衣| 在线观看精品国产免费| 亚洲人天堂| 久久999久| 有码人妻系列| 综合欧美日本三级| 国产剧情在线| 风骚少妇视频中文字幕| 亚洲黄色网址视频| 亚州欧美色图| 中文熟女五十乱码在线| 青青草在线成人视频| 黄色av网站在线播放| 97中文综合| 丁香六月综合激情| 最新中文字幕精品在线| 五十路三区在线| 天天情欲宗合网| 天堂日本亚洲欧美| 激情五月综合网| 97爱综合| 亚洲小说视频| 国产久9| 都市激情人妻一区二区青青操视频| 久久超碰爱| 日韩精品 资源| 大香蕉520| www.超碰在线| 激情久久av一区av二区av| 秋霞蝌科网日本一区| 亚洲精品白浆高清久久久久久| 日本久久久精品电影| 蜜桃视频一区二区三区在线观看| 婷婷午夜| 天天添天天干电影| 韩国一级做A片免费的| 日韩精品在线观看观看| 国产 日韩,欧美 自拍| 91人妻在线视频| 91久| 亚洲日韩久久精品一区| 观看视频图片一区二区三区| 国产女人高潮视频| 亚洲欧洲视频小说在线观看| 国精品一区二区三| 小骚逼被操的爽不爽| 久久一区无码| 色婷婷综合网站| 美女诱惑1区2区| 男人的天堂2019AV| 91精品国产高清久久久久久,亚洲成人| 亚洲精品中文字幕一区在线视频| 无码区蜜乳| 国产精品探花在线| 天堂种子在线www网资源| 手机在线中文字幕国产| 国产激情在线| 青苹果影院男人的天堂| 亚洲国产丝袜在线观看| 97ai亚洲| 亚洲不卡三级手机播放| 亚洲 自拍偷拍 欧美| 天天做天天爽| 国产欧美伊人| 国产91专区| 999国产精品999久久久久久| 国产精品96| 无码137片内射在线影院| 亚洲无码免费看| 蜜色网色哟哟| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 爱av免费| 久久久精品视频欧州站| 中国AV美女| 久久极品一区二区| 偷窥自拍亚洲| 美国aaaaa一级黄片| 97色爱| 青娱乐休闲视频在线观看| 久久久国产成人一区二区三区在线| 97蜜桃综合| 免费视频97| 欧美日韩成人在线| 日本免费二区三区| 国产精品分类在线观看| 天天插天天舔舔天天干| 校园春色五月天| 玖玖视频在线资源一区二区三区| 91天天综合在线| 亚洲春色欧美激情自拍| 少妇极品熟妇人妻无码| 九九九久久久W精品| 极品色综合| 中日无幕一二三四区| 国内亚洲高清无码| 激情综合五月| 97鸡把在线视频| 色婷婷激一区二区三区| WWW美腿丝袜香蕉中文| 国产在线视视频有精品| 三上悠亚在线毛片91| 超碰79人人乐| 激情五月天插| 97欧美色综合| 91狠婷| 国产精品免费日韩| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 欧美日韩国产中文精品字幕自在自线| 亚洲国产一区二区三区四区国产| 国产美女高潮视频| 中文字幕少妇色| 操逼精品视频| 狠狠激情综合狠狠操中文字幕| 亚洲综合大片| 丁香六月东京热| 国产精品露脸在线观看| 天天拍天| 一区二区三区精品久久| 噜噜噜在线视频| 天天噜| 操逼网站地址| AA特级绝黄| 久久69精品久久久久久久| 天天久久| 新怡红院| 色偷偷超碰亚洲| 久久综合18p| 理论久久婷婷网 8| 激情第四色| 91在线精品| 亚洲aV性爱| 超碰成人国产| 日韩免费看黄片| 欧美日韩性爱视屏免费看了| 久久久亚洲欧美综合| 岛国福利在线精品播放| 日韩中文字幕视频| 国产成人精品无码久久| 国产综合永久精品日韩鬼片| 国产精品视频一区二区三区八戒| 欧美成人A天堂片在线观看| 日本一区二区三区四区免费观看| 中文字幕丝袜国产第一页不卡| 天天色天天干天天爱| 欧美网站免费| 理论久久婷婷网 8| 超碰亚洲欧美日韩无| 国产精品制服丝袜中文字幕日韩一区二区三区 | 国产日逼视频| 97中文热色| 极品出轨视频网站| 91激情国产| 精品无码欧美三级| 国产成人精品无码久久| 婷色五月天| 超碰97资源网亚洲| 永久免费观看的毛片的网站| 亚洲第一精品在线视频| 久久五月份| 四虎在线观看网站| 国产精品乱码久久久久久久久| 91精品人| 久热九九| 9ⅰ久久久天天| 97情超碰色| 2023天天操夜夜操| 强奸乱亚洲| 久九干| 天美传媒AV在线播放| 激情五月天婷婷| 东北女人操比视频| 天天懆天天日| 嗯嗯啊啊用力视频免费| 色汉综合| 色五月婷婷五月天| 日天天九九天堂666| 亚洲自拍天堂| 天堂在线一区二区| 蜜乳AV免费观看| julia在线观看久久| 超碰97COm中文| 殴美大黄片| 91色射| 免费人成在线观看网站品爱网| 久久色激情一区二区三区| 私人尤物在线精品不卡| 能看的AV| 欧洲性人爱视频| 毛片中心9视频99| 97综合网| 久久妇| 五月天综合在线| 欧美gv在线观看| 国产亚洲色婷婷99精品91| 日韩午夜精品一区二区三区电影| 97视频在线免费| 人妻熟女av国产网站| 91色拍| 青青草久草AV| 另类综合另类| 18禁网站在线播放| 国产内射爽爽大片| 精品少妇人妻| 性爱动态120秒| AAAAAAAAA黄片| 富女玩鸭子一级毛片| 亚洲 另类 丝袜 自拍 动漫| 久久久久国产精品喷潮免费观看臀| 91久久青青草原精品| 九热超碰| 91久久国产综合久久| 韩国黄片aaaa| 黄片免费看的| 青青草狠狠撸| 动漫片子网站3黄| 五月丁香久久| 亚洲成人网站在线观看| 中文字幕精品一区二区精| 在线日韩精品一区二区三区|