国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

嵌入式開(kāi)發(fā)燒錄調(diào)試全鏈路:從SWD到量產(chǎn)方案實(shí)戰(zhàn)指南

嵌入式開(kāi)發(fā)燒錄調(diào)試全鏈路:從SWD到量產(chǎn)方案實(shí)戰(zhàn)指南 嵌入式開(kāi)發(fā)這行干久了你會(huì)發(fā)現(xiàn)一個(gè)很有意思的現(xiàn)象寫(xiě)代碼的時(shí)間可能只占整個(gè)項(xiàng)目周期的三成剩下七成全耗在怎么把代碼弄進(jìn)板子里和弄進(jìn)去之后為什么不跑這兩件事上。尤其是剛?cè)胄械念^一兩年編譯通過(guò)那一刻的喜悅往往會(huì)被燒錄失敗的紅色報(bào)錯(cuò)瞬間澆滅。我見(jiàn)過(guò)太多人卡在Keil里編譯零錯(cuò)誤零警告點(diǎn)下載就是連不上目標(biāo)這種問(wèn)題上一卡就是一整天最后發(fā)現(xiàn)是調(diào)試器驅(qū)動(dòng)沒(méi)裝對(duì)或者復(fù)位模式選錯(cuò)了。這篇內(nèi)容我想把嵌入式開(kāi)發(fā)里燒錄、下載、仿真、調(diào)試這條鏈路徹底講透。不管你是剛拿到第一塊STM32開(kāi)發(fā)板的新手還是已經(jīng)用過(guò)J-Link、ST-Link、串口ISP多種方式的老手我都會(huì)從工具選型、接口原理、實(shí)操步驟、常見(jiàn)故障排查幾個(gè)維度展開(kāi)把那些文檔里不會(huì)寫(xiě)、但實(shí)際項(xiàng)目中一定會(huì)遇到的坑一個(gè)個(gè)拆開(kāi)講。核心關(guān)鍵詞就四個(gè)嵌入式軟件開(kāi)發(fā)、燒錄、仿真調(diào)試、工具。讀完你至少能搞清楚為什么有的板子用ST-Link能燒、用J-Link就不行為什么串口燒錄有時(shí)候要按住BOOT0有時(shí)候不用為什么仿真器能連上但一燒錄就報(bào)Flash Download failed。1. 燒錄這件事本質(zhì)上是三條物理鏈路在打架很多人把燒錄當(dāng)成一個(gè)動(dòng)作其實(shí)它背后至少涉及三條不同的物理鏈路搞清楚這三條鏈路的區(qū)別后面80%的故障你都能自己定位。1.1 調(diào)試接口鏈路SWD和JTAG到底差在哪SWDSerial Wire Debug和JTAG是ARM Cortex-M系列最常用的兩種調(diào)試接口。JTAG歷史更久標(biāo)準(zhǔn)是5根線(xiàn)TCK、TMS、TDI、TDO、TRST后來(lái)ARM把它精簡(jiǎn)成了SWD只用兩根線(xiàn)SWCLK和SWDIO就能實(shí)現(xiàn)同樣的調(diào)試和燒錄功能。為什么現(xiàn)在絕大多數(shù)項(xiàng)目都用SWD原因很直接引腳少。一個(gè)48腳的MCUJTAG占掉5個(gè)引腳SWD只占2個(gè)省下來(lái)的引腳可以拿去做GPIO或者接外設(shè)。而且SWD在高速下比JTAG更穩(wěn)定布線(xiàn)也簡(jiǎn)單兩根線(xiàn)走等長(zhǎng)就行。但SWD有個(gè)坑它和JTAG共用引腳。如果你在代碼里把SWCLK和SWDIO配置成了普通GPIO或者初始化成了其他復(fù)用功能那下次燒錄時(shí)調(diào)試器就找不到芯片了。這種情況我遇到過(guò)不止一次尤其是新手在寫(xiě)GPIO初始化的時(shí)候一不小心把PA13和PA14STM32的SWD引腳給重映射了結(jié)果就是芯片被鎖死只能用串口ISP或者BOOT0拉高的方式救回來(lái)。提示寫(xiě)GPIO初始化代碼時(shí)永遠(yuǎn)不要?jiǎng)覲A13SWDIO和PA14SWCLK除非你確定這個(gè)項(xiàng)目不再需要SWD調(diào)試。1.2 串口ISP鏈路為什么有時(shí)候要按住BOOT0串口ISPIn-System Programming是另一種常見(jiàn)的燒錄方式尤其在沒(méi)有調(diào)試器的情況下。它的原理是MCU內(nèi)部有一段出廠(chǎng)固化的Bootloader上電時(shí)會(huì)檢測(cè)BOOT0引腳的電平如果BOOT0為高電平就從系統(tǒng)存儲(chǔ)器啟動(dòng)執(zhí)行那段Bootloader等待串口發(fā)送固件數(shù)據(jù)。這就是為什么很多教程讓你按住BOOT0再按復(fù)位——目的是讓MCU進(jìn)入Bootloader模式。但有些板子不用按也能燒原因是它的BOOT0引腳通過(guò)電阻默認(rèn)拉高了或者電路設(shè)計(jì)上做了自動(dòng)控制。串口ISP的波特率選擇也有講究。STM32的出廠(chǎng)Bootloader對(duì)波特率容忍度比較高但也不是隨便設(shè)。我實(shí)測(cè)下來(lái)115200是最穩(wěn)的再高比如460800或者921600有些型號(hào)的Bootloader會(huì)丟包。如果你用的是CH340或者CP2102這類(lèi)USB轉(zhuǎn)串口芯片還要注意驅(qū)動(dòng)版本老版本驅(qū)動(dòng)在Win10/Win11上會(huì)出現(xiàn)串口打開(kāi)失敗或者燒錄到一半卡死的問(wèn)題。1.3 USB DFU鏈路被低估的燒錄方式USB DFUDevice Firmware Upgrade是STM32另一條燒錄路徑通過(guò)USB接口直接燒錄不需要額外的調(diào)試器。它的優(yōu)勢(shì)是速度快USB全速模式下能到1MB/s以上比串口ISP快得多。但缺點(diǎn)是進(jìn)入DFU模式的條件比較苛刻通常需要BOOT0拉高并且USB線(xiàn)接在特定的USB口上。DFU燒錄工具推薦用STM32CubeProgrammer它同時(shí)支持SWD、串口ISP、USB DFU、OTA等多種方式界面統(tǒng)一比早期的Flash Loader Demonstrator好用太多。而且它跨平臺(tái)Windows、Linux、macOS都能跑。燒錄方式所需硬件典型速度適用場(chǎng)景SWDST-Link/J-Link/DAPLink50-200KB/s日常開(kāi)發(fā)調(diào)試JTAGJ-Link/專(zhuān)用仿真器50-150KB/s多核調(diào)試、老芯片串口ISPUSB轉(zhuǎn)串口模塊10-50KB/s無(wú)調(diào)試器、量產(chǎn)USB DFUUSB線(xiàn)500KB-1MB/s快速燒錄、現(xiàn)場(chǎng)升級(jí)OTA無(wú)線(xiàn)模塊取決于網(wǎng)絡(luò)遠(yuǎn)程升級(jí)、已部署設(shè)備2. 調(diào)試器選型ST-Link、J-Link、DAPLink的真實(shí)差距調(diào)試器這東西便宜的十幾塊貴的上千塊差距到底在哪我用過(guò)市面上主流的幾種說(shuō)說(shuō)實(shí)際感受。2.1 ST-LinkSTM32開(kāi)發(fā)者的默認(rèn)選擇ST-Link是ST官方出的調(diào)試器原廠(chǎng)版本價(jià)格在100-200元之間淘寶上的山寨版只要20-30塊。山寨版能用嗎能用但有幾個(gè)問(wèn)題一是固件版本老不支持新出的STM32型號(hào)二是沒(méi)有隔離保護(hù)熱插拔容易燒三是SWD時(shí)序有偏差長(zhǎng)排線(xiàn)時(shí)容易連不上。原廠(chǎng)ST-Link V3有個(gè)很實(shí)用的功能虛擬串口。它把調(diào)試和串口二合一一根USB線(xiàn)搞定燒錄和串口打印桌面能清爽不少。V3還支持更高的SWD時(shí)鐘頻率燒大固件時(shí)能明顯感覺(jué)到速度差異。ST-Link的驅(qū)動(dòng)安裝是個(gè)老生常談的問(wèn)題。Windows 10之后系統(tǒng)會(huì)自動(dòng)裝一個(gè)通用驅(qū)動(dòng)但這個(gè)驅(qū)動(dòng)有時(shí)候和Keil、IAR配合不好表現(xiàn)為設(shè)備管理器里能看到ST-Link但I(xiàn)DE里就是連不上。解決辦法是手動(dòng)安裝ST官方驅(qū)動(dòng)或者用STM32CubeProgrammer先連一次它會(huì)自動(dòng)修復(fù)驅(qū)動(dòng)。2.2 J-Link貴有貴的道理J-Link是SEGGER出的原廠(chǎng)版本從幾百到幾千不等。它的優(yōu)勢(shì)在于支持芯片型號(hào)極多幾乎涵蓋所有ARM內(nèi)核MCU、燒錄速度快、固件更新勤、配套軟件J-Flash功能強(qiáng)大。J-Link有個(gè)OB版本On-Board是集成在開(kāi)發(fā)板上的簡(jiǎn)化版功能受限不能調(diào)試非授權(quán)芯片。如果你買(mǎi)的是淘寶上的J-Link OB要注意它可能只支持特定廠(chǎng)商的芯片換個(gè)品牌的板子就用不了。J-Link最讓我滿(mǎn)意的是它的RTTReal Time Transfer功能。傳統(tǒng)調(diào)試要看變量得停下來(lái)設(shè)斷點(diǎn)RTT可以在不中斷程序運(yùn)行的情況下打印日志速度比串口快幾個(gè)數(shù)量級(jí)。對(duì)于調(diào)試時(shí)序敏感的代碼這個(gè)功能簡(jiǎn)直是救命稻草。2.3 DAPLink開(kāi)源方案里的性?xún)r(jià)比之王DAPLink是ARM官方開(kāi)源的項(xiàng)目國(guó)內(nèi)很多開(kāi)發(fā)板比如正點(diǎn)原子、野火板載的調(diào)試器就是基于DAPLink做的。它的優(yōu)點(diǎn)是開(kāi)源、便宜、支持拖拽燒錄把固件拖到虛擬U盤(pán)里就完成燒錄。拖拽燒錄這個(gè)功能對(duì)新手特別友好不需要裝任何IDE把hex文件拖進(jìn)去就行。但缺點(diǎn)是速度慢而且不支持復(fù)雜的調(diào)試功能比如實(shí)時(shí)變量監(jiān)控、斷點(diǎn)條件設(shè)置等。DAPLink還有個(gè)隱藏問(wèn)題不同廠(chǎng)商的DAPLink固件版本差異很大有的支持SWD串口U盤(pán)三合一有的只有SWD。買(mǎi)之前一定要看清楚說(shuō)明。注意無(wú)論用哪種調(diào)試器SWDIO和SWCLK的排線(xiàn)盡量短最好在10cm以?xún)?nèi)。排線(xiàn)過(guò)長(zhǎng)會(huì)導(dǎo)致信號(hào)反射表現(xiàn)為有時(shí)能連上有時(shí)連不上這種間歇性故障最難排查。3. Keil環(huán)境下燒錄失敗的完整排查鏈路Keil里編譯成功卻怎么也燒錄不進(jìn)開(kāi)發(fā)板——這個(gè)問(wèn)題在搜索引擎里的搜索量常年居高不下。我把自己踩過(guò)的坑和幫別人排查的經(jīng)驗(yàn)整理成一條完整的排查鏈路按順序走一遍基本能覆蓋95%的情況。3.1 第一步確認(rèn)調(diào)試器本身是否被識(shí)別打開(kāi)設(shè)備管理器看調(diào)試器有沒(méi)有出現(xiàn)在通用串行總線(xiàn)設(shè)備或者端口下面。如果出現(xiàn)黃色感嘆號(hào)說(shuō)明驅(qū)動(dòng)有問(wèn)題。ST-Link需要裝ST-Link USB driverJ-Link需要裝J-Link driverDAPLink通常是免驅(qū)的HID設(shè)備。如果設(shè)備管理器里根本看不到調(diào)試器先換一根USB線(xiàn)。我遇到過(guò)好幾次問(wèn)題出在USB線(xiàn)只供電不傳數(shù)據(jù)。特別是那種很細(xì)的充電線(xiàn)十有八九沒(méi)有數(shù)據(jù)線(xiàn)芯。3.2 第二步確認(rèn)Keil里的調(diào)試器配置打開(kāi)Options for Target - Debug確認(rèn)選的是正確的調(diào)試器。這里有個(gè)容易忽略的點(diǎn)Keil里選的是ST-Link Debugger但旁邊的Settings里還要再選一次具體的調(diào)試器型號(hào)和接口SWD還是JTAG。我見(jiàn)過(guò)有人Debug頁(yè)選對(duì)了但Settings里Port選的是JTAG而板子上只接了SWD線(xiàn)自然連不上。Settings里的Reset選項(xiàng)也很關(guān)鍵。默認(rèn)是Normal但有些板子需要改成Connect under Reset才能連上。什么時(shí)候需要改當(dāng)你的代碼一上電就把SWD引腳復(fù)用成其他功能時(shí)調(diào)試器還沒(méi)來(lái)得及連接引腳就被搶走了。這時(shí)候用Connect under Reset調(diào)試器會(huì)先拉住復(fù)位在芯片啟動(dòng)前搶占SWD引腳。3.3 第三步檢查Flash Download配置Options for Target - Utilities - Settings這里要確認(rèn)兩件事一是Programming Algorithm里有沒(méi)有添加對(duì)應(yīng)芯片型號(hào)的Flash算法二是RAM for Algorithm的大小夠不夠。Flash算法不對(duì)是最常見(jiàn)的燒錄失敗原因之一。比如你用的是STM32F103C8T6但算法里選的是STM32F103RC的地址范圍對(duì)不上燒錄就會(huì)報(bào)Flash Download failed。Keil的算法列表里型號(hào)很多選的時(shí)候要看清楚Flash大小和頁(yè)大小。RAM for Algorithm默認(rèn)是0x10004KB對(duì)于大多數(shù)芯片夠用。但有些芯片的Flash算法需要更多RAM比如STM32H7系列可能需要改成0x2000甚至更大。如果這個(gè)值設(shè)小了燒錄時(shí)會(huì)報(bào)Algorithm RAM overflow。3.4 第四步排查芯片讀寫(xiě)保護(hù)如果前面三步都沒(méi)問(wèn)題但燒錄還是失敗很可能是芯片被讀了保護(hù)或者寫(xiě)了保護(hù)。STM32的讀保護(hù)RDP一旦開(kāi)啟調(diào)試器就無(wú)法通過(guò)SWD讀取Flash內(nèi)容燒錄也會(huì)被拒絕。解除讀保護(hù)的方法用STM32CubeProgrammer連接芯片在Option Bytes里把RDP等級(jí)改回Level 0。注意這個(gè)操作會(huì)全片擦除芯片里的程序會(huì)丟失。寫(xiě)保護(hù)WRP則是保護(hù)特定扇區(qū)不被寫(xiě)入同樣在Option Bytes里解除。還有一種情況是芯片進(jìn)入了死鎖狀態(tài)SWD完全無(wú)響應(yīng)。這時(shí)候可以嘗試用BOOT0拉高的方式從系統(tǒng)存儲(chǔ)器啟動(dòng)然后用串口ISP或者CubeProgrammer擦除芯片恢復(fù)SWD功能。故障現(xiàn)象可能原因排查方法設(shè)備管理器無(wú)調(diào)試器USB線(xiàn)、驅(qū)動(dòng)換線(xiàn)、重裝驅(qū)動(dòng)IDE里連不上調(diào)試器端口配置、復(fù)位模式檢查SWD/JTAG選擇、改Connect under Reset能連上但燒錄失敗Flash算法、RAM大小核對(duì)芯片型號(hào)、增大RAM for Algorithm燒錄報(bào)讀寫(xiě)保護(hù)RDP/WRP開(kāi)啟CubeProgrammer解除保護(hù)間歇性連接失敗排線(xiàn)過(guò)長(zhǎng)、時(shí)鐘太快縮短排線(xiàn)、降低SWD時(shí)鐘4. 仿真調(diào)試斷點(diǎn)之外你還能做什么很多人用調(diào)試器就只會(huì)設(shè)斷點(diǎn)、單步執(zhí)行、看變量。其實(shí)仿真調(diào)試能做的事情遠(yuǎn)不止這些用好這些功能排查問(wèn)題的效率能提升好幾倍。4.1 實(shí)時(shí)變量監(jiān)控Watch窗口的正確用法Watch窗口可以添加全局變量和局部變量程序運(yùn)行時(shí)實(shí)時(shí)刷新。但有個(gè)限制如果變量被編譯器優(yōu)化掉了比如加了volatile但沒(méi)實(shí)際使用Watch窗口里會(huì)顯示cannot evaluate。解決辦法是把優(yōu)化等級(jí)調(diào)低或者在變量定義前加volatile關(guān)鍵字。對(duì)于結(jié)構(gòu)體變量Watch窗口支持展開(kāi)查看每個(gè)成員。如果結(jié)構(gòu)體指針指向的是動(dòng)態(tài)分配的內(nèi)存需要先確認(rèn)指針本身有效否則展開(kāi)會(huì)報(bào)錯(cuò)。4.2 邏輯分析儀功能SWO和ETMSWOSerial Wire Output是SWD接口的第三根線(xiàn)可選可以輸出printf調(diào)試信息不需要占用串口。配置方法是在Keil的Debug - Settings - Trace里使能Trace設(shè)置Core Clock頻率然后在代碼里重定向printf到ITM_SendChar。ETMEmbedded Trace Macrocell是更高級(jí)的指令級(jí)追蹤能記錄程序執(zhí)行的每一條指令但需要芯片支持且調(diào)試器有對(duì)應(yīng)引腳。J-Link的高端型號(hào)支持ETMST-Link不支持。SWO的波特率設(shè)置要和Core Clock匹配否則輸出的都是亂碼。一般來(lái)說(shuō)SWO時(shí)鐘是Core Clock的1/4或者1/2具體看芯片手冊(cè)。4.3 條件斷點(diǎn)和數(shù)據(jù)斷點(diǎn)條件斷點(diǎn)是指滿(mǎn)足特定條件時(shí)才觸發(fā)的斷點(diǎn)比如當(dāng)i等于100時(shí)停下。在Keil里右鍵斷點(diǎn) - Condition輸入條件表達(dá)式即可。這個(gè)功能在排查數(shù)組越界、循環(huán)異常時(shí)特別有用。數(shù)據(jù)斷點(diǎn)Data Watchpoint是指當(dāng)某個(gè)內(nèi)存地址被讀寫(xiě)時(shí)觸發(fā)斷點(diǎn)。比如你懷疑某個(gè)指針被意外修改了可以對(duì)這個(gè)指針變量設(shè)數(shù)據(jù)斷點(diǎn)一旦它被寫(xiě)入就停下來(lái)直接定位到修改它的代碼行。數(shù)據(jù)斷點(diǎn)的數(shù)量有限Cortex-M3/M4通常只支持2-4個(gè)用的時(shí)候要省著點(diǎn)。4.4 寄存器查看和修改Debug - View - Registers可以查看CPU寄存器和外設(shè)寄存器的當(dāng)前值。外設(shè)寄存器是按模塊分組的比如GPIOA、USART1、TIM2等展開(kāi)就能看到每個(gè)寄存器的每一位。這個(gè)功能在排查外設(shè)不工作時(shí)特別有用。比如串口發(fā)不出數(shù)據(jù)先看USART1的CR1寄存器TXE和TC位有沒(méi)有置起來(lái)如果TXE一直是0說(shuō)明發(fā)送數(shù)據(jù)寄存器滿(mǎn)了可能是波特率配置不對(duì)或者時(shí)鐘沒(méi)使能。寄存器不僅可以看還可以直接修改。比如你想臨時(shí)把某個(gè)GPIO拉高直接在寄存器窗口里改ODR對(duì)應(yīng)的位就行不用重新編譯燒錄。這個(gè)技巧在硬件調(diào)試階段非常實(shí)用。5. 那些年我踩過(guò)的燒錄坑有些問(wèn)題文檔里不會(huì)寫(xiě)教程里不會(huì)講只有真正踩過(guò)才知道。這一章我把自己和身邊同事遇到過(guò)的典型坑整理出來(lái)希望能幫你省下幾個(gè)通宵。5.1 國(guó)產(chǎn)替代芯片的燒錄兼容性問(wèn)題這兩年國(guó)產(chǎn)MCU越來(lái)越多很多是Pin-to-Pin兼容STM32的。但兼容歸兼容燒錄環(huán)節(jié)經(jīng)常出問(wèn)題。我遇到過(guò)一款國(guó)產(chǎn)芯片用ST-Link能識(shí)別ID但燒錄到一半就報(bào)錯(cuò)換J-Link就正常。后來(lái)查資料發(fā)現(xiàn)這款芯片的Flash編程時(shí)序和STM32有細(xì)微差異ST-Link的固件沒(méi)有適配。還有的國(guó)產(chǎn)芯片Keil的器件支持包DFP里沒(méi)有對(duì)應(yīng)的Flash算法需要手動(dòng)添加廠(chǎng)商提供的算法文件。這個(gè)文件通常在廠(chǎng)商的SDK包里文件名類(lèi)似xxx_FLASH.FLM把它復(fù)制到Keil的ARM/Flash目錄下然后在Utilities里手動(dòng)添加。提示用國(guó)產(chǎn)芯片時(shí)優(yōu)先用廠(chǎng)商推薦的調(diào)試器和燒錄工具。很多廠(chǎng)商有自己的IDE或者燒錄軟件雖然界面丑但兼容性最好。5.2 低功耗模式下的燒錄失敗如果你的代碼里進(jìn)了Stop模式或者Standby模式調(diào)試器可能連不上芯片。因?yàn)榈凸哪J较耂WD引腳可能被關(guān)閉或者時(shí)鐘被停掉了。解決辦法有兩個(gè)一是用Connect under Reset讓調(diào)試器在芯片進(jìn)入低功耗之前搶占二是在代碼里加一個(gè)延時(shí)上電后先等幾秒再進(jìn)低功耗給調(diào)試器留出連接窗口。Standby模式更麻煩退出Standby相當(dāng)于一次復(fù)位所有RAM內(nèi)容丟失調(diào)試器也會(huì)斷開(kāi)。調(diào)試Standby模式下的代碼通常只能靠串口打印或者GPIO翻轉(zhuǎn)來(lái)觀(guān)察狀態(tài)。5.3 多芯片共用一個(gè)調(diào)試器有些項(xiàng)目一塊板子上有兩顆MCU比如一顆主控加一顆協(xié)處理。如果兩顆芯片的SWD線(xiàn)并聯(lián)在一起調(diào)試器會(huì)同時(shí)看到兩個(gè)ID導(dǎo)致連接混亂。正確的做法是用跳線(xiàn)帽或者模擬開(kāi)關(guān)把SWD線(xiàn)分開(kāi)調(diào)試哪顆就接哪顆。或者用支持多核調(diào)試的J-Link它可以分別連接不同的核。還有一種情況是板子上有多個(gè)相同的芯片比如兩顆STM32F103。這時(shí)候即使SWD線(xiàn)分開(kāi)Keil里也要配置不同的調(diào)試目標(biāo)否則會(huì)燒錯(cuò)芯片。5.4 固件加密和讀保護(hù)的實(shí)際影響產(chǎn)品量產(chǎn)時(shí)通常會(huì)開(kāi)啟讀保護(hù)防止固件被抄。但讀保護(hù)開(kāi)啟后調(diào)試器就無(wú)法再燒錄了除非先解除保護(hù)。這就帶來(lái)一個(gè)生產(chǎn)流程上的問(wèn)題產(chǎn)線(xiàn)上燒錄完固件后開(kāi)啟讀保護(hù)后續(xù)如果發(fā)現(xiàn)bug需要返修就得先解除保護(hù)而解除保護(hù)會(huì)擦除整個(gè)Flash。所以產(chǎn)線(xiàn)通常的做法是燒錄和開(kāi)保護(hù)分兩步燒錄用一個(gè)工位開(kāi)保護(hù)用另一個(gè)工位?;蛘哂弥С譄涢_(kāi)保護(hù)一次完成的工具比如J-Flash的Production Programming功能。5.5 燒錄文件格式的選擇常見(jiàn)的固件格式有hex、bin、elf、s19等。hex和s19帶地址信息bin是純二進(jìn)制不帶地址。燒錄時(shí)如果選錯(cuò)了格式比如把bin當(dāng)hex燒會(huì)報(bào)格式錯(cuò)誤把hex當(dāng)bin燒會(huì)從0地址開(kāi)始燒但hex里可能有多個(gè)不連續(xù)的地址段導(dǎo)致燒錄不完整。elf文件帶調(diào)試信息通常用于仿真調(diào)試不適合直接燒錄。量產(chǎn)燒錄一般用hex或者binhex更通用bin更小。Motorola S-records19格式在一些老芯片或者汽車(chē)電子里還在用它的結(jié)構(gòu)和hex類(lèi)似都是文本格式帶地址和校驗(yàn)。解析s19的時(shí)候要注意它的地址長(zhǎng)度可能是2字節(jié)、3字節(jié)或4字節(jié)取決于記錄類(lèi)型S1、S2、S3。6. 從開(kāi)發(fā)到量產(chǎn)燒錄方案的演進(jìn)個(gè)人開(kāi)發(fā)和量產(chǎn)燒錄需求完全不同。個(gè)人開(kāi)發(fā)追求方便量產(chǎn)追求效率和一致性。這一章說(shuō)說(shuō)不同階段該怎么選燒錄方案。6.1 開(kāi)發(fā)階段調(diào)試器IDE開(kāi)發(fā)階段最方便的就是調(diào)試器直接連IDE點(diǎn)一下下載按鈕就完成。Keil、IAR、STM32CubeIDE都支持這種方式。這個(gè)階段不用太在意燒錄速度因?yàn)橐惶炜赡芤簿蜔龓资?。但要注意一點(diǎn)開(kāi)發(fā)階段最好把讀保護(hù)關(guān)掉否則每次燒錄都要先擦除浪費(fèi)時(shí)間。等產(chǎn)品定型了再開(kāi)保護(hù)。6.2 小批量試產(chǎn)脫機(jī)燒錄器小批量試產(chǎn)幾十到幾百片的時(shí)候用電腦調(diào)試器的方式就有點(diǎn)慢了。這時(shí)候可以用脫機(jī)燒錄器比如J-Link的脫機(jī)模式或者專(zhuān)門(mén)的量產(chǎn)燒錄器。脫機(jī)燒錄器的原理是先把固件存到燒錄器內(nèi)部然后燒錄器獨(dú)立完成燒錄不需要電腦。操作員只需要把燒錄器接到板子上按一下按鈕就行。這種方式速度快而且不容易出錯(cuò)。6.3 大批量量產(chǎn)離線(xiàn)燒錄機(jī)大批量量產(chǎn)幾千片以上通常用離線(xiàn)燒錄機(jī)可以同時(shí)燒錄多片自動(dòng)上下料。這種設(shè)備價(jià)格不菲但效率極高適合工廠(chǎng)產(chǎn)線(xiàn)。離線(xiàn)燒錄機(jī)的核心是燒錄算法和治具。治具要保證接觸可靠燒錄算法要保證速度和穩(wěn)定性。有些燒錄機(jī)還支持燒錄后自動(dòng)校驗(yàn)和打標(biāo)整個(gè)流程全自動(dòng)化。6.4 OTA升級(jí)已部署設(shè)備的更新方案產(chǎn)品已經(jīng)部署到現(xiàn)場(chǎng)了不可能再拆開(kāi)燒錄這時(shí)候就需要OTAOver-The-Air升級(jí)。OTA的原理是設(shè)備通過(guò)無(wú)線(xiàn)網(wǎng)絡(luò)下載新固件然后自己擦寫(xiě)Flash完成升級(jí)。OTA的關(guān)鍵是Bootloader的設(shè)計(jì)。Bootloader要能接收新固件、校驗(yàn)完整性、擦寫(xiě)Flash、跳轉(zhuǎn)到新程序。還要考慮升級(jí)失敗的回滾機(jī)制比如保留舊固件新固件校驗(yàn)失敗就回滾。OTA的固件包通常要加密和簽名防止被篡改。加密用AES簽名用RSA或者ECC具體看安全等級(jí)要求。階段燒錄方案單次耗時(shí)適用規(guī)模開(kāi)發(fā)調(diào)試器IDE5-30秒1-10片小批量脫機(jī)燒錄器10-60秒10-500片大批量離線(xiàn)燒錄機(jī)5-20秒/片500片以上現(xiàn)場(chǎng)升級(jí)OTA取決于網(wǎng)絡(luò)已部署設(shè)備7. 工具鏈之外的幾個(gè)實(shí)用技巧最后分享幾個(gè)和燒錄調(diào)試相關(guān)的小技巧都是實(shí)際項(xiàng)目中總結(jié)出來(lái)的不一定系統(tǒng)但都管用。7.1 用腳本自動(dòng)化燒錄流程如果你經(jīng)常需要燒錄同一個(gè)固件到多塊板子可以寫(xiě)個(gè)腳本自動(dòng)化。J-Link提供了命令行工具JLinkExe支持腳本文件。比如寫(xiě)一個(gè)燒錄腳本# JLink燒錄腳本示例 device STM32F103C8 si SWD speed 4000 connect erase loadfile firmware.hex verify reset go exit然后命令行執(zhí)行JLinkExe -CommanderScript flash.jlink就能自動(dòng)完成燒錄。STM32CubeProgrammer也支持命令行模式參數(shù)類(lèi)似。7.2 串口燒錄的自動(dòng)化串口ISP燒錄也可以用腳本自動(dòng)化。STM32CubeProgrammer的命令行版本支持串口模式STM32_Programmer_CLI -c portCOM3 br115200 -w firmware.bin 0x08000000 -v -g 0x08000000這條命令的意思是連接COM3波特率115200寫(xiě)firmware.bin到0x08000000地址校驗(yàn)然后從0x08000000開(kāi)始運(yùn)行。自動(dòng)化燒錄的好處是減少人為操作失誤而且可以集成到CI/CD流程里每次代碼提交后自動(dòng)燒錄測(cè)試。7.3 固件版本管理量產(chǎn)的時(shí)候固件版本管理很重要。建議在固件里嵌入版本號(hào)燒錄后可以通過(guò)串口或者調(diào)試接口讀出來(lái)。版本號(hào)可以放在Flash的固定地址比如0x0800FFF0燒錄腳本自動(dòng)寫(xiě)入。還有一種做法是用編譯時(shí)間作為版本號(hào)每次編譯自動(dòng)生成。這樣能保證每個(gè)固件都是唯一的方便追溯。7.4 調(diào)試引腳的復(fù)用與保護(hù)前面提過(guò)SWD引腳被復(fù)用會(huì)導(dǎo)致連不上芯片。除了代碼里注意硬件設(shè)計(jì)上也可以做保護(hù)。比如在SWDIO和SWCLK上各串一個(gè)100歐姆的電阻即使引腳被復(fù)用成推挽輸出調(diào)試器也能通過(guò)電阻強(qiáng)行拉回電平爭(zhēng)取到連接窗口。但這個(gè)電阻不能太大否則會(huì)影響SWD信號(hào)質(zhì)量。100歐姆是經(jīng)驗(yàn)值實(shí)測(cè)下來(lái)既能保護(hù)又不影響通信。7.5 備用燒錄方案產(chǎn)品設(shè)計(jì)時(shí)最好預(yù)留至少兩種燒錄方式。比如主用SWD備用串口ISP。這樣萬(wàn)一SWD引腳被鎖死還能用串口救回來(lái)。串口ISP只需要TX、RX、GND三根線(xiàn)占用引腳少硬件成本幾乎為零。如果連串口都沒(méi)預(yù)留那就只能靠BOOT0拉高USB DFU了。但DFU需要USB接口有些小設(shè)備可能沒(méi)有USB。所以最保險(xiǎn)的還是預(yù)留串口。嵌入式開(kāi)發(fā)里燒錄調(diào)試這塊說(shuō)復(fù)雜也復(fù)雜說(shuō)簡(jiǎn)單也簡(jiǎn)單。核心就是搞清楚三條鏈路SWD、串口ISP、USB DFU的原理選對(duì)工具配好參數(shù)剩下的就是遇到問(wèn)題按排查鏈路一步步走。我個(gè)人的經(jīng)驗(yàn)是90%的燒錄問(wèn)題都出在三個(gè)地方驅(qū)動(dòng)沒(méi)裝對(duì)、Flash算法選錯(cuò)了、SWD引腳被復(fù)用了。把這三個(gè)點(diǎn)記住能省下大量折騰的時(shí)間。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
日本三级久| 天天摸天天舔天天操| 人人操人人色网| 大香网伊人久久综合网eew| 最新国产亚洲精品精品国产亚洲综合| 成人一道本免费视频| 韩国毛片一区二区三区| 亚洲精品国产av天美传媒| 少妇滛荡视频| 操逼天美3区| 91殴美| 天天看特黄的免费网站| 色色国产| 色官网在线| 欧美αv.com| 中欧人妻丝袜中文字幕| 欧美体内射精| yy少妇精品久久| 超碰人人妻| 青青草天天亲夜夜操网| 嗯嗯嗯啊啊啊干死我吧| 国产夜夜艹| 欧美亚洲丝袜人妻制服99| 在线人人人人人人精品超 | 丰满岳乱妇一区二区三区| 男人天堂网址| 啊啊啊好想要| 天天看天天日| 精品午夜福利| 日韩熟女无码| 日韩乱中文| 色天使亚洲综合在线观看| V A在线| 午夜性刺激视频免费观看| 91高清欧美| 亚洲日韩狠狠撸视频| 91性| 超碰在线综合97| 精品制服美女中文一区二区三区| 久久人妻一区二区三区高清| 小草av不卡亚洲二区| 加勒比AV天堂| 97欧美色综合| 肉丝中文无码高清| 91青青| 日本三级精品| av爱爱爱| 久久精品国产亚洲AV无码做| 国内外色色色色色成人视频| 亚洲激情网一二三四区| 亚洲国产精品久久久久婷婷青年| 久久九七| 色偷偷人人玩人人舔人人操人人摸人人爽| 亚洲综合骚逼| 伊人午夜福利视频| 天天视频黄| 成全动漫视频观看免费下载| 美女极品一区二区三区| 美女被艹尤物视频| 青草视频人妻在线观看| 人妖欧美一区二区| 久久一二三级一一一| 在线啊啊啊啊| 中文有码9| 99热这里只有精品18| 国产精品美女| 岛国视频一二三区| 狠狠五月天| 97超碰色五月| 青青草国产一区二区三区| 人妻人久久精品中文字幕| 理论久久婷婷网8| 青娱乐二区免费| 国语对白在线播放视频| 青青欧美| 少妇高潮流水av免费| 强奸乱伦Av网| 久久国产精品91| 欧美性爱一区| 亚洲婷婷综合网| 亚洲天堂7777| 第四色色综合91| 9久精品视频在线观看| www久久精品| 亚洲日韩国产精品| 99久久精品国产高潮| 欧美日韩性感| 日韩BBN| 20cm女自慰在线日韩欧美| 18禁中文字幕| 女同女同恋久久级三级| 九九人人操| 久久夜色一区二区| 国产又猛又粗又爽又黄| 色色色综合| 人人澡人人弄| 国产精品视频自拍在线| 久久午夜伦| 天天爱综合网| 亚洲精品xxx| 天天干一区二区| 69久久| 日韩国产成人自拍视频| 欧美久久人妻少妇一区二区| 人人操人人色网| 亚洲AV操| 亚洲图片 欧美电影| 香蕉黄色一级视频| 自拍欧美| 日韩免费三级黄片电影| 欧美老熟另类| 国产精品久久久久久久电影渣男| 青青操97| 天天艹天天日| 日韩八十路老熟女| 岛国在线一区二区三区| 国产后入内射| 黄页视频网站野外| 91在线无码精品秘 软件| 99国产精品久久久在线播放| 午夜福利无毒不卡| 亚洲清纯综合| 亚洲天堂区| 久久成人东京热人妻| 乱伦熟女区| 2017超碰| 婷婷月色| J?P?NESEHD熟女熟妇伦| 四虎AV无码| 操逼A∨| 一区=区三区视频| 大学生美女口爆| 九九玖玖精品| 国产人妖视频一区在线观看| 97鸡把在线视频| 国产亚洲综合欧美一区| 丰满人妻-区二区三区免费看 | 美女尤物福利视频| 啊啊啊好想要| 中文字日本乱码| 看免费的黄片| 91无码人妻| 国产小视频91| 青青草国产欧美非洲黑人| 午夜呻吟欧美| 国产一区二区在线电影| 亚洲女人91| 中文字日本乱码| 日韩性爱再线视频| 乱性AV| 欧美 亚洲 91| 99色婷婷中文字幕乱色| 熟女久久久| 精品超碰中文在线| 尤物网址| 网友自拍第1页| 五月久久HDAV| 亚洲欧综合另类无码一区| 天天干夜夜肏| 中文97国产| 国产超碰| 中国女人内射6XXXXX| 国产乱码久久久| 天天看综合网| 国产97色在线| 久热超碰| 午夜黄色免费在线观看| 人妻一区二区三区视频| 超碰在线综合97| 欧美日韩人人早| 综合一区中亚洲国产成人综合精品 | 亚洲大色堂| 2018色综合天天操| 天天谢天天干| 九九九九久久久久| 亚洲欧美日韩国产丝袜自拍中文| 大香蕉宗合网在线| 亚洲午夜福利在线影院| A级国产欧美激情在线| 精品亚洲国产成人av网站| 人妻少妇视频在线播放| 国产亚洲在线| 91成人在线免费视频| 日韩AV一区二区三区四四| 尤物视频一区| 天天草天天日| 亚洲色图A| 精人妻无码一区二区三区伊人直播| 国产一级片| 内射小黄片| 三四中文字幕| 综合网亚洲在线| 精久久久91| 中文啪啪视频| 亚洲精品丝袜-不卡成人免费……| 国内毛片无遮挡国产| 亚洲欧美天堂| 人妻无一区二区三区| 欧美在线91| 久久精品人妻一区二区三区| 97精选久久| 人妻少妇精品久久久| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 日本污ww视频网站| 激情接吻视频久久久久久| 国产9 9在线 | 亚洲| 亚洲成人激情小说视频| 久久人人爽爽人人爽人人片αV| 国产精品天美传媒| 色婷婷aV一区二区三区麻豆综合| 夜夜操天| 青青草密桃在线播放| 欧美亚洲玖玖玖| 东京热男人的天堂网| 在线播放中文字幕| 天天综合香 ld视频| 男人的天堂2018东京热啪啪啪| 综合色99| 伊人久久青青草| 天天看天天综合成人网| 中文字幕91综合| 精品国产嫩穴视频| 亚州久久9| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 青青免费在线视频一区| 黑人美精品 A片| 手机在线A片| 乱伦av麻豆| 国产女人操逼视频| 99性爱视频| 婷婷月色| 国产污视频麻豆传媒一区二区| 日韩 欧美 校园一区| 中文久久96| 国产三级中文字幕粉嫩| 鸥美中出| 激情小说亚洲视频| 国产精品农村妇女| 成年人网站在线免费观看| 极品欧美一区二区三区| 亚洲αv一区二区三区| 亚洲国产麻豆一区二区三区| 大香蕉碰碰| 亚洲aw毛茸茸在线| 北野未奈加勒比av| 狠狠爱大香蕉| 欧美性爱91| 7777欧美成是人在线观看| 亚洲日本成人动漫| 国产一区二区三区,在线观看观看| 青操影院| 五月天久久综合网| AA丁香综合激情| 久久精品亚洲东京热色播| 日日干男人的天堂| 亚洲色人阁| 亚洲精品xxx| 欧美综合自拍成人自拍第二十页| 1二区9| 91高清日| 日韩在线一区二区| 蜜色网色哟哟| 国产黑白丝在线| 免费国产电影一区二区| 99色在线| 大香久久| 国产欧美日韩女同性恋ww喷水精品| 日韩人妻制服丝袜av| 亚洲国产一区二区三区四区国产| 天天看特黄的免费网站| 欧美色网| 首页亚洲国产高跟丝袜诱惑视频| 经典丝袜一区| 操逼日批| 操b网站亚洲无码| 大香蕉欧美| 91久久99久久91熟女精品| 欧洲自拍色图gif在线| 乱伦熟女论坛| 欧美黑人猛交春色影视大全| 日本一卡二区在线| 大香蕉免费乱伦视频| 黄色不卡视频| 日韩黄色片子| 亚洲国产剧情少妇激情| 超碰97人妻在线| 欧美性生活综合| 97久久久网站| 亚洲日韩精品在线播放| 女人香蕉久久毛毛片精品| 一区二区三区黄片免费观看| 啊啊啊啊啊啊啊好爽不要| 国产精品高潮久久久无码| 久久超碰爱| 国产农村妇女毛片精品久久| 日韩不卡av一二三| 玖玖爱视频网站| 爱媛媛久久国产福利| 激情小说亚洲视频| 插插综合网天天影视网| 99热啪啪| 精品午夜福利| 国产不卡精品91| 国产精品扒开腿做爽爽爽视频| 亚洲第一综合| 日韩在线电影| 97干色天堂| 国产又猛又粗又爽又黄| 久久綜合很很很| 人人操我人人干| 日韩情色AV| 91精品亚洲内射孕妇| 欧美激情久久久久| 26uuu国产免费观看| 97久久天天综合色天天综合色电影| 亚洲伊人a线观看视频| 日本孕妇孕交| 天天躁日日躁AAAXX| 欧美性性性| 中文字幕二区日韩天堂| 国产美女自拍AV| 99只有精品| 欧亚性爱视频免费看| 97资源站日韩| 免费久久9999| 能看的AV| 国产女人和拘做爰视频| 综合久久9| 国产精品91ai| 国内毛片无码一级毛片| 亚洲男人综合| 伊人久久亚洲色欲综合网站| 97爱爱爱| 国产成人精品午夜福利| 人人爱操| 久久无码成人| 超碰午夜| 91国产伊人大香蕉| 欧美大香蕉在线观看| 激情干在线| 夫妻天天操岛国视频| 日韩资源网| 91超级碰碰碰| 黄色av网站在线播放| 骚鸭AV| 91色综合激情| 午夜免费视频1000| 欧美国产精品| 在线播放成人高清免费视频 | 夜夜操美女| 青青草原伊人网| 久久久久ab| 婷婷激情五月综合| 强奸乱伦资源| 久久国产AⅤ| 97国产|免费| 少妇色综合| 亚洲欧美九九| 九九无码| 色人久久| 国产亚洲日本精品在线| 国产一区二区三区久久久精品| 欧美色老汉| 久久久一区二区| 亚洲91网。| 国产品精品自在在线午夜免费| 少好三P| 精品一区二区麻豆| 亚洲欧美天堂在线| 伊色综合天堂色97| 国产欧美伊人| 色蜜AV| www.色婷婷| 操美女高潮抽搐白浆| 99国产在线 精品 视频| 9丨亚洲一区二区在线| 9久久久久| 欧美色图20p| 嗯嗯啊啊啊好爽| 日本熟妇自慰性高潮一区二区三区| 最新精品久久蜜桃 | 中文字幕精品丝袜| 一道本东京热加勒比一区二区三区| 久久久一区二区三区四曲免费听| 涩五月婷婷| 五月丁香狠狠爱| 婷婷综合网站| 麻豆 欧美 日韩| 欧美亚洲国内自拍| 91夜夜蜜桃臀1区2区3区| 夜夜高潮夜夜爽高清视频一| 嗯嗯嗯嗯啊啊啊好紧好大| 亚洲欧美一区二区三区在钱蜜桃| 日韩天美| 亚洲色性情三级| a人欧美综合天堂麻豆| 欧美72网页| 日韩操呦呦影院在线观看| 91天射| 午夜精品久久999热蜜桃介男人用| 亚洲综合图色在线| 九九亚洲色在线观看| 超碰色美女| 外国免费性情大片| 人人么人人操| 亚洲av综合色| 久草婷婷| 97资源免费视频| 一本一道久久综合久久| 亚洲综合97| 99久久精品欧美国产| 国产女人和拘做爰视频 | 九九色影院| 你操综合| 亚洲 综合 第一页| 精品传媒在线一区| 美女熟妇色| 国产亲戚伦亲在线| 成人情色一区二区| 很很很很操| 欧美综合网A| 1人人看人人摸人人操| 国产视频不卡在线观看| 9999伦理视频| 国产又粗又长的视频| 极品国产内射| 国产AV激情无码久久无码| 久久久久久久人妻| 超碰97首页| 亚洲国产97| 国产小黄片在线免费观看| 国产亚洲人妻综合日韩 久久| 97精品国产手机| 99re98| 超碰成人最新最好看| 亚洲18禁| 99色热| 手机在线播放国产福利| 18一区二区三区| 亚洲影视第一页| 国产亚洲欧美每日在线| 三级三级三级日本99| 好爽免费视频,| aaa亚无码专区| 日本3级一区二区免费| 久久久婷| 无码精品久久| 97日本超碰综合| 久热精品在线| 亞洲久久直播| 国产成人主播| 久久av无码| 四虎AV无码| 国产精品诱惑| 天天干少妇| 中文字幕熟女人妻丝袜丝| 脫衣舞一区二区三区| 在线 亚洲 网爆 自拍| 91国模| 婷婷五月天av| 欧成人精品一区二区三区| 欧美人人AAA| 色香欲天天天天综合色| 国产精品极品美女视频| 欧美人妻色| 国产高清精品一区二区三区毛片 | 激情文学亚洲| 日韩性爱小视频在线观看| 98精品国产乱码久久久久久| 91色宗合| 91久久久久久| 屁股久久久久久| 九九色色| 特色a在线上| 亚洲图片 91| 精精品人妻一区二区三区| 91天堂色男人的天堂| 久久久9 9 9精品| 日本成人A片网站| 国产欧美日韩臀| 中文精品一区二去| 日本性一区| 美女黄频a美女大全免费皮| 国内外毛片在线观看| 老司机深夜影院18未满| 曰韩少妇无码| 五月婷婷啪啪| 亚洲av成人精品一区| 黄色大片一区二区密桃丝袜| 亚洲欧美日韩中文播放| 三上制服丝AV| 日本人人操人人操| 99re99| 九九玖玖精品| 秋霞网—男女啪啪亚洲免费体验区 | 91影库| 欧美成人国产精品| 天天做天天爽| 999久久久免费精品国产牛牛| 97国产色综合| 中文操嬖片。| 搡老女人老91二区| 久久av色| 狠狠综合网| 亚洲欧洲激情卡通另类文学四射小说网站| 中文高清一区二区的| 四虎午夜影院| 91插B网站| 性欧美另类高清| 日韩高清黄片| 亚洲在线综合| 玖玖爱综合| www成人啪啪18秘 免费| 亚洲欧美另类激情小说| 久久夜精品一区二区三区| 狠狠色婷婷7777久| 被窝影院午夜看片无码| 手机av亚洲丝袜美腿日韩第一页二页| 五月天激情小说| 亚洲97成人在线观看| 劲爆欧美人妖三区91| 亚欧精品久久久久久久久久久| 熟妇xxxxx性春色| 国产中文字幕在线| 婷婷另类小说| 69人妻精品一区二区绯色| 国产主播福利| 麻豆成人影音在线| 91艹| 综合啪啪| 激情啪啪拍91| 女欧美一区二三区| 中文久久| 久久超碰天天| 久草新免费| 97天天搞在线| 激情综合久久| 中国国产精品一区视频| 国产日韩无码一区二区三区久久区| 美女91色黄18| 99啪| 欧美熟爽综合| 五月天激情四射| 一级性爱视频免费在线| 91另类| 欧美色图欧美| 大香蕉懂9| 日韩 女同 综合| 日日干夜夜操视频h| 少妇国产不卡| 欧美午夜精品久久久久久3D| 国产精品久久久久久久久AV大片| 乳欲人妻办公室奶水| av毛片aaaaa免费看| 花花AV导航| 九九九九一区| 天天操天天谢| 天天日熟妇| 日本最新1区2区3区| 亚洲日韩乱码中文无码蜜桃臀网站| 中文字幕大片三级狠狠干| 天天干一干| 亚洲欲色9532548967一区| 性一交一乱一交A片久久四色| 爱av免费| 久99视频| 男人兔费天堂| 看黑丝美女操逼青青网站| 欧美精品在线观看| 久热伊人99re| 久久人爽| 久久久一区二区| 99热aaa| 久久天天躁日日躁狠狠躁| 欧洲中文字幕| 91影视亚洲| 狠操91,com| 色偷综合| 一区二区视频在看| 大学生美女口爆| 欧美人黑A片无码免视费| 超碰97护士| 日本视频在线中文字幕| 蜜乳AV.COM| 91动漫操逼视频| 欧美亚洲日本激情在线| 中文字幕精品一区二区精品| 蜜色网色哟哟| 久久亚洲色图中文字幕| 亚洲色婷婷综合久久久久中文| 快灬快灬 一下爽蜜桃在线观看 | 国产精品一区二区在钱播放| 超碰97网址| 动漫av中文| 色av中文字幕| 天天色综合影视网| 高潮精品| 秋霞一集毛片观看| 日操粉逼逼| 天美传媒国产原创中文字幕亚洲欧美另类 | 欧美无圣光在线| 大香蕉日亚洲日本亚大| 啊啊啊好舒服视频| 91免费看一区二区三区| 久久久久国产精品片区无码直播| 怡红院网站在线视频| 国产精品久久久吖| 黄片www.| 老熟妇综合| 午夜经典| 国产精品亚洲一级av第二区| 熟女丰满人妻一区| 女同性恋中文字幕| 伊人丁香五月婷婷| 丁香五月天激情综合| www.av在线观看| 色狠狠综合噜一二三区| 99欧美| 女同亚洲欧美一二三区久久电影| 国产精品高潮久久AV| 9精品久久久久| 乱伦av.com| 日本伦理一区二区| 97日视频| 1769一区| 色色色综合网| 婷婷8月天青娱乐| 国产日韩精品无码去免费专区国产| 色综合久久88色综合久久天天| 99啪啪视频| 在线视频资源| 综合激情五月天| 校园春色综合香蕉| 日韩欧美亚欧在线视频| 久久超碰爱| 性欧美第一页| 能直接看AV的网站| 国产免费久久精品99re韩国| 人妻一区二区三区四区视频| 婷婷五月天影院| 久久久九| 翔田千里av一区二区三区| 亚洲男人天堂2013| 久久久久久久久久久免费精品| 久久久com| 美女久久久久久久久久久| 婷婷五月天成人网| 热热色青青草| 男女真人网18| 四虎影视国产精品| 性爱乱伦一区| 国产精品日日摸天天碰| www.av在线观看| 欧美人妻另类在线| 日韩精品中文字幕二区| 青青草一区二区三区四| 免费A V在线| 色噜噜狠狠色综无码久久| 国产乱色国产精品免费视| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 91久久久久久久久18| 丝袜剧情| 欧美国产视频| 国产高清无码一区三区二区| 美熟女逼导航AV操逼| 加勒比久久综合网高清| 91人妻久久久久久久久久久久久| 亚洲第一成人影院色播| 超碰精品97| 嗯嗯嗯嗯啊啊啊好紧好大| 国产精品久久久久久久久久久久| 亚洲欧美大香蕉| 99e久久国产精品| 四虎视频在线观看| 亚洲国产高清福利视频| aV中文麻| 熟妇视频一区二区三区在线观看| 中文AV制服乱伦| 97久久精品亚洲中六字幕| 18禁免费视频| 色噜噜日韩精品| 老熟女91av| 国产一级内射无挡观看| 国产第11页| 亚洲强奸乱伦影视网| 欧美97视频| www欧美性爱| 神马久久久久久| 欧美性爱一区二区三区四区| 操操操五月天婷婷丁香影院| 天天爽入口| 96AV精品| 亚洲最新a在线观看| 精品一级| 亚欧洲一区二区视频| 六月婷婷综合| 偷拍 欧美 日韩| 肉丝中文无码高清| 天天日日舔舔| 动漫爆乳3D奶水一区在线观看| 久夜视频| 亚洲极品| 欧美无圣光在线| 日韩精品亚洲专区在线影视| 免费中文综合精品| 91老妇女| 欧美亚洲国产日本在线,久久精品国产| 九九色逼| 欧美专区日本专区| 一区二区三区美女超清| 97久久久久久久久久| 久草婷婷| 欧美不卡在线美女| 亚洲操逼网| 久久无码成人| 日本黄大片在线观看视频| 玖玖无码超碰| 亚洲限制级| 亚洲色天堂日韩中| 日韩免费性爱视频在线观看| 色婷婷激一区二区三区| 久久久久久久强迫| 97国产超碰| 密臀成人视频久久久| 国产乱码久久久久久| 天天干天天日天天射黄色| 日韩亚洲中文有码视频| 久艾草在线精品视频在线观看| 99热婷婷一区二区三| 亚洲熟妇综合久久久久久| 91色图片| 91视频成人福利网站在线一区| 97久久视频| 免费视频a级毛片免费视频| 淫荡少妇免费| 永久免费av无码网站国产app | 欧美在线干| 欧美性爱精品一区二区| 国产探花精品在线| 韩国成人精品久久久免费看| 欧美精品23| A 在线网址| 国产精品爱欲| 久久亚洲AV无码专区首页| 日韩字幕一区| 精品综合久久久久久五月天| 欧美色图色综合| 国产精品久久久久婷婷二区次| 9 1果冻精品视频| 色色97爱| 啪啪综合网| 三上悠亚在线毛片91| 懂色Av| 久久产精品一区二区三区电影| 亚洲无码com| 天天看夜夜看日日干| 九九九成人| 好吊色综合| 亚洲天天综合| 中文字幕久久精视频久久大全| julia在线观看久久| 日日骚 av| www.男人天堂| 人人妻天天做天天爽| 欧美综合综合| 91老熟妇| 涩涩这里只有精品视频| 久久久久久久国产a∨| 岛国激情视频软件| 99久久精品国产高潮| 国产精品熟女丝袜一区二区| 一区二区三区四区色图| 亚洲一区中文字幕久久,果冻传媒一区二区天美传媒| 男人的天堂2010| 9热9热综合网| 91老熟女91老女人| 欧姜老司机| 亚洲国产精品成人综合| 一起草日韩| 色色色热| 求求你操操我| 啊啊啊好大好深| 成人一二| 97aiaiai| 亚洲一本大道中文字幕无码在线| 婷婷五月天在线观看| 亚洲吊色| 欲综合网| 久久国产乱子伦精品免费女人| 天天干人妇| 手机不卡视频不卡在线一二三区| 欧亚成人在线视频| 97欧美| 色色香蕉| 中文字幕一区 二 区 三 四 五 区日 日 骚 | 裸体美女免费看网站青草| 成人日本精品九区| 中文字幕在线第二页| 亲子敌伦对白在线播放| 狠狠色噜噜狠狠狠狠狠色综合久久| 盗摄 精品 另类 一区| 亚洲 欧美 另类 日韩 人妻一区| 久9精品| 国产区91柔拿会所技师| 不卡码视频| 欧美BT 亚洲色图| 污污汅18禁网站在线永久免费观看| 人人操人人狠狠操| 日本孕妇孕交| 97无码视频在线播放| 99熟女| 情侣操 逼视频99| 亚洲国产精品久久AV| 婷婷深爱五月| 97在线资源| 成 人 A V免费视频在线观看| 99热精品免费| 亚洲亚洲亚洲天堂天堂| 欧美精品99久久久**| 九九精品美女高溯喷水| 人人澡人人干| 妺妺跟我一起洗澡没忍住| 啊啊啊久久久视频| 欧美亚洲第一页| 91精品综合久久久久久五月丁香| 青青操视频在线| 国产97在线 | 亚洲| 五月婷婷六月丁香| 疯操AV| 国产亚洲精品自在线亚洲情侣 | 亚洲无码国产探花在线观看| 少妇 综合| 精品97久久| 920日本午夜免费| 国产免费小视频| 色婷婷影院| 欧美色图另类图片| 91久操| 97超级久久| 婷婷五月天激情小说| 久久精品国产97欧美精品亚洲 | 精品久久久久久久久久久久| 日韩少妇无码| 天综合网| 99国产精品| 国产精品熟女AV中文字幕在线播放| 日本男人天堂| 亚洲国产精品久久久久婷婷青年| 久久尹人大香焦视| 97二区四区| 亚洲AV成人精品网站在AV| 久久精品72| 国产又黄又粗的视频| 好舒服视频| 99久久久er直播网址| 亚洲日韩资源| 丁香五月婷婷啪啪| 国产毛片片精品天天看视频| 天天摸夜夜摸| 欧美精品日韩久久久九| 97在线观看免费视频l| 入口操逼网站| 久久有码视频| 性爱动态120秒| 91熟女视频| 亚州乱码中文字幕综合久久久| 欧美黄色片在线播放| 操死我了嗯嗯嗯| 国产 三级自拍| 少妇激情一区二区三区视频| 国产天天骚| 国产乱色国产精品免费视| 九九九九一级| 99亚洲精品| 亚洲国产欧美一区二区潘金莲 | 国产午夜精品理论片a大结局| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 亚洲第一精品在线视频| 97在线播放| 久久国色天香香蕉| 黄色欧美性爱视频| 四虎精品一区二区| 美日韩一二三区| 操操碰| 精品国产一区二区三区香蕉欧美| 激情文学亚洲| 少妇69中文| 精品亚洲国产成人AV制服丝袜| 最新国产精品| 亚洲。天堂。日本在线观看| 猛交交| 中日亚韩免费视频| 四虎免费在线观看| 日本男人插女人的逼黄色| 中文字幕在线观看丝袜| 欧美亚洲一级在线观看| 97日韩| 欧美国产操逼| 亚洲狼狼干综合1| 天天躁日日躁AAA片李宗瑞| 国产精品分类在线观看| 亚洲清纯唯美| 国产人伦精品一区二区三区| 亚洲九区| 亚洲天堂人妻熟妇视频| 秋霞一集毛片观看| 漂亮人妻被强中文字幕hd| 传媒免费一区二区三区| 久久精品国产精品亚洲艾通辽熟妇| 强歼乱伦资源网| 伊人热综合| 亚洲成人贴图| 亚州高清AV| 亚洲91综合| 亚洲欧美精品久| 99re这里只有精品3| 亚洲性爱高潮影院| 性做久久久久久免费观看软件| 成人av影院在线观看| 97精品网| 久久久四区| 亚洲精品 欧美97色色| x97av| 人妻熟女一区二区三区在线| 91九色丨国产丨爆乳| 极品尤物女神在线观看| av网站在线观看了| 成 人片 黄色大片| 91啦人妻| 午夜福利国产欧美日韩夜夜| 91欧美综合| 999精品乱码| 欧美三级偷拍| 91综合天天| 欧美少妇高潮视频| 久久有码视频| 蜜臀AV一区二区三区| 乱操9999| 精品少妇99| 精品无av| 国产精品一区二区三区四区五区| 偷拍欧美亚洲| 青青青在线高清视频在线一二三四区 | 日韩无限资源| 亚洲熟女综合一区二区| 91天堂| 狠狠色五月亚洲91| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区 | 中文一区二区三区影院| 啪啪综合网| 成年无码动漫av片无尽在线 | 啊啊啊好舒服视频| 久久岛国| 日本精品一区二区三区四区的功能| 男人天堂资源| 久久久久九九九| 五月丁香六月综合缴清无码| 人人妻碰人人免费| 国产一区在线观看无码AV| 日韩综合无码一区久久92| 日韩有码 一区二区三区| 操日韩第| 国产伦乱91| 3571色综合一区二区二区| 91久精品| 老鸭窝黄色视频网站| 亚洲熟久久| 九九九九热只有精品| 97爱综合| 欧美十八禁视频| 五月婷婷丁香中文字幕| 丁香五月性| 久久99操天天日| 国产原创精品| 日韩精品一区,二区 九九...老司机| 亚州,欧美在线| 91成人无码| 国产亚洲中文不卡二区| 女人喷水视频在线观看| 人妻熟女一区在| 在现视频女上位好爽| 东京热精品97综合网| 欧美激情内射| 欧美成人免费在线观看| 国产欧美岛国精品一区| 亚洲超碰在线| 亚洲色图国产另类| 大香蕉性欧美| 久久综合国产精品国产| 操碰97| 神马午夜久久久| 亚洲成人在线乱码色午夜| 欧美性xxxxx狂欢| 自拍大香蕉乱插| 97九色人妻| 国产高清在线自在拍69| 成年人网站在线免费观看| 美国aaaaa一级黄片| 美女黄页| 97人人色| 亚瑟国产精品久久无码| 久久极品伊人| 亚州图片第一页| 亚洲国产精品无码AV久久久| 国产剧情AV不卡在线观看| 欧美精品在线观看| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 国产精品免费久久久久久久久久| 久久亚洲AV无码专区首页| 欧美亚洲激情小说| 天堂网 主播 亚洲| 日本久久女同性恋视频| 久久激情视频| 91性感网站| 欧美gv在线观看| 乱色视频中文字幕| 中文一区在线日| 国产精品亚洲色婷婷久久久| 色婷婷影院| 天天在线91| 青娱乐999| 日产国产精品中文久久婷婷| 啊啊啊啊好疼| 可能人人看人人摸| 亚洲中文字幕有码视频一区二区三区| 在线五区| 亚洲一区二区三区播放在线| 丝袜综合| 国产深夜福利| 天天影视色香色欲| 天天爱天天操| 91干熟女| 亚洲天堂一二| 亚洲欧美在线观看2021| 丝袜亚洲91| 黄片com.| 麻豆国产成人精品| 日韩性爱毛片操骚逼| 麻豆人妻精品一区二区| 亚洲性天堂| 丰满人妻-区二区三区免费| avav青青草久久夜| 五月婷婷性爱| 国产AV线| 日韩精品永久在线观看| 中文字幕二区| 亚洲精品aa久久伊人| 中出20p| 亚洲综合激情五月久久| 亚洲丝袜二区在线| 九九这里只有精品| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 麻豆久久久久久久久丝袜 | 一区二区不卡视| 天天干天天狼在线视频| 丝袜视频网国产90| 六月婷婷激情| 亚洲天堂男人天堂网| 一二三啪啪专区| 性爱乱伦视频免费| 亚洲人久久久网| 日本午夜久久电影| www.91视频网| 91扒丝袜综合在线| 日本东京热加勒比久久| 97超碰中文| 激情五月综合网| 精品国模无码| 伦在线97| 91久久久久久| 国产熟妇 码视频户外直播| 图色综合网| 亚洲黄色网址视频| 中文字幕一区二区三区四五区| 性色一线| 激情小说成人日本无码一| 白嫩妹子国产骚| 99re6久热只有精品6在线直播| 999国产精品999久久久久久| 91超碰人人| 天堂中文日本在线观看| 亚洲久草AV色图| 久妇网| 丝袜熟女一区二区三区| www欧美91| 午夜福利在线视频1000| 午夜福利视频在线一区| 欧美se综合| 日欧毛片久久| 色婷婷色99国产综合精品| 超碰在线人妻中文字幕| 久久禁| 国产精品久久发布| 久久99人妖视频国产| 性无码专区2020| 呻吟 欧美 日本 中出| 97亚洲一区| www.激情| 久久性爱视频99| 亚洲a色| 97色爱| 色欲天天综合网| 久久直播国产| 夜夜夜夜爽| 99热在线不卡| 精品少妇后入一区二区三区四区人妻巨乳 | 日本操逼视频免费| 视频黄站| 欧美 熟女 日韩| 97精品一二区| 亚洲图片偷拍视频区| 曰韩精品视频一区二区| 九九九热| 亚洲有薄码区久久在线一区| 久日91在线| 无码一区二区三区四区五区六区七区八区九区十区视频 | 920日本午夜免费| 七月丁香婷婷| 久区视频| 久久久国产护士丝袜美腿一| 色九九九| 超碰国产情侣自拍网| 久久国产视频性吧 | 欧美黑人168页欧美黑人167| 上床不卡网站| 综合影院亚洲| 五月婷婷六月激情| 婷婷丁香九月| 久久久久久久久久va| 超碰欧美| sewuyueav| 成人一二三区| 欧美淫乱视频| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 一区操逼| 国产精品高潮呻吟av久久4虎| 国产精品96| 另类小说欧美激情校园春色| 97久操| 色香av| 东北女人高潮视频| 超碰久超碰久| 亚洲精品人体| 欧美大的香蕉有线电视视频| 91N综合网| 久久久91| 欧美性色欧美| 国产成人网址| 中文字幕 人妻不满 在线视频| 久久精视频美日韩在线视频| 久久6热视频免费观看| 久久精品国产亚洲AV无码电影| 中文字幕一区二区三区高清| 中文日本免费高清| 乱伦3P视频| 亚洲无码久久久久久久| 女人高潮抽搐喷水视频网站| 91操人视频| 午夜免费视频1000| 青娱乐av在线|