/Designs/reflow/SW/process.h
0,0 → 1,59
/* mija 2009 - header for proces.c
 
SW pro ATmega8 mereni + regulace teploty
Fosc = 8192000Hz externi krystal
 
ver.: 0.0 - start
*/
 
#ifndef __process_h_included__
#define __process_h_included__
 
#include "clock.h" // struc Clock_t
 
#define POSITIVTIME 15 //minuty
#define DRYTIME 120 //minuty
 
#define POSITIVTEMP 70 //°C
#define DRYTEMP 80 //°C
 
#define PREHEATTEMPSTART 100
#define PREHEATTEMPSTOP 150
#define PREHEATTIMEOFF 50 //sec
 
#define PREHEATTEMP 126 //°C
 
#define PREHEATTIME 120 //sec
 
#define SOLDERTEMPSTART 183
#define SOLDERTEMPSTOP 180
 
#define SOLDERTEMP 206 //°C
#define SOLDERTIME 10 //sec
 
#define COOLTEMP 50 //°C
#define COOLTIME 10 //sec
 
#define HEAT PD7
#define HEAT_DDR DDRD
#define HEAT_PORT PORTD
 
#define MAXDISPLBUFFER 20 //buffer pro lcd display
 
enum{START=0,SOLDER,POSITIV,DRY}; //main proces
 
uint8_t ProcesStart(char *buffer,uint8_t key,uint16_t temp);
uint8_t ProcesSolder(char *buffer,uint8_t key,uint16_t temp,Clockt_t *clock);
uint8_t ProcesPositiv(char *buffer,uint8_t key,uint16_t temp,Clockt_t *clock);
uint8_t ProcesDry(char *buffer,uint8_t key,uint16_t temp,Clockt_t *clock);
 
void ProcesDispl(char *data);
void ProcesTemp(uint16_t adc,uint16_t *temp);
void ProcesHeat(uint16_t temp,uint16_t ActualTemp);
 
#define HeatInit() HEAT_DDR|=_BV(HEAT)
#define HeatOn() HEAT_PORT|=_BV(HEAT)
#define HeatOff() HEAT_PORT &= (~(_BV(HEAT)))
 
#endif /* __process_h_included__ */