timer0.c

来自「AVR控制的SAB82525——HDLC通信 循环队列处理 完全是自己写的」· C语言 代码 · 共 39 行

C
39
字号
#include "iom128v.h"
#include "macros.h"
//------------------------------------------------------------------
extern unsigned char count;
extern unsigned char data_array01[32];
extern unsigned char data_array02[32];
extern unsigned char data_array03[32];
extern unsigned char data_array04[32];
extern unsigned char data_array05[32];
//------------------------------------------------------------------
#pragma interrupt_handler timer0_txd_srv:17
void timer0_txd_srv(void)
{
	unsigned char num_tmr=0;
	TCNT0=0xb5;	//计数值重装
	
	transmit();
	
	if(count<(20-5))
		{
			EnQueue(data_array01,2);
			EnQueue(data_array02,4);
			EnQueue(data_array03,3);
			EnQueue(data_array04,3);
			EnQueue(data_array05,15);
		}
				
			
}
//------------------------------------------------------------------
void timer0_init(void)
{
	TIMSK=0x01;
	TCCR0=0x00;
	TCNT0=0xb5;	//20ms的计数值
	
	TCCR0=0x07;
}
//------------------------------------------------------------------

⌨️ 快捷键说明

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