mcufun.c

来自「使用ch375和stc 51写的usb鼠标的代码」· C语言 代码 · 共 81 行

C
81
字号
#ifndef __MCU_FUN_C__
#define __MCU_FUN_C__
#endif
#include "head.h"
#include <reg52.h>
#include "mcuFun.h"
extern uint16 tCount;
sbit led = P1^0;
//--------------------------------------
//函数功能:	超时处理
//preTick	 	存放刚开始计时的计数值
//ticks    	要计的ticks数
//返回:			1-超时	0-不超时
//-------------------------------------
uint8 wait(uint16 preTick, uint16 ticks)
{
		if((tCount-preTick)>=ticks)
		{
				return(1);
		}
		else
		{
				return(0);
		}
}
//-------------------------------------------
//函数功能:
//超时处理函数
//使用方法:
//调用它开始计算超时
//调用reset重新开始赋值, 重新开始超时计数
//------------------------------------------
uint8 w(tOut *p, uint16 ticks)
{
		if(0==p->flag)	//未设置初值
		{
				p->count=tCount;
				p->flag=1;
		}
		return(wait(p->count, ticks));
}

void reset(tOut *p)
{
		p->flag=0;
}

void delay50ms(void);
void delay1s(void);
void flash_led(void);



void delay50ms(void)
{
unsigned char i, j;
for( i=200; i!=0; i-- )
for( j=250; j!=0; j-- );
}

void delay1s(void)
{
unsigned char i,j,k;

for( i=10; i!=0; i-- )
for( j=200; j!=0; j-- )
for( k=250; k!=0; k-- );
}
//-----------------------------
//led以2s的频率闪烁10s
//-----------------------------
void flash_led(void)
{
	unsigned char i;
	
	for( i=10;i>0;i-- )
	{
		led=!led;
		delay1s();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?