Юрий Ревич - Занимательная электроника

Тут можно читать онлайн Юрий Ревич - Занимательная электроника - бесплатно ознакомительный отрывок. Жанр: sci_radio, издательство БХВ-Петербург, год 2015. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Занимательная электроника
  • Автор:
  • Жанр:
  • Издательство:
    БХВ-Петербург
  • Год:
    2015
  • Город:
    Санкт-Петербург
  • ISBN:
    978-5-9775-3479-6
  • Рейтинг:
    2.9/5. Голосов: 921
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Юрий Ревич - Занимательная электроника краткое содержание

Занимательная электроника - описание и краткое содержание, автор Юрий Ревич, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

На практических примерах рассказано о том, как проектировать, отлаживать и изготавливать электронные устройства в домашних условиях. От физических основ электроники, описания устройства и принципов работы различных радиоэлектронных компонентов, советов по оборудованию домашней лаборатории автор переходит к конкретным аналоговым и цифровым схемам, включая устройства на основе микроконтроллеров. Приведены элементарные сведения по метрологии и теоретическим основам электроники. Дано множество практических рекомендаций: от принципов правильной организации электропитания до получения информации о приборах и приобретении компонентов применительно к российским условиям. Третье издание дополнено сведениями о популярной платформе Arduino, с которой любому радиолюбителю становятся доступными самые современные радиоэлектронные средства.

Для широкого круга радиолюбителей

Занимательная электроника - читать онлайн бесплатно ознакомительный отрывок

Занимательная электроника - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Юрий Ревич
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Так как здесь выводов портов хватает, то можно назначить для управления сегментами разряды подряд, для чего выбран порт С (семь его битов из восьми). Тогда для упрощения программы можно применить следующий прием: где-либо в программе определяются константы, соответствующие маске сегментов для рисунка цифр (зажженному сегменту соответствует единица, младший бит соответствует сегменту а, далее по порядку):

Затем в процедуре индикации мы читаем эти константы с помощью инструкции lpm - фото 229

Затем в процедуре индикации мы читаем эти константы с помощью инструкции lpm , которая специально предназначена для чтения констант из памяти программ. Инструкция находит их по адресу, в данном случае по метке OUT_N (т. к. адресация в памяти производится байтами, а нумерация команд выполняется словами, то адрес метки приходится умножать на два). После чего выводим в порт С непосредственно маску цифр:

Маски расположены по порядку цифр от 0 до 9 Поэтому перед выполнением этой - фото 230

Маски расположены по порядку цифр от 0 до 9. Поэтому перед выполнением этой последовательности команд у нас в рабочем регистре temp должно содержаться значение, соответствующее цифре, выводимой в текущем такте индикации. Так мы избавляемся от процедур рисования знаков. Разряды РВ0-РВ5 назначаем для управления разрядами индикации, а вывод PD7 — для управления знаком температуры.

Не показан на схеме и программирующий разъем, который одинаков для любой схемы на AVR и приведен на рис. 19.2 (соответствующие выводы для ATmega8535 названы на схеме рис. 20.4).

То, что вывод MOSI (вывод 6 ) совпадает с выводом индикации единиц давления, вас смущать уже не должно. Однако незадействованные в других функциях выводы программирования (в данном случае MISO и SLK, выводы 7 и 8 ) следует не забыть подсоединить к питанию (в нашем случае к цифровому питанию +5 Вц) «подтягивающими» резисторами номиналом от 1 до 10 кОм, как и показано на рис. 19.2.

Схема источника питания показана на рис. 20.6.

Рис 206 Схема источника питания для измерителя температуры и давления - фото 231

Рис. 20.6. Схема источника питания для измерителя температуры и давления

