欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,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
返回資訊列表
激情五月天婷婷| 99爱视频在线| 久9视频免费播放| 99综合视频| 久久九九蜜| www.五月婷婷| 99热天堂| 可以免费观看的AV| 天天综合五月| 激情小说婷婷小说| 五月丁香琪琪| 超碰在线观看9| 国产欧美日韩综合精品一区二区 | 亚洲色婷婷99一9|| 色婷婷黄色网络| 一区=区操屄高清大全av| 9久久精品| 26uuu欧美激情另类| 97成人丁香婷婷| 在线日本www| 99色视频| 五月天婷婷社区| 天天干 夜夜爽| 五月婷婷激情四季| 天天噜天天插| 激情桃色网| 欧美日韩国产一区| 色欲九区| 婷婷在线综合| av在线观看免费| 区啪精品| 久久婷婷大香蕉| 色婷婷成人做爰A片免费看网站| 另类精品视频在线观看| 亚洲色碰| AV色五月婷婷| 2020久久婷婷五月| 亚洲99手机免费看视频| 第四色婷婷五月| 色婷婷99| 26uuu亚洲色| 这里只有精品视频视频在线观看| 99热国品免费| 三十路磁力链接| 婷婷五月综合欧美在线播放| 色青五月天| 国产视频久色| 国精产品一区二区三区| 久久婷婷五月天蜜桃| 夜夜综合色| 99热精这里只有精品| 五月婷婷色男女| 中文字幕,综合,91| 性做爰1一7伦| 成人无码精品1区2区3区免费看| 亲子乱AV一区二区三区下载| 26uuu欧美日韩| 婷婷五月天午夜激情影院| 丁香啪啪中文字幕| 光棍影院日韩精品| 午夜大香蕉| 婷婷涩涩五月天| 国产偷人妻精品一区| 婷婷五月综合色拍| AV性爱网| 99热精品在线| 99热这里有精力| 五月天婷婷深深爱| 欧美大肥婆大肥BBBBB| 色狠狠综合| 欧美黄色韩日网| 五月天丁香网站| 五月开心婷婷极品激情| 国产精品第一国产精品| 色婷婷丁香五月综合| 第四色婷婷最爱| 无码人妻一区二区三区免费九色| 欧美性爱特黄一级aaaassss| 嫩草AV久久伊人妇女超级a| 天天橾日日橾夜夜橾17| 99日本在线| 色伊人91在线视频| 在线中文av| 欧美综合婷婷欧美综| 日逼AV影音先锋男人资源站| 女人天堂久久| 成人色五月天| 欧美激情综合色综合啪啪五月| 色5月婷婷| 九九热在线精品视频| 狠狠ri| 五月天婷婷丁香花| 激情五月婷在线精品| 狠狠色成人影片| 一起草性爱不卡视频| 国产69久久久欧美黑人A片| 天天婬色综合| AV美美午夜| 丁香五月天成人网站| 狠狠色噜噜狠狠狠888| 九月激情婷婷丁香| 欧美大奶熟女噜噜噜噜| 天天爱天天操| 97日本在线播放| 五月婷婷影| 日本99视频| Www.se.久久| 午夜一区| 久久婷婷国产| 婷婷九月丁香天堂丁香天堂| 国产性色蜜乳| 欧美激情五月天| 久久五月天 91| 思思久久99热| 久婷婷| 婷婷中合| 色五月天综合| 91啪啪视频| 大香伊人婷婷| 夜夜骑天天玩天天日| 色色色色网站| 丁香激情网| 五月丁香AV在线| 97干在线| 99久久9| 九九热最新| 色色五月婷婷网| 久久狠狠高潮亚洲精品 天天摸夜夜摸夜夜狠狠摸 | 婷婷色情五月| 色综合久久之分久久| 五月综合激情| 五月婷婷啪啪啪| 欧美日韩一区二区三区四区| 亚洲无码九九| 激情玖玖综合网| 开心五月丁香综合久久| 粉嫩AV久久一区二区三区| 欧美 日韩 成人在线| 久久九九在线视频| 超级碰碰视频无码| 欧美狠狠色| 97成人丁香| 亚洲色婷婷99一9|| 激情综合五月丁香六月婷婷| 婷婷五月深爱五月| 丁香五月综合无码趴趴| 91婷婷丁香五月| 日本在线观看aaa 99| 伦99热| 五月丁香在线| 操你av| 色五月激情五月| 五月婷婷天天色| 五月婷婷综合在线| 丁香五月亚洲综合| 熟美女麻豆| 有哪些A片网站| 专区无日本视频高清8| 人人舔人人色人人高潮| 亚洲av综合在线| 天天天天做夜夜夜夜做| 狠爱婷色| 91色婷婷综合久久中文字幕二区| 婷婷黄色五月天在线视频| 色999亚洲人成色| 婷婷六月综合在线| 99久久高清视频| 思思热精品在线| 伊人影院久久网| 五月丁香六月在线| 99热国产| 热热色色五月天婷婷| 天天综合亚洲综合| 免费AV在线| 激情图片婷婷| 五月丁香综合伦理片| 激情6月| 少妇人妻综合色6699| 色色综合网。| 综合色色婷婷| 五月激情视频网| 亚洲三A| 精品色色色| 久久99三级在线视频| 五月婷婷色| 亚洲啪视频| 九九Av| 天天综合色综合| 中文字幕av久久爽| 婷婷五月天在线观看| 内射激情在线| 综合久久影院| 9l久久久视频| 疯狂做受XXXX高潮A片| 久久久久思思热| 婷婷久久丁香五月| 五月丁香美女| 26UUU在线观看| 亚洲成人AV一区在线观看| 婷婷五月天国产| 五月天开心色情网| av电影在线播放| 久久婷婷网| 插插五月天| 成人在线高清| 任你搞免费视频观看| 热五月婷婷| 伊人综合网4| 久9久成人精品视频| 99热只有| 91碰碰碰| 超碰在线免费9| 国产精品色色色色| 激情综合网婷婷久久| 碰碰碰91| 淫视馆av三区| 强辱丰满人妻HD中文字幕| 久久金品黃色| 五月天俺去也| 99热这里只有精品 搜| 婷婷久热| 久久精品4| 丁香六月天婷婷色| 97在线观看| 色色色99| 婷婷色网| 天天骑天天操| 99热免费观看| 五月婷在线| 五月天婷婷AV| 精品99在线| 亚洲另类噜噜| 丁婷婷五月天在线播放| 九九视频这里有精品| 美女要搞搞天天搞搞搞网站| 婷婷五月开心中文字幕色| 超碰人人色| 色婷婷综合成人| 激情婷婷99| 天天肏在线| 欧美人与性动交CCOO| 97碰在线视频| 人人操五月天| 成熟妇人A片免费看网站| 思思热精品在线视频| 久久五月婷婷丁香| 激情综合五月| 丁香婷婷大香蕉| 欧美日韩大黄| 激情丁香五月婷婷| 成功精品影院| 曰曰久久| 五月婷婷啪啪| 激情婷婷| 成人超碰网| 97天堂| 可以看的AV| 996er热| 人妻视频在线| 免费视频99| 深爱五月激情五月| 婷婷不干网| 精品一区二区三区免费毛片爱| 成人丁香五月| 亚洲天堂制| 久久3级片| 99色在线观看视频者| 色色婷婷综合| 在线99色| 蜜臀A∨在线水帘洞| 婷婷激情丁香五月天综合| 成人在线视频网| 这里只有精品亚洲| 欧美亚洲婷婷五月| 精品久久久999| 丁香五月久久| 三年高清大片免费观看国语| 狠狠色婷婷色| 久99| av在线色五月丁香婷区久| 久狠日av| 国产亚洲在线观看| www天堂99| 91九色PORNY中文啦| 2016日日夜夜操| 久久9热| 婷婷色在线| 亭亭五月色男人| 99热精品在线| 日本三级色| 丁香婷色| 大地资源色婷婷视频在线| 久久这里有精品| 天天色播| 91人人看| 梁铮版《蜘蛛女侠》在线| 99热日本| 精品久久久人妻| 五月天社区婷婷| 久久久久98| 欧美va亚洲va| 亚洲色五月| 丁香六月综合激情| 婷婷五月天奸女| 天色综合网站| 狠狠干五月天| 高清国产AV| 丁香五月天狠狠操| 97碰在线免费观看| 激情五月第四色| 鲁鲁色五月| 夜色.cnm| 色亭亭五月天网扯| 日本一道久久| 日韩欧美颜射| 香蕉久久av一区二区三区| 国产av天天插天天操天天爽| 日韩色色网| 色狠久| 九九热最新| 亚洲成人av在线观看| 婷婷色激情网| 秋霞A V毛片| 色九月丁香婷婷蜜桃在线观看| 久久亚洲婷婷| AV九九| 99资源人人| 99热日韩| 久草大| 五月天六月色| 久久久18| 亚洲天堂爱爱| WWW免费视频碰碰碰碰| 国产,欧美,学生妹,视频| 欧美成人日韩| 思思re99视频在线观看| 五月天丁香久久综合 | 中日韩狠狠色| 五月天四色房丁香亭亭| 久久99精品久| 色婷婷精品| 亚洲三级无码| 天堂婷婷丁香六月网| 丁香五月成人网| 五月天操逼网| 婷婷成人五月天| 久久99热久久99精品| 免费亚洲婷婷| 蜜桃婷婷五月| 婷婷久久大香蕉| 五月婷婷综合网| 激情综合五月天| 午夜福利8055| 久青操| 91在线视频综合| 色狠狠色噜噜AV天堂五区消防| 亚洲妇女熟BBW| WWW五月婷婷| 天天干狠狠| 色999五月色| 超碰99在线观看| 99热在线精品播放| 99久久这里只有精品| 亚洲成人影视在线观看| 91日本在线观看| 婷婷丁香视频在线观看免费| 激情婷婷丁香| 久久性爰视频这里只有精品| 激情视频综合| 99精品综合| 婷婷五月激情网站| 五月天婷婷狂暴白浆| 成 久久| 超碰人人摸AV| 狼人婷婷综合| 久久久ww| 激情综合色婷婷啪啪六月天| 91操在线视频| 成人无码精品1区2区3区免费看| 五月天激情综合首页| 亚洲色色色| 草美女在线观看视频在线播放| 99热在线观看| 六月婷婷视频| 婷婷5月天激情综合| 国产欧美va| 热久久99热欧美国产亚洲| 婷婷六月视频| 激情av| 婷婷激情五月天色| 99热在线看| 激情小说五月天社区丁香| 99精品免费| 9这里只有精品| 久热精品在看| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 青草激情在线| 伊人婷婷大香蕉在线| 99热精品网| 日良久久| 婷婷娌伦网| 久久综合伊人综合在线| 伊人热婷婷| 婷婷激情性爱| www激情| 婷婷爱在线观看| 久久99精品视频| 色五月婷婷DVD| 九热视频精品| 成熟妇人A片免费看网站| 综合五月网| 欧美一级色| 激情五月黄色| 天天色视频| 深爱激情网综合| 九九九色综合| 伊人影院久久网| 色五月 五月婷婷| 天天舔天天操| 激情综合网亚洲色图| 一区二区乱码视频| 狠狠狠狠狠狠草| 天天插综合网| 99亚洲视频| 99人人操人人摸| 丁香五月婷婷啪啪| 99精品热视频| 色一情一乱一乱91Av| 欧美成人AAA片一区国产精品| 色婷婷精品视频| 五月丁香婷在线| 成人五月天综合网| 久久五月网| 丁香五月123| 99ri精品| 99在线播放视频| 特级片神马电影| 久思思热视频在线观看| 99自拍网| 色99免费视频中文| 婷婷94s| 伊人在线视频| 大香蕉人妻| 99热免费观看| 丁香五月成人社区| 99热这里只有免费精品| 麻豆五月丁香婷婷| 婷久久| 色五月婷婷综合| 亚洲黄色av网站| 嫩草AV久久伊人妇女超级A| 五月婷婷综合网| 色五月色五天色情网址| 婷婷丁香红五月91C| 久久久激情| 99视频内射三四| 欧美天堂久久| 久久综合99| 91超碰在线观看| 亚洲激情综合| 色婷婷A| 99免费在线视频| 婷香五月激情视频| 1024在线一区| 综合色影院| 99热亚洲综合| 婷婷五月激情五月激情| 丁香六月亚洲综合| \\五月天婷婷激情| 精品三区影院| 伊人啪啪网| 播四月婷婷六月丁香| 天天操夜夜橾| 婷婷丁香亚洲色综合91| 欧美日韩成人在线| 少妇被躁爽到高潮无码文 | 亚洲成人免费在线| 秋霞AV淫| 欧美色五月| 久久婷婷精品| 国产毛片精品一区二区色欲黄A片| 亚洲精品久久久久久久久久吃药 | 精品国产va久久久久久久| 久久五月天激情婷婷| 婷婷黄色五月天在线视频| 99在线视频精品| 婷婷五月天成人影片| 可以免费看AV网站| 五月婷婷九九热| 成片免费观看视频大全| 久久AAAA片一区二区| 99色热综合| 97在线干| 天天天天天天天干| 激情五月天无人视频在线| 五月综合激情| 国自产拍偷拍精品啪啪一区二区| 色色丁香婷婷五月天| 色色影院黄大片| 色婷操逼| 思思热国产| 久久久大香蕉| 日韩在线观看网址| 影音先锋一区| 六月色国内综合| 六月丁丁香| 丁香五月欧美| 成人片在线免费看| 亚洲天堂AV免费片| 五月花婷婷| WWW色五月天| Jh7Uf088VHafNm| 国产激情在线| 影音先锋男人女人| a网站免费观看| 五月丁香欧美在线| 夜夜干夜夜操| 人妻操日日| 思思久久精品视频| 六月婷婷综合激情| 精品久9| 免费黄色视频网址| 天天色视频| 五月丁香| 中文精品在| 久久久区区一久久久久久| 婷婷玖玖五月天| 大地资源色婷婷视频在线| www一起操| 亚洲乱码成人| 深爱激情丁香| 丁香五月影视| 噜噜色噜噜网| 超碰av在| 5月色亭亭视频| 亚洲AV网站在线观看| 五月丁香久久综合91| 色色色综合网| 操人91| 久久九九一區| 久热A| 色爱综合网| 久久亚洲婷婷| www色五月| 欧美成人日韩| 99激情视频| 日韩一级一片内射视频4K| 人妻熟妇国产精品| 99re免费精品视频| 九热...av| 九九无码| 国产视频福利| 猫咪伊人久久| 九九热中文| 欧美影院| 久草五月婷婷| 日本超碰在线| 色综合久久久久| 色久女| 日本色久| 日韩成人AV在线| 玖玖激情五月天| 丁香婷婷六月| WWW,五月| 婷婷视频网| 日本五月婷| 99日本在线| 99热播放| 丁香五月婷婷亚洲色图| 日本欧美成人片AAAA| 久久久久久久五月婷婷六月丁香综合,开心激情综合网 | 超碰操日| 丁香五月婷婷色偷偷| 伊人在线另类| 九九热免费视频| 色婷婷天堂| 日本女人久久| 香蕉久久国产AV一区二区| 婷婷色综合| 精品99这里有| 丁香色婷婷色手机免费在线| 亚洲成人黄色网| 人妻在线网站| 色色婷婷五月天| 天天色综合天天| 天天爽天天| 五月天性色| 久久91久久精品久久| www激情五月天| 五月综合丁| www久久99| 99 热国产在| 五月天电影网| 色噜噜狠狠色综无码久久合欧美| 丁香五月香蕉在线| 日本韩国视频在线观看社区免费的9| 凹凸操Av| 五月丁香久久| 午夜在线成人网站免费观看| 九九99九九99九九99视频网| 丁香伊人激情| 99热在线爱| 色啪影院| 欧美日韩aaaa| 色色色色色热| 色99xx| 91久久久久久久久久久| 噜噜噜色噜噜| 久久婷.com| 亚洲成av人影院| 五月在线| 五月激情综合激情五月| 久久99综合网| 国产视频色色色色色色色| 五月婷婷六月色| Se.婷婷五月天| 色在线免费观看| 婷婷五月无码| 婷婷五月丁香六月| 热久久66| 99五月丁香丁| 色欲婷婷五月天丁香| 99国产精品白浆在线观看免费| 激情五月天小说|五月天开心激情网|亚洲精品国产自在现线|黄色五月天 | 婷婷六月色开| 米奇影视五月天| 91操熟女| 婷婷99丁香| 五月丁香激情综合| 午夜婷婷| 欧美色色色色色色色色色色| 六月丁香婷婷开心综合基地| 婷婷激情丁香五月天综合| 五月婷婷色白丝| 少妇性BBB搡BBB爽爽爽电影| 久久xxxx| 五月天 婷 欧美亚洲| 丁香五月亚洲综合| 99热这是里只有精品| 99超级碰碰| 久久婷婷五月天丁香| 色色亚洲五月天| 丁香五月色网| 五月婷婷六月情| 久久综合天天综合| 丁香五月综合在线| av婷婷丁香 六月| 日韩久热| 亚洲操精品| 99久久.www| 偷拍99在线视频观看| 极品少妇XXXX精品少妇偷拍| www.色99| 99热| 免费黄色片子| 日日夜夜干| 五月婷婷片| 噜噜噜噜婷婷五月天| 超碰97干| 九九99九九99九九99视频网| 五月天天综合| 欧美性久| 久久婷婷婷| 五月丁香少妇| 99九九精品视频| 99偷拍视频在线日本| 婷婷综合久久综合| 久久天堂女人| 久久综合网桃花| 婷婷人妻激情| 欧美啪啪9| 久久婷婷五月综合成人d啪| 婷婷九月丁香天堂丁香天堂| 操逼巨乳91| 色婷婷激情五月天| 任你搞网站| 成人在线综合| 色婷久久| 精品一区二区三区四区五区六区介绍| 丁香五月综合色婷婷| 激情综合女人网五月播播| 99精品热视频只有精品10| 五月丁香六月婷婷精品| 热久久99视频| 日日夜夜九九| 超碰操日| 成人资源在线| 色婷婷大香蕉| 色婷婷在线视频久| 天天摸夜夜夜| 182TV大香蕉| 日韩婷婷| 亚洲V国产V欧美V久久久久久| 成人超碰网| 二区成人视频| 久9热在线视频| 激情com| 人人看人人要| 伊人玖玖婷婷| 九九热超碰| 97碰碰九九视频| 色五月婷婷影视| 久艹大香蕉| 99re最新地址视频| 婷婷丁香激情五月天色色| 日日操夜夜爽| 可以免费观看的AV| 丁香五月婷婷综合激情哟哟哟| 狠狠色丁香婷婷| 九九99免费视频| 综合五月亭亭9| 俺去也五月| 激情五月综合网| 婷婷六月天国产综合| 色欲久久久久久综合网综合网| 国产亚洲色婷婷99精品| 丁香五月天激情网| 一起草AV| 97sese婷婷| 看黄的网站18禁| 亚洲第一精品网站| 久久精品人妻| 日韩在线成人电影| 国产色色网址网站| 国产密乳av一区二区三区四区| 97热视频| 婷婷桃色网| 欧美99热| 99 福利 导航| 五月激情婷婷六月丁香| 97人人操| 日韩AV在线免费| 天天日,天天射,天天插| 天天肏高清在线| 五月婷婷六月激情| 激情五月深爱五月| www.婷婷.com| 色九月综合| 成人超碰AV| 色色色五月婷| 婷婷综合天堂| 久久成人综合五月天| 九九久久99| 五月天婷婷久草丁香| 77799热| 色综合九九| 色99无码| 亚洲最大五月六月丁香婷婷| 99噜噜噜在线播放| 快乐激情五月色婷婷| 欧美激情VA永久在线播放| 婷婷五月天桃花网| 思思久久精品视频| 天天插天天爽| 九九操操| 二色AV| 色色色97| 婷婷俺去也| 影院久久久| 狠狠撸激情综合丁香五月天俺来啦| 久久久久9999| 99热九九这里只有精品10| 99re思思久久| 九九精品视频免费在线| 久久五月婷| 啪啪婷婷五月天激情| 99视频这里有精品| 五月婷婷97| 色导航色婷婷五月天在线观看| 伊人九九68| 五月天精品综合在线| 最近中文字幕2019视频1| 婷婷五月成人有| 久久婷综合| 99热国产在| 婷婷色综合| 五月六月激情婷婷| 97操操网| WWW,婷婷,COM| 99偷拍视频在线日本| 亚洲综合五月天| 久99精品视频| 欧美日韩成人一区二区| 色婷婷五月在线| 丝袜人妻| 天堂AV三级| 免费无码毛片一区二区A片| 五月天成人在线精品| 免费超碰在线观看| 九九99一区| 日本乱论99| 97人人看| 亚洲激情免费久久| 日韩在线看AV| 夜夜操天天干| 亚洲av免费在线| 中文字幕在线免费观看视频| 五月婷婷开心色伊人| 亚洲狠9| 亚洲色五月婷婷| 99欧州偷拍视频| 天天干夜晚夜操| 婷婷六月婷婷| AV中文字幕夜夜操b天天摸bb| 五月天激情久久| 91玖玖| 欧美大肥婆大肥BBBBB| 国产熟女日日骚五月丁香爱| 97香蕉人人在线观看| 人妻av在线| 一个色的综合| 久人人操| 色五月激情网| 九九爱激情| 网色99| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 深爱婷婷丁香五月激情| 99久久久久久www| 狼人久草| 激情综合五月婷婷六月丁香| 五月综合色| 久婷婷视平| 91人人操人人| 久色网五月| 日韩av在线免费观看| 天天做天天爱| www.五月天婷婷| 天天爽天天爽天天爽天天爽天天爽天天爽天天| 毛片九九九九九九九九18| 天堂五月婷婷| 五月婷婷之六月丁香| www.91在线观看| 免费观看全黄做爰的视频| 色欲久久久久久综合网综合网| 五月丁香色色综合| 综合色色综合| 色婷婷六月| 五月婷婷色情| 丁香五月天的网址。| 激情五月综合色| 亚州激情九月| 久久综合久色欧美综合狠狠| 丁香六月啪| 久久黄色片| 久草九九| 九九视频在线| 日日夜夜狠狠操| 五月激情啪啪| 91视频免费后入强操| 粉嫩AV久久一区二区三区| 激情五月丁香在线观看直播| 丁香婷五月| 久九九热| 色色欧美色色| 色情五月综合婷婷| 亚洲秘 无码一区二区三区妃光/1| 天天操夜夜夜拍拍拍| 激情综合区| 亚洲色基地| 久久婷婷免费| 激情久久久| 91成人视频| 99视频这里有精品| 激情五月天无人视频在线| 综合激情五月丁香| 狠狠色婷婷7| 玖玖激情网| 婷婷丁香五月天色色| 色狠狠综合| 色七七九九| 国产婷婷五月色情综合| 人妻操在线看| 人人色AV| 婷婷久久五月天亚洲欧美国产日韩在线观看 | 综合色播| 国产精品美女久久久久AV超清 | 97色婷| 老司机伊人| 日本欧美国产| 成人精品在线| 婷婷五月色天| 色五月激情基地| 人草人人| 婷婷午夜精品久久久| 95精品区一区二| 久久久jd| 婷婷五月激情在线| 疯狂做受XXXX高潮A片动画| 丁香五月天在线视频| 在线中文av| 99热爱爱干干日| w婷婷五月婷婷w| 色呦呦美女| 色99在线观看| 人妻av在线| AV九九| 永久的网站AAAA| 丁香五月天在线观看视频| 九九综合久久| 五月丁香好婷婷姑娘综合网| 亚洲色五月天在线| 婷婷丁香激情| 情趣视频66| www.色婷婷.com| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 美欧成人视频| 日本三级韩三级99久久| 精品人妻久久久久久| 91超级碰碰碰| 伊人丁香五月天丁香在线婷| 婷婷六月香| av成人在线播放| 欧日韩成人| 五月婷婷丁香深深爱| xxx日本东京热| www,26uuu,c0m,色情| 久久这里有精品| 五月婷婷久久综合| 99国产精品白浆在线观看免费| 婷婷综合性爱网| 五月丁香激情啪啪网| 国产精典视频在线观看| 在线观看熟女少妇| 久久99这里只有精品视频 | 亚洲一级 片内射网站在线观看| 色婷婷aV四虎| 久久久久久久97| 69五月天视频| 六月色播| 五月丁香六月综合激情| 午夜不卡久久精品无码免费| 五月天婷婷激情四射综合| BT综合在线视频观看| 丁香六月狠狠| 美女妹子后射视频网站在线观看| 黄色成人网站在线播放| 99国产精品白浆在线观看免费| 91av成人| 丁香五月天婷婷在线视频| 可以直接看的AV网站| 色婷婷五月色| 五月婷婷操操| 久久婷婷精品| 日操夜撸| 操一区| 永久热91| 亚洲色情一区二区三区四区| 亚洲va成人va成人va在线观看| 久久98| 538任你爽视频不一样的| 天天爽天天爽天天爽天天爽天天爽天天爽天天| 色五狠狠| 99热免费| 丁香五月AV| 俺五月| 亚洲综合99| 99视频综合网| 日本在线视频手机播放五月婷| 久久丁香综合| 色综色网| 成人天天爽| 97超碰在线免费观看| 97超碰人人操| 五月激香蕉网| 久久婷婷伊人| 欧美色爱五月天| 欧美一级色| 色色五月婷| 97伦乱| 国产激情综合五月久久| 国产裸舞表演WWWW| 色色99| 久久综合中文| 欧洲色| yw.av| 五月婷婷五月天天| 热99这就是精品视频| 丁香五月婷婷色偷偷| 五月天色网站| 欧美三级巜人妻互换| 97色碰| 九九精品亚洲| 狠狠狠色激情综合适合| 九九色中文| 五月婷婷免费视频| 国产FREESEXVIDEOS性中国| 久久色区| 性色婷婷| 婷婷五月综合啪| 欧美激情综合色综合| 在线看的免费网站| 少妇日麻屄| 91一起操| 亚洲五月丁香综合网| 99久久99九九九99九他书对| 婷婷五月天中文字幕| 色爱亚洲| 黄色成人AV在线| 激情婷婷综合五月少妇| 色99综合色88| 激情 婷婷 丁香五月天| 99精品国产乱码久久久人妻| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 天色综合网站| 国产精品激情AV久久久青桔| 国产色色网址网站| 国产精品国产成人国产三级| 天天噜噜| 99久热这里只有精品视频删减版| 五月丁香黄色视频| 思思99热这里只有精品| 在线综合网| 九九国产精视频| 日韩成人电影AV| 丁香五月第四色88| 国产精品成人网址| 综合五月激情网| 激情影院69| 色婷婷成人五月| 综合色婷婷| 一级精品999WWW| 99综合久久| 色五月综合网| 九九免费在线视频| 91在线资源| 激情综合五月开心狠狠| 色综合视频在线| 婷婷五月天综合久久日| 丁香婷婷人妻综合网| 少妇高潮呻吟A片免费看软件| 五月婷婷色综图片| 五月Huangsewang| 免费视频这里只有精品| CAOBIBI| 91婷婷色 | www.99成人视频| 免费AV在线网址| 97操操操| 丁香六月婷婷综合麻豆| 就爱日五月天| 日本高清久| 五月丁香久久网| 五月婷婷啪啪啪啪| 五月天激情网图片| 丁香五月婷婷啪| 99热99精品在线观看| 亚洲丁香婷婷丁香五月天激情| 九九色人| 熟女人妻视频| 五月丁香影视| 激情com| 五月婷综合| 超碰碰碰碰| 丁香色情五月综合网站| 26.uuu丁香五月婷婷| 嫩草AV久久伊人妇女超级A| 久久免费婷婷视频| 色优久久| 91九色精品| 婷婷另类小说| 亚洲色情久久| 国产欧美精品AAAAAA片| 五月婷婷综合潮喷| 五月色网| 丁香六月婷婷色XXXX| 99热网址| 99性感视频| 久久婷狠狠色| 久99婷婷色综合| 黄网免费看| 婷婷综合五月色播| 大战熟女丰满人妻AV| 26uuu另类亚洲欧美日本一| 色综合综合色| 丁香九月激情在线视频| 久久婷婷影院| 另类激情五月天| 天天综合情| 午夜色丁香| 秋霞免费视频| 玖玖爱资源站| 夜夜爽天操| 国产乱码久久| 9热在线视频精品| CHINESE熟女老女人HD视频| 性爱久久| av人人操| 99热国产这里只有| 色婷婷综合久久久久| 狠狠色婷婷综合开心影视| 午夜大香蕉| 国产91视频| 丁香六月激情综合| 99热这里有精品2| 久热只有这里有精品| 五月婷婷导航| 亚洲无码影片| 99噜噜噜在线播放| 狠狠色综合网站久久久久| 九九视频在线观看| 99热色在线精品| 午夜性爱影视一区77| 久久五月丁香| 色婷婷国产精品综合在线观看| 蒲京久久无码视频| 丰满少妇猛烈A片免费看观看 | 五月激情六月综合| 欧美天堂久久| 久久九九国产精品怡红院| 婷婷.com| 色五月成人网| 婷婷色日本| 婷婷久久夜| 九九激情网| 五月色情婷婷| 国产成人+综合亚洲+天堂| 另类激情码| 色五月婷婷自拍| 欧美熟妇一区二区三区| 操b视频在线观看一区二区| 久久久高清| 激情五月天婷婷视频| 99热色无码| 亚洲婷婷视频| 99久久亚洲精品视频| 在线看片av| 久久五月激情| 日韩婷婷| 婷婷在线观看五月天在线视频| 久久香蕉影院| 天天爱天天做天天日| www.天天色综合| 色八月婷婷| 精品婷婷五月天| 国熟女视频| 五月丁香婷中文| 亭亭五月激情亚洲在线| 五月婷丁香亚洲| 五月丁香六月婷婷综合网缴情| 狠狠干五月丁香综合网| 色色网站在线| 伊人色综合网| 91九色国产在线| 欧美日韩一区二区三区四区| 亚洲五月婷婷| 国产亚洲成AV人片在线观黄桃| 97caop| 日本大人久久| 五月天婷婷久草丁香| 久久精品五月天| 九九久久精品| 丁香五月综合福利视频导航| 国精产品久久| 婷婷亚洲五月色综合| 六月伊人婷婷| 色爱终和网| 丁香美女五月天婷婷| 大香蕉五月丁香| 99ri视频| 五月婷丁香| 久久精品爱爱| www激情网| 天天久| 色婷婷香蕉| 香蕉久久国产AV一区二区| 人操91在线| 亚洲不卡| 亚洲射激情| 激情五月婷婷五月| 五月叮香啪| 极品精品一区二区三区在线| www一起操在线观看| 五月婷婷啪啪| 久8色色| 久久综合中文| 淫五月停停| 另类激情五月| 五月激情婷婷色| 久草狼人| 午夜不卡久久精品无码免费| 毛v一区二区视频| 亚洲精品色色| 五月天色婷婷激情| 亚洲激情四射| 婷婷五月丁香性爱| 9+1视频网址| 手机免费福利视频| 天天操天天操天天操天天操天天操| 久久亚洲婷婷| PORNY九色9l自拍视频成人| 思思网站| 五月婷婷六月色| 亚洲视频一区| 欧美色偷拍| 久久婷婷六月综合资源| 天天爽天天操| 99噜噜噜在线播放| 中文字幕人妻在线| 色狠狠色噜噜噜a天堂一区| 亚洲AV网址| 色婷婷狠狠久久综合五月| 五月色综合| 这里只有精品1| 日本高清久久| 超碰在线9| 欧美精品中文字幕亚洲专区| 婷婷色吧| 99热这里有精品2| 激情五月婷婷网| 一操久久| 99久久99热这里只有精品| 久久久久人妻网址| 五月天停婷基地| 夜夜爽天天日| 天天爽夜夜操| 久久久久久激情| 婷婷六月丁香欧美视频在线| 最近免费中文字幕大全高清大全1| 97婷婷丁香| 这里只有免费精品| 无码激情AAAAA片-区区 | 亚洲人妻Av| 婷婷丁香色情| 国产69久久久欧美黑人A片| 97色干| 色婷婷五月天在线观看| 色啦啦视频| 秋霞三级影视资源| 大香蕉九九| 91精品国产99久久久久久天美| 天天日,天天射,天天舔| 日韩综合成人| 在线VA视频| 婷婷五月婷婷| 丁香色婷婷| 九九操操| 五月丁香色婷婷色| 丁香六月婷婷五月婷婷| 丁香五月色激情| 激情综合色五月丁香六月亚洲| 欧美性生交XXXXX无码小说| 六月激情久久婷婷| 五月丁香激情综合网| 开心五月婷婷激情| 欧美va视频| 五月婷精品| 欧美色色色色色| 熟女少妇内射日韩亚洲| 97人人操| 大香蕉99| 久久久久久久97| 久久久99久久| 色综合激情| 玖玖热视频| 182无码| 狠色狠色综合久久| 六六久久黄色| 这里只有精品69| 操一区| 色玖玖综合网| 毛片新网地| 中文字幕不卡+婷婷五月| 色狠狠色综合久久久绯色AⅤ影视 大香蕉五月天婷婷丁香91 | 激情五月婷| 午夜丁香综合婷婷| AA久久|