товий термінал
В
Можна зовсім обійтися без друкованої плати, а виконати монтаж адаптера навісним способом на контактах роз'єму. p> До гвинтовому терміналу підключається мікросхема термометра за допомогою проводів, довжина яких може становити до декількох метрів. Якщо датчик термометра використовується в кімнатних умовах, те жодних заходів щодо його захисту застосовувати не потрібно, необхідно тільки заізолювати висновки. Якщо ж передбачається вимірювати температуру зовнішнього повітря або якихось агресивних середовищ, датчик термометра необхідно упакувати. Наприклад, можна взяти алюмінієвий корпус електролітичного конденсатора відповідного діаметру і помістити туди датчик, заповнивши весь вільний об'єм теплопроводящей пастою. Зверху такий стакан необхідно загерметизувати. p> Описаний адаптер також підходить для зчитування електронних ключів IButton і для підключення інших однопровідні пристроїв. p> Програма ds1820.exe, що працює під Win95/98/ME/NT, дозволяє зчитувати і відображати показання термометра, а також зчитувати серійний номер і програмувати два користувацьких байта. Ця програма крім термометра DS18S20 підтримує і його попередника DS1820. p> Вид головного вікна програми показано на малюнку
В
Вікно має наступні елементи управління:
Поле Device ID, куди виводиться код сімейства 1-провідного пристрою. Для DS1820 і DS18S20 він дорівнює 10h.
Поле Device Name, де наводиться розшифровка типу пристрою.
Поле Serial number, куди виводиться серійний номер, записаний в ПЗП.
Поле CRC, де відображається результат перевірки контрольної суми (OK або FAIL).
Поле TH/User byte 1, куди можна ввести значення в шістнадцятковій формі, яке буде записано в регістр TH.
Поле TL/User byte 2, куди можна ввести значення в шістнадцятковій формі, яке буде записано в регістр TL.
Кнопка Start запускає процес вимірювання температури. Перетворення виконуються періодично, а виміряна величина виводиться в полі температури. Дискретність подання становить 0.1 В° C, що досягається додатковими обчисленнями.
Кнопка Exit дозволяє вийти з програми.
Крім того, вгорі вікна є меню, що складається з трьох пунктів: Port, Utilites і Help.
В
Меню Port в розгорнутому вигляді показано на рис. 13. Це меню дозволяє відкрити один з чотирьох портів COM1 - COM4. Крім того, меню дозволяє закрити порт і вийти з програми. У списку активні тільки доступні порти (тобто ті, які фізично присутні і не зайняті в даний момент іншими додатками). Коли порт відкривається, перевіряється наявність на цьому порту адаптера (досить з'єднання TXD - RXD). Якщо адаптер не знайдений, виводиться відповідне повідомлення
В
Меню Help містить малюнок принципової схеми адаптера і відомості про розробника програми. p> Для зберігання установок програма використовує ini-файл, який створюється автоматично у тому же директорії, де розташований exe-файл. У ini-файлі міститься інформація про положенні вікна програми та номер використовуваного COM-порту:
[General]
Left = 427
Top = 295
COM port = 2
Якщо в існуючому ini-файлі вказано номер COM-порту, який на момент запуску програми зайнятий або відсутній, виводиться спеціальне повідомлення
В
Меню Utilites містить три пункти:
Read ROM - зчитування вмісту ПЗУ (код сімейства, серійний номер), а також зчитування TH і TL.
Start Conv. - дублює кнопку Start основного вікна.
Write User Bytes - Записує значення TH і TL, які введені у відповідних полях. <В
Обмін, який проводиться за 1-провідний шині, вимагає досить точного дотримання часових співвідношень мікросекундного діапазону. Працюючи під Windows, точно сформувати такі інтервали програмним способом неможливо. Тому необхідні тимчасові інтервали формуються апаратно мікросхемою прийомопередавача послідовного порту, який використовується не зовсім звичайно. p> Для генерації імпульсу скидання і прийому відповіді порт налаштовується на швидкість 9600 бод, довжина символу 8 біт, і передається число F0h. Це призводить до формування імпульсу скидання низького рівня (з урахуванням інверсії адаптера) тривалістю приблизно 520 мкс (стартовий біт + 4 переданих біта). За ним слідує імпульс високої рівня такої ж тривалості (4 переданих біта + стоповий біт), протягом якого очікується відповідь термометра. Якщо термометр не підключений, то порт візьме число F0h не перекрученого. Але якщо термометр сформував імпульс відповіді, то прийняте число буде містити більшу кількість одиниць, ніж чотири. Таким чином визначається наявність відповіді. p> Для генерації інтервалів прийому і передачі бітів, порт налаштовується на швидкість 115200 бод. Стартовий біт починає часовий інтервал, потім йдуть 8 поодиноких або нульових біт, залежно від значення біта, який потрібно передати. Закінчується послідовність стоповим бітом, який н...