Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С
Шрифт:
7.3. Цифровой вольтметр
7.3.1. Описание проекта
Для этого проекта мы должны разработать цифровой вольтметр (ЦВ), способный измерять входной аналоговый сигнал в диапазоне от +10 до –10 В. Измеряемое напряжение, отображается на ЖК дисплее, число знакомест которого позволяет отображать числа от 0 до 100.
Диапазон входных измеряемых напряжений для модуля аналого-цифрового преобразования ATD МК 68HC12 составляет 0…5 В. Чтобы измерить входное напряжение в более широком диапазоне, необходим внешний интерфейс.
7.3.2. Системы 68HC12 используемые в проекте
Для реализации проекта мы должны будем использовать следующие модули в составе МК 68HC12, внешние устройства и программы управления:
• Модуль ATD в составе МК 68HC12;
• Символьный ЖК индикатор;
• Интерфейс преобразователя диапазона входного сигнала;
• Алгоритм преобразования измеряемого напряжения в ASCII код для отображения на ЖК индикаторе.
Прежде чем разрабатывать программное обеспечение, рассмотрим некоторые аппаратные решения.
7.3.3. Расчет интерфейса модуля ATD
В разделе 5.9 мы описали, как подключить аналоговое устройство ввода данных к МК 68HC12, использовав методику расчета интерфейса преобразователя. Мы можем применить этот материал для разработки устройства, изменяющего диапазон входного напряжения от исходного ±10 В до диапазона от 0 до 5 В, совместимого с подсистемой аналого-цифрового преобразования для 68HC12.
Структурная схема согласующего устройства приводится на рис. 7.13. Это устройство должно сформировать напряжение 5 В на входе АЦП микроконтроллера, когда на вход вольтметра подается 10 В, и 0 В на входе АЦП при напряжении в –10 В на входе вольтметра. Чтобы выполнить такое преобразование, входной сигнал должен быть умножен на масштабирующий коэффициент, и, кроме того, должно быть создано напряжение смещения. В нашей схеме операцию масштабирования выполняет блок K, и его выходной сигнал суммируется с сигналом смещения B.
Рис. 7.13. К расчету согласующего устройства
По рассмотренной ранее методике составим два уравнения с двумя неизвестными, чтобы описать работу интерфейса преобразователя нашего проекта:
V2max = V2min * K + B
V1max = V1min * K + B
Нетрудно установить, что V1min = –10 В, а V2min = + 10 В, в то время как V1max = 0 В, и V2max = 5 В. Подставим эти значения в нашу систему уравнений:
5 = 10 * K + В
0 = (–10) * K + В
В результате решения системы получим масштабный множитель K = 0.25, и напряжение смещения B = 2.5 В. Cоздадим схему на ОУ с коэффициентом передачи 0.25, и добавим напряжение смещения в 2.5 В.
При работе вольтметра после преобразования входного напряжения встроенным в МК АЦП, мы должны выполнить пересчет кода оцифровки, чтобы получить фактически измеренное входное напряжение
7.3.4. Структура программы и блок-схема алгоритма
Мы приводили структуру программы и блок-схему алгоритма для каждого из рассматриваемых проектов. Для этого проекта мы оставляем разработку структуры и блок схемы читателю в качестве домашней работы (задание 17).
7.3.5. Программа управления