Файл: Курсова Кузьмич ІА-72.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 08.04.2024

Просмотров: 20

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

 

 

ДОДАТОК В СХЕМА АЛГОРИТМ

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

початок

 

 

1

 

 

 

 

 

2

 

 

10

 

 

 

 

 

 

 

Налаштування

 

Зчитування даних з

 

 

 

 

 

 

портів

 

 

АЦП

 

 

 

 

 

3

 

 

 

 

 

12

 

 

 

 

Налаштування

 

 

 

 

 

 

 

 

 

11

Ввімкнути

Так

 

Ввімкнення

 

 

 

АЦП

 

 

 

 

 

 

 

 

 

 

сигналізацію

 

 

сигналізації

 

 

4

 

 

 

Ні

 

 

 

 

 

 

Налаштування

 

 

 

14

 

 

 

 

 

13

 

 

 

 

 

 

переривання

 

Переривання від

Так

 

 

 

 

 

 

 

Вивід гучності на

 

 

 

 

 

 

 

 

 

 

 

Встановлення T0=1

 

 

 

 

 

 

 

 

пристрій

 

 

5

 

 

 

отримане

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Налаштування

 

 

Ні

 

 

 

 

 

 

УАПП

Ні

15

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

 

 

Роботу завершено

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Отримання

 

 

Так

 

 

 

 

 

 

повідомлення в

 

16

 

 

 

 

 

 

терміналі

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

Кінець

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Задання значення

 

 

 

 

 

 

 

 

 

ввімкнення

 

 

 

 

 

 

 

 

 

сигналізації

 

 

 

 

 

 

 

 

8

 

 

 

 

 

 

 

 

 

 

Запуск АЦП

 

 

 

 

 

 

 

 

9

Роботу АЦП

Ні

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

завершено

 

 

 

 

 

 

 

 

 

Так

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

ІА72.120300.030 СА

 

Зм Лист № докум. Підп. Дат

 

 

 

 

Літ.

Лист

Листів

Розроб.

Кузьмич

Пристрій сигналізації перевищення

Перев.

Новацький

 

 

1

 

рівня шуму у приміщенні

 

 

 

 

 

 

 

НТУУ ”КПІ” ФІОТ

Н. контр.

 

 

 

Схема алгоритм

 

 

 

 

 

Група ІА-72

 

Затв.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



ДОДАТОК Г ПЕРЕЛІК ЕЛЕМЕНТІВ

Поз.

Найменування

позначення

 

 

Кварцевий резонатор

BQ1

PK - 169 - MA – 6AH – 8МГц

 

Конденсатори

С1,С2 Кер. чип. конд. 0603 X5R-25В-10мкФ ± 10%

С3

K10-73-16B-0,1мкФ ±10%

С4,С5 К10-17А М47-50В-22пФ ± 10%

С6…С9

K10-73-16B-0,1мкФ ±10%

С10…C14 К53-1А-1 мкф-20в ±10%

Мікросхеми DA1 Випрямний міст КЦ402

DA2 Стабілізатор напруги L7805 DD1…DD3 Операційний підсилювач ЛМВ324

DD4 Мікроконтролер atmega8

DD5 Прийомник-передавач MAX232

 

Резистори

R1

СМД-0402-0.062-2.2кОм±1%

R2, R9

СМД-0805-0.125-1кОм±5%

 

R3,R4,R8,R14 СМД-0805-0.125-10кОм±5%

R5,R15

СМД-0805-0.125-1кОм±5%

R6

СМД-0805-0.125-100кОм±5%

R7,R10,R12

СМД-1206-0.125-100 Ом±5%

R8,R10

СМД-1206-0.125-22 кОм±5%

R16… R21

СМД-1206-0.125-300 Ом±5%

 

Напівпровідникові діоди

VD1, VD2 РБ751

VD3

1Н4148

Примітка

Кіл.

1

2

1

2

4

5

1

1

3

1

1

1

2

4

2

1

3

2

6

2

1

 

 

ІА72.120300.030 ПЕЗ

 

Зм Лист

№ докум.

Підп. Дата

 

 

