РОЗРОБКА СХЕМИ ПРИЛАДНОГО ІНТЕРФЕЙСУ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Кафедра ІВТ

Інформація про роботу

Рік:
2011
Тип роботи:
Курсовий проект
Предмет:
Інші

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти та науки України Національний університет «Львівська політехніка» Кафедра ІВТ Курсовий проект курсу «Основи термометрії» на тему: «РОЗРОБКА СХЕМИ ПРИЛАДНОГО ІНТЕРФЕЙСУ» Львів, 2011 Завдання 1: Розробити електричну принципову схему мікропроцесорного вимірювального приладу, пристосованого для роботи з GPIB, з послідовним введенням/виведенням інформації. Записати формат приладного інтерфейсного повідомлення (формат команди керування для цифрово-аналогових перетворювачів). Написати програму ініціалізації інтерфейсної частини приладу. Описати і пояснити послідовність роботи мікропроцесора у вимірювальному приладі при виконанні завдання, у межах заданого варіанту. Дано: Кількість приладів 5 Спосіб адресації 2 Тип мережі переривання Спосіб під’єднання паралельне опитування Скид Ініціалізація годинника Функція: Запит на обслуговування Робота Прийом В ІВК використовується операційна система призначена для керування роботою комплексу і для взаємодії користувача з апаратною частиною і прикладними програмами. Розподілені вимірювальні системи- це системи розміщені на відстані більш, ніж 1000м. Рис.1 мікропроцесорно керований пристрій обробки інформації  Для з’єднання мікропроцесорних вимірювальних приладів з GPIB доцільно використовувати мікропроцесорний керований пристрій КР580ВК91А. Сама мікросхема має вигляд, поданий нижче.  Рис.2 МІКРОСХЕМА КР580ВК91А Ця мікросхема здійснює зв’язок між GPIB (general purpose interface bus) і пристроями керування мікропроцесором. До її функцій входить передавання даних, виконання протоколу синхронізації обміну даних, процедури адресування приймачів або передавачів, початкове встановлення та запуск пристроїв, запуск обслуговування, послідовне та паралельне опитування, а також всі решта інтерфейсних функцій, за винятком функції контролера. У інформаційно-вимірювальному комплексі дана мікросхема (КР580ВК91А) вважається мікропроцесорним управляючим пристроєм, призначеним з’єднувати мікропроцесор на однокристальній мікро ЕОМ через лінію колективного використання з вимірювальними приладами Мікросхема виконує зв’язок між вимірювальною системою і приладами, що під’єднані до мікропроцесора. В її функції входить передача даних, протокол синхронізації обміну, процедури адресації приймача/передавача, очищення і запуск приладів, запуск обслуговування, послідовні і паралельні опитування, а також всі решта функції інтерфейсу, за винятком функції контролера. КР580ВК91А складається із буферної схеми шини даних мікропроцесора; логічної схеми читання/запису, переривання, вісім регістрів запису; вісім регістрів читання; схеми формування затримок; дешифратор повідомлень; логічні схеми, що реалізують інтерфейсні функції; буферні схеми шини даних; внутрішня шина даних. Табл. 1Призначення виводів Вивід Позначення Тип виводу Функціональне призначення виводів  12-19 D0-D7 Входи/виходи Шина даних мікропроцесора  21-23 RS0-RS2 Входи Адреса регістра  8 CS Вхід Вибір мікросхеми  9 RD Вхід Читання  10 WR Вхід Запис  11 INT Вихід Запит переривання  6 DREQ Вихід Запит ПІП  7 DACK Вхід Підтвердження ПІП  5 TRIG Вихід Запуск  3 CLOCK Вхід Синхросигнал  4 RESET Вхід Скид  28-35 DIO1-DIO8 Виходи/входи Шина даних  39 EOI Вхід/вихід Кінець передачі/ідентифікація  36 DAV Вхід/вихід Супроводження даних  37 NRFD Вхід/вихід Не готовий для прийому даних  38 NDAC Вхід/вихід Дані не прийняті  26 ATN Вхід Керування  24 IFC Вхід Очищення інтерфейсу  27 SRQ   Запит на обслуговування  25 REN Вхід Дозвіл дистанційного управління  1, 2 T/R1, T/R2 Виходи Керування прийомо-збуджувальною схемою  40 Ucc - Напруга живлення +5В  20 GND - Спільний   Мультиплексор К155КП7 Ця мікросхема являє собою мультиплексор USB 2.0 - мікросхему, що забезпечує простий і дуже гнучкий спосіб підключення портативних пристроїв з інтерфейсом USB і без нього. Вона має велику гнучкість має здатність перемикатися між джерелами даних, що мають різні швидкості передачі і рівні сигналів, і виводити їх на загальний роз'єм, має вхід дозволу роботи ,та комплементарні виходи. Струм споживання К155КП7 не перевищує 48мА. Дозволяє комутувати сигнали до 8-и входів.  Рис.3 мультиплексор К155КП7 Таблиця істинності мультиплексора: A2 A1 A0 E Y  X X X 0 -  0 0 0 1 S0  0 0 1 1 S1  0 1 0 1 S2  0 1 1 1 S3  1 0 0 1 S4  1 0 1 1 S5  1 1 0 1 S6  1 1 1 1 S7   Intel 8255A Програмований контролер паралельного введення/виведення інформації Intel 8255 (або i8255) - мікросхема контролера програмованого паралельного інтерфейсу. Спочатку розроблена для мікропроцесора Intel 8085. Використовувалася в різних моделях комп'ютерів, спільно з Intel 8086, Z-80 і іншими процесорами. Має три 8-розрядних канали введення-виведення, 8-розрядний канал для підключення до шини даних, два адресні входи. Третій канал введення-виведення може бути розділений на два по 4 біти. Випускалася в корпусах DIP 40 і PLCC 44. Вітчизняний аналог - КР580ВВ55. Адреси приладів: 1 – 0001; 2 – 0010; 3 – 0011; 4 – 0100; 5 – 0101 Прилад 1 регістр зчитування    регістр записування  Вхідні дані(0R) RS2 RS1 RS0 Вихідні дані(0W)  D17 D16 D15 D14 D13 D12 D11 D10 0 0 0 D17 D16 D15 D14 D13 D12 D11 D10  0 0 0 0 1 0 1 0    0 0 0 0 1 0 1 0  Стан переривання(1R) RS2 RS1 RS0 Дозвіл переривання(1W)  CPT APT GET END DEC ERR B0 B1 0 0 1 CPT APT GET END DEC ERR B0 B1  1 1 0 1 1 0 1 1    1 1 0 1 1 0 1 1  Стан переривання(2R) RS2 RS1 RS0 Дозвіл переривання(2W)  INT SPAS DMA0 DMA1 SPC LLOC REMC ADSC 0 1 0 0 0 DMA0 DMA1 SPC LLOC REMC ADSC  1 1 1 1 1 0 0 0    0 0 1 1 1 0 0 0  Статус послідовного опитування(3R) RS2 RS1 RS0 Статус послідовного опитування(3W)  S8 SRQS S6 S5 S4 S3 S2 S1 0 1 1 S8 rsv S6 S5 S4 S3 S2 S1  0 1 0 0 0 0 0 0    0 0 0 0 0 0 0 0  Стан адресування(4R) RS2 RS1 RS0 Спосіб адресування(4W)  ton lon EOI LPAS TPAS LA TA MJMN 1 0 0 T0 L0 0 0 0 0 ADM1 ADM0  0 1 0 0 0 0 0 0    1 1 0 0 0 0 1 1  Адреса0(6R) RS2 RS1 RS0 Адреса0/1(6W)  INT DT0 DL0 AD5 AD4 AD3 AD2 AD1 1 1 0 ARS DT DL AD5 AD4 AD3 AD2 AD1  1 1 0 0 0 0 0 1    0 1 0 0 0 0 0 1  Адреса1(7R) RS2 RS1 RS0 EOS(7W)  X DT1 DL1 AD5 AD4 AD3 AD2 AD1 1 1 1 EC7 EC6 EC5 EC4 EC3 EC2 EC1 EC0  0 1 1 0 0 0 0 0    0 0 0 0 1 0 1 0   Прилад 2 регістр зчитування    регістр записування  Вхідні дані(0R) RS2 RS1 RS0 Вихідні дані(0W)  D17 D16 D15 D14 D13 D12 D11 D10 0 0 0 D17 D16 D15 D14 D13 D12 D11 D10  0 0 0 0 1 0 1 0    0 0 0 0 1 0 1 0  Стан переривання(1R) RS2 RS1 RS0 Дозвіл переривання(1W)  CPT APT GET END DEC ERR B0 B1 0 0 1 CPT APT GET END DEC ERR B0 B1  1 1 0 1 1 0 1 1    1 1 0 1 1 0 1 1  Стан переривання(2R) RS2 RS1 RS0 Дозвіл переривання(2W)  INT SPAS DMA0 DMA1 SPC LLOC REMC ADSC 0 1 0 0 0 DMA0 DMA1 SPC LLOC REMC ADSC  1 1 1 1 1 0 0 0    0 0 1 1 1 0 0 0  Статус послідовного опитування(3R) RS2 RS1 RS0 Статус послідовного опитування(3W)  S8 SRQS S6 S5 S4 S3 S2 S1 0 1 1 S8 rsv S6 S5 S4 S3 S2 S1  0 1 0 0 0 0 0 0    0 0 0 0 0 0 0 0  Стан адресування(4R) RS2 RS1 RS0 Спосіб адресування(4W)  ton lon EOI LPAS TPAS LA TA MJMN 1 0 0 T0 L0 0 0 0 0 ADM1 ADM0  0 1 0 0 0 0 0 0    1 1 0 0 0 0 1 1  Адреса0(6R) RS2 RS1 RS0 Адреса0/1(6W)  INT DT0 DL0 AD5 AD4 AD3 AD2 AD1 1 1 0 ARS DT DL AD5 AD4 AD3 AD2 AD1  1 1 0 0 0 0 0 1    0 1 0 0 0 0 0 1  Адреса1(7R) RS2 RS1 RS0 EOS(7W)  X DT1 DL1 AD5 AD4 AD3 AD2 AD1 1 1 1 EC7 EC6 EC5 EC4 EC3 EC2 EC1 EC0  0 1 1 0 0 0 0 0    0 0 0 0 1 0 1 0   Прилад 3 регістр зчитування    регістр записування  Вхідні дані(0R) RS2 RS1 RS0 Вихідні дані(0W)  D17 D16 D15 D14 D13 D12 D11 D10 0 0 0 D17 D16 D15 D14 D13 D12 D11 D10  0 0 0 0 1 0 1 0    0 0 0 0 1 0 1 0  Стан переривання(1R) RS2 RS1 RS0 Дозвіл переривання(1W)  CPT APT GET END DEC ERR B0 B1 0 0 1 CPT APT GET END DEC ERR B0 B1  1 1 0 1 1 0 1 1    1 1 0 1 1 0 1 1  Стан переривання(2R) RS2 RS1 RS0 Дозвіл переривання(2W)  INT SPAS DMA0 DMA1 SPC LLOC REMC ADSC 0 1 0 0 0 DMA0 DMA1 SPC LLOC REMC ADSC  1 1 1 1 1 0 0 0    0 0 1 1 1 0 0 0  Статус послідовного опитування(3R) RS2 RS1 RS0 Статус послідовного опитування(3W)  S8 SRQS S6 S5 S4 S3 S2 S1 0 1 1 S8 rsv S6 S5 S4 S3 S2 S1  0 1 0 0 0 0 0 0    0 0 0 0 0 0 0 0  Стан адресування(4R) RS2 RS1 RS0 Спосіб адресування(4W)  ton lon EOI LPAS TPAS LA TA MJMN 1 0 0 T0 L0 0 0 0 0 ADM1 ADM0  0 1 0 0 0 0 0 0    1 1 0 0 0 0 1 1  Адреса0(6R) RS2 RS1 RS0 Адреса0/1(6W)  INT DT0 DL0 AD5 AD4 AD3 AD2 AD1 1 1 0 ARS DT DL AD5 AD4 AD3 AD2 AD1  1 1 0 0 0 0 0 1    0 1 0 0 0 0 0 1  Адреса1(7R) RS2 RS1 RS0 EOS(7W)  X DT1 DL1 AD5 AD4 AD3 AD2 AD1 1 1 1 EC7 EC6 EC5 EC4 EC3 EC2 EC1 EC0  0 1 1 0 0 0 0 0    0 0 0 0 1 0 1 0  Прилад 4 регістр зчитування    регістр записування  Вхідні дані(0R) RS2 RS1 RS0 Вихідні дані(0W)  D17 D16 D15 D14 D13 D12 D11 D10 0 0 0 D17 D16 D15 D14 D13 D12 D11 D10  0 0 0 0 1 0 1 0    0 0 0 0 1 0 1 0  Стан переривання(1R) RS2 RS1 RS0 Дозвіл переривання(1W)  CPT APT GET END DEC ERR B0 B1 0 0 1 CPT APT GET END DEC ERR B0 B1  1 1 0 1 1 0 1 1    1 1 0 1 1 0 1 1  Стан переривання(2R) RS2 RS1 RS0 Дозвіл переривання(2W)  INT SPAS DMA0 DMA1 SPC LLOC REMC ADSC 0 1 0 0 0 DMA0 DMA1 SPC LLOC REMC ADSC  1 1 1 1 1 0 0 0    0 0 1 1 1 0 0 0  Статус послідовного опитування(3R) RS2 RS1 RS0 Статус послідовного опитування(3W)  S8 SRQS S6 S5 S4 S3 S2 S1 0 1 1 S8 rsv S6 S5 S4 S3 S2 S1  0 1 0 0 0 0 0 0    0 0 0 0 0 0 0 0  Стан адресування(4R) RS2 RS1 RS0 Спосіб адресування(4W)  ton lon EOI LPAS TPAS LA TA MJMN 1 0 0 T0 L0 0 0 0 0 ADM1 ADM0  0 1 0 0 0 0 0 0    1 1 0 0 0 0 1 1  Адреса0(6R) RS2 RS1 RS0 Адреса0/1(6W)  INT DT0 DL0 AD5 AD4 AD3 AD2 AD1 1 1 0 ARS DT DL AD5 AD4 AD3 AD2 AD1  1 1 0 0 0 0 0 1    0 1 0 0 0 0 0 1  Адреса1(7R) RS2 RS1 RS0 EOS(7W)  X DT1 DL1 AD5 AD4 AD3 AD2 AD1 1 1 1 EC7 EC6 EC5 EC4 EC3 EC2 EC1 EC0  0 1 1 0 0 0 0 0    0 0 0 0 1 0 1 0   Прилад 5 регістр зчитування    регістр записування  Вхідні дані(0R) RS2 RS1 RS0 Вихідні дані(0W)  D17 D16 D15 D14 D13 D12 D11 D10 0 0 0 D17 D16 D15 D14 D13 D12 D11 D10  0 0 0 0 1 0 1 0    0 0 0 0 1 0 1 0  Стан переривання(1R) RS2 RS1 RS0 Дозвіл переривання(1W)  CPT APT GET END DEC ERR B0 B1 0 0 1 CPT APT GET END DEC ERR B0 B1  1 1 0 1 1 0 1 1    1 1 0 1 1 0 1 1  Стан переривання(2R) RS2 RS1 RS0 Дозвіл переривання(2W)  INT SPAS DMA0 DMA1 SPC LLOC REMC ADSC 0 1 0 0 0 DMA0 DMA1 SPC LLOC REMC ADSC  1 1 1 1 1 0 0 0    0 0 1 1 1 0 0 0  Статус послідовного опитування(3R) RS2 RS1 RS0 Статус послідовного опитування(3W)  S8 SRQS S6 S5 S4 S3 S2 S1 0 1 1 S8 rsv S6 S5 S4 S3 S2 S1  0 1 0 0 0 0 0 0    0 0 0 0 0 0 0 0  Стан адресування(4R) RS2 RS1 RS0 Спосіб адресування(4W)  ton lon EOI LPAS TPAS LA TA MJMN 1 0 0 T0 L0 0 0 0 0 ADM1 ADM0  0 1 0 0 0 0 0 0    1 1 0 0 0 0 1 1  Адреса0(6R) RS2 RS1 RS0 Адреса0/1(6W)  INT DT0 DL0 AD5 AD4 AD3 AD2 AD1 1 1 0 ARS DT DL AD5 AD4 AD3 AD2 AD1  1 1 0 0 0 0 0 1    0 1 0 0 0 0 0 1  Адреса1(7R) RS2 RS1 RS0 EOS(7W)  X DT1 DL1 AD5 AD4 AD3 AD2 AD1 1 1 1 EC7 EC6 EC5 EC4 EC3 EC2 EC1 EC0  0 1 1 0 0 0 0 0    0 0 0 0 1 0 1 0  Ініціалізація годинника: регістр зчитування RS2 RS1 RS0 Регістр записування  Додатковий режим (5R)    Додатковий режим (5W)  CNT2 CNT1 CNT0 СOM4 COM3 COM2 COM1 COM0 1 0 1 CNT2 CNT1 CNT0 COM4 COM3 COM2 COM1 COM0  0 0 1 0 0 1 1 1     1 0 0 0 0 1 0 0   Ініціалізація допоміжного регістра А:                                     Додатковий режим (5R)    Додатковий режим (5W)  CNT2 CNT1 CNT0 СOM4 COM3 COM2 COM1 COM0 1 0 1 CNT2 CNT1 CNT0 COM4 COM3 COM2 COM1 COM0  1 0 0 0 1 1 0 0    1 0 0 0 1 1 0 0  Ініціалізація допоміжного регістра B:                1 0 1 0 1 1 1 1                Додатковий режим (5R)    Додатковий режим (5W)  CNT2 CNT1 CNT0 СOM4 COM3 COM2 COM1 COM0 1 0 1 CNT2 CNT1 CNT0 COM4 COM3 COM2 COM1 COM0  1 0 1 0 1 1 1 1    1 0 1 0 1 1 1 1  Негайне виконання pon:                                       Додатковий режим (5R)    Додатковий режим (5W)  CNT2 CNT1 CNT0 СOM4 COM3 COM2 COM1 COM0 1 0 1 CNT2 CNT1 CNT0 COM4 COM3 COM2 COM1 COM0  0 0 0 0 0 0 0 0    0 0 0 0 0 0 0 0   5.Список використаної літератури Поліщук Є.С., Дорожовець М.М., Яцук В.О. та ін. Метрологія та вимірювальна техніка: Підручник. / За ред. Є.С.Поліщука. Львів.: Видавництво “Бескид Біт”, 2003. – 544с. М.Дорожовець, В.Мотало, Б.Стадник та ін. Основи метрології та вимірювальної техніки: Підручник у 2-х т. Т.1. Основи метрології. Львів : Видавництво НУ “Львівська політехніка”, 2005. – 532 с. М.Дорожовець, В.Мотало, Б.Стадник та ін. Основи метрології та вимірювальної техніки: Підручник у 2-х т. Т.2. Вимірювальна техніка. Львів : Видавництво НУ “Львівська політехніка”, 2005. – 632 с. Поліщук Є.С., Дорожовець М.М., Стадник Б.І. та ін. Засоби та методи вимірювань неелектричних величин: Підручник. /За ред. Є.С.Поліщука. Львів.: Видавництво “Бескид Біт”, 2008. –618 с. Мейзда Ф. Электронные измерительные приборы и методы измерений / Пер. с англ. – Москва : Мир, 1990. – 535 с. Атамалян Э.Г. Приборы и методы измерения электрических величин.- Москва : Высшая школа, 1989. Інформація з Веб-сайту фірми «Інтел» щодо будови та основних технічних характеристик мікропроцесорів серії 8000 (прикладається). Коршунов А.М. Микропроцессорные системы ЭФУ. Иллюстрации к курсу лекций. Москва : МИФИ. – 2008. – 39 с. (прикладається). Мультиплексор USB 2.0 уменьшает количество разъемов Драйвер до USB мультиплексора #pragma language=extended #include <io8515.h> #include <ina90.h> #include <def9602.h> #include <defusb.h> #include <dsc_cd.h> #define SETBIT(ADDR,BIT) (ADDR |=(1<<BIT)) #define CLRBIT(ADDR,BIT) (ADDR &=~(1<<BIT)) #define SetBitR(Byte,Bit) (Byte |=(Bit)) #define ClrBitR(Byte,Bit) (Byte &=~(Bit)) #define ChkBitR(Byte,Bit) (Byte & (Bit)) unsigned char usb_buf[8]; /*Буфер Endpoint 0*/ unsigned char usb_cfg=0; /*Номер используемой CONFIGURATION*/ unsigned char address=0; /*Адрес назначеный ХОСТом*/ unsigned char Prt_Typ=0; unsigned char Rpt_ID=0; unsigned char Rpt_typ=0; unsigned char Rpt_Cnt=0; unsigned char DataPID=0; /*Массив DATA PIDs для IN Endpoints, '1'-Data1PID, '0'-Data0PID */ #define TGL0PID 1 #define TGL1PID 2 #define TGL2PID 4 #define TGL3PID 8 unsigned char status=0; /*Байт состояния, если в соответствующем бите '1'- состояние установлено, '0' - сброшено*/ #define GETDESC 1 /*Находимся в режиме выдачи дескриптора */ #define MULTIPAK 2 /*Находимся в состоянии выдачи Multipacket-a */ #define OutPack 16 unsigned char stalld=0; /*Байт указывающий находится ли Endpoint в состоянии HALT(выдачи STALL) '1'- STALL, '0' - Normal Operation*/ #define BIT0 1 /*Endpoint 0*/ #define BIT1 2 /*Endpoint 1*/ #define BIT2 4 /*Endpoint 2*/ #define BIT3 8 /*Endpoint 3*/ #define BIT4 16 /*Endpoint 4*/ #define BIT5 32 /*Endpoint 5*/ #define BIT6 64 /*Endpoint 6*/ unsigned char des_sze; /*Размер дескриптора в байтах*/ unsigned char des_idx; /*Индекс в таблице дескриптора*/ unsigned char des_typ; /*Тип выдаваемого дескриптора*/ unsigned char usb_idl; unsigned char rptCD[2]; /*Буфер используемый для выдачи REPORT по клавишам */ flash char RX0[]="RO"; flash char NAK0[]="NO"; flash char TX0[]="TO"; flash char NAK3[]="N3"; flash char ALTI[]="AL"; flash char TX3[]="T3"; flash char KS[]="KS Labs HID"; flash char EV[]="-=GamePad=-"; flash char Key[]="Keys:"; flash char Ev[]="Event:"; #define ALE 4 #define RD 5 #define WR 6 #define CS 7 /*Процедура записи байта в USBN9604. Адрес регистра в который записывается*/ /*байт находится в U_ADDR. Cам записываемый байт находится в U_DATA. */ void USB_WR(char U_ADDR,char U_DATA) { DDRA=0xFF; /*Настраиваем PORTA на выход для выдачи адреса*/ SETBIT(PORTC,ALE); /*Устанавливаем ALE в 1 */ CLRBIT(PORTC,CS); /*Устанавливаем CS в 1 Выбираем USBN9604*/ PORTA=U_ADDR; /*Выдаем адрес регистра*/ CLRBIT(PORTC,ALE); /*Сбрасываем ALE в '0', защелкивая адрес*/ CLRBIT(PORTC,WR); /*Сбрасываем WR в '0', инициируя запись*/ PORTA=U_DATA; /*Выставляем на шину данные*/ SETBIT(PORTC,WR); /* Защелкиваем данные '1' на WR*/ SETBIT(PORTC,CS); /* Устанавливаем CS в '1' - отключаем микросхему*/ } /*Процедура чтения байта из USBN9604. Адрес регистра в который записывается*/ /*байт находится в U_ADDR. Cам считанный байт находится в U_DATA*/ unsigned char USB_RD(char U_ADDR) { char U_
Антиботан аватар за замовчуванням

12.04.2013 09:04-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!