日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

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
返回資訊列表
国产精品黄色三级av| 国产一级久久久| 中文伊人大香蕉视频| 狠狠久久四虎| 蜜桃视频精品一区二区| 欧美精品,四区。五区| 天天操天天干一区二区 | 久久久国产精品亚洲精品| 吖在线不卡一区二区国产剧情| 蜜桃视频精品一区二区三区| 嗯啊抽插大香蕉网页| 操逼无毒无码免费视频| 少妇69中文| 黄色视频特级毛片| 日韩一级久久毛片| 久久这里精品国产99丫e6| 欧美综合自拍亚洲综合图| 欧美性爱一级操| 日本操逼无码| 日韩日韩日韩-国产乱码精品一区二区| 精品色色| 精品-91人妻子系列| 伊人专区一区二区三区| 九九九九热| 探花精品视频| 婷婷丁香六月天| 一区二区三区在线资源| 久久久穴999| 欧美午夜精品久久久久久超碰| 青青免费在线视频一区| 最新中文字幕av| 日韩有码专区| 欧美在线电影| 天天噜| 道久久五香丁月婷婷激情综合| 日韩另类色图| 日韩少妇丰满亚洲| 亚洲精品天天影视综合网 | 99久久com免费视频′| 国产97色在线| 蜜臀久久99精品久久久老,,| 亚州伊人色综台| 欧美亚洲第一页| 一级特黄aaa大片在线观看成人一级片在线观看 | 色色五月天激情| 亚洲精品久久久久久久蜜桃臀| 天天澡天天爽日日AV| 女优大全 - 91n| 亚洲97超碰| 韩国一级做a久久久久| 中文乱码字幕观看| 日韩欧美tv一区二区在线观看| 久操视频在线| 色一情一乱一乱一区91Av| 天天摸夜夜操视频| 伊人伊人LD| 2017超碰| 东京热双插| 色激情综合网站| 精品9区| 免费男人的天堂| 不卡在线观看视频| 久久精品国产Aⅴ| 嫩草美女久久| 亚洲色吧网| 日韩人妻精品| 亚洲熟妇自偷自拍另欧美| WWW4虎| 四方色播| www.av家庭乱伦| 国产精品一二三| 夜夜草我| 97天天摸天天碰| 中文字幕视频免费| 91熟女.com| 九九九九九精品十六| 校园春色宗合网| 精品一级毛片在线观看| 在线日韩精品一区二区三区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 亚洲成熟国产精品美女| 人人污日韩一区二区| 99热免费| 91av熟女人妻| 成人老鸭窝人人在线视频| 91天天综合日韩欧美| 黄色片大香蕉| 91亚洲欧洲| 国产真实野战在线视频| 日本人妻天堂网站在线播放| 国产精品麻豆免费视频| 91久久婷婷| 密臀在线一区尤物| 超碰97人妻免费在线| 五月丁香成人网| 男女啊啊啊| 嗯嗯啊在线视频| 99久久99九九99九九九| 欧美激情亚洲色图| 久久直播国产| 欧美宗合色| 操死我干死我| 欧美东京热精品A∨| 欧美极品少妇| 亚洲情色五月天 | 凹凸视频在线一区二区| 日本A级视频| 激情文学亚洲| 综合一区二区影视| 绯色AV粉色AV蜜臀AV| 加勒比伊人| 精品二999| 99操碰| 一二三四视频中文字幕在线看| 99操| 欧美日本久久精品一区 | 国产欧美精选自拍一区| 欧美伊人电影| 九九九九精品一区| 国产高清不卡视频| 小泽玛利亚一二三| 偷拍伦理视频| 成人精品在线观看| 人人操av| 91久久精品蜜臀| 国精综合一二三区影视| 日韩一级二级| 麻豆久久视频在线地址| 女人高潮大叫一级毛片| 国产极品美女高潮无套在线观看| 亚洲涩涩| 丝袜高跟澳门91视频| 特污精品女优骚货黄色视频在线免费观看| 国产精品亚洲无码| 亚洲暴力强奸AV| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 婷婷色在线| 日韩av免费一级电影| 成人性生活高清视频在线播放| 日日日骚女人精品| 久操| 精品999一区二区| h色99999| 青青在线视频免费| 91综合天天看| 阿姨一区二区免费视频-高清正片西瓜视频下载app-T450AV | 欧美日韩操逼动图| 91精品久久综合熟女| 国产精品99久久久www| 国产亚洲禁久一区二区| 色小视频蜜乳| 精品一久久久| 国产多人在线观看视频| 日本三级韩三级99久久| 中文字幕一区日韩精| 久草视频分类在线| 日韩AV一区二区三区三州三州| 曰韩精品九九无码| 很很很很操| 欧美日韩不卡传媒| 天天噜| 无码精品久久| 全免费a敌肛交毛片免费| 爆操无码| 人妻精品一区一区三区蜜桃91| 国产成人www免费人成看片| 日韩久射综合| 国产精品人人爽人人做可爱福利| 97chaopenrihan| 亚洲小说视频| 三级片网站在线播放| 中国少妇XXXX做受| 色av中文字| 97操97干| 日韩性爱小视频在线观看| 日本一区二区三区精品| 亚洲资源站| 青娱乐淫乱1314| 99久久综合| 亚洲成?V人片在线观看福利| 日韩AV电影网站| 操操啪| 九九九九免费高| 亚洲无码精品AV久久久| 日韩乱码Av| 欧美在线大香999| 日韩性爱毛片操骚逼| 熟妇熟女亚洲天堂网| 亚洲国产97在线精品一区| 免费久久一级毛片大黄| 欧美亚洲激情小说| 秋霞网无码| 91在线美女| 精品久久久一本一道| 久久中文字幕一区不卡| 亚洲国产综合图区中文字幕| 成人无码专区精品视频| 日韩一999精品| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 四虎影视国产精品| 国产欧美在线观看免费观看| 亚州九九九精品视频| 日韩一区二区高清在线观看的| 超碰1024久久| 成人AV在线电影| 国产女人视频三四五区| 亚洲一曲日韩精品| 日韩精品99999| 国产女人视频三四五区| 涩涩久久精品| 亚洲涩图欧美| 女人高潮抽搐喷水视频网站| 亚洲深夜福利| 91黑丝在线播放| 9丨亚洲一区二区在线| 欧美黄色片在线播放| 二色av| 亚洲人在线| 国产精品动态一区二区三区四四| 婷婷色在线| 欧美性生活男人的天堂| avav青青草久久夜| 欧美人人天天网| 青青草原人妻| 日韩精品区二区三区不卡| 亚洲暴力强奸AV| 人妻无一区二区三区| 色综合久久夜色精品国产天堂| 日本性爱视频一级| 你草精品在线视频| 亚州中文字幕超碰97| 成人一道本免费视频| 亚洲无码太久| 熟女人妻精品一区二区视频 | 伊人久久婷婷| 水野优香在线观看| 婷婷激情啪啪| 青青草久草| 色哟哟av| 水滴偷拍| 欧美91变态| 亚州性色| 白丝AV| 九九久久久| 麻豆一区二区AV天美| 2019亚洲男人天堂| 蜜桃臀AV在线| 欧美拳交在线播放| 96久久精品一二三区色欲| 911粉嫩人妻| 丁香六月东京热| 久久黄色视频一区二区三区| 国产精品亚洲色婷婷久久久| 性爱网站一区二区| 日韩精品永久在线观看| 中文字幕黄片在线| 男人的天堂不卡一区二区| 91操碰| 麻豆天美在线喷水AV| 色久综合| 在线 亚洲 网爆 自拍| 91色综合激情| www.人人摸在线视频| 亚洲骚逼少妇| 操逼片国产| 亚洲成?V人片在线观看福利| 婷婷综合视频| 亚洲精品蜜桃久久久久久久| 久久久91| 国产亚洲精品玖玖玖在线观看| 亚洲综合色婷婷| 91丝袜美女| 另类专区加勒比| 国产精品com| 国产精品免费日韩| 蜜桃久久久久久久| 麻豆色约约| 中字幕人妻一区二区三区| 国产亚洲色婷婷久久99精品91葵花宝典| 国产视频一区二区免费| 日本大香蕉| 香蕉国产精品麻豆亚洲欧美日韩| 俺去俺来也在线www| 国产日韩精品一区二区三区| 97久久久网站| 欧美日韩性爱视屏免费看了| 乱操乱伦AV| 一级日本牲交大片好爽在线看| 超碰亚洲97| 美骚妇av高清在线| 婷婷综合网站| 成人情色综合网| 日韩人妻一区二区| 色99在线| 91亚洲网| 久久久久一本一区二区青青蜜月| av天堂加勒比| 男女打扑克高清网站| 亚洲色图自拍| 搡老熟女老女人老熟妇免费视频| 欧美日本视频一区| 婷婷99狠狠| 九九九九AV| 精品久久久av| 精品国产91av一区二区三区| 久久久免费视频18| 欧美做爰无码A片视频| 岛国福利在线精品播放| 欧美黄色图片| 国产综合操逼高清| 亚洲成人日韩小说| 超碰天天操你比| 蜜臀99999| 人人摸人人添人人操| 2020中文字幕在线| 天天影视网综合少妇| 蜜臀久久99精品久久久久| 综合激情97 | 欧美日韩国产三级黄色| 成人性爱AV在线免费观看| 黑人美精品 A片| 嗯嗯啊啊用力视频免费| 国产亚洲日韩在线三区黑人| 亚洲综合色图欧美| 偷拍片久久| 美女黄页| 99婷婷| 四虎国产精品永久地址入口| 色图综合| 久久内射| 91麻豆天美传媒在线| 东北操逼| 国产偷人妻精品一区二区在线| 九九色色| 欧美少妇第一页| 人妻精品综合中文字幕在线 | 亚洲无限观看| 亚洲色欲天天人妻无码系列专区| 91肉片| 蜜桃午夜视频一区二区 | 97色视频在线| 东北老女人的激情视频| 欧洲乱码一区二区| 夜夜爽爽爽| 色色婷婷丁香| 久久久蜜桃一区二区三区| 视频分类 国内精品| 亚洲最大成人a毛毛片| 色视频蜜乳| 国产一区二区成人av在线播放| 欧美精品黑人猛交高潮| 欧综合网| 俞拍自拍| 久久亚洲欧美一区二区三区-亚洲国产精品第一区二区 | 日韩av性爱在线播放| 91亚洲在线| 人妻三级在线中文字幕| 一起草三级AV电影在线观看 | 青青国产精品在线| 97久久超碰国产网站| 色999偷自拍拍| 伊人aaa| 国产美女自拍视频| 日韩中文字幕在线视频观看| 亚洲Av无码成人精品国产| 一区二区日韩欧美久久| 秋霞网无码| 一个色导综合| 天天干天天插| 91中文精品日韩欧美在线| 久久久国产护士丝袜美腿一| 在线色导航| 春色综合免费| 97色碰| 乱伦系列一区二区| 久久综合18p| 久久最新视频免费观看| 超碰在线1234区| 免费观看日本操逼视频| 国产树林里野战在线看| 日韩不卡码| 欧美日韩在线小说 | 丁香五月综合| 欧美视频一区二区三区| 老熟女网站| 色99色| 久操免费观看| 超碰久久草| 97中文超碰| 日韩在线地址一| 久久无码电影| 夜夜骑天天燥| 国产精品麻豆视频网站| 人人操天天爽| 欧美性生活男人的天堂| 欧美天堂日韩三级国产传媒| 日韩猛交| 丝袜无码a片| 欧美亚洲高清| 日韩女优中文字幕| 成人免费性爱视视| 亚洲精品丝袜| 久久一区二区高清免费| 美女让帅哥通她小鸡鸡| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 国产丁香精品露脸视频| 999久久久精品国产| 久久97视频| 欧州色图区| 自怕偷自怕亚洲精品| 九九九九九九九九九五码| 操逼操逼逼操操逼91| 欧美五区| 黑人操一区二区| 91综合网在线| 啊…啊…操我用力操我| 伊人精品久久网站| 久久9精品| 99啪啪| 综合色图区| 国产一级不卡在线观看| 欧洲黄色网| 熟妇人妻一区二区三在线| 欧美色图电影| 久久久性少妇| 女人的天堂大香蕉网| 亚洲 欧美日韩 另类| 亚洲天堂欧美| 嗯~啊~快点 死我视频免费看网站| 综合五月婷婷| 特级毛片特黄久久免费看| 久久9久| 蜜臀久久99精品久久久久久-DVD| 久久99精品视频| a片久久久久久久久久久久 | 欧美综合在线第一页| 美女的肌被草喷水视频| 98一区二区精品| www.99热| 久久性爱视频| 色婷婷丁香五月| 亚洲乱码尤物193YW| 制度丝袜99| 思思热国产在线视频| 91综合色噜噜| 波多野结衣之双飞调教在线播放| 97色欧洲| 白丝一区| 少妇无码av专区线| 熟妇人妻一区二区三区| 极品另类| 久久精品国产亚洲AV高清演员表| 五月婷亚洲精品天堂| 曰韩欧美国产传媒麻豆第一区| 日韩免费中文字幕视频| 97欧美精品| 深夜福利黄片| 久久中文字幕一区不卡| a男人的天堂久久一级A毛片| 九九热国产| 色香AV| 人人操,人人插| 九九国产| 手机在线播放国产福利| 美國A片| 色色毛片| 国产婷婷综合在线观看| 老子午夜伦不卡影院| 立川理惠被中出无码| 亚洲精品一二牛牛| 美国一区二区免费视频| 大香蕉宗合网在线| 黄色十八禁| 亚洲色婷婷久久91| 自拍大香蕉乱插| 久久发布国产伦子伦精品| 美女大乳久久久久久久女人18| 国产久久日| 人妻少妇精品| 抽插无码高清一区| 欧美韩国你懂得在线| 天天92av| 亚洲日韩国产欧美综合v| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒 | 欧洲Au麻豆| 青草伊人久久| 欧美经典一区二区三区| 久久久久9久久久久| 欧色综合| 少妇高潮对白在线观看| 国产天天骚| 日韩精品三级片长长久久| 亚洲熟女av中文字幕| 动漫爆乳3D奶水一区在线观看 | 亚洲激情综合另类男同| 亚洲欧美一区二区三区一猛片| 亚洲性综合9| 五十路六十路七十路熟婆| 91网站18禁| 色欧洲| 尤物网址| 亚洲天堂一区二区久久| 人人爱操| JuliaAnn丝袜熟女系列| 久久久蜜桃一区二区三区| 竹菊一区二区三区AV线| 五月婷在线| 大奶的诱惑| 超碰爽人妻熟女Av| 亚洲国产成人精品999| 亚洲天堂另类小说男人| 男女做爰猛烈动高潮A片免费应用| 色呦呦、国产精品| 国产久久av| 后入福利视频| 1024亚洲中文字幕久在线看片你懂的| 国产区日韩区在线观看| 亚洲欧美在线综合| 国产精品国产拍高清AV| 欧美日韩在线小说| 99re在线观看| 亚洲精品日韩国产欧美| 九九热九九| 六月婷婷一区二区三区| 天天日天天插| 亚洲AV噜噜狠狠网址蜜桃动漫| 一级免费精品| 国产久久一区二区| 欧日韩不卡视.频| 国产极品精品美女视频| 97超碰久久| 我想要啊 啊 啊| 三级网站超变态精品| 国内毛片免费h片在线| 无码人妻1727| 97超碰jingpin| 可乐操在线| 亚洲情色一区二区三区| 天天综合网一91网| 大香蕉综合| 精品视频免费在线一区| 97视频在线| 搞中出久久| 丁香五月天婷婷姐| 婷婷导航| 爽爽淫人网| 密桃99999| 9色在线| 俺去俺来也在线www| 中文字幕一区电影在线观看| 男人天堂网站| 色99999| 亚洲国产精品无码AV久久久| 欧美性爱一区二区| 亚洲高清无毛一区二区| 国产品精品自在在线午夜免费| 久久久夜夜夜| 在线岛| 家庭乱伦国产| 免费在线黄片视频| 麻豆啪啪啪视频| 国产成人网| 淫妻综合网| 91爱综合| 日日碰视频网| 中文字幕在线观| 欧美黄色手机在线观看| 青青久久手机线视频| www.99视频| 蜜臀人妻少妇久久在线观看| 龙兴卡官方查询| 精品国产乱码久久久| 都市久久精品激情亚洲| 色综合98| 人妻91少妇| 人人澡人人干| 国产精品久久久久久亚洲色欲| 黑人无码一区二区| 91日韩在线| 免费视频一二三区| 久久久精品国产亚洲伊人| 久久精品国产精品一区| 天堂射| 在线综合 亚洲 欧美中文字幕| 操操操操网黑人| 97欧美日韩综合| 一本大道不卡一二三区| 97久精品| 亚洲国产综合图区中文字幕| 美女国产一区二区久久| 色999偷自拍拍| 国产一区二区二区按摩精品啪视频| 天天干干天天干干| 啪啪91| 在线视频97| www.99热| 日韩一级二级三级在线不卡观看完整| 亚洲中文字母在线播放| 大乔未久88一区| 久草尤物| 亚洲视频小说| 亚洲AV无码翔田千里网站| 97二区四区| 亚洲巨爆乳一区二区三区四季网| 开心激情婷婷| 久久青青草在线视频| 91精品国产综合久久久蜜臀| 日本精品999| 久久久99久9| 亚洲欧洲无码bt精品合集| 久久婷婷国产一区二区色| 亚洲精品官网在线观看| 亚洲国产日韩精品久久久| 91啪啪视频| 97中文热色| 日韩欧美性爱电影在线观看| 国产精品农村妇女精品| 香蕉久久国产AV一区二区| 久久久999国产| 9久综合网| 欧州一区二区三区四区| 91少妇香蕉久久精品| 岛国黄片网站| 久久成人网站| 夜夜操91744565| 亚洲天天做日日做天天谢日日| 超碰综合色| 强奸xx国产| 2017人人操,人人摸| 91碰碰| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 日本天天人人狠狠在线日美女 | 国产精品呦一区二区三区| 色欧美在线| 亚州综合AⅤ| 色av中文字| 亚洲精品a人片在线观看视| 免费看黄片现成| 狠狠爱AV| 狠狠亚洲| 大香蕉欧美国产日韩高潮| 91粉芽高清在线一区二区| 97精品熟女少妇一区| 国产精品人妻无码久久久老鸭窝| 亚洲色天堂九9| 天天操天天日天天干| 久久夜夜夜夜| 精久久久91| 强上我不卡卡| 香蕉99秘 精品一区丁香| 超碰狠狠操| 五月天综合网| 五月天精品| 日韩女优在线| 在线综合 亚洲 欧美中文字幕 | AV一二区| 亚洲欧美国产日本一区二区三区| 很很热性爱视频| 极品色综合| 国产一二三福利视频网| 日韩偷拍色图| 久久这里只精品99re66图| 蜜乳AV色欲AVAV无码| 亚洲二区精品在线观看| 亚洲乱码尤物193YW| 国产欧美一区激情交| 天天综合精品| 超碰精品| 97爱爱官网| 视频国产欧美在线播放| 亚洲天堂一区二区久久| 九九九偷拍| 久久AV色| 亚洲人妻日日日| 秋霞Av理论一级在线| 亚洲综合第一页| 在线A日本| 狠狠色综合网| 精品美女少妇一区二区三区| 激情婷婷丁香网| 亚洲黄片免费在线播放| 欧美成人性爱视频免费观看 | 俞拍自拍| 亚洲性爱成人| 激情五月天综合网| 在线 欧美 亚洲| 国产精品原创巨作?v网站| 无色无码| 日韩欧亚中文在线| 一级AV性爱| 亚欧美天堂在线| 国产精品农村妇女| 免费看日本操逼视频| 强奸熟女一区二区三区| 国产亚洲日韩欧| 伊人97色天使| 夜草网站| 青青草在线视频欧美| 五月亭亭六月丁香| 资源在线观一 二| 四虎在线视频| 亚洲操操操| 91精品国产91熟女| 99热在线观看| 淫荡网址| 视频分类 国内精品| 色777999综合| 五月色网| 600国产精品视频| 日韩无码服务区| 日骚逼视频| 亚洲精品一二三四区| 色吧91| 亚洲精品丝袜| 国产精品视频麻豆入口| 免费成人在线熟妇网| 国产伦乱91| 熟妇色99| 亚洲污污网站| 首页亚洲国产高跟丝袜诱惑视频| 亚洲欧美碰碰| 超碰97网址| 国产精品熟女九色九色蜜臀| 97精品在线| 一级@啪啪视频| 高凊专区人人操| 久久久人妻| 日韩精品电影| 蜜桃传媒一区二区亚洲| 99碰碰| 中文字幕交换人妻| 国产成人精品必看| 黄色无码高清黄色无码网站| 久九九九九九九九热| 久男人久久| 久操视频免费观看| 日韩三级性| 偷拍色图| 九九九精品色乱九九九| 中文字幕久久亚州无码| 国产av热热色| 亚洲人久久久网| 天天躁狠狠躁av| 亚洲综合射| 欧美 综合 亚洲| 狠狠躁日日躁夜夜躁A| 97一区二压| 日本男人插女人的逼黄色| 欧美色图成人网一区二区| 日韩三级在线观看mp4| 四虎国产成人精品免费一女五男| 69人妻精品丰满熟女区| 久久鲁夜| WWW美腿丝袜香蕉中文| 91精品国产乱码| 人人爽夜夜玩视频| 91欧美www| 久久春色| 国产二区视频在线观看电影| 久久直播国产| www狠狠| 91九九九馒头| 久插不卡| yazhouzaixian| 欧美 亚洲| 另类图片欧美激情综合| 91在线视频免费播放| 一起草精品人妻| 999久久久精品国产| 日本淫色网| 97欧美日韩中文| 麻豆色99999| 九九综合九九综合| 丰满人妻无码一区二区三区| 国产无马av| 91N五十路| 欧美与日韩97| 97欧美日韩综合| 青青操网| 亚洲AV无码乱码在线观看性色| 夜夜中出国产| 大乔未久88一区| 亚州性色| 中文字幕交换人妻| 啊啊啊用力在线观看| 国产久久久久影院老熟女| 欧美 亚洲精品首页| 天天日天天干天天色| 亚洲黄网在哪免费看| 香一区二区三区| 欧洲一区二区三区四区在线观看| 97超碰碰| 久久婷婷综合国际产色怕| 青娱乐 成人娱乐在线| 99re6国产精品99re| 蜜臀久久99精品久久久电影| 高清无码 国产精品| 国产伊人自拍| 97ai亚洲| 偷拍自拍在线视频观看| 91丝袜在线观看视频在线观看| 日本性一区| 国产精品4p在线观看| 99成人| 国产不卡的视频| 尹人免费观看视频在线| 五月婷婷深深爱| 国产91美女视频| 肏逼福利网站| 色噜噜狠狠色综合日日| 久久久久久久久久久久欧美日| 粉嫩av在线| 亚洲黑丝在线| 九九九不卡| 高跟丝袜AV专区国产| 1区2区3区中文字幕日韩| 国产97在线 | 亚洲| 精品国产久热在线观看| 加勒比伊人影院| 国产一级137片内射麻豆| 欧洲Au麻豆| 又大又大又大又粗爽高潮观看 | 99re不伦| 亚洲天堂欧美| 久久久久成人蜜桃精品| 久久久啊啊啊| 激情综合五月| 亚洲欧美97| 91操人| 午夜精品久久久久久久第一页按摩| 一级久久久久久久久久久| 久久久男人的天堂| 东北丰满熟女国产一区| 久草综合视频| 亚洲最大成人a毛毛片| 九九拍拍精品视频在线播放 | 超碰久久中文| 96久久久| 久久一留热品黄| 无码137片内射在线影院| 91丝袜美女| 日韩精品资源专区二区| 亚洲男人的天堂V| a片偷拍视频| 久久久久亚洲精品| www.99中文字幕| 97超碰总站| 日韩乱插| 美女网站91| 91xingse| 无码 黑人一区二区三区| 高潮综合网| 黄色电影观看久久9| 啊啊啊不要嗯嗯在线观看| 久久av成人无码免费| 日本三级韩国三级美三级91| 乱伦系列一区二区| 男同专区一区二区三区在线| 中文字幕二区日韩天堂| 人妻精品视频一区二区三区| 日韩情色AV| 黄色免费网页无码| 极品美女嘿咻| 久久精品免费| 日韩久久.一级黄色片| 激情情色五月天| 精品国产一区二区三区av在线资源| 天久久久噜噜噜久久国产精品爽爽| 日本免费不卡二区| 超碰在线观看av不卡| 福利天天都操| 色av中文字| 国产AV激情无码久久无码| 97人人夜| 天天舔九色婷婷| 在线观看国产黄色| 国产精品人妻无码久久久互動交流| 国产精品熟女九九九| 懂色AV蜜臀无码精品APP | 久久精品国内Av熟女高清| 蜜臀th| 亚洲日本韩国极品一区二区| 成人精品一区二区91毛片不卡| av天堂加勒比| 97自拍一区| 91丨九色丨东北熟女| 国产男女边吃边摸视频网站| 日日AAvv| 青青草啪啪网| 欧美黄页在线| 欧美顶级黄片AAAAA在线免费看| 极品销魂美女一区二区| 青青草好吊| 好吊色一区| 这里只有精品久久| 久久亚洲AV无码专区首页| 97超碰美女| 亚洲文学偷乱拍啪啪啪啪| 精品久久久av| 熟女视频久久| 99国产精品视频尤物| 亚洲一区二区三区婷婷| 精品无码产区一区二| 久久超碰亚洲人| 大奶啊啊好爽| 色情综合| 欧美黄片欧美黄片xxx| 麻豆视频国产一区二区| 91欧美综合| 亚洲天堂少妇| 亚洲精品白丝| 在线观看A啊啊啊| 久视频在线观看| 男人天堂2019亚洲| 国产做?爰片久久毛片?片美国| 高清无码在线播放网站| 天天澡天天爽日日AV| 久久精品超碰| 婷婷精品久久av影视| 国产精品国产| 欧美论理片| 亚洲AV无码久久精品蜜桃小说| 艳美熟妇先锋一二三区| 噜噜噜狠狠色综合| 欧美啪啪女女| 亚洲操人| 色婷婷香蕉| 岛国片在线观看视频亚洲| 91爆操视频| 郑州宾馆老熟女露脸啪啪| 一个国产在线综合网站| 立川理惠被中出无码| 久久午夜色播影院免费高清| 久久岛国| 中文久久久| 欧美后入| 亚洲av性爱电影| 精品视频在线观看精品| 国产在线观看一区二区三区| 在线观看中文字幕| 操逼网站网站| 久久精品午夜国产亚洲AV无码| 欧亚无码视频| 国产在线视频二区| 亚洲一区二区三区播放在线| 八戒无码国产午夜福利| 囯戸精品高潮呻吟旡码| a一区二区三区乱码在线| 亚洲无码国产精品久久| 国产精品亚洲高清在线| 色噜噜精品一区二区三| 亚洲强奸乱伦影视网| 视频分类 国内精品| 国产亚洲在线| 人妻天天操天天爽视频免费| 无码一区二区三区四区五区六区七区八区九区十区视频 | 久久黄黄黄| 青青草好吊色| 性色AV蜜色av色欲av| 欧美一级久久久丰满| 国产高清精品福利| 亚洲视频二区| 久久是精品| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 激情五月综合开心五月| 免费在线黄片视频| 看一级黄色视频| 97色在线观看| 免费成人在线熟妇网| 国产97在线播放| 又大又大又大又粗爽高潮观看| 成人av性爱电影在线观看| 美女写真| 校园春色制服丝袜中文字亚洲| 日韩国产十八禁| 欧美日韩精品青青| 色香AV| 久久美女国产| 天堂蜜桃无码视频一区二区| 成人五月天色网| 96国产精品| 被男人吃奶很爽的毛片| 97国产成人精品免费视频| 国产四虎在线| 97精品网站| 国产毛片毛片4p懂色| 久久高清欧美国产| 国产精品对白内射| 日夜尻逼网| 操人人| 99热这里都是精品| 嗯嗯嗯啊啊啊干死我吧| 青草成人免费视频一COm| 天天躁日日躁xxxxx| 天天干,夜夜爽| 国产白丝在线| 欧美999| www.色综合| B049AV在线播放| 水多多映视AV| 亚洲夜夜欢无码一区二区| 在线黄色污污网站| 超碰97中文| 熟女人妻一区二区三区| 刺激精品视频| 精品九九九九九| 五月天色图| 色香欲天天天天综合色| 午夜啪| 男人的天堂啪啪| 综合网亚洲1| 日韩99精品视频综合区| 九九九午夜| 国产sv美女内射| 欧亚乱色熟女一区二区| 久久久久七视频| 国产一国产一级毛片古装| 人人操人人狠狠操| 大香蕉之青青草原| 中国AV美女| 91色鬼| 无码人妻精品酒店| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 美女诱惑一区| 丁香五月婷婷啪啪| 亚洲蜜臀精品视频久久| av在线免费一区二区| 香港日本韩国人妇99www.wccm20| 搡老女人老熟女91| 中文字幕第页| 97精品在线视频| 激情99| 鸥美中出| 狠狠操夜夜操蜜桃视频三区| 欧美图片校园春色| 色牛牛AV| 亚洲九九视频| 色丁香五月婷婷| 东京热伊久| www.yw尤物| 夜夜欢天天干| 麻豆天美国美国产AV| 97碰久久| 欧美 中文字幕 一区| 亚洲 无码 偷拍| 久久久久久久78| 免费啪啪av| 情侣操 逼视频99| 久久精品国产亚洲AV嘿嘿| 午夜综合在线| 成人午夜视频免费播放| 啪啪啪男女亚洲中文字幕99| 99色视频| 欧美性爽xyxOOOO| 大香蕉99热| 无码精品人妻一区二区三区妖精| 日韩色女精品| 91啪啪视频| 国产农村妇女精品| 夜夜久久| 欧美午夜一区二区三区| 97超碰伊人| 96精品在线| 亚洲男人综合| 丝袜美腿射精91| 中文字幕在线日亚洲9| 美女啊啊啊啊啊啊| 91色综合激情| 亚乱色| 欧美色图亚洲色| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 天天性射网| 天堂av2019| 免费αⅴ在线观看| 久久97视频| 亚洲熟妇无码一区二区三区| 日韩乱中文| 亚洲黄色| 人人澡人人弄| 激情综合色| 亚洲激情综合另类男同| 中文字幕第7页| 亚洲国产剧情少妇激情| 九色精品视频导航1| 蜜臀99久| 999综合色| 国产999精品久久久久久| 熟妇的味道HD中文字幕| 丝袜加勒比| 看黑丝美女操逼青青网站| 丰满人妻一区二区三区大胸懂色 | 天堂日本亚洲欧美| 国产美女高潮叫床视频| 91天天看| 亚洲狠狠入| 神马久久久久久久久久久久| 亚洲图片偷拍视频区| 成人a v在线播放免费| 伊人嫩草| 在线视频一区二区传媒| 屌逼传媒| 另类 日韩 熟女| 国产高清视频无码在线| 99少妇| 日本中文字幕熟妇| a男人的天堂| 99色婷婷| 在线v中文字幕一区二区三区| 超碰精品日韩欧美国产| 99少妇| 天天天操天天天爱| 美腿丝袜高跟网免费视频免费视频| 日本色婷婷| 天天日天天干天天整| 欧美激情性久久久久久| 欧美日韩在线小说 | 欧美日产国产在线成人第一区| 91成人无码| 风间由美日韩欧美久久| 一区二区三区色综合| 天天做天天爱天天爽AV| 中文高清一区二区的| 欧美做爰无码A片视频| 人妻一区视频| 在线色导航| 热无码中文亚洲H一道本一区二区| 香蕉视频精品亚洲一区二区三区在线播| 午夜激情成人在线观看| 美女91网站| 欧美激情区| 一二三区精品视频| 亚洲中文sv| 99热这里只有精品1| 鸥美极品| 国产乱青青草久久| 欧美91丝袜| 欧美一级专区免费大片| 自拍视频大全亚洲专媒视频/一区二区三区 | 天天干人妇| 久久久 国产精品| 天天色综亚洲91污| 黄色av片三级三级三级免费看| 亚洲色色探花| 91c色| 国产a级午夜毛片| 精品黑人一区二区| 深夜激情无码| www网站黄| 久久色情| 色99视频| 九九视品黄色| 中文字幕乱码人妻一区二区三区,99精品| 人人妻人人操人人乐| 97干天天| 日本韩高清无砖码22o| 精品78| 亚洲无码视频免费在线观看网址! J?P?NESEHD熟女熟妇伦 | 国产熟女自拍| 校园春色 亚洲| 啪啪啪亚欧美视频|