/ | = 0x10;// дозволу використання АЦП p>
// регістр ADIF-переривання встановлюється апаратно
// по закінченню циклу перетворення = ADCL;// молодший біт в q1 = ADCH;// старший біт в q2 = q1 + (q2 <<8);// підсумовування зі зміщенням
return q3;
} int usmer (unsigned char q3)
{int j, F;// value, temp;// = 0;// = 0;// = 0;// (j = 1; j <3001; j + +) p>
{= Read_ADC (); = value + F; = 0;
} = (value/3000); = (unsigned int) temp; F;
} Init_uart (void)
{= 0x08;/​​/ 0000 1000 TXCIE заборонені переривання по завершенню// передачі
// TXEN розблокування передавача = 0xBF;// швидкість передачі 2400 бод UBR = 191
} Init_ADC (void)// Ініціалізація АЦП
{= 3;// Вибір входу АЦП - PIN 3 = 0xA6;// 1010 0110 - прапор дозволу використання АЦП
// дозвіл переривання по завершенню перетворення
// коефіцієнт розподілу тактовою частоти = 64
} main (void)
{int temp;// char temp1, temp2; U;
Init_ADC ();// _uart (); = 3;// номер каналу АЦП (1)//
{= usmer (q);// = (temp * 4.85)/1024;// обчислюємо напруга
temp = (unsigned int) (1000 * U);// переводимо в мВ
temp1 = (temp & 0x0F);// поміщаємо в змінну temp1 старший
// байт переданого числа
temp2 = ((temp & 0xF0)>> 8);// поміщаємо в змінну temp2 молодший
// байт переданого числа
_delay_loop_2 (1);// пауза 2mс
UDR = temp1;// передаємо старший байт
while ((UCR & 0x20) == 0) {};// очікування установки біта успішної
// передачі
UDR = temp2;// передаємо молодший байт
while ((UCR & 0x20) == 0) {};
_delay_loop_2 (2);// пауза 4 mс
}
}
оцифровка сигнал мікроконтролер
Додаток Б
Принципова схема комплексу посилення і оцифровки сигналу на основі мікроконтролера АТ90S8535
В