Безкоштовна технічна бібліотека ЕНЦИКЛОПЕДІЯ РАДІОЕЛЕКТРОНІКИ ТА ЕЛЕКТРОТЕХНІКИ Логічний аналізатор з урахуванням комп'ютера. Енциклопедія радіоелектроніки та електротехніки Енциклопедія радіоелектроніки та електротехніки / Комп'ютери Загальнодоступна література з комп'ютерної тематики присвячена переважно традиційному застосуванню персонального комп'ютера (ПК) - для розрахунків, створення та редагування документів, пошуку та зберігання інформації, розваг. Рідше зустрічаються статті та книги про проектування за допомогою ПК різних радіоелектронних пристроїв. Про те, як ПК може допомогти радіоаматору в налаштуванні та налагодженні створюваних ним пристроїв, матеріалів майже немає. Вважається, що для цього ПК має бути оснащений досить складними та дорогими додатковими платами та приставками. Однак нерідко ряд дуже корисних радіоаматору функцій можна реалізувати, використовуючи стандартні пристрої, що є в кожному ПК, наприклад комунікаційні порти. Про це й йтиметься у запропонованій статті. Кожен IBM-сумісний ПК має два послідовні порти для обміну даними, які називаються COM-портами або інтерфейсами RS-232C. До одного з них зазвичай підключений маніпулятор "миша", без якого сьогодні важко уявити ефективну роботу, другий часто залишається вільним або використовується час від часу для підключення зовнішнього модему та інших периферійних пристроїв, що не працюють постійно. Набір сигналів інтерфейсу RS-232C та їх призначення докладно описані у [1]. Усі вони перелічені у табл. 1 разом з не згаданим у тій статті RI (Ring Indicator - індикатор дзвінка, ланцюг 125). Як видно, у розпорядженні користувача є три вихідні та п'ять вхідних ланцюгів. Програма, що формує на виходах COM-порту сигнали потрібної форми і одночасно аналізує стан його входів, здатна перетворити ПК на багатоканальний логічний аналізатор з широким діапазоном періодів аналізу і багатими можливостями синхронізації, обробки і відображення результатів. Вона може бути корисною при налагодженні різних цифрових пристроїв. Основна труднощі розробки програми-аналізатора полягає в тому, що стандартна апаратно-програмна конфігурація IBM-сумісного ПК навіть за наявності швидкодіючих процесора та ОЗУ не дозволяє скільки-небудь точно формувати інтервали, менші за кілька сотень мілісекунд, використовуючи в DOS переривання процесора по переповненню системного таймера , а Windows - таймерні повідомлення. Так як ці події відбуваються з періодом приблизно 55 мс, саме таким виходить квант відліку часу. Спроби перепрограмувати таймер призводять до непрогнозованих наслідків для всіх програм і самої операційної системи. Можна відміряти час, підраховуючи кількість виконаних програмою циклів та подбавши, щоб цей процес не переривали зовнішні події. Але і таке завдання в сучасних операційних системах не вирішується коректно, до того ж потрібно підстроювання витримки стосовно кожної апаратної конфігурації ПК. У MS DOS подібні проблеми вирішуються легше, але розробка програми стає надто трудомісткою, якщо потрібні графічний інтерфейс та допоміжні дії: обчислення, друк графіків. Тим не менш, при використанні будь-якої операційної системи можна отримати сигнал строго заданої частоти і форми на виході TXD послідовного порту. Як відомо, частота проходження бітів даних, що передаються, дорівнює приватному від поділу стабілізованої кварцовим резонатором зразкової частоти (115 200 Гц) на коефіцієнт M. Системне програмне забезпечення вибирає і встановлює цей коефіцієнт, виходячи зі стандартних швидкостей передачі інформації. Однак ніщо не заважає прикладній програмі привласнити коефіцієнт M будь-яке значення від 1 до 216 -1 (0FFFFH). Таким чином, на виході TXD можуть бути отримані імпульси частотою від 57,6 кГц до часток герца, причому довільну частоту нижче 12 кГц вдається встановити з похибкою не більше +10 а нижче 1,2 кГц - +1 %. Послідовним портом управляють через десять восьмирозрядних регістрів його контролера, званого універсальним асинхронним приймачем (УАПП, UART). У табл. 2 наведені адреси цих регістрів у просторі введення-виведення ПК та їх функціональне призначення. Неважко помітити, деякі з них мають однакові адреси. Доступом до інших додатково управляє старший розряд (D7) регістру керування лінією. Якщо в ньому логічна 1, звертаються до регістрів дільника швидкості (старшого та молодшого байтів числа M), якщо 0 - даних передавача та приймача, дозволу переривань. Формат сигналу на виході TXD залежить від коду, записаного в регістр керування лінією. Розрядами D1 і D0 цього коду задають кількість інформаційних бітів у слові, яке передається (або приймається) УАПП. Їх може бути від п'яти (у згаданих розрядах – код 00) до восьми (код 11). Число стоп-бітів залежить від стану розряду D2: 0 – один; 1 – два. При п'яти інформаційних замість двох стоп-бітів передається один, але півторний тривалості, що зроблено для сумісності зі старовинними механічними телетайп. Розряди D3-D5 регістра управління лінією управляють бітом контролю парності. Якщо D3=1, при передачі він "вставляється" між останнім інформаційним та першим стоп-бітами, інакше - відсутній. Значення цього біта передавач автоматично вибирає таким, щоб загальна кількість одиниць в інформаційних та контрольних бітах стала парною (при D4=1) або непарною (при D4=0). Цю логіку можна вимкнути, поставивши D5=1. Контрольний біт стане інверсним значенням розряду D4 незалежно від кількості одиниць інформаційних бітах. Логічною 1 у розряді D6 включають режим імітації розриву зв'язку. На виході TXD незалежно від стану інших розрядів і регістрів встановлюється постійний рівень логічного 0. Призначення розряду D7 було описано вище. У табл. 3 наведені деякі приклади формування в ланцюзі TXD сигналів різної частоти і шпаруватості, які далеко не вичерпують всі можливості. Сигнал форми, що показана у відповідній графі таблиці, можна спостерігати безпосередньо на виході TXD УАПП. На зовнішньому роз'ємі порту він проінвертовано. Однак описаний нижче пристрій сполучення проінвертує сигнал ще раз і його форма знову збігається з табличною. Нагадаємо, що передача байта, записаного в регістр даних передавача, починається з молодшого розряду. Так як байт передається всього один раз, для отримання періодичного вихідного сигналу необхідно повторювати завантаження зазначеного регістру негайно після його звільнення. Про готовність до запису нового байта свідчить D5=1 у регістрі стану лінії. Якщо небажано витрачати час на постійне опитування регістру стану, можна скористатися перериваннями. Зазвичай контролер порту COM1 генерує запит IRQ4, а COM2 – IRQ3. Генерацію запитів переривання за готовністю передавача необхідно дозволити записом логічного 1 в розряд D1 регістра дозволу переривань. Коли ж одночасно дозволені запити і з інших причин, при їх обробці слід перш за все прочитати регістр ідентифікації переривань і, лише переконавшись, що в розрядах D2 і D1 є двійковий код 10, записувати в регістр даних передавача новий байт. Рівні сигналів на виходах RTS та DTR залежать від стану розрядів D1 та D0 регістру управління модемом. У розряди D2 та D3 цього регістру рекомендується записувати логічні 0. Але в деяких ПК нульове значення розряду D3 відключає УАПП від контролера переривань. Якщо занести логічну 1 в розряд D4, ланцюги TXD і RXD будуть з'єднані між собою всередині УАПП (так званий "внутрішній шлейф"), що можна використовувати для налагодження та діагностичних цілях. У розрядах D4, D5, D6 та D7 регістру стану модему відображаються поточні рівні сигналів на чотирьох входах - відповідно CTS, DTS, RI та DCD. Дуже корисною є властивість УАПП фіксувати одиницями в розрядах D0-D3 факти зміни стану названих ланцюгів в інтервалах між зверненнями програми до цього регістру. Передбачені і переривання щодо зміни стану модему. Їм відповідають розряд D3 регістра дозволу переривань та код 11 у розрядах D2 та D1 регістра їх ідентифікації. На жаль, основний при використанні послідовного порту за прямим призначенням вхідний ланцюг RXD для завдання не представляє великого інтересу. Докладніше про призначення та використання регістрів УАПП можна прочитати, наприклад, у [2]. Логічні рівні сигналів на входах і виходах послідовного порту повинні знаходитися в межах -3...-15 (логічна 1) і +3...+15 (логічний 0). Для налагодження пристроїв на мікросхемах ТТЛ та КМОП ці рівні необхідно відповідним чином перетворити. Зробити це можна за допомогою вузла сполучення, схема якого показана на рис. 1. Елементи мікросхеми DD1 перетворять вихідні сигнали порту до необхідних рівнів, а ключі на транзисторах VT1-VT4 виконають зворотне перетворення. Перемикачем SA1 можна з'єднати один із входів порту безпосередньо з виходом TXD. Це необхідне тактування процесу аналізу. Виделку XS1 з'єднують з розеткою послідовного порту ПК кабелем довжиною до декількох метрів, пристрій, що налагоджується, підключають до гнізд XS2-XS11. Живити вузол сполучення і пристрій, що налагоджується, найкраще від загального джерела. Часто у пристрої, що налагоджується, немає необхідного для живлення колекторних ланцюгів транзисторів VT1-VT4 негативної напруги. У такому разі вони живляться "випрямленим" діодами VD1-VD3 негативною напругою вихідних сигналів порту, що перебувають у стані логічної 1. Розроблена автором програма генератора сигналів та логічного аналізатора працює у 32-розрядному середовищі Windows. Її головне вікно "Аналізатор", зображене на рис. 2, являє собою екран віртуального чотириканального (за кількістю вхідних ланцюгів порту) осцилографа, що запам'ятовує. Ліворуч від екрану розташовані індикатори ("світлодіоди"), що полегшують спостереження повільних процесів. Після запуску програми необхідно вибрати в меню Порт комунікаційний порт, з яким вона працюватиме. Розгортка осцилографа може бути безперервною із заданим періодом або одноразовою (запускають натисканням на відповідну кнопку). Кнопкою "Стоп" зображення можна "заморозити". Відкривши вікно "Синхронізація" (рис. 3), вибирають як синхронізуючий будь-який із вхідних або вихідних сигналів. У вікні "Розгортка" (рис. 4) задають тактову частоту аналізу та його тривалість. Діалогове вікно "Режими вихідних ліній", в якому встановлюють частоту і форму сигналів, що генеруються, показано на рис. 5. Коефіцієнт поділу тактової частоти змінюють декадним перемикачем. Програма підраховує та виводить у вікні відповідні заданому коефіцієнту та вибраній формі сигналу на виході TXD значення частоти та періоду повторення. Генерація може бути безперервною, одноразовою або пачками із заданого числа імпульсів. Рівні сигналів DTR та RTS встановлюють кнопками "0" і "1". Крім того, на цих виходах можна отримати меандр або сигнал довільної форми. Авторська програма генератора сигналів та логічного аналізатора література
Автор: А.Шрайбер, м.Москва Дивіться інші статті розділу Комп'ютери. Читайте та пишіть корисні коментарі до цієї статті. Останні новини науки та техніки, новинки електроніки: Штучна шкіра для емуляції дотиків
15.04.2024 Котячий унітаз Petgugu Global
15.04.2024 Привабливість дбайливих чоловіків
14.04.2024
Інші цікаві новини: ▪ Ігровий монітор MSI G322CQP із увігнутим екраном WQHD ▪ Сонячна буря загрожує Олімпіаді 2012 ▪ Уловлювання метану з повітря за допомогою цеолітів ▪ Екологічно чиста речовина для охолодження Стрічка новин науки та техніки, новинок електроніки
Цікаві матеріали Безкоштовної технічної бібліотеки: ▪ розділ сайту Побутові електроприлади. Добірка статей ▪ стаття Сміливість, сміливість та ще раз сміливість. Крилатий вислів ▪ стаття Навіщо людям потрібна була астрономія? Детальна відповідь ▪ стаття Глід колючий. Легенди, вирощування, способи застосування ▪ стаття Зефір. Прості рецепти та поради ▪ стаття Цікавий збіг. Секрет фокусу
Залишіть свій коментар до цієї статті: All languages of this page Головна сторінка | Бібліотека | Статті | Карта сайту | Відгуки про сайт www.diagram.com.ua |