Измеритель имеет четыре питания (+5 Вц, +5 Ва, — 5 Ва и +12 В для индикации) и три «земли», причем обычным значком « картинка 232» здесь обозначена аналоговая «земля» GNDa. Линия цифровой «земли» обозначена GNDц, кроме этого, имеется еще общий провод индикаторов GNDи. Все три «земли» соединяются только на плате источника питания. Отмечу, что готовый трансформатор с характеристиками, указанными на схеме, вы можете не найти. Поэтому смело выбирайте тороидальный трансформатор мощностью порядка 10–15 Вт на напряжение вторичной обмотки 10–12 В (которое будет использоваться для индикаторов и стабилизатора +5 Вц), измерьте на нем количество витков на вольт (как описано в главе 9 ) и домотайте три одинаковых обмотки на 7–8 В, каждая поверх существующих, проводом не тоньше 0,3 мм в диаметре. Удобнее всего их мотать одновременно сложенным втрое проводом заранее рассчитанной длины.

Программа

Чтобы перейти к обсуждению непосредственно программы измерителя, нам нужно решить еще один принципиальный вопрос. Передаточная характеристика любого измерителя температуры, показывающего ее в градусах Цельсия, должна «ломаться» в нуле — ниже и выше абсолютные значения показаний возрастают. Так как мы тут действуем в области положительных напряжений, то этот вопрос придется решать самостоятельно (в АЦП типа 572ПВ2, напомним, oпpeделeниe абсолютной величины и индикация знака производились автоматически).

Это несложно сделать, если представить формулу пересчета значений температуры в виде уравнения N= K·| xZ|, где N — число на индикаторе, х — текущий код АЦП, Z — код АЦП, соответствующий нулю градусов Цельсия (при наших установках он должен соответствовать примерно середине диапазона). Чтобы вычислить значение абсолютной величины, нам придется сначала определять, что больше — х или Z , и вычитать из большего меньшее. Заодно при этой операции сравнения мы определяем значение знака. Если в регистрах AregH: AregL содержится значение текущего кода АЦП х , а в регистрах KoeffH: KoeffL значение коэффициента Z , то алгоритм выглядит примерно вот так:

Здесь разряд 7 порта D вывод 21 контроллера управляет плоским светодиодом - фото 233

Здесь разряд 7 порта D (вывод 21 контроллера) управляет плоским светодиодом «минус», который горит, если температура ниже нуля, и погашен, если выше. Давление занимает только положительную область значений, поэтому там такой сложной процедуры не понадобится. Если вы посмотрите на характеристику датчика в фирменном описании, то выясните, что он работает не с начала шкалы — нулевому напряжению на выходе (и, соответственно, нулевому коду АЦП) будет соответствовать некоторое значение давления. В результате можно ожидать, что в формуле пересчета значений давления, представленной в виде N= K( x+ Z), все величины будут в положительной области.

Физический смысл коэффициента К — крутизна характеристики датчиков в координатах «входной код АЦП — число на индикаторах». Умножение на коэффициент К мы будем производить описанным ранее методом — через представление его в виде двоичной дроби (за основу берется 2 10= 1024, этого будет достаточно). Вычисление ориентировочных значений коэффициентов К и Z поясняется далее, при описании процедуры калибровки.

Теперь можно окинуть взглядом собственно программу. Целиком ее текст и результирующий hex-файл можно скачать с сайта автора по адресу http://revich.lib.ru/AVR/TPineter.zip. При всей своей видимой «навороченности», программа TPmeter занимает в памяти программ контроллера всего 632 байта — сравните со многими килобайтами и даже десятками килобайт, которые будет занимать аналогичная программа на Arduino .

Как вы видите из таблицы прерываний, здесь используется всего один, самый простой Timer 0, который срабатывает с частотой около 2000 раз в секунду. В его обработчике по метке TIM0 и заключена большая часть функциональности. В каждом цикле сначала проверяется счетчик cRazr , который отсчитывает разряды индикаторов (от 0 до 5). В соответствии с его значением происходит формирование кода индицируемого знака и затем на нужный разряд подается питание. После формирования цифры программа переходит к довольно запутанному, на первый взгляд, алгоритму работы АЦП. На самом деле он не так уж и сложен.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Юрий Ревич читать все книги автора по порядку

Юрий Ревич - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Занимательная электроника отзывы


Отзывы читателей о книге Занимательная электроника, автор: Юрий Ревич. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x