日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

STM32F103C8T6完全指南:從藍藥丸入門到工程實戰(zhàn)與避坑

STM32F103C8T6完全指南:從藍藥丸入門到工程實戰(zhàn)與避坑 很多工程師第一次接觸STM32都是從一塊藍色的小板子開始的。那塊板子叫STM32F103C8T6最小系統(tǒng)板江湖人稱“藍藥丸”。這個外號很傳神它既便宜又夠用像一顆能讓你快速進入ARM嵌入式世界的神奇藥丸。無論你是學生做課程設計、創(chuàng)客做原型驗證還是工程師做小批量產品大概率都繞不開這顆芯片。今天這篇就圍繞這顆“藍藥丸”把硬件資源、開發(fā)方式、實戰(zhàn)案例到高頻踩坑點一次講清楚。1. 為什么F103C8T6能成為“工程師標配”硬件資源與定位分析1.1 這顆芯片的“家底”到底有多厚STM32F103C8T6屬于STM32F1系列中的“中等密度”型號采用ARM Cortex-M3內核主頻最高72MHz。Cortex-M3雖然是ARMv7-M架構里的老將但它的指令效率和中斷響應放在今天的低成本嵌入式場景里依然能打。芯片內置64KB Flash和20KB SRAM這個存儲組合乍看不大的但配合DMA、定時器、ADC、USART、I2C、SPI、USB等外設足以覆蓋大量工業(yè)控制和消費電子產品需求。具體來說F103C8T6擁有37個GPIOLQFP48封裝多數(shù)引腳兼容5V輸入這對和舊電路銜接非常友好2個12位ADC最多10個外部輸入通道采樣時間可編程3個通用定時器TIM2/3/4加1個高級定時器TIM1支持PWM、輸入捕獲、編碼器接口3個USART、2個I2C其中I2C1支持SMBus/PMBus、2個SPIUSB 2.0全速設備控制器注意沒有USB Host1個CAN 2.0B接口這是很多汽車電子和工業(yè)總線場景選它的重要原因多個DMA通道支持外設到內存、內存到外設、內存到內存?zhèn)鬏攺男詢r比來看這塊芯片散片價格長期在幾塊錢到十幾塊錢人民幣區(qū)間對比同性能的其他MCU幾乎沒有對手。這也是為什么很多產品在選型評審時只要資源不是特別緊張工程師第一反應就是“先拿F103C8T6兜底”。1.2 最小系統(tǒng)板“藍藥丸”的電路構成與設計邏輯市面上最常見的藍色最小系統(tǒng)板以8MHz晶振作為HSE高速外部時鐘源。注意板載晶振通常配兩個20pF左右負載電容但實際有些廉價板子會省掉這兩個電容導致RTC或高精度通信出現(xiàn)頻偏。我的建議是拿到板子后先用邏輯分析儀或頻率計確認一下時鐘是否準確尤其是在做USART和CAN通信時。板子上的AM1117-3.3穩(wěn)壓芯片把USB或排針輸入的5V降壓到3.3V給芯片供電。這里有個細節(jié)很多藍色板子上的LDO壓差較大如果你用3.7V鋰電池直接供電輸出可能只有2.8V左右此時芯片雖然能跑但ADC參考電壓、Flash讀取可靠性都會受影響。所以用電池供電時盡量加一個低壓差LDO比如ME6211或XC6206系列。復位電路由10kΩ上拉電阻加100nF電容組成NRST引腳低電平復位。BOOT0和BOOT1引腳一般通過跳線或撥碼開關引出方便切換啟動模式從主Flash啟動正常模式、從系統(tǒng)存儲器啟動ISP串口下載、從SRAM啟動調試用。很多新手把BOOT0不小心撥到1然后發(fā)現(xiàn)程序下載進去卻跑不起來就是這個原因。1.3 國產替代視角當“藍藥丸”不再只有ST一家近幾年“國產替代”在MCU領域非常熱F103C8T6因為生態(tài)太成熟成為國產廠商對標的首選對象。市面上主流的國產替代型號包括GD32F103C8T6兆易創(chuàng)新出品硬件引腳兼容但內核是M3改進版主頻能到108MHz功耗參數(shù)、ADC精度和ST原廠有細微差別APM32F103C8T6極海半導體出品兼容性做得相當不錯很多代碼不用改直接編譯燒錄HK32F103C8T6航順芯片出品主打性價比但某些外設寄存器和ST有差異需要仔細查手冊MM32F103C8T6靈動微電子燒錄工具和ST-Link不完全通用選擇國產替代時我最直接的提醒是不要只看引腳兼容要拿自己產品里用到的每個外設逐個測試。我遇到過GD32的I2C從機模式下時序和ST行為不同導致外掛傳感器偶爾讀不到數(shù)據(jù)也遇到過HK32的ADC在低溫環(huán)境下噪聲偏大需要軟件濾波兜底。如果你做的是大批量產品替換前務必做完整的硬件兼容性測試和老化測試節(jié)省的那幾塊錢成本可能在售后上加倍賠回去。2. 從零搭建開發(fā)環(huán)境Keil/CubeMX/Arduino的選擇與工程創(chuàng)建細節(jié)2.1 不同開發(fā)方式的“性格差異”F103C8T6的開發(fā)方式非常多這是它生態(tài)成熟的最大紅利。我按個人經(jīng)驗先把三種主流方式擺出來對比一下你可以根據(jù)項目需求選擇開發(fā)方式上手難度代碼可控性適合場景標準外設庫SPL中等比較高老項目維護、寄存器級理解HAL庫 CubeMX低中等快速原型、外設多、圖形化配置寄存器直接操作高最高極致優(yōu)化、資源緊張、學習底層Arduino框架極低較低快速驗證、創(chuàng)客項目、教育演示我個人的習慣是凡是產品級代碼用CubeMX生成底層初始化再手工加業(yè)務邏輯凡是快速驗證傳感器或通信協(xié)議直接Arduino框架幾分鐘跑通如果需要極致省電或精確時序才回頭用寄存器。2.2 CubeMX HAL庫手工創(chuàng)建一個LED工程很多教程讓你直接打開CubeMX點幾下生成工程但我更推薦你手工操作一次理解CubeMX背后發(fā)生了什么。這里以“點亮板載PC13 LED”為例藍藥丸板載LED通常接PC13但部分版本接PA1使用前看板子絲印。第一步打開STM32CubeMX選擇芯片型號STM32F103C8Tx。第二步在Pinout視圖里把PC13引腳配置為GPIO_Output然后修改GPIO標簽比如命名為LED。如果你用的是PA1版本改成PA1即可其余操作一致。第三步配置RCC的HSE為Crystal/Ceramic ResonatorSYS的Debug設置為Serial Wire。這里Debug選項千萬別選No Debug否則下載器連不上芯片會卡死在“No target connected”。第四步時鐘樹配置頁面里把HCLK改為72MHzCubeMX會自動配置PLL系數(shù)。如果芯片型號選錯選成了F103C8T6但實際是其他密度型號時鐘配置可能會越界所以在選型階段就要確認Flash容量。第五步Project Manager里填寫工程名、選擇工具鏈我一般選MDK-ARM。Code Generator頁面勾選“Generated peripheral initialization as a pair of .c/.h files per peripheral”這樣每個外設獨立文件維護起來清爽。生成代碼后在main.c的while(1)循環(huán)里加上HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin); HAL_Delay(500);編譯后用ST-Link下載到板子LED以2Hz頻率閃爍。如果你用的是DAP-Link或J-Link在Keil的Options for Target里改調試器類型即可。2.3 Arduino開發(fā)F103C8T6的極速上手路徑Arduino框架算是“藍藥丸”出圈的最大功臣之一因為它讓不熟悉寄存器的人也能用幾行代碼控制STM32。核心方法是在Arduino IDE里安裝“STM32duino”支持包板卡選擇“Generic STM32F103C series”然后通過ST-Link或串口下載。使用Arduino時的映射關系是PB11是內置LED如果板子是PA1亮燈版本則需要自己改Serial1對應USART1PA9/PA10Serial2對應USART2PA2/PA3。有個常見坑Arduino框架下analogWrite輸出的PWM頻率默認是1kHz左右如果你要驅動舵機或電機需要手動改定時器分頻系數(shù)否則會有尖銳噪聲或電機抖動。我測過同一個PID控制算法在Arduino框架和HAL庫下分別實現(xiàn)運行結果幾乎一樣但前者開發(fā)效率高出3倍以上。唯一讓人頭疼的是啟動時間稍長時鐘配置沒有HAL那么精細但在大多數(shù)創(chuàng)客場景完全夠用。3. 引腳功能深度解析這些“隱藏能力”和“默認坑”你必須知道3.1 關鍵引腳的復用功能與電氣特性F103C8T6的LQFP48封裝只有37個GPIO但通過復用功能AF能撐起非常多的外設。比如PA9和PA10是USART1_TX/RX同時PA9也是USB的VBUS檢測引腳。很多人剛用USB功能時報錯“Device not recognized”就是忘了在CubeMX里把PA9配成USB的VBUS功能而不只是GPIO或USART。再比如PB3、PB4、PA15這三個引腳默認是JTAG調試口的一部分JTDO、NJTRST、JTDI如果你把它們當普通GPIO用必須先把JTAG關閉開啟SWD。CubeMX里的操作是把Debug選項選為Serial Wire系統(tǒng)會自動釋放三個引腳。如果你不用調試功能甚至可以選擇No Debug但我不建議因為后續(xù)想調試就得擦除整個Flash才能重新連接。芯片支持5V容忍的引腳包括絕大多數(shù)ADC和I2C引腳但PB2BOOT1沒有引出復用PA11/PA12為USB DM/DP專用不是5V容忍。我用ADC采集12V電壓時習慣加一個電阻分壓分壓后電壓不超過3.3V也不要試圖直接往ADC引腳灌5V即使芯片標稱容忍5V采樣線性度也會受影響。3.2 引腳布局與PCB布線時的工程經(jīng)驗如果你自己畫F103C8T6的最小系統(tǒng)板而不是買現(xiàn)成的藍色板子有幾個布局經(jīng)驗值得記錄8MHz晶振盡量靠近OSC_IN/OSC_OUT引腳負載電容地端走線要短粗晶振下方不要鋪地銅皮覆蓋太多寄生電容過大會導致起振困難VDDA/VSSA引腳要單獨接濾波電容推薦1μF和100nF并聯(lián)模擬地和數(shù)字地單點連接NRST引腳對地接100nF電容并加10kΩ上拉到3.3V防止復位受干擾VCAP引腳即VDD_1.8V內部電壓調節(jié)器輸出需要外接2.2μF電容這個電容不能省否則芯片無法正常工作BOOT0引腳加10kΩ下拉電阻避免上電時電平懸空導致啟動模式異常如果你的板子用于電機驅動或繼電器控制盡量讓大電流回路不要穿過MCU區(qū)域STM32F103的GPIO灌電流/拉電流每個引腳最大約25mA但所有IO電流總和有限制不要把它當功率驅動芯片用。3.3 GPIO配置中常見的“鎖死”與“誤觸發(fā)”案例分析有次我調試一個用F103C8T6做的智能家居面板發(fā)現(xiàn)按鍵檢測經(jīng)常誤觸發(fā)示波器一看引腳波形非常干凈最后定位到問題出在GPIO配置成了“Analog”模式而不是“Input”模式。STM32的GPIO模式有4種輸入、輸出、復用、模擬。按鍵讀取必須用輸入模式且要配置上拉或下拉懸空輸入的浮空狀態(tài)極易受干擾。另一個“鎖死”案例是GPIO輸出頻率配得太高。CubeMX中GPIO Output Speed有Low/Medium/High三檔如果你把LED控制引腳配成High而且引腳走線較長整板EMI會很重甚至影響ADC采樣精度。我的經(jīng)驗是數(shù)字信號10MHz以下選Medium足夠I2C和UART這類低速協(xié)議也能正常工作會減少很多噪聲。4. 經(jīng)典項目實戰(zhàn)一CubeMXHAL庫模擬IIC讀取MT6701磁編碼器4.1 為什么用軟件IIC而不是硬件IICMT6701是MagnTek出品的一塊磁編碼器芯片能輸出12位角度數(shù)據(jù)并且支持I2C接口和ABZ增量輸出。很多人在F103C8T6上讀取它時直接用硬件I2C容易翻車——ST的硬件I2C被廣泛詬病它有各種奇怪的時序毛刺和Busy標志卡死問題。雖然新版本庫有所改善但為了穩(wěn)定省心我選擇用GPIO模擬IIC方案。軟件IIC的另一個好處是引腳選擇完全自由你可以把SCL/SDA放在任意兩個GPIO上方便PCB布局。對MT6701這種最高通信速率1MHz的傳感器來說軟件IIC完全跑得動。4.2 核心代碼實現(xiàn)模擬IIC讀寫MT6701先定義GPIO引腳。我在CubeMX中把PB6配為SCLPB7配為SDA都是開漏輸出Open Drain且都使能內部上拉。注意開漏輸出加上拉是模擬IIC的標準接法如果是推挽輸出通信時可能出現(xiàn)總線沖突。以下是關鍵代碼結構。首先是引腳宏定義#define IIC_SCL_H HAL_GPIO_WritePin(SCL_GPIO_Port, SCL_Pin, GPIO_PIN_SET) #define IIC_SCL_L HAL_GPIO_WritePin(SCL_GPIO_Port, SCL_Pin, GPIO_PIN_RESET) #define IIC_SDA_H HAL_GPIO_WritePin(SDA_GPIO_Port, SDA_Pin, GPIO_PIN_SET) #define IIC_SDA_L HAL_GPIO_WritePin(SDA_GPIO_Port, SDA_Pin, GPIO_PIN_RESET) #define IIC_SDA_READ HAL_GPIO_ReadPin(SDA_GPIO_Port, SDA_Pin)然后是延時函數(shù)我使用DWT-CYCCNT做精確延時因為HAL_Delay只支持毫秒級IIC時序需要微秒級。初始化DWTstatic void DWT_Delay_Init(void) { CoreDebug-DEMCR | CoreDebug_DEMCR_TRCENA_Msk; DWT-CYCCNT 0; DWT-CTRL | DWT_CTRL_CYCCNTENA_Msk; } static void DWT_Delay_us(uint32_t us) { uint32_t start DWT-CYCCNT; uint32_t ticks us * (SystemCoreClock / 1000000); while ((DWT-CYCCNT - start) ticks); }起始信號SCL高電平期間SDA拉低。停止信號SCL高電平期間SDA拉高。發(fā)送一個字節(jié)時從最高位開始循環(huán)SDA在SCL低電平期間改變高電平期間保持穩(wěn)定。接收字節(jié)類似在SCL高電平期間讀取SDA。MT6701在I2C通信時有一條特殊規(guī)則它的I2C地址是0x067位地址但每次讀取角度數(shù)據(jù)需要先發(fā)送寄存器地址0x00再讀兩個字節(jié)組合后取高12位作為角度值uint16_t MT6701_ReadAngle(void) { uint16_t angle 0; IIC_Start(); IIC_SendByte(0x06 1 | 0x00); // 寫地址 IIC_WaitAck(); IIC_SendByte(0x00); // 角度寄存器地址 IIC_WaitAck(); IIC_Start(); // 重復起始 IIC_SendByte(0x06 1 | 0x01); // 讀地址 IIC_WaitAck(); uint8_t high IIC_ReadByte(); IIC_SendAck(0); uint8_t low IIC_ReadByte(); IIC_SendNack(); IIC_Stop(); angle ((uint16_t)high 8) | low; return angle 0x0FFF; }4.3 濾波與校準把原始角度變成穩(wěn)定可用的數(shù)據(jù)從傳感器讀到的原始角度數(shù)據(jù)有兩個問題一是帶輕微噪聲快速轉動時相鄰兩次讀數(shù)可能跳動幾個LSB二是安裝磁場中心偏移可能導致角度不是理想線性。濾波我采用“一階低通滑動平均”組合。一階低通適合實時性要求高的場景公式是filtered_value alpha * raw_value (1 - alpha) * last_filtered_value;alpha取0.2~0.3具體看你需要多大的平滑度。如果轉速較慢可以加大滑窗比如緩存最近10次角度去掉最大最小值后取平均。但注意角度跨越0~4095時滑動平均不能直接對數(shù)值求平均要做角度環(huán)回處理int16_t diff raw - last; if (diff 2048) diff - 4096; if (diff -2048) diff 4096;校準方面我做的是一次簡易兩點校準。把電機或轉軸轉到機械零位記錄角度值zero_raw轉到已知角度比如90度對應的1024碼記錄value_raw。之后實際角度計算公式為angle_deg (raw - zero_raw) * 360.0 / 4096.0;如果你的應用要求更高精度可以采集360度均勻分布的多個點做線性插值校準表這樣能消除磁鐵安裝偏心帶來的非線性誤差。這個“濾波校準”方法論同樣適用于其他磁編碼器和電位器項目是通用技能包。5. 經(jīng)典項目實戰(zhàn)二用STM32F103C8T6做一個密碼鎖5.1 系統(tǒng)方案與硬件選型思路密碼鎖是很多新手做的第一個帶“人機交互”的項目但要做好也不是那么容易的。我做的方案用了4x4矩陣鍵盤、0.96寸OLED、電磁鎖驅動電路和蜂鳴器核心控制就是F103C8T6。矩陣鍵盤掃描原理很簡單4條行線設為輸入下拉4條列線設為推挽輸出每次拉低一條列線讀取行線電平變化。為了防抖我在按鍵檢測里加了20ms延時消抖并且使用了狀態(tài)機記錄“按下”和“釋放”事件避免長按重復觸發(fā)。OLED用I2C接口不需要額外占用太多引腳在CubeMX里配置好I2C1后移植一下U8g2或SSD1306的驅動庫即可。內存方面F103C8T6的20KB SRAM跑SSD1306全屏緩沖128x81024字節(jié)毫無壓力。電磁鎖不能用GPIO直接驅動需要加一個MOS管或繼電器。我用的是AO3400 N-MOS管源極接地、漏極接電磁鎖負極電磁鎖正極接12V。GPIO輸出3.3V經(jīng)過1kΩ電阻接到柵極再加一個10kΩ下拉確保上電時不會誤動作。電磁鎖線圈兩端要并聯(lián)一個續(xù)流二極管1N4007或SS34否則斷電瞬間的反電動勢能打壞MOS管甚至MCU。5.2 核心邏輯設計密碼校驗流程與掉電存儲密碼校驗屬于典型的狀態(tài)機應用我設計的流程是系統(tǒng)空閑態(tài)OLED顯示輸入界面用戶輸入數(shù)字每按一個鍵動態(tài)累加屏幕顯示*號輸入完成后按確認鍵與存儲在Flash中的密碼比對匹配成功繼電器/MOS管導通電磁鎖開鎖3秒OLED顯示歡迎信息匹配失敗蜂鳴器報警連續(xù)錯3次鎖定鍵盤30秒關鍵點在于“密碼存儲”。F103C8T6有64KB Flash最后一個扇區(qū)大小為1KB我利用內部Flash模擬EEPROM。寫入密碼前先擦除整個扇區(qū)然后把密碼數(shù)據(jù)寫入到扇區(qū)起始地址。這樣即使斷電密碼也不會丟失。代碼大致如下#define PASSWORD_FLASH_ADDR 0x0800FC00 void Flash_WritePassword(uint32_t password) { HAL_FLASH_Unlock(); FLASH_EraseInitTypeDef erase; erase.TypeErase FLASH_TYPEERASE_PAGES; erase.PageAddress PASSWORD_FLASH_ADDR; erase.NbPages 1; uint32_t pageErr 0; HAL_FLASHEx_Erase(erase, pageErr); HAL_FLASH_Program(FLASH_TYPEPROGRAM_WORD, PASSWORD_FLASH_ADDR, password); HAL_FLASH_Lock(); }讀取密碼時直接通過指針訪問Flash地址uint32_t password *(__IO uint32_t *)PASSWORD_FLASH_ADDR;注意Flash擦除壽命約為1萬次頻繁修改密碼會消耗壽命但對密碼鎖這種低頻寫入場景綽綽有余。5.3 實測體驗與改進方向實測下來矩陣鍵盤掃描時偶爾出現(xiàn)按下沒反應的情況后來排查出原因是行列掃描間隔太短加上按鍵內阻較高導致檢測不到完整電平變化。我把每列掃描間隔從1ms加到了5ms并在讀取行線的瞬間加入一個極短的延時等待電平穩(wěn)定問題解決。蜂鳴器報警聲提醒有源蜂鳴器直接用GPIO輸出高低電平即可控制無源蜂鳴器則需要輸出頻率信號才能發(fā)聲。我用的是無源蜂鳴器用一個定時器輸出2.7kHz PWM驅動聲音清脆不刺耳。未來的改進方向可以加一個AT24C02外掛EEPROM存儲密碼也可以用ESP01S模塊做成遠程開鎖。把這些擴展組合在一起就是一個功能完整的智能門鎖原型直接對接物聯(lián)網(wǎng)應用。6. 進階玩法FreeRTOS移植、LVGL界面與ESP01S聯(lián)網(wǎng)6.1 FreeRTOS在F103C8T6上的移植要點用“藍藥丸”跑FreeRTOS能極大提升復雜項目的代碼組織效率。CubeMX里可以直接在Middleware中選擇FreeRTOSCMSIS_V1或V2都可以推薦選V2。創(chuàng)建任務時給每個任務分配合理的??臻g比如按鍵掃描任務512字節(jié)、OLED刷新任務1024字節(jié)、主業(yè)務邏輯任務1024字節(jié)。F103C8T6只有20KB SRAM跑FreeRTOS后堆內存會緊張。我的經(jīng)驗是讓代碼只在任務啟動階段分配必要的內存循環(huán)體內避免動態(tài)malloc寧可預先定義固定大小數(shù)組也不要讓堆碎片化。實測跑三個任務加一個軟件定時器在優(yōu)化等級-O2下FreeRTOS用掉約2.5KB RAM整體還有10KB多可用足夠絕大多數(shù)應用。另外中斷里不要直接調用FreeRTOS API應該用vTaskNotifyGiveFromISR或信號量去通知任務。這是很多新手寫編碼器計數(shù)、串口接收時容易踩的坑中斷里調用xQueueSend如果不做中斷保護會發(fā)生任務調度錯誤。6.2 LVGL顯示界面讓藍藥丸擁有“智能屏”質感LVGL移植到F103C8T6需要先想清楚一個問題用單色屏還是彩色屏如果是0.96寸OLED用LVGL有點大材小用U8g2效率更高如果外接1.8寸TFT SPI屏幕ST7735或ILI9341LVGL才能真正展現(xiàn)價值。移植LVGL的核心步驟把源碼加入工程配置lv_conf.h里分辨率、顏色深度配合TFT屏選RGB565、內存大小。我通常給LVGL分配一個10KB的緩沖區(qū)做draw buffer刷新采用局部刷新策略否則F103的CPU和SRAM都扛不住全屏多次刷新。一個可行的demo在屏上做一個圓形儀表盤顯示電機角度外圈加一個實時更新的數(shù)字。LVGL的lv_arc控件和lv_label控件組合起來30行代碼能實現(xiàn)很炫的效果。注意LVGL的tick和任務心跳要喂好周期建議5ms調用一次lv_timer_handler否則動畫會卡。6.3 ESP01S接入F103C8T6從AT指令到MQTT協(xié)議的實戰(zhàn)ESP01S是ESP8266的極小封裝版本出廠自帶AT固件通過串口控制非常方便。F103C8T6通過USART2連接ESP01S使用AT指令做TCP連接甚至MQTT發(fā)布訂閱是物聯(lián)網(wǎng)原型項目的高性價比選擇。實際通信時我的建議是不用AT指令的“透傳模式”做項目原型因為AT指令是以字符串為單位的返回內容里可能夾雜錯誤碼和回顯解析麻煩。更好的做法是直接用ATCIPSEND發(fā)送裸數(shù)據(jù)利用STM32的串口空閑中斷把返回數(shù)據(jù)按行分割然后進入狀態(tài)機解析。已知的坑ESP01S模塊上電瞬態(tài)電流可達300mA3.3V由F103板載LDO提供時會掉電復位。解決方法是外接一個單獨3.3V電源比如AMS1117加輸入電容470μFESP01S和STM32共地但不共電源。我的實現(xiàn)里用Multiplexer做了電源控制平時模塊斷電需要聯(lián)網(wǎng)時再上電既省電又避免干擾。代碼上我是這樣初始化的void ESP01S_Init(void) { // USART2 115200 8N1 ESP_SendString(AT\r\n); DelayMs(200); ClearBuffer(); ESP_SendString(ATCWMODE1\r\n); // Station模式 DelayMs(500); ClearBuffer(); ESP_SendString(ATCWJAP\your_wifi\,\password\\r\n); DelayMs(3000); ClearBuffer(); ESP_SendString(ATMQTTUSERCFG0,1,\client_id\,\user\,\pass\,0,0,\\\r\n); DelayMs(500); ESP_SendString(ATMQTTCONN0,\broker_ip\,1883,1\r\n); }新版本ESP01S固件支持MQTT指令把協(xié)議棧全部挪到模塊內部單片機只需要收發(fā)簡單的數(shù)據(jù)和狀態(tài)。這個方案在低復雜度場景非常好用但如果業(yè)務邏輯復雜、需要頻繁重啟和斷線重連我建議把ESP固件刷成MicroPython或Arduino框架在模塊端獨立處理協(xié)議。6.4 進階避坑LVGLFreeRTOSESP01S組合的穩(wěn)定性優(yōu)化把FreeRTOS、LVGL、ESP01S放在同一個項目中時穩(wěn)定性問題會成倍放大。我遇到的一個典型死機場景是WiFi斷線重連時ESP01S返回大量數(shù)據(jù)串口中斷頻繁觸發(fā)LVGL刷新任務又占用了大量CPU時間導致看門狗超時復位。解決辦法有三步串口接收改為DMA空閑中斷降低CPU中斷負載LVGL刷新任務優(yōu)先級設為低給通信任務留出時間片在通信任務里做數(shù)據(jù)流控每次從緩沖區(qū)取固定字節(jié)數(shù)不讓接收緩沖溢出這個優(yōu)化套路不僅適用于F103C8T6任何帶GUI和通信的嵌入式項目都通用。你在設計任務優(yōu)先級時一定要想清楚哪些任務是硬實時的通信、電機控制哪些是軟實時的顯示刷新、按鍵掃描別把軟實時任務截斷了硬實時任務的執(zhí)行窗口。7. 低功耗設計、加密保護與產品化前的打磨7.1 Stop模式與喚醒源配置很多F103C8T6做電池供電產品時我會用到它的低功耗模式。STM32F1系列低功耗能力其實一般Stop模式靜態(tài)電流在20μA左右但對比正常72MHz運行時的幾十毫安已經(jīng)是天壤之別。CubeMX配置低功耗的關鍵是把所有沒用到的GPIO配置為模擬模式Analog關閉外設時鐘然后調用HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI)。喚醒后第一件事是用HAL_PWREx_EnableUltraLowPower和HAL_PWREx_EnableFastWakeUpF1沒有這兩個是F0/F4的F1直接SystemInit后重新配置時鐘。實際項目里我用EXTI外部中斷喚醒引腳接一個按鍵或霍爾傳感器。測試數(shù)據(jù)是整機待機電流26μA左右喚醒時間大約幾十微秒到百微秒級別可以滿足一般門鎖、遙控器、傳感器節(jié)點需求。如果對功耗要求更高可以選擇STM32L0系列這不是F103的強項。7.2 代碼加密防止固件被讀出的常規(guī)做法F103C8T6可以通過設置讀保護RDP防止調試器讀取Flash內容。在CubeMX的Project Manager里可以設置Option Byte也可以用ST-Link Utility直接設置。Level 1的讀保護下普通調試讀取會失敗但可以通過整片擦除解除保護。Level 2則是永久鎖死設置后連Flash擦除都做不了。產品量產時建議用Level 1因為你可能還需要留出升級通道。還想進一步加強加密可以在程序里加入UID綁定。F103C8T6每顆芯片都有唯一的96位唯一標識讀取方式是從地址0x1FFFF7E8開始讀三個32位數(shù)據(jù)。把UID和產品授權碼做CRC校驗如果匹配不上則程序跳轉到死循環(huán)防止一顆芯片的固件被批量拷貝到另一顆芯片。這種“軟加密”雖然理論上可通過補丁繞過但已經(jīng)能擋住絕大多數(shù)普通用戶了。7.3 量產前要驗證的幾個“看不見的指標”做過產品化的朋友都知道樣板功能正常只是第一步。F103C8T6在做批量產品時有幾個指標容易被忽略ADC線性度不同批次芯片的ADC偏移可能存在差異最好在出廠前校準零點和滿量程Flash數(shù)據(jù)保持能力在高溫環(huán)境下Flash數(shù)據(jù)保持時間會縮短如果產品工作在85℃以上建議把關鍵配置頻繁備份到外部EEPROM晶振起振余量廉價板子用的晶振負載電容可能不匹配低溫環(huán)境下起振失敗的概率會上升量產前做-20℃低溫測試很有必要引腳焊接可靠性LQFP48引腳間距0.5mm手工焊接容易連錫生產線溫度曲線要調整好這些指標不是靠代碼能解決的必須在硬件設計階段留下測試點在試產階段收集數(shù)據(jù)。用F103C8T6做產品第一版幾乎不會錯但如果連這些基礎項都不驗證后續(xù)批量翻車就是大概率事件。8. 數(shù)字信號處理入門在F103C8T6上做HX711稱重傳感器采集8.1 HX711的通信協(xié)議與F103的GPIO模擬HX711是24位高精度ADC芯片專門用于稱重傳感器電橋信號采集。它和MCU之間是一條簡化版SPI接口PD_SCK時鐘和DOUT數(shù)據(jù)。通信時序非常簡單當DOUT拉低表示轉換完成MCU發(fā)送25個正脈沖前24位讀出數(shù)據(jù)第25個脈沖控制增益和通道選擇。我用F103C8T6的兩個GPIO模擬時序代碼如下uint32_t HX711_Read(void) { uint32_t value 0; while (HAL_GPIO_ReadPin(HX711_DOUT_GPIO_Port, HX711_DOUT_Pin) GPIO_PIN_SET); for (uint8_t i 0; i 24; i) { HX711_SCK_GPIO_Port-BSRR HX711_SCK_Pin; value 1; if (HAL_GPIO_ReadPin(HX711_DOUT_GPIO_Port, HX711_DOUT_Pin)) value; HX711_SCK_GPIO_Port-BRR HX711_SCK_Pin; } // 第25個脈沖選擇A通道128增益 HX711_SCK_GPIO_Port-BSRR HX711_SCK_Pin; HX711_SCK_GPIO_Port-BRR HX711_SCK_Pin; return value; }注意HX711輸出的數(shù)據(jù)是二進制補碼最高位是符號位。要轉成有符號數(shù)必須做符號擴展如果第23位是1把高8位全部填1后再解釋成int32。否則負數(shù)重量會變成一個很大的正數(shù)直接導致顯示異常。8.2 稱重校準、去皮與平均濾波的完整實現(xiàn)稱重系統(tǒng)標定做過的人都有體會受力結構和傳感器本身的非線性誤差會讓你頭疼。我的標定方法是兩點標定加分段線性插值空秤時讀取原始RAW值A0對應重量0克放一個已知重量砝碼比如500克讀取RAW值A1對應重量500克斜率 (A1 - A0) / 500重量 (RAW - A0) / 斜率為了提高測量穩(wěn)定性我在讀取前做一個“數(shù)值去抖”連續(xù)讀取20次去掉最大值和最小值剩余18次取平均。這個滑動平均濾波器能有效抑制機械振動和電源紋波造成的波動。去皮功能在廚房秤、珠寶秤上非常重要。實現(xiàn)邏輯很簡單每次按下去皮鍵時把當前均值存為tare_raw后續(xù)顯示重量 (current_raw - tare_raw) / 斜率。這個過程不需要額外硬件純軟件解決。8.3 HX711與F103C8T6聯(lián)調的常見問題我遇到過DOUT一直為高電平的問題排查后發(fā)現(xiàn)是傳感器電橋的激勵電壓沒接好。HX711的AVDD供橋電壓通常接5V或3.3V給傳感器電橋的E和E-必須正確連接否則差分輸入超出共模范圍DOUT永遠不產生轉換完成信號。還有一個常見問題是電源干擾導致讀數(shù)漂移。HX711是24位高精度ADC0.1μV級別的噪聲都會被放大電源紋波稍大就會在最后幾位上產生劇烈跳動。解決辦法是給HX711的供電加LC濾波并且讓MCU和HX711不要共用模擬電源平面。測試時把電機或其他大電流外設關掉再采集效果立竿見影。9. GPIO引腳功能與“藍藥丸”的部分應用案例9.1 智能家居安防系統(tǒng)很多人的第一套完整項目基于F103C8T6做智能家居安防系統(tǒng)基本架構是人體紅外傳感器PIR、煙霧傳感器、門窗磁簧、OLED顯示、蜂鳴器報警加ESP01S聯(lián)網(wǎng)上報。PIR傳感器輸出一個數(shù)字電平信號只要GPIO配置成輸入上拉檢測到人體時電平變化即可觸發(fā)中斷。煙霧傳感器MQ-2輸出模擬量需要ADC采集并在軟件里做閾值判斷。F103的ADC是12位輸入范圍0~3.3V換算關系是電壓 ADC值 * 3.3 / 4096。系統(tǒng)邏輯我建議放在FreeRTOS任務里傳感器讀取任務每100ms跑一次狀態(tài)機和報警邏輯單獨建任務顯示任務獨立刷新。這樣做了后安防系統(tǒng)長時間運行的穩(wěn)定性可以得到顯著提升。9.2 智能交通燈控制用定時器PWM和狀態(tài)機模擬另一個很適合新手練手的項目是多路口交通燈控制。F103C8T6的每個定時器可以輸出多路PWM但交通燈控制其實不需要PWM只需要GPIO開關高低電平。核心難點在于狀態(tài)機設計紅燈亮45秒、綠燈亮30秒、黃燈閃3秒多路口之間要有相位差。我用TIM2做1ms時基中斷在主循環(huán)里維護一個時間戳狀態(tài)機根據(jù)當前時間和路口相位切換顏色。引腳分配時把紅黃綠三色燈接在同一個端口的高、中、低bit上比如PC0、PC1、PC2這樣可以用一個掩碼操作同時改變三個燈效率極高。9.3 基于F103C8T6的示波器/邏輯分析儀民間方案F103C8T6的ADC最高采樣率約1MHz在12位分辨率下如果犧牲分辨率到8位配合定時器觸發(fā)采樣可以做一臺簡易示波器。雖然帶寬只有幾十kHz但用來觀察音頻信號、PWM波形、電源紋波已經(jīng)非常實用。整體思路定時器觸發(fā)ADC連續(xù)采樣DMA搬運到內存環(huán)形緩沖區(qū)然后通過USB虛擬串口把數(shù)據(jù)發(fā)送到上位機。上位機寫一個Python腳本用matplotlib實時繪圖。當作一個周末娛樂項目很有意思也能讓你對ADC采樣率和DMA傳輸有直觀認識。10. 我的“藍藥丸”硬件配置經(jīng)驗從選型到焊接再到調試10.1 選型時容易被忽略的細節(jié)買“藍藥丸”板子時有幾點我會特別關注Flash容量很多商家把F103C8T664KB和F103CBT6128KB混賣如果只按型號篩選會買到低配版編譯出來固件超過64KB就燒不進去晶振有些板子用的是貼片晶振加電容電氣性能更好有些板子用廉價圓柱晶振容易受溫度影響USB接口老版本板子用Mini USB現(xiàn)在多數(shù)改成Micro USB或Type-C連接器質量差的會出現(xiàn)接觸不良排針焊盤板子上的排針如果是鍍錫的容易氧化鍍金排針成本高但更穩(wěn)定長期使用推薦自己補焊一遍10.2 焊接LQFP48的手工經(jīng)驗如果你自己畫板子需要手工焊接F103C8T6我的步驟是先在焊盤上均勻涂一層助焊劑把芯片對準絲印用烙鐵固定對角兩個引腳然后拖焊法處理其余引腳。拖焊的關鍵是烙鐵溫度在320~350℃焊錫絲要細松香助焊劑要足量。焊完后用放大鏡檢查有沒有連錫尤其是0.5mm間距的引腳之間很容易搭錫。如果發(fā)現(xiàn)連錫用吸錫帶配合助焊劑拖走多余焊錫不要用力刮引腳。10.3 調試利器組合ST-Link串口邏輯分析儀調試F103C8T6我最常用的三件套是ST-Link V2、USB轉TTL模塊和24MHz 8通道邏輯分析儀。ST-Link負責下載和在線調試串口負責打印日志邏輯分析儀負責看波形時序。遇到難纏問題時的debug思路先看供電再看時鐘然后是復位最后查外設初始化。90%的“程序跑飛”問題可以通過在main函數(shù)開頭點燈確認MCU有沒有啟動如果燈都沒亮先查BOOT0和電源。用ST-Link調試時我習慣把HAL_Delay這類時間敏感函數(shù)用條件編譯包起來正式版關閉調試信息輸出避免串口打印拖慢實時邏輯。調試版和發(fā)布版分開構建這個習慣在很多項目中幫我省了大量時間。11. 寫在最后F103C8T6還能陪你走多遠如果只看性能參數(shù)F103C8T6放在今天確實算不上旗艦但它的生態(tài)、資料和社區(qū)積累是其他芯片很難超越的。我在做新項目時依然會優(yōu)先評估它資源夠用、價格夠低、資料夠全、替換夠方便。當項目真的需要更強性能時從F103遷移到F407、H743或國產M4內核芯片的路徑也極其平滑。這幾年我也用“藍藥丸”做了一些從原型到小批量的產品一個電梯樓層顯示器一個農業(yè)大棚環(huán)境采集節(jié)點一個桌面雕刻機的控制板。每次項目復盤時都會感嘆這顆小芯片的穩(wěn)定性和易用性確實經(jīng)得住時間考驗。如果你正在糾結學習STM32該選哪塊板子選“藍藥丸”大概率不會后悔。它不會陪你走最遠的路但一定是你嵌入式生涯里最值得感謝的那一塊板子。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
东北操逼| 九九九九精品| 996热| 国产精品一二三区福利| 女人18精品一区二区三区| 免费成人在线观看91| 91色久| 韩日巨乳美女免费视频在线观看| 青青草AV色| 爽极品影院| 国产精品久久伊人| 国产麻豆一区二三区| 91av一区二区在线观看| 国产亚洲精品美女| 97综合国产| 自偷自拍的亚洲视频| 欧美日韩婷婷中文| 亚洲三区视频| 日本不卡一区二区三区| 国产久久久久久久久一区二区| 91蜜臀熟女| 91宗合网| 用力操死我| 性猛交| 在线只有精品| 麻豆三极片| 蜜桃视频精品一区二区| 91久久青青草原精品| 色色婷| 992视频一区| 性爱av网站| 91熟女.com| 欧美aaaaaaa| 九九九九九九九| 久久夜黄色无码A级大片| 精品国产乱码久久久兰草影视| 国产成年女人免费视频播放a| 99.色网| 明星性猛交ⅹxxx乱大交| 920日本午夜免费| 97天天日| 国产视频大全| 岛国精品视频在线观看| 欧美AB在线| 大鸡吧尹人在线| 无码 黑人一区二区三区| 嗯嗯啊啊的视频| 婷婷综合| 亚洲精品一二区| 区自美91| 天天操女人| 婷婷av在线中文字幕| 亚洲永久永久永久永久一级一级一级精品| 免费看黄视频亚洲网站| 98超碰欧美| 综合一区二区影视| 五月天婷婷激情| 乱伦一二三| 国产精品九九| 国产久久一区二区午夜| 丰满人妻无码一区二区三区| 啊啊啊水好多| 天天日日本| 东亚亚洲无码高清| 神马久久久久久| 欧美第38页| 新版天堂中文资源8在线| 亚洲区小说| 久九干| 中日亚韩免费视频| 美女诱惑久久| 黄站在线免费观看| 97色插| 国产成人自拍视频在线| 熟妇综合一区二区三区| 亚洲做性| 日本久久综合| 久久久久久性爱片| 久久久久国产无av| 狠狠操一区二区| 日少妇视频| 五月天综合网| 无码免费一区二区三区啪啪| 久久精品毛片免费不卡| 亚洲97资源| 九九拍拍精品视频在线播放| 麻豆天美国美国产| 探花精品视频| 围产精品一区二区三区视频播放| 欧美成人贴图| 91伊人久久在线| 天天操女人| 深夜国产一区二区三区在线看| 97天天日| 国产高清自拍| 99热一区二区三区四区| 久久后入制服| 国产日韩怡红院| 日本五十路在线| 日韩av女优在线免费一区| 国产日本久久免费精品| 91精品人妻电影| 9999免费精彩视频| 91天堂色男人的天堂| 精品国产三级av韩国在线| 色香天天| 日韩无码一级黄色av片| 91亚洲综合| 免费视频观看60秒| 日韩精彩视频| 日韩av情韩国爱禁区av一区二区| 国产性爱欧美性爱在线| 国产久久日| 天天日天天操VV| 国产SV一线| 97欧美精品综合| ′ !γ}丶。。久久精品欧美一区二区三区| 99精品久久久久久久婷婷蜜桃| 青娱乐欧美激情一区二区| 51久久夜色精品国产麻豆| AAAA欧美日韩| 神马九九| 亚洲?V无码专区在线电影| 成人羞羞视频国产| 啪啪免费| 欧洲一级性爱视频在线观看| 色综合色综合网| 婷婷综合视频| 亚洲性综合9| 亚洲成人在线播放| 欧美亚洲玖玖玖| 日韩人妻资源网| 91精品国产综合久久久蜜臀| 亚洲第一综合| 嗯嗯啊啊操死我| 亚洲综合113页| 久久九七| 情色图区| 在线日韩精品一区二区三区| 国产精品原创巨作?v网站| 无码国产Av| 欧美丝袜制服久久| 亚洲操逼网| 五月色网| 91中文精品日韩欧美在线| 99国产精品久久久久久久成人热| 久久久久久久久久久久久久久久9 亚洲成人妻日韩在线 | 久久久工口| 97激情97激情| 99日视频在线免费| 久久午夜色播影院免费高清| 亚洲色图日韩精品| 色999人与兽| 夜夜夜夜夜夜夜夜夜狠狠狠狠狠狠狠| 久久久久78| 嫩草一区二区在线观看| 91国产丝袜足交精品视频| 丝袜狠狠草尤物 91| 91欧美性| 91超碰在线| 国产乱伦亚洲| 欧美精品另类人妖xxxx| 麻豆九九九| 久欲AV| 高清孕妇孕交 交| 国产亚洲深夜激情| 亚洲 日韩 欧美 国产综合体| 青青草亚洲一区| 国产精品电| 国产视频人人网| 色综合av男人天堂| 红杏大香蕉| 91精产一区二区三区| 97精| 青娱乐久久艹| 九九九久久久久| 精品无码少妇| 久草视频分类在线| 色九九九综合| 精品国产三级av韩国在线| 思思性爱| 欧美日动态视频| 免费在线视频97| 国产粉嫩蜜臀av一区二区三区| 国产成人bd在线观看| 求求你操操我| 丝袜人妻av一区二区| 日韩成人网址| 欧美线天码中字| 免费看黄片现成| 嗯啊不要啊在线 | 人妻少妇色综合| 天天内射| 成人一级性爱| 大香蕉色欲AV| 天天躁日日躁AAAAXXXX国产| 欧美久久九九| 美女诱惑久久| 国产精品一二三区福利| 精品国产乱码久久久久久免费| 国产亚洲欧美每日在线| 婷婷情色五月天| 亚洲天堂男人的天堂| 欧美日韩性爱操大逼| 狠狠躁天天躁日日躁| 超碰在线人妻中文字幕| 天天操女人| 欧美97av| 久久综合18p| 思思热国产高清| 18精品一区| 久久日本熟妇熟色一区| 东京日日夜夜| 国产精品96久久久久久| 色综合99| 九久9精品| 大香蕉男女超碰精品在线| 亚洲天在线| 国产精品成人在线| 激情小说亚洲| 免费人人搞97| 精品久久久无码| 黑人粗大V S日韩女优视频| 啪啪啪东京| 99国内精品| 超碰久超碰久| 蜜桃传媒一区二区亚洲| 日本东京热久久久电影| 国产乱青青草久久| 亚洲经典啪啪| 国产精品久久久久久久久久久久| 9热9热综合网| 日本成人A片免费看| 97频视在线| 亚洲综合精品国产一区| 亚洲 欧美 第一页| 狠狠搞 亚洲91| 天天摸夜夜添无码小视频| 蜜臀久久久| 亚洲天天做日日做天天谢日日| 精品99999久久久久久| 91欧洲国产成人久久精品网站| 青青操青娱乐| 精品国产人成在线| 五十路熟女人妻一区二区在线观看| 蜜臀国产AV中文字幕| 99久久精品无码一区二区毛片免费| 99只有精品| 国产小视频91| 国产亚洲深夜激情| 偷拍新久久| 日本在线不卡123| 水多多映视AV| 啊啊啊啊好大好硬啊啊啊啊啊| 手机看片1024你懂的国产| 97亚洲精品超碰| 美女诱惑1区2区| Av手机版天堂网| 亚州欧美综合| 欧美 传媒 麻豆 日韩 偷拍| 精品一区二区三区蜜桃臀赵总 | 日韩熟女乱伦中出| www.成人无码| 青青草视频久久久久| 2021久久国产综合精品青草| 国产在线播放成人免费| 天天日美女的B| 久久9精品视频| 日韩乱伦视频| 久久久久亚洲AV无码专区少妇| 白嫩91在线亚洲| 一本正道久久熟女| 人人扣人人操| 麻花豆传媒剧国产MV出差| 国人欧美精品一区二区| 免费A片三p视频| 熟妇女伦乱视频视频| 四虎免费看黄| 国产九九久久久精品| 69精品久久久久中文字幕| 国产日本一区二区三区蜜臀在线观看| 日比av无码| 久久国语| 欧美人妻精品| 日本色色色| 成人一级性爱| 做爱A级亚欧| 国产又黄又爽| 97这里有精品| 加勒比99999| 久久6热精品99视频| 日本天天人人狠狠在线日美女| 精品一区二区亚洲国产| 国产成人免费观看在线视频| 日本东京热加勒比久久| 操操逼操操逼操操逼逼| 亚洲色图尤物视频| 一级性爱视频免费观看 | 强奸乱伦αv片| 亚洲国产精品9999在线观看| 欧美性爱精品七区| 2023天天操夜夜操| 少妇高潮流水av免费| 91丝袜美女视频| 中文字幕一二三av| 夜夜欢天天干| 粉嫩av在线| 欧美色图 色综合图| 大香蕉人妻久久| 欧美自拍网| 日韩成人人妻网站| 97视频在线免费| 美女上床网站| 亚洲人精品久久久| 亚洲区 欧美区| 91久热| 四虎884| 欧美九九九| 98久久超碰| 揉揉日日日日| 亚洲美女av无码| 97在线免费观看| 日韩欧美性爱电影在线观看| 国模无码人体一区二区三| 超清福利精品视频在线| 亚洲精品一二牛牛| 国产中文精品一区二区在线观看| 99久久久无码国产精品性男| 玖玖人人爱| 内射中出日韩在线观看视频| 91超碰碰在线| 国产精品人妻熟女aⅴ| 久久久久免费看少妇A片特黄| 国产亚洲欧美每日在线| 国产精品视频91久久| 日本日逼高清| 国产成人久久久精品免费AV| 玖玖综合色| 免费看污网址| 色九久| 乱性AV| 天天日天天干天天整| 97人人超| 97精品国产手机| 一区二区播放| 婷婷色色五月天福利| 欧美激情性爱视频网站| 强奸乱亚洲| 欧美色图片91| 91在线丝袜| 大象AV在线| 久久精品高清AV| 在线只有精品| 任我爽在线视频免费观看| 国产熟女无套内射| 亚洲人妻中文高清| 久超碰在| 北京美女一区二区| 久久久一二三四区| 国产探花日韩援交| 九九九九久久久| 九九自拍伦理| 99婷婷一区二区| 欧美性爱十八禁| 国产蜜臀精品一区免费尤物| 青青草色插素人| 青娱乐黄色录像| av最新免费中文字幕| 又黄又爽在线观看视频| 亚洲欧美91√| 18禁精品网站在线看| 亚州色站 日韩电影| 丝袜 中出 制服 人妻 美腿 中文字幕| 综合国产影视三级| 久久九七| 黄色片一区二区三区四区五区| 伊色综合天堂色97| 日本男人天堂| 水澄无码AV| 一区二区三区麻豆| 色婷婷99| 97伊人| 色婷婷丁香| 久草毛片| 久久色情| 91国产丝袜白虎| 精品伊人久久久大香线蕉小说| 国产乱码精品久久久久久| 高清国产无码av| 麻豆熟妇乱妇熟色A片在线看| 亚洲精品一区二区精品| 国产精品网站www| 黄色免费网| 亚洲精品天天影视综合网 | 天天激情综合站| 校园春色欧美色图| 国内毛片无遮挡国产| 五十路熟女工口| 囯戸精品高潮呻吟旡码| 无码人妻系列少妇| 久久曰曰| 欧美亚洲自拍另类人妻| 亚洲成人精品久久久| 精品久久无码午夜福利| 麻豆一区在线| 成人午夜视频免费播放| 91人妻在线视频| ,国产乱人伦精品一区二区三区| V A在线| 超碰天天操你比| 国产女人极品高潮毛片| 91热热色| 久久久久久中文字幕中文字幕最新| 九九九热| 中文字幕av丝袜| 色婷婷九月| 96久久久| 大肉棒导航| 亚洲综合中文字幕有码| 亚洲资源站| 日本精品国产视频| 日韩婷婷| 亚洲密乳AV| 成人一级二级| 精品久久久久久亚洲| 美日韩男女操屄视频| 亚洲无限观看| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 亚欧免费观看视频| 亚欧操逼片在线观看 | 国产伦精品免编号公布| 狠狠色狠狠色狠狠五月| 花花AV导航| 日日夜夜噜| 91蜜桃婷婷狠狠久久综合9色| 国产午夜在线观看| 亚洲双插| 亚洲美女色图| 国产欧美伊人| 97任你吞精| 91AV入口| 综合少妇网| 久久99草| 五月天伊人| 日本免费亚洲欧美| 免费观看国产不卡av| 国产97亚洲| 九九免费影片| 青青操在线亚洲视频观看欧美在线| 国产女性无套 免费观看| 中国AAAAAA黄色片| 97摸视频| 久久精品熟女亚洲AV麻豆软件| 色男人色天堂东京热| 97久久久久久久精| 丁香婷婷久久| 在线精品福利免费播放| 久久久精品91八戒| 国产精品成久久久久午夜午夜| 少妇熟女视频一二三区| 97超碰在线资源网站| 亚洲欧洲视频小说在线观看| 欧美亚洲玖玖玖| 亚洲国产欧美中日韩成人综合视频| 亚洲图片色图欧美另类| 日本操逼视频免费| 国产精品操| 小电影欧美91| 亚洲九九视频在线观看| 97伪v| 嗯嗯啊啊好疼| 综合亚洲情色| 欧美 中文字幕 一区| 99性爱视频| 青娱乐亚洲自拍| 午夜.DJ高清在线观看免费7| 日韩欧美成人午夜福利| 91精品亚洲内射孕妇| 亚洲无码视频免费在线观看网址!| 成人无码欧美一级A片狼牙直播| 蜜桃视频啊啊啊啊| 97在线观看免费| 久九9精品| 亚洲欧美91√| 久男人久久| 欧美大片一区二区三区| 色www精品视频在线观看| 天堂麻豆天美| 91国产美女丝袜足交精品视频| 久久精品一区| 久久超碰免费的| 啊灬快c我灬啊灬用力灬啊灬-国产精品性做久久久久久-成人AV | 中文字幕一二区二三区人妻专区| 亚洲欧美另类激情小说| 色欧美色交综合| 91亚洲综合在线| 亚洲一区二区性爱电影| 无码男人天堂| 久久三| 精品一区二区久久| 久久无码电影| 91在线丝袜| 久操热| 99999久久精| 四虎AV在线观看| 天天拍夜夜| 日本少妇va7777| 欧美高清第一页| 女同性恋一区二区三区精品视频| 国产精品成人AV片免费看网站 | 欧美高清91| 97人人操人人干| 久热最新在线杭州| 伊人网在线观看| 免费的黄片wwwwww| 色婷婷一区二区三区久久| 亚洲综合113页| 加勒比久久综合网高清| 国产午夜精品一区二区三区牛牛| 91啪9色| 自拍偷拍 日韩无码| 亚洲 欧美综合| 人人超碰在线观看黄| 久久久国产成人一区二区三区在线| 香蕉精品二区二区| 久久女同性恋一二区| 婷婷亚洲天堂| 夜嗨影院| 人人做天天爱| V A在线| 一二区在线观看视频| 99re6久热只有精品6在线直播| 乱伦av麻豆| 97在线观看免费视频| 色噜噜日韩精品| 福利一级版子| 日日日骚女人精品| 嫩草 人人网精品| 天天添天天干电影| 大香蕉五月天| 99热这里是精品| 日韩一级成人毛片免费观看| 亚洲色 国产 欧美 日韩| 欧美激情激情xxxx欧美专区| 3P丝袜熟女 色综合| 超碰色大香蕉| 大香蕉一人| 熟女久久| 欧美亚洲首页| 香蕉99秘 一区精品蜜桃臀| 久久久九| 久久久久久久| 可免费观看的av毛片中日美韩| 亚洲AV色图一区| 久久久专区| 亚洲自拍青操视频| 奶水 人妻 哺乳 在线| 国产蜜臀精品一区二区尤物| 超碰97国产欧美| 啊啊啊好想要| 视频一区二区免费在线| 国产精品成人无码a v毛片| 欧美大香蕉久| 国产大学生口爆吞精合集| 无码日韩人妻av一| 久久亚洲精品成人av| 青草av在线| 狼人综合婷婷激情四射 | 欧美亚洲国产91在线| 日日操免费视频| 熟女人妇一区二区三区| 人妻啊啊人妻啊| 青青草十区九区爱夜| 超碰 国产熟女精品一区| 精品国产乱码久久久久久久| 五月亭亭六月丁香| 国产日本久久免费精品| 天天摸夜夜摸| 草B在线| 热久久国产| 天天影视色香色欲| 狠狠干妹子| 不卡av在线中文字幕| 97综合在线| 日韩欧美经典在线观看| 超碰在线观看av不卡| 伊人一区二区在线播放| 亚洲综合113页| a'v在线资源| 又黄又爽在线观看视频| 国产精品香蕉| 日韩国产品视频中文字| 亚洲国产第一页综合视频| 99热97| 夜夜 中文视频rt| 超碰97极品9| 天天综合麻豆视频| 欧日韩不卡视.频| 国产女性无套 免费观看| 色色热| 四虎免费看黄| 就去色综合| 国产精品原创巨作?v网站| 婷婷亚洲综合| 啊啊啊啊啊,啊啊啊啊好舒服,操我舒服啊啊啊 | 小视频国产| 亚洲综合色男人网| 91网站18+| 超碰在线人妻中文字幕| 国产 三级自拍| 午夜福利久久久噜久噜久久综合| 東南亚性呦成人伦理资源在线视频| 波多野42部无码喷潮在线观看 | 97精品久久| 婷婷激情五月天小说网| 久久久久9999妇女| 日本操逼aaaaa| 9 9精品一区二区三区| 久久精品女同亚洲女同13| 国产精品美女在线一区| 日韩精品99久久久久久中文字幕 | 久久天天性久久伊人| 人妻熟女一区二区在线视频| 精品国产乱码久久久久久口爆网站| 黄页大片在线观看| 91被操| 中文字幕第23区| 性开放中文AV高清无码免费看| 91国内外在线| 五月丁香六月| 成人免费视瓶| 国产高清在线自在拍69| 国产精品九9| 伊人丁香五月婷婷| 96国产污污污丝袜| 熟女色综合久久| 秘书高跟黑色丝袜国产91在线| 国产超碰人人操| 91日韩网站| 97亚洲性爱| 亚洲国产尤物yw在线观看| 色哟哟av网址| 黄页18禁| 丁香六月激情综合| 欧美v亚洲v综合v国产v妖精| 日本道日本道中文字幕日本道最新日本道在线观看 | 91午夜无码| 久久久性爱| 日本九九久久99| 蜜色网色哟哟| 色激情五月天| 桃花色涩综合影院| 国产精品一级片在线看| 超碰人人操97碰| 春色综合免费| 成人一级二级| 中文字幕视频2区| 国产AV超爽| 眼镜人妻101.com| 最近2018中文字幕在线高清第一页| 99蜜月精品久久| 国产丰满少妇久久久精品影院| 久热伊人99re| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 岛国免费黄色网址| 无码不卡八戒| 国产成人亚洲精品无码最新在线| 91丝袜美女视频| 伊人九九九| 99色热| 9久久久久久| 亚洲色综合| 亚洲无码成人精品| 91人妻素女| 强奸乱伦中文字幕AV| 黄片aaaaa一区| 色五月婷婷中文字幕| 久久激情五月| 中文字幕视频一区视频二区| 樱花草社区www中国| 中文一区二区| 欧美激情精品| 无码不卡八戒| av国产无码| 久久久久久久久久久久久9999| 青草青青久久久久久国产| 91色噜噜狠狠| 欧美色图电影| 日韩99精品视频综合区| 国内精品伊人久久久久影院会| 91精品大奶人妻| 久久水蜜臀亚洲AV无码精品| 男人的天堂无码| 南澳成人一级片在线播放| 日韩性爱一级片| 色色色999| 97精品视频免费| 亚洲欧美综合网| 国产高清精品一区二区三区毛片 | 美中日韩无码| 91欧美美女日韩国产婷婷| 亚洲同性aV综合| 911av网站免费观看| 旡码电影特区| 酒色综合网| 人、人、摸,人、人、草| 99青草| aV中文麻| 五月婷婷色色| 熟女少妇一区二区三区| 艹少妇网站| 亚州综合电影| 日逼逼免费看| 欧洲与亚洲欧美精品中文字幕| 亚洲欧美黄| 精品区9| 天天色欧美| 青青草自拍视频在线播放| A级在线视频| 久久综合日韩亚洲欧美| 97干在线视频| 狠狠干狠狠干| 在线岛国新天堂8| 国产精品suv一区| 女同女同恋久久级三级| 超碰中文字幕人妻草一区| 啪啪资源网| 人人操人人精品影片| 亚洲中文字幕三级在线| 78精品| 蜜臀av中字字幕网站| 日本人妻中文字幕| 色网亚洲人| 色一射色一射| 亚洲欧美在线观看免费| 四虎精品亚洲| 成人久久无码www| 秋霞网—男女啪啪亚洲免费体验区| 欧美熟妇亚洲版| 乱论91| 网友自拍第1页| 欧美精品91| 高清国产av无码| 成 人 A V免费视频在线观看| 麻豆福利视频导航| 激情丁香五月| 91成人在线免费视频| 九九九九热只有精品| 九九拍拍精品视频在线播放 | 青青草视频爽一爽| 熟妇熟女视频一区二区三区| 浪人综合网| 亚洲国产成人精品999| 丝袜 中出 制服 人妻 美腿 中文字幕| 在线综合 亚洲 欧美中文字幕 | 粉嫩在线一区二区懂色| 人妻无一区二区三区| 免费试看60秒| 欧美另类丝袜熟女| 麻豆一区二区三区在线看| 成人一区二区三区四区| 台湾佬中文娱乐自偷自拍| 大奶啊啊好爽 | 插穴性爱视频在线观看| 欧美性爱日韩高清| 欧美资源| 大香蕉综合网| 欧美激情久操网| 毛片一区二区| 曰本人妻人人澡人人夹| 大学生口爆吞精| 国产97色在线| 天天躁日日躁成人字幕aⅴ| 蜜臀久久99精品久久久电影| 91亚洲电影| 大二网站亚洲| 亚洲一区二区精品福利| 免费在线观看AV无码网站| 激情干在线| 亚洲人妻中文高清| 欧美99热| 午夜福利久久久噜久噜久久综合| 传媒免费一区二区三区| 精品无码一区二区三区| 国产伦精品| 久9re热视频这里只有精品| 日韩av不卡在线看| 久久香蕉国产传媒一区剧情天美| 99热aaa| 啊啊啊啊啊啊啊在线| 射综合网| 老司机老司机午夜影院| 国内91熟女人妻丝袜天天精品视频在线 | 欲色啪| 操一操摸一摸| 五月丁香婷婷色| 国产中文日韩欧美一区二区三区人妻丝袜美腿 | 亚洲导航深夜福利| 97伦综合| 一起草三级AV电影在线观看 | 亚洲电影中字一区二区| 国产av又色又爽又黄| 午夜激情床戏激情| 香蕉综合网| 丁香九月激情啪| 日日噜噜夜夜久久亚洲一区二区| 久久精品国产Aⅴ| 欧美男人一区| 91美女视频。| 91久操| 欧洲亚洲综合| 高清无码 国产精品| 97色97好| 日韩熟女乱伦中出| 成人欧美日超碰| 中文操嬖片。| 国产丝袜高跟美女av免费观看| 嫩草美女久久| 日韩78m视频| 91人妻最真实刺激绿帽| 欧美激情一区二区| 色综合久久88色综合久久天天| 国产精品视频| 超碰碰碰碰| 91欧洲入口| 日日夜夜天天| 欧美 亚洲精品首页| 国产高清1234区| 日韩激情电影中文字幕| 老熟妇综合| 99久久网站| 黄片www视频免费| 98福利在线视频| 丁香五月成人| 国产一区二区三区高清视频| 亚洲天天影视色综合| 天天综合色| 国内精品a| 亚州综| 国产九九九九九九| 精彩国产视频播放1区2区| 女人与公拘交酡2020视频| 亚洲综合校园春色| 久久女婷| 日本熟女中文字幕一区| 18精品一二区| 麻豆一区在线| 久草毛片电影怡| 成人精品在线观看| 久久久国产亚洲精品系列| 91国产操逼视频| 91美女片在线| 熟女高潮精品一区二区| 亚洲综合图色在线| 美女大乳久久久久久久女人18| 手机在线看片免费人成视频| 香蕉久久AⅤ...| 无码一区免费在线不卡| 天天澡天天爽日日AV| 奶水 人妻 哺乳 在线| www.acm成人黄色毛片| 性爱AV天堂| 在线综合 亚洲 欧美中文字幕 | 成人在线视频二区| 日韩国产品视频中文字| 久久午夜伦| 天天干天天日天天射黄色| 夜夜夜久久| 久久111| 国产精品网站www| 欧美天堂超碰97| 欧美性天天影院| 欧美极品少妇| 中出20p| 亚洲欧美情色| 五十路一区无码| av中亚| 日韩AV无码网站| 午夜福利激情在线视频| 日本熟女不卡视频| 国产精品自在自拍视频| 五月天婷婷基地| 好看的91视频| 清纯唯美第一页| 久久 国产精品 一区| 日韩精品在线观看网站| 日本久操视频| 久久精品无码熟妇一区二区三区视频导航| 青青草大香蕉视频| 秋霞久久亚洲精品成人| 7777欧美成是人在线观看| 人妻激情另类| 男人的天堂日韩| 密臀在线一区尤物| 久久久精品视频免费观看| 韩日精品四区| 久久精品成人| heyZO天然素人无码AⅤ专区| 成人av免费观看| 330dv亚洲成年视频网| 亚洲欧美另类图片| 天天干人妇| 啊啊啊啊啊啊啊在线| 家庭乱伦麻豆| 这里只有精品视频| 欧美色综合网| 亚州操逼网| 日韩资源网| AV乱伦专区| 男人天堂2019亚洲| 91狠狠综合久久| 国产 热久久久久国产精品| 日本啊啊啊啊啊视频| 大肥女高潮bbwbbwhd视频| 免费夜夜爱黄色视频毛片| 神马九九九| 中文自拍欧美影视| 五月婷婷青青草娱乐伊人| 精品人妻一区二区视频| 久久动漫精品视频这里只有精品| 在线观看不卡一区二区三区| 91亚洲不卡一区| 在线观看一级α片刺激高潮视频| 97久精品| 操操吧亚洲乱伦视频| Julia Annxxxxx| 五月天激情影院| 特色a在线上| 日韩懂色网| 国产精品熟女乱伦| 亚州综合色| 99re99视频在线免费观看| 亚洲AV无码黄色强奸| 欧美色图 色综合图| 啊啊啊好湿久久| 久久毛卡| 亚洲综合有码| 久久蜜色情在线视频xxx免费观看| 国产成人无码a| 91制服丝袜| 偷拍亚洲高清图片| 亚洲乱码尤物193YW| 九色黄站| 欧美,日韩,中文,另类| 密臀在线免费观看| 日本一级黄色电影| 亚洲精品人妻在线| 免费在线看黄片av| 狠狠色五月亚洲91| 俺也射| 欧美日韩一干二干| 色九九九九久| 久久老子无码午夜伦不卡| 岛国1区2区3区在线观看| 91丝袜视频在线观看| 啊啊啊啊啊啊啊在线| 色老汉色| 欧美九九爱| 大香蕉九九| 99久久99久久综合| 亚洲欧洲另类| av中文在线| 日本色色网| 精品婷婷| 久久久激情| 日本久操视频| 欧美熟爽综合| 91丝袜美女| 青青草伊人久久| 日本道日本道中文字幕日本道最新日本道在线观看| 国产a级精品| 国产亚卅97| 色色青青久久| v91av| 日韩精品中文字幕人妻| 大学生口爆吞精| 亚洲一本色道中文无码aV天美| 欧亚在线视频| 五月婷婷综合在线| 69综合网| 精品大全99999| 国产乱子伦久久精品综合一区二区三| A 天堂| 亚洲中文字母在线播放| 日本三级小说中文字幕| 小骚逼被操的爽不爽| 91N综合网| 亚洲加勒比| 在免费jIzzjIzz在线视频| 6080yy午夜理论三级一区二区三区无码| 狠狠躁AV| 国产一区二区精品久久久不卡蜜臀| 一二三区视频在线观看| 热无码中文亚洲H一道本一区二区| 色呦呦呦在线观看视频| 狼天天狼天天大香蕉| 国产女人9999| 麻豆综合一区av| 欧美中文字幕男人天堂久久精品| 色九九综合AV| 人妻干天天| 欧美嫩性色| 黄色工厂这里只有精品| 欧美αv.com| 99综合自拍| 日韩三级伦理中文字幕| 91free福利| daxiangjiao你懂的| 亚洲精品白浆高清久久久久久| 中文字幕精品一区二区精品| 老鸭窝成人| 秋霞蝌科网日本一区| 五十路熟女工口| 黄色大片视频在线免费看| 国模一区二区三区| 日少妇视频| 人妻激情另类| 91中出| 91在线页| 色吧5亚洲| 97人人爱人人做人人乐| 黄色电影在线播放综合网站| 国产精品视频| 色小视频蜜乳| 97在线视频免费| 欧美综合97www| 成人性爱高清视频免费看| 午夜精品人妻二区三区| 蜜乳AV色欲AVAV无码| 极品人妻少妇综合| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 久久午夜色播影院免费高清| 亚洲最大91网| 国产一级高跟丝袜| 国产精品禁久久久精品| 毛片17S| 五月天婷精品激情| 97视频网站| 久久久久久少妇| 99热亚洲天堂| 二色av| av网站在线观看了| 欧美熟妇精品黑人巨大91| 中文在线久久字幕| 精品丰满人妻一区二区三区免费观| 天天射夜夜操| 啊啊在线| AV色五月天| 999久久久久久久精| 久热久| 久久国内| 亚洲另类小说卡通动漫| 国产精品高潮久久久无码| 亚欧洲日韩国产精品| 超碰无码五月97| 久久一本大香蕉| 亚洲天堂另类小说男人| 五月天激情婷婷| 中文字幕一区日韩精| 亚洲第一无码播放立川理惠| 美国人人操人人操| 免费一级a毛片久久久久久鸭绿欲 国产精品亚洲天堂网址 | 久久亚洲一区女同性恋中文字幕| 国产美女激情| 97精品综合久久网| 天天综合网AV91| 91精品久久久久久77777| 婷婷九月国产| 久9久9久9久9久9久9| 久久三区四区| 久草午夜| 亚洲激情在线观看一区| 亚洲 自拍偷拍 欧美| 伦伦成年午夜免费视频| 国产亚洲精品美女久久久m| 噜噜噜无码AV一级一级久久影院| 午夜精品久久久久久久99蜜桃一| 日本一本道A级黄色毛片试看60分钟| 亚洲欧洲精品视频发布| 亚洲av影音先锋| 大香蕉久操| 校园春色亚洲欧洲| 91男人天堂网| 久九色| 日本性爱欧美性爱| 五月婷婷性爱| 欧美成人综合| 78精品| 欧美亚洲| 97 国产一区| 国产精品一区在线播放| 国产黄色视频久久| 五月婷婷激情| 极品久久久久久久久久久久久久| 国产9l 大屁股| 亚洲精品乱码久久久久久蜜桃麻豆| 久久婷五月天| 亚洲啪啪啪啪视香蕉| 欧美在线观看综合国产| 久99久视频| 日韩中文9| 欧美一区二区三区另类精品| 日韩欧美麻豆大片| 91爱啪| 日本三级久| 美女91AV| 丁香五月天激情综合| 视频在线观看青青99国产| 免费啪啪av| 成人老鸭窝人人在线视频| 天天射夜夜操| 大香蕉综合| 白丝被操91| 少妇六月天| 国产精品成人久久一区二区三区 | 午夜福利免费精品视频| 免费超碰97久久| 国模精品一区二区三区苹果色戒| 加勒比海成人视频网| 操逼操逼逼操操逼91| 青操影院| 欧亚乱色熟女一区二区| 久久久久久无码人妻中文字幕| 欧美亚洲中文字幕| 麻豆一区二区AV天美| 精品91摸| 国产一级作爱毛片| 成人情色综合网| 东京日日夜夜| 强奸乱伦亚洲第一页| 日韩 成人 有码| 天天看,天天做| 亚洲一区二区三区在线激情| 久久这里| 亚洲精品99| 亚洲欧美日韩二区视频| 精品人妻高清麻豆av| yazhousetuoumei| 成人网址在线观看| 搞中出久久| 97欧美久久久久久久| 乱理日韩中文| 欧美夜夜狠| 思思热影视| 中字幕人妻一区二区三区| 97在线观看视频| 一区二区蜜臀| 亚州操操穴网| 婷婷丁香六月天| 超碰在线国产| 综合操逼| 日韩性爱1级片视频| 久久国产逼| 日日夜夜免费| 操熟女91| 搡老女人老熟女91老熟女综合网| 亚洲综合色在线| 人人噜夜夜操| 精品9区| 欧美在线视频观看一二三四区高清|