📄 time.c.bak
字号:
#include <iom64v.h>
#include <macros.h>
#include "head.h"
#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 + -