CÅÌÇå³ýÀ¬»øÎļþ¹¤¾ßÖÆ×÷

本文介绍了一种通过批处理脚本高效清理Windows系统中临时和垃圾文件的方法。该脚本可以删除包括.tmp、._mp、.log等在内的多种类型的临时文件,并清空回收站及系统缓存文件夹。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

CÅÌÇå³ýÀ¬»øÎļþ
ÔÚµçÄÔÆÁÄ»µÄ×óϽǰ´¡°¿ªÊ¼¡ú³ÌÐò¡ú¸½¼þ¡ú¼Çʱ¾¡±£¬°ÑÏÂÃæµÄÎÄ×Ö¸´ÖƽøÈ¥,µã¡°Áí´æÎª¡±£¬Â·¾¶Ñ¡¡°×ÀÃæ¡±£¬±£´æÀàÐÍΪ¡°ËùÓÐÎļþ¡±£¬ÎļþÃûΪ¡°Çå³ýϵͳLJ.bat¡±£¬¾ÍÍê³ÉÁË¡£¼Çסºó׺ÃûÒ»¶¨ÒªÊÇ.bat£¬ok£¡ÄãµÄÀ¬»øÇå³ýÆ÷¾ÍÕâÑùÖÆ×÷³É¹¦ÁË£¡ Ë«»÷Ëü¾ÍÄÜºÜ¿ìµØÇåÀíÀ¬»øÎļþ£¬´óÔ¼Ò»·ÖÖÓ²»µ½¡£
======¾ÍÊÇÏÂÃæµÄÎÄ×Ö(ÕâÐв»Óø´ÖÆ)=============================
@echo off
echo ÕýÔÚÇå³ýϵͳÀ¬»øÎļþ£¬ÇëÉÔµÈ......
del /f /s /q %systemdrive%\*.tmp
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.log
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
rd /s /q %windir%\temp & md %windir%\temp
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo Çå³ýϵͳLJÍê³É£¡
echo. & pause
=====µ½ÕâÀïΪֹ(ÕâÐв»Óø´ÖÆ)==============================================
ÒÔºóֻҪ˫»÷ÔËÐиÃÎļþ£¬µ±ÆÁÄ»Ìáʾ¡°Çå³ýϵͳLJÍê³É£¡¾Í»¹ÄãÒ»¸ö¡°ÃçÌõ¡±µÄϵͳÁË£¡£¡µ½Ê±ºòÔÙ¿´¿´ÄãµÄµçÄÔ£¬ÊDz»ÊǼ±ËÙÈç·ÉÄØ£¿¿É±ðÍüÁË»ØÌûร¡
×¢£ºLJ¾ÍÊÇÀ¬»øµÄÒâ˼£¡ÕâÕбÈÄÇЩËùνµÄÓÅ»¯´óʦºÃÓã¡×îÖØÒªµÄÊÇÎÞÂÛÔÚ¹«Ë¾Ä¬ÈϵÄϵͳ»·¾³»¹ÊÇÔÚ×Ô¼º¼ÒÖеĵçÄÔ¶¼²»»áÆÆ»µÏµÍ³Îļþ¡£
优化这个代码的处理速度Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim filePath As String Dim wb1 As Workbook, wb2 As Workbook Dim ws1 As Worksheet, ws2 As Worksheet Dim keyword1 As Variant, keyword2 As Variant Dim lastRow As Long, visibleRows As Long If Target.Column = 3 And Target.Row > 1 Then Cancel = True keyword1 = Target.Value keyword2 = Cells(Target.Row, 1).Value If IsEmpty(keyword1) Or IsEmpty(keyword2) Then MsgBox "ËùÑ¡µ¥Ôª¸ñÄÚÈݲ»ÄÜΪ¿Õ!", vbExclamation Exit Sub End If ' path filePath = "C:\Users\Katniss.Xie\OneDrive - Taikoo Engine Services (Xiamen) Company Limited\Excel Version - Production\SO list-Brg.xlsm" On Error Resume Next Dim localPath As String localPath = GetLocalFilePath(filePath) If localPath = "" Then localPath = filePath End If On Error GoTo 0 ' ´ò¿ª±í¸ñ2 Application.ScreenUpdating = False Application.DisplayAlerts = False On Error GoTo ErrorHandler ' ³¢ÊÔ´ò¿ª¹¤×÷²¾ Set wb2 = Workbooks.Open(localPath, ReadOnly:=True) Set ws2 = wb2.Sheets("ZEGST001") ' Çå³ýÏÖÓÐɸѡ If ws2.AutoFilterMode Then ws2.AutoFilterMode = False End If ' »ñÈ¡±í¸ñ2µÄ×îºóÒ»ÐÐ lastRow = ws2.Cells(ws2.Rows.Count, 1).End(xlUp).Row ' ÉèÖÃɸѡÌõ¼þ ws2.Range("A1").AutoFilter ' ɸѡBÁУ¨Óë±í¸ñ1µÄFÁÐÆ¥Å䣩 ws2.Range("A1").AutoFilter Field:=2, Criteria1:=keyword1 ' ɸѡDÁУ¨Óë±í¸ñ1µÄAÁÐÆ¥Å䣩 ws2.Range("A1").AutoFilter Field:=4, Criteria1:=keyword2 ' ¼ì²éÊÇ·ñÓÐÆ¥ÅäµÄ¼Ç¼ On Error Resume Next visibleRows = ws2.Range("B2:B" & lastRow).SpecialCells(xlCellTypeVisible).Cells.Count On Error GoTo ErrorHandler If visibleRows > 0 Then ' ÕÒµ½Æ¥Åä¼Ç¼£¬Ìø×ªµ½±í¸ñ2²¢Ñ¡ÖеÚÒ»Ìõ¼Ç¼ Dim firstVisibleRow As Long For firstVisibleRow = 2 To lastRow If Not ws2.Rows(firstVisibleRow).Hidden Then ws2.Rows(firstVisibleRow).Select ws2.Activate Exit For End If Next firstVisibleRow Else ' δÕÒµ½Æ¥Åä¼Ç¼£¬¹Ø±Õ±í¸ñ2²¢Ìáʾ wb2.Close SaveChanges:=False MsgBox "No data", vbInformation End If CleanUp: Application.DisplayAlerts = True Application.ScreenUpdating = True Exit Sub ErrorHandler: ' ´íÎó´¦Àí£º¹Ø±ÕÒÑ´ò¿ªµÄ¹¤×÷²¾²¢ÏÔʾ´íÎóÐÅÏ¢ If Not wb2 Is Nothing Then wb2.Close SaveChanges:=False End If MsgBox "´¦Àí¹ý³ÌÖгöÏÖ´íÎó: " & Err.Description, vbCritical Resume CleanUp End If End Sub Function GetLocalFilePath(onedrivePath As String) As String ' ½«OneDrive·¾¶×ª»»Îª±¾µØÂ·¾¶ ' ×¢Ò⣺´Ëº¯Êý¿ÉÄÜÎÞ·¨´¦ÀíËùÓÐÇé¿ö£¬¾ßÌåÈ¡¾öÓÚOneDriveͬ²½ÉèÖà On Error Resume Next ' ³¢ÊÔ½âÎöURL»ñÈ¡ÎļþÃû Dim fileName As String Dim parts() As String parts = Split(onedrivePath, "/") fileName = parts(UBound(parts)) ' »ñÈ¡OneDrive±¾µØÍ¬²½Îļþ¼Ð·¾¶ Dim localOneDrivePath As String localOneDrivePath = Environ("USERPROFILE") & "\OneDrive\Îĵµ" ' ¸ù¾Ýʵ¼ÊÇé¿öµ÷Õû ' ¹¹½¨±¾µØÎļþ·¾¶ GetLocalFilePath = localOneDrivePath & "\" & fileName ' ¼ì²éÎļþÊÇ·ñ´æÔÚ If Dir(GetLocalFilePath) = "" Then GetLocalFilePath = "" ' Îļþ²»´æÔÚ£¬·µ»Ø¿Õ×Ö·û´® End If On Error GoTo 0 End Function
最新发布
07-25
#include "sys.h" #include "delay.h" #include "usart.h" #include "includes.h" #include "led.h" /************************************************ ALIENTEK ¾«Ó¢°æSTM32¿ª·¢°åUCOSʵÑé Àý6-1 UCOSIII ÈÎÎñ´´½¨ÓÚɾ³ý ¼¼ÊõÖ§³Ö£ºwww.openedv.com ÌÔ±¦µêÆÌ£ºhttp://eboard.taobao.com ¹Ø×¢Î¢ÐŹ«ÖÚÆ½Ì¨Î¢Ðźţº"ÕýµãÔ­×Ó"£¬Ãâ·Ñ»ñÈ¡STM32×ÊÁÏ¡£ ¹ãÖÝÊÐÐÇÒíµç×ӿƼ¼ÓÐÏÞ¹«Ë¾ ×÷ÕߣºÕýµãÔ­×Ó @ALIENTEK ************************************************/ //UCOSIIIÖÐÒÔÏÂÓÅÏȼ¶Óû§³ÌÐò²»ÄÜʹÓã¬ALIENTEK //½«ÕâЩÓÅÏȼ¶·ÖÅ䏸ÁËUCOSIIIµÄ5¸öϵͳÄÚ²¿ÈÎÎñ //ÓÅÏȼ¶0£ºÖжϷþÎñ·þÎñ¹ÜÀíÈÎÎñ OS_IntQTask() //ÓÅÏȼ¶1£ºÊ±ÖÓ½ÚÅÄÈÎÎñ OS_TickTask() //ÓÅÏȼ¶2£º¶¨Ê±ÈÎÎñ OS_TmrTask() //ÓÅÏȼ¶OS_CFG_PRIO_MAX-2£ºÍ³¼ÆÈÎÎñ OS_StatTask() //ÓÅÏȼ¶OS_CFG_PRIO_MAX-1£º¿ÕÏÐÈÎÎñ OS_IdleTask() /* ΪÁËʵÏÖÁÙ½çÇøµÄ±£»¤£¬UCOSIIIÌṩÁËÁ½¸öºê£ºOS_CRITICAL_ENTER() ºÍOS_CRITICAL_EXIT()¡£ µ±Ò»¸öÈÎÎñ»òÖжϽøÈëÁÙ½çÇøÊ±£¬Ëü±ØÐëµ÷ÓÃOS_CRITICAL_ENTER()ºêÒÔ»ñµÃÁÙ½çÇøµÄ±£»¤¡£ Õâ¸öºê½«½ûÓÃÖжϣ¬ÒÔÈ·±£Ö´ÐÐÁÙ½çÇøµÄ´úÂë²»»á±»ÖжϻòÇÀÕ¼£¬´Ó¶ø±£Ö¤ÁËÁÙ½çÇøµÄÔ­×ÓÐÔ¡£ µ±´úÂëÖ´ÐÐÍê±Ïʱ£¬ÈÎÎñ»òÖжϱØÐëµ÷ÓÃOS_CRITICAL_EXIT()ºêÀ´»Ö¸´Öжϣ¬ÒÔ±ãÆäËûÈÎÎñºÍÖжϿÉÒÔ·ÃÎʹ²Ïí×ÊÔ´²¢Ö´ÐÐËüÃǵĴúÂë¡£ ʹÓÃOS_CRITICAL_ENTER()ºÍOS_CRITICAL_EXIT()ºêÀ´±£»¤ÁÙ½çÇø£¬ ÄÇôÔÚÈÎÎñT1Ö´ÐеÄÕû¸öʱ¼äÄÚ£¬ÖжϽ«±»½ûÓ㬠ÆäËûÈÎÎñ½«²»ÄÜ·ÃÎʹ²Ïí×ÊÔ´²¢ÇÒÁÙ½çÇøµÄ´úÂ뽫ÒÔÔ­×Ó·½Ê½Ö´ÐÐÍê±Ï¡£ ÕâÑù¿ÉÒÔÈ·±£ÁÙ½çÇø´úÂëµÄÕýÈ·ÐÔ£¬±ÜÃ⾺ÕùÌõ¼þºÍÆäËûͬ²½ÎÊÌâ¡£ */ /* ÔÚUCOS IIIÖУ¬ÈÎÎñµÄÖ´ÐÐ˳ÐòÊÇ»ùÓÚÓÅÏȼ¶µ÷¶ÈËã·¨¡£ ÿ¸öÈÎÎñ¶¼ÓÐÒ»¸öÓÅÏȼ¶£¨0µ½255£©£¬¾ßÓиü¸ßÓÅÏȼ¶µÄÈÎÎñ±ÈµÍÓÅÏȼ¶µÄÈÎÎñ¸ü¿ÉÄܵõ½µ÷¶È¡£ UCOS IIIʹÓÃÇÀռʽµ÷¶È£¬ÕâÒâζ×ŵ±ÓÐÒ»¸ö¸ßÓÅÏȼ¶µÄÈÎÎñ¾ÍÐ÷ʱ£¬µ±Ç°ÕýÔÚÖ´ÐеÄÈÎÎñ½«±»Öжϲ¢ÇÒ¸ßÓÅÏȼ¶ÈÎÎñ½«±»Ö´ÐС£ ÕâÈ·±£Á˾ßÓиü¸ßÓÅÏȼ¶µÄÈÎÎñ¿ÉÒÔ¼°Ê±»ñµÃÖ´ÐУ¬±ÜÃⳤʱ¼ä±»µÍÓÅÏȼ¶ÈÎÎñÕ¼Óô¦ÀíÆ÷µÄÇé¿ö·¢Éú¡£ UCOS IIIÈÎÎñµÄÖ´ÐÐÊÇͨ¹ýÉÏÏÂÎÄÇл»ÊµÏֵġ£ ÉÏÏÂÎÄÇл»ÊÇÖ¸½«´¦ÀíÆ÷µÄ״̬´ÓÒ»¸öÈÎÎñ±£´æµ½Äڴ棬Ȼºó½«ÁíÒ»¸öÈÎÎñµÄ×´Ì¬×°ÔØµ½´¦ÀíÆ÷ÖУ¬ÒÔÔÚ²»¼ä¶ÏµÄÇé¿öÏÂת»»ÈÎÎñÖ´ÐС£ µ±Ò»¸öÈÎÎñÐèÒª±»ÖÐֹʱ£¬¼´Ö´ÐÐOS_TaskSuspend()º¯Êýʱ£¬UCOS III´¦ÀíÆ÷»áÖ´ÐÐÒ»¸öÈÎÎñÇл»Öжϲ¢½«¿ØÖÆÈ¨×ªÒƵ½ÁíÒ»¸öÈÎÎñ¡£ ÈÎÎñÇл»Í¨³£·¢ÉúÔÚÒÔÏÂÇé¿öÏ£º µ±ÈÎÎñÖ÷¶¯µ÷ÓÃÁËÈÎÎñ¿ØÖƺ¯Êý£¨ÀýÈ磬OS_Delay()¡¢OS_EventWait()¡¢OS_TaskSuspend()µÈ£©²¢ÍËÈÃCPUʱ£» µ±Ä³¸öÖжϷþÎñ³ÌÐò(ISR)ÔڹؼüÈÎÎñÖ´ÐÐÆÚ¼äÖ´ÐУ¨¼´ÖжÏÓÅÏȼ¶¸ßÓڹؼüÈÎÎñµÄÓÅÏȼ¶£©¡£ */ //¿ªÊ¼ÈÎÎñ£¬´´½¨ÍêÈÎÎñ¶þºÍÈÎÎñÈý¾Íɾ³ý×Ô¼º //ÈÎÎñÓÅÏȼ¶ #define START_TASK_PRIO 3 //ÈÎÎñ¶ÑÕ»´óС #define START_STK_SIZE 128 //ÈÎÎñ¿ØÖÆ¿é OS_TCB StartTaskTCB; //ÈÎÎñ¶ÑÕ» CPU_STK START_TASK_STK[START_STK_SIZE]; //ÈÎÎñº¯Êý void start_task(void *p_arg); ///ÈÎÎñ¶þÁÁµÆ£¬²¢´òÓ¡³öÐÅÏ¢ //ÈÎÎñÓÅÏȼ¶ #define TASK1_TASK_PRIO 4 //ÈÎÎñ¶ÑÕ»´óС #define TASK1_STK_SIZE 128 //ÈÎÎñ¿ØÖÆ¿é OS_TCB Task1_TaskTCB; //ÈÎÎñ¶ÑÕ» CPU_STK TASK1_TASK_STK[TASK1_STK_SIZE]; void task1_task(void *p_arg); ///ÈÎÎñÈý£¬´òÓ¡ÈÎÎñÈýÖ´ÐÐÐÅÏ¢ //ÈÎÎñÓÅÏȼ¶ #define TASK2_TASK_PRIO 5 //ÈÎÎñ¶ÑÕ»´óС #define TASK2_STK_SIZE 128 //ÈÎÎñ¿ØÖÆ¿é OS_TCB Task2_TaskTCB; //ÈÎÎñ¶ÑÕ» CPU_STK TASK2_TASK_STK[TASK2_STK_SIZE]; //ÈÎÎñº¯Êý void task2_task(void *p_arg); volatile u8 key_pressed = 0; volatile u8 current_task = 1; void KEY_Init(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; // ???? GPIO_Init(GPIOA, &GPIO_InitStructure); } void Key_Scan(void) { static u8 key_up = 1; if (key_up && GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)) { delay_ms(20); // ?? if (GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)) { key_up = 0; key_pressed = 1; // ?????? } } else if (!GPIO_ReadInputDataBit(GPIOA, GPIO_Pin_0)) { key_up = 1; } } //Ö÷º¯Êý int main(void) { OS_ERR err; CPU_SR_ALLOC(); SystemInit();//ÓÉÓÚ±¾¹¤³ÌÊÇÓÉstm32f103zet6ÒÆÖ²ËùÀ´£¬Òò´ËÕâÀïÒò¼ÓÈë±¾º¯ÊýÈ·±£delayº¯ÊýÕý³£Ê¹Óà delay_init(); //ʱÖÓ³õʼ»¯ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//ÖжϷÖ×éÅäÖà uart_init(115200); //´®¿Ú³õʼ»¯ LED_Init(); KEY_Init(); // ??????? OSInit(&err); //³õʼ»¯UCOSIII OS_CRITICAL_ENTER(); //½øÈëÁÙ½çÇø //´´½¨¿ªÊ¼ÈÎÎñ OSTaskCreate((OS_TCB * )&StartTaskTCB, //ÈÎÎñ¿ØÖÆ¿é (CPU_CHAR * )"start task", //ÈÎÎñÃû×Ö (OS_TASK_PTR )start_task, //ÈÎÎñº¯Êý (void * )0, //´«µÝ¸øÈÎÎñº¯ÊýµÄ²ÎÊý (OS_PRIO )START_TASK_PRIO, //ÈÎÎñÓÅÏȼ¶ (CPU_STK * )&START_TASK_STK[0], //ÈÎÎñ¶ÑÕ»»ùµØÖ· (CPU_STK_SIZE)START_STK_SIZE/10, //ÈÎÎñ¶ÑÕ»Éî¶ÈÏÞλ (CPU_STK_SIZE)START_STK_SIZE, //ÈÎÎñ¶ÑÕ»´óС (OS_MSG_QTY )0, //ÈÎÎñÄÚ²¿ÏûÏ¢¶ÓÁÐÄܹ»½ÓÊÕµÄ×î´óÏûÏ¢ÊýÄ¿,Ϊ0ʱ½ûÖ¹½ÓÊÕÏûÏ¢ (OS_TICK )0, //µ±Ê¹ÄÜʱ¼äƬÂÖתʱµÄʱ¼äƬ³¤¶È£¬Îª0ʱΪĬÈϳ¤¶È£¬ (void * )0, //Óû§²¹³äµÄ´æ´¢Çø (OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR, //ÈÎÎñÑ¡Ïî (OS_ERR * )&err); //´æ·Å¸Ãº¯Êý´íÎóʱµÄ·µ»ØÖµ OS_CRITICAL_EXIT(); //Í˳öÁÙ½çÇø OSStart(&err); //¿ªÆôUCOSIII } //¿ªÊ¼ÈÎÎñÈÎÎñº¯Êý void start_task(void *p_arg) { OS_ERR err; CPU_SR_ALLOC(); p_arg = p_arg; CPU_Init(); #if OS_CFG_STAT_TASK_EN > 0u OSStatTaskCPUUsageInit(&err); //ͳ¼ÆÈÎÎñ #endif #ifdef CPU_CFG_INT_DIS_MEAS_EN //Èç¹ûʹÄÜÁ˲âÁ¿ÖжϹرÕʱ¼ä CPU_IntDisMeasMaxCurReset(); #endif #if OS_CFG_SCHED_ROUND_ROBIN_EN //µ±Ê¹ÓÃʱ¼äƬÂÖתµÄʱºò //ʹÄÜʱ¼äƬÂÖתµ÷¶È¹¦ÄÜ,ʱ¼äƬ³¤¶ÈΪ1¸öϵͳʱÖÓ½ÚÅÄ£¬¼È1*5=5ms OSSchedRoundRobinCfg(DEF_ENABLED,1,&err); #endif OS_CRITICAL_ENTER(); //½øÈëÁÙ½çÇø //´´½¨TASK1ÈÎÎñ OSTaskCreate((OS_TCB * )&Task1_TaskTCB, (CPU_CHAR * )"Task1 task", (OS_TASK_PTR )task1_task, (void * )0, (OS_PRIO )TASK1_TASK_PRIO, (CPU_STK * )&TASK1_TASK_STK[0], (CPU_STK_SIZE)TASK1_STK_SIZE/10, (CPU_STK_SIZE)TASK1_STK_SIZE, (OS_MSG_QTY )0, (OS_TICK )0, (void * )0, (OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR, (OS_ERR * )&err); //´´½¨TASK2ÈÎÎñ OSTaskCreate((OS_TCB * )&Task2_TaskTCB, (CPU_CHAR * )"task2 task", (OS_TASK_PTR )task2_task, (void * )0, (OS_PRIO )TASK2_TASK_PRIO, (CPU_STK * )&TASK2_TASK_STK[0], (CPU_STK_SIZE)TASK2_STK_SIZE/10, (CPU_STK_SIZE)TASK2_STK_SIZE, (OS_MSG_QTY )0, (OS_TICK )0, (void * )0, (OS_OPT )OS_OPT_TASK_STK_CHK|OS_OPT_TASK_STK_CLR, (OS_ERR * )&err); OS_CRITICAL_EXIT(); //Í˳öÁÙ½çÇø OSTaskDel((OS_TCB*)0,&err); //ɾ³ýstart_taskÈÎÎñ×ÔÉí } // ??1:??PB0(LED0) void task1_task(void *p_arg) { OS_ERR err; while (1) { Key_Scan(); if (key_pressed) { current_task = 2; // ?????2 key_pressed = 0; printf("Switch to Task2\n"); } else { // LED0?? GPIO_SetBits(GPIOB, GPIO_Pin_0); // LED0? OSTimeDlyHMSM(0, 0, 0, 5000, OS_OPT_TIME_HMSM_STRICT, &err); // 500ms GPIO_ResetBits(GPIOB, GPIO_Pin_0); // LED0? OSTimeDlyHMSM(0, 0, 0, 5000, OS_OPT_TIME_HMSM_STRICT, &err); // 500ms } } } void task2_task(void *p_arg) { OS_ERR err; while (1) { Key_Scan(); if (key_pressed) { current_task = 1; // ?????1 key_pressed = 0; printf("Switch back to Task1\n"); } else { // ????2??? // ??:LED1?? GPIO_SetBits(GPIOB, GPIO_Pin_1); // LED1? OSTimeDlyHMSM(0, 0, 0, 5000, OS_OPT_TIME_HMSM_STRICT, &err); // 500ms GPIO_ResetBits(GPIOB, GPIO_Pin_1); // LED1? OSTimeDlyHMSM(0, 0, 0, 5000, OS_OPT_TIME_HMSM_STRICT, &err); // 500ms } } }我现在需要刚开始时B0(任务一)LED闪烁,当按下按键后(A0)给予信息量,使得代码进入(任务二),再次摁下按键,两个任务均不执行
06-06
#include <reg52.h> //°üº¬51µ¥Æ¬»úÏà&sup1;صÄÍ·ÎÄ&frac14;þ #include <intrins.h> #define uint unsigned int //ÖØ¶¨ÒåÎÞ·ûºÅÕûÊýÀàÐÍ #define uchar unsigned char //ÖØ¶¨ÒåÎÞ·ûºÅ×Ö·ûÀàÐÍ uchar code LedShowData[]={0x03,0x9F,0x25,0x0D,0x99, //¶¨ÒåÊýÂë&sup1;ÜÏÔÊ&frac34;Êý&frac34;Ý 0x49,0x41,0x1F,0x01,0x19};//0,1,2,3,4,5,6,7,8,9 uchar code RecvData[]={0x19,0x46,0x15,0x44,0x43,0x40,0x0D,0x0E,0x00,0x0F}; uchar IRCOM[7]; static unsigned int LedFlash; //¶¨ÒåÉÁ¶¯ÆµÂÊ&frac14;ÆÊý±äÁ¿ unsigned char RunFlag=0; //¶¨ÒåÔËÐбêÖ&frac34;λ bit EnableLight=0; //¶¨ÒåÖ¸Ê&frac34;µÆÊ&sup1;ÄÜλ /*************Íê&sup3;É״ָ̬Ê&frac34;µÆ¶¨Òå*************/ sbit S1=P3^2; //¶¨ÒåS1°´&frac14;ü¶Ë¿Ú /*************Íê&sup3;ɵç»ú¿ØÖƶ˿ڶ¨Òå***********/ sbit M1A=P1^2; //¶¨Òåµç»ú1ÕýÏò¶Ë¿Ú sbit M1B=P1^3; //¶¨Òåµç»ú1·´Ïò¶Ë¿Ú sbit M2A=P1^4; //¶¨Òåµç»ú2ÕýÏò¶Ë¿Ú sbit M2B=P1^5; //¶¨Òåµç»ú2·´Ïò¶Ë¿Ú sbit IRIN=P3^3; //¶¨ÒåºìÍâ&frac12;ÓÊÕ¶Ë¿Ú /*********Íê&sup3;ɺìÍâ&frac12;ÓÊն˿ڵ͍Òå*************/ #define ShowPort P0 //¶¨ÒåÊýÂë&sup1;ÜÏÔÊ&frac34;¶Ë¿Ú extern void ControlCar(uchar CarType); //ÉùÃ÷С&sup3;µ¿ØÖÆ×Ó&sup3;ÌÐò void delayms(unsigned char x) //0.14mSÑÓʱ&sup3;ÌÐò { unsigned char i; //¶¨ÒåÁÙʱ±äÁ¿ while(x--) //ÑÓʱʱ&frac14;äÑ­»· { for (i = 0; i<13; i++) {} //14mSÑÓʱ } } void Delay1ms(unsigned int i) { unsigned char j,k; do{ j = 10; do{ k = 50; do{ _nop_(); }while(--k); }while(--j); }while(--i); } void Delay() //¶¨ÒåÑÓʱ×Ó&sup3;ÌÐò { uint DelayTime=30000; //¶¨ÒåÑÓʱʱ&frac14;ä±äÁ¿ while(DelayTime--); //¿ªÊ&frac14;&frac12;øÐÐÑÓʱѭ»· return; //×Ó&sup3;ÌÐò·µ»Ø } void tingzhi() { M1A=0; //&frac12;«M1µç»úA¶Ë&sup3;õÊ&frac14;»¯Îª0 M1B=0; //&frac12;«M1µç»úB¶Ë&sup3;õÊ&frac14;»¯Îª0 M2A=0; //&frac12;«M2µç»úA¶Ë&sup3;õÊ&frac14;»¯Îª0 M2B=0; } void qianjin() { M1A=1; M1B=0; M2A=1; M2B=0; } void houtui() { M1A=0; M1B=1; M2A=0; M2B=1; } void youzhuan() { M1A=1; M1B=0; M2A=0; M2B=1; } void zuozhuan() { M1A=0; M1B=1; M2A=1; M2B=0; } void ControlCar(unsigned char ConType) //¶¨Òåµç»ú¿ØÖÆ×Ó&sup3;ÌÐò { tingzhi(); switch(ConType) //ÅжÏÓû§É趨µç»úÐÎÊ&frac12; { case 1: //ǰ&frac12;ø //ÅжÏÓû§ÊÇ·ñÑ¡ÔñÐÎÊ&frac12;1 { tingzhi(); //&frac12;øÈëǰ&frac12;øÖ®Ç° ÏÈÍ£Ö&sup1;Ò»¶Îʱ&frac14;ä ·ÀÖ&sup1;µç»ú·´ÏòµçÑ&sup1;&sup3;å»÷Ö÷°å µ&frac14;ÖÂϵÍ&sup3;¸´Î» Delay1ms(240); qianjin(); ShowPort=LedShowData[1]; break; } case 2: //ºóÍË //ÅжÏÓû§ÊÇ·ñÑ¡ÔñÐÎÊ&frac12;2 { tingzhi(); //&frac12;øÈëºóÍË֮ǰ ÏÈÍ£Ö&sup1;Ò»¶Îʱ&frac14;ä ·ÀÖ&sup1;µç»ú·´ÏòµçÑ&sup1;&sup3;å»÷Ö÷°å µ&frac14;ÖÂϵÍ&sup3;¸´Î» Delay1ms(240); // LeftLed = 1 ; houtui(); ShowPort=LedShowData[2]; //M2µç»ú·´×ª break; } case 3: //×óת //ÅжÏÓû§ÊÇ·ñÑ¡ÔñÐÎÊ&frac12;3 { tingzhi(); //&frac12;øÈë×óת֮ǰ ÏÈÍ£Ö&sup1;Ò»¶Îʱ&frac14;ä ·ÀÖ&sup1;µç»ú·´ÏòµçÑ&sup1;&sup3;å»÷Ö÷°å µ&frac14;ÖÂϵÍ&sup3;¸´Î» Delay1ms(240); zuozhuan(); ShowPort=LedShowData[3]; //M2µç»úÕýת break; } case 4: //ÓÒת //ÅжÏÓû§ÊÇ·ñÑ¡ÔñÐÎÊ&frac12;4 { tingzhi(); //&frac12;øÈëÓÒת֮ǰ ÏÈÍ£Ö&sup1;Ò»¶Îʱ&frac14;ä ·ÀÖ&sup1;µç»ú·´ÏòµçÑ&sup1;&sup3;å»÷Ö÷°å µ&frac14;ÖÂϵÍ&sup3;¸´Î» Delay1ms(240); youzhuan(); //M1µç»úÕýת ShowPort=LedShowData[4]; //M2µç»ú·´×ª break; } case 5: //Í£Ö&sup1; //ÅжÏÓû§ÊÇ·ñÑ¡ÔñÐÎÊ&frac12;8 { tingzhi(); ShowPort=LedShowData[0]; break; //ÍË&sup3;öµ±Ç°Ñ¡Ôñ } } } void IR_IN() interrupt 2 using 0 //¶¨ÒåINT2ÍⲿÖжϺ¯Êý { unsigned char j,k,N=0; //¶¨ÒåÁÙʱ&frac12;ÓÊÕ±äÁ¿ EX1 = 0; //&sup1;رÕÍⲿÖжÏ,·ÀÖ&sup1;ÔÙÓÐÐźŵ&frac12;´ï delayms(15); //ÑÓʱʱ&frac14;䣬&frac12;øÐкìÍâÏû¶¶ if (IRIN==1) //ÅжϺìÍâÐźÅÊÇ·ñÏûʧ { EX1 =1; //ÍⲿÖжϿª return; //·µ»Ø } while (!IRIN) //µÈIR±äΪ¸ßµçÆ&frac12;£¬Ìø&sup1;ý9msµÄǰµ&frac14;µÍµçÆ&frac12;Ðźš£ { delayms(1); //ÑÓʱµÈ´ý } for (j=0;j<4;j++) //²É&frac14;¯ºìÍâÒ£¿ØÆ÷Êý&frac34;Ý { for (k=0;k<8;k++) //·Ö´Î²É&frac14;¯8λÊý&frac34;Ý { while (IRIN) //µÈ IR ±äΪµÍµçÆ&frac12;£¬Ìø&sup1;ý4.5msµÄǰµ&frac14;¸ßµçÆ&frac12;Ðźš£ { delayms(1); //ÑÓʱµÈ´ý } while (!IRIN) //µÈ IR ±äΪ¸ßµçÆ&frac12; { delayms(1); //ÑÓʱµÈ´ý } while (IRIN) //&frac14;ÆËãIR¸ßµçÆ&frac12;ʱ&sup3;¤ { delayms(1); //ÑÓʱµÈ´ý N++; //&frac14;ÆÊýÆ÷&frac14;Ó&frac14;Ó if (N>=30) //ÅжÏ&frac14;ÆÊýÆ÷ÀÛ&frac14;ÓÖµ { EX1=1; //´ò¿ªÍⲿÖжÏ&sup1;¦ÄÜ return; //·µ»Ø } } IRCOM[j]=IRCOM[j] >> 1; //&frac12;øÐÐÊý&frac34;ÝÎ»ÒÆ²Ù×÷²¢×Ô¶¯²&sup1;Áã if (N>=8) //ÅжÏÊý&frac34;Ý&sup3;¤¶È { IRCOM[j] = IRCOM[j] | 0x80; //Êý&frac34;Ý×î¸ßλ²&sup1;1 } N=0; //ÇåÁãλÊý&frac14;ÆÂ&frac14;Æ÷ } } if (IRCOM[2]!=~IRCOM[3]) //ÅжϵØÖ·ÂëÊÇ·ñÏàͬ { EX1=1; //´ò¿ªÍⲿÖÐ¶Ï return; //·µ»Ø } for(j=0;j<10;j++) //Ñ­»·&frac12;øÐÐ&frac14;üÂë&frac12;âÎö { if(IRCOM[2]==RecvData[j]) //&frac12;øÐÐ&frac14;üλ¶ÔÓ¦ { ControlCar(j); //ÊýÂë&sup1;ÜÏÔÊ&frac34;ÏàÓ¦ÊýÂë } } EX1 = 1; //ÍⲿÖжϿª } void main(void) //Ö÷&sup3;ÌÐòÈë¿Ú { bit ExeFlag=0; //¶¨Òå¿ÉÖ´ÐÐλ±äÁ¿ LedFlash=3000; //¶ÔÉÁµÆÊý&frac34;Ý&frac12;øÐÐ&sup3;õÊ&frac14;»¯ EX1=1; //ͬÒ⿪ÆôÍⲿÖжÏ1 IT1=1; //É趨ÍⲿÖжÏ1ΪµÍ±ßÔµ´¥·¢ÀàÐÍ EA=1; //×ÜÖжϿªÆô ShowPort=LedShowData[0]; //ÊýÂë&sup1;ÜÏÔÊ&frac34;Êý×Ö0 while(1) //&sup3;ÌÐòÖ÷Ñ­»· { Delay(); //ÑÓʱ // RunStopState=~RunStopState; //ÔËÐÐÖ¸Ê&frac34;µÆ×´Ì¬×ª±ä } }详细解释
06-01
////////////////////////////////////////////////////////////////////////////////// //±&frac34;&sup3;ÌÐòÖ»&sup1;©Ñ§Ï°Ê&sup1;Óã¬Î´&frac34;­×÷ÕßÐí¿É£¬²»µÃÓÃÓÚÆäËüÈκÎÓÃÍ&frac34; //ÐÀÞ±µç×Ó // // ÎÄ &frac14;þ Ãû :yanwu.c // °æ ±&frac34; ºÅ : v1.0 // ×÷ Õß : ÐÀÞ±µç×Ó // Éú&sup3;ÉÈÕÆÚ : 20200101 // ×î&frac12;üÐÞ¸Ä : // &sup1;¦ÄÜÃèÊö :Ö÷º¯Êý // ÐÞ¸ÄÀúÊ· : // ÈÕ ÆÚ : // ×÷ Õß : ÐÀÞ±µç×Ó // ÐÞ¸ÄÄÚÈÝ : ´´&frac12;¨ÎÄ&frac14;þ //°æÈ¨ËùÓУ¬µÁ°æ±Ø&frac34;¿¡£ //Copyright(C) ÐÀÞ±µç×Ó2020/3/16 //All rights reserved //******************************************************************************/. //&sup3;ÌÐòÍ·º¯Êý #include <reg52.h> #include <intrins.h> //°üº¬Í·ÎÄ&frac14;þ //ÏÔÊ&frac34;º¯Êý #include <display.h> //ºê¶¨Òå #define uint unsigned int #define uchar unsigned char //&sup1;Ü&frac12;ÅÉùÃ÷ sbit LED_R= P2^2;//ºìµÆ sbit LED_G= P2^0;//ÂÌµÆ sbit FENG = P2^5;//·äÃùÆ÷ //sbit san=P3^4; //·çÉÈ¿ØÖÆ£¨Ñ¡Å䣩 sbit CS = P1^4; sbit Clk = P1^2; sbit DATI = P1^3; sbit DATO = P1^3; //ADC0832Òý&frac12;Å //°´&frac14;ü sbit Key1=P2^6; //ÉèÖÃ&frac14;ü sbit Key2=P2^7; //&frac14;Ó°´&frac14;ü sbit Key3=P3^7; //&frac14;õ°´&frac14;ü bit bdata flag; //±¨&frac34;¯±êÖ&frac34;λ uchar set; //ÉèÖÃ״̬ /*******************************¶¨ÒåÈ«&frac34;Ö±äÁ¿********************************/ unsigned char dat = 0; //ADÖµ unsigned char CH=0; //ͨµÀ±äÁ¿ unsigned int sum=0; //Æ&frac12;&frac34;ùÖµ&frac14;ÆËãʱµÄ×ÜÊý unsigned char m=0; //º¯ÊýÉùÃ÷ extern uchar ADC0809(); extern void Key(); //&frac34;Æ&frac34;«º¬Á¿±äÁ¿ uchar temp=0; uchar WARNING=25; //±¨&frac34;¯Öµ /**************************************************************************** º¯Êý&sup1;¦ÄÜ:ADת»»×Ó&sup3;ÌÐò Èë¿Ú²ÎÊý:CH &sup3;ö¿Ú²ÎÊý:dat ****************************************************************************/ unsigned char adc0832(unsigned char CH) { unsigned char i,test,adval; adval = 0x00; test = 0x00; Clk = 0; //&sup3;õÊ&frac14;»¯ DATI = 1; _nop_(); CS = 0; _nop_(); Clk = 1; _nop_(); if ( CH == 0x00 ) //ͨµÀÑ¡Ôñ { Clk = 0; DATI = 1; //ͨµÀ0µÄµÚһλ _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 0; //ͨµÀ0µÄµÚ¶þλ _nop_(); Clk = 1; _nop_(); } else { Clk = 0; DATI = 1; //ͨµÀ1µÄµÚһλ _nop_(); Clk = 1; _nop_(); Clk = 0; DATI = 1; //ͨµÀ1µÄµÚ¶þλ _nop_(); Clk = 1; _nop_(); } Clk = 0; DATI = 1; for( i = 0;i < 8;i++ ) //¶Áȡǰ8λµÄÖµ { _nop_(); adval <<= 1; Clk = 1; _nop_(); Clk = 0; if (DATO) adval |= 0x01; else adval |= 0x00; } for (i = 0; i < 8; i++) //¶ÁÈ¡ºó8λµÄÖµ { test >>= 1; if (DATO) test |= 0x80; else test |= 0x00; _nop_(); Clk = 1; _nop_(); Clk = 0; } if (adval == test) //±È&frac12;Ïǰ8λÓëºó8λµÄÖµ£¬Èç&sup1;û²»ÏàͬÉáÈ¥¡£ÈôÒ»Ö±&sup3;öÏÖÏÔÊ&frac34;ΪÁ㣬Çë&frac12;«¸ÃÐÐÈ¥µô dat = test; nop_(); CS = 1; //ÊÍ·ÅADC0832 DATO = 1; Clk = 1; return dat; } void init() //&sup3;õÊ&frac14;»¯º¯Êý { TMOD=0x01; //&sup1;¤×÷·&frac12;Ê&frac12; TL0=0xb0; TH0=0x3c; //¸&sup3;&sup3;õÖµ£¨12MHz&frac34;§ÕñµÄ50ms£© EA=1; //´ò¿ªÖжÏ×Ü¿ª&sup1;Ø ET0=1; //´ò¿ªÖжÏÔÊÐí¿ª&sup1;Ø TR0=1; //´ò¿ª¶¨Ê±Æ÷¿ª&sup1;Ø } void main() //Ö÷º¯Êý { Init1602();//&sup3;õÊ&frac14;»¯ÏÔÊ&frac34; init(); //&sup3;õÊ&frac14;»¯¶¨Ê±Æ÷ while(1) //&frac12;øÈëÑ­»· { for(m=0;m<50;m++) //¶Á50´ÎADÖµ sum = adc0832(0)+sum; //¶Áµ&frac12;µÄADÖµ£¬&frac12;«¶Áµ&frac12;µÄÊý&frac34;ÝÀÛ&frac14;Óµ&frac12;sum temp=sum/50; //Ìø&sup3;öÉÏÃæµÄforÑ­»·ºó£¬&frac12;«ÀÛ&frac14;ÓµÄ×ÜÊý&sup3;ýÒÔ50µÃµ&frac12;Æ&frac12;&frac34;ùÖµtemp sum=0; //Æ&frac12;&frac34;ùÖµ&frac14;ÆËãÍê&sup3;ɺó£¬&frac12;«×ÜÊýÇåÁã if(set==0) //Ö»ÓÐÔÚ·ÇÉèÖÃ״̬ʱ£¬ Display_1602(temp,WARNING); //²ÅË¢ÐÂÏÔÊ&frac34;ʵʱŨ¶ÈÖµ if(temp<WARNING&&set==0) //·ÇÉèÖÃʱµ±Å¨¶ÈֵСÓÚ±¨&frac34;¯ÖµÊ± { flag=0; //±¨&frac34;¯±êÖ&frac34;λÖÃ0£¬²»±¨&frac34;¯ } else if(temp>WARNING&&set==0) //·ÇÉèÖÃʱµ±Å¨¶ÈÖµ´óÓÚ±¨&frac34;¯ÖµÊ± { flag=1; //±¨&frac34;¯±êÖ&frac34;λÖÃ1 } Key(); //ɨÃè°´&frac14;ü } } void Key() //°´&frac14;üº¯Êý { if(Key1==0) //ÉèÖÃ&frac14;ü°´ÏÂʱ { while(Key1==0); //&frac14;ì²â°´&frac14;üÊÇ·ñÊÍ·Å FENG=0; //·äÃùÆ÷Ïì set++; //ÉèÖÃ״̬±êÖ&frac34;&frac14;Ó flag=0; //Í£Ö&sup1;±¨&frac34;¯ // san=1; //·çÉÈÍ£Ö&sup1;ת¶¯£¨Ñ¡Å䣩 TR0=0; //¶¨Ê±Æ÷Í£Ö&sup1; } if(set==1) //ÉèÖÃʱ { write_com(0x38);//ÆÁÄ»&sup3;õÊ&frac14;»¯ write_com(0x80+0x40+13);//Ñ¡Öб¨&frac34;¯ÖµµÄλÖà write_com(0x0f);//´ò¿ªÏÔÊ&frac34; ÎÞ&sup1;â±ê &sup1;â±êÉÁ˸ write_com(0x06);//µ±¶Á»òдһ¸ö×Ö·ûÊÇÖ¸Õëºóһһλ FENG=1; //·äÃùÆ÷Í£Ö&sup1;ÃùÏì } else if(set>=2) //ÔÙ°´Ò»ÏÂÉèÖÃ&frac14;üʱ£¬ÍË&sup3;öÉèÖà { set=0; //ÉèÖÃ״̬ÇåÁã write_com(0x38);//ÆÁÄ»&sup3;õÊ&frac14;»¯ write_com(0x0c);//´ò¿ªÏÔÊ&frac34; ÎÞ&sup1;â±ê ÎÞ&sup1;â±êÉÁ˸ FENG=1; //·äÃùÆ÷Í£Ö&sup1;Ïì flag=1; //±¨&frac34;¯±êÖ&frac34;λÖÃ1 TR0=1; //¶¨Ê±Æ÷¿ªÊ&frac14;&frac14;ÆÊ± } if(Key2==0&&set!=0) //µ±ÔÚÉèÖÃ״̬ʱ£¬°´ÏÂ&frac14;Ó&frac14;üʱ { while(Key2==0); //°´&frac14;üÊÍ·Å FENG=0; //·äÃùÆ÷ÃùÏì WARNING++; //±¨&frac34;¯ãÐÖµ&frac14;Ó if(WARNING>=255)//ãÐÖµ×î´ó&frac14;Óµ&frac12;255 WARNING=0; //ÇåÁã write_com(0x80+0x40+11); //ÔÚãÐÖµµÄλÖÃдÈëÉèÖõÄÊý&frac34;Ý write_data(&#39;0&#39;+WARNING/100); //ÏÔÊ&frac34;°Ù루&frac12;«123&sup3;ýÒÔ100µÃµ&frac12;µÄÉÌÊÇ1£¬&frac34;ÍÊǰÙλÊý&frac34;Ý£©123ΪÀý×Ó write_data(&#39;0&#39;+WARNING/10%10);//ÏÔÊ&frac34;ʮ루&frac12;«123&sup3;ýÒÔ10µÃµ&frac12;ÉÌÊÇ12£¬&frac12;«12&sup3;ýÒÔ10µÄÓàÊý&frac34;ÍÊÇʮ룩 write_data(&#39;0&#39;+WARNING%10); //ÏÔÊ&frac34;¸ö루&frac12;«123&sup3;ýÒÔ10µÄÓàÊý3&frac34;ÍÊǸöλÊý&frac34;Ý£©123ΪÀý×Ó write_com(0x80+0x40+13);//λÖà FENG=1;//·äÃùÆ÷Í£Ö&sup1; } if(Key3==0&&set!=0) //&frac14;õ°´&frac14;ü×¢ÊͲο&frac14;&frac14;Ó°´&frac14;ü²¿·Ö { while(Key3==0); FENG=0; WARNING--; if(WARNING<=0) WARNING=255; write_com(0x80+0x40+11); write_data(&#39;0&#39;+WARNING/100); write_data(&#39;0&#39;+WARNING/10%10); write_data(&#39;0&#39;+WARNING%10); write_com(0x80+0x40+13);//λÖà FENG=1; } } void time1_int(void) interrupt 1 //¶¨Ê±Æ÷º¯Êý { uchar count; TL0=0xb0; TH0=0x3c; //ÖØÐ¸&sup3;&sup3;õÖµ count++; //&frac14;ÆÊ±±äÁ¿&frac14;Ó if(count==10)//¶¨Ê±Æ÷¶¨Ê±ÊÇ50ms£¬´Ë´¦&frac14;ÆÊý10´Î£¬ÕýºÃÊÇ500ms£¬ÓÃÓÚ±¨&frac34;¯Ê± µÆÁÁºÍ·äÃùÆ÷Ïì { if(flag==0) //±¨&frac34;¯±êÖ&frac34;Ϊ0ʱ { LED_G=0; //Â̵ÆÁÁ LED_R=1; //ºìµÆÃð FENG=1; //·äÃùÆ÷²»Ïì // san=1; //·çÉȲ»×ª£¨Ñ¡Å䣩 } if(flag==1) //±¨&frac34;¯±êÖ&frac34;λΪ1ʱ { LED_G=1; //Â̵ÆÃð LED_R=0; //ºìµÆÁÁ FENG=0; //·äÃùÆ÷Ïì // san=0; //·çÉÈת¶¯£¨Ñ¡Å䣩 } } if(count==20) //&frac14;ÆÊýµ&frac12;20ʱ£¬ÕýºÃÊÇ1000ms£¬&frac34;ÍÊÇ1s£¬ÕâÀï&frac34;ÍÊÇÈõÆÃ𣬷äÃùÆ÷²»Ï죬´Ó¶ø×ö&sup3;öÉÁ˸µÄЧ&sup1;û { count=0; //&frac14;Ƶ&frac12;1sʱ£¬&frac12;«countÇåÁ㣬×&frac14;±¸ÖØÐÂ&frac14;ÆÊý if(flag==0) { LED_G=1; LED_R=1; FENG=1; // san=1; //È«²¿&sup1;Ø±Õ } if(flag==1) { LED_G=1; LED_R=1; FENG=1; // san=0; //±¨&frac34;¯Öµ£¬·çÉÈÊÇһֱת¶¯µÄ£¨Ñ¡Å䣩 } } } 修改为下限报警
07-05
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值