📄 init.h~
字号:
#ifndef __INIT_H__
#define __INIT_H__
#include "MEGA16.h"
#include "EEPROM.h"
#define uchar unsigned char
#define uint unsigned int
#define LED_L 0xef;
#define LED_H 0xff;
/* Data Register, Port A */
#define PA7 7
#define PA6 6
#define PA5 5
#define PA4 4
#define PA3 3
#define PA2 2
#define PA1 1
#define PA0 0
/* Data Register, Port B */
#define PB7 7
#define PB6 6
#define PB5 5
#define PB4 4
#define PB3 3
#define PB2 2
#define PB1 1
#define PB0 0
/* Data Register, Port C */
#define PC7 7
#define PC6 6
#define PC5 5
#define PC4 4
#define PC3 3
#define PC2 2
#define PC1 1
#define PC0 0
/* Data Register, Port D */
#define PD7 7
#define PD6 6
#define PD5 5
#define PD4 4
#define PD3 3
#define PD2 2
#define PD1 1
#define PD0 0
uchar sec=0;
uchar hour=0;
uchar min=0;
uchar sethour=0;
uchar setmin=0;
uchar display_bit=0;
uchar mode=0;
uint flash_add=0;
bit b_sec=1;
bit b_time=0;
//uchar LED=0;
uint rapidness=0;
//******************************初始化函数************************************
//IO口初始化函数
void port_init(void)
{
PORTA=0xff;
DDRA=0xff;
PORTB=0xff;
DDRB=0xff;
PORTC=0xff;
DDRC=0x01;
PORTD=0xFF;
DDRD=0x00;
}
//定时器1初始化函数
void timer1_init(void)
{
TCCR1B = 0x00; //stop
TCNT1H = 0xE3; //setup
TCNT1L = 0x34;
OCR1AH = 0x1C;
OCR1AL = 0xCC;
OCR1BH = 0x1C;
OCR1BL = 0xCC;
ICR1H = 0x1C;
ICR1L = 0xCC;
TCCR1A = 0x00;
TCCR1B = 0x01; //start Timer
}
//看门狗初始化函数
void wdt_init(void)
{
WDTCR=0x1F;
WDTCR=0x0F;
}
//初始化总函数
void init_devices(void)
{ port_init();
wdt_init();
timer1_init();
TIMSK=0x04; //01 05 //01是PWM 04是time1
MCUCR = 0x00;
GICR = 0x00;
MCUCSR |= (1<<7);//屏蔽C口的JTAG功能
LED=0xef;
#asm("sei"); //re-enable interrupts
}
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -