Курсовая работа: Разработка измерителя температуры жидкости
unsigned char TmrCnt[2];
unsigned char TmrPreLoad[2];
unsigned char TmrFlag[2]={0,0};
//0 - timer disabled
//0x01 - timer is started and counting, not reloadable
//0x81 - counting, reloadable
//0x02 - ready, stopped
//0x83 - ready, reloaded, counting
3.3 Проектирование процедуры инициализации аппаратуры микроконтроллера
Процедура инициализации производит настройку: портов ввода/вывода, периферийных аппаратных устройств, а так же внешних устройств которые требуют инициализации.
//== Port Initialisation ===============
void Init(void)
{
DDRD = 0xf0; //PD3-PD0 as input
PORTD = 0xff; //Turn ON PullUP for PortB pins
DDRB = 0xff; //Port B pins as output
PORTB = 0x00;
}
//== Virtual Timer Initialisation ==========
void InitTimers(void)
{
#asm("cli");
TCCR0B=PrescalerTmr0;
TIMSK |= (1 << TOIE0); //Enable Timer0 Interrupt
TCNT0=Tmr0_Reload;
TmrPreLoad[0]=250;
TmrCnt[0]=250;
TmrFlag[1]=0x81;
TmrPreLoad[1]=10;