⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modem.c

📁 UCOSII在Mega128上的移植版本 开发工具: WINGCC
💻 C
字号:
#include <avr/io.h>
#include <avr/interrupt.h>
void pa(void);
static int flag=1;
typedef struct 
{
   unsigned char TimerID;
   unsigned int Dealy;
   void (*funptr)();
}Timer;

Timer T1={1,2,pa};

void TimeInit(void)
{
	TCNT1=0xFFF8;
	TIMSK |= (1<<TOIE1);
    TCCR1B |= 0x02;

}


void pa(void)
{
PORTA=flag++;
}

int main(void)
{ 
	int j=1;


//	Timer T2={1,4,pb};
//	Timer T3={1,6,pc};
//	Timer T4={1,8,pd};

    DDRA=0xff;
    PORTA=0;
    DDRB=0xff;
    PORTB=0;
    DDRC=0xff;
    PORTC=0;
    DDRD=0xff;
    PORTD=0;

	 TimeInit();
     SREG |= (1<<7);
	 while(1);

	 return j;
}

SIGNAL(SIG_OVERFLOW1)
{
   if( T1.Dealy != 0)
      if(--T1.Dealy == 0)
	       T1.funptr();
   __asm__ __volatile__("cli"::);
       
}

⌨️ 快捷键说明

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