Микропроцесорна система за регулиране на температура


Категория на документа: Информатика



case STOP: //спира ПИД

flag_start=0;

break;

case ENTER: //редактиране на параметрите

edit_params();

break;

}

}
}

char key(void){
//проверява за натиснат клавиш и връща стойността му
//понеже тази програма се вика непрекъснато от всякъде тя се занимава с мерене на АЦП, изчисляванер на темпреатурата и ПИД

//четене на АЦП

unsigned int adc1,adc2; //данни от АЦП

int local_temperature; //локална температура в студения край на ТД

int temperature; //температура м/у двата края на ТД

//прочитане на АЦП

PORTB &= ~_BV(PB4); //сигнала SS в 0 за старт на преобразуването

SPDR=0; //изпращане на данни по SPI, което стартира и премането

while(!(SPSR&_BV(SPIF))); //изчакване завършване на приемането

adc1=SPDR; //прочитане на първото АЦП

SPDR=0; //изпращане на данни по SPI, което стартира и премането

while(!(SPSR&_BV(SPIF))); //изчакване завършване на приемането

adc2=SPDR; //прочитане на второто АЦП

PORTB |= _BV(PB4); //възстановяване на SS в 1 за край на преобразуването

//изчисляване на температурата в пеща
#define MAX_ADC 255 //максимална стойст която може да се прочете от АЦП
#define V_REF 5000 //опорно напрежене на АЦП в mV



Сподели линка с приятел:





Яндекс.Метрика
Микропроцесорна система за регулиране на температура 9 out of 10 based on 2 ratings. 2 user reviews.