欧美成人午夜精品久久久,国产?V天堂一区二区三区,欧美精品va在线观看,亚洲一区二区三区免费在线观看,av无码精品一区二区久久,欧美性爱视频不卡一区三区,欧美乱人伦视频在线观看,国产一级牲交高潮

ARTICLE DETAIL

資訊詳情

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

STM32驅(qū)動DS1302實時時鐘:從時序模擬到定時開關實戰(zhàn)

STM32驅(qū)動DS1302實時時鐘:從時序模擬到定時開關實戰(zhàn) 1. 為什么還要折騰 DS1302 這顆老芯片前陣子幫朋友做一個帶定時開關的控制器主控用的是 STM32F103C8T6 最小系統(tǒng)板需求很簡單每天固定時間點觸發(fā)繼電器斷電重啟后時間不能丟。第一反應肯定是上 DS3231溫補晶振、I2C 接口、精度高但翻了下手頭的元件盒DS3231 模塊用完了倒是翻出來幾顆當年買錯的 DS1302 直插芯片和配套的 32.768kHz 晶振。想著反正精度要求不高一天誤差幾秒也能接受就干脆用 DS1302 把這事做了。DS1302 這顆芯片玩過 51 單片機的人基本都認識屬于那種入門必點的外設。它用的是三線串行接口嚴格說不是標準 SPI也不是 I2C而是自己的一套時序協(xié)議一根 CE有的資料叫 RST、一根 SCLK、一根雙向 IO。正因為時序是自己定義的所以移植到 STM32 上不能直接套用硬件 SPI 或 I2C 外設得老老實實用 GPIO 模擬時序。這也是很多人第一次在 STM32 上驅(qū)動 DS1302 時踩坑的地方——習慣了 HAL 庫一把梭突然要自己數(shù)微秒節(jié)奏就亂了。這篇筆記就是把我從接線、寫時序、調(diào)讀寫、處理 BCD 碼到最終跑通定時功能的完整過程整理出來。內(nèi)容偏向?qū)嵅俅a基于 STM32 HAL 庫但時序邏輯是通用的換成標準庫或者別的 Cortex-M 芯片改改 GPIO 操作就能用。適合兩類人看一類是剛接觸 STM32、想找個簡單外設練手時序操作的新手另一類是手頭正好有 DS1302 庫存、想快速把它用起來的老玩家。我會把每個關鍵決策背后的原因講清楚比如為什么上拉電阻不能省、為什么寫保護要先關、為什么讀出來的秒要屏蔽最高位這些細節(jié)文檔里往往一筆帶過但實際調(diào)試時全是坑。2. DS1302 到底是個什么東西先把原理捋順2.1 三線接口的本質(zhì)不是 SPI 也不是 I2C很多人看到 DS1302 三根線第一反應是這不就是 SPI 嗎。其實差得遠。標準 SPI 有明確的 CPOL/CPHA 四種模式主機在時鐘邊沿采樣從機在另一個邊沿輸出而且 SPI 是主機驅(qū)動時鐘、數(shù)據(jù)全雙工。DS1302 的協(xié)議更原始它把一次通信拆成命令字節(jié) 數(shù)據(jù)字節(jié)兩個階段命令字節(jié)固定從 bit0 開始發(fā)數(shù)據(jù)字節(jié)則是 bit0 先發(fā)還是 bit7 先發(fā)取決于讀還是寫。具體來說DS1302 的通信規(guī)則是這樣的CE 拉高之后SCLK 上升沿把數(shù)據(jù)寫進芯片下降沿把數(shù)據(jù)從芯片讀出來。注意這里有個容易搞混的點——寫的時候是上升沿采樣讀的時候是下降沿輸出。所以你在寫時序函數(shù)的時候如果是寫操作先準備好 IO 電平再拉高 SCLK如果是讀操作先拉低 SCLK再去讀 IO 電平。這個順序反了讀出來的數(shù)據(jù)就是亂的。命令字節(jié)的格式也值得說一下。bit7 固定是 1表示使能訪問bit6 是 RAM 還是 CLOCK 的選擇0 表示時鐘寄存器1 表示 RAMbit1 到 bit5 是寄存器地址bit0 是讀寫位0 寫 1 讀。舉個例子要寫秒寄存器地址 0x80命令字節(jié)就是 0x80要讀秒寄存器命令字節(jié)就是 0x81。這個規(guī)律記住之后后面所有寄存器的操作都能推出來。2.2 寄存器地圖哪些能用哪些別碰DS1302 的時鐘寄存器一共 8 個地址從 0x80 到 0x8E全是偶地址寫讀的時候地址加 1。我整理了一張表把常用寄存器的位定義列出來方便對照寄存器寫地址讀地址bit7bit6bit5bit4bit3bit2bit1bit0秒0x800x81CH10秒秒個位分0x820x83010分分個位時0x840x85012/2410時/PM時個位日0x860x8700010日日個位月0x880x8900010月月個位周0x8A0x8B00000周年0x8C0x8D10年年個位寫保護0x8E0x8FWP0000000這里有幾個關鍵位必須注意。秒寄存器的 bit7 是 CH 位Clock Halt上電默認是 1意思是時鐘停止。你如果只寫了時間沒清這個位會發(fā)現(xiàn)時間根本不走讀出來永遠是那個值。我第一次調(diào)的時候就栽在這盯著串口打印的固定時間看了半天以為是晶振沒起振換了兩個晶振才發(fā)現(xiàn)是 CH 位沒清。寫保護寄存器 0x8E 的 bit7 是 WP 位上電默認是 1表示寫保護開啟這時候你往任何時鐘寄存器寫數(shù)據(jù)都會被忽略。所以標準流程是先寫 0x8E 寫 0x00 關保護改完時間再寫 0x8E 寫 0x80 開保護。這個順序不能省省了就會出現(xiàn)寫進去讀出來還是舊值的詭異現(xiàn)象。2.3 備用電池和晶振硬件上最容易翻車的兩個點DS1302 有個 VCC1 和 VCC2 雙電源引腳VCC1 接備用電池VCC2 接主電源。芯片內(nèi)部有個電源檢測電路主電源掉電時自動切到電池保證時鐘繼續(xù)走。這里有個細節(jié)電池電壓要低于主電源電壓否則芯片可能判斷不出主電源掉電一直用電池供電反而加速電池消耗。一般用 3V 的 CR2032 紐扣電池主電源 3.3V壓差剛好合適。晶振這塊DS1302 要求外接 32.768kHz 晶振而且對負載電容有要求。市面上常見的圓柱形晶振負載電容一般是 6pF 或 12.5pF你得配對應的電容。我手頭那批晶振是 6pF 的一開始隨手焊了兩個 22pF 的電容上去結果時間走得明顯偏慢一天能差十幾秒。后來查了晶振規(guī)格書換成兩個 6pF 的電容誤差就降到一天兩三秒了。如果你對精度有要求建議直接上 DS3231省得跟電容較勁。另外DS1302 的 IO 引腳是開漏輸出必須接上拉電阻一般 4.7k 到 10k 都行。我習慣用 4.7k上升沿更陡一點時序更穩(wěn)。有些模塊板子上已經(jīng)集成了上拉電阻如果你是自己畫板子千萬別忘了這三個電阻否則讀出來的數(shù)據(jù)全是 0xFF。3. 硬件接線與工程搭建3.1 接線方案三根信號線怎么分配我用的 STM32F103C8T6 最小系統(tǒng)板DS1302 模塊是那種帶電池座的小板子。接線如下DS1302 引腳STM32 引腳說明VCC23.3V主電源VCC1CR2032 正極備用電池GNDGND共地CEPA4片選/復位SCLKPA5串行時鐘IOPA6雙向數(shù)據(jù)X1/X232.768kHz 晶振晶振引腳這里 CE、SCLK、IO 我選了 PA4、PA5、PA6其實隨便選三個普通 GPIO 都行只要不是那種有特殊功能的引腳比如 JTAG 占用的 PA13/PA14/PA15。選 PA4 到 PA6 純粹是因為它們挨著接線方便而且不跟串口沖突調(diào)試的時候能用串口打印時間。IO 引腳要注意配置成開漏輸出加外部上拉或者配置成推挽輸出但在讀的時候切換成輸入模式。我兩種都試過開漏加外部上拉更省事不用來回切模式代碼也簡潔。如果你板子上沒有外部上拉那就得在代碼里動態(tài)切換輸入輸出方向稍微麻煩一點。3.2 工程配置CubeMX 里怎么點用 CubeMX 配置的話PA4、PA5 配成 GPIO_OutputPA6 配成 GPIO_Output 開漏模式Output Open Drain上拉使能。時鐘樹按默認的 72MHz 配就行DS1302 的時序?qū)χ黝l不敏感因為我們是靠軟件延時控制節(jié)奏的。延時函數(shù)這塊我直接用 HAL 庫的HAL_Delay()做毫秒級延時微秒級延時用__NOP()循環(huán)湊。DS1302 的時序要求其實很寬松SCLK 最高頻率 2MHz也就是周期 500ns我們只要保證每個電平保持個一兩微秒就絕對安全。所以微秒延時不用太精確用循環(huán)空轉(zhuǎn)就行。void ds1302_delay_us(uint16_t us) { while (us--) { __NOP(); __NOP(); __NOP(); __NOP(); __NOP(); __NOP(); __NOP(); __NOP(); } }這個延時函數(shù)在 72MHz 下大概每個循環(huán) 1 微秒左右不用精確到納秒因為 DS1302 對時序的容忍度很高。我實測過就算延時翻倍或者減半讀寫照樣正常。3.3 引腳宏定義方便移植的寫法為了讓代碼好移植我把引腳操作都封裝成宏#define DS1302_CE_PORT GPIOA #define DS1302_CE_PIN GPIO_PIN_4 #define DS1302_SCLK_PORT GPIOA #define DS1302_SCLK_PIN GPIO_PIN_5 #define DS1302_IO_PORT GPIOA #define DS1302_IO_PIN GPIO_PIN_6 #define DS1302_CE_HIGH() HAL_GPIO_WritePin(DS1302_CE_PORT, DS1302_CE_PIN, GPIO_PIN_SET) #define DS1302_CE_LOW() HAL_GPIO_WritePin(DS1302_CE_PORT, DS1302_CE_PIN, GPIO_PIN_RESET) #define DS1302_SCLK_HIGH() HAL_GPIO_WritePin(DS1302_SCLK_PORT, DS1302_SCLK_PIN, GPIO_PIN_SET) #define DS1302_SCLK_LOW() HAL_GPIO_WritePin(DS1302_SCLK_PORT, DS1302_SCLK_PIN, GPIO_PIN_RESET) #define DS1302_IO_HIGH() HAL_GPIO_WritePin(DS1302_IO_PORT, DS1302_IO_PIN, GPIO_PIN_SET) #define DS1302_IO_LOW() HAL_GPIO_WritePin(DS1302_IO_PORT, DS1302_IO_PIN, GPIO_PIN_RESET) #define DS1302_IO_READ() HAL_GPIO_ReadPin(DS1302_IO_PORT, DS1302_IO_PIN)這樣寫的好處是換芯片或者換引腳的時候只改這幾個宏就行底層時序函數(shù)一行都不用動。我后來把這個驅(qū)動移植到另一塊 GD32 的板子上就花了五分鐘改宏定義。4. 時序代碼逐行拆解4.1 寫一個字節(jié)從 bit0 開始上升沿有效DS1302 寫字節(jié)的規(guī)則是從 bit0 開始每次把數(shù)據(jù)放到 IO 上然后拉高 SCLK再拉低 SCLK循環(huán) 8 次。注意命令字節(jié)和數(shù)據(jù)字節(jié)都是 bit0 先發(fā)這點跟 SPI 的 MSB first 不一樣別搞混了。void ds1302_write_byte(uint8_t dat) { uint8_t i; for (i 0; i 8; i) { if (dat 0x01) DS1302_IO_HIGH(); else DS1302_IO_LOW(); ds1302_delay_us(1); DS1302_SCLK_HIGH(); ds1302_delay_us(1); DS1302_SCLK_LOW(); ds1302_delay_us(1); dat 1; } }這段代碼里dat 0x01取最低位然后右移保證下一次取的是新的最低位。延時放在拉高 SCLK 之前和之后是為了滿足建立時間和保持時間。DS1302 的建立時間要求是 50ns保持時間也是 50ns我們延時 1 微秒余量足夠大。4.2 讀一個字節(jié)下降沿之后采樣讀字節(jié)的規(guī)則稍微繞一點DS1302 在 SCLK 下降沿把數(shù)據(jù)輸出到 IO 上所以我們要先拉低 SCLK等一會兒再去讀 IO 電平。注意讀的時候也是從 bit0 開始讀到的第一位要放到變量的 bit0 位置。uint8_t ds1302_read_byte(void) { uint8_t i, dat 0; for (i 0; i 8; i) { dat 1; if (DS1302_IO_READ()) dat | 0x80; DS1302_SCLK_HIGH(); ds1302_delay_us(1); DS1302_SCLK_LOW(); ds1302_delay_us(1); } return dat; }這里有個細節(jié)dat 1放在讀之前然后如果讀到 1 就dat | 0x80。這樣第一次讀到的位最終會落在 bit0第二次落在 bit1以此類推。如果你寫成先讀再移位順序就反了讀出來的數(shù)據(jù)是 bit 倒序的。我第一次寫的時候就是先讀后移結果讀出來的秒是 0x80 而不是 0x01查了半天才發(fā)現(xiàn)是移位順序錯了。4.3 寫寄存器命令字節(jié)加數(shù)據(jù)字節(jié)寫寄存器的流程是CE 拉高發(fā)命令字節(jié)發(fā)數(shù)據(jù)字節(jié)CE 拉低。CE 拉低之后一次通信結束。注意 CE 拉高之后要先延時一小會兒再發(fā)第一個字節(jié)給芯片一點準備時間。void ds1302_write_reg(uint8_t cmd, uint8_t dat) { DS1302_CE_LOW(); DS1302_SCLK_LOW(); DS1302_CE_HIGH(); ds1302_delay_us(2); ds1302_write_byte(cmd); ds1302_write_byte(dat); DS1302_CE_LOW(); ds1302_delay_us(2); }CE 拉低的時候順便把 SCLK 也拉低這是個好習慣保證下次通信從已知狀態(tài)開始。有些資料說 CE 拉低之后 SCLK 要保持低電平其實拉低 CE 之后芯片內(nèi)部會復位時序SCLK 什么狀態(tài)無所謂但統(tǒng)一拉低更規(guī)范。4.4 讀寄存器注意命令字節(jié)的 bit0 要置 1讀寄存器的命令字節(jié)是寫命令字節(jié)加 1也就是 bit0 從 0 變 1。比如讀秒寄存器寫命令是 0x80讀命令就是 0x81。讀的時候發(fā)完命令字節(jié)之后IO 要切換成輸入模式如果用的是開漏加外部上拉就不用切直接讀就行。uint8_t ds1302_read_reg(uint8_t cmd) { uint8_t dat; DS1302_CE_LOW(); DS1302_SCLK_LOW(); DS1302_CE_HIGH(); ds1302_delay_us(2); ds1302_write_byte(cmd); dat ds1302_read_byte(); DS1302_CE_LOW(); ds1302_delay_us(2); return dat; }如果你用的是推挽輸出模式讀之前要把 IO 引腳切成輸入模式讀完之后再切回輸出。我一開始用推挽讀出來的數(shù)據(jù)全是 0xFF就是因為 IO 還在輸出模式芯片輸出的數(shù)據(jù)和 MCU 輸出的電平打架了。后來改成開漏加外部上拉這個問題就沒了。5. BCD 碼轉(zhuǎn)換與時間讀寫5.1 BCD 碼為什么 0x23 表示 23DS1302 內(nèi)部所有時間寄存器都是 BCD 碼格式也就是用 4 個二進制位表示一個十進制數(shù)字。比如秒寄存器讀到 0x23不是十進制的 35而是表示 23 秒。高 4 位是十位低 4 位是個位。這種格式在早期 RTC 芯片里很常見因為用 BCD 碼做十進制顯示的時候不用做除法。轉(zhuǎn)換公式很簡單uint8_t bcd_to_dec(uint8_t bcd) { return (bcd 4) * 10 (bcd 0x0F); } uint8_t dec_to_bcd(uint8_t dec) { return ((dec / 10) 4) | (dec % 10); }比如 0x23 轉(zhuǎn)十進制高 4 位是 2乘以 10 得 20低 4 位是 3加起來 23。反過來 23 轉(zhuǎn) BCD23 除以 10 得 2左移 4 位變成 0x2023 模 10 得 3或上去就是 0x23。5.2 設置時間先關寫保護再清 CH 位設置時間的完整流程是這樣的先關寫保護然后依次寫秒、分、時、日、月、周、年最后開寫保護。注意寫秒的時候要把 CH 位清零否則時鐘不走。void ds1302_set_time(uint8_t year, uint8_t month, uint8_t day, uint8_t week, uint8_t hour, uint8_t min, uint8_t sec) { ds1302_write_reg(0x8E, 0x00); // 關寫保護 ds1302_write_reg(0x80, dec_to_bcd(sec) 0x7F); // 秒清CH位 ds1302_write_reg(0x82, dec_to_bcd(min)); // 分 ds1302_write_reg(0x84, dec_to_bcd(hour)); // 時24小時制 ds1302_write_reg(0x86, dec_to_bcd(day)); // 日 ds1302_write_reg(0x88, dec_to_bcd(month)); // 月 ds1302_write_reg(0x8A, dec_to_bcd(week)); // 周 ds1302_write_reg(0x8C, dec_to_bcd(year)); // 年 ds1302_write_reg(0x8E, 0x80); // 開寫保護 }這里dec_to_bcd(sec) 0x7F是為了確保 CH 位是 0。如果你寫的時間秒數(shù)是奇數(shù)比如 23 秒dec_to_bcd(23)得到 0x23最高位本來就是 0與 0x7F 之后還是 0x23。但如果之前 CH 位是 1這個與操作就能把它清掉。5.3 讀取時間秒寄存器要屏蔽 CH 位讀時間的時候秒寄存器的最高位是 CH 位不是時間數(shù)據(jù)所以要屏蔽掉。其他寄存器直接轉(zhuǎn) BCD 就行。void ds1302_get_time(uint8_t *year, uint8_t *month, uint8_t *day, uint8_t *week, uint8_t *hour, uint8_t *min, uint8_t *sec) { *sec bcd_to_dec(ds1302_read_reg(0x81) 0x7F); *min bcd_to_dec(ds1302_read_reg(0x83)); *hour bcd_to_dec(ds1302_read_reg(0x85) 0x3F); *day bcd_to_dec(ds1302_read_reg(0x87) 0x3F); *month bcd_to_dec(ds1302_read_reg(0x89) 0x1F); *week bcd_to_dec(ds1302_read_reg(0x8B) 0x07); *year bcd_to_dec(ds1302_read_reg(0x8D)); }小時寄存器我屏蔽了 bit6 和 bit7因為 bit7 是 12/24 小時制選擇位bit6 在 12 小時制下是 AM/PM 標志。我們統(tǒng)一用 24 小時制所以把高兩位都屏蔽掉。日寄存器屏蔽 bit6 和 bit7月寄存器屏蔽 bit5 到 bit7周寄存器屏蔽 bit3 到 bit7這些都是保留位讀出來可能是隨機值屏蔽掉更安全。6. 調(diào)試過程中踩過的坑和排查方法6.1 讀出來全是 0xFF 或者 0x00這是最常見的問題基本可以鎖定三個原因。第一上拉電阻沒接或者阻值太大IO 線在空閑時處于浮空狀態(tài)讀出來就是隨機的。用萬用表量一下 IO 線對 VCC 的電阻正常應該是 4.7k 左右。第二CE 引腳沒有正確拉高芯片根本沒被選中。用示波器看 CE 波形發(fā)命令的時候應該是高電平。第三晶振沒起振芯片內(nèi)部時鐘停了這時候讀寄存器可能返回默認值。拿示波器探頭碰一下晶振引腳能看到 32.768kHz 的正弦波就說明起振了。我遇到過一次讀出來全是 0xFF查了半天發(fā)現(xiàn)是 IO 引腳配置成了推挽輸出讀的時候沒切成輸入MCU 和 DS1302 在 IO 線上打架。改成開漏加外部上拉之后問題消失。6.2 時間不走讀出來永遠是設定值這個基本就是 CH 位沒清。DS1302 上電默認 CH1時鐘停止。你寫時間的時候如果只寫了秒數(shù)據(jù)沒清 CH 位芯片就一直在暫停狀態(tài)。解決辦法就是在寫秒寄存器的時候確保最高位是 0。我習慣用 0x7F強制清零這樣不管之前 CH 是什么狀態(tài)寫完之后一定是走的。還有一種可能是寫保護沒關。DS1302 上電默認 WP1所有寫操作都被忽略。你寫進去的數(shù)據(jù)實際上沒生效讀出來還是舊值。標準流程是先寫 0x8E 寫 0x00再寫時間最后寫 0x8E 寫 0x80。這個順序不能亂。6.3 時間走得快或者走得慢如果一天誤差在幾秒以內(nèi)那是晶振精度問題正常。DS1302 配普通晶振一天差個三五秒很常見。如果一天差幾十秒甚至幾分鐘那就要檢查負載電容了。晶振規(guī)格書上的負載電容值要跟實際焊接的電容匹配6pF 的晶振配 6pF 的電容12.5pF 的晶振配 12.5pF 的電容。電容大了走得慢電容小了走得快。另外晶振的走線要盡量短遠離高頻信號線。我有一次把晶振線布在了 SPI 時鐘線旁邊時間走得亂七八糟后來重新布線就好了。如果對精度要求高建議直接換 DS3231內(nèi)置溫補晶振一年誤差也就幾分鐘。6.4 常見問題速查表現(xiàn)象可能原因排查方法解決辦法讀出全 0xFFIO 無上拉量 IO 對 VCC 電阻加 4.7k 上拉讀出全 0x00CE 未拉高示波器看 CE 波形檢查 CE 宏定義時間不走CH 位為 1讀秒寄存器看 bit7寫秒時 0x7F寫入無效寫保護未關讀 0x8E 看 bit7先寫 0x00 關保護時間偏差大負載電容不匹配查晶振規(guī)格書換匹配電容數(shù)據(jù)亂跳時序太快加大延時延時加到 2us偶爾讀錯電源不穩(wěn)量 VCC 紋波加 0.1uF 去耦7. 從驅(qū)動到應用定時開關的完整實現(xiàn)7.1 每秒讀一次時間比較觸發(fā)條件驅(qū)動調(diào)通之后應用邏輯就簡單了。我在主循環(huán)里每 500ms 讀一次時間然后跟設定的觸發(fā)時間比較。如果時和分都匹配就觸發(fā)繼電器同時記錄一個標志位防止同一分鐘內(nèi)重復觸發(fā)。uint8_t last_min 0xFF; while (1) { uint8_t year, month, day, week, hour, min, sec; ds1302_get_time(year, month, day, week, hour, min, sec); if (min ! last_min) { last_min min; if (hour target_hour min target_min) { relay_on(); HAL_Delay(1000); relay_off(); } } HAL_Delay(500); }這里用last_min做去重保證一分鐘只觸發(fā)一次。如果你需要觸發(fā)多個時間點可以搞個數(shù)組遍歷比較。7.2 掉電恢復電池供電下的時間保持DS1302 接上 CR2032 之后主電源掉電時芯片自動切到電池時鐘繼續(xù)走。我實測過拔掉主電源放了一晚上第二天上電讀出來的時間還是準的誤差在正常范圍內(nèi)。注意電池正極接 VCC1負極接 GND別接反了。CR2032 的壽命大概兩三年如果發(fā)現(xiàn)掉電后時間丟失先量一下電池電壓低于 2.5V 就該換了。7.3 精度優(yōu)化軟件補償?shù)乃悸啡绻悴幌霌Q DS3231又想讓 DS1302 準一點可以在軟件里做補償。具體做法是先讓 DS1302 跑一天記錄誤差比如一天快 5 秒那就在每天固定時間點把秒數(shù)減 5。這個補償邏輯可以放在主循環(huán)里每天執(zhí)行一次。不過這種方法比較粗糙適合對精度要求不高的場景。真要高精度還是建議上溫補晶振的方案。8. 代碼組織與移植建議8.1 文件劃分驅(qū)動層和應用層分開我習慣把 DS1302 的驅(qū)動單獨放在ds1302.c和ds1302.h里只暴露ds1302_init()、ds1302_set_time()、ds1302_get_time()三個接口。應用層的定時邏輯放在main.c里這樣換項目的時候驅(qū)動直接復制過去就能用。頭文件里只放函數(shù)聲明和必要的宏具體的引腳定義放在源文件里或者用條件編譯區(qū)分不同板子。我一般會在頭文件里留一個DS1302_USE_OPEN_DRAIN的宏用來切換開漏和推挽模式方便適配不同硬件。8.2 移植到其他平臺改三個地方就行這套代碼移植到別的平臺比如 GD32、ESP32 或者 51 單片機只需要改三個地方GPIO 操作宏、微秒延時函數(shù)、初始化函數(shù)里的 GPIO 配置。時序邏輯本身是純軟件模擬的跟硬件平臺無關。我把它移植到 GD32F103 上的時候就改了宏定義和延時函數(shù)編譯下載直接就跑起來了。如果你用的是 RTOS注意 DS1302 的讀寫操作不要被打斷否則時序會亂??梢栽谧x寫前后關中斷或者用互斥鎖保護。我一般是在ds1302_write_reg和ds1302_read_reg里關中斷操作完再開這樣最省事。9. 一些零散但有用的經(jīng)驗DS1302 的 IO 引腳在 CE 拉低之后會變成高阻態(tài)這時候如果外部上拉電阻太大IO 線上的電平可能會慢慢漂移。我試過用 10k 上拉發(fā)現(xiàn)讀數(shù)據(jù)偶爾會出錯換成 4.7k 之后就穩(wěn)了。所以上拉電阻別省4.7k 是個比較穩(wěn)妥的值。寫命令字節(jié)的時候bit7 必須是 1這個位叫使能位。如果你不小心寫成了 0芯片會忽略整個命令。我一開始看資料沒注意這個細節(jié)命令字節(jié)直接寫寄存器地址結果怎么都不對。后來才發(fā)現(xiàn)地址要或上 0x80 才是完整的命令字節(jié)。DS1302 的 RAM 寄存器地址 0xC0 到 0xFD可以當普通存儲器用掉電不丟數(shù)據(jù)有電池的情況下。我有時候會拿它存一些配置參數(shù)比如觸發(fā)時間、設備編號之類的省得外掛 EEPROM。不過 RAM 容量只有 31 字節(jié)存不了太多東西。最后說一個調(diào)試技巧如果你手頭沒有示波器可以用 LED 來粗略判斷時序。在ds1302_write_byte里每發(fā)一位就翻轉(zhuǎn)一次 LED如果 LED 閃爍頻率均勻說明時序在跑如果 LED 常亮或者常滅說明程序卡在某個循環(huán)里了。這個方法雖然土但應急的時候挺好用。這個 DS1302 的驅(qū)動我從第一次調(diào)通到現(xiàn)在已經(jīng)在好幾個小項目里復用了每次都是復制粘貼改引腳十分鐘搞定。雖然芯片老但勝在便宜、好買、資料多對于精度要求不高的場景完全夠用。如果你也在用這顆芯片希望這篇筆記能幫你少走點彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
99热这里只有精品国产免费| 99热在线播放精品| 日韩成人中文| 婷婷婷色五月| 99热6精品| 8区视频在线| 五月天久久丁香| 国产97色在线 | 日韩| 色日本综合| 久久女人天堂| 五月日韩中文字幕| 91色九| 婷婷无码五月天| 99综合免费视频| 久久婷婷激情四射五月天| 婷婷五月天亚洲色| 日韩99视频| 99日在线观看视频| 丁香五月色| 久久99热这里只有精品| 久色激情| 婷婷人人操| 超碰资源在线| 丁香五月六月综合激情| 日本波多野结衣视频| www久久久久久久| 国产女生爱爱AA| 五月丁香六月婷婷久久| 色婷婷电影网| 丁香五月成人丝袜| 性爱激情五月| 9久久婷婷国产综合精品性色| 91色色色18| 99热一本久道| 婷婷五月丁香基地| 婷婷丁香在线播放| 欧美成人精品A片免费一区99| 色约约视频一区二区三区四区五区 | 99精品97| 少妇激情五月婷婷| 婷婷五月激情丁香| 天天久| 99热精品超碰| 国产成人综合网| 伊人网啪啪| 六月丁香婷婷综合狠狠爱夜夜爱| 色综合网上班开心婷婷久久| 99re在线播放| 国产精品视频免费看| 99国产这里只有精品| 色无码| 9999热在线免费观看| 久激情| 婷婷在线网| 色区域网站视频| 婷婷亚洲在线| 久久久久五月丁香| 五月天久久婷| 丁香五月天大香蕉啪啪| 91九色熟女| 99 r热| 婷综合| 成人免费120分钟啪啪| 久久五月天丁香花| 热久久这里只有精品| 久久九九视频| 天天精品视频免费观看| 五月天 另类图片| 伊人婷婷五月天av| 日逼免费视频 | 九九精品热| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 综合欧美五月婷婷| 超碰人人超碰| 伊人五月天在线| 美女天天艹人人爽| 婷婷免费视频| 美女五月天| 日韩色色色色色| 丁香色影院| 婷婷色色综合| 欧美高潮9| 欧美婷婷丁香社区在线播放| 亚洲av成人一区二区电影在线| 久久性爱99国产| 99人人干| 五月色综合网| 影音先锋偷偷色男人站| 丁香五月婷婷网| 色丁香五月婷婷在线| 97碰久久| 久久伊人大香蕉| 99爱在线视频| 狠狠干五月| 97人妻碰碰中文无码久热丝袜| 狠狠五月激情丁香六月| 五月天婷婷综合网| 狠狠干夜夜干| 99精品九九| 婷婷五月天性爱视频| 9色天堂| 丁香五月天堂婷婷| 99色色| 丁香五月影院| www...com黄在线观看| 成人国产网| 奇米色大香蕉| 激情婷婷激情在线不卡| 97久久草草超级碰碰碰| 亚洲五月综合色播| 爱草视频在线| 天天 日综合| 九九五月天| AV在线免费观看不卡| 伊人五月天| 久久激情网| 狠狠精品干练久久久无码中文字幕 | 综合网五月天123| 精品五月视频婷婷在线观看| 婷婷她六月天| 五月婷婷丁香婷婷| 五月天成人综合| 狠狠丁香| 亚洲乱码精品久久久久..| 九九热在线观看视频| 9l视频自拍9l九色9l成人| 可以直接看的AV| 最新高清无码专区| 免费看欧美成人A片无码| 屁股翘好撅高迎合跪趴| www九九| 日本www五月婷婷| 这里只有精品视频在线看| 爱爱色五月天| 殴美综合激情五月天免费视频| 婷婷综合色色| 婷婷五月综合网激情| 大香蕉Av在线| 婷婷五月娱乐在线| 天天插天天很| 久久五月激情网| 狠狠色色综合| 精品九九视频| 97人妻碰碰中文无码久热丝袜| 亚洲精品久久久久久久久久吃药| 国产AV不卡福利| 99在线精品免费视频| 99久久综合网| 99精品爱| 9伊人网| 丁香五月日韩| 熟妇无码乱子成人精品| 无码区婷婷五月花开| 色婷婷亚洲在线| 9 1超碰九色| 亚洲激情四射色| 女婷久久| 2017人人操| 久久婷婷丁香花综合网| 99热这里只有精品69| 色国产五月| 99无码超碰| 丁香六月婷婷久久综合| 色婷婷亚洲综合网站| AV在线观看网站| 婷婷色5月激情网| 久久机热/这里只有精品| 色色色九九九五月婷婷| 亚洲免费观看高清完整版AV线| 精品视频99看在线视频| 99思思| 亚洲av无码影院| 91小黄书网址在线观看| 婷婷十月激情综合网| 五月激情天| 9婷婷内射| 人妻综合网| 婷婷五月天成人导航| 操操操操操操婷婷五月天| 五月天久久综合婷婷丁香| 99天堂网| 丁香婷婷偷拍| 91婷婷丁香| 天天色综| 六月丁香婷婷在线波多| 色婷大香蕉| 五月婷综合性中心| 超碰2021| 黄色大片又大粗又爽| 激情小说之五月| 9久热在线视频精品| 一本九九色| 亚洲99精品欧美一区| 五月婷婷丁香| 国产精品色婷婷久久久精品| 草综合14| 中字幕视频在线永久在线观看免费| 99久久性爱| 婷婷在线日韩综合| 99精品高潮| 五月激情婷婷国产精品久久久久久| 久777| 五月丁香av在线| 亚洲精品无人区| 一區四區歐美日韓| 色三级色三级| 9热久久| 婷婷五月天成人动漫 | 丁香五月天天| 人人操人人爱丁香五月| 婷婷激情97| 操逼巨乳91| 五月亭亭六月天| 婷婷久久欧美| 综合色色婷婷| 欧美色碰| 国产a视频| 色五月之第四色| 激情丁香五月激情婷婷| 另类视频五月天| 九月丁香亭亭| 五月婷婷啪啪| 五月丁香六月激情| 9久久久| 国产26uuu视频| 色婷婷小说网| 欧美情月伍月天| 五月婷婷影院| 五月婷婷啪啪综合网| 婷婷99中文字幕| 天天插天天干| 怡红院视频| 中美日韩成人在线| 草草色情综合网| Av性爱网| 国外亚洲成AV人片在线观看| 色色五月婷婷久久| 青青草婷婷综合五月| 二区成人视频| 免费无码毛片一区二区A片| 五月婷婷六月丁香色| 六月色婷婷| 亚洲视色| 婷婷丁香五月天操逼| 中文字幕在线免费观看视频| 狠狠操综合| 国产午夜成人免费看片无遮挡| 激情综合网五月激情网| 色五月色综合| a九九热www| 激情五月综合网丁| 五月丁香啪啪啪| 婷婷中文字幕欧美| 亚洲成人五月天| 久久婷婷五月| 久久WW| 精品热青草| www.夜夜操| 国产视频婷婷| 99操不停| 可以直接看的av| 亚洲最大成人综合网720P| 91九色欧美| 九九精品免费视频99| 日韩欧美颜射| 丁香六月五月天| 开心丁五月| av大香蕉| 操逼棍操逼| 综合www色| 日日影院 | 久久婷五月综合| 深爱激情av| 丁香六月天AV| 91AV视频| 婷婷五月天伊人网| 99爱视频在线免费观看| 最新午夜理论片| 亚洲国产精品VA在线看黑人| 99爱视频免费| 五月天婷婷综合| α久久| 亚洲黄色操逼| 激情综合五月| 色色色无码| 亚洲 在线 性爱| 91fuliwang| 激情久久久| 婷婷娌伦网| 操一区| 看全色黄大色大片| 99久久这里只有精品免费官网| 色婷婷丁香AV综合| 婷婷五月色花丁香社区| 大香蕉视频婷| 综合色网站| 思思热在线视频精品| 99亚州综合精品成人网| 思思热视频| 开心五激情网| 五月婷婷丁香社区| 综合狠狠五月婷婷| 九九热这里只有国产精品| 99精品久久久久| 人人干99| 变态另类色图| 4399欧美另类视频| 亭亭色色五月天| 激情五月婷| 天天久久人人| 色色影院黄大片| 国产精品成人网址| 久久人人九九| 久久曰曰| 成人av免费观看| 很很操很很操| 久热大香蕉| 热99国产精品| 色亭亭五月天网扯| 午夜婷婷五月天| 五月天久久激情| 免费看欧美成人A片无码| 六月激情综合| 亚洲国产成人综合| 激情图片亚洲| 国产视频色色色色色色色| 一起草AV入口| 99热高清在线| 美国不卡视频| 月婷婷亚洲| www.五月天色色.com| 九九香蕉网| 亚洲精品色色| 色婷婷狠狠| 激情综合色网| 大香蕉在线99热| 精品夜夜澡人妻无码AV| 97香蕉碰碰人妻国产欧美| 男女啪啪做爰高潮无遮挡| yw国产AV| 一级黄色操B| 97久久久久久久久久久| 五月丁香好婷婷A片网| 国产一区18| 97超碰人人操| 五月天久久久| 久久综合激情五月天| 激情五月色综合国产精品| 婷婷免费精品视频| www.婷婷,com| 在线播放 精品| 色五月琪琪| 天堂在线9| 不卡影院午夜理论片| 中文字幕激情综合| www.久久久久| 色 五月 天 婷婷 丁香 九月| 亚洲欧洲另类| 色播五月婷婷| 色五月婷婷av| www.婷婷五月天,com| 97色久| 开心五月婷婷伊人| 99热这里只有精彩| 狠狠色丁香99| 婷婷瑟瑟五月天| 五月网网站| 日本久久网| 五月婷婷无码专区| 99亚洲大片精品永久在线观看| 一起草无码视频| wuyuedingxiang| 婷婷碰碰| 99在线观看视频| 91久热| 激情五月伊人婷婷| 欧美久久五月婷婷| 99热免费| 亚洲成人在线播放| 开心五月婷婷在线视频免费观看| 五月婷婷丁香在线视频| 五月大香蕉| 丁香激情五月| 啪啪综合网| 亚洲AV网址| 五月丁香激情综合网官网| 久久99免费视屏| 99伊人婷婷在线| 亚洲成人在线播放| 99爱免费在线观看| 九九视频在线观看视频6 | 91性交在线播放| 日本色五月| 五月天综合久久| 婷婷丁香亚洲色综合91| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 99色嘟嘟精品网站| 色99日韩| 99热这里只要精品免费| 91综合网| 五月天丁香久久| 91久久五月天| 五月亭亭六月天| 中文网AV| 五月天开心网| 婷久久| 91九色精品女同系列| 五月花激情| 美女伊人久久| 狠狠草狠狠草| 久久视频婷婷| 色吧综合网| 99在线视频女女视频| 超碰伊人碰婷婷五月| 五月丁香激情深爱婷婷| 色五月激情网| www。五月,com| 99免费视频网| 天天干-天天日| 欧类av怡春院| 俺去也五月天婷婷| 丁香激情四射| 综合丁香婷婷五月天| 婷婷激情丁五月| 日韩黄色影院| 色婷婷AAA| 9超碰在线| 超碰人妻在线| 这里只有精品99视频| 色综合天天| 丁香五月首页| 日日日日日| 大香蕉99热| 在线中文AV| 色狠狠色噜噜AV天堂五区消防| 五月婷色丁香| 天天色天天日| 啪啪综合| 五月天婷婷激情小说电影| 国产在线另类五月婷婷| 色狠狠色噜噜AV天堂五区| 激情综合五月婷婷六月丁香| 天天综合久久| 97干在线观看| 男女啪啪做爰高潮无遮挡 | 激情婷婷综合| 黑人糟蹋人妻HD中文字幕| 秋霞免费三级片| 免费黄网不卡AV| 天插天啪天啪天啪| 操操操操操操婷婷五月天| 9色在线| 开心五月天激情| 爆乳熟妇一区二区三区四区| 久久9视频| 久久婷婷六月综合综合色| 丁香六月啪| 久操乱| 开心五月深爱激情| 97人妻碰碰中文无码久热丝袜| 五月开心色| 91超碰在线观看| 天堂综合久久 | 日本一区二区三区精品视频| 婷婷播5月| 亚洲在线成人| 激情六月天| 五月婷婷综合久久| 婷婷色综合av| 色五月xxx| 亚洲AV久久久久久久久久久久久久久久| 五月丁香婷婷六月天| 99热超碰人| 天天拍天天操| 色五狠狠| 岛国av网| 色婷av| 国产亚洲AV人片在线| 丁香五月电影| 婷婷亚洲综合| 999热成人在线综合网| 亚洲色涩视频| 99网址在线观看| 蜜臀av粉嫩av懂色av| 激情五月伊人婷婷| 亚洲无码激情| 激情六月天| 色色色综合色| 1024日韩| 亚洲精品V天堂中文字幕| 97亚洲婷婷| 第二色AⅤ| 日本欧特黄色刺激一区影视久精品无码| 91婷婷丁香| 91色噜噜狠狠狠狠色综合| 思思热久久艹| 99热久| 激情五月天综合网| 99九九久久| 婷香五月激情视频| 国精产品一区二区三区| 色久播播| 丁香五月综合激情啪啪| 婷婷六月啪啪| 激情 五月 婷婷 丁香| 五月丁香激情片| 婷婷五月在线免费| 香蕉99网| 中文字幕九九九九| 九九人妻福利| 亚洲精品性色| 激情综合色播| 91九色精品女同系列| 久操大香蕉| 婷婷色情六月| 五月丁香激情四射| 婷婷五月综合社区| 六月婷婷综合| 色婷婷第四色| 超碰国产在线| 热99这里只有精品视频| 天堂五月婷婷| 噜噜色婷婷| 婷婷五月天网| 热久久99热欧美国产亚洲| 久草热在线视频| 欧美精品99| 色99在线视频| 婷婷色网| 影音先锋男人av资源站| 极品精品一区二区三区在线| 中文成人在线| 婷婷激情小说| 青草视频在线观看视频| 我想看国产大学生口爆吞精的视频| 国产美女主播vip| 色综合色欲综合天天免费| 色色色色综合网| 日本女va| 久热这里只有精品视频6| 变态另类9| 国产伦亲子伦亲子视频观看| 玖玖婷婷五月| 婷婷五月成人有| 五月丁香激情综合网| 五月激情站| AV中文字幕夜夜操b天天摸bb| 天天操B| 亚洲色综合色网| 九伊人网| 九久9精品| 色5月婷婷| 激情婷婷丁香色情五月天| 婷婷五月天成人五月天| 久婷婷五月丁香在线观看| 色五月天本日| 直接看的AV网站| 亚洲欧美国产高清vA在线播放| 老司机伊人| 天天日天天插| 九九热视频在线观看| 日韩丰满少妇无码内射| 超碰人人操人人干| 色婷婷激情| 这里只有精品96| 丁香五月婷婷婷桃花影院| 狠狠色噜噜狠狠| 婷婷操逼| 婷婷丁香成人五月天| 99视频热99| 人人操人| 大香蕉伊人久久| 激情五月丁香五月| 丁香五月综合婷婷| 欧美性猛交99久久久久99按摩| 97在线观视频免费观看| 成人 九九九九| 伊人青涩网| 先锋男人99资源| 色五月五月婷婷| 尤物一区二区| 操日视频| 伊人在线视频| 丁香六月婷婷综合激情欧美| 四色永久成人网站| 亚洲成人无码免费| 天天艹夜夜艹| 99热热热国产超碰| 五月婷av| 都市激情亚洲| 天综合日日夜综合7799| 五月宗合激情网| 免费无码毛片一区二区A片| 激情网战码亚洲A| 91丨九色丨丰满人妖| 九九成人| 91婷婷五月丁香碰| 五月丁香激情综合啪啪| 丁香五月激情啪| 丁香激情网| 色综合色色色| 激情五月六月婷婷综合啪啪| 丁香在线视频| 久久久性爱网| 色色综合视频| 91久草五月天婷婷| 五月天色婷婷小说| 99色在线观看视频者| 99色免费观看全部| 狼人婷婷综合| 视频一二区| 色99在线观看| 亚洲中文字幕在线观看| av网站中文| 日本色视| 国产密乳av一区二区三区四区| 日韩av手机在线观看| 思思热精品免费视频| 《亚洲操B久久免费在线观看,亚洲操B久久在线播放》在线播放 - 高清资源 - 97 | 五月激情网络| 色青青视频| 日本韩国视频在线观看社区免费的9| 五月停亭六月,六月停亭的英语| 夜夜爱网站| 任我鲁这里有精品视频| 翔田千里 50岁 无码| 91色综合网站在线| 26uuu激情五月天| 99玖玖视频| A一级操| 午夜激情综合| 99狠狠操一| 深爱激情六月天| 六月丁香五月激情网| 99re久热| 久久激情网| 国产玖玖资源| 丁香五月精品视频| 97久久草草超级碰碰碰| 少妇激情五月婷婷| 黄急一级视频| 国产精品色| 国产精品丝| 99精品网| 五月婷婷六月丁香激情深爱| 热久久婷婷| 五月丁香六月激情欧美综合| 67194国产| 亚洲超碰中文字幕| 激情五月综合婷婷| 91人人操人人| 色五月综合网| 国产亚洲成AV人片在线观黄桃| 这里只有精品日韩精品| 538任你爽视频不一样的| 97色碰| 丁香婷婷激情五月天无毒不卡蜜桃| 99久久66| 亚洲乱码日产精品BD| 天天干天天干天天干| 国产精品汇聚精彩第二页 - 高清完整版在线 - 青蛙AV | 99综合自拍| 精品人妻久久久久久久| 色五月婷色彩免播放器| 日韩成人无码| 能看的av网站| 婷婷成人网五月天| 亚洲狠狠婷婷| 日美三级| 五月Huangsewang| 性爱五月婷婷| 欧美色激情四射| 色小说婷婷五月天天天| 9久热| 五月五月婷婷| 超碰69天堂| 五月激情小说| 少妇水多A片太爽了| www色婷婷久久综合久色| 激情宗合 激情宗合| 97干欧美| 99这里| 久热婷婷| 激情综合五月天| 日本欧美成人片AAAA| 丁香五月天.com| 五月亭亭欧美女人| 五月丁香网站| 免费试看小视频 99| 色5在线| 五月婷婷香蕉| 色色激情五月| 另类图片激情五月| 97色伦另类图片小说视频 | 青青草日本亚洲| 欧洲亚洲免费视频区| 超碰2021| 丁香花成人区| 特级操b片| 91丨九色熟女丨首页| 色涩影院六月丁香| 亚洲精品视频在线播放| 色吧五月| 亚洲亚洲人成综合网络| 激情综合区| 五月丁香做爱视频| 开心色五月天久久久久久久| 99精品这里只有免费视频| 五月婷婷综合影院| 婷婷丁香97| 97在线天堂| 色情婷| 亚洲av免费在线| 五月婷五月婷伊人伊人五月婷| 天天日天天狠狠操| 玖久久网站| 色播五月婷婷| 五月婷丁香| 五月婷婷激情性爱| 婷婷五月天在线观看免费| 婷婷色爱| 五月天第四色开心色播| 激情五月com| 丁香六月天之亚州热女 | 99色综合网| 婷婷的久久网站| 996er在线观看| 成人婷婷深爱综合网| 色五月视频,小说| 久久久18| 五月丁香花免费视频| 99无吗| 九九在线精品| 99在线小视频| 久久久这里都是精品| 婷婷五月激情热播| 很操日本7| 色五月婷婷影院| 久操无码| 中文字幕av久久爽| 色九月| 人人操人人妻| 九九色99| 99久热这里有精品| 婷婷五月av| 婷婷五月天亚洲| 丁香五月六月综合激情| 色婷婷亚洲精品天天综| 五月天社区婷婷| 九久久精品视频99| 五月色导航| 五月丁香六月激情欧美综合| 伊人色欲五月天| 欧美精品999| 丁香婷婷精品视频| 99热免费| 伊人爱爱日本| 色色综合色视频| 欧美25p| 亚洲色激婷| 俺去也在线官网| 丁香六月婷婷五月天| 99热这里全都是精品| 亚美欧色影院| 99色在线| 婷婷激情五月| 97人人超| 天天做天天干天天综合网| 日本一级一片免费视频| 婷婷情色五月| 青青久久五月| www色婷婷com| 九九热这里只有精品31| 9久久精品| 大香蕉五月婷婷| 五月天社区婷婷丁香社区| 99年操人人爽| 欧美久草在线日本一级特黄大片做受9在线观看韩国电影《两个女人》未删减-毛片 | 婷婷欧美色| 丁香五月宝贝激情网| 婷婷色五月天第7色| 五月天无码视屏播放| 激情婷婷五六月天| 日本五月婷| 影音先锋男人女人| 丁香五月天婷婷91| 99热这里只有精品搜| 五月婷婷激情| 99啪啪网| 婷婷娌伦网| 国产AV熟妇人震精品一品二区| 玖玖婷婷色| 久久综合人妻| 成人一区在线观看| 五月婷婷 激情五月| 蜜臀99久久精品久久久久| 五月天婷a| 九九草草逼| 免费看成人747474九号视频在线观看| 午夜青草资源| 亚洲国产精品VA在线看黑人 | WWW.久久.COM| 人人色AV| 久久92| 成人精品人妻| 黄色AV日韩| 婷婷五月天福利| 婷婷五月丁香在线观看| 亚洲色碰| www。五月天激情| 五月婷婷啪啪| 色五月涩涩婷婷蜜桃| 婷婷精品| www.丁香六月婷婷久久天堂影院.con| 色~性~乱~伦~噜| 天天插天天插天天插| 国产在线网址1| 久热精品视频| 久久9999| www夜夜| 日本色婷婷五月天成人电影| 99热这里只有精品青草| 国产肥白大熟妇BBBB视频| 九九热在线观看视频网站| 深夜婷婷 丁香| 8区视频在线| 婷婷色香六月综合激情| 六月婷婷五月丁香| 啪啪日本欧美| 欧美成人性爱网| 色激情五月| 99爱在线视频观看| 色无码| 婷婷五月精品在线| 天天肏在线视频| 99re在线视频| 少妇综合网| 丁香五月综合无码趴趴| 岛国AV网| 五月丁香激情欧洲啪啪| 婷婷99狠狠| 激情丁香五月婷婷啪啪| 丁香六月啪啪| 视频这里只有精品16| 色婷婷最新域名| 超碰av在线| 97色啪| 激情四射五月天| 丁香九月综合激情| 丁香五月综合| 婷婷五月天伊人在线| 色和综合网| www.久久久久久久| 性生活视频98791| 久久久久久久久18久久| 91超碰人人操| 五月激情影视| 国产av第一专区| 色情五月天视频网| 五月婷婷影院| 国产精品A片在线| 香蕉综合在线| 五月综合缴情网| 狠狠色婷婷777| 三日本无码| 婷婷五月开心中文字幕色| 婷婷五月综合网| 国精产品一区二区三区| 色狠狠五月天| 天干夜夜操| 色五月丁香五月| 国产亚洲精品久久久久苍井松 | 久久五月综合| 午夜免费试看| 久久aaaa片一区二区| 91精品无码久久久久久五月天| 欧美色五月| 久久99色色| 性一交一乱一交A片久| 干亚洲天堂| 婷婷五月天精品| 丁香五月花| 夜夜谢天天干| 婷婷伊人綜合| 精国产品一区二区三区A片| 天天激情综合| 免费无码毛片一区二区A片| 99啪啪视频| 大香蕉520| 国产AV不卡福利| 亚洲av综合网| 综合99综合久久久久久久| 桃色五月天| 亚洲狠狠操| 婷婷天天插天天爱| www.婷婷五月| www.色9| 激情五月婷婷网| 天天天天做夜夜夜夜做| 五月婷婷丁香六月 | 丁香激情婷婷网| 天天综合干| 高清无码.com| 99久久久久| 亚洲精品又粗又大又爽A片| 国产午夜精品久久久观看| 7超碰自拍| 五月激情久久综合| 人妻激情视频| 97操碰在线视频| 色播色丁香五月| 狠狠色婷婷7777久综合| 99黄色性生活| 亚洲av网站| 色性五月天| 人妻VideOssS人妻高清| 天天综合亚洲综合| 婷婷开心综合人妻小说网址| 激情 婷婷| www.99热精品| 99超级碰碰| 激情五月丁香五月综合| 99久在线精品| 五月婷婷中文字幕| 性色99| 色婷| 亚洲顶级VA在线观看-高清完整版在线影院观看-S022AV | 色情丁香五月婷婷精品| 91九色|疯狂|高潮|对白|| 掩去也综合五月视频| 六月丁香婷婷拍拍| 天天色五月| 久久久激情| 丁香婷婷五月综合欧美另类| 激情五月婷婷色综合| 第四色五月天| 色色网站免费观看| 成人短视频在线观看| 熟美女麻豆| 亚洲国产精品VA在线看黑人| 亚洲日韩久久婷婷伊人| 日本久久久97| 一本久婷婷综合| 97人人看一| 91九色在线| 久久在这里有精品| 激情五月天色婷婷| 国内裸舞二区| 精品自拍97| 大地9中文在线观看免费高清| 久久久婷婷五月天| 日韩性爱无码| 五月天婷婷av| 亚洲成人综合在线| 91久女| 操逼六区| 踪合专区啪啪| 怡红院成人AV| 九月婷婷人人操人人舔人人爱| 亚洲亚洲人成综合网络| Www.se.久久| 九九久久五月天| 色五月欧美| 天天五月香欧美| 五月第四色| 丁香久久久| 超碰成人免费| 五月天色婷婷综合| 夜夜夜夜撸夜夜操| 久久大香蕉| 99re8热精品免费视频| 免费看欧美成人A片无码| 色婷综合| 日本女va| 久久婷婷六月天| 狠狠高潮精品亚洲1| 色五月综合| 97在线/日本| 五月伊人网| 五月婷婷免费在线观看| 操操国产| 久久九九激情五月天 | 五月婷婷久久综合| 色五月涩涩婷婷| www.色婷婷.com| 五月婷婷深深的爱| 五月婷婷综合热| 人妻久久做| 九九在线免费观看| www.91在线观看| 99久久婷| 99青青草99| 国产精品社区| 这里只有精品视频在线看| 99在线观看| 大香婷婷| 色吧婷婷| 婷婷五月视频| 99性视频| 日本操天堂| 日本天堂网站99| 九九综合久久丁香婷婷,开心激情综合网| 操操操操操操婷婷五月天| 婷婷激情小说网| 色色五月婷婷| 狠狠五月激情丁香六月| 成人超碰网| 人人澡天天色天天做| 国产日韩欧美性生活| 99这里有精品视频| 五月天婷婷久草丁香| 99热这里只有免费精品| 超碰猛烈的性猛交| 天天操综合网| 亚洲碰碰碰| 97成人在线视频精品| 五月婷婷亚洲色图| 狠狠干思思热| 六月婷婷久久大全| 99久在线精品99re8热| 色五月婷婷777| 91精品电影18T| 97韩国久久电影院| 婷婷久久五月天丁香| Www.狠狠| 六月丁香VA| 97色碰碰公开视频| 丁香五月激情宗合网| 99热亚洲| 久久久久久久97| 99操碰| 色播婷婷大香蕉| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | 91啪级电影| 五月婷丁香| 亚洲中文字幕AV| 狠狠操狠狠操| 伊人久久丁香狠狠婷婷综合香蕉| 免费看片在线观看| 丁香激情网| 99色色网| 色播播之激情五月婷婷| 另类五月激情| 99热在线观看| 欧美婷| 欧美A片在线视频免费观看| 亚洲99在线| 色五月天婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷婷 | 亭亭五月色男人| 五月丁香成人网| 思思视频久久| www久| 性婷婷| 婷婷六月激情综合| 五月激情综合网| 久久免费9| 九九热只有精品| 在线观看的av| 色婷婷五月天在线观看| 淫视馆AV在线| 夜夜爽天天干| 99视频在线观看视频| 婷婷五月,偷窥偷拍网| 色婷婷超碰| 久久这里有精品在线观看| 影音先锋男士资源网一区| 五月丁香综合激情网| 激情五月综合第一页| 三级三久久线久久99久目本WW| 国产欧美精品AAAAAA片| 狠狠插狠狠| 久操干| 五月天淫乱视频| 日本在线观看aaa 99| 国产精品视频| 最新亚洲色色网| 色99无码| 九九青青草成人| 五月丁香五月激情综合色综合| 中文激情网| 大香线蕉伊人| 婷婷五月天免费视频| 黄色网址五月婷婷| 日日噜噜夜夜狠狠久久丁香五月| 欧美色色色色色色色| 激情中文在线| 伊人久久激情图区五月| 五月激情婷婷偷拍| 深爱激情网婷婷| 麻豆AV一区二区三区| 色播五月丁香| 九九AV| 亚洲欧美999| 六月婷婷视频| 99欧美热| 五月天色丁香| 亚洲综合色网| 久久国产性爱A V| 综合久久久婷| 五月天啪啪网| 婷婷激情五月天色| 99热精品10| 青草青草视频2免费观看| 99热这里有精品| 亚洲综合色丁香婷婷六月| 婷婷大乡焦噜噜| 五月天激情综合网| 天天噪夜夜爽| 国产1区2区3区| 淫视馆aV二区一区| 在线中文字幕视频| 久久九九大香蕉电院| 国产精品A片在线| 激情五月丁香五月| 五月丁香六月玩女人| 国产在线网| 婷婷五月天干干| 九九这里只有精品在线视频| 日日操夜夜操中国无码| 在线看的免费网站| 99色在线视频| 另类图片色五月| 久久天堂加勒比| 深夜婷婷 丁香| 成人精品一区日本无码网| 久久婷婷一级片| 亚洲午夜电影| 亚洲黄色影视| 91操片| 五月天大香蕉AV| 亚洲成人免费电影| 免费精品99| www.丁香五月| 日本成人噜噜噜噜噜| 六月丁花香啪啪激情欧美| 色亚洲视频| 色拍九九九| 婷婷五月天久久| 超碰人人操在线| 激情五月激情综合网| 99热久只有精品首页| 精品国产AV色一区二区深夜久久| 亚洲免费av观看| 99亚洲大片精品永久在线观看| 免费V片在线| 五月丁香啪啪网| 九九爱看亚洲| 日韩欧美成人片| 91色综合网| 成人色五婷婷| 狠狠狠狠狠草| 丁香婷停五月激情综合深爱| 888久久久| 色色com| 欧美性猛交 XXXX 乱大交| 99精品在线| 精品人妻在线| 久草狼人| 五月丁香婷婷啪啪综合网| 国产欧美婷婷五月| 99成人无码| 天天狠狠色| 色之综合网| 六月丁香AV| 婷婷导航| 婷婷色五月天第7色| 丁香五月婷婷88在线| 日本欧美成人片AAAA| 欧亚成人A片一区二区| 激情网五月天| 99ri国产在线| 婷婷五月伦理| 99热日韩| 天天日夜夜帕| 精品婷婷五| 九九 激情 网| 无码成人AAAAA毛片AI换脸| 狼人久草| 性做爰1一7伦| 26uuu欧美| 日韩在线视频中文字幕| 91日本在线免费| 久久久久久久久久久久63| 色停停香蕉视频| 婷婷丁香在线播放| 99极品视频| 综合久久五月天| 激情综合99| 色综合色综合色综合| 99热99色| 久久久com| 亚洲国产精品VA在线看黑人| 男人視頻站| 日本色色色| 天天射色五月天| 亚洲色婷婷五月| 色色99色色| 久操大香蕉| 色婷婷色五月色丁香| 韩国三级五月天婷婷。| 草综合网| 第四色婷婷色五月| 五月色网| 嫩草综合网| 亚洲天天| 欧美日本一区二区三区| 天天舔天天摸| 在线中文字幕av| 伊人色综在线| 天天爱天天做综合| 久久99激情丁香婷婷小说网| 夜夜操少妇| 亚洲五月天激情| 色婷婷五月天偷拍| 亚洲五月天第一综合干| 色优久久| 91精品国产综合久久密臀| 狠狠88综合久久久久噜噜噜| 日本三级中国三级99| 婷婷五月激情丁香激情| 五月婷六月| 激情综合婷婷| 91九色丨国产丨爆乳| 久久爱综合| 丁香五月激情综合婷综| 人碰人人人玩91| 色五月综合婷婷久久综合婷婷久久综合婷婷久久综合婷婷久久 | 婷婷5月天激情综合| 欧美 日韩 成人在线| 五月天久久婷婷婷| 五月青青草综合| 激情综合网五月天| 国产亚洲精品AAAAAAA片| 99ri6在线视频| 无码人妻少妇色欲AV一区二区| www.亚洲激情.com| 激情网站综合五月天| 99热这里有精品| 婷婷五月激情图片| 丁香六月啪| 武则天精品久久| 色婷婷91| 欧美五月丁香在线| 亚洲激情淫网| 五月色网| 色墦五月丁香| 大香蕉婷婷| 玖玖热视频| 五月婷婷激情| 久热9| 六月婷色| 日韩久热| 狠狠色噜噜狠狠| 亚洲天堂色| 六月丁花香啪啪激情欧美| 综合亚洲六月婷婷在线| 丁香五月五月婷婷| 九月婷婷色色| 啪啪啪丁香五月| 99在线观看精品| 五月丁香亚洲婷婷| 99热这里只有精品 搜| 色九区| 五月婷天堂视频| 五月开心婷婷网| 99热这里只有精品4|