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

📄 time._c

📁 电机控制程,用于电机控制,可用于需要的系统中
💻 _C
字号:
#include <iom64v.h>
#include <macros.h>
#include "head.h"


/*-----------------------------------------------------------------
函数名称: void Timer1Init(void)
函数功能: 定时器1初始化  256预分频 定时一秒 
参    数: 
返 回 值: 无
-----------------------------------------------------------------*/
void Time1Init()
{
	CLI(); 			   					//关全部中断		 	   					 //开中断
 	TCCR1B = 0x00; 	 			  //关定时器
 	TCNT1H = 0xF0; 				  //设置定时初值
 	TCNT1L = 0xBE;
 	OCR1AH = 0x0F;
 	OCR1AL = 0x42;
 	OCR1BH = 0x0F;
 	OCR1BL = 0x42;
 	ICR1H  = 0x0F;
 	ICR1L  = 0x42;
 	TCCR1A = 0x00;
 	TCCR1B = 0x04; 		  		  //开始计数
	
	TIMSK = 0x04; 				  		 //timer interrupt sources
 	SEI(); 
}

#pragma interrupt_handler timer1_ovf_isr:15
void timer1_ovf_isr(void)
{
  
 	TCNT1H = 0xF0; 		  		  //重新装载计数值
 	TCNT1L = 0xBE; 
	if(temp){
		g_ucLedStatus=0x00;
	    PORTF = g_ucLedStatus;
		temp=0;
	}else{
		 g_ucLedStatus=0xff;
		 PORTF = g_ucLedstatus;
		 temp=1;
	}
 	//TimerCnt++;
}

/*#pragma interrupt_handler timer1_overflow:15

void timer1_overflow(void)
{
// preset again TIMER1
TCNT1=0x10000-(xtal/1024/fmove);
g_ucLedStatus=0x00;
PORTF=g_ucLedStatus;
}*/

/*1.必须在读取UDR 寄存器之前访问状态标志位。否则将丢失错误状态。 
2.USART 支持4 种模式的时钟: 正常的异步模式,倍速的异步模式,主机同步模式,以及从机同步模式。 
3.使用模式波特率的计算公式(1) UBRR 值的计算公式 
异步正常模式(U2X = 0)
UBRR 值的计算公式    fOSC / (16*BAUD)-1 

BAUD 波特率 ( bps) 
fOSC 系统时钟频率 
UBRR UBRRH 与UBRRL 的数值 (0-4095) 
*/
/*
void Time1Init()
{
	// init TIMER1
// TIMER1 is disconnected from pin OC1
// no PWM
TCCR1A=0;
// TIMER1 clock is xtal/1024
TCCR1B=5;
// preset TIMER1
TCNT1=0x10000-(xtal/1024/fmove);
// clear TIMER1 interrupts flags
TIFR=0;
// enable TIMER1 overflow interrupt
TIMSK=0x80;
// all other interrupt sources are disabled
CLI();

// global enable interrupts
SEI(); 
}*/

⌨️ 快捷键说明

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