Розроб.

Кузьмич

Пристрій сигналізації

Літ. Лист

Листів

Перев.

Новацький

1

2

перевищення рівня шуму у

 

 

НТУУ «КПІ» ФІОТ

Н. контр.

 

приміщенні

 

Група ІА-72

 

 

 

 

Опис

Затв.

 

 

 


Продовження додатку Г

Поз.

позначення

Найменування

Кіл.

Примітка

Роз’єми

XS1

Lumberg KPE2

1

XS2

Lumberg KPE4

1

XS3

Lumberg КРЕ2

1

XS4

Lumberg KPE6

1

XS5

Lumberg KРЕ9

1

XS6

Lumberg KPE4

1

 

 

ІА72.120300.030 ПЕЗ

Лист

Зм Лист № докум.

Підп. Дата

2

 

 

 

ДОДАТОК Д ЛІСТИНГ ПРОГРАМИ

#define F_CPU 8000000UL #include <avr/io.h> #include <avr/interrupt.h> #include <util/delay.h> #include <stdlib.h>

#define BAUD 9600

#define MYUBRR F_CPU/16/BAUD-1

unsigned int display = 0; unsigned int ADC_value;

char Rdata=0; int value=300;

#include <stdbool.h>

bool first_pwm_set = true; bool first_pwm_clear=true;

void PWMPreSet(void)

{

//1

//Clear OC1A/OC1B on Compare Match, set OC1A/OC1B at //BOTTOM, (non-inverting mode)

TCCR1A|=(1<<COM1A1);

TCCR1A|=(1<<COM1A0);// P 96 DATASHEET INVERTING PWM //TCCR1A&=~(1<<COM1A0); // P 96 DATASHEET//NON INVERTING PWM

TCCR1A|=(1<<WGM10);//page 98 fast pwm 10 bit

TCCR1A|=(1<<WGM11);

TCCR1B|=(1<<WGM12);//ctc1 p 98

TCCR1B&=~(1<<WGM13);

//2

TCCR1B|=(1<<CS11);//clkI/O/8 (From prescaler) p 99 TCCR1B&=~((1<<CS10)|(1<<CS12));

//3

OCR1A=912;//half from 10bit pwm

}

void PwmClear(void)

{

TCCR1A=0;

TCCR1B=0;

OCR1A=0;

}

void TunOnLed(void)

{

if (ADCSRA&(1<<ADIF))//if conversion is done bit 4 adif:adc interrupt flag set to 1

{

ADC_value = ADC; // read adc

display = (ADC_value+1)*(5/1024.0)*100; // max 500 if(display>=value)//our voltage


{

PORTC|=(1<<1);//turn on yellow led if(first_pwm_set)

{

PWMPreSet(); first_pwm_set=false; first_pwm_clear=true;

}

}else

{

PORTC&=~(1<<1);//turn off yellow led if(first_pwm_clear)

{

PwmClear(); first_pwm_clear=false; first_pwm_set=true;

}

}

ADCSRA|=(1<<ADIF);//continue conversation

}

}

ISR(TIMER0_OVF_vect)

{

if(display<10)

{

PORTD&=~((1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7));

}

if(display>10 && display<50)

{

PORTD|=(1<<2); PORTD&=~((1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7));

}

if(display>50 && display<150)

{

PORTD|=(1<<2)|(1<<3); PORTD&=~((1<<4)||(1<<5)|(1<<6)|(1<<7));

}

if(display>150 && display<200)

{

PORTD|=(1<<2)|(1<<3)|(1<<4); PORTD&=~((1<<5)|(1<<6)|(1<<7));

}

if(display>200 && display<300)

{

PORTD|=(1<<2)|(1<<3)|(1<<4)|(1<<5); PORTD&=~((1<<6)|(1<<7));

}

if(display>300 && display<400)

{

PORTD|=(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6); PORTD&=~(1<<7);

}

if(display>400)

{

PORTD|=(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<7);

}

}

void PreSet(void)

{

DDRC|=(1<<1);//adjust for out PORTC&=~(1<<1);//zero voltage