国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成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
返回資訊列表
丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 亚洲精品黑丝| 亚洲伊人成综合成人网| 99精品丰满人妻无| 亚洲AV色图| 噜噜噜在线视频| 操操操日本的逼| 五月激情在线| 亚洲中文sv| 精品欧美А∨无码黑人大荫蒂| 蜜臀少妇一区二区| 天天爽夜夜爽夜夜爽精| 少妇人妻精品| 一起草三级AV电影在线观看 | 青青草五月天| 欧美成人性爱视频大全| 大茄子熟女AV导航| 亚洲成av人片色午夜乱码| wuyechaopeng| 国产白嫩精品久久| www.zbzhongsen.com| 亚洲淫色网中文| 亚洲精品一区二区精品| 神马久久网| 夜夜精品视频| 97久久国产亚洲精品超碰热| 久久超碰、| 熟女网站最新| 亚洲欧美中文日韩视频中国语 | 在线97视频| 青青草视频导航官网| 精品中文字幕一区二区l - 百度| 91美女视频在线观看| 国内91熟女人妻丝袜天天精品视频在线 | 黑丝少妇| 久/久精品99看9| 人人摸.人人色| 涩涩久久精品| 老熟女91视频| 蜜乳AV一区| 人妻蜜桃臀| 天天日少妇逼AV| 乱欲视频| 97这里有精品| 美女91网址| 欧美热图99| 青青草日本无码| 成 人片 黄色大片| 蜜乳AV.COM| 另类天堂| 亚洲综合在线视频| 999国产精品999| 手机在线A片| 久久九精品| 在线观看黄色电话| 日日干日日| 国内精品久久人妻性色av| 中文一区二区三区影院| 秋霞 色色| 91亚洲色图| 日韩啪啪视频| 色翁荡息又大又硬又粗又爽| 国产精品人妻免费精品| 97精品一区二区三区免费| 内射黑丝袜| 久久超碰天天| 中国操逼无码| 精品成人无码| japan日本高清乱xxxx| 中文字幕一区二区日韩网| 丰满人妻一区二区三区蜜桃视频| 日韩三A大片在线观看| 操逼片国产| 岛国片在线观看视频亚洲| 一本一道vs波多野结衣| 美女露胸露屁股| 豆1无夜无码| 激情文学小说一区二区| 久久久久久久久999| 国产99热| 日日日日做夜夜夜夜无码| 蜜臀av在线播放一区二区三区| 91网站18+| 手机在线中文字幕国产 | 男人的天堂99| 国产精品久久久三级无码| 在线啊啊啊啊| A 天堂| 六月婷婷综合| 国产精品乱码久久久久| 激情综合五月天| 久久久成人免费av电影| 国产成人精品无码久久| A一区片| 精品人妻一区二区蜜桃视频| 日韩精品熟妇| 亚洲日韩人妻中文字幕一区| 国产亚州精品美女久久久免费| 丰满人妻一区二区三区性色| 婷婷丁香成人| 婷婷五月天久久精品视频一区二区三区| 中文字幕AV片| 日韩性爱免费视频在线网站| 欧美亚州综合图片| 中文字幕人妻资源在线| www.色操逼| 91丨九色丨国产打屁股| 蜜桃臀一区二区aV| 在线中文字幕极品av| 丁香五月AV| q2午夜理论片夜色av| 欧美不卡在线一区二区| 亚洲图片日本AⅤ欧美在线| 91操人视频| 日韩情色AV| 久久免费少妇| 日本丝袜人妻内射| 歐美性天天| 丰满人妻一区二区中文| 丰满人妻一区二区三区性色| 成人久久精品| 国产精品人妻一区二区| 玖玖爱一区在线| 啊啊啊免费视频| 亚洲黄色a级片| 97日视频| 欧美一级黄片视频在线| 人妻激情另类| 手机午夜电影神马久久| 97超级欧美| 国产精品爆乳懂色蜜乳| 人妻天天夜夜爽一区二区| 亚洲欧美不卡线| 国产精品自产拍在线观看社区| 国产AV人人 夜夜人人澡| 九九九热| 免费农村成人少妇人妻Aa一区二区视频| 久久黄黄黄| 婷婷丁香成人| 精产品久久| 五月丁香影院| 亚洲成人贴图| 九九英色视频| 超97在线精品视频| 一区e区三| 国产家庭乱伦网址| 在线观看中文字幕| 热久久国产精品视频大陆精品| 被窝影院午夜看片无码| 日本大香蕉| 久久精品国产免费观看99| 丝袜美腿射精91| 美中日韩无码| 天天92av| 99re6国产精品99re| 风流老熟女一区二区三区l| 一区| 97人人模人人爽人人| 免费99精品国产自在在线| 国内精品伊人久久久久影院会| 91精品国产长腿丝袜美女| 美女尤物人人操| 色网亚洲人| 九九天堂| 国产99 中文字幕日韩小视频| 日韩无码a片| 亚洲男人天堂2| 婷婷月色| 搡老女人老妇女AAA一VU麻豆 | …亚洲黄色厕厕女女在线播…| 99热在线播放| AA级电影三区| 精品免费囯产一区二区三区| 伊人991| 超碰在线看| 国产欧美日本亚洲精品| 黑人精品欧美一区二区蜜桃| 精品国产一区二区久久| 美女极品一区二区三区| 蜜臀久久99精品久久久久久无删减 | 开心五月天激情网| 性爱综合一区二区| 91亚洲情色| 超碰98综合网| 黄页18禁| 国产欧美岛国精品一区| 精品人妻一区二区三区四区不卡在| 亚洲精品天天影视综合网 | 操人妻少妇中文| 中文字幕AV乱伦| 日本免费二区三区| 在线亚洲丝袜视频网站| 色av中文字| 最近2019中文字幕国语免费版 | 国产成人免费观看在线视频| 91大神精品长腿在线观看网站| 欧美色九九九| 天天干天天干天天干| 激情抓乳插进去啪啪啪日韩 | 99久久网站| 国产免a费看黄片在线| 中文字幕乱亚洲美女精品一区| 超碰碰激情97+久| 国模一区二区三区| 91xingse| 日韩欧美女优电影| 色五月网址| 操逼操逼逼操操逼91| 春色综合免费| 午夜精品久久久久久久| 日韩不卡网操逼中文字幕日韩| 一本道综合色图| 日韩欧美午夜视频在线| 亚洲欧美中文一区二区三| 无码精品久久久久久亚洲| 色色97爱| 久9爱精品| 欧美精品,四区。五区| 欧美日韩免费专区在线| 后入 亚洲 美女 射| av资源在线观看少妇| 国产亚州精品美女久久久免费| 人人干黄色| 91天天看| 久久久久久九九九| 丁香婷婷五月| 人妻一区二区三区视频| 八戒午夜福利理论片| 麻豆国产精品午夜视频| 91看黄片| 影音先锋少妇| 国产三级电影免费观看| 国产女人91精品嗷嗷嗷嗷| 熟女六十路| 日本中文字幕在线视频| 能看的AV| 欧美午夜色妇色鬼| 中文日韩欧美熟| 天天在线91| 97久久久久久久久久| 97中文综合| 国产9l 大屁股| 岛国爱情动作片在国产AV无码专区亚洲AV漫画| 啊啊啊慢点| 久久久久幕乱码| 婷婷性网| 69XX一中文字幕人妻91| 欧美精品xxxwww| 天天精品| 口爆综合网| 久久精品视频在线观看| 日韩精品怡红院| 国产精品一二三| 日本媚薬中文字幕在线| 亚洲国产一区二区日韩专区| 黄片www.| 日韩av熟女一区二区三区成人| 久日91在线| 91亚.色| 欧美国产精品久久九九| 97精品国产手机| 国产精品97超碰| 亚洲综合20p| 国产无马视频| 偷拍欧美激情| 一二三区精品视频| 大香蕉视频一二三区| 色婷婷网| 99青青草国产视频| 亚洲91射| 人人干人人操人人爱| 黄片无码在线制服| 精品亚洲俞拍视频一区| 久久久91| 91精品综合久久久久久五月丁香| 三级网站超变态精品| 久久久久久久久国产| 啊啊啊想要| 你想操日本小逼吗| 丰满搜索结果 -第18页- 久久高清无码 | 色妺妺AⅤ| 在线观看无码三级少妇| 国内毛片无码一级毛片| 超碰在线第一页| 在线综合网| 337p大胆噜噜噜噜噜91Av| 日日AV加勒比| 18禁止看精品中文字幕| 99国产人成精品| 久久久九九| 成人av影院在线观看| 亚洲 图片 综合91| 欧美大码在线视频| 日韩无码一级黄色av片| 操逼逼无码| 欧美最大综合网| 日夜精品| 操婷婷逼| 77国产精品| 欧洲性爱无码区| 91久久久久久| 欧美日韩精品久久久久久久久东北老熟妇| 久久精品中文字幕无码l| 91jk色拍| 一本精品日本在线视频精品| 亚洲鸥美色图| 超碰91在线| 久久九九热| 日韩av一级黄片| 欧美性天天影院| 又粗又长又爽在线观看| 国产精品亚洲日韩骚欢乐谷最新地址发布页huanieguty性屋娱乐妖精视频 | 国产精品麻豆免费视频| 刺激性视频黄页| 精品无码久久久久久久杏吧| 日韩ab网| 91精品伊人久久久大香线蕉91| 99黄页网站| 色黄色美女大长腿午夜视频| 91超碰丝袜制服| 强奸xx国产| 亚洲天堂2020| 一区二区三区蜜桃成人撸久久东京热 | 啊好大好舒服| 粉嫩av一区二区三区天美传媒 | 国产精品色| 久久久久久久久久久97| 内射老妇BBWX0C0CK| 亚洲综合小视频小说在线观看| 看免费一级在线播放毛片| 日韩精品熟妇| 日韩肏逼视频| 99re6在线视频精品免费完整版安卓版| 伊人黄色视频免费观看| 清纯唯美第一页| 97自拍视频在线| 日韩视频中文字幕| 亚洲激情色片| av日韩国产一区二区| 亚洲熟久久| 黄片直播三级黄片两女一男| 精品国产乱码久久久| 日韩偷拍色图| 成年人性爱日韩| 久久精品无码专区| 色 亚洲 91| 日韩在线观看中文字幕视频| 超碰 欧美| 亚洲成人av色网| 国产精品麻豆成人av| 九一国产精品| 97玖玖人妻| 国产精品无码在线| 天天射天天| 少妇高潮喷水无套久久久久久| 久久偷偷色综合蜜桃| 99热网站| 亚洲精品中文字幕一区在线视频| 黄片免费日韩| 婷婷精品久久av影视| 色av中文字| av天堂手机版追回| 成人性爱视频在线看| 人人妻人人澡人人爽久久av| 日韩美女高潮喷水视频| 欧美亚洲国产自久久| 日本日逼视频网| 少妇熟女1区2区3区| 大香蕉性欧美| yazhouzaixian| 亚洲情色五月天| 干婷婷综合网| 国产区91柔拿会所技师| 人人妻人人爽一区二区三区| 久久激情视频| 91美女视频在线免费观看| 五月丁香影院| 亚洲欧美激情在线视频| 欧美探花网| 啪啪综合网| 国内一级精品| 伊人嫩草| 久久久精品久久| 99热导航| 国厂麻豆77q4| 嫩草 人人网精品| 久久久98网站免费视频| 色综合天天| 国产热RE99久久6国产精品首| 九九综合久久中文字幕| 欧美日韩午夜精品一区二区三区| 亚洲天堂一区| av亚欧| 无码78| x97av| 国产精品久久久久久久久久久久久久久久| 日韩欧亚太美不卡| 欧美综合加勒比在线| 日韩有码一区三区| 久久a久久| 人妻天天爽夜夜爽精品2| 97中文超碰| 日韩pv中文| 亚洲天堂,男人| 激情五月综合网| 男人的天堂2010| 98色网| 好吊妞转入那个网| 中文乱码99| 爱欲AV| 一区二区不卡| 午夜操操操| 97久久超碰亚洲| 啊啊啊啊嗯嗯在线久久久| 日本ZZ高免费A级视频| 夜夜久久久| 男人的天堂网页| 国产1024在线播放| 九九干| 日本高清有码网址视频| 美女操逼福利视频| www.狠狠| 亚洲中文电影| 综合五月天| 国产性爱强奸乱伦大全| 成人97人人超碰人人| 亚洲最新a在线观看| 午夜男女爽爽爽在线视频| 国产亚洲99久久精品| 久久久艹艹艹| av草草在线电影| 偷拍盗拍亚洲色图图片| 人人搞人人插人人操| 国产成年精品高清在线观看91| 亚欧Av| 999日韩中文精品观看视频。| 草伊人高潮喷水超碰| 精彩久久中文| 蜜臀一区二区三区在线| 久久精品国产99精品亚洲蜜... | 色综合九九| 春色校园综合网| 国产丝袜高跟美女av免费观看| 欧洲人妻视频| 欧美精品日韩久久久九| 五月婷婷色| 亚洲成人色情五月天丁香花| 亚洲熟妇A V黑人| WWW操逼| 一级A啪啪啪啪| 啊啊啊好湿国产一二| 亚洲脚交| 蜜乳av一区二区| 夜夜嗨一区二区| 超碰久在线天天做| 国产精品4p在线观看| 亚洲精品亚洲人成人网| 丰满丝袜少妇AV| 超碰97人人cao| 亚洲1区| 欧美91久久久久| 亚洲欧美国产va在线播放频| 97av在线视频| 国产精品久久久午夜夜伦鲁鲁| 成人一道本免费视频| 色97欧美| 怡红院一区二区熟女人妻| 超碰中文字幕人妻草一区| 亚洲另类天堂| 久久久98网站免费视频| 成人九九| 最新中文字幕在线亚洲| 超碰美国| av操操不卡| 色约约一区=区三区| 老熟女搡BBBB搡BBBB视频| 桃色五月天| 欧美草草| 欧美精品自慰系列寂寞少妇| 98超碰日本| 国产伦精品| 91丨九色丨国产打屁股| 色路综合| 久久久无码国精品无码三区三区| 密臀在线视频| 五月婷婷基地| 久久久91| 97精品一二区| 一个人免费视频观看在线WWW| 欧美日韩亚洲一区二区在线观看| 粉嫩AV一区夜夜嗨| 亚州综合色| baisiav| 亚洲情色无码一区二区三区| 人人透人人操| 天天天干977| 亚洲麻豆精品二区三区| 亚洲中文字幕熟女| 熟女天天干| 最新亚洲黄色免费电影 | 志村玲子视频一区二区| 九九九精品美女| 99成人| 九九九九一级| 99ri在线视频| av影片在线观看不卡| 天天综合精品| 亚洲一级性爱视频免费看| 国产十八禁视频| 8050无码八戒| 欧美骚少妇| 天堂精品在线| 天天干天天燥| 婷婷九月丁香| 欧洲免费一区二| 伊人久久综合影院| 亚洲 日本 不卡| 亚洲中文字幕妇伦久久| 成人八戒网站| 91色拍| 国产肏屁眼视频| 久操热线| 俄罗斯一区二区视频在线观看| 人妻天天爽| 国产精品麻豆成人AV艾秋| 极品销魂美女一区二区| 亚洲97网站| 天天摸天天插天天日| 曰韩操B| 九九热三级片| 久久久久9999精品九九九| 久久五月丁香| 91三级理论片播放器| 一区二区三区看视频| 天天综合欧美综合| 1024香蕉视频| 中文字幕美女91| 超碰97国产欧美| 久久久久网站-538在线视频-欧美永久乱码 | 岛国片国产成人亚洲播放| 亚洲风情在线观看| 久久久国产精品亚洲精品| 国产亚洲色婷婷久久99精品91| 91欧洲入口| 一区二区三区蜜桃成人撸久久东京热 | 日日夜夜骑| www.高清无码诱惑一区.com| AV 少妇 人妻 偷拍| 日韩图区 偷拍| 午夜成人爽爽爽爽A片李冰冰| 中出人妻中文字幕91在线| 大香蕉十区| 狠狠久久亚洲欧美专区| 国产AV高清AV无码| 五月亭亭六月丁香| 中文字幕欧美日韩三级| 日韩一级二级三级免费看完整版国语版 | 国内一级精品| 91精品婷婷国产综合久久竹菊| 欧美视频在线第3页| 插欧洲美女欧美精品| 黄色激情电影在线观看| 很很操在线| 国产乱码久久久| 夜夜嗨免费视频| 色哟哟1区2区| 亚洲国内精品成人不卡| 久久99手机免费视频| 青青青操| 91日日| 国产精品久久久视频| 精品国产乱码久久久久久影片| 性爱综合网| 97色色色| 色女女女导航| 日本一二区免费| 嗯嗯嗯嗯啊啊啊好紧好大| 一区二区三区精品黑丝白丝酒店对鸡| 91超级碰| 亚洲图片欧美日韩| 国产高清1234区| 亚洲国产欧美日韩人妻日中文| 992这里有精品| 麻豆久久久一区二区| 婷婷色综合| 六十路日本| 夜夜爽33333| 殴美牲| 99re不伦| 91精品婷婷国产综合久久竹菊| 97天天操天天干| a片亚洲一本通视频| 九九免费影片| 我想要啊 啊 啊| 国产精品农村妇女精品| 外站AV在线| 20cm女自慰在线日韩欧美| 成人情色综合网| 欧美色乱| 影视综合无码少妇| 丰满人妻大屁一区二区| 9九九九九视频在线观看| 99re这里只有精品3| 欧日韩不卡视.频| 欧美第一页性| 亚洲图片 激情小说| 四虎影视国产精品| 老司机午夜精品视频| 成人精品一区二区91毛片不卡| 黑人精品XXX一区一二区| ..日韩av毛片精品久久久| 99久久婷婷国产综合| www99热| 高凊专区人人操| 中文字幕乱偷人妻久久艾草网| 久9爱精品| 1000部熟女视频在线观看| 中文字幕一区电影在线观看| 精品久久久久久亚洲| 91女网站| 欧美最婬乱婬爆婬牲视频| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 国内亚洲精彩视频在线| 麻豆人妻精品一区二区| 精品无码久久久久| 一区二区三区视频| 在线国产一区二区av| 性色avv| 欧美色图自拍| 免费看黄片现成| 国产一区二区精品久久99| 日本 成 人 小说 电影 一区二区| 欧美亚洲成人在线一区二区三区| 好吊色综合| 久操com| 116美女午夜| 蜜臀久久99精品久久久久电影| 无码不卡八戒| 欧美日不卡| 欧美综合亚洲| www.99中文字幕| 超碰爽人妻熟女Av| 精品欧美乱码久| 国产呦精品一区二区三区下载| 熟妇一区二区三区| 精品人妻一区二区免费蜜桃视频| 色久桃花影院在线观看| 久久久久久午夜男人的天堂| 99久在线精品99re8| 国产高清免费不卡av| 亚洲狼狼干综合1| 久久久亚洲| 色九月婷婷| 青青草一本道福利视频| 青娱乐久久艹| 加勒比久久av| 日本一区二区做爱的视频| 亚洲中文字幕乱码无码一区二区| 啊啊啊操死我| 国产亚洲人妻综合日韩 久久| 330Dv国产女人终合视频极品人与兽| 国产精品操| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 欧美日韩中文字幕不卡| 天天躁日日躁AAAXX| julia ann久久| 国语av最新自产拍在线观看| 亚洲天堂资源| 99热在线观看| 九九九九九九精品| 伊人AAA| 欧美日韩资源| 国内精品久久国产,www香蕉久久五月丁香,亚洲欧美日韩精品永久在线,日本精品一 | 精品国产无码中文| 久久同城AV| 国产免费久久久久| 久久伊人影院| 日韩国产十八禁| 亚洲欧洲综合成人av一区| 国产吹潮女在线观看| 久久精彩免费视频| 国产性爱强奸乱伦大全| 少妇500双飞99| 操B在线观看| 亚洲天堂另类| 黄色大香焦1级‘′‘| 久操视频在线| 任我爽视频在线观看| 欧美性爱日韩高清| 熟妇高潮二区三区| 亚洲nv男人的天堂网| 无码高清操逼网址| 欧美激情精品久久久久久| 婷婷色一区| 精品一区二区综合熟妇| 欧美肥臀在线| m欧洲一级午老| 天天做天天爱天天爽| 日本一级真人黄色性爱视频| 国产一区二区精品在线视频| 日韩精品99999| 午夜爽爽爽在线观看永久入口姬片| 992大香蕉| 国产传媒日本欧美专区| 欧美日韩成人在线| 黄视频免费| 免费视频97| 天天干夜夜| 宅男91视频在线播放| 福利在线黄片| 精品日韩人妻视频| 久久久久久久| 久草老司机| 嗯嗯啊啊啊好舒服| 中文字幕 码 自拍 视频 区| 天天干天天燥| 欧美96交| 男人的天堂2018.| 欧美精品自慰系列寂寞少妇| 午夜视频黄| 九九久久玖玖| av日韩中文字幕| 九九九九九用不成了| 啊好大好舒服| 色九九综合| 国产日韩欧美三级片| 五月情色天| 婷婷人妻激情| 97视频在线观看网站| 亚洲乱色视频一区、二区在线| 操逼日韩无码| 亚洲91在线播放影院| 操碰97| 欧美91精品国产自产| 久久久久深夜无码| 九九亚洲色在线观看| 欧美激情色婷婷花野真衣一区二区| 日韩乱码Av| 99re9在线| 九九色精品| 狠狠综合网| 国产67194| 色综合久| 久久99网站| 九九热精品| 色婷婷亚洲婷婷| 色老汉玖玖爱| 日本特黄f c2| 久操B网| 99热亚洲天堂| 青青草九九九九九| 亚洲 图片 欧美 色图| 青青草在线视频人人想人人上| 9 9精品一区二区三区| 亚州国产精品乱| 五月综合久久| 天天日少妇逼AV| 精品视频123区小说区| 偷拍欧美综合| 青青爽| 蜜臀AV一区二区三区激情综合| 人妻精品4K4K4K4K4| 一区,二区,三区网站| 啊好大好舒服| 欧美乱妇狂野欧美在线视频| 偷拍色图| 亚洲久久东京热一二三四五区视频| 毛片99-全集电影手机免费观看完整-B029AV | 曰韩av中文字幕专区| 天天日天天操心| 女人的久久久| 蜜桃久久久久久久久久久久| 伊人在线大香蕉视频久久| 99蜜月精品久久| 亚洲图片欧美| 亚欧美色| 国产97在线 | 亚洲| 日韩欧美性吧婷婷乱伦大香蕉| 玖玖爱在线视频免费观看| 一级二级三级黑人无码| 天天色,天天干,天天干| 99热啪啪| 老女人碰碰在线碰碰视频| www. 男人天堂成人在线| 黄页| 欧美亚洲色图另类国产| 亚欧国产无码精品在线| 看黑人AV不卡| 玖玖大干人妻| 午夜精品久久久| 嫩草影院性色| 伊人天堂在线| 941超碰| 日韩免费簧片| 久久6热视频免费观看| 久久久久久久久久久97| 国产97综合| 中出91视频| 国产精品com| 国产不卡免费在线视频| 日本99视频| 东北老女人的激情视频| 91精品婷婷国产综合久久| 婷婷丁香人妻 | 欧美97av| 日韩激情小说一区二区| 人妻久久久| 亚欧美综合| 亚洲成人性爱网站在线播放| 翔田千里av一区二区三区| 中文字幕精品久久久久人妻红杏ⅰ| 国产97亚洲| 操B在线观看| 极品粉嫩少妇视频| 97久久久| 99热99色| 乱操9999| 日韩图区 偷拍| 99re95| 天天澡天天爽日日AV| 黄色小视频日本txt| 久久日本熟女精品一区| 天天视频黄| 在线 制服丝袜中出 人妻| 亚洲天堂少妇| 黄片免费看黄片免费看| 色眯眯射| 以及麻豆国产入口在线观看免费| 欧洲天天在线| 色爱天堂| 婷婷97| 美女t无毒不卡不卡| 婷婷去俺也去六月色| 一区二区 电影 亚洲| 午夜啪| 麻豆天美国美国产AV| 香蕉精品二区二区| 韩国午夜理伦三级好看| 色爱欲亚洲| 99re热有精品视频国产| 亚洲天堂无码| 超碰天天去日穴| 久操不卡视频| 国产精品丝袜久久亚洲不卡| 精品高清一区二区三区三州| 国产精品丝袜久久亚洲不卡| 日本黄色精品专区网站| 欧亚第一综合网| 国产精品ⅴ无码大片在线看.| 7月婷婷综合| 中文色综合| 久久亚洲色图中文字幕| 国产中文大片资源中文字幕| 亚州春色| 18禁超污无遮挡无码免费网| 综合久久99亚洲人妻中文在线| 午夜爽爽爽在线观看永久入口姬片| 97超色| 久久一区二区三区入口| 成人青青草原伊人| 中文字幕黑人大片| 啊啊啊好想要| 日本五十路在线| 成人性爱全视频观看| 少妇内射视频| 操操碰| 日韩日本欧美在线观看| 亚州精品丝袜-不卡成人免费| 国产一区免费午夜视频| 精久久久| 99九九久久| 久久久性| 久久人妻无码毛片A片麻豆| 亚洲国产精品成人无码久久久 | 成人性爱AV在线免费观看| 日本熟妇色熟妇在线视频播放| 国产版a级片直播在线| 综合色欧美| 亚洲妇色| 五月丁香| 久久久9999| 99国内熟女露脸视频| 男人天堂一区二区| 98久久| 熟女91网| 久热久一区二区三区| 欧美成人四级在线播放| 欧美丝袜中文字幕07在线| 青青草亚洲一区| 日韩卡一卡二卡三在线| 大香蕉欧美| 九九九九九九免费视频| 激情五月婷婷| 欧美成人性爱视频免费观看 | 久久天堂| 午夜福利 成人 91| 97超碰jingpin| 中日亚韩免费视频| 韩国三级色呦呦| 啊啊啊啊啊好舒服视频| 麻豆天美国美国产| 无遮挡h肉动漫在线观看| 免费啪啪av| 97中文热色| 99这里都是精品| 美女大乳久久久久久久女人18| 久久‘黄片视频| 免费?级毛片无码?∨蜜芽试看| 国产精品乱码久久| 色悠久久久av| 妇人噜噜| 国产性感在线观看| 99热欧美| 亚洲精品aa久久伊人| 亚洲国产ⅴ高清在线观看| 美女性91| 国产尤物在线三区| 91激情综合| 一区久久久二区| 五月丁香久久| 任你爽视频| 日欧操屄| 国内毛片欧美香蕉精品| 校园春色五月天| 好看的久久不射无码影视影院| 激情小说五月天| 美女一区二区国产精品| 亚洲小说视频| 97在线欧洲| 中文字幕在线播放2中文字幕在线观看2| 超碰成人人人爽人人爽| 精品福利| 91天天看| 国产h小视频在线观看免费| 欧美亚洲系列| 青女偷拍网| 国产精品白丝www| 亚州Av天美传媒| 欧美日韩美女精品久草一区二区三区 | 图色综合网| 天天爽爽爽爽| 欧美性天天影视| 九九精品美女高溯喷水| 人人摸人人干| 亚洲另类综合欧美| 蜜桃成人1区2区3区| 国产精品久久久久久久毛片1| 欧美日韩日产免费网站看| 亚洲囯产精品女人久久久| 国产人伦a片信息免费片| 特级特黄一级毛片免费| 亚洲第一精品在线视频| 国岛片视频| 精品偷拍13p欧美dodk视频| 大香蕉专区| 极品尤物在线观看| 巨爆乳肉感一区二区三区竹菊影视 | 青青草九九九九九| 熟女中出视频| 日本免费一区二区不卡| 69久久| 亚洲性高潮| 色网站导航大全| 熟女乱伦A| 久久一级无码精品毛片6| AV九九| 九九久久久九九| 91人妻视频| 亚洲熟女少妇免费视频| 亚洲色电影在线| 国产高清午夜成人在线观看| 无码免费在线观看黄色片| 日韩性爱免费视频在线网站| 色婷婷五月天| 97午夜剧场日韩| 国产专区路线| 日韩国产十八禁| h色99999| 亚洲影视高清三级-草1024榴社区入口-品爱AV | 日本熟女免费視颖| 97国产高清视频在线观看| www.夜夜操| 麻豆国产成人精品| 大香网伊人久久综合网eew| 亚洲美腿丝袜香蕉影视欧美成人| 国产捆绑一区| 欧美性爱一级操| 婷婷综合五月天| 亚洲欧美日产国产91毛片| 欧美色91| 日本孕妇一区二区视频操逼免费看 | 国产四虎在线| 青青草女人天天干| 91一区二区三区蜜桃| WWW操逼| 五月婷视频| 久久精品99久久久久久| 日韩欧美加勒比| 无码日韩人妻av一| 抽查国产福利主播| 东京热,男人的天堂| 午夜激情成人在线观看| 女人高潮大叫一级毛片| 九草在线大香蕉| 久久久久九九九| 欧亚性爱啪啪| 国产精品91ai| 超碰成人人人爽人人爽| 小情侣高清国产在线视频| 久久日韩毛| 日本2020一区二区| 国产亚洲精品农村妇女| www.久久| 欧美激情久| 欧美日韩性爱电影在线| 国产精品久久发布| 日韩欧美~中文字| 亚洲午夜福利在线影院| 天天影视亚洲| 国产大学生口爆吞精合集| 欧美成人9797| 国产欧美另类久久久精品课程| 亚洲中文日韩欧美大香蕉视频| 免费人人搞97| 亚洲天天更新| 婷婷五月天成人| 91欧美www| 人人看人人摸人人色| 综合网久久| 无码免费在线观看黄色片| 1024亚洲中文字幕久在线看片你懂的 | 天美传媒AV国产在线| 热99re69精品8在线播放| 人妻乱仑一区二区三区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 九九九草| 最新中文字幕精品在线| 精品国产网站| 精品人妻av区天天看片| 亚洲色偷偷色噜噜狠狠99网| 九久9精品| 蜜桃久久综合视频| 国产sv美女内射| 天天天天干| 七月丁香婷婷| 伊人国产av| 国语对白露脸XXXXXX| 午夜天堂网| 吖在线不卡一区二区国产剧情| 99啪啪| 日本1区2区不卡视频| www.91色综合| 日本二三四区| 国产成人网| 啊啊啊啊啊啊啊啊在线观看| 青青草九九九九九| 日本性爱视频一级| 丝袜性亚洲| 91丨豆花丨熟女| 欧美青青草视频| 中文字幕 码精品视频网站| 青青久久久| 亚洲高潮少妇| 日韩免费簧片| 亚洲天堂日本| 欧美日韩性爱无码| 97亚洲色图| 欧美综合加勒比在线| 又大又长又粗又爽又黄| 99啪啪视频| 思思热er精品视频| 精品国产乱码久久久| 国产视频一区二区在线| 操逼视频色| 亚洲色图第四色| 精品超碰中文在线| 隔壁邻居波多野结衣中文字幕 | 亚洲清纯综合| 国产精品熟女AV中文字幕在线播放| 草草草视频在线免费看| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 91夜色| 亚洲图片 激情小说| 国产亚洲色婷婷久久99精品91葵花宝典 | 亚洲av资源| 亚洲精品丝袜| 色官网在线| 精品国模无码| 208天天久久九九九| 人妻天天夜夜爽一区二区| 国产成年精品高清在线观看91| 啊啊啊啊啊啊啊国| 天天澡天天爽日日AV| 精品色色| 亚洲瓯美色图| www久| 久操操AV电影| 唯美清纯 妖精视频| 欧美内射少妇| 激情四射五月天| 777琪琪午夜免费A片| 人妻精品一区二区三区| 色综合色欲色综合色综合色综合| 84YTCOM性无码| 国产后入式在线观看| 97爱b| 在线中文字幕极品av| 伊人国产成人av网站| 欧美天天影院| 人人妻人人色| 97人人草| 99视频这有这里有精品| 久久伦理视频久久大香蕉视频| 1769精品一区二区三区| 国产真实子伦对白| 欧美亚洲高清不卡| 黑丝少妇在线观看| 93人人操人人| 日韩色| 亚洲一本色码中文字幕| 欧美拳交在线播放| 特级毛片特黄久久免费看| 91人人爽人人爽人人人,gav福利视频导航,日韩欧美亚洲国产字幕四区 | 九九九九精品视频| 久久九操在线观看| 精品亚洲俞拍视频一区| 色性欧美| 777奇米影视777四色| 国产啊v在线免费播放| 操国产逼| 欧美亚洲情色| 97天天弄| 亚州久久9| 色盈盈影院| 亚洲棕合电彰| 日本一区二区三区精品| 91chinese在线| 一区二区三区激情在线观看| 亚洲成人日韩小说| 免费观看国产小粉嫩喷水精品午| 欧美啪啪色吧在线| 97chaopengongkai| 99热婷婷一区二区三| 久夜操| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 开心婷婷五月| 婷婷午夜| 91国产精品在线看| 大奶啊啊好爽| 99熟女| 日韩精品区二区三区不卡| 99这里只有精品| 日韩乱码Av| 女人被添高潮免费视频| 91精品丝袜久久久久久| 99综合免费视频| 国产后入精品| 97超碰无码网| 久久免费看高潮毛片韩国| 男人天堂久久日韩|