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

ARTICLE DETAIL

資訊詳情

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

從指針到寄存器:MCU地址映射與嵌入式寄存器操作實戰(zhàn)指南

從指針到寄存器:MCU地址映射與嵌入式寄存器操作實戰(zhàn)指南 2. 從指針到寄存器理解地址映射的本質(zhì)2.1 寄存器到底是什么很多剛?cè)胄械呐笥岩宦牭健凹拇嫫鳌本皖^大覺得這是個特別高深的概念。其實用大白話講寄存器就是MCU內(nèi)部的一塊特殊內(nèi)存每個寄存器控制著芯片某個具體功能的工作方式。你往這個地址寫數(shù)據(jù)外設(shè)就會按照你寫的值去工作你從這個地址讀數(shù)據(jù)就能知道外設(shè)當(dāng)前的狀態(tài)。拿UART來舉例往數(shù)據(jù)寄存器里寫一個字節(jié)這個字節(jié)就會通過TX引腳發(fā)出去讀狀態(tài)寄存器某個位就能知道數(shù)據(jù)有沒有收到。整個過程本質(zhì)上就是讀寫一塊有特定功能的內(nèi)存區(qū)域。寄存器與普通內(nèi)存最核心的區(qū)別在于普通內(nèi)存只是為了存數(shù)據(jù)而寄存器的值改變會直接影響硬件電路的行為。比如你把GPIO方向寄存器的某個位置1引腳立刻變成輸出模式你把定時器控制寄存器的啟動位置1計數(shù)器馬上開始跑。2.2 指針操作寄存器背后的原理C語言里操作寄存器最常用的方式就是指針。這一點很多教程一句話帶過但理解透了你的嵌入式水平能提升一個檔次。芯片設(shè)計廠商在硬件層面把寄存器和SRAM統(tǒng)一編址也就是說每個寄存器都有唯一的地址。比如STM32F103的GPIOC口數(shù)據(jù)寄存器地址是0x4001100C。在C語言里把某個整數(shù)地址強制轉(zhuǎn)換成指針再通過指針讀寫就能直接操作這個地址對應(yīng)的硬件。#define GPIOC_ODR (*(volatile unsigned int *)0x4001100C)這個宏展開后做的事情是把常數(shù)0x4001100C強制轉(zhuǎn)換成指向unsigned int的指針用*解引用操作訪問這個地址volatile告訴編譯器每次使用都要從內(nèi)存重新讀取不要優(yōu)化如果不懂volatile你大概率會遇到一個經(jīng)典坑開了編譯器優(yōu)化之后代碼行為變得完全不符合預(yù)期。背后的原因就是編譯器認為某塊內(nèi)存沒有被人修改把讀取操作優(yōu)化掉了但實際硬件可能隨時在改這個值。2.3 為什么寄存器的位寬通常是32位現(xiàn)在主流MCU比如Cortex-M系列的寄存器幾乎都是32位。這跟內(nèi)核的架構(gòu)直接相關(guān)Cortex-M是32位RISC內(nèi)核數(shù)據(jù)總線、寄存器堆、地址總線都是32位。寄存器設(shè)計成32位可以做到一條LOAD/STORE指令完成讀寫效率和硬件復(fù)雜度都最優(yōu)。但要注意不是所有寄存器都100%使用了32位。比如很多外設(shè)寄存器只用了低16位甚至是低8位其他位都保留。以STM32的RCC時鐘控制寄存器為例很多位標(biāo)記為Reserved寫0讀0不能修改。如果誤寫了保留位輕則功能異常重則觸發(fā)硬件錯誤。32位寄存器還有一個隱藏好處單個寄存器可以打包多個獨立控制字段。比如一個32位的控制寄存器bit0管使能bit1到bit3管分頻系數(shù)bit4管極性。這樣用一個地址就能控制多個關(guān)聯(lián)參數(shù)既節(jié)省地址空間又保證配置的原子性。3. 必知寄存器逐個拆解UART、I2C、SPI、定時器與中斷3.1 UART相關(guān)寄存器串口是嵌入式開發(fā)調(diào)試的命脈UART寄存器建議第一名掌握。每個UART外設(shè)的核心寄存器組通常包含數(shù)據(jù)寄存器、狀態(tài)寄存器、控制寄存器、波特率寄存器。STM32系列把數(shù)據(jù)收發(fā)放在同一個寄存器DR寫DR發(fā)數(shù)據(jù)讀DR收數(shù)據(jù)。波特率寄存器是第一個容易翻車的地方。它并不是直接寫一個波特率數(shù)字進去而是寫分頻系數(shù)。STM32F1的波特率計算公式是Tx/Rx Baud PCLKx / (16 × USARTDIV)USARTDIV是一個小數(shù)整數(shù)部分寫進BRR寄存器的高16位小數(shù)部分寫進低4位。我見過不少人拿標(biāo)準(zhǔn)庫配置沒問題直接操作寄存器時把USARTDIV算錯了導(dǎo)致串口出亂碼。算完之后可以逆推一遍算出來的波特率跟目標(biāo)值誤差超過2%就要警惕。狀態(tài)寄存器SR里最常用的兩個位是TXE發(fā)送數(shù)據(jù)寄存器空和RXNE接收數(shù)據(jù)寄存器非空。寫數(shù)據(jù)之前先等TXE為1讀數(shù)據(jù)之前先等RXNE為1。這個流程本質(zhì)上是查詢方式的握手協(xié)議理解了它你就理解了輪詢式串口收發(fā)的基本盤。3.2 I2C相關(guān)寄存器I2C的寄存器坑比UART多不少因為I2C協(xié)議本身有起始條件、停止條件、應(yīng)答位這些狀態(tài)機概念。以STM32的I2C外設(shè)為例核心寄存器包括控制寄存器CR1、CR2狀態(tài)寄存器SR1、SR2數(shù)據(jù)寄存器DR時鐘控制寄存器CCR。I2C時鐘配置是新手事故高發(fā)區(qū)。I2C時鐘由APB時鐘分頻得到CCR寄存器的值計算公式T_high CCR × T_PCLK (標(biāo)準(zhǔn)模式) T_high 2 × CCR × T_PCLK (快速模式)有個細節(jié)容易被忽略快速模式400kHz下CCR還得配合DUTY位設(shè)置占空比DUTY0時占空比是2:1DUTY1時是16:9。很多人配400kHz失敗就是因為DUTY位的處理不對。狀態(tài)寄存器SR1的位處理順序也有講究。比如檢測到應(yīng)答失敗AF位必須先讀SR1再寫CR1才能清除標(biāo)志。順序反了標(biāo)志清不掉整個I2C狀態(tài)機就卡住了。3.3 SPI相關(guān)寄存器SPI的結(jié)構(gòu)比I2C簡單寄存器也更直白控制寄存器CR1、CR2狀態(tài)寄存器SR數(shù)據(jù)寄存器DR。CR1里最關(guān)鍵的是波特率分頻位BR[2:0]、時鐘極性和相位位CPOL/CPHA、主從模式位MSTR。SPI通信模式4選1的配置依據(jù)是對端設(shè)備的時序要求。CPOL決定空閑時鐘電平CPHA決定數(shù)據(jù)采樣沿。匹配錯誤時通信數(shù)據(jù)會整體錯位表現(xiàn)是讀回來的數(shù)據(jù)像是“錯開一位”。排查方法是用邏輯分析儀抓CLK和MOSI的時序關(guān)系。SPI的發(fā)送和接收在邏輯上是同時進行的——發(fā)送一個字節(jié)的同時會收到一個字節(jié)。因此讀數(shù)據(jù)寄存器的動作會觸發(fā)下一字節(jié)的發(fā)送。這個機制在連續(xù)傳輸時特別重要很多人用SPI讀數(shù)據(jù)讀到0xFF或0x00其實就是只發(fā)了數(shù)據(jù)沒有管理接收或者只等接收沒管發(fā)送。3.4 定時器相關(guān)寄存器定時器是嵌入式開發(fā)里玩法最多、寄存器最豐富的模塊。我按重要程度把定時器寄存器分為三組第一組是時基單元預(yù)分頻寄存器PSC、自動重裝載寄存器ARR、計數(shù)器寄存器CNT、控制寄存器CR1。預(yù)分頻器的作用是把定時器時鐘分頻后再驅(qū)動計數(shù)器分頻值寫入PSC1。計數(shù)頻率的計算f_cnt f_timer / (PSC 1)溢出周期T_out (ARR 1) / f_cntPSC和ARR都要加1因為硬件是從0開始計數(shù)的。這個1的坑我在實際項目里見過不止兩次。有人算好周期后忘了減導(dǎo)致定時器溢出時間比預(yù)期多了一個時鐘周期PWM的頻率偏了電機控制就跟著出問題。第二組是捕獲/比較通道寄存器CCR1-CCR4。這個寄存器既能用來產(chǎn)生PWM決定占空比又能用來捕獲外部信號記錄事件發(fā)生時的計數(shù)器值。對電機控制和波形測量來說CCR的理解到位等于掌握了定時器一半的功夫。第三組是中斷和DMA相關(guān)寄存器DMA中斷使能寄存器DIER、狀態(tài)寄存器SR。定時器更新事件、捕獲事件、比較事件都能觸發(fā)中斷或DMA請求。合理配置DMA可以讓ADC采樣和PWM輸出完全不需要CPU干預(yù)這是高性能控制系統(tǒng)的關(guān)鍵。3.5 中斷控制器相關(guān)寄存器NVIC雖然不是外設(shè)而是內(nèi)核的一部分但它管轄著所有外設(shè)的中斷行為。NVIC的寄存器組包括中斷使能寄存器ISER、中斷掛起寄存器ISPR、中斷優(yōu)先級寄存器IPR。Cortex-M3/M4的優(yōu)先級分組是個高頻考點。優(yōu)先級寄存器每個8位但實際使用位數(shù)由PRIGROUP寄存器決定常見配置是4位搶占優(yōu)先級2位子優(yōu)先級。搶占優(yōu)先級高的事件可以打斷搶占優(yōu)先級低的處理子優(yōu)先級只在同搶占優(yōu)先級時有效。誤配優(yōu)先級會導(dǎo)致一個很隱蔽的問題兩個中斷互相嵌套死循環(huán)。比如兩個外設(shè)都配置成搶占優(yōu)先級0同時到來時系統(tǒng)會反復(fù)進中斷、互相等表現(xiàn)為程序卡死。排查方法是把所有中斷優(yōu)先級表格化逐個核對。3.6 復(fù)位和時鐘控制相關(guān)寄存器時鐘配置是嵌入式啟動的根基。RCC寄存器組控制著系統(tǒng)時鐘源選擇、各外設(shè)時鐘開關(guān)、總線分頻。典型流程是上電默認使用內(nèi)部HSI時鐘然后切換到外部晶振HSE配置PLL倍頻最后把各外設(shè)時鐘打開。PLL配置的流程在STM32F1上特別典型1. 把PLLON位清零等待PLLRDY為0 2. 設(shè)置PLLSRC選擇時鐘源 3. 設(shè)置PLLMUL倍頻系數(shù) 4. 把PLLON置1等待PLLRDY為1 5. 切換系統(tǒng)時鐘源為PLL這里每一步之間都要等待就緒標(biāo)志不能跳步驟。我見過直接把PLLON置1就開始切時鐘源的代碼結(jié)果系統(tǒng)時鐘根本沒切過去外設(shè)全部超時排查了半天才發(fā)現(xiàn)是啟動流程不對。GPIO的寄存器組也值得單獨提一下。每個GPIO口有一組配置寄存器CRL/CRH、數(shù)據(jù)寄存器IDR/ODR、置位復(fù)位寄存器BSRR。BSRR的設(shè)計非常巧妙寫高16位可以清零對應(yīng)引腳寫低16位可以置位對應(yīng)引腳而且原子操作不會被中斷打斷。這是實現(xiàn)無閃爍LED控制的關(guān)鍵。4. 手把手實戰(zhàn)用寄存器點亮一顆LED并打印調(diào)試信息4.1 需求拆解與整體流程設(shè)計實戰(zhàn)項目是這樣使用STM32F103最小系統(tǒng)板通過寄存器操作完成兩件事——點亮點燈、通過UART輸出一條調(diào)試信息。整個過程不用HAL庫、不用標(biāo)準(zhǔn)庫代碼量控制在百行以內(nèi)。先拆解需求要完成這個任務(wù)需要配置三塊東西GPIO時鐘和引腳模式PC13接了LED需要把PC13配成推挽輸出UART時鐘和引腳PA9是TX、PA10是RX需要復(fù)用功能推挽輸出波特率計算115200bps根據(jù)APB2時鐘算出BRR值把這三塊拆清楚再寫代碼就水到渠成了。這就是嵌入式開發(fā)里的一個基本功拿到需求先拆解到模塊級再拆解到寄存器級最后才是寫代碼。4.2 關(guān)鍵寄存器配置詳解第一步開啟GPIO和UART的時鐘。RCC-APB2ENR的bit4是IOPCEN置1后GPIOC時鐘開啟。這個寄存器的bit2是IOPAEN置1后GPIOA時鐘開啟bit14是USART1EN置1后USART1時鐘開啟。RCC-APB2ENR | (1 4) | (1 2) | (1 14);注意這里是“或等于”不是直接賦值。因為直接賦值會把其它外設(shè)的時鐘位清掉可能導(dǎo)致別的外設(shè)立刻失電停止工作。第二步配置PC13為推挽輸出。PC13屬于高端口所以用的是CRH寄存器不是CRL。CRH的16-19位對應(yīng)PC13需要把MODE位設(shè)置為輸出模式102MHzCNF位設(shè)置為通用推挽輸出00。GPIOC-CRH ~(0xF 16); GPIOC-CRH | (0x2 16);先清零再置位是GPIO配置的標(biāo)準(zhǔn)動作。如果不清零直接賦值舊配置會跟新配置混合產(chǎn)生不可預(yù)期的模式。這種錯誤非常隱蔽調(diào)試時很難一眼看出來。第三步配置UART1的TX引腳PA9為復(fù)用推挽輸出。PA9屬于低端口用CRL寄存器。PA9的MODE位和CNF位位置是第4-7位。復(fù)用推挽輸出要求CNF10MODE10或11。我習(xí)慣配成11即50MHz輸出。GPIOA-CRH ~(0xF 4); GPIOA-CRH | (0xB 4); // 1011 復(fù)用推挽50MHz注意0xB的二進制是1011對應(yīng)CNF10MODE11恰好匹配。第四步配置UART1的波特率寄存器。USART1掛在APB2總線上STM32F103默認系統(tǒng)時鐘72MHz時APB272MHz。BRR的值按公式計算USARTDIV 72000000 / (16 × 115200) 39.0625整數(shù)部分是390x27小數(shù)部分0.0625×161。所以BRR 0x271 625。這里有個歷史遺留細節(jié)STM32F1的BRR寄存器布局比較特殊你直接按公式算出USARTDIV的值然后換算成BRR。標(biāo)準(zhǔn)做法是USART1-BRR 0x271;驗證方式算完用邏輯分析儀看TX引腳的波形測量一位時間應(yīng)該是8.68us左右1/115200。這個方法比任何調(diào)試器都直觀。第五步配置UART1控制寄存器。USART1-CR1里需要配置UE1UART使能、TE1發(fā)送使能。設(shè)置為8位數(shù)據(jù)、無校驗、1位停止位。USART1-CR1 | (1 13) | (1 3);這種配置因為復(fù)位后CR1全0直接把需要的位置1就行。注意CR1的M位bit12復(fù)位后是0對應(yīng)8位數(shù)據(jù)模式不用額外配置。停止位由CR2控制復(fù)位后是00對應(yīng)1位停止位也剛好符合需求。4.3 發(fā)送一個字節(jié)的完整代碼有了上面所有配置寫發(fā)送函數(shù)就很簡單了。核心就是一個等待標(biāo)志位、寫寄存器、再等待標(biāo)志位的過程。void uart_send_byte(uint8_t ch) { while (!(USART1-SR (1 7))); // 等待TXE為1 USART1-DR ch; // 寫入數(shù)據(jù)寄存器 }重點在第一個while循環(huán)必須等待TXE為1才能寫DR。如果緩沖區(qū)沒空就寫數(shù)據(jù)數(shù)據(jù)會丟失。TXE是發(fā)送數(shù)據(jù)寄存器空的標(biāo)志表示DR里的數(shù)據(jù)已經(jīng)被移到了移位寄存器可以接收新數(shù)據(jù)了。發(fā)送字符串就是循環(huán)調(diào)用這個函數(shù)每個字符發(fā)送完畢后還需要等待TC標(biāo)志bit6為1確保最后一個字節(jié)真正從移位寄存器發(fā)出去了否則立刻進入低功耗模式會丟最后一個字符void uart_send_string(char *str) { while (*str) { uart_send_byte(*str); } while (!(USART1-SR (1 6))); // 等待TC為1 }4.4 主函數(shù)拼接與驗證流程主函數(shù)把三個流程串起來系統(tǒng)啟動初始化時鐘、配置GPIO、配置UART、然后主循環(huán)里閃燈加打印信息。int main(void) { SystemInit(); RCC-APB2ENR | (1 4) | (1 2) | (1 14); GPIOC-CRH ~(0xF 16); GPIOC-CRH | (0x2 16); GPIOA-CRH ~(0xF 4); GPIOA-CRH | (0xB 4); USART1-BRR 0x271; USART1-CR1 | (1 13) | (1 3); uart_send_string(Register Test OK\r\n); while (1) { GPIOC-ODR ^ (1 13); // 翻轉(zhuǎn)PC13 delay(); } }如果你的板子晶振不是8MHzSystemInit后系統(tǒng)時鐘就不是72MHz此時BRR算出的值就會不準(zhǔn)串口會出現(xiàn)亂碼。排查時優(yōu)先確認系統(tǒng)時鐘的實際頻率不要盲目去調(diào)波特率。驗證流程按以下順序用示波器或邏輯分析儀量PC13引腳正常應(yīng)該是周期性方波用USB轉(zhuǎn)TTL接PA9打開串口助手設(shè)置115200-8-N-1應(yīng)能收到字符串“Register Test OK”量一下PA9引腳的波形確認位寬是否正確5. 寄存器開發(fā)實戰(zhàn)中的經(jīng)典坑與排查方法論5.1 volatile關(guān)鍵字缺失導(dǎo)致優(yōu)化后行為異常我講過volatile的重要性這里用一個真實事故來說。之前給一個溫控項目寫驅(qū)動溫度采樣值存到一個全局變量主循環(huán)檢查這個變量決定是否開啟加熱。開-O2優(yōu)化后加熱動作完全失效。排查了半天最后發(fā)現(xiàn)是變量聲明沒加volatile——編譯器把主循環(huán)里的變量讀取提升到了循環(huán)外認為內(nèi)存里的值永遠不會變于是每次循環(huán)都用舊值判斷。MCU的ADC中斷確實更新了內(nèi)存里的值但編譯器根本不知道這件事。加上volatile后問題立刻消失。這個案例告訴我們只要變量可能被中斷、DMA或硬件外設(shè)修改必須加volatile這屬于嵌入式開發(fā)的一等規(guī)范不是可選項。5.2 寄存器位操作優(yōu)先級陷阱C語言里位操作符的優(yōu)先級低于比較運算符這個知識點小學(xué)級別但實踐中不斷有人踩坑。常見錯誤寫法if (USART1-SR (1 5) 0)這個表達式實際被解析為if (USART1-SR ((1 5) 0))由于(15)0恒等于0所以整個表達式恒等于0判斷永遠不成立。正確寫法是if ((USART1-SR (1 5)) 0)位操作判斷條件建議一律加括號。這個毛病即使多年經(jīng)驗的工程師也偶爾會犯關(guān)鍵是要自己形成條件反射涉及位運算的判斷先加括號再寫比較符。5.3 復(fù)位值不等于默認值寄存器復(fù)位值是個容易忽略的坑。很多人以為復(fù)位后寄存器全0其實不是。比如STM32的RCC_CR寄存器復(fù)位值是0x00000083HSI時鐘已經(jīng)使能GPIO的CRL/CRH復(fù)位值全是0代表浮空輸入模式。如果不讀數(shù)據(jù)手冊直接寫代碼很容易做出“沒配置時鐘就當(dāng)輸出用”的錯誤。低功耗項目的喚醒時間異常檢查了一圈最后發(fā)現(xiàn)問題出在某個外設(shè)保持默認時鐘開著功耗始終壓不下去。這個教訓(xùn)的通用結(jié)論是每操作一個新外設(shè)前先把復(fù)位值查一下在腦子里面形成“復(fù)位值對照表”。5.4 外設(shè)復(fù)用功能的沖突排查不同外設(shè)可能映射到同一個引腳。典型是PA9和PA10既能復(fù)用成USART1也能復(fù)用成定時器1的通道。配置成串口功能時如果CRH里寫錯成GPIO輸出數(shù)據(jù)肯定發(fā)不出去但代碼本身不報錯。排查這類問題的方法讀回GPIO配置寄存器對比數(shù)據(jù)手冊上的復(fù)用功能表確認引腳配置種類是否正確。也可以用復(fù)用功能重映射寄存器AFIO來切換功能映射這個寄存器的操作在引腳沖突時非常關(guān)鍵。5.5 調(diào)試寄存器代碼的三大手段純寄存器開發(fā)意味著沒有庫函數(shù)告訴你“哪里錯了”調(diào)試手段決定了你的開發(fā)效率。我常用的手段按優(yōu)先級排序第一是用調(diào)試器的寄存器窗口。Keil或IAR的Peripherals菜單可以直接查看所有外設(shè)寄存器的實時值比看代碼更直觀。比如串口沒輸出先看USART1的CR1是否存在UE有沒有配好——一眼就查到問題。第二是邏輯分析儀。專門抓引腳的時序關(guān)系尤其適合排查I2C、SPI、UART這類協(xié)議問題。把CLK和MOSI兩根線掛上去就能看出時鐘極性相位是否匹配數(shù)據(jù)位的順序是否正常。第三是打點法。在關(guān)鍵位置翻轉(zhuǎn)一個調(diào)試用的GPIO用示波器量脈沖寬度推算出代碼執(zhí)行路徑和時間消耗。這個手段在實時性排查里特別好用比如判斷中斷響應(yīng)有沒有超時、某段程序是不是卡死了。6. 從寄存器到庫開發(fā)方式的演進邏輯6.1 寄存器與庫函數(shù)的對應(yīng)關(guān)系很多人用著HAL庫卻被底層實現(xiàn)搞得云里霧里。我建議你先從寄存器層面理解一次再回到庫函數(shù)你會發(fā)現(xiàn)一切豁然開朗。以HAL庫的GPIO_Init為例它內(nèi)部本質(zhì)就是對你傳入的GPIO_InitStruct做校驗然后改寫GPIOx的CRL或CRH等寄存器。庫函數(shù)只是對你寫好的配置值做封裝和驗證。理解了寄存器你就知道HAL庫背后大概做了哪些操作出了問題也大致知道在哪一段。6.2 什么時候必須用寄存器庫函數(shù)雖然方便但在三個場景下無法替代寄存器操作第一是啟動代碼。芯片上電后第一條指令執(zhí)行時C運行環(huán)境還沒建立庫函數(shù)根本沒法跑只能靠匯編或寄存器操作初始化棧指針、時鐘和關(guān)鍵外設(shè)。第二是性能敏感的中斷服務(wù)函數(shù)。HAL庫的冗余校驗會多花幾十個周期在高速控制場景比如電機FOC 20kHz中斷里不能接受。直接寄存器操作可以把中斷處理時間砍到最短。第三是調(diào)試底層硬件問題。當(dāng)懷疑某個外設(shè)行為異常時直接讀寄存器值比翻一萬行庫代碼更高效。寄存器窗口看到的值就是硬件的真實狀態(tài)這個信息是庫函數(shù)給不了你的。6.3 寄存器文檔閱讀的核心方法讀芯片參考手冊是嵌入式開發(fā)的基本功。對于初學(xué)者我建議按這個步驟讀寄存器第一步看圖。每個外設(shè)章節(jié)開頭都有一張模塊框圖把外設(shè)的時鐘源、數(shù)據(jù)通路、中斷線、DMA請求線標(biāo)注得很清楚。先看圖理解這個外設(shè)的數(shù)據(jù)流再看寄存器就有語境了。第二步看寄存器總表。參考手冊每個外設(shè)章節(jié)末尾都有寄存器地址映射總表掃一遍就能知道這個外設(shè)有多少個寄存器、各自負責(zé)什么。不要從頭到尾讀一遍寄存器詳表那是字典用法不是學(xué)習(xí)用法。第三步按功能模塊讀。比如你要配UART的波特率直接翻到BRR寄存器的詳細說明要配中斷直接翻到CR1的對應(yīng)位。帶著目的讀效率比全書閱讀高很多。7. 實操建議與個人心得最后分享幾個我在寄存器開發(fā)實踐中沉淀下來的小習(xí)慣。第一個習(xí)慣是每次寫完一段寄存器配置立刻用調(diào)試器把寄存器值讀出來對比數(shù)據(jù)手冊。比如配置完GPIO就讀回CRH確認每一位都符合預(yù)期。這個小習(xí)慣能幫你在錯誤發(fā)生的源頭就發(fā)現(xiàn)問題而不是等系統(tǒng)整體運行異常后翻半天代碼。第二個習(xí)慣是預(yù)留一個調(diào)試用的GPIO。我在每個項目的板子上都會留出一個測試點連到一個沒有實際功能的引腳上調(diào)試時用來打點。打斷點調(diào)試在中斷服務(wù)函數(shù)里不太好使但打點法在實時性要求高的場景里完全不侵入。代碼量多起來之后這個習(xí)慣幫我節(jié)約了大量排查時間。第三個習(xí)慣是每個外設(shè)初始化代碼里都加一段自檢邏輯。比如UART初始化之后給自己發(fā)一個字節(jié)然后立刻讀接收寄存器如果收到了說明回環(huán)正常否則說明電路或者配置有問題。這個習(xí)慣能把硬件問題和軟件問題盡早分離開避免上游排查浪費大量時間。第四個建議是針對波特率和時鐘配置的。任何涉及時鐘分頻、倍頻的計算我都堅持在源碼注釋里寫清計算過程而不是只寫最終值。三個月后回來看代碼如果沒有計算過程你很難確認某個魔法數(shù)字是怎么來的。這些注釋平時看不出價值遇到問題翻代碼時你就知道有多救命了。寄存器開發(fā)的學(xué)習(xí)曲線確實陡峭尤其是第一次面對幾十個寄存器時確實會讓人頭皮發(fā)麻。但一旦跨過這個階段你對MCU的理解會上升一個層級——看庫函數(shù)不會再有“黑盒”感遇到詭異問題也有了更清晰的排查方向。從寄存器出發(fā)再回到應(yīng)用這條路是我?guī)н^的新人里成長最快的一條路徑。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷五月亚洲一本在线丁香| 91碰人人| 6080av| 另类小说五月天| 99极品视频| 成人无码髙潮喷水A片| 色视五月天婷婷| H亚洲| Www,五月天| 激情亭亭五月| 开心色色五月天综合| 五月丁香六月婷婷网| 婷婷婷婷婷婷婷五月丁香| 六月丁香婷婷拍拍| 久9免费视频| 97人人超| 亚洲精品国产成人AV在线| 日韩五月天婷婷| 九月婷婷在线观看| 99婷婷精品推荐在线视频| 六月丁香色婷婷| 婷婷五月综合社区| 色99无码| 色婷婷人人| 97天堂| 色玖玖| 天天爽天天| 五月天婷久精视频| 色综合性视频| 99色精品视频| 激情婷婷五月| 欧美啪啪9| 免费看欧美成人A片无码| 日日爽日日爽| 五月丁香六月婷婷亚洲| 婷婷五月天成人娱乐| 成人免费网站免费看| 97色色色色色| 色五月婷婷久久| 五月婷婷黄色视频| 天天粽合合合合| 九九色之九九色之88| av大香蕉| www.99视频| 激情五月婷婷五月丁香五月开心五月| 精品无码99| 67194国产| 五月天怕怕| 人妻丰满精品一区二区A片| 日熟女| 五月婷婷自拍| 久久婷婷六月综合| 欧美丁香婷婷五月天| 天天综合激情| 色五月涩涩婷婷蜜桃| 婷婷五月天黄色网址| 变态另类色图| 狠狠色大香蕉| 99热1| 久久九九99视频| 99色视频| 国产精品久久久爽爽爽麻豆色哟哟| 97超碰综合| 天天摸人人摸| 欧美美美女性色视频| 久久五月丁香综合17C| 欧洲不卡视频| 久热只有这里有精品| 九九综合九九| 在线视频色五月| 激情久久肏屄视频| 色10月婷婷视频| 色吧五月婷婷| 思思热思在线精品视频| 好激情在线综合网| 婷婷丁香六月| 五月色亚洲| 久久婷丁香五月| 婷婷另类小说| 综合色播| 精品热青草| 九九色婷婷五月天| 婷婷五月丁香色播| 99在线热| 4399在线观看免费高清电视剧| 国产成人+综合亚洲+天堂| 色五月大香蕉| 战争与艾拉电影免费观看| 99色视频在线观看| 天天操天天干天天日| 在线视频99| 任你爽精品免费视频6| 亚洲天堂啪啪| 51精品国自产在线| 热久久色| 婷婷综合五月天激情| 久久人妻久久久久| 青青草成人网| 99热日本| 九伊人网| 婷婷伊人激情婷婷| 久色大| 夜夜骑天天操| 99热精品在这里| 99久久99久久综合| 六月激情婷婷综合| 国产一区男女| 97操在线视频| 99人人干人人操| wWW九九在线播放| 九九色中文| 日日干综合| 激情婷婷狠狠干| 九九热这里只有精品31| 婷婷五月天综合在线| 亚洲综合成人网| 丁香婷婷九月在线| 亚洲综合在线视频| 天天爱综合网| 超碰av在线| 另类国产欧美视频| 丁香婷婷六月激情| 99爱在线精品视频免费观看| 97碰碰人人视频| 九艹在线| 狠狠色综合精品视频在线| 亚洲情欲| 五月丁香久| 激情狠狠丁香月| 丁香综合网| 五月婷婷综合天天操| 色五月色图| 色狠狠五月天| 亚洲av日韩无码| 九九热精品| 91啪啪网| 婷婷刺激综合| 激情综合在线播放| 深爱五月中文字幕| 日韩九九| 超碰在线网站| 66精品成人免费网站在线观看| 五月伊人网| av网站免费在线| 丁香六月婷婷久久综合| 色五月婷婷很很操| 色综啪啪| 婷婷五月亚洲一本在线丁香| 无码 av电影| 色久女| 五月天激情图| 日韩成人精品中文字幕电影| 婷婷综合五月激情| 99热免费| 夜夜骑操AV| 国产性爱一级| 五月天综合激情网| 啪啪91| 99热碰碰| 五月香婷婷| 五月婷婷丁香大陆免费| 丁香九九九九| 激情性爱五月天| 亚洲va综合va国产va中文| 亚洲精品V天堂中文字幕| 婷婷九月激情| 日本三级中国三级99人妇网站| 色五月婷婷激情基地| 五月天天爽| 久久婷婷综合五月| 日本AAAAAAAAAAAAAA片| 狠狠狠狠草草| 中文在线视频久1| 九九操屄| 操操操Av| 色爱综合网| 久艹大香蕉| 1024成人在线观看| 这里只有精品免费在线视频| 日本欧美成人片AAAA| 99九九在线观看免费| 无码髙清| 99er这里只有精品| 天堂成人A片永久免费网站| 天干天天干天天天天天| 黄色激情网站在线观看| 5月丁香六月婷婷| 久久538| 玖玖爱资源站| 午夜少妇在线观看视频| 色色色色色色色色网站| 色综合大香蕉| 99热6色| 99热传媒| 99在线综合视频| 综合激情sV| 婷婷丁香五月色| 激情九色| 丁香五月激情啪啪| 丁香婷婷综合激情五月色| 97人人操com| 99热碰碰热| 天天婷婷综合| 国产伊人大香蕉| 大香蕉天堂| 丁香六月色婷婷欧美| 超碰v| 久久性爱视频久久性爱视频| 欧亚色色| 99综合| 亚洲五月天第一综合干| 久久Xx| 99精品性爱| 秋霞影音91人妻久久| www,超碰| 天天插操| 婷婷色在线| 欧美黄色AA片哗啦啦啦| www.五月婷婷久久.com| 丁香六月婷婷综情欧美| 九九九午夜视频| 婷婷在线播放| 99色性爰网络| 婷婷午夜丁香| 五月丁香影视| 日日爱699| 淫视馆aV二区一区| 99综合自拍| 在线视频婷婷| 99网| 激情五月婷| 99re这里| 狠狠干五月丁香综合网| 激情五月婷婷综合网| 九热免费视频| 另类激情码| 成人做爰黄A片免费看直播室男男| 射久久丁香五月| 日本九九热| 精品五月视频婷婷在线观看| 二色AV| 七七久久综合| 日本三级99人妇网站| 婷婷五月婷婷| 伊人色综合网| 天天插天天插天天插天天插| www久久久| 婷婷俺去也| 色情久久久| 日日干五月天婷婷| 66精品国产成人| 久久99精品日本| 99精品久久久久久| 婷婷黄色网| 婷婷五月花| 可以直接看的av| 欧美精品99| 亚洲色热| 婷婷午夜综合| 午夜色婷婷| 婷婷五月色综合| 欧美日韩AAAA| www.色婷婷.com| 欧美狠狠色| 国产精品香蕉| 婷婷激情六月| 人妻激情综合| 99热8| 综合啪啪| 天天干天天爽| 久cao香蕉影院| 日本在线播放97| 99riav 亚洲| 欧美成人在线观看| 精品操逼一区二区| 91色综合网| 91丨九色丨熟女| 久久刺激网| 色伊人婷婷| 99在线视频精品| 欧美人人操| 久久婷色| 五月婷婷深爱六月| 日本色色网站| 91久热| AA片在线观看视频在线播放| 激情五月天福利| 五月婷免费视频| 99碰| 狠狠擼综合| 日本性激情色播| 97丁香五月| 深爱1激情网| 色99在线| 国产精品噜噜在线视频| 一本伊人色婷| 婷婷五月色激情欧美激情| 色5月婷婷| 丁香色婷婷五月天| 99ER热精品视频| 51精品国自产在线| 思思久久久婷婷| 99热在线看| 色婷婷影| 久久最新色色色| 九九sese| 五月丁香啪啪综合网| 丁香婷婷五月天在线视频| 久久久免费精彩视频| 123草逼网| 亚洲五月婷| 丁香五月天啪啪| 天天干天天爽天天爽| 婷婷激情五月色综合| 色婷婷狠狠干芒果TV| 色色色.COM| 小视频久久久aaa| 99久热这里只有精品| 国产亚洲在线观看| 色婷婷成人色网| 91猫咪国产在线播放| 99九九在线精品热动漫| 婷婷色5月天在线。| 欧美婷婷精品激情| 99热精品在线| 免费色婷婷| 婷婷五月综合色中文字幕| 日韩精品一品二区三区的使用体验 | 99精品国产在热久久| 玖玖91| 91丨人妻丨国产丨丝袜| 欧美在线骚货| 精品99在线| 99爱这里只有精品免费视频| 伊人久久大香线蕉av一区| 丁香午月AV中文字幕| 天天色天天舔天天爱天天爽| 丁香五月激情婷婷| 91在线日本| www.婷婷网| 思思精品热在线| 91一起操| 9999热在线免费观看| 五月色导航| 精品人妻一区二区三区四区不卡在| 九九99免费视频| 男人大jjc女人免费视频| 东京热免费视频网站| 最新五月天婷婷影| 日韩无码专区| 丁香婷婷九月| 亚洲成人人人操| 思思热视频在线| 中文AV在线观看| 五月丁香婷中文字幕| 久久五月激情综合| 激情伊人网| 99WWW免费视频| 婷婷十月激情综合网| 九九碰九九爱97超碰| 人人叉久| 五月婷婷综合在线观看| 亚洲综合在线视频| 久久网站免费亚洲| 亚洲不卡欧洲| 久久香蕉丁香| 亚洲激情婷婷| 婷婷中文字幕在线| 五月婷婷中文字幕| 碰超亚洲| 99思思热只有在这里看| 无码 av电影| 色色婷五月天| 免费无码毛片一区二区A片| 日本97在线视频| 五月丁香啪啪伦理电影| 免费日本aⅴ中文字幕 | 久婷视频| 天天夜天天色天天| 99热只有精品在线| 丁香五月天视频| 色色色色色色综合网| 综合久久婷婷五月丁香| 99精品综合| 91久久久久久| 99re8在这里只有精品| 香蕉久久国产av一区二区| 逼里香不卡| 色婷婷狠狠18禁| 丁香五月天在线视频| 成人在线网| 亚洲国产精品VA在线看黑人| 青青热久精品视频在线观看| 亚洲情综合五月天| 日本97在线| 日本三级大片| 色综合激情| 影音先锋噜一噜| 五月丁香啪啪激情| 亚洲 在线 性爱| www五月婷婷88导航| 丁香六月高清视频| 影音先锋五月天婷婷丁香在线观看| 五月花婷婷最新| 99九九99九九九视频精品| 五月综合六月婷婷| 激情婷| 久久久这里有精品| 激情六月下句是什么| 婷婷六月色| 亚洲五月天综合| 牛牛热这里只有jingpin| 激情综合婷婷久久| 丁香五月激情综合| 五月丁香六月婷婷亚洲激情综合| 三级av在线| 国产乱妇乱子伦| 91九九精品| 天天日,天天干,天天操| 99热精品综合| 9热在线观看| 激情床戏| 99热这里只有精品免费观看| 97成人丁香婷婷| 亚洲国产无线乱码在线观看| 99这里只有精品视频| 丁香色色网| 翔田千里无码| 综合激情在线| 天堂成人A片永久免费网站| 天天夜夜六月丁香五月婷婷老师| 久久久18| 婷婷中文字幕网站| 色色色图| 激情综合丁香五月| 丁香五月婷婷亚洲另类| 麻豆雪千夏| 五月丁香啪啪啪| www.日日夜夜.com| 丁香婷停五月激情综合深爱| 亚洲网站999| 日韩成人免费电影| 婷婷五月激情五月激情| 婷婷丁香五月精品| 激情综合五月激情17| 在线综合啪| 欧美日韩成人| 五月婷激情| 777丁香六月青青草婷婷综合久月| 91精品丝袜久久久久久久久粉嫩| 国产精品18久久久| 日本久久精品| www夜夜操comwww| 91爱操| 日日夜夜爽爽| 激情综合女人网五月播播| 婷婷六月天国产综合| www.婷婷.com| 婷婷五月激情欧美| 怡红院视频| jiujiu无码五区| 丁香九月激情| 婷婷丁香五月天影院 | 国产激情视频在线观看| 日本偷拍九九九| 日日夜夜狠狠| 婷婷在线精品| 色综合伊人网| 第四色激情网| 超碰九九热| 婷婷五月激情五月激情| 色视频五月天| 欧美va欧美va差| 再綫Av免费視品| 99热e| 久久婷婷超碰| 成人无码免费一区二区中文| 亚洲乱码日产精品BD| 婷婷综合网站| 久久多色| 看片视频在线免费日产在线看| 久久婷婷色综合| 深情五月天| 99re思思热这里| 五月丁香好婷婷A片网| 五月天激情小说| 亚洲天堂大香蕉| 99re青青草| 性爱五月婷| 婷婷五月天性色| 丁香五月婷婷色| 精品久久艹| 99这里只有精品视频| 色吧五月婷婷| 永久精品| 99热综合色图| 亚洲精品电影| 国产成人AV| 一本色综合色| 午夜AV网| 日hao1区| www.99热日韩.com| 色天天综合色| 激情五月www| 成人精品在线| 五月丁香六月婷婷综合伊人| 久久婷婷激情视频| 5五月综合网亚洲| 色婷激情网| 五月丁香在线观看| 亚洲熟女色| 五月天婷婷av| 日欧一片内射VA在线影院| 色色综合网。| 久久精品99久久| 激情五月综合网最新| 久综合网| 亚洲情a| 美女美女美女三级色天天天天天| 综合色色婷婷| 五月综合激情网| 九月性爱网| 婷婷九月丁香天堂丁香天堂| 九九久久精品| 国产精品蜜臀99| 天天操天天插| 午夜天堂一区人妻| 五月丁香趴趴| 久久色在线视频| 精品久久66| 任你爽精品免费视频6| 色墦五月丁香| yw国产AV| 午夜理论片最新午夜理论剧| 国产精品色婷婷AV综合色色| 久久这里都是精品| 91久久国产自产拍夜夜91久久精品文字>91麻豆精品国产 | 久久九九国产| 色婷婷中文字母五月丁香| 天天操比比| 激情丁香五月天| 中文字幕有多少字| 超碰激情网| 天天射天天射一道本日本社区| 99热手机在线精品| 五月丁香综合激情| 玖玖99免费视频| 97好吊操| 五月婷婷丁香五月| 婷婷丁香www视频日本韩国| 91性高潮久久久久久久久| 五月好婷婷| 九九热在线精品| 97色天堂| 色五月婷婷在线观看第一页舔| 免费九九热| 天天日日综合| 性做久久久久久久免费看| 久久婷婷激情久久| 开心五月天激情网站| 五月天啪啪视频| 日韩二区搞逼插逼毛片| 婷婷99| www.久热| 午夜成人av在线| 丁香六月婷婷久久综合| 午夜婷婷久久| 99热全是精品| 婷婷五月天开心激情网| 99国产在线精品视频| 久热只有这里有精品| 五月丁香综合中文| 九九精品婷| 天天上天天爽| 青草视频在线播放| AV天堂淫乩| 神马欧美精| 丁香五月花影院| 婷婷色丁香五月| 丁香五月av| 久久天堂网| 天天干天天色天天干| 91中文狠狠综合| 情婷婷五月天在线| 五月丁香六月激情综合| 大香蕉大香蕉在线影院| 五月婷婷之综合激情| 99久久综合| 午夜少妇在线观看视频| 五月丁香天堂网婷婷| 99热一区| 五月久久五月激情| 狠狠干在线| 综合丁香婷婷五月天| 九九热精品| 五月婷婷偷拍| 婷婷香香五月| 天天色天天搡| 激情五月婷婷免费视频| 激情开心五月天婷婷基地丁香社区| 天天弄天天爽| 天天爽天天透天天爱| 婷婷五月六月激情| 婷婷六月丁| 超碰v| 嫩草AV久久伊人妇女超级A| 亚洲熟女色| 丁香六月婷婷综合激情欧美| 激情五月四色| 色婷婷激情五月天| sesesesezonghe| 人人人舔人人人操人人人摸人人人97| 99色视频在线| www99热| 婷婷激情六月中文| 国产成人AV在线| 五月丁香婷婷激激激综合网色播| 成人在线综合| 欧美99热| 久久综合首页| 第四色婷婷色五月| 日韩操人| 亚洲狠9| 天天天天天天操| 日韩99无码| 九热...av| 久久婷婷亚洲| 丁香桃色网| 99爱视频在线| 欧美三级黄色片久久| 亭亭丁香久久五月| 伊人五月天在线| 天天色情站| 91色碰| 凹凸探花电影| 中文在线成人| 久久精品无码一区| 玖玖色资源站| 9热在线观看| 婷婷视频网| 丁香五月 激情文学| 国产偷人爽久久久久久老妇APP| 五月丁香网av| 久久3p| 99re热视频这里只精品| 天天舔天天爽| 人人操9| 综合婷婷六月| 99在线免费视频| 亚洲日韩久久婷婷伊人| 婷婷激情五月天色| 大香蕉综合网| 高清国产一级婬片a免费| 婷婷五月天Av| 97人人射| AAA久久久| 五月婷婷综合在线视频小说| 五月丁香六月成人| 久久婷婷丁香花综合网| 丁香六月婷婷综合色| 婷婷久久亚洲| www.com亚洲网站在线免费| 狠狠干综合网| aV直接看| 色A网| 五月天久久久| 色情婷婷| 色婷婷综合视频| 97操| 婷婷五月丁香基地| 午夜日日| 一级性爱视频| 六月丁香色色色| 97色色综合| 9视频在线成人网站| 六月色婷婷综合影视| 五月天激情婷婷小说| 91色性感五月婷婷丁香| 亚洲AV无码久久精品色欲| 色五月播五月| 美女婷婷六月色| 久久9视频| 天天草狠狠擦| 精品影院| 伊人日日干| 爆乳熟妇一区二区三区四区| 夜夜夜夜操| www.第四色99| 五月婷久久在线| 婷婷大香焦| 欧美成人精品老美女噜噜噜| 伊人九九68| 99热免| 色综合9| 婷婷五月天亚洲综合| 婷婷丁香五月基地| 亚洲无码色色| 婷婷99中文字幕| 97久久草草超级碰碰碰| 九月av在线| 日本啪啪天堂| 色婷婷五月天av在线| 成人做爰A片免费看视频| 五月天色五月天| 九月婷婷人人操人人舔人人爱| 99re这里只有精品在线观看| 久久日本wwww色| 婷婷九月综合| 丁香蜜臀黄色婷婷五月天| 日本熟妇乱妇熟色A片蜜桃| 伊人五月人妻精品| 九一九九黄色| 婷婷五月综合在线| 五月综亚洲| 久热伊人在91| 天天摸天天肏| 色五月婷婷丁香婷婷| 这里只有精品96| 午夜国产精品AV在线播放| www99在线观看视频| 色综合婷婷| 狠狠干五月丁香| 日本97人人| 亚洲另类久久| 成人av在线网址| 丁香婷婷五月综合色情| 人人操人av| 亚洲超级碰| 免费观看18视频网站| 成人五月天视频播放| 五月婷婷激情日本| 国产一级片| 91色情播放| 色色色色色热| 久久视9精| 欧美色婷婷| 九九热在线视频,| 国产色99| 五月婷婷啪啪啪啪| 天天做天天爱天天日| 夜色爱爱亚洲| 91精品久久久久久久| 日日做天天操夜夜爽| 99热在线资源| 久久婷婷亚洲| 五月天婷久精视频| 亚洲国产婷婷色五月| 六月丁香婷婷综合影院| 婷婷社区五月天| 婷婷六月天激情| 天天摸.天天mo| 天天综合激情| 色播五月综合网| 乱精品一区字幕二区| 色色五月天丁香| 丁香婷停五月激情综合深爱| 99热精品在线观看| 色444综合网| 超碰免费大香蕉| 九九精品热播| 亚洲视频一区| 婷婷五月天久久久| 日韩精品一区二区亚洲AV观看 | 色吧婷婷五月亚洲| 五月丁香六月激情| 婷婷五月天色网久| 丁香五月婷婷婷婷欧美综合| 欧美丁香五月| 97久操| 九九热精品视频在线观看| 狼人婷婷久久| 操比激情五月综合| 婷婷五月丁综合| 亚洲色五月婷婷| 色啪久 | 九九九色综合| 成人αV视频免费观看| www五月天com| 99色视频在线观看| 亚洲色图五月丁香| 99热午夜精品| 蜜桃人妻无码AV天堂三区| 六月丁香啪啪啪| 精品人妻在线| 日韩黄色电影| 亚洲99热| 另类综合婷婷五月天欧美视频| www.狠狠狠.com| 亚洲五月天天| 国产精品久久久爽爽爽麻豆色哟哟| 免费AV在线| 亚洲精品激情| 天天日人人爽| 激情五月,深深爱五月| 亚洲丁香五月综合| 91操色| 成人国产综合| 天天综合情| 五月天丁香成人社| 激情九月综合| 欧美日本黄色| 99视频久久| 91碰| 狠狠色婷婷色| 婷婷天堂视频| 美国不卡视频| 五月丁香六月婷婷成人| 天天干,天天操,天天射| 美欧日韩国产成人在战| 色呦呦美女| 婷婷精品视频| www九九热| 爱性综合网| 国产日韩精品SUV| 国外亚洲成AV人片在线观看| 欧美电影在线观看| 人人草人人舔| 五月丁香六月片| 乱岳熟女50岁| 精品操逼一区二区| .comwww在线观看免费操| 97碰在线免费观看| 中文字幕成| 五月丁香综合| 激情深爱综合| 亚洲综合婷婷六月丁香五月| 热99热9| 五月天成人网在线观看| 天天日天天摸| 丁香五月98| 五月丁香六月婷婷综合网站| 五月花免费视频| 人妻人人操| 人妻AV在线| 欧美叉叉叉BBB网站| 91人在线观看| 第四色网婷婷| 99在线视频资源| 久热这里这里有精品| 婷婷大美在线| 26uuu国产| 任你日视频| 美日韩成人| 五月丁香在线| 色播五月婷婷| 少妇大叫太大太粗太爽了A片| 9 大屁股在线视频精品| 婷婷丁香花五月天| www.91.com黄| 丁香五月天偷拍| 五月丁香美女| 日日操夜夜骑| 午夜激情综合| 99视频这里有精品| 丁香久久九九99| 97操碰在线视频| 亚洲五月婷| 亚洲激情网站| 91凹凸在线| 香蕉AV福利精品导航| 五月丁香婷久久| 欧美日韩成人在线| 天天拍夜夜爽| 日韩亚洲视频| 曰韩五月丁香色婷婷无码| 91在线日| 久草网大香视频| 这里只有精品热| 亚洲激情精品| 色婷婷综合网站| 九九久久腿| 伦乱美欧| 激情丁香五月天图片| 能看的av| 久久超级碰视频| 深爱网深爱综合网| 亚洲婷婷免费| 97精品综合| 国产精品美女久久久久AV超清| 日木狠狠干| www.97干视频| 综合久久丁丁香婷| 欧美在线视频99| 五月激情在线| 色综合开心五月深爱五月| 色很很96| 亚洲色图81p| 任你搞在线观看视频| 另类小说色婷婷| 99色精品| 99日本精品视频热| 婷婷香蕉视频| 婷婷爱综合| 337p午夜影院| 久久怡红院| 九色1区视频在线| 99热99在线| 第四色大香蕉| 欧美特大片黄| 99这里只有免费的小视频在线观看| 五月天色婷婷小说| 337p大胆噜噜噜噜噜91Av| 亚洲AV另类| 五月丁香龟婷婷| 99综合网| 色婷婷狠狠爱| 亚洲视频在线观看99| 五月丁香大香蕉| 国产乱人偷精品人妻A片| 久久视网36| 综合激情五月丁香| 久久在这里99| 2020日日干| 五月天久久网站| 色啦啦视频| 日韩五月婷婷| 天天日夜夜爽| 9久久AV| 五月天激情国产综合婷婷| 国产看真人毛片爱做A片| 99爱免费在线观看| 69精品人人人人| 操人无码| 人妻激情在线| 色五月天丁香婷婷| 五月婷婷之婷婷| 99视频在线啪| 亚洲 六月 综合| 亚洲精品第一国产综合亚AV| 91热er| 五月天婷婷基地| 五月丁香六月婷婷精品| av色色国产| 97干免费视频| 激情五月天在线视频| 影音先锋偷偷色男人站| 67194中文字幕| 色婷婷玖玖影院| 性色天| 色色色五月| 婷婷五月,偷窥偷拍网| 超碰在线观看99| 色婷婷久久| 夜夜操,天天撸| 久草丁香婷婷五月天婷| 91超级碰在线视频| 精品久热69| 综合久久婷婷| 99操碰| 99这里有精品视频| 九九精品视频免费在线| 97色色视频| 深爱五月激情综合| 亚洲第一成人无码A片| 五月婷婷少妇之| 久热伊人91| 丁香六月无码| 欧美一线视频| 久久99热这里只频精品6学生| 97精品欧美91久久久久久久| 亚洲中文字幕AV| 久热这里这里有精品| 日韩人妻在线观看| 丁香五月在线伊人| 色99久草在线| 日本久久爱| 影音先锋91| 丁香五月手机在线| 激情文学天天| 色www久视频| 五月婷婷五月丁香| 人妻激情视频| 天天日夜夜爽| 婷婷六月天亚州| 538任你爽视频不一样的| 26uuu欧美日本| 色99视| av电影在线播放| 婷婷五月天激情小说| 欧美激情丁香五月| 婷婷色网| 色色色色色色网| www.久9| 99热这里只有精品99| 色五月天综合| 视频久久9| 大香网伊人久久综合| 欧美成人网婷婷综合在线| 五月天婷婷激情在线色图| 婷婷五月天综合网| 婷婷丁香五月激情密臀av| 偷偷操99| 欧美噜一噜| 国产44页| 另类少妇人与禽zOZZ0性伦| 婷婷五月天综合中文| 国产操碰| 热99热久| 色播综合| 婷婷五月另类网站| 九九九九毛片| 午夜激情久久| 五月婷婷狠狠干| 五月丁香基地| 日韩成人网址| 91超级碰人人操| 99网| 五月综合激情视频在线| 欧美久久五月婷婷| 九九久久精品國產| 欧洲MV日韩MV国产| 99久久五月婷婷| 热99视频| 日韩无码人妻一区二区| 内射人妻视频国内| 99热最新| 婷婷丁香综合成人| 天天综合色丁香| 丁香97综合| 亚洲欧洲中文日韩久久AV乱码| 丁香六月欧美| 激情五月五月五月婷婷| 激情网站五月| 久久一伦| 五月J香蕉婷婷| 人人操人人干AV| 综合激情网激情五月。| 婷婷丁香五月天综合AV| 激情综合99| 9 1大香蕉| 丰满少妇猛烈A片免费看观看| 日本久久婷| 丁香色综合| www.狠狠色.com| A级毛片高清免费不卡播放谢谢谢谢| 5月丁香综合图区| 婷婷久久久| 99riAv1国产在线观看| 婷婷五月花丁香| 天天爽—爽| 秋霞电影一级黄| 欧美在线视频9| 色激情网| 色九月婷婷丁香| 激情五月色综合国产精品| 六月丁香五月婷婷首页| 超碰93在线观看| 97超级操操| 国产婷伊人| 免看黄大片AA | 中文字幕欧美日韩VA免费视频| 丁香五月综合婷婷| 激情久久久久久久久久| 懂色AⅤ| 狠狠干青青草| 久久五月丁香综合17C| 亚洲区视频| 五月丁香啪啪啪综合网| 69精品人人人人人人| 五月婷婷国产| 99热有精品在线观看| 99se丁香| 五月天色软件| 中文字幕精品无码一区二区| 成人午夜视频精品一区| 婷婷丁香五月亚洲| 丁香五月天激情视频| 六月婷婷五月天| www.久久爱.com| 99激情网| 啪啪色区| 99日本黄站| 欧美日韩91| 9l视频自拍9l视频自拍九色学生| 91丁香五月| 欧美五月婷婷| 五月精品| 天天日天天干天天插天天射| 九九热精品视频九九| 丁香五月婷婷色| 六月婷色六月| 另类五月激情| 天天色综网| 色色色综合| 激情久久五月天| 天天操天天插| 97中文在线| 丁香色综合| 婷婷六月啪啪| 性做爰1一7伦| 免费观看欧美成人AA片爱我多深 | 日本超碰在线| 免费AV播放| 国产性av| 亚洲综合色婷| 国精产品一区二区三区| 婷婷亚洲综合| 欧美特大片黄| 国产婷婷久久| 日韩精品99久久| 国产ava| av线电影| 91精品婷婷国产综合| 99久久久国产大片区| 性色播| 丁香五月冃欧美| 噜噜在线| 9精品在线| www.婷婷六月天| 97高清国语自产拍| 97热超碰| 日本在线视频www色| 亚洲色色色色色色色色色| 激情www.98com| 激情综合色婷婷啪啪六月天| www.天天干| 9久久精品| 精品欧美一区二区三区久久久| 综合超碰熟| 99久久www| 欧美日韩精品人妻狠狠躁免费视频| 影音先锋AV资源男人站| www.久操| 这里只有精品日韩| 日本激情综合| www.minyis.com【JT】实力收量可预付QQ2101460746 | 91操人| 久久久区区一久久久久久| 五月网网站| 91碰碰| 亚洲精品一二三| 九九久久免费视频44| 天天做天天爱天天爽夜夜揉| 国产91视频| 狠狠色性| 性色婷婷| 少妇性按摩无码中文A片| 丁香五月黄色| 国产日韩欧美性生活| 色婷婷久久综合丁香五月| 亚洲天堂久久| 久久婷婷五月综合网| 日本99在线| 五月丁香 啪啪啪| 五月天成人在线播放| www.色五月| 久久多色| 很很干在线视频| av在线免费播放| 色亭亭九月| 超碰chaompinm| 色婷婷精品视频在线播放| 26uuu视频欧美| 99热这里只有免费精品| 九九激情网| 嫩草AV久久伊人妇女超级A| 狼人狠狠操| 婷婷.com| 婷婷性爱影院| 婷婷五月欧美| 九九无毛| 国产精品社区| 日本色色色| 精品少妇人妻AV无码专区偷人| 97碰碰电影| 99re在线这里只有精品视频首页| 日本天天色| 色婷大香蕉| 丁香色播五月天| www.国产色| 夜色爱爱亚洲| 这里只有精品视频看看| 久久大香蕉| 亚洲成人AV一区在线观看| 激情综合网,五月| 婷婷五月六月激情| 99久久国产宗和精品1上映| 另类亚洲2| 色婷婷综合网站| 精品久久久91久久影视网| 久久婷婷青草五月天| 天天草天天摸| 99干免费视频| 操逼福利视频| 99九九在线精品热动漫| 色婷婷综合在线| 国模淫穴色图| 99亚洲精品视频| 99日在线视频| 夜夜躁婷婷AV| 日本三级99人妇网站| 丁香久久五月天视频在线观看| 99综合免费视频| 五月丁香啪啪综合网| 99啪99| www.久久9| 在线A色| 五月丁香婷婷成人网| 在线sebiav精品视频| site:hcxsz888.com| 久久ww| 另类视频综合| 婷婷五月天视频免费在线观看| 欧美69色| 欧美Va日本Va| 999热在线观看视频| 久色国产| 久久99网| 九月婷婷综合八月丁香在线观看| 大香蕉人妻| 九九99视频精品| 久久九九99| 九九视频免费| 天堂成人A片永久免费网站| 日韩999| 日韩无码专区| 99热永久在线观看| 99久久99九九九99九他书对| 99热大香蕉| 91狠狠色丁香婷婷综合久久| 色亭亭九月| 五月天天视频| 伊人网啪啪| 五月丁香六月香香蕉| 久久99综合网| 天天射美女| 丁香六月婷婷激情综合| 变态另类9| 九九这里只有精品在线视频| 少妇性按摩无码中文A片| 五月丁香六月婷婷亚洲天堂网站| 色婷大香蕉| 大香蕉欧美在线| 久久电影4399| 婷婷综合玖玖五月| 狠狠擼综合| 日本大人久久| 亭亭五月丁香五月天激情| 51精品国内探花| 五月丁香六月婷婷啪啪| 黄色五月婷婷| 九九色欲网| 婷婷五月成人色综合| 天天狠狠综合精区| 天天操天天日天天爽| 在线五月婷| 97干在线播放| 亚洲网综合在线| 橾逼网| 亚洲AV综合网| 丁香五月性| 五月婷婷久久激情 | 日本人人草草| 五月丁香婷婷综合| 久久五月天色婷婷| 这里只有精品96| 五月婷婷九| 秋霞AV美国| 97干在线| www,久久久| 欧美成人AAA片一区国产精品| 日本五月视频| 97色热| 色色色色五月| 中文网av| 五月婷婷久久综合|