Описание модулей программы и её отдельных функциональных модулей

Пункт 2, 6-8. Поскольку в схеме применяется ЖКИ, то для его обслуживания необходим соответствующий “драйвер”, т.е. файл “lcd.c” с встроенными функциями ввода, вывода, инициализации. В конце строки 2 указан код, который надо не забыть включить в make-файл.

Пункт 5. В качестве опорного напряжения Vref используется питание AVCC 5 В. Оно может иметь разброс ±1…4% от номинала. Следовательно, после первого запуска прибора в работу надо провести его калибровку, которая заключается в измерении внешним вольтметром напряжения Vref на обкладках конденсатора С1. После этого полученное число в милливольтах надо подставить в константу VREF и заново откомпилировать программу.

Пункт 15 конфигурирует порт С. В схеме вольтметра линии РС0, РС2 выполняют функцию обычных цифровых выходов. Это абсолютно не мешает использованию их “среднего брата” РС1 в качестве входа АЦП. Единственное, надо отключить внутренний резистор от РС1, иначе будут искажаться показания вольтметра. А вот к незадействованным линиям РС3-РС5, наоборот, необходимо программно подключить резисторы, чтобы устранить путь проникновения нежелательных помех. В итоге получается, что настройку регистров PORTC, DDRC необходимо производить для каждой схемы отдельно, с учетом свободных и занятых линий порта С.

Пункт 18, 20 числа в регистрах ADMUX, ADCSRA записаны они более компактно, в порядке их извлечения из пунктов 1-7.

Строка 19. Формула для расчета: Fацп[кГц]=Fclk[кГц]/K= 1000/8=125 кГц.

Строки 18, 36, 42. Вольтамперметр использует два канала АЦП: канал- 1 для измерения напряжения на движке резистора R1 и ка-нал-3 для измерения тока, протекающего через резистор R5. Переключаются каналы поочередно во времени, записью в регистр ADMUX значений из табл.1. Точность в канале-3 выбрана 8 бит, поскольку ток ЖКИ не очень стабилен.

Строки 22-27, 37-41. Усреднение по 10 выборкам повышает точность измерений прибора. Для сравнения, показания вольтметра с управляющей программой из листинга 1 меняются с дискретом 5 мВ, а в данном устройстве через1мВ.

Строка 26 содержит число “0x03”, отсутствующее в командах табл.2. Это своеобразная плата за смену режимов. Дело в том, что в регистре ADCH после измерения в режиме 8/10-бит остается байт данных, который может исказить показания АЦП в режиме 10-бит. Следовательно, число “0x03” принудительно очищает 6 старших битов регистра ADCH.

Строка 28. Поскольку переменная “volt” содержит сумму из 10 выборок, то делитель в формуле пропорционально увеличен с 1024 до 10240.

Строка 43. Расчет тока по закону Ома. В подобных формулах надо внимательно следить за порядком расположения чисел, чтобы не происходило промежуточное деление меньшей величины на большее.

Число “100” округляет ток до сотых долей миллиампера. Число “5” введено для повышения точности. Это усредненная прибавка к ADCH, которая накопилась за 10 замеров (половина последнего разряда). Здесь учтен факт, что в режиме 8 / 10-бит округление всегда происходит в меньшую сторону с отбрасыванием двух младших разрядов.

Другие стьтьи в тему

Радиолокационный уровнемер УРМД 01
В НИИИС будет разработан радиолокационный уровнемер УРМД-01 5 миллиметрового (мм) диапазона длин волн для резервуарного парка углеводородного сырья и продуктов их переработки. Принцип работы уровнемера основан на излучении непрерывного ЛЧМ сигнала и измерение параметров принимаем ...

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

Разделы

Радиоэлектроника и телекоммуникации © 2024 : www.techelements.ru