久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5100|回復: 5
打印 上一主題 下一主題
收起左側

基于新唐M0內核的智能空氣檢測儀程序設計

[復制鏈接]
跳轉到指定樓層
樓主
NuMicro® NUC131系列特色為寬電壓工作范圍2.5V至5.5V, 工作溫度: -40℃至105℃, 內建22.1184MHz高精度晶振(1%準確度)。 備有豐富的外設, 如CAN2.0A/B, 定時器, 看門狗定時器,多組UART, SPI, I2C, PWM, 12位ADC, 模擬比較器等.提供多種包裝 LQFP48, LQFP64。
1.lcd段碼屏顯示
2.傳感器部分:溫濕度  SHT31  PM2.5: 四方光電  PM2008  CO2 : CM1106  TVOC傳感器
3.4路觸摸按鍵:  經典算法 : 長按 短按  持續按鍵  復合按鍵
5,慶科wifi模塊 串口通信
6.鋰電池 充電 升壓 二合一
7.設備聯控:采用標準的MOSBUS RTU 協議


單片機源程序如下:
  1. /**************************************************************************//**
  2. * @file     main.c
  3. * @version  V2.00
  4. * $Revision: 5 $
  5. * $Date: 15/01/16 11:44a $
  6. * @brief    Implement timer counting in periodic mode.
  7. * @note
  8. * Copyright (C) 2013 Nuvoton Technology Corp. All rights reserved.
  9. ******************************************************************************/
  10. #include        "define.H"

  11. #define PLL_CLOCK           50000000

  12. /*---------------------------------------------------------------------------------------------------------*/
  13. /* Global Interface Variables Declarations                                                                 */
  14. /*---------------------------------------------------------------------------------------------------------*/
  15. volatile uint32_t g_au32TMRINTCount[4] = {0};

  16. uint8_t PwmIO_count;


  17. uint16_t        PM_value;
  18. uint16_t        CO2_value;
  19. uint16_t        HCHO_value;

  20. #if 0
  21. /*
  22. V003 2019-03-02
  23. 1,Power on and power off button change to touch leave control,
  24.     perviously is short press control.
  25. 2.WIFI COM temperture,perviously version PCBA send indoor temperture,
  26.    modified to send inlet air temperature.

  27.    
  28. V009 2019-05-25
  29. 1.Add DS1302 RTC
  30. 2.Adjust the GPIO with 20190325 schematic

  31. V010 2019-05-29
  32. 1.Set PM2.5 value 999 up  limit
  33. 2.Modify the button sequence except child lock.
  34. */
  35. #endif


  36. /**
  37. * @brief       Timer0 IRQ
  38. *
  39. * @param       None
  40. *
  41. * @return      None
  42. *
  43. * @details     The Timer0 default IRQ, declared in startup_NUC131.s.
  44. */
  45. void TMR0_IRQHandler(void)
  46. {
  47.     if(TIMER_GetIntFlag(TIMER0) == 1)
  48.     {
  49.         /* Clear Timer0 time-out interrupt flag */
  50.         TIMER_ClearIntFlag(TIMER0);
  51.                 if(Time.t_1ms==0)
  52.                 {
  53.                         Time.t_1ms=10;
  54.                         F_10ms=1;
  55.                         Time_handler();
  56.                 }
  57.                 Time.t_1ms--;
  58.                 F_1ms=1;
  59.                 if (++PwmIO_count > 14)
  60.                         PwmIO_count = 0;
  61.                 if (PwmIO_set > PwmIO_count)
  62.                         LedCom_pin = 1;
  63.                 else
  64.                         LedCom_pin = 0;
  65.         //        LedCom_pin=1;
  66.     }
  67. }

  68. /**
  69. * @brief       Timer1 IRQ
  70. *
  71. * @param       None
  72. *
  73. * @return      None
  74. *
  75. * @details     The Timer1 default IRQ, declared in startup_NUC131.s.
  76. */
  77. void TMR1_IRQHandler(void)
  78. {
  79.     if(TIMER_GetIntFlag(TIMER1) == 1)
  80.     {
  81.         /* Clear Timer1 time-out interrupt flag */
  82.         
  83.         g_au32TMRINTCount[1]++;
  84.     }
  85. }

  86. /**
  87. * @brief       Timer2 IRQ
  88. *
  89. * @param       None
  90. *
  91. * @return      None
  92. *
  93. * @details     The Timer2 default IRQ, declared in startup_NUC131.s.
  94. */
  95. void TMR2_IRQHandler(void)
  96. {
  97.     if(TIMER_GetIntFlag(TIMER2) == 1)
  98.     {
  99.         /* Clear Timer2 time-out interrupt flag */
  100.         TIMER_ClearIntFlag(TIMER2);
  101.                 TIMER_ClearIntFlag(TIMER1);
  102.                 if(Buzz.B_Buzzer_Model)
  103.                 {
  104.                         if(Buzz_Frec_pin)
  105.                                 Buzz_Frec_pin=0;
  106.                         else
  107.                                 Buzz_Frec_pin=1;
  108.                 }
  109.     }
  110. }

  111. /**
  112. * @brief       Timer3 IRQ
  113. *
  114. * @param       None
  115. *
  116. * @return      None
  117. *
  118. * @details     The Timer3 default IRQ, declared in startup_NUC131.s.
  119. */
  120. void TMR3_IRQHandler(void)
  121. {
  122.     if(TIMER_GetIntFlag(TIMER3) == 1)
  123.     {
  124.         /* Clear Timer3 time-out interrupt flag */
  125.         TIMER_ClearIntFlag(TIMER3);

  126.         g_au32TMRINTCount[3]++;
  127.     }
  128. }

  129. #if 0
  130. void SYS_Init(void)
  131. {
  132.     /*---------------------------------------------------------------------------------------------------------*/
  133.     /* Init System Clock                                                                                       */
  134.     /*---------------------------------------------------------------------------------------------------------*/
  135.     /* Enable HIRC clock */
  136.     CLK_EnableXtalRC(CLK_PWRCON_IRC22M_EN_Msk);

  137.     /* Waiting for HIRC clock ready */
  138.     CLK_WaitClockReady(CLK_CLKSTATUS_IRC22M_STB_Msk);

  139.     /* Switch HCLK clock source to HIRC */
  140.     CLK_SetHCLK(CLK_CLKSEL0_HCLK_S_HIRC, CLK_CLKDIV_HCLK(1));

  141.     /* Enable HXT */
  142. //    CLK_EnableXtalRC(CLK_PWRCON_XTL12M_EN_Msk);

  143.     /* Waiting for clock ready */
  144. //    CLK_WaitClockReady(CLK_CLKSTATUS_XTL12M_STB_Msk);

  145.     /* Set core clock as PLL_CLOCK from PLL and SysTick source to HCLK/2*/
  146.     CLK_SetCoreClock(PLL_CLOCK);
  147.     CLK_SetSysTickClockSrc(CLK_CLKSEL0_STCLK_S_HCLK_DIV2);

  148.     /* Enable peripheral clock */
  149.     CLK_EnableModuleClock(UART0_MODULE);
  150. //   CLK_EnableModuleClock(UART4_MODULE);
  151.     CLK_EnableModuleClock(TMR0_MODULE);
  152.     CLK_EnableModuleClock(TMR1_MODULE);
  153.     CLK_EnableModuleClock(TMR2_MODULE);
  154.     CLK_EnableModuleClock(TMR3_MODULE);

  155.     /* Peripheral clock source *///CLK_CLKSEL1_UART_S_PLL
  156.     CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  157. //   CLK_SetModuleClock(UART4_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  158.     CLK_SetModuleClock(TMR0_MODULE, CLK_CLKSEL1_TMR0_S_HIRC, 0);
  159.     CLK_SetModuleClock(TMR1_MODULE, CLK_CLKSEL1_TMR0_S_HIRC, 0);
  160.     CLK_SetModuleClock(TMR2_MODULE, CLK_CLKSEL1_TMR2_S_HIRC, 0);
  161.     CLK_SetModuleClock(TMR3_MODULE, CLK_CLKSEL1_TMR3_S_HIRC, 0);

  162.     /*---------------------------------------------------------------------------------------------------------*/
  163.     /* Init I/O Multi-function                                                                                 */
  164.     /*---------------------------------------------------------------------------------------------------------*/
  165.     /* Set PB multi-function pins for UART0 RXD, TXD */
  166.                 /* Set GPB multi-function pins for UART0 RXD(PB.0) and TXD(PB.1) */
  167.     SYS->GPB_MFP &= ~(SYS_GPB_MFP_PB0_Msk | SYS_GPB_MFP_PB1_Msk);
  168.     SYS->GPB_MFP |= SYS_GPB_MFP_PB0_UART0_RXD | SYS_GPB_MFP_PB1_UART0_TXD;
  169.                
  170.         //        SYS->GPB_MFP &= ~(SYS_GPC_MFP_PC7_Msk | SYS_GPC_MFP_PC6_Msk);
  171.         //        SYS->GPB_MFP |= SYS_GPC_MFP_PC7_UART4_RXD | SYS_GPC_MFP_PC6_UART4_TXD;
  172. }
  173. #endif

  174. void SYS_Init(void)
  175. {
  176.         /*---------------------------------------------------------------------------------------------------------*/
  177.         /* Init System Clock                                                                                       */
  178.         /*---------------------------------------------------------------------------------------------------------*/

  179.         /* Enable Internal RC 22.1184MHz clock */
  180.         CLK_EnableXtalRC(CLK_PWRCON_OSC22M_EN_Msk);

  181.         /* Waiting for Internal RC clock ready */
  182.         CLK_WaitClockReady(CLK_CLKSTATUS_OSC22M_STB_Msk);

  183.         /* Switch HCLK clock source to Internal RC and HCLK source divide 1 */
  184.         CLK_SetHCLK(CLK_CLKSEL0_HCLK_S_HIRC, CLK_CLKDIV_HCLK(1));

  185.         /* Enable external XTAL 12MHz clock */
  186.         //    CLK_EnableXtalRC(CLK_PWRCON_XTL12M_EN_Msk);

  187.         /* Waiting for external XTAL clock ready */
  188.         //    CLK_WaitClockReady(CLK_CLKSTATUS_XTL12M_STB_Msk);

  189.         /* Set core clock as PLL_CLOCK from PLL */
  190.         CLK_SetCoreClock(PLL_CLOCK);

  191.         /* Enable UART module clock */
  192.         CLK_EnableModuleClock(UART0_MODULE);
  193.         CLK_EnableModuleClock(UART1_MODULE);
  194.         CLK_EnableModuleClock(UART2_MODULE);
  195.         CLK_EnableModuleClock(UART3_MODULE);
  196.         CLK_EnableModuleClock(UART4_MODULE);
  197.         CLK_EnableModuleClock(TMR0_MODULE);
  198.         CLK_EnableModuleClock(TMR1_MODULE);
  199.         CLK_EnableModuleClock(TMR2_MODULE);
  200.         CLK_EnableModuleClock(TMR3_MODULE);

  201.         /* Select UART module clock source */
  202.         // CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART_S_HXT, CLK_CLKDIV_UART(1));

  203.         /* Select UART module clock source */
  204.         CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  205.         CLK_SetModuleClock(UART1_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  206.         CLK_SetModuleClock(UART2_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  207.         CLK_SetModuleClock(UART3_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  208.         CLK_SetModuleClock(UART4_MODULE, CLK_CLKSEL1_UART_S_HIRC, CLK_CLKDIV_UART(1));
  209.                
  210.         CLK_SetModuleClock(TMR0_MODULE, CLK_CLKSEL1_TMR0_S_HIRC, 0);
  211.         CLK_SetModuleClock(TMR1_MODULE, CLK_CLKSEL1_TMR0_S_HIRC, 0);
  212.         CLK_SetModuleClock(TMR2_MODULE, CLK_CLKSEL1_TMR2_S_HIRC, 0);
  213.         CLK_SetModuleClock(TMR3_MODULE, CLK_CLKSEL1_TMR3_S_HIRC, 0);
  214.        
  215.         /* Enable ADC module clock */
  216.     CLK_EnableModuleClock(ADC_MODULE);
  217.         /* ADC clock source is 22.1184MHz, set divider to 7, ADC clock is 22.1184/7 MHz */
  218.     CLK_SetModuleClock(ADC_MODULE, CLK_CLKSEL1_ADC_S_HIRC, CLK_CLKDIV_ADC(7));
  219.         /*---------------------------------------------------------------------------------------------------------*/
  220.         /* Init I/O Multi-function                                                                                 */
  221.         /*---------------------------------------------------------------------------------------------------------*/

  222.         /* Set GPB multi-function pins for UART0 RXD(PB.0) and TXD(PB.1) */
  223.         SYS->GPB_MFP &= ~(SYS_GPB_MFP_PB0_Msk | SYS_GPB_MFP_PB1_Msk);
  224.         SYS->GPB_MFP |= SYS_GPB_MFP_PB0_UART0_RXD | SYS_GPB_MFP_PB1_UART0_TXD;

  225. //        SYS->GPB_MFP &= ~(SYS_GPB_MFP_PB4_Msk | SYS_GPB_MFP_PB5_Msk);
  226. //        SYS->GPB_MFP |= SYS_GPB_MFP_PB4_UART1_RXD | SYS_GPB_MFP_PB5_UART1_TXD;

  227.         SYS->GPB_MFP &= ~(  SYS_GPB_MFP_PB5_Msk);
  228.         SYS->GPB_MFP |=   SYS_GPB_MFP_PB5_UART1_TXD;

  229.         SYS->GPD_MFP &= ~(SYS_GPD_MFP_PD14_Msk | SYS_GPD_MFP_PD15_Msk);
  230.         SYS->GPD_MFP |= SYS_GPD_MFP_PD14_UART2_RXD | SYS_GPD_MFP_PD15_UART2_TXD;

  231. //        SYS->GPA_MFP &= ~(SYS_GPA_MFP_PA3_Msk | SYS_GPA_MFP_PA2_Msk);
  232. //        SYS->GPA_MFP |= SYS_GPA_MFP_PA3_UART3_RXD | SYS_GPA_MFP_PA2_UART3_TXD;

  233.         SYS->ALT_MFP4 &= ~(SYS_ALT_MFP4_PA5_Msk | SYS_ALT_MFP4_PA6_Msk);
  234.         SYS->ALT_MFP4 |= SYS_ALT_MFP4_PA5_UART3_RXD | SYS_ALT_MFP4_PA6_UART3_TXD;
  235.         SYS->GPA_MFP &= ~(SYS_GPA_MFP_PA5_Msk | SYS_GPA_MFP_PA6_Msk);
  236.         SYS->GPA_MFP |= SYS_GPA_MFP_PA5_UART3_RXD | SYS_GPA_MFP_PA6_UART3_TXD;
  237.        
  238.         SYS->GPC_MFP &= ~(SYS_GPC_MFP_PC7_Msk | SYS_GPC_MFP_PC6_Msk);
  239.         SYS->GPC_MFP |= SYS_GPC_MFP_PC7_UART4_RXD | SYS_GPC_MFP_PC6_UART4_TXD;
  240.         /*
  241.         SYS->GPF_MFP &= ~(SYS_GPF_MFP_PF0_Msk | SYS_GPF_MFP_PF1_Msk);
  242.         SYS->GPF_MFP |= SYS_GPF_MFP_PF0_GPIO | SYS_GPF_MFP_PF1_GPIO; */
  243.          /* Configure the GPA0 - GPA3 ADC analog input pins */
  244.     SYS->GPA_MFP &= ~( SYS_GPA_MFP_PA7_Msk ) ;
  245.     SYS->GPA_MFP |=  SYS_GPA_MFP_PA7_ADC7;
  246. }

  247. void GPIO_Init(void)
  248. {
  249.         #if 0
  250.         GPIO_SetMode(PC, BIT6, GPIO_PMD_OUTPUT);//UART4 TX
  251.         PC6=0;
  252.         GPIO_SetMode(PA, BIT6, GPIO_PMD_OUTPUT);//UART4 TX
  253.         PA6=0;
  254.         GPIO_SetMode(PB, BIT1, GPIO_PMD_OUTPUT);//UART4 TX
  255.         PB1=0;
  256. #endif
  257.         GPIO_SetMode(PA,BIT1,GPIO_PMD_OUTPUT);//Sensor power
  258.         GPIO_SetMode(PA,BIT12,GPIO_PMD_OUTPUT);//SW485
  259.         GPIO_SetMode(PA,BIT13,GPIO_PMD_OUTPUT);//BackLight
  260.         GPIO_SetMode(PA,BIT2,GPIO_PMD_INPUT);//KEY
  261.         GPIO_SetMode(PA,BIT3,GPIO_PMD_INPUT);
  262.         GPIO_SetMode(PA,BIT4,GPIO_PMD_INPUT);
  263.        
  264.         GPIO_SetMode(PA,BIT14,GPIO_PMD_OUTPUT);//Led Com
  265.         GPIO_SetMode(PC,BIT0,GPIO_PMD_OUTPUT);//Led
  266.         GPIO_SetMode(PC,BIT1,GPIO_PMD_OUTPUT);//Led
  267.         GPIO_SetMode(PC,BIT2,GPIO_PMD_OUTPUT);//Led
  268.         GPIO_SetMode(PC,BIT3,GPIO_PMD_OUTPUT);//Led
  269.        
  270.         GPIO_SetMode(PB,BIT3,GPIO_PMD_OUTPUT);//Buzz`
  271.         GPIO_SetMode(PD,BIT6,GPIO_PMD_OUTPUT);//Buzz
  272.         GPIO_SetMode(PD,BIT7,GPIO_PMD_OUTPUT);//Sensor power
  273.         GPIO_SetMode(PB,BIT2,GPIO_PMD_OUTPUT);//WIFI power
  274.         GPIO_SetMode(PB,BIT12,GPIO_PMD_INPUT);//CHG
  275.        
  276.         GPIO_SetMode(PB,BIT15,GPIO_PMD_OUTPUT);//1302
  277.         GPIO_SetMode(PF,BIT1,GPIO_PMD_OUTPUT);//1302
  278.         GPIO_SetMode(PF,BIT0,GPIO_PMD_OUTPUT);//1302
  279.         WIFI_EN();
  280.         PA14=1;
  281.        
  282.         Led_pin1 = 0;
  283.         Led_pin2 = 0;
  284.         Led_pin3 = 0;
  285.         Led_pin4 = 0;
  286. //        PD7 = 1;
  287.        
  288.         /* Led_pin1=0;
  289.         Led_pin2=0;
  290.         Led_pin3=0;
  291.         Led_pin4=0; */
  292.        
  293.         //GPIO_SetMode(PB,BIT12,GPIO_PMD_OUTPUT);//TEST`
  294.         SW485_DIS();
  295. }





  296. uint8_t  Adc_Cnt;
  297. uint32_t Adc_buffer2;
  298. uint32_t Adc_buffer1;
  299. uint16_t VBatMv=0;


  300. void ADC_Init(void)
  301. {
  302.         ADC_Open(ADC, ADC_ADCR_DIFFEN_SINGLE_END, ADC_ADCR_ADMD_CONTINUOUS, 0x80);

  303.         /* Power on ADC module */
  304.         ADC_POWER_ON(ADC);

  305.         /* Clear the A/D interrupt flag for safe */
  306.         ADC_CLR_INT_FLAG(ADC, ADC_ADF_INT);
  307.        
  308.         /* Start A/D conversion */
  309.         ADC_START_CONV(ADC);
  310. }



  311. void ADC_Scan(void)
  312. {
  313.         /* Clear the A/D interrupt flag for safe */
  314. //        ADC_CLR_INT_FLAG(ADC, ADC_ADF_INT);

  315.         /* Start A/D conversion */
  316. //        ADC_START_CONV(ADC);
  317.        
  318.         /* Wait conversion done */
  319. //        while(!ADC_GET_INT_FLAG(ADC, ADC_ADF_INT));

  320.         /* Clear the A/D interrupt flag for safe */
  321.         ADC_CLR_INT_FLAG(ADC, ADC_ADF_INT);

  322.         Adc_buffer1+=ADC_GET_CONVERSION_DATA(ADC,7);
  323.        
  324.         if(++Adc_Cnt<149)
  325.                 return;

  326.                 Adc_buffer2=Adc_buffer1;
  327.                 Adc_Cnt=0;
  328.                 Adc_buffer1=0;
  329.                
  330.                 if(VBatMv==0)
  331.                 {
  332.                         VBatMv=Adc_buffer2/64;
  333.                 }
  334.                 else
  335.                 {
  336.                         VBatMv+=Adc_buffer2/64;
  337.                         VBatMv/=2;
  338.                 }
  339. }





  340. /*---------------------------------------------------------------------------------------------------------*/
  341. /*  MAIN function                                                                                          */
  342. /*---------------------------------------------------------------------------------------------------------*/
  343. int main(void)
  344. {
  345.     volatile uint32_t u32InitCount;

  346.     /* Unlock protected registers */
  347.     SYS_UnlockReg();

  348.     /* Init System, peripheral clock and multi-function I/O */
  349.     SYS_Init();

  350.     /* Lock protected registers */
  351.     SYS_LockReg();

  352.     /* Init UART0 for printf */
  353.         UART0_Init();
  354.         UART1_Init();
  355.         UART2_Init();
  356.         UART3_Init();
  357.         UART4_Init();
  358.        
  359.         GPIO_Init();
  360.         TVOC_init();
  361.         IIC_Init();
  362.         InitCHM_01A();
  363.         PA13=1;
  364.         Rtc_init();
  365.         Init_DS1302();

  366.     /* Open Timer0 in periodic mode, enable interrupt and 1 interrupt tick per second */
  367.     TIMER_Open(TIMER0, TIMER_PERIODIC_MODE, 1000);
  368.     TIMER_EnableInt(TIMER0);

  369.     /* Open Timer1 in periodic mode, enable interrupt and 2 interrupt ticks per second */
  370.     TIMER_Open(TIMER1, TIMER_PERIODIC_MODE, 2);
  371.     TIMER_EnableInt(TIMER1);

  372.     /* Open Timer2 in periodic mode, enable interrupt and 4 interrupt ticks per second */
  373.     TIMER_Open(TIMER2, TIMER_PERIODIC_MODE, 4);
  374.     TIMER_EnableInt(TIMER2);

  375.     /* Open Timer3 in periodic mode, enable interrupt and 8 interrupt ticks per second */
  376.     TIMER_Open(TIMER3, TIMER_PERIODIC_MODE, 8);
  377.     TIMER_EnableInt(TIMER3);

  378.     /* Enable Timer0 ~ Timer3 NVIC */
  379.     NVIC_EnableIRQ(TMR0_IRQn);
  380.     NVIC_EnableIRQ(TMR1_IRQn);
  381.     NVIC_EnableIRQ(TMR2_IRQn);
  382.     NVIC_EnableIRQ(TMR3_IRQn);

  383.     /* Start Timer0 ~ Timer3 counting */
  384.     TIMER_Start(TIMER0);
  385.     TIMER_Start(TIMER1);
  386.     TIMER_Start(TIMER2);
  387.     TIMER_Start(TIMER3);

  388.         SetTemp=25;
  389.         SetHum=50;
  390.         ADC_Init();
  391.         Init1729();
  392.         WriteDDRAM();
  393.         WriteDDRAM();
  394. //        WriteDDRAM();
  395. //        Buzz.B_Buzzer_Model=1;
  396.         UART_ClearIntFlag(UART1, UART_ISR_DATWKIF_Msk | UART_ISR_CTSWKIF_Msk | UART_ISR_BUF_ERR_INT_Msk|
  397.                 UART_ISR_MODEM_INT_Msk| UART_ISR_RLS_INT_Msk);
  398.                
  399.         UART_EnableInt(UART0, (UART_IER_RDA_IEN_Msk));
  400.         UART_EnableInt(UART1, (UART_IER_RDA_IEN_Msk));
  401. ……………………

  402. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

所有資料51hei提供下載:
Airbox_190525.7z (2.17 MB, 下載次數: 34)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:347467 發表于 2019-12-9 15:40 | 只看該作者
謝謝分享。
回復

使用道具 舉報

板凳
ID:188945 發表于 2019-12-11 10:59 | 只看該作者
謝謝分享
回復

使用道具 舉報

地板
ID:421595 發表于 2019-12-18 08:47 | 只看該作者
本帖最后由 舞者人生 于 2019-12-19 08:24 編輯

參考學習一下,原理圖看不清楚,能不給出清晰版的
回復

使用道具 舉報

5#
ID:421595 發表于 2019-12-19 08:14 | 只看該作者
學習參考
回復

使用道具 舉報

6#
ID:70490 發表于 2020-6-4 20:53 | 只看該作者
參考學習一下,就是原理圖看不清楚
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线播放国产一区二区三区 | 国产成人精品免费视频大全最热 | 在线小视频 | 久草视频在线播放 | 老头搡老女人毛片视频在线看 | 日韩精品一区二区三区 | 青青草精品视频 | 宅男噜噜噜66一区二区 | 伦理二区 | 一区二区三区精品在线视频 | 久久99一区二区 | 久久久久亚洲精品 | 色偷偷噜噜噜亚洲男人 | 免费视频一区二区 | 久久久久久高潮国产精品视 | 91在线观看视频 | 国产精品1区 | 天堂一区| 黄色a三级 | 成年人免费看 | 欧美激情久久久 | 亚洲精品一区中文字幕乱码 | 日本久久综合网 | 日韩精品一区二区三区免费视频 | 成人高清网站 | 二区在线观看 | 欧美日韩第一页 | 国产精品久久久久久婷婷天堂 | 亚洲欧美一区二区三区国产精品 | 久久一区二区视频 | 日韩视频一区二区 | 中文字幕在线观看视频一区 | 亚洲视频在线观看 | 亚洲国产精选 | 久久精品91| 国产精品高潮呻吟久久aⅴ码 | 91 在线| 欧美日韩在线观看一区二区三区 | 一级毛片视频 | 97国产爽爽爽久久久 | 四虎影院免费在线 |