timebios.c

来自「针对philips的51单片机LPC931的具体应用的例子。实现对uart, s」· C语言 代码 · 共 46 行

C
46
字号
#include "REG931.H"
#include "memory.h"
#include "system.h"

#define OSC		7373000L
#define TIME		2000L		// us
#define VALUE	65536L-(2*TIME/OSC)
#define VALUE_L		VALUE
#define VALUE_H		VALUE>>8


// exicute time typically 6us, max 126us (SPI occupy 110us )
void Timer0(void) interrupt  1 //using 1//RI/TI interrupt
{
	uchar temp;
	TR0=0;
	TH0=0xe3;	// xx=0xFFFF-(us*Fosc/2)  
	TL0=0x32;		// 0xe2dd
	TR0=1;

	TCounter++;
	temp=TCounter;
	if(temp&0x1)
		OS_FETCH_EVENT=OS_EVENT_4MS;
	else if (temp&0x2)
		OS_FETCH_EVENT=OS_EVENT_8MS;
	else if (temp&0x4)
		OS_FETCH_EVENT=OS_EVENT_16MS;
	else if (temp&0x8)
		OS_FETCH_EVENT=OS_EVENT_32MS;
	else if (temp&0x10)
		OS_FETCH_EVENT=OS_EVENT_64MS;
	else if (temp&0x20)
		OS_FETCH_EVENT=OS_EVENT_128MS;
	else if (temp&0x40)
		OS_FETCH_EVENT=OS_EVENT_256MS;
	else if (temp&0x80)
		OS_FETCH_EVENT=OS_EVENT_512MS;
	else
		OS_FETCH_EVENT=OS_EVENT_RECOUNT;  // temp == 0
}




⌨️ 快捷键说明

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