300行代碼實(shí)現(xiàn)一個(gè)多任務(wù)OS

strongerHuang 2022-09-22 08:15
關(guān)注+星標(biāo)公眾號(hào),不錯(cuò)過精彩內(nèi)容
作者 |?ZhengN
來(lái)源 | 嵌入式大雜燴

本期主角:cola_os,它是一個(gè)300多行代碼實(shí)現(xiàn)的多任務(wù)管理的OS,在很多MCU開發(fā)中,功能很簡(jiǎn)單,實(shí)時(shí)性要求不強(qiáng),任務(wù)多了管理不當(dāng)又很亂。

如果使用RTOS顯得太浪費(fèi),這時(shí)候可以嘗試使用使用cola_os這類基于軟件定時(shí)器實(shí)現(xiàn)的時(shí)間片輪詢框架。

倉(cāng)庫(kù)鏈接:

https://gitee.com/schuck/cola_os

license:MulanPSL-1.0(木蘭寬松許可證, 第1版)。

cola_os是一份簡(jiǎn)潔明了的代碼,包含很多有用的編程思想,值得通讀。下面我們一起來(lái)學(xué)習(xí)一下:

cola_os的分析及使用

其實(shí)關(guān)于cola_os其實(shí)我們前幾天的推文中也有做介紹。今天我們?cè)僖黄饋?lái)完整地梳理一遍。

cola_os目前的內(nèi)容如:

1、cola_os

cola_os就是cola_os的任務(wù)管理模塊。任務(wù)使用鏈表進(jìn)行管理,其數(shù)據(jù)結(jié)構(gòu)如:

typedef?void?(*cbFunc)(uint32_t?event);

typedef?struct?task_s
{

????uint8_t?????timerNum;????//定時(shí)編號(hào)
????uint32_t????period;??????//定時(shí)周期
????bool????????oneShot;?????//true只執(zhí)行一次
????bool????????start;???????//開始啟動(dòng)
????uint32_t????timerTick;???//定時(shí)計(jì)數(shù)
????bool????????run;?????????//任務(wù)運(yùn)行標(biāo)志?
????bool????????taskFlag;????//任務(wù)標(biāo)志是主任務(wù)還是定時(shí)任務(wù)
????uint32_t????event;???????//驅(qū)動(dòng)事件??
????cbFunc??????func;????????//回調(diào)函數(shù)
????struct?task_s?*next;
}task_t;

每創(chuàng)建一個(gè)任務(wù)嗎,就是往任務(wù)鏈表中插入一個(gè)任務(wù)節(jié)點(diǎn)。

其創(chuàng)建任務(wù)的方法有兩種:

  • 創(chuàng)建主循環(huán)任務(wù)
  • 創(chuàng)建定時(shí)任務(wù)

兩種方式創(chuàng)建,都是會(huì)在while(1)循環(huán)中調(diào)度執(zhí)行任務(wù)函數(shù)。

我們可以看看cola_task_loop任務(wù)遍歷函數(shù),這個(gè)函數(shù)最終是要放在主函數(shù)while(1)中調(diào)用的。其內(nèi)容如:

void?cola_task_loop(void)
{
????uint32_t?events;
????task_t?*cur??=?task_list;
????OS_CPU_SR?cpu_sr;
????
????while(?cur?!=?NULL?)
????{
????????if(cur->run)
????????{
????????????if(NULL?!=cur->func)
????????????{
????????????????events?=?cur->event;
????????????????if(events)
????????????????{
????????????????????enter_critical();
????????????????????cur->event?=?0;
????????????????????exit_critical();
????????????????}
????????????????cur->func(events);????????????????
????????????}
????????????if(TASK_TIMER?==?cur->taskFlag)
????????????{
????????????????enter_critical();
????????????????cur->run?=?false;
????????????????exit_critical();
????????????}
????????????if((cur->oneShot)&&(TASK_TIMER?==?cur->taskFlag))
????????????{
???????????????cur->start?=?false;?
????????????}
????????}
????????cur?=?cur->next;
????}
}

兩種方式創(chuàng)建的任務(wù)都會(huì)在cur->func(events);被調(diào)用。不同的就是:遍歷執(zhí)行到定時(shí)任務(wù)時(shí),需要清掉定時(shí)相關(guān)標(biāo)志。

其中,events作為任務(wù)函數(shù)的參數(shù)傳入。從cola_task_loop可以看到,事件并未使用到,events無(wú)論真還是假,在執(zhí)行任務(wù)函數(shù)前,都被清零了。events的功能應(yīng)該是作者預(yù)留的。

創(chuàng)建任務(wù)很簡(jiǎn)單,比如創(chuàng)建一個(gè)定時(shí)任務(wù):

static?task_t?timer_500ms;

//每500ms執(zhí)行一次
static?void?timer_500ms_cb(uint32_t?event)
{
????printf("task0?running...\n");
}

cola_timer_create(&timer_500ms,?timer_500ms_cb);
cola_timer_start(&timer_500ms,?TIMER_ALWAYS,?500);

cola_os是基于軟件定時(shí)器來(lái)進(jìn)行任務(wù)調(diào)度管理的,需要一個(gè)硬件定時(shí)器提供時(shí)基。比如使用系統(tǒng)滴答定時(shí)器,配置為1ms中斷一次。

在1ms中斷中不斷輪詢判斷定時(shí)計(jì)數(shù)是否到達(dá)定時(shí)時(shí)間:

void?SysTick_Handler(void)
{
??cola_timer_ticker();
}

void?cola_timer_ticker(void)
{
????task_t?*cur??=?task_list;
????OS_CPU_SR?cpu_sr;
????while(?cur?!=?NULL?)
????{
????????if((TASK_TIMER?==?cur->taskFlag)&&?cur->start)
????????{
????????????if(++cur->timerTick?>=?cur->period)
????????????{
????????????????cur->timerTick?=?0;
????????????????if(cur->func?!=?NULL)
????????????????{
????????????????????enter_critical();???????????????????
????????????????????cur->run?=?true;
????????????????????exit_critical();
????????????????}
????????????}
????????}
????????cur?=?cur->next;
????}
}

如果到了則將標(biāo)志cur->run置位,在while大循環(huán)中的cola_task_loop函數(shù)中如果檢測(cè)到該標(biāo)志就執(zhí)行該任務(wù)函數(shù)。

2、cola_device

cola_device是硬件抽象層,使用鏈表來(lái)管理各個(gè)設(shè)備。其借鑒了RT-Thread及Linux相關(guān)驅(qū)動(dòng)框架思想。大致內(nèi)容如:

數(shù)據(jù)結(jié)構(gòu)如:

typedef?struct?cola_device??cola_device_t;

struct?cola_device_ops
{

????int??(*init)???(cola_device_t?*dev);
????int??(*open)???(cola_device_t?*dev,?int?oflag);
????int??(*close)??(cola_device_t?*dev);
????int??(*read)???(cola_device_t?*dev,?int?pos,?void?*buffer,?int?size);
????int??(*write)??(cola_device_t?*dev,?int?pos,?const?void?*buffer,?int?size);
????int??(*control)(cola_device_t?*dev,?int?cmd,?void?*args);

};

struct?cola_device
{

????const?char?*?name;
????struct?cola_device_ops?*dops;
????struct?cola_device?*next;
};

硬件抽象層的接口如:

/*
????驅(qū)動(dòng)注冊(cè)
*/

int?cola_device_register(cola_device_t?*dev);
/*
????驅(qū)動(dòng)查找
*/

cola_device_t?*cola_device_find(const?char?*name);
/*
????驅(qū)動(dòng)讀
*/

int?cola_device_read(cola_device_t?*dev,??int?pos,?void?*buffer,?int?size);
/*
????驅(qū)動(dòng)寫
*/

int?cola_device_write(cola_device_t?*dev,?int?pos,?const?void?*buffer,?int?size);
/*
????驅(qū)動(dòng)控制
*/

int?cola_device_ctrl(cola_device_t?*dev,??int?cmd,?void?*arg);

首先,在驅(qū)動(dòng)層注冊(cè)好設(shè)備,把操作設(shè)備的函數(shù)指針及設(shè)備名稱插入到設(shè)備鏈表中:

