亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

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

STM32驅(qū)動DS1302實時時鐘:從時序模擬到定時開關(guān)實戰(zhàn) 1. 為什么還要折騰 DS1302 這顆老芯片前陣子幫朋友做一個帶定時開關(guān)的控制器主控用的是 STM32F103C8T6 最小系統(tǒng)板需求很簡單每天固定時間點觸發(fā)繼電器斷電重啟后時間不能丟。第一反應(yīng)肯定是上 DS3231溫補晶振、I2C 接口、精度高但翻了下手頭的元件盒DS3231 模塊用完了倒是翻出來幾顆當(dāng)年買錯的 DS1302 直插芯片和配套的 32.768kHz 晶振。想著反正精度要求不高一天誤差幾秒也能接受就干脆用 DS1302 把這事做了。DS1302 這顆芯片玩過 51 單片機的人基本都認(rèn)識屬于那種入門必點的外設(shè)。它用的是三線串行接口嚴(yán)格說不是標(biāo)準(zhǔn) SPI也不是 I2C而是自己的一套時序協(xié)議一根 CE有的資料叫 RST、一根 SCLK、一根雙向 IO。正因為時序是自己定義的所以移植到 STM32 上不能直接套用硬件 SPI 或 I2C 外設(shè)得老老實實用 GPIO 模擬時序。這也是很多人第一次在 STM32 上驅(qū)動 DS1302 時踩坑的地方——習(xí)慣了 HAL 庫一把梭突然要自己數(shù)微秒節(jié)奏就亂了。這篇筆記就是把我從接線、寫時序、調(diào)讀寫、處理 BCD 碼到最終跑通定時功能的完整過程整理出來。內(nèi)容偏向?qū)嵅俅a基于 STM32 HAL 庫但時序邏輯是通用的換成標(biāo)準(zhǔn)庫或者別的 Cortex-M 芯片改改 GPIO 操作就能用。適合兩類人看一類是剛接觸 STM32、想找個簡單外設(shè)練手時序操作的新手另一類是手頭正好有 DS1302 庫存、想快速把它用起來的老玩家。我會把每個關(guān)鍵決策背后的原因講清楚比如為什么上拉電阻不能省、為什么寫保護要先關(guān)、為什么讀出來的秒要屏蔽最高位這些細(xì)節(jié)文檔里往往一筆帶過但實際調(diào)試時全是坑。2. DS1302 到底是個什么東西先把原理捋順2.1 三線接口的本質(zhì)不是 SPI 也不是 I2C很多人看到 DS1302 三根線第一反應(yīng)是這不就是 SPI 嗎。其實差得遠(yuǎn)。標(biāo)準(zhǔn) 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ù)的時候如果是寫操作先準(zhǔn)備好 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這里有幾個關(guān)鍵位必須注意。秒寄存器的 bit7 是 CH 位Clock Halt上電默認(rèn)是 1意思是時鐘停止。你如果只寫了時間沒清這個位會發(fā)現(xiàn)時間根本不走讀出來永遠(yuǎn)是那個值。我第一次調(diào)的時候就栽在這盯著串口打印的固定時間看了半天以為是晶振沒起振換了兩個晶振才發(fā)現(xiàn)是 CH 位沒清。寫保護寄存器 0x8E 的 bit7 是 WP 位上電默認(rèn)是 1表示寫保護開啟這時候你往任何時鐘寄存器寫數(shù)據(jù)都會被忽略。所以標(biāo)準(zhǔn)流程是先寫 0x8E 寫 0x00 關(guān)保護改完時間再寫 0x8E 寫 0x80 開保護。這個順序不能省省了就會出現(xiàn)寫進去讀出來還是舊值的詭異現(xiàn)象。2.3 備用電池和晶振硬件上最容易翻車的兩個點DS1302 有個 VCC1 和 VCC2 雙電源引腳VCC1 接備用電池VCC2 接主電源。芯片內(nèi)部有個電源檢測電路主電源掉電時自動切到電池保證時鐘繼續(xù)走。這里有個細(xì)節(jié)電池電壓要低于主電源電壓否則芯片可能判斷不出主電源掉電一直用電池供電反而加速電池消耗。一般用 3V 的 CR2032 紐扣電池主電源 3.3V壓差剛好合適。晶振這塊DS1302 要求外接 32.768kHz 晶振而且對負(fù)載電容有要求。市面上常見的圓柱形晶振負(fù)載電容一般是 6pF 或 12.5pF你得配對應(yīng)的電容。我手頭那批晶振是 6pF 的一開始隨手焊了兩個 22pF 的電容上去結(jié)果時間走得明顯偏慢一天能差十幾秒。后來查了晶振規(guī)格書換成兩個 6pF 的電容誤差就降到一天兩三秒了。如果你對精度有要求建議直接上 DS3231省得跟電容較勁。另外DS1302 的 IO 引腳是開漏輸出必須接上拉電阻一般 4.7k 到 10k 都行。我習(xí)慣用 4.7k上升沿更陡一點時序更穩(wěn)。有些模塊板子上已經(jīng)集成了上拉電阻如果你是自己畫板子千萬別忘了這三個電阻否則讀出來的數(shù)據(jù)全是 0xFF。3. 硬件接線與工程搭建3.1 接線方案三根信號線怎么分配我用的 STM32F103C8T6 最小系統(tǒng)板DS1302 模塊是那種帶電池座的小板子。接線如下DS1302 引腳STM32 引腳說明VCC23.3V主電源VCC1CR2032 正極備用電池GNDGND共地CEPA4片選/復(fù)位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上拉使能。時鐘樹按默認(rèn)的 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; }這里有個細(xì)節(jié)dat 1放在讀之前然后如果讀到 1 就dat | 0x80。這樣第一次讀到的位最終會落在 bit0第二次落在 bit1以此類推。如果你寫成先讀再移位順序就反了讀出來的數(shù)據(jù)是 bit 倒序的。我第一次寫的時候就是先讀后移結(jié)果讀出來的秒是 0x80 而不是 0x01查了半天才發(fā)現(xiàn)是移位順序錯了。4.3 寫寄存器命令字節(jié)加數(shù)據(jù)字節(jié)寫寄存器的流程是CE 拉高發(fā)命令字節(jié)發(fā)數(shù)據(jù)字節(jié)CE 拉低。CE 拉低之后一次通信結(jié)束。注意 CE 拉高之后要先延時一小會兒再發(fā)第一個字節(jié)給芯片一點準(zhǔn)備時間。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 也拉低這是個好習(xí)慣保證下次通信從已知狀態(tài)開始。有些資料說 CE 拉低之后 SCLK 要保持低電平其實拉低 CE 之后芯片內(nèi)部會復(fù)位時序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 設(shè)置時間先關(guān)寫保護再清 CH 位設(shè)置時間的完整流程是這樣的先關(guān)寫保護然后依次寫秒、分、時、日、月、周、年最后開寫保護。注意寫秒的時候要把 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); // 關(guān)寫保護 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 標(biāo)志。我們統(tǒng)一用 24 小時制所以把高兩位都屏蔽掉。日寄存器屏蔽 bit6 和 bit7月寄存器屏蔽 bit5 到 bit7周寄存器屏蔽 bit3 到 bit7這些都是保留位讀出來可能是隨機值屏蔽掉更安全。6. 調(diào)試過程中踩過的坑和排查方法6.1 讀出來全是 0xFF 或者 0x00這是最常見的問題基本可以鎖定三個原因。第一上拉電阻沒接或者阻值太大IO 線在空閑時處于浮空狀態(tài)讀出來就是隨機的。用萬用表量一下 IO 線對 VCC 的電阻正常應(yīng)該是 4.7k 左右。第二CE 引腳沒有正確拉高芯片根本沒被選中。用示波器看 CE 波形發(fā)命令的時候應(yīng)該是高電平。第三晶振沒起振芯片內(nèi)部時鐘停了這時候讀寄存器可能返回默認(rèn)值。拿示波器探頭碰一下晶振引腳能看到 32.768kHz 的正弦波就說明起振了。我遇到過一次讀出來全是 0xFF查了半天發(fā)現(xiàn)是 IO 引腳配置成了推挽輸出讀的時候沒切成輸入MCU 和 DS1302 在 IO 線上打架。改成開漏加外部上拉之后問題消失。6.2 時間不走讀出來永遠(yuǎn)是設(shè)定值這個基本就是 CH 位沒清。DS1302 上電默認(rèn) CH1時鐘停止。你寫時間的時候如果只寫了秒數(shù)據(jù)沒清 CH 位芯片就一直在暫停狀態(tài)。解決辦法就是在寫秒寄存器的時候確保最高位是 0。我習(xí)慣用 0x7F強制清零這樣不管之前 CH 是什么狀態(tài)寫完之后一定是走的。還有一種可能是寫保護沒關(guān)。DS1302 上電默認(rèn) WP1所有寫操作都被忽略。你寫進去的數(shù)據(jù)實際上沒生效讀出來還是舊值。標(biāo)準(zhǔn)流程是先寫 0x8E 寫 0x00再寫時間最后寫 0x8E 寫 0x80。這個順序不能亂。6.3 時間走得快或者走得慢如果一天誤差在幾秒以內(nèi)那是晶振精度問題正常。DS1302 配普通晶振一天差個三五秒很常見。如果一天差幾十秒甚至幾分鐘那就要檢查負(fù)載電容了。晶振規(guī)格書上的負(fù)載電容值要跟實際焊接的電容匹配6pF 的晶振配 6pF 的電容12.5pF 的晶振配 12.5pF 的電容。電容大了走得慢電容小了走得快。另外晶振的走線要盡量短遠(yuǎn)離高頻信號線。我有一次把晶振線布在了 SPI 時鐘線旁邊時間走得亂七八糟后來重新布線就好了。如果對精度要求高建議直接換 DS3231內(nèi)置溫補晶振一年誤差也就幾分鐘。6.4 常見問題速查表現(xiàn)象可能原因排查方法解決辦法讀出全 0xFFIO 無上拉量 IO 對 VCC 電阻加 4.7k 上拉讀出全 0x00CE 未拉高示波器看 CE 波形檢查 CE 宏定義時間不走CH 位為 1讀秒寄存器看 bit7寫秒時 0x7F寫入無效寫保護未關(guān)讀 0x8E 看 bit7先寫 0x00 關(guān)保護時間偏差大負(fù)載電容不匹配查晶振規(guī)格書換匹配電容數(shù)據(jù)亂跳時序太快加大延時延時加到 2us偶爾讀錯電源不穩(wěn)量 VCC 紋波加 0.1uF 去耦7. 從驅(qū)動到應(yīng)用定時開關(guān)的完整實現(xiàn)7.1 每秒讀一次時間比較觸發(fā)條件驅(qū)動調(diào)通之后應(yīng)用邏輯就簡單了。我在主循環(huán)里每 500ms 讀一次時間然后跟設(shè)定的觸發(fā)時間比較。如果時和分都匹配就觸發(fā)繼電器同時記錄一個標(biāo)志位防止同一分鐘內(nèi)重復(fù)觸發(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 掉電恢復(fù)電池供電下的時間保持DS1302 接上 CR2032 之后主電源掉電時芯片自動切到電池時鐘繼續(xù)走。我實測過拔掉主電源放了一晚上第二天上電讀出來的時間還是準(zhǔn)的誤差在正常范圍內(nèi)。注意電池正極接 VCC1負(fù)極接 GND別接反了。CR2032 的壽命大概兩三年如果發(fā)現(xiàn)掉電后時間丟失先量一下電池電壓低于 2.5V 就該換了。7.3 精度優(yōu)化軟件補償?shù)乃悸啡绻悴幌霌Q DS3231又想讓 DS1302 準(zhǔn)一點可以在軟件里做補償。具體做法是先讓 DS1302 跑一天記錄誤差比如一天快 5 秒那就在每天固定時間點把秒數(shù)減 5。這個補償邏輯可以放在主循環(huán)里每天執(zhí)行一次。不過這種方法比較粗糙適合對精度要求不高的場景。真要高精度還是建議上溫補晶振的方案。8. 代碼組織與移植建議8.1 文件劃分驅(qū)動層和應(yīng)用層分開我習(xí)慣把 DS1302 的驅(qū)動單獨放在ds1302.c和ds1302.h里只暴露ds1302_init()、ds1302_set_time()、ds1302_get_time()三個接口。應(yīng)用層的定時邏輯放在main.c里這樣換項目的時候驅(qū)動直接復(fù)制過去就能用。頭文件里只放函數(shù)聲明和必要的宏具體的引腳定義放在源文件里或者用條件編譯區(qū)分不同板子。我一般會在頭文件里留一個DS1302_USE_OPEN_DRAIN的宏用來切換開漏和推挽模式方便適配不同硬件。8.2 移植到其他平臺改三個地方就行這套代碼移植到別的平臺比如 GD32、ESP32 或者 51 單片機只需要改三個地方GPIO 操作宏、微秒延時函數(shù)、初始化函數(shù)里的 GPIO 配置。時序邏輯本身是純軟件模擬的跟硬件平臺無關(guān)。我把它移植到 GD32F103 上的時候就改了宏定義和延時函數(shù)編譯下載直接就跑起來了。如果你用的是 RTOS注意 DS1302 的讀寫操作不要被打斷否則時序會亂??梢栽谧x寫前后關(guān)中斷或者用互斥鎖保護。我一般是在ds1302_write_reg和ds1302_read_reg里關(guān)中斷操作完再開這樣最省事。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芯片會忽略整個命令。我一開始看資料沒注意這個細(xì)節(jié)命令字節(jié)直接寫寄存器地址結(jié)果怎么都不對。后來才發(fā)現(xiàn)地址要或上 0x80 才是完整的命令字節(jié)。DS1302 的 RAM 寄存器地址 0xC0 到 0xFD可以當(dāng)普通存儲器用掉電不丟數(shù)據(jù)有電池的情況下。我有時候會拿它存一些配置參數(shù)比如觸發(fā)時間、設(shè)備編號之類的省得外掛 EEPROM。不過 RAM 容量只有 31 字節(jié)存不了太多東西。最后說一個調(diào)試技巧如果你手頭沒有示波器可以用 LED 來粗略判斷時序。在ds1302_write_byte里每發(fā)一位就翻轉(zhuǎn)一次 LED如果 LED 閃爍頻率均勻說明時序在跑如果 LED 常亮或者常滅說明程序卡在某個循環(huán)里了。這個方法雖然土但應(yīng)急的時候挺好用。這個 DS1302 的驅(qū)動我從第一次調(diào)通到現(xiàn)在已經(jīng)在好幾個小項目里復(fù)用了每次都是復(fù)制粘貼改引腳十分鐘搞定。雖然芯片老但勝在便宜、好買、資料多對于精度要求不高的場景完全夠用。如果你也在用這顆芯片希望這篇筆記能幫你少走點彎路。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91碰碰碰| 欧美很很操视频| 日韩精品资源专区二区| 草草影院日本第一页| 有码免费观看| 免费一级欧美片片线观看| 少妇熟女一区二区三区| 欧美三级免费伊人| 2019天天干天天操| 欧美激情 亚洲色图| 秋霞曰韩R级| 亚洲做性| 色噜噜人妻丝袜AV资源| 国产免费久久久久| 久久精品高清AV| 96久久久久久久| 91精品电影18| 国产h片在线观看视频| 色97国产69香蕉| 99re6在线视频精品免费完整版安卓版| 蜜乳AV免费观看| 天天综合网~91入口| 五月丁香啪啪网| 亚洲精品国产精品成人| 亚洲日韩熟女人妻高清在线| 熟妇熟女视频一区二区三区| 手机看片日韩人妻| 国产馆| 狠狠做深爱婷婷久久二区| 中文字幕视频一区视频二区| 久久97资源 网| 日欧操屄视频| 亚洲va综合va国产va中文| 一中国女人毛片水真多| 精品久久久久久无码| 中文字幕午夜精品久久久| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 亚洲欧美日韩精品久久久一区二区| 亚洲色宗合| 97天天操天天干| 亚洲五月婷| 99老司机精品视频在线观看| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 国产多人在线观看视频| 国产51色综合久久免费| 丝袜亚洲综合| 97 国产精品| 欧美少妇高潮久久91| 国产一级αv免费看片| 玖玖爱在线视频免费观看| 久久人妻视频| 亚洲欧洲小说图片视频| 久久一区,青青青青草视频在线播放| 女同女同恋久久级三级| 91一起操| 国产乱码精品一区二区三区四川| 天天色黄色影院天天操| 爽极品影院| 欧美操逼熟女| 99热这里只有精品9| 欧美1区二区三区公司| 91日韩| 久久产精品一区二区三区电影| 亚州五月| 国产精品成久久久久午夜午夜| 黄色香蕉视频网站一区| 尤物网站91| 无码高清少妇久久| 亚洲AV成人在线| 人妻在线中出视频| 大香蕉日韩欧美| 三久久久四久久久久| 欧美日韩系列| 毛片久久| 日本欧美韩国国产在线| 尻女朋友一夜| 欧美激情精品| 国产自产一区视频在线| 在线 制服丝袜中出 人妻| 色色丁香| 综合色拍| 青青草影视蜜久久| 亚洲男人综合| 国产精品国产拍高清AV| 青青草大香蕉在线视频| 深夜国产福利| 屁屁影院一区二区三区国产 | 色欲天香天天综合网-成年人三级片网站-欧美乱妇狂野-日韩国产专区-久久久久久 | 性爱综合网| 色诱avtt| 99在线免费观看| 色综合加勒比四四季| 日本 情色 1区| 777琪琪午夜免费A片| 五月天精品| 久湿久久 | 日本久久超碰| 国产亚洲精品A在线观看下载| 中国探花熟女| 人妻熟女一区二区三区在线| 日韩三级av片| 人人操人人操人人操人人操人人操人人人11.CM | 日本一本道A级黄色毛片试看60分钟| 91色综| 日本欧美色| 大色综合| 青青草九九九九九| 四虎免费视频| 国产偷人伦激情在线观看| 色色色网站| 爱丝福利| xxx0国产在线播放| 91成人久久| 国产综合色精品在线观看| 97色在线| 男女无套 免费网站| 欧美日韩国产在线| 人妻熟女一区二区三区视频| 在线观看一卡二卡| 九七超碰| 26uuu欧美| 久久久性少妇| 欧美亚性天堂| 亚洲牲交| 夜夜嗨AV蜜臀av| 99热18这里只有精品| 日韩99神马视频片| 香伊人在线| 开心六月色| 成全在线观看免费观看| 死我十八禁| 亚洲制服欧美另类内射| 亚洲天堂电影网99999| 91激情综合| 亚瑟国产精品久久无码| 久久9精品网站| 国产一级作爱毛片| 亚洲资源网| 26uuu久久| 久久国模av| 久久久国产av美女私房| 欧美日韩人妻婷婷一区| 欧美中出1| 五月亭亭六月丁香| 天天综合AV| 97啪啪| 日本一区99| 国产精品不卡一区二区三区av| 91色图片| 伊人色综合网电影| yazhouzaixian| 五月丁香六月婷| 日本韩国国产精品一区| 久久久一二三四区| 丰满欧美少妇| 国产Aα| 日韩无码服务区| 久久精品国产精品亚洲艾通辽熟妇 | 亚洲区 欧美区| 日本成人在线不卡一区二区三区 | 超碰97首页| 九九色逼| 自拍偷拍 日韩无码| 久久风骚城市| 一区二区三区日韩欧美 | 二级久久网| 很很热性爱视频| 日本成人在线不卡一区二区三区| 久久久久96| 热久久91婷婷| 亚洲一区二区三区春色| 97在线公开视频| 91久久午夜无码鲁丝片久久人妻| 999岛国大片| 亚洲日韩在线a不卡99精品| 97视频在线视频| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 日本免费一区二| 99久久99久久免费精品蜜臀| 日本新免费二区三区| 开心激情站| 成人乱码一区二区三少妇| 国产v亚洲v日韩v欧美v片另类| 天堂涩涩| 国产自偷| 91痴汉| 国产超碰国产97| 国产亚洲精品美女久久久m| 男人的午夜天堂| 国产亚洲精品农村妇女| 亚洲欧美日韩偷拍色图| 亚洲中字慕不卡| 色综合加勒比四四季| 99爱爱| 综合 欧美 亚洲 日本| 久久久人妻| 国产夫妻性生活视频| 91 丝袜在线观看| 国产五码丝袜屁眼| 锕锕好爽 死我在线观看| 五月婷丁香| 丝袜剧情| 国产精品蜜乳AV| 一区二区三区黄色片a| 熟女探花啪啪| 日本性爱视频一级| 丰满人妻被猛烈进入中| 欧美日韩在线视频网站| 久操电影| 亚洲欧美一区二区网址| 超碰在线人妻中文字幕| 91av熟女人妻| www.99色| 深夜国产一区二区三区在线看| 日日操免费视频| 亚洲一曲日韩精品| 色久桃花影院在线观看| 中国一级特黄大片护士| 欧美一区二区三区另类精品| 人妻激情另类| 暖暖精品二区三区观看| 啊啊啊97视频| 久久久性少妇| 精品人妻一区二区三区视频在线| 亚州综合在线| 欧美成人A√在线一区二区| 色在线视频导航| 久久草草亚洲蜜桃臀| 日本爽爽爽爽爽爽免费视频| 欧美1区二区三区公司 | 男人天堂 天天射| 人妻少妇精品久久久| 亚洲的天堂网| 高精欧美色| 60秒不遮不挡| 少妇免费视频| 一本一道人妻久久一区二区三区 | 亚洲人人操| 日韩在线视频1234| 好舒服视频| 欧美后入式| 亚洲丝袜诱惑| 日韩精品1区2区中文字幕| 亚洲成a人片在线观看中文!!!| 国产综合永久精品日韩鬼片| 一区二区日韩欧美久久| 精品无人区麻豆乱码久久久| 欧美性夜| 亚洲国产无码精品首页久久久| 久久国产三区| 蜜桃精品一区二区三区久在线| 色五月av| 国产麻豆福利av在线播放| 欧美国产日韩高清在线| 狠狠操一区二区| 素人伊尹大香蕉免费下载视频| 97香蕉网| 99久久婷婷国产综合| 蜜桃臀 后入 一区 二区 三区 在线| 亚洲吊色| 免费国产电影一区二区| 丁香婷婷久久 | 青青草国产一区二区三区| 欧美精品97| a级理论午夜日本| 日本一天色道久久久精品视频| 亚洲狠狠入| 巨爆乳一区二区爆乳区| 夜夜操天| 亚洲黄色电影| 家庭乱伦网站国产| 5252色欧美在线| 色爱亚洲| 亚洲另类在线观看| 亚洲人人夜夜澡人人爽| 五月丁香六月综合缴清无码| 小少妇| 九热超碰| 伊人激情五月天一区二区| 欧美一级欧美三级在线观看 | 啊啊啊啊嗯嗯嗯用力好爽| 婷婷15月天青娱乐| 欧美色视频在线| 久久久久性熟视频| 中文乱码字幕观看| 操狠狠| 插插综合网天天影视网| 色官网在线| 东方亚洲在线操逼天堂| 日韩av一级黄片| 美日韩一二三区| 色综合国产在线观看| 四虎AV在线观看| 啪啪啪男女亚洲中文字幕99| 久久激情视频| 欧美激情 亚洲色图| 精品一区二区亚洲国产| 九色 蝌蚪 熟女自| 日本福利二区视频| 探花视频免费观看国产专区| 日本三级小说中文字幕| 日韩欧美成人综合在线| 中文字幕十五区| 中文字幕日韩人妻视频一区二区三区| 2019午夜福利视频| 92人人操人人| 一区二区三区看视频| 爱射综合| 日本成人免费一区二区三区| 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 精品欧美老熟女一二区| 久久9精品视频| 久久久精品中文字幕爱豆| 亚洲免费97免费| 综合 欧美 亚洲 日本| 欧洲精品欧洲精品| 一起草AV| 久热影视| 中文字幕一区二区三四五区日日骚| 中文字幕久久婷婷丁香五月天| 97色色色综合网站| 久操热线| 中国AV美女| 黄站在线免费观看| 亚洲精品97在线| 久久成人午夜精品影院 | 欧美18老人禁| 啊嗯嗯啊好大好爽| 99热精品青草在线| 一,爱啪啪,在线免费视频| 国产2.3.4区| 亚洲色图 欧美热图 清纯唯美 另类自拍| 丰满美女一级毛片在线播放| 欧美色图另类图片| 91偷拍欧美亚洲| 国产亚洲禁久一区二区| 日韩高清黄片| 欧美激情1区| 日日橹狠狠爱欧美超碰| 深爱五月天| 乱伦熟女专区| 91干熟女| 国产乱伦性爱区| 亚洲中文字幕一区二区| 情色五月天网| 91美乳| 大香蕉黄色一区| 超碰午夜| 久久香蕉国产线看观看亚洲女人| 超碰这里只有精品| 天天操av懂色| 操操啪| 一区二区三区四区免费视频| 综合av社区| 欧美激情 亚洲色图| 天操天操夜操夜月操月年年操 | 超碰97久| 久久久久久久久久久久久女过产乱-少妇高潮一区二区三区喷水-成人AV | 国产成年精品高清在线观看91| 亚洲小说视频| 九九超碰综合网| 97亚洲资源| 亚洲精品日韩国产欧美| 久久久久久久亚洲Av无码| 丝袜亚洲综合| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 日本中文字幕一区| 97中文字幕色| 中文字幕加勒比海高清无码免费视频| 日本久久精品| 久久久五月天| 亚洲一区中文字幕一区| 91人妻尻屄视频| 草草影院最新网址| 91快色色色色色| 中文字幕日韩人妻视频| 亚洲激情在线观看一区| 中国操逼无码| PMv在线观看| 亚洲加勒比久久日本道| 97在线免费看视频| 91一区二区三区蜜桃| 亚洲日韩国产精品| 色在线综合| 成年人网站在线免费观看| 97资源亚洲| 怡春院久久| 中文字幕免费在线观看| 玖玖无码超碰| 激情小说在线视频| 国产女人与拘做受视频免费| 性爱Av免费| 伊人久久综合精品欧美| 国产强上视频在线观看| 夜夜草网站| 婷婷五月综合激情| 久久秀这里有精品| 久久蜜桃综合网| 国产中文福利| 小电影欧美91| 五月综合色| 中文字幕在线观看二区三区| 天天天天操| 欧美一区91大爱| 性色avv| 91嫩草欧美| 青青草日韩免费观看高清在线| 91激情国产| 蜜臀AV午夜精品久| 日韩久久.一级黄色片| 天天干夜夜操网| 屌逼麻豆| 伦理日韩国产久久| 国产一区二区二区按摩精品啪视频| 色哟哟 日韩精品| 久久五十路熟女人妻| 日本 欧美 国产一区| 97资源制服丝袜| 丝袜综合| 好吊色综合| 丰满人妻一区二区三区性色| 另类天堂| 综合色久欲| 91w欧美| 草草网站影院白丝内射| 天天操av懂色| 久久久成人免费av电影| a片偷拍视频| 欧美东京热精品A∨| 亚洲成人av色网| 新视频sss国产| 一二三区精品视频| 看一级特黄a大一片| 亚洲精品男人的天堂| 久久99久久99精品天美传媒棢·纸:.| 亚洲欧美另类激情小说| 国模少妇一区二区三区| 96免费视频在线| 色九九久九九| 女人午夜视频777| 天天亚洲综合| 日本女人久久久| 中国女人内射6XXXXX| 欧美日韩夜夜| 成人性交免费视屏| 中文字幕亚韩| 97一区二压| 久久久精品| 大香蕉五月天婷婷| 国产精品乱码久久久、久久| 高清国产成人无码| 中文字幕55555| 蜜臀99久久精品久久久久| 人妻人人做人人澡人人爽欧美一区| 中文字幕二区日韩天堂| 91久久国产精品| 国产69精品久久久久99尤物| 香蕉免费一区二区三区不读| 国产中文字幕在线点播| 无码99| 夜色91| 人妻丝袜无 码视频专区| 超碰在线成人电影| 少妇滛荡视频| 欧美后入式| 成人AV在线电影| 久久熟女精品不卡一区| 国产视频一区二区免费| 国产三级中文字幕粉嫩| 欧美麻豆成人同性GⅤ在线| 熟女精品一区二区在线观看| 亚洲成人av电影在线| 欧美中文狠| 日本1区2区不卡视频| 后入人妻一区| 手机在线中文字幕国产| 鸥美极品| 自慰白浆在线观看| 久久久久久久| 东京太热久久久| 亚洲爽图| 老汉网| 强奸乱伦大香蕉| 青青操视频在线| 日韩不卡毛片Av免费高清| 日本黄色XXX| 中日高清无码操逼视频| 超碰97人妻在线| 夜夜操夜夜爽夜夜高潮| 国产精品人人爽人人做可爱福利| 十八禁视频一区二区| 超碰97男人| 久操凹凸视频| 日韩无码服务区| 思思99热| 日韩精品国产一区二区| 日本 情色 1区2区3区| 啊视频在线| 一区二区三区国产在线播放| 国产美女激情| 国内外色色色色色成人视频| 国产二区三区免费视频| 中文字幕乱偷人妻久久艾草网| 日韩少妇一区二区三区| av黄图片在线观看| 日本道日本道中文字幕日本道最新日本道在线观看 | 777超碰| 久久精品一区| 国产一区二区视频在线播放| 欧美日本成人一区二区| 精品一区二区三区四区外站| 可以看的av| A级毛片在线看免费| 欧美,日韩,中文,另类| 亚洲欧洲美腿丝袜| 1769精品一区二区三区| 亚洲码在线中文在线观看| 人妻熟女一区二区| 黄色二级片网站| 精品伊人久久久大香线蕉小说| 欧美在线91| 无码精品啪啪啪一区二区三区三州| 看看小穴| 成人短视频在线观看| 国产黄色视频久久| 78精品| 91国产丝袜美女| 天天天肏屄欧美| 五月天色色网站| 国产熟女免费观看久久| 女人与公拘交酡2020视频| 久草看看看| 国产久久男人天堂| 91精品丝袜久久久久久无码人妻| 黑丝内射一区二区三区| 偷看洗澡一二三区美女| 91社区拍啪人妻| 日韩操逼性鲍| 亚洲无线观看久久| 东京热天堂网| 人妻精品一区二区| 精品一级| 综合欧美色图| 亚洲干B| 久久久91福利姬| 欧美人妻中出| 一区二区国产视频在线观看| 2019天天操天天爽天天拍| 亚码激情| 日韩乱码Av| 日日操天天操| 激情五月婷婷综合| 99热66| 色婷婷五月综合| 久久久久9| 日韩性爱播放| 国产成人+综合亚洲+天堂| 精品国产乱码久久久久久口爆网站 | 99热国产| 婷婷五月天伊人| 色情五月综合婷婷| 婷婷丁香六月天| 婷婷久久综合| 97资源超碰| 91亚洲不卡一区| 国产精品天美传媒| 99天天超碰| 在线观看视频91| 国产精品久久久九九九| 亚洲国产中文字幕| 黄色交缠性感爆操91国产精品免费一区二区三区| 亚洲少妇免费视频\| 五月天AV资源| 九九九九九九视频免费| 免费少妇一区二区| 日本人人操人人操| 亚洲少妇色| 福利风月五月天影院| 嗯嗯啊啊好疼| 黄页网站成人免费| 99久久久无码国产精品性啊聊| 人妻精品视频一区二区三区| 成人性爱av| 无码 有码 国产18p| 五月婷婷综合网| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 日本国产二线女色| 999久久久| 亚洲欧美自拍偷拍| 9九九九九视频在线观看| 蜜桃视频精品一区二区三区| 久久精品高清无码一区| 亚洲人久久久久日| 国产精品国产自产高清AV| 在线视频日韩欧美国产| 99999无码| 日韩中文9| 亚洲另类春色| 懂色AV蜜臀无码精品APP| 在线观看一卡二卡| 精品中文日韩字幕视频| 男人天堂资源| 精品亚洲国产成人精品| 天天看天天综合成人网| 本道在线| 收看日本人日bb| 99热官网| 久久后入制服| 亚洲一卡二卡在线免费| 国产精品三级视频网站| 欧美综合色站| 97久操| 久久精品中文字幕观看| 熟妇人妻一区二区三区| 天天影视综合色| 亚洲阿v天堂无码z2018| 丝袜美腿欧美| 人人妻人人色一区二区三区| 飘花国产午夜精品不卡| 99热这里只有精| 后入人妻无码| 国产精品久久久久无码AV会牛| 色五月69夫妻| 久久久久97| 欧美操逼一二三区| 9I1性色影院| 国产亚州高清国产拍精| 人妻免费观看| 久久久久亚洲AV无码专区少妇| 91超碰人人| 91麻豆天美传媒在线| 黑人黄片在线免费观看| 国产久久男人天堂| 99国产在线 精品 视频| 欧美熟女妇同| 级做a爱无码性色永久免费| 精品国产乱码久久久久久影片| 欧美97网| 涩五月婷婷| 婷婷人妻激情| 丁香六月婷婷久久综合| 欧美亚洲特P| 狠狠操综合| 后入精品| 超碰av人人人| 98久久| 国产九九久久久精品| 欧美成人性活片| 男人天堂2019亚洲| 玖草在线视频| wwe 天天干.com| 奇米四色网| 97色涩| 欧美久久人人网| 国产午夜福利专区综合| AV天天综合| 蜜臀久久99精品久久久久| 色综合91| 秋霞操逼片| 午夜福利在线视频1000| 人妻一区视频| 色九九久九九| 熟女丰满人妻一区| 少妇高潮流水av免费| av麻豆啪啪| 亚洲一区二区中文字幕| 蜜桃臀av一区二区| 中文字幕日韩国产传媒欧美精品| 久久久性| 97网址97| 熟妇在线视频一区二区| 日本淫乱女一区二区三区视频| 欧美亚综合色图| 黄色AAAAAAAAAAA大片| 精品高清牛人盗摄一区二区三区中文字幕A片免费在线观看 | 好涩综合| 亚洲永久永久永久永久一级一级一级精品 | 欧美91变态| 嗯嗯嗯,草死我| 艹少妇网站| 日韩射精| 久久九精品| 丁香五月色| 亚洲精品一区二区精华| 中文字幕精品三级久久久| 五月天偷拍| 国产精品蜜臀久久久久无码AV| 日韩 女同 综合| 亚洲欧美大香蕉| 操日韩第| 欧美色图 色综合图| 久久草视频污视频| 色欧美天天| 91麻豆va国产精品| 日韩av色图综合| 97天天日| 天天摸天天舔天天操| 性吧在线视频| 国产精品干干干| 美女网站91| 国产精品电影推荐| 中文字幕二区日韩天堂| 国产精品探花视频| 日韩三级伊人| 国产三级中文字幕粉嫩| 好吊色一区| 婷婷丁香六月天| 亚洲精美粉嫩嫩泬在线观看 | 国产精品无码在线| 亚洲春色一区二区三区| 东京热,男人的天堂| 一本大道综合伊人精品热热| 婷婷五月天补不补| 亚洲精品精品一区二区| 做爱A级亚欧| 欧美国产精品久久九九| 91亚洲网站| 亚洲色综网| 国产久久日| 99re在线观看| 99re这里只有精品3| 丁香五月偷拍| 久久曰曰| 91狠狠综合久久久| 热99这里只有精品| 强歼乱伦资源网| 天天艹天天日| 天天激情干| 影音先锋新男人| 亚洲熟女乱色一区二区三区| 亚洲性网| 97综合网| 亚洲伊人久久综合97| 97精品久久| 啊啊啊啊啊啊在线观看| 丰满人妻一区二区三区免费 | 91久久久久| 久欲AV| 在线小视频| 色五月激情AV在线| 蜜桃精品视频一区二区三区| 欧美在线综合| 美女爽爽爽刺痛洞洞| 国产精品3| 久久久久96| 国产黑白丝在线| 一本久久久精品| 欧美草草高清日韩视频| 久久精品超碰| 网友自拍第一页| www国产无码| 久久国产在线一区二区| AV一起草在线| 免费精品中文字幕| 乱伦3P视频| 日本三级日本三级99| 五月天偷拍| 欧美熟爽综合| 啊啊啊啊操死我了| 亚洲 欧美 综合 91| 天堂av最新电影网| 亚洲一二三四区| 午夜国产综合视频在线观看 | 97香蕉人人乳| 麻豆天美在线喷水AV| 大香蕉2017| 2019天天干| 国产精品一区av在线| 美国日韩黄色片| 亚洲丝袜二区| 少妇与黑人高潮在线| 91超碰碰在线| 伊色久人大在线| 日韩性爱小视频| 国产精品无码av| 人人操AV| 一区,二区,三区视频| 校园春色美腿丝袜 | 婷婷导航| 欧美 日韩 另类 亚洲| 国产熟码AV| 欧美日韩在线视频网站| 黄色大香焦1级‘′‘| 天天日少妇逼AV| 丝袜天堂| 亚洲色图A| 亚洲国产精品9999在线观看| 日本综合色图| 好屌色综合| 欧美天天干| 欧美性爱中文字幕无线码| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 日韩精品人妻中文字有码在线| 欲香欲色综合天天伊人| 吖在线不卡一区二区国产剧情| 色色激情| 吊色| 天天谢天天干| 欧美毛片在线网| 韩国嫰模上门援交视频| 1769一区| 色色色综合| 蜜臀久久精品久久久久视频| 韩国三级一线观看久| 亚洲综合成人网| 久久m| 乱伦一二三| 日本超碰在线国产一区| AV男人天堂网| 7777奇米影视久久| 国产精品久久9| 欧美综合色,www| 少妇高潮对白在线观看| 麻豆天美传媒在线视频天堂| 亚洲资源站| 9l视频自拍9l九色成人| 亚州图片第一页| 国产日韩欧美中文在线播放| 免费的av网| 亚洲久久久久| www.激情| 大香蕉狠狠爱| 国产成人综合网| 天天综合站| 日韩精品黄片免费观看| 亚洲人91| 狠日操| 国产白丝在线| 黄片国产精品一区二区| 亚洲三级网址久久最新| 手机看片91人妻| 久久亚洲骚逼综合| 国产400孕妇孕交群| 婷婷五月成人| 国产美女自拍视频| 亚洲男人的天堂亚洲| 巨乳特殊服务按摩| 很很干很很操| 久久9久| 国产精品久久久久久夜夜夜| 网站A V在线| 草伊人高潮喷水超碰| 亚洲欧美精品国产一区二区| 欧美中字二区| 在线观看AV片| 中文字幕午夜精品久久久| 婷婷AV一区二区三区| 快播久久人人aV| 成功精品影院| 亚洲无 码A片在线观看麻豆| 久久久久久大| 天天操人人操狠狠插| 美女干逼2| 曰韩成人免费视频| 94色色电影网| 亚洲欧美爆| 精品国产丝袜一区二区三区乱码| 久久久久96| 五月花婷婷| CCYY草草影院地址入口| www.男人天堂| 日本欧美国内在线| 亚洲婷婷丁香在线| 欧美韩国你懂得在线| aⅴ日韩成人电影av在线免费看av大全| 人妻少妇久久| 久久久久久中文字幕中文字幕最新| 久久久久亚洲熟妇熟女| 99热国产| 91超碰人人| 亚洲中文日韩欧美大香蕉视频| 丝袜美腿丝袜| 99啪啪视频| 探花在线免费观看视频国产一区| 啊啊啊男女| 激情图片亚洲色图| 亚洲国产欧美中日韩成人综合视频| 亚洲在线a| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 国产综合日韩伦理| 日本最新1区2区3区| 夜夜爽77777| 人人操人人插人人摸人人干| 精品人妻一区二区三区四区| 五月天久久婷婷亚洲| 91人妻Pr| 高清无码在线播放网站| 久久线上视频免费看| 成人日韩中文字幕| av九九| 亚洲AV噜噜狠狠网址蜜桃动漫| 91精品久久久久| 一区二区视频你懂的| 天天干少妇| 3P乱轮视频| 亚洲欧美一区二区网址| 97亚洲综合在线| 熟女网站最新| 国产13区| 国产按摩一区二区三区| 亚洲乱码尤物193YW| 一个人免费视频观看在线WWW| 好湿好紧视频| 亚洲性图91| 久久免费看高潮毛片韩国| 久久婷婷亚洲| 日本视频一区二区三区| 欧美福利视频啊啊啊啊| 丰满人妻一区二区三区免费 | 在线视频免费播放一区| 日韩一级久久毛片| 夜夜欢天天干| 日本二区不卡| 亚洲欧美日韩中文久久自慰| 激情文学欧美| 欧美嗯啊……在线观看视频免费| 五月天综合在线| 麻豆啪啪啪视频| 亚洲成人一区二区精品| 亚洲精品乱码线路中文字幕| 17c嫩草51久久91嫩草| 91亚洲图片| 97亚洲自在精品在线观看| 中文字幕伊人| 亚洲黄色网址| 亚州高清色综合| 色欲人妻一区二区在线| 欧美成不卡网| 色综合中文字幕不卡| 蜜桃色色网站视频三区| 无码又爽又硬又激情免费视频| 亚洲高清无码免费观看视频| 国产呦精品一区二区三区下载| 超碰成人公开| 丝袜剧情| 久久久久成人亚洲国产| 日本一级二级三级网站| 一区二区影院| 乱伦3P视频| www.色婷婷色综合| 91狠狠综合久久| 男人天堂久久精品| 超碰亚洲欧美日韩无| 丰满少妇人妻久久久久久| 久久婷婷在线观看视频| 欧美 青青草| 色色综合97| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 91亚洲网| 日韩免费一级性爱视频| 国产三级资源在线观看| 伊人久久综合影院| 久久精品国产亚洲AV高级北京| 成人网站 免费观看| 日本韩欧美在线播放a| 一级黄色影片| 欧美三级一级| 亚洲揄拍网| 超碰久久综合| 欧美性性性| 天天影视色香欲综合网小说| 免费的黄片有限公司| 亚洲暴力强奸AV| 丰满的三级少妇欧美久久久| 男人天堂2019亚洲| 久插综合| 伊人久日| 国产又黄又爽| 一区二区三区探花在线观看| 国产成人自拍视频在线| 一色网男人的天堂| 97精品97| 少妇三p| 丰满美女一级毛片在线播放| 亚洲成人一区二区精品| 五月丁香啪| 夜夜嗷嗷一区二区| 国产蜜臀精品一区二区尤物| 蜜臀无码视频在线观看| 国产成人手机视频激情| 丁香六月婷婷久久综合| 熟女欧美日韩综合婷婷| 欲色综合| 人妻中文字幕精品无码| 色爱综合网| 91nbbbbbb| 亚洲天堂男人网| 温婉少妇玩3p| 91色碰| 后入式五六区| 88xx成人精品视频| 亚洲综合婷婷| 欧美日动态视频| 91第一页| 一区二区三区免费岛国片| 九色 人妻 大香蕉| nuu12国产麻豆精品| 亚洲无码com| 九九热AV| 嗯嗯啊啊日韩精品| 欧美日韩插逼视频| 99热这里是精品| 91欧美性| 精品日韩人妻视频| 五月花婷婷| 97超碰人操| 精品国产三级av韩国在线| 亚洲色诱惑| 黄色十八禁| 黄片qw| 亚洲国产综合久久天堂| 俞拍久久国应视频| 日本午夜精品理论片A级APP发布| 久久久久ab| 精品人妻视频入口| 精品夜夜澡人妻无码| 91少妇高潮| 日亚韩精品视频二区三| 成人精品欧洲亚洲| 中字幕人妻一区二区三区| 欧美黄页在线| 600国产精品视频| 大香蕉久| avav青青草久久夜| 日韩av一级黄片| 狠狠做深爱婷婷久久二区| 18禁无码永久免费无限制| 观看免费区二区三区二| 亚洲欧美黄| 精品一区二区啪啪啪| 亚洲天堂男| 在线 制服丝袜中出 人妻| 天天天肏屄肏屄肏屄欧美欧美| 激情五月天色色网| 国内外激情在线| 十八禁视频网站| 91精品91久久久久77777| 在线观看av区| 超碰欧美COM| 91九色首页| 99国产女人| 亚洲 欧美 91| 亚洲综合另类| 久久嫩草国产成人一区| 国产兽交视频在线播放| 91久久伊人婷婷青青草| 日韩综合成人免费视频| 亚洲 另类 丝袜 自拍 动漫| 亚洲AV性爱电影| 亚洲情色综合网| 国模精品一区二区三区苹果色戒| 97 国产精品| 无码99| 精品91| 97干天天| 人人做人人妻人人夜视频| 亚洲脚交| 七久久久| 久久成人国产精品| 久草精品一区| 亚欧性爱在线无码| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区 | 亚洲色天堂日韩中| 91无码西班牙视频在线| 伊人久久大香线综合无码| 精品高清一区二区三区三州| 亚洲色综网| 大香蕉97久久| 老熟女搡BBBB搡BBBB视频| 热热色色综合| 99色热| 欧美不卡在线一区二区| 九七毛片九九毛片| 婷婷五月天av| 亚洲日韩精品久久久久一区壹牛 | 午夜福利合集| 九九久久久久久爱| 欧亚乱色熟女一区二区| 美欧色综合| 亚洲成人色情五月天丁香花| 国产一区二区在线电影| 天堂无码| 97操综合| 男人的天堂.com| 久草福利在线资源站| 国产传媒日韩| 国产诱惑| 日本天天人人狠狠在线日美女| 亚洲91在线播放影院| 天天伊人| 夜夜免费视频| 日本三级小说中文字幕| 五月天婷精品激情| 婷婷色色五月天福利| 亚洲欧美天| 天天日天天舔东京热| 色丁香五月婷婷| 中文字幕一区二区三区高清| 中文字幕在线免费观看| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 无色无码| 性爱综合一区二区| 国产一线二线三线av| 欧美国产有色电影| 色欧美天天| 国产视频一区二区免费| 国产无码精品无码| 精品超碰色| 日韩精品作爱导航| 久草综合京东| 成人av免费观看| 美国一区二区三区视频| 97视频在线免费观看| 亚欧操逼片在线观看 | 乱论91| 影音先锋日本一区二区| 久草午夜| 男人的天堂久久| 不卡六六在线91| 国产精品久久久久久久久久久久久久久| 精品一区二区三区蜜桃臀赵总| 在线国产一区二区av| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 影音先锋日本一区二区| 好吊色青靑草| 色与欲影视天天看综合网| 大香蕉色欲AV| 亚洲色香| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 欧美日日操| 亚洲国产成人精品999| 亚洲欧美首页| 舔足天天操天天射| 超碰色97| 啪啪自拍九九综合| 夜夜夜爽www精品视频| 51一区二区三区| 天天综合网亚洲综合网| 欧美色图在线视频少妇| 九九综合网| 亚洲麻豆18发?| 日韩欧美蜜桃精品久久中文字幕久久 | 亚洲淫乱骚妇AV| 爱欲AV| 96免费视频在线| 精品一区二区三区四区女 | 天天色黄色影院天天操| 精品国产一区二区三区在线播出| 大屁股人妻女教师撅着屁股| 日婷婷| 日逼视频日本| h无码动漫在线观看| 天天色综亚洲91污| 日本熟女中文| 亚洲va综合va国产va中文| 黄污污污污| 一二三啪啪专区| 亚洲精品天天影视综合网 | 99999国产| 97国产超碰|