Разделы сайта

Энергосбережение

.

. // -0-1-2-3-4-5-6-7-8-9-dp

.char SEGMENTE[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x80};

.

.volatile unsigned char segcounter = 0;

.volatileint display = 0;

12.

. // Прерывание по переполнению T2, динамическая индикация

14.ISR (TIMER2_OVF_vect)

. {

.PORTD = 0x00;

.PORTB = ~(1 <<segcounter);

.

.switch (segcounter)

. {

.case 0:

.PORTD = SEGMENTE [display% 10000 / 1000];

.break;

.case 1:

.PORTD = (SEGMENTE [display% 1000 / 100])|0x80; // добавляемдесятичнуюточку

.break;

.case 2:

.PORTD = SEGMENTE [display% 100 / 10];

.break;

.}

.if ((segcounter++) > 2) segcounter = 0;

.}

.

.volatile unsigned long value;

35.volatile unsigned intadc_counter;

.

./***Прерывание по окончанию преобразования АЦП***/

38.ISR (ADC_vect)

. {

.value = value + (ADC*11/4);

.adc_counter++;

.}

.

./***Главнаяфункция***/

.int main (void)

. {

.DDRD = 0xFF;

.DDRB = (1 << PB0)|(1 << PB1)|(1 << PB2)|(1 << PB3);

.PORTD = 0x00;

.PORTB = 0x00;

.DDRC = 0x00;

52.

.TIMSK |= (1 << TOIE2); // разрешение прерывания по таймеру2

.TCCR2 |= (1 << CS21); // предделитель на 8

.

.ADCSRA = (1 << ADEN) // разрешение АЦП

.|(1 << ADSC) // запуск преобразования

.|(1 << ADFR) // непрерывный режим работы АЦП

.|(1 << ADPS2)|(1 << ADPS1)|(0 << ADPS0) // предделитель на 64 (частота АЦП 125kHz)

.|(1 << ADIE); // разрешение прерывания

.

.ADMUX = (1 << REFS1)|(1 << REFS0) // внутренний ИОН 2,56V

.|(0 << MUX3)|(0 << MUX2)|(0 << MUX1)|(0 << MUX0); // вход ADC0

.

._delay_ms(50);

.

.sei(); // глобально разрешаем прерывания

.

.while(1)

. {

.if (adc_counter> 300) // вычисляем среднее значение АЦП

72. {

.display = value/adc_counter;

.adc_counter = 0;

75.value = 0;

.}

._delay_ms(50);

.}

.}

Перейти на страницу: 1 2 

Интересное из раздела

Расчет усилителя постоянного тока
электромагнитная головка тип - ГЗМ-105 Диапазон частот - 31,5 - 18 кГц Величина выходного напряжения (на НЧ) - 0,7 мВ Величина выходног ...

Комплекс аппаратных средств для трансляции звукового сигнала на большие расстояния
Звук играет важную роль в жизнедеятельности человека. Каждый день мы слышим очень много разнообразных звуков, так же существует необходимость передават ...

Программируемый генератор сигналов
Современное состояние и перспективы развития многих отраслей техники, в том числе и радиоэлектроники, во многом определяются широким проникновением средств ...