static?cola_device_t?led_dev;

static?void?led_gpio_init(void)
{
????GPIO_InitTypeDef?GPIO_InitStructure;
????RCC_AHBPeriphClockCmd(RCC_AHBPeriph_GPIOC,?ENABLE);
????GPIO_InitStructure.GPIO_Pin?=?PIN_GREENLED;????????????????????????????
????GPIO_InitStructure.GPIO_Mode?=?GPIO_Mode_OUT;?????????????????????
????GPIO_InitStructure.GPIO_Speed?=?GPIO_Speed_50MHz;??????????????????
????GPIO_InitStructure.GPIO_OType?=?GPIO_OType_PP;?????????????????????
????GPIO_InitStructure.GPIO_PuPd?=?GPIO_PuPd_NOPULL;??????????????????
????GPIO_Init(PORT_GREEN_LED,?&GPIO_InitStructure);
????LED_GREEN_OFF;
}

static?int?led_ctrl(cola_device_t?*dev,?int?cmd,?void?*args)
{
????if(LED_TOGGLE?==?cmd)
????{
????????LED_GREEN_TOGGLE;
????}
????else?
????{
????????
????}
????return?1;
}


static?struct?cola_device_ops?ops?=
{

????.control?=?led_ctrl,
};

static?void?led_register(void)
{
????led_gpio_init();
????led_dev.dops?=?&ops;
????led_dev.name?=?"led";
????cola_device_register(&led_dev);
}

cola_device_register函數(shù)如:

int?cola_device_register(cola_device_t?*dev)
{
????if((NULL?==?dev)?||?(cola_device_is_exists(dev)))
????{
????????return?0;
????}

????if((NULL?==?dev->name)?||??(NULL?==?dev->dops))
????{
????????return?0;
????}
????return?device_list_inster(dev);
}

驅(qū)動(dòng)注冊(cè)好設(shè)備之后,應(yīng)用層就可以根據(jù)設(shè)備名稱來(lái)查找設(shè)備是否被注冊(cè),如果已經(jīng)注冊(cè)則可以調(diào)用設(shè)備操作接口操控設(shè)備。比如創(chuàng)建一個(gè)定時(shí)任務(wù)定時(shí)反轉(zhuǎn)led:

void?app_init(void)
{
????app_led_dev?=?cola_device_find("led");
????assert(app_led_dev);
????cola_timer_create(&timer_500ms,timer_500ms_cb);
????cola_timer_start(&timer_500ms,TIMER_ALWAYS,500);
}

static?void?timer_500ms_cb(uint32_t?event)
{
????cola_device_ctrl(app_led_dev,LED_TOGGLE,0);
}

3、cola_init

cola_init是一個(gè)自動(dòng)初始化模塊,模仿Linux的initcall機(jī)制。RT-Thread也有實(shí)現(xiàn)這個(gè)功能:

一般的,我們的初始化在主函數(shù)中調(diào)用,如:

有了自動(dòng)初始化模塊,可以不在主函數(shù)中調(diào)用,例如:

void?SystemClock_Config(void)
{
}
pure_initcall(SystemClock_Config);

這樣也可以調(diào)用SystemClock_Config。pure_initcall如:

#define??__used??__attribute__((__used__))

typedef?void?(*initcall_t)(void);

#define?__define_initcall(fn,?id)?\
????static?const?initcall_t?__initcall_##fn##id?__used?\
????__attribute__((__section__("initcall"?#id?"init")))?=?fn;?


#define?pure_initcall(fn)???????__define_initcall(fn,?0)?//可用作系統(tǒng)時(shí)鐘初始化??
#define?fs_initcall(fn)?????????__define_initcall(fn,?1)?//tick和調(diào)試接口初始化
#define?device_initcall(fn)?????__define_initcall(fn,?2)?//驅(qū)動(dòng)初始化
#define?late_initcall(fn)???????__define_initcall(fn,?3)?//其他初始化

在cola_init中,首先是調(diào)用不同順序級(jí)別的__define_initcall宏來(lái)把函數(shù)指針fn放入到自定義的指定的段中。各個(gè)需要自動(dòng)初始化的函數(shù)放到指定的段中,形成一張初始化函數(shù)表。

__ attribute __ (( __ section __)) 關(guān)鍵字就是用來(lái)指定數(shù)據(jù)存放段。

do_init_call函數(shù)在我們程序起始時(shí)調(diào)用,比如在bsp_init中調(diào)用:

void?bsp_init(void)
{
????do_init_call();
}

do_init_call里做的事情就是遍歷初始化函數(shù)表里的函數(shù):

void?do_init_call(void)
{
????extern?initcall_t?initcall0init$$Base[];
????extern?initcall_t?initcall0init$$Limit[];
????extern?initcall_t?initcall1init$$Base[];
????extern?initcall_t?initcall1init$$Limit[];
????extern?initcall_t?initcall2init$$Base[];
????extern?initcall_t?initcall2init$$Limit[];
????extern?initcall_t?initcall3init$$Base[];
????extern?initcall_t?initcall3init$$Limit[];
????
????initcall_t?*fn;
????
????for?(fn?=?initcall0init$$Base;
????????????fn?????????????fn++)
????{
????????if(fn)
????????????(*fn)();
????}
????
????for?(fn?=?initcall1init$$Base;
????????????fn?????????????fn++)
????{
????????if(fn)
????????????(*fn)();
????}
????
????for?(fn?=?initcall2init$$Base;
????????????fn?????????????fn++)
????{
????????if(fn)
????????????(*fn)();
????}
????
????for?(fn?=?initcall3init$$Base;
????????????fn?????????????fn++)
????{
????????if(fn)
????????????(*fn)();
????}
}

這里有 initcall0init $$ Baseinitcall0init Limit這幾個(gè)initcall_t類型的函數(shù)指針數(shù)組的聲明。它們事先是調(diào)用__define_initcall把函數(shù)指針fn放入到自定義的指定的段.initcall0init、.initcall1init、.initcall2init、.initcall3init。

initcall0init$$Baseinitcall0init$$Limit按照我的理解就是各個(gè)初始化函數(shù)表的開始及結(jié)束地址。從而實(shí)現(xiàn)遍歷:

????for?(fn?=?initcall0init$$Base;
????????????fn?????????????fn++)
????{
????????if(fn)
????????????(*fn)();
????}

例如RT-Thread里的實(shí)現(xiàn)也是類似的:

????volatile?const?init_fn_t?*fn_ptr;

????for?(fn_ptr?=?&__rt_init_rti_board_start;?fn_ptr?????{
????????(*fn_ptr)();
????}

關(guān)于init自動(dòng)初始化機(jī)制大致就分析這些。

cola_os包含有cola_os任務(wù)管理、cola_device硬件抽象層及cola_init自動(dòng)初始化三大塊,這三塊內(nèi)容其實(shí)可以單獨(dú)抽出來(lái)學(xué)習(xí)、使用。

4、cola_os的使用

下面我們基于小熊派IOT開發(fā)板來(lái)簡(jiǎn)單實(shí)踐實(shí)踐。

我們創(chuàng)建兩個(gè)定時(shí)任務(wù):

  • task0任務(wù):定時(shí)500ms打印一次。
  • task1任務(wù):定時(shí)1000ms打印一次。

main.c:

/*?Private?variables?---------------------------------------------------------*/
static?task_t?timer_500ms;
static?task_t?timer_1000ms;
/*?USER?CODE?END?PV?*/

/*?Private?function?prototypes?-----------------------------------------------*/
void?SystemClock_Config(void);

/*?USER?CODE?BEGIN?PFP?*/
/*?Private?function?prototypes?-----------------------------------------------*/

/*?USER?CODE?END?PFP?*/

/*?USER?CODE?BEGIN?0?*/

//每500ms執(zhí)行一次
static?void?timer_500ms_cb(uint32_t?event)
{
????printf("task0?running...\n");
}

//每1000ms執(zhí)行一次
static?void?timer_1000ms_cb(uint32_t?event)
{
????printf("task1?running...\n");
}

int?main(void)
{
??/*?USER?CODE?BEGIN?1?*/
?
??/*?USER?CODE?END?1?*/

??/*?MCU?Configuration----------------------------------------------------------*/

??/*?Reset?of?all?peripherals,?Initializes?the?Flash?interface?and?the?Systick.?*/
??HAL_Init();

??/*?USER?CODE?BEGIN?Init?*/

??/*?USER?CODE?END?Init?*/

??/*?Configure?the?system?clock?*/
//??SystemClock_Config();

??/*?USER?CODE?BEGIN?SysInit?*/

??/*?USER?CODE?END?SysInit?*/

??/*?Initialize?all?configured?peripherals?*/
??MX_GPIO_Init();
??MX_DMA_Init();
??MX_USART1_UART_Init();
??/*?USER?CODE?BEGIN?2?*/
??printf("微信公眾號(hào):嵌入式大雜燴\r\n");
??printf("cola_os?test!\r\n");
??
??cola_timer_create(&timer_500ms,timer_500ms_cb);
??cola_timer_start(&timer_500ms,TIMER_ALWAYS,500);
??cola_timer_create(&timer_1000ms,timer_1000ms_cb);
??cola_timer_start(&timer_1000ms,TIMER_ALWAYS,1000);

??/*?USER?CODE?END?2?*/

??/*?Infinite?loop?*/
??/*?USER?CODE?BEGIN?WHILE?*/
??while?(1)
??{

??/*?USER?CODE?END?WHILE?*/

??/*?USER?CODE?BEGIN?3?*/
????cola_task_loop();
??}
??/*?USER?CODE?END?3?*/

}

/**
??*?@brief?System?Clock?Configuration
??*?@retval?None
??*/

void?SystemClock_Config(void)
{

??RCC_OscInitTypeDef?RCC_OscInitStruct;
??RCC_ClkInitTypeDef?RCC_ClkInitStruct;
??RCC_PeriphCLKInitTypeDef?PeriphClkInit;

????/**Initializes?the?CPU,?AHB?and?APB?busses?clocks?
????*/

??RCC_OscInitStruct.OscillatorType?=?RCC_OSCILLATORTYPE_MSI;
??RCC_OscInitStruct.MSIState?=?RCC_MSI_ON;
??RCC_OscInitStruct.MSICalibrationValue?=?0;
??RCC_OscInitStruct.MSIClockRange?=?RCC_MSIRANGE_6;
??RCC_OscInitStruct.PLL.PLLState?=?RCC_PLL_ON;
??RCC_OscInitStruct.PLL.PLLSource?=?RCC_PLLSOURCE_MSI;
??RCC_OscInitStruct.PLL.PLLM?=?1;
??RCC_OscInitStruct.PLL.PLLN?=?40;
??RCC_OscInitStruct.PLL.PLLP?=?RCC_PLLP_DIV7;
??RCC_OscInitStruct.PLL.PLLQ?=?RCC_PLLQ_DIV2;
??RCC_OscInitStruct.PLL.PLLR?=?RCC_PLLR_DIV2;
??if?(HAL_RCC_OscConfig(&RCC_OscInitStruct)?!=?HAL_OK)
??{
????_Error_Handler(__FILE__,?__LINE__);
??}

????/**Initializes?the?CPU,?AHB?and?APB?busses?clocks?
????*/

??RCC_ClkInitStruct.ClockType?=?RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
??????????????????????????????|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
??RCC_ClkInitStruct.SYSCLKSource?=?RCC_SYSCLKSOURCE_PLLCLK;
??RCC_ClkInitStruct.AHBCLKDivider?=?RCC_SYSCLK_DIV1;
??RCC_ClkInitStruct.APB1CLKDivider?=?RCC_HCLK_DIV1;
??RCC_ClkInitStruct.APB2CLKDivider?=?RCC_HCLK_DIV1;

??if?(HAL_RCC_ClockConfig(&RCC_ClkInitStruct,?FLASH_LATENCY_4)?!=?HAL_OK)
??{
????_Error_Handler(__FILE__,?__LINE__);
??}

??PeriphClkInit.PeriphClockSelection?=?RCC_PERIPHCLK_USART1;
??PeriphClkInit.Usart1ClockSelection?=?RCC_USART1CLKSOURCE_PCLK2;
??if?(HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit)?!=?HAL_OK)
??{
????_Error_Handler(__FILE__,?__LINE__);
??}

????/**Configure?the?main?internal?regulator?output?voltage?
????*/

??if?(HAL_PWREx_ControlVoltageScaling(PWR_REGULATOR_VOLTAGE_SCALE1)?!=?HAL_OK)
??{
????_Error_Handler(__FILE__,?__LINE__);
??}

????/**Configure?the?Systick?interrupt?time?
????*/

??HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);

????/**Configure?the?Systick?
????*/

??HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);

??/*?SysTick_IRQn?interrupt?configuration?*/
??HAL_NVIC_SetPriority(SysTick_IRQn,?0,?0);
}
pure_initcall(SystemClock_Config);

SysTick_Handler:

void?SysTick_Handler(void)
{
??/*?USER?CODE?BEGIN?SysTick_IRQn?0?*/

??/*?USER?CODE?END?SysTick_IRQn?0?*/
??cola_timer_ticker();
??HAL_IncTick();
??HAL_SYSTICK_IRQHandler();
??/*?USER?CODE?BEGIN?SysTick_IRQn?1?*/

??/*?USER?CODE?END?SysTick_IRQn?1?*/
}

編譯、下載、運(yùn)行:

從運(yùn)行結(jié)果可以看到,task1的定時(shí)周期是task0的兩倍,符合預(yù)期。

聲明:本文素材來(lái)源網(wǎng)絡(luò),版權(quán)歸原作者所有。如涉及作品版權(quán)問題,請(qǐng)與我聯(lián)系刪除。


------------?END?------------



●專欄《嵌入式工具

●專欄《嵌入式開發(fā)》

●專欄《Keil教程》

●嵌入式專欄精選教程


關(guān)注公眾號(hào)回復(fù)“加群”按規(guī)則加入技術(shù)交流群,回復(fù)“1024”查看更多內(nèi)容。




點(diǎn)擊“閱讀原文”查看更多分享。
strongerHuang 作者黃工,高級(jí)嵌入式軟件工程師,分享嵌入式軟硬件、物聯(lián)網(wǎng)、單片機(jī)、開發(fā)工具、電子等內(nèi)容。
評(píng)論
  • 在前六期中,我們已經(jīng)分別討論了 CRA 的適用范圍、整體影響、漏洞通報(bào)義務(wù)、風(fēng)險(xiǎn)評(píng)估與技術(shù)文檔證據(jù)鏈、第三方組件與 SBOM 供應(yīng)鏈治理,以及產(chǎn)品上市后的支持期、安全更新、用戶說明和終止支持管理。到這里,企業(yè)已經(jīng)能夠回答幾個(gè)核心問題:產(chǎn)品是否落入 CRA 適用范圍,產(chǎn)品由哪些組件構(gòu)成,企業(yè)如何證明自己在設(shè)計(jì)、開發(fā)和上市前采取了必要的安全措施,以及產(chǎn)品上市后如何持續(xù)維護(hù)和安全下線。但對(duì)于真正準(zhǔn)備落地 CRA 合規(guī)的企業(yè)來(lái)說,還有一個(gè)更現(xiàn)實(shí)的問題:CRA 的法規(guī)條文相對(duì)原則化,企業(yè)應(yīng)當(dāng)如何把“網(wǎng)絡(luò)安
    虹科云科技 2026-08-03 16:51 5802瀏覽
  • 導(dǎo)語(yǔ)在現(xiàn)代高速數(shù)字電路設(shè)計(jì)中,信號(hào)的完整性已不僅是理想波形推演,而是一場(chǎng)與物理非理想特性正面博弈的工程實(shí)踐。濾波器芯片作為凈化傳輸鏈路的關(guān)鍵屏障,其核心挑戰(zhàn)在于:能否有效識(shí)別并濾除那些隱匿在電平跳變過程中的亞納秒級(jí)瞬態(tài)脈沖干擾,這類干擾持續(xù)極短,卻足以在高速鏈路中引發(fā)誤觸發(fā)。然而,傳統(tǒng)函數(shù)發(fā)生器受限于采樣率與邊沿速率,根本無(wú)法忠實(shí)復(fù)現(xiàn)如此狹窄且陡峭的異常波形。針對(duì)此困境,德思特TS-AWG7000系列任意波形發(fā)生器以17 GS/s采樣率與50 ps原生邊沿速度,為瞬態(tài)脈沖提供精細(xì)刻畫,配合SPG
    德思特測(cè)試測(cè)量 2026-08-05 14:06 5瀏覽
  • 摘要防爆自控系統(tǒng)同時(shí)布設(shè)本安信號(hào)、工業(yè)總線、動(dòng)力供電三類線路,僅依靠標(biāo)識(shí)標(biāo)牌管控插接極易出現(xiàn)人為錯(cuò)插問題,高壓動(dòng)力回路竄入本安弱電回路會(huì)突破安全柵限能標(biāo)準(zhǔn),產(chǎn)生點(diǎn)火風(fēng)險(xiǎn)。依托 A、D、K 標(biāo)準(zhǔn)化機(jī)械防呆編碼體系,搭配護(hù)套顏色區(qū)分管理,適配 3 針 3 孔免焊接冷壓增安型防爆航插、5PIN 總線防爆航空插頭、8 芯焊接防爆法蘭插座的選型使用,從物理結(jié)構(gòu)層面杜絕防爆接近開關(guān)連接器、防爆傳感器航插接頭混用插接問題,補(bǔ)齊防爆系統(tǒng)被動(dòng)安全防護(hù)體系。關(guān)鍵詞圓形防爆連接器,防呆編碼防爆航插,防爆航空插頭,防爆
    kyfbest科迎法電氣 2026-07-31 18:29 328瀏覽
  • 摘要在防爆電氣設(shè)計(jì)中,只參照芯數(shù)選型而忽略額定載流量,長(zhǎng)期滿負(fù)荷運(yùn)行會(huì)出現(xiàn)插頭發(fā)熱、接觸面氧化、IP67 密封受熱老化等問題。結(jié)合常用 3 針 3 孔、4 芯、5PIN、8PIN 圓形防爆連接器,制作分級(jí)電流參數(shù)對(duì)照表,區(qū)分冷壓免焊接、焊接兩種接線結(jié)構(gòu)的安全載流數(shù)值,設(shè)置合理電流冗余系數(shù),搭配使用環(huán)境修正參數(shù),規(guī)范防爆接近開關(guān)連接器、防爆法蘭插座的選型計(jì)算方式。關(guān)鍵詞圓形防爆連接器,載流參數(shù)表,防爆法蘭插座,防爆端子接頭,IP67 防爆防水接插件1 產(chǎn)品概述圓形防爆連接器觸點(diǎn)載流能力由插針直徑、
    kyfbest科迎法電氣 2026-08-03 09:18 128516瀏覽
  • 在物聯(lián)網(wǎng)從“萬(wàn)物互聯(lián)”邁向“萬(wàn)物智聯(lián)”的進(jìn)程中,LTE Cat.1憑借其在速率、成本與網(wǎng)絡(luò)覆蓋之間的完美平衡,正成為中低速物聯(lián)網(wǎng)市場(chǎng)的絕對(duì)主力。隨著2G/3G網(wǎng)絡(luò)的逐步退網(wǎng)以及新國(guó)標(biāo)對(duì)終端設(shè)備智能化、定位功能的強(qiáng)制要求,Cat.1模組迎來(lái)了爆發(fā)式的增長(zhǎng)窗口。在這一關(guān)鍵節(jié)點(diǎn),基于華為海思Hi2131芯片設(shè)計(jì)的LTE Cat.1模組,憑借其在能效、射頻、架構(gòu)及物理規(guī)格上的底層創(chuàng)新,成功打破了“高性能必高功耗”的傳統(tǒng)魔咒,為行業(yè)提供了極具競(jìng)爭(zhēng)力的連接最優(yōu)解。核心技術(shù)優(yōu)勢(shì):重塑Cat.1能效與連接標(biāo)桿海
    用戶1778981989717 2026-08-05 21:04 79瀏覽
  •     長(zhǎng)期專注WiFi領(lǐng)域,也算是行業(yè)老兵了!同行閑聊中,時(shí)不時(shí)能提起我和我們!從疫情起,國(guó)產(chǎn)替代風(fēng)生水起,起起落落,大浪淘沙,生存下來(lái)的都是強(qiáng)者!    WiFi模塊應(yīng)用廣泛,對(duì)于高端市場(chǎng)和特定市場(chǎng),要求WIFI模塊需要過CE/FCC之類的認(rèn)證,也就是說沒有認(rèn)證的模塊,不具備導(dǎo)入產(chǎn)品設(shè)計(jì).接下來(lái)就和大家聊聊認(rèn)證模塊選型參考!    WIFi模塊硬件方面主要考慮以下九點(diǎn)特性:    1
    納拓科技 2026-07-31 17:56 192瀏覽
  • 在EMC測(cè)試過程中,傳導(dǎo)發(fā)射(Conducted Emission,CE)超標(biāo)是工程師最常遇到的問題之一。更令人頭疼的是,同樣的超標(biāo)曲線背后,可能對(duì)應(yīng)著完全不同的干擾機(jī)理:有的是差模噪聲沿電源回路傳播,有的是共模電流通過寄生路徑耦合,還有些問題甚至并非來(lái)自電源本身,而是負(fù)載、電纜布局或接地結(jié)構(gòu)引起的連鎖反應(yīng)。 · 150kHz~1MHz 超標(biāo):多為差模噪聲為主,干擾沿火線-零線回路傳輸。 · 1MHz~30MHz 超標(biāo):通常共模噪聲占主導(dǎo),干擾通過火線/零線對(duì)地回路傳播。 如果條件允許,用電流探
    譽(yù)磁電磁兼容EMC 2026-07-31 18:45 413瀏覽
  • ?摘要:低價(jià)大流量卡正全面退市,政策收緊已成定局。面對(duì)傳統(tǒng)號(hào)卡的不確定性,隨身WiFi憑借穩(wěn)定連接、多設(shè)備共享、獨(dú)立設(shè)備和靈活套餐等優(yōu)勢(shì),成為務(wù)實(shí)可靠的備選方案。1、流量卡黃金時(shí)代要結(jié)束了通信行業(yè)正迎來(lái)一場(chǎng)前所未有的“地震式”調(diào)整——曾讓無(wú)數(shù)用戶追捧的低價(jià)大流量卡,正在全速退出各大平臺(tái)。這早已不是一次普通的競(jìng)合,而是一場(chǎng)趨勢(shì)性的行業(yè)洗牌?;赝^去,19元200G的神卡,那時(shí)真是“睡著都能笑醒”,便宜到不敢相信,爽到忍不住炫耀。那些日子,好像隨便刷、隨便看,流量自由觸手可及??扇缃?,回頭再看,那種
    愛上電路設(shè)計(jì) 2026-08-03 10:21 128709瀏覽
  • 在芯片總成本中占比不到 1%,卻可能因一處品質(zhì)偏差導(dǎo)致整片晶圓報(bào)廢——半導(dǎo)體切割/研磨膠帶,正隨著先進(jìn)封裝的爆發(fā),成為封測(cè)產(chǎn)線選型中最謹(jǐn)慎對(duì)待的耗材之一。但鮮有人注意到,決定這層膠帶性能上限的,是上游一層更薄的基膜。這個(gè)長(zhǎng)期由日本企業(yè)主導(dǎo)的隱形環(huán)節(jié),正在出現(xiàn)國(guó)產(chǎn)突圍的信號(hào)。一、需求之變:先進(jìn)封裝與“韜定律”重塑膠帶市場(chǎng)AI 算力芯片、HBM 高帶寬存儲(chǔ)、Chiplet 芯粒等先進(jìn)封裝產(chǎn)品持續(xù)放量,國(guó)內(nèi)封測(cè)產(chǎn)線擴(kuò)產(chǎn)節(jié)奏不減。作為晶圓減薄與切割工序的必需耗材,晶圓膠帶的需求同步擴(kuò)容。據(jù) QYRese
    芯膜前沿 2026-07-31 16:35 326瀏覽
  • 文:杜杰編輯:侯煜當(dāng)?shù)貢r(shí)間7月28日,美國(guó)特朗普政府落地最新科技封鎖政策,美國(guó)聯(lián)邦通信委員會(huì)(FCC)正式更新《受管制清單》,新增兩大類設(shè)備——境外生產(chǎn)的先進(jìn)機(jī)器人設(shè)備、境外生產(chǎn)的聯(lián)網(wǎng)電力逆變器。FCC在官方情況說明書中明確,該類境外制造產(chǎn)品,“會(huì)對(duì)美國(guó)國(guó)家安全或美國(guó)民眾的人身安全構(gòu)成無(wú)法承受的風(fēng)險(xiǎn)”。本次新規(guī)設(shè)置明確豁免機(jī)制:經(jīng)美國(guó)國(guó)防部(DoW)、電力逆變器品類經(jīng)美國(guó)國(guó)土安全部(DHS)審核并授予“有條件批準(zhǔn)”,認(rèn)定對(duì)應(yīng)設(shè)備品類不存在重大安全風(fēng)險(xiǎn),即可獲得準(zhǔn)入豁免。同時(shí)政策嚴(yán)格執(zhí)行新老劃斷原
    華爾街科技眼 2026-08-03 21:28 109瀏覽
  • 今年好幾個(gè)客戶都問過我同一件事。藍(lán)牙音頻產(chǎn)品到底用 WT2605 這種單芯片,還是老老實(shí)實(shí) MCU 外掛藍(lán)牙模組。兩種方案我都落地過,說點(diǎn)實(shí)在的,WT2605 剛出來(lái)那陣我也犯嘀咕,怕是營(yíng)銷噱頭,真拿來(lái)做完一版樣機(jī)才服氣。一、選型先看三個(gè)維度外圍數(shù)量。這是最直觀的。傳統(tǒng)做法是 MCU 加藍(lán)牙模組,再加音頻編解碼、功放、晶振和一堆阻容,板子上密密麻麻十幾二十顆料。WT2605 把藍(lán)牙、解碼、功放全收進(jìn)一顆,外圍就剩少量被動(dòng)件。開發(fā)周期。傳統(tǒng)方案得自己接藍(lán)牙協(xié)議棧,配網(wǎng)、A2DP 解碼、音頻通路一一
    唯創(chuàng)知音語(yǔ)音芯片 2026-07-31 16:35 435瀏覽
  • 智能寵物用品這幾年快速普及,自動(dòng)清理幾乎成了智能貓砂盆的標(biāo)配。貓咪用完離場(chǎng),設(shè)備自動(dòng)翻轉(zhuǎn)清理,養(yǎng)寵家庭省去了每天彎腰清理的麻煩。但自動(dòng)清理的第一步,是先準(zhǔn)確判斷貓到底在不在盆里。這個(gè)看似簡(jiǎn)單的問題,在小空間里并不容易做好。近場(chǎng)檢測(cè)的痛點(diǎn):距離太遠(yuǎn)反而誤事貓砂盆內(nèi)部空間有限。如果傳感器的檢測(cè)距離設(shè)得偏大,盆外路過的貓、人甚至物品都會(huì)被誤判為貓?jiān)谂鑳?nèi),結(jié)果該清理時(shí)不清理、不該清理時(shí)亂清理,體驗(yàn)直接崩壞。這類產(chǎn)品的核心訴求其實(shí)就一句話:近距離、小范圍、精準(zhǔn)識(shí)別,不能有半點(diǎn)誤判。常規(guī)感應(yīng)方案常因檢測(cè)距離
    唯創(chuàng)知音語(yǔ)音芯片 2026-07-31 16:51 265瀏覽
我要評(píng)論
0
點(diǎn)擊右上角,分享到朋友圈 我知道啦
請(qǐng)使用瀏覽器分享功能 我知道啦
主站蜘蛛池模板: 家属と姉妹の声| 血洗金三角| 名侦探柯南免费观看全集完整版 | 电影借种| 《裤袜视界》| 电影需要爸爸的种子| 壮志凌云女版啄木鸟满天星在线观看免费版 | 我的女神室友| 高清极寒潜袭未删减| 我的中国心曲谱| 电竞高校2| 爸爸要播种电影完整版免费观看| 下一个奇迹百度影音| 韩讯五第二部| 倔强驱魔师动漫观看| 欢场电影高清在线观看| 男按摩HD电影| 特种兵之火凤凰45| 阴阳镇怪谈电影在线观看| 综合色色网修理工的艳遇| 《原始人》电影免费观看| 年轻妈妈| 林青霞白发魔女| 奶爸战神:打仗带娃完整版观看| 旋风管家国语版| 欧美电影爱我几合莫妮卡主演免费观看 | 卢旺达的玫瑰完整版免费观看 | 社长的妻子2电视剧免费| 《climax》电影在线观看免费| 小丑电影2019| 电影特邀外卖员| 天生一对下载| 京东塔之越南俘虏营在线观看| 龙年图片壁纸| 《丰年经继拇2》中文翻译| 办公室秘书电影| 本乡爱电影合集在线观看完整版 | 漂亮的保姆韩国手机观看| 电子情书电影| 飞机上的性服务K8| 高清《年轻的女仆》韩国电影| 她的伪装| 电视剧如此婚姻| 暧昧失温短剧全集在线观看| 玩命爱一个姑娘完整版| 妈妈的职业免费| 纳粹狂魔中文免费观看全集| 加勒比海女海盗电影完整版| 斗破苍穹第121集完整版观看 | 麦乐蒂马克思满天星| 人口第一大省首现负增长| 天狼星行动电视剧全集免费观看| 便利店坏妻子| 一打开就是立体的贺卡| 天装战队护星者剧场版| 《不忠》楼道分手完整原声| 密室大逃脱第七季大神版 | 电影草原英雄小姐妹| 印度电影爱的火山| 黑蝴蝶刘敏涛完整版在线观看| 西游记之诸神之战完整版在线观看| 漂亮的小姨韩剧免费观看完整版电视剧| 西瓜视频在线免费观看| 年青护土3| 《德国空乘4》| 鬼吹灯之精绝古城免费观看版| 前夫的东西很大现在还想| 爱我几何《莫妮卡》电影| 新员工入职秘书 | 马腾你别走电影完整版在线观看| 按摩3~4| 北大女生包里最全聊天记录| 激情网在线视频| 日剧和讨厌的前任出差| 下水道美人鱼在线| 美和花园电影免费观看2023年上映的| 高清《哺乳》电影完整观看免费| 好看的三级伦理片水电工| 西安大追捕20集免费观看| 小鹏奇啪行| 需要爸爸种子电影| 即时是空3电影免费观看完整版国语| 意大利爱我几何电影完整版播放| 超时空辉夜姬!| 失落的世界| 电影草原英雄小姐妹| 坏女孩2满天星| 万全县| 香山叶正红电视剧| 蒙嘉慧 不文女学堂| 杨思敏电影| 疯狂电影在线高清观看免费| 詹姆斯十佳扣篮| 只有神知道的世界| 维修工与丰腴女子中文字幕电影| 女子学校的男生| 魔女宅急便国语| 于无声处免费观看全集| 惊艳一枪国语| 梁安琪外面的男人| 宁柔柔的小泬撑开到极| 再向虎山行连续剧83版免费观看 | 琉璃电视剧在线观看免费全集| 急诊护士在线免费观看| 斗破苍穹缘起在线观看| 女子护卫队| 男子发明喂鸡神器 网友:费鸡头| 狂飙免费播放| 平凡的世界电视剧全集免费播放| 昶读什么| 电影珍品在线观看免费完整版电视剧| 反贪风暴粤语| 长相思第二季电视剧免费完整版 | 电视剧《流金岁月》免费观看| 狐妖小红娘电视剧免费观看完整版 | 一拳超人3在线看免费观看高清| 高清好运未删减| 小蜜峰美丽人生| 岳云鹏的歌曲| 女律师的堕落电视剧免费观看第4集| 金装鬼打鬼未删减版观看| 电影无憾坎贝奇完整版| 修真界帝尊短剧全集免费观看| 禁忌5在线免费观看| 特殊精油按摩在线观看| 《激战丛林》罗莎卡拉在线观看 | 修理师傅的艳遇无删减| 天龙高清远古电视剧在线观看| 冰冷热带鱼电影日本版| 影片《夫妻的快乐旅游》在线观看 | 伊波拉病毒未删减版在哪| 木下和雅| 赤板栗牙医姐妹1986在线观看| 山菊花在线观看| 电视剧爱可以重来| 非常有喜电视剧全集| 朋友的老婆1| 紫彩乃在线观看| 电视剧门第下载| 新金银5—1手机版| 迪亚哥全集| 《爱我几何》高清完整版在哪看| 血恋电影免费播放高清在线观看 | 美国忌讳1–5| 桑德拉·拉索满天星| 天下长河电视剧在线观看完整版| 《一对三》韩剧姜汉娜结局| 猫和老鼠东北方言版| 年轻的销售员8| 寂寞午夜影院| 牙医姐妹完整版免费 在线观看 | 杰西.简壮志凌云| 电影囧妈免费观看| 混血儿摇篮曲1973正版播放| 《沧元图》58| 屠宰娃娃高清免费完整观看全集| 老公的朋友来做客| 《施魔法》满天星| 利刃出鞘3| 八八爸爸| 连诗雅三级| 孤胆保镖电影完整版免费观看| 隋唐演义严宽| 人生是美丽的| 袁隆平什么时候去世的| 白鹿牺牲最大的一场戏| 真相电视剧在线观看完整版| 末代御医粤语| 《陷阱》未删减版在线观看| 为人民服务完整版| 韩国电影观看免费观看完整版| 女人生小孩全过程| 背水一战 电影天堂| 宜良县| 《哺乳》电影完整版观看免费视频| 漂亮的小瘦子 3| 武僧一龙ko日本拳王| 木子檀子电影免费观看| 公交车一路被C| 浙江省| 冰雪尖刀连免费观看| 日本电影《兄妹》的背景故事| 贞观长歌高清| 《女销售的销售秘密2》 | 种其因者须食其果短剧结局| 人类我们的故事全集| 与你的暖暖时光| 暗芝居第二季全集免费观看| 带跳DAN坐公交车| 那一天仓央嘉措| 不能久坐是多长时间| 孙颖莎赛后瘫倒原因出炉| 骸骨骑士大人奇幻世界冒险中| 甄嬛传电视剧免费全集在线观看| 爱我几何莫妮卡完整版免费观看| 《干柴烈火》| 法国空姐11完整版第一部| 爱情公寓3新闻发布会| 向井蓝之特殊治疗医护免费看| 包青天老版| 古墓丽影满天星版免费观看| 电影丝袜会所| 爱丽丝梦游仙境中文版| 鼓浪屿之波原唱| 黑暗荣耀第一季免费看| 电影《戴恩的爱情故事》免费播放| 我是特种兵之利刃出鞘29| 电视剧翡翠凤凰| 年轻老师2| 白浊女教师在线观看| 完美搭档百度影音| 雨后小故事 动漫| 鬼娃回魂3| 爱染恭子| 善良的子1免费观看| 中字年轻漂亮的儿媳BD| 电视剧逍遥免费观看全集| 年轻的嫂子在线视频观看完整版| 插曲痛30分钟全集免费看| 开心鬼撞鬼迅雷下载| 女超人 法国 | 法国空姐第5季国语版免费观看 | 隋炀帝艳史电影在线播放| 花房姑娘8季在线观看免费 | 高清7天未删减| 公交车免费观看完整版电视剧| 百家讲坛光绪| 特殊的保险推销员2 中国| 赤警威龙国语| 牙医姐妹1986无删减版| 凶宅处理专员在线全集观看| 性解蜜| 夺粮剿匪记全集| 酒店激战1-5集免费播放人生第一次 | 逆风而行电视剧全集免费版| 美乃雀电影免费在线观看| 乱点鸳鸯谱| 苍老师80集经典电影播放免费观看| 追击者电视剧| 矿桥第8集体检超棒| 《瞄准》全集免费观看| 和部长一起出差在线播放| 孤注电影完整版免费观看| 美丽的草原姑娘完整版 | 媳妇的美好时代全集下载| 朝国年经继拇4免费| 晚娘全集在线观看| 激战丛林在线观看| 只有神知道的世界ii| 杨敏1—5集免费观看电视剧下载| 只有神知道的世界ii| 《学生的妈妈2》中字头歌词| 不小心爱上你全集| 上位110分钟完整版| 公主恋人cg| 赚他一千万| 恶魔少爷爱上我| 阿姨的丝袜| 出轨的后裔| 电视剧金太狼的幸福生活| 我们来自未来1| 三毛流浪记电视剧| 浮城谜事下载| 监狱风云之传教士| 千古绝尘| 高清隐身的名字未删减| 图书馆女友第一季全集免费六集 | 法国女超人电影完整版免费观看| 韩剧初恋| 妻子6免费观看完整版电视剧| 健全机斗士| 莫莉3特别酒店午夜| 复制娇妻下载| 电影需要爸爸播种子完整版免费在线观看 | 使徒行者免费| 加勒比海盗一| 猎罪图鉴| 泰剧爱属我心| 无限动漫在线观看免费| 半老徐娘爱上小伙电影| 最美的时光大结局50| 玄女心经1免费| 白峰美羽的电影中字| 杨馥宇变形计| 斑马影街| 程颖婕个人资料| 正在播放: 美丽寡妇偿还债务,巨乳少女葵司献身还债 - 91n | 幽游白书国语| 战至巅峰第三季2024免费观看| 满天星《瓜达卢佩的玫瑰》| 微笑妈妈电视剧免费完整版| 坎坝奇电影免费观看| 看不见的朋友| 丰满的继牳性教育| 咏春电影| 色帽子影院| 青春环游记第三季综艺| 大丫鬟在线观看| 田教授家的二十八个保姆 | 沉香如屑电视剧全集免费| 第一次做aj电视剧| 黑白诀电视剧免费观看完整版高清| 安斋拉拉在线观看视频| 当幸福来临时| 酒店出水激战1-5集免费| 《冬日的什么呀,春日的什么呢》| 女保险推销员8| 女生刘海两边的头发叫什么| 特邀外卖员| 让子弹飞电影完整| 一枪战三母国语版免费播放| 僵尸城市| 小欢喜免费观看| 怪医黑杰克| 车票 电影| 向着胜利前进电视剧全集在线观看| 龙帅归来:都市再掀风云全集免费| 水电工人的艳遇| 行尸走肉第三集| 和部长一起去出差旅是第几集| juy一747青木玲在线观看| 新员工2中字ID| 《流浪地球》樱花动漫| 欲罢不能阿拉丁版| 丰满姨母2电影| 电视剧折腰免费观看在线播放| 圣特罗佩姑娘们1982满天星| 黄yyid频道| TOTAKKAHayaKirguzux节日| 她在丈夫身边被耍了| 娃娃脸 4| 苍老师10部必看经典电影| 牵手 黄绮珊| 日本jiz| 绝世唐门第60集免费观看| 伦理《法国护士长》2006免费在线观看| 铠:武士僵尸| 富婆20万睡小22岁小伙| 爱情美剧盛典爱情公寓完整版| 爱我几何在线观看全集免费播放莫妮| 斗破苍穹58| 旧里番无修在线观看| 无风絮自飞| 小小的我电影免费观看易烊千玺 | 诱人的小峓子BD中文电影| 电影小蓝第二部| 《激战丛林》完整版免费| 一起来看| 超异能族韩剧| 中央舞台2| 大掌门电视剧全集| 驯服2电影丽卡结局| 《上瘾》电视剧| V酒店在线观看| 四项公投是哪四项| 人民的名义18集| 空姐的秘密 百度影音| 电影 1942| 妻子丰胸按摩电影在线观看| 幸福最晴天mp4下载| 维修工人的绝遇2中文版| 白鹿《唐宫奇案》免费观看| 《插曲的痛免费观看第二季》中文版| 逆流而上的你剧情| 无尽情爱 电视剧| 吕秀菱心锁| 课后战争活动| 无憾电影全集免费观看 | 《漂白》| 新巴尔虎右旗| 猎杀电视剧演员表| 乳糖不耐受po豆乳芝士 | 斗罗大陆在线观看218| 镜中人在线观看完整版免费| 高清《黑道家族》| 睫毛膏3美国1983| 幽游白书在线玩| 莫妮卡爱我几何在线观看全集免费播放| 黄雀电视剧免费观看| 咱们结婚吧电影| 多名大妈在书店大声喧哗练舞| 扫黄先锋国语| 站着再来一次17集全免费播放| 我本将心向明月短剧免费观看| 《女警坠落2》在线观看| 免费保姆| 终极斗罗第二季| 莱纳安德森《黑暗森林》在线播放欢 | 黑帮少爷爱上我第四集 | 夺命鹰爪功电影| 战狼6老姨免费观看电视剧| 义胆红唇| 天堂资源在线官网| 想要爸爸| 白头神探:智斗灭世狂人电影| 台剧《黛比浪漫女家教1》| 邻居的老婆在线| 达尔| 马龙结了三次婚| 玉浦团电影在线观看| 月上重火免费观看全集完整版高清 | 美貌的社长夫人太漂亮了| 花容月貌电影免费| 爱丫爱丫免费高清电影| 东方之珠之风流家族| 免费韩国电影完整版在线观看| 年轻的邻居的阿姨3| 高清《当替身我月薪百万》| 韩国大学生创业沙龙2| 因纽特人繁衍纪录片| 爱你几何 在线| 都铎王朝第一季| 广场舞正月十五闹花灯| 色即是空在线电影| 我在截取一段视频特工| 《激战丛林》完整版| 俄语电影| 一念天堂电影高清免费观看 | 自古英雄出少年之岳飞| 《奇怪的美容院2》中文翻译 | 手抄报2024年龙年| 花千骨电视剧| 江湖儿女免费| 《部长夫人的美貌》的日剧免费观看 | 欧美《壮志凌云:满天星》| 陆小凤与花满楼结局| xl司令动漫全集在线观看| 盖世俊杰在线观看| 少年派第二季电视剧免费观看全集| 加菲猫大电影1普通话版免费| 泡面小食堂| 特殊游泳课艺术片| 韩剧泡沫爱情| 极品士兵| 无法开口| 圣诞树折纸| 莫莉特别酒店| 喜爱夜蒲陈柏宇发型| 梦想的声音免费观看| 我的名字韩剧| 国家保安电影| 木下檀檩子无码HD| 声生不息港乐季免费观看完整版| 满天星在线| 入殓师百度影音| 夫妻那些事电视剧大结局| 美妙的旋律| 天美星空mv| 满天星禁忌5| 环太平洋一| 奥特曼兄弟国语全集| 财经郎眼20140929| 清潭国际高中第一部| 涩屋屋| 理想之城在线| 临泉县| 《劫匪面前无能的丈夫》| 你好骚哦我好喜欢什么歌的歌词| 千斤肉板栗1985| 《封神:妲己》| 余罪第一季免费观看全集| 万古齐天全集免费观看| 青岛往事全集| 板栗《千金小姐》免费观看 | 飞哥大英雄电视剧全集在线观看 | 韩国漂亮的搜子3| 庆余年第三季40集免费观看| 电视剧江山| 修理工的艳遇免费观看| 大奉打更人电视剧在线观看免费| 老电影牧马人| 大乐透24142期开奖结果| 奔跑吧兄弟| 国风按摩院1-5季电视剧免费观看| 妖怪名单动漫| 高压监狱HD无删减免费视频 | 千金肉奴隶电影 | 《交缠》2024年电影| 未删减版瓜达卢佩的玫瑰在线观看免费 | 新油菜电影在线观看| 妈妈家族的女人都是我的| 胭脂电视剧| 团风二手房| 年代秀20121207| 束缚游戏在线观看完整免费版| 庄智渊获得亚洲杯男单季军| 禁忌之爱| 电影《恨锁金瓶》电影完整版| 英雄本色免费| 禁忌1980满天星帕克| 《被拒绝的爱》泰剧免费观看| 亲吻姐姐全集| 甜蜜的鞭子电影完整版| 舞出我人生2高清下载| 夫妻交换电影| 土地公土地婆 电视剧| 湄公河大案全集在线观看| 社长秘书在线观看免费版电视剧| 中国航母全cg动画宣传片| 金瓶梅在线看| 木下檀檀| 还珠格格1| 花月佳期| 动漫自走棋| 斗罗大陆高清版免费观看| 锵锵锵锵锵锵锵锵电视剧在线观看| 乡村爱情10全集免费版播放视频| 密室大逃脱第六季在线免费观看 | 汪汪队立大功| 最后的希望| 高压监狱法国在线观看完整免费高清原声奔跑吧 | 重逢丈夫部下初恋| 极乐宝鉴3d国语版在线观看| 法国高压监狱2完整免费高清原声满天星 | 鬼叫春之津津有味| 小菊的春天电视剧全集免费观看| xl司令动漫全集| 铠甲勇士之帝皇侠电影| 飞哥大英雄电视剧全集在线观看 | 王蓉蓉龙凤呈祥| 总统之夜1997满天星版| 喵请许愿在线观看| 丹东市| 奶茶手帐怎么画| 高考一段线二段线什么意思| 特殊美容室待遇.7| 语义错误第二季生肉| 家族的荣誉| 玄女心经2在线观看免费| 中国驻英领馆遭冲闯| 风过留痕 电视剧 在线观看| 《无法抗拒》大结局 | 行尸走肉第三季第三集| 黑白配中文在线观看免费高清电影 | 高清《致命审判》在线观看| 长江七号爱地球全集| 疯狂原始人免费看| 台剧《浪漫女家教》黛比在线观看| 刀郎敢问路在何方| 上错花轿嫁对郎在线观看| 美国式的忌讳愈演愈烈完整版| 《牧神记》全集观看在哪里看| 星梦缘电视剧免费观看| abo成结模拟| 赤坂丽电影未删版在线| 白鹿范丞丞合唱狂恋| 铿锵锵锵锵锵好多少| 新白娘子传奇在线观看| 安乡县| 《善良背后》大结局| 刷子李课件| 奇妙发型屋| 玄女心经免费观看完整版高清| 你莫走原唱| 年轻的小瘦子20| 林由奈jufd467在线播放| 爱的多米诺| 需要妈妈的种子| 卖房子的女销售员1| 电影《霸王别姬》| 《放映》完整版观看| 坎贝奇三部曲《无憾》完整版| 电视剧拳王| 分歧者:异类觉醒| 酒店1-5集免费观看全集| 师傅日徒弟的场景| 孩子王在线观看| 木下凛凛电影免费观看| 广场舞阿哥阿妹背面| 地下偶像在线观看免费高清全集| 爱情公寓11集| 将门嫡女沙场:不输男儿郎短剧全集| 美乃雀替父还债| 银翼杀手2049在线观看| 月半爱丽丝电视剧免费观看完整版| 丰满的继牳3理伦片| 好兆头高清在线观看| 黑皮辣妹是我的兄弟第一季免费 | 高压监狱第二部在线观看完整免费高清原声满天星 | 17se| 高校教师在线观看免费| 飞驰人生1免费观看全集| 白峰电影在线观看免费版第| 《有翡》观看免费完整版| 和女邻居做爰伦理| 墨西哥《瓜达卢佩玫瑰》| 影帝的隐婚妻短剧全集| 强制窃贼| 动漫xl司令第一季全集在线观看完整版 | 电影《无憾》坎贝奇在线观看| 你礼貌吗是什么梗| 独立日 电影| 安拉拉斋主演的电影在线观看免费| 仙剑奇侠传3第14集| 超级女保镖免费观看全集高清| 爱你几何在线看完整版免费高清| 孩奴电视剧免费观看| 锦月如歌电视剧免费观看| 周弘《村姑》在线播放| 张大仙全球首吐| 漂浪青春插曲| 神奇四侠2国语版| 命运交响曲剧情| 北越暴行女民兵免费版在线观看下载 | 虎鹤妖师录动漫免费观看| 樱井莉亚4p无删减在线播放| 神医弃女短剧全集| 四大天王演唱会| 空间神医全集免费| 松药店的儿子们54集| 战狼9欧式少女在线观看全集高清美国 | 科学怪妓电影免费| LX司令第一季动漫免费观看| 黑道风云电视剧全集| 婆婆来了全集| 安娜的妈妈偷看儿子手机是哪一集| 致命打击| 满月的诱惑| 用你的手来打扰我吧第二季在线观看 | 赚他一千万| 仙女湖全集| 死神来了5高清完整版在线观看| 克里斯汀满天星三部曲| 电视诗歌散文| 一站到底檀越是哪一期| 插曲30全集免费观看| 鬼电影在线观看| 女儿情歌曲原唱| 贝拉1980在线观看| 中央元宵节晚会| 超决战!贝利亚银河帝国| 肯兰德桑德兰满天星电影| 战火青春王雷主演| 徐艺真《皇后驾到》| 花与蛇4之牙医诊所| 少林搭棚大师电影国语免费版| 魔女2在哪里能看| 动漫《高柳的花嫁》全集| 借种完整版| 正宗泡菜制作方法教程| 麦乐迪《女超人》2013| 歌曲映山红简谱| 武林女大生| 监狱女兵免费版| 勇敢者游戏1决战丛林在线观看| 铁雨 电影| 插曲30全集免费观看| 《劫匪面前无能的丈夫》| 你的欲梦裸身在线播放| 廉政行动2011电视剧| 电影私人航空免费观看全集高清版下载| 笑咏春粤语| 多乐士油漆广告| 女超人手机在线观看| 魔鬼天使电影| 怒火威龙国语| 台剧黛比女家教在线看| 八角笼中免费观看在线| 死亡笔记1| 渔夫的妻子赛伦| 大江大河第2部免费播放| 电热毯应该铺在哪一层| 欧式少女16集全在线观看优酷下载电影| 高清《我脑中的橡皮擦》高清完整版| 夏家三千金全集第二部| 新乱世佳人小叔吃扔扔扔哪一集| 娼年完整 电影| 双世萌妻| 《女部长通宵的引诱》电影| 年轻的嫂子正版在线观看| 贤妻电视剧全集下载| 希望爸爸播种普通话版| 雍正王朝电视连续剧| 全职高手9高清樱花动漫免费观看| 牡丹江市| 《花开半夏》电视剧| 动画片 葫芦娃| 朴振英 honey| 夫人的嘴唇全集在线观看免费| 奇妙的美发沙龙2| 爱丽丝喜欢的书籍| 锵锵锵免费完整观看| 傅佩荣 易经| 女神宿舍的宿官君| 嘉善县| 插曲的痛60集全剧情介绍| 薄冰电视剧全集免费观看完整版| 我是刑警全集免费观看| 夫妻隔帘按摩BD中字电影| 恶作剧之吻1台湾版| 汉城世界杯主题曲| 站着再来一次第26集免费播放| 短剧爱于燃尽新生免费观看| 火影忍者最新op| 永和县| 法国版《女超人:麦乐迪》 在线观看| 《外出》免费观看完整| 极乐净土原版| 浪漫女家教在线免费观看| 被闺蜜强啪百合小说H| 《灭火宝贝| 高压监狱2无删减1080P| 嫌疑人x的献身日版| 《马向阳下乡记》电视剧| 鬼吹灯之牧野诡事电视剧免费观看| 欧美1一5美国语| 泰罗奥特曼国语版全集| 志在出位电影| 公浮之手中字5年纪大| 掌球财经| 韩国年轻的母年轻线在6| 乡下真千金短剧免费观看| 八戒,八戒神马网剧观看 | 修空调工艳遇在线观看高清| 洪武大案电视剧| 爱我几何莫妮卡原版| 美国式禁忌保罗讳1-4| 朴妮唛kw7142快播| 韩国伦理片爱人| 羊炭疽病| k8s经典版播放| 渴望城市电视剧| 告诉我想要什么| 美丽的小樱桃意大利| 命悬一枪全集观看| 爱情保卫战海霞姐| 大话西游连续剧| 美国wwwwxxxx69| 苏菲亚公主第二季中文版| 四川孃孃51岁拿下电竞冠军| 《需要爸爸播种美国》全名演员表| 英雄虎胆电影| 创造营亚洲第二季| 阴阳镇怪谈电影在线观看完整版| 金银梅5一10日语| 白夜破晓在线观看免费高清版| 猎屠电影在线| 《落魄贵族琉璃川》动漫全集| 三十而立电视剧| 日剧second love| 金瓶梅2下载地址| 一起嗟嗟嗟30分钟免费观看电视剧| 高清《艳色》台湾无删减| 性工具酷刑虐女惨叫小说| 法国满天星《律师事务所》| 年轻母亲在线免费观看| 他其实没那么喜欢你在线观看| 全职法师之超级法神| 禁忌5在线观看电视剧完整版免费| 小姐无删减版电影高清| 霹雳囧花 电影| 海南省| 壮志凌云女版(H)| 高考一段线二段线什么意思| 翁虹演过哪些三影级| 双女任务在线观看免费版完整版| 致命的危机| 幸福最晴天| 致命梦魇在线观看免费完整版高清 | 小敏家42集在线观看| 3d蒲团肉完整版电影| 野花高清在线观看免费3中文 | 足球小将初中篇| 女友母亲双字ID| 电视剧隋唐英雄| 高清钻石王牌 第四季| 范文芳神雕侠侣| 电影《馒头》免费观看全集| 新闻女王国语电视剧在线观看免费| 原来我已经满级了| 大牛影库战狼6欧式少女全部视频| 野花高清在线观看视频播放| 不日成婚| 实力至上主义教室第三季| 《法国空姐2024版》完整版在线播放| 卧龙6驴友收罚单| 点燃我温暖你电视剧在线观看全集| 美容院的待遇在线| 庆余年免费观看网站| 斩神之凡尘神域| 浴室情欲2交换暴露| 泰国暴躁少女航母电影| 新笑傲江湖花絮| 免费全集观看| 无上魔尊短剧免费播放| 男生女生一愁愁愁观看大片| 女部长出差的滋味HD| 蜜桃成熟时33d在线| 濮阳县| 牝教室| 与年轻岳那些年高2828清| 原来我早就无敌了| 美丽妻子替丈夫还债| 陈玉莲《豪门圣女》| 中国母亲电视剧| 旺角黑夜粤语| 《坎贝奇》(品味人生)| 雍正王朝56集免费带字幕| 皇家猎杀| 男人帮电视剧| 浪漫女教师之黛比系列| 巴黎恋人国语版| 写的比较细的开车故事| 斗罗大陆 免费完整版| 买房子的女销售3中字| 完美有多美| 黎明2011红馆演唱会| 密战下载| 《入室暴行3被蹂躏》在线观看| 招摇1到56集全集免费观看| 《八佰》电影免费观看| 牧师讲道2024年最新讲道视频| 需要爸爸播种子在线观看,正在播放《需要爸爸播种子》在线观看HD中字_无极影视 | 战狼8日本| 《灌篮高手》大电影| 评书三国演义袁阔成下载| 一家不说两家话| 男按摩在线观看中文字幕| 乡村爱情小夜曲在线观看| 简言的夏冬在线观看| 荷东第一集| 麦乐迪父亲和女儿| 暮光之城2迅雷下载| 古惑仔胜者为王国语高清 | 绝代双骄在线观看| 旖旎婚色短剧大结局免费观看全集| 电视剧文成公主| 已婚妇女的下午| 萌学园3| 电影失眠| 寒尽归来短剧免费观看| 美容院特殊待遇1| 好妈妈8全集在线观看| 《731部队》电影完整版| 一门三司令在线观看 | 华晨宇打响内娱反黄牛第一枪| 金瓶梅电视剧全集电视剧| 北越暴行3全集免费看| 杜淳说绝不允许女儿出国上学| 同学两亿岁全集免费可以看| 魔镜号街头中文字幕免费完整版 | 一人之下第六季| 慕海情深 电视剧泰剧在线观看| m7全英雄战记优酷| 电影丁度《开放的心》| 隋唐英雄传三| 欢乐课程| 时光倒流七十年电影免费观看| 三年大全国语版免费观看| 血战钢锯岭在线观看| 兵团岁月电视剧|