Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная записка_Мельников_6401.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
1 Мб
Скачать
☆

3.2 Выбор пу

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

Преобразователь уровней MAX487 обеспечивает полудуплексную передачу по интерфейсу RS-485 на скорости до 0,25 Мбит в секунду и поддерживает подключение до 128 устройств к общей шине [4], что является достаточным для выполняемого задания.

4 Принципиальная электрическая схема

Электрическая схема МПУ и спецификация элементов, входящих в ее состав, приведены в приложениях А и Б.

На приведенной схеме представлен вариант системы с 1 ведущим ОМК MASTER и 3 ведомыми ОМК: SLAVE1, SLAVE2, SLAVE3. К каждому из них подключены ПУ U3, U5, U9, U7 соответственно. Выходы TXD и RXD ОМК, подключенные к пинам RO и DI ПУ обеспечивают передачу данных, выход PD7 подключен к входам и DE для управления направлением передачи ПУ. Линия PD7 MASTER используется для управления светодиодами.

Частотные сигналы поступают на входы ICP1 ведомых контроллеров.

Для стабилизации частоты работы микроконтроллера и повышения точности измерений применен кварцевый резонатор X1 с частотой 4 МГЦ с раскачивающими конденсаторами C1-C2. Он подключен к входам XTAL1, XTAL2 ведомых ОМК.

Светодиоды D2, D3 обеспечивают индикацию состояния системы: при отсутствии утечек, на выходе PD7 установлен уровень логической 1, и включен зеленый светодиод D2, иначе устанавливается уровень 0, и, благодаря инвертору U2, включается красный светодиод D3.

5 Программное обеспечение

В качестве языка программирования был выбран язык Си, поскольку он обеспечивает более высокую скорость разработки и упрощает процесс разработки по сравнению с ассемблером.

Для разработки программного обеспечения использовалась среда CodeVisionAVR. Достоинствами этой среды является наличие встроенных средств для генерации кода, отвечающего за настройку и инициализацию ОМК, большое количество предустановленных библиотек, реализующих различные функции, а также подробный и развернуты справочный материал, значительно облегчающий и ускоряющий процесс разработки и отладки.

Отладка и эмуляция работы системы проводилась в среде Proteus 7 Professional. Он поддерживает работу с языком Си, содержит обширную библиотеку ОМК и внешних компонентов, имеет развитый интерфейс пользователя, а разработка проекта включает создание принципиальной электрической схемы.

Листинг программ приведен в приложении В.

6 Алгоритм тестирования

Тестирование микропроцессорной системы является важной частью процесса использования в рабочих условиях.

Наиболее широкое распространение получил "метод раскрутки", при котором определяется системное ядро, работающее наиболее надежно, а далее к ядру постепенно присоединяются и контролируются остальные компоненты системы (от ядра к периферийным устройствам) [2].

Для тестирования ПЗУ наиболее целесообразно использовать метод контрольной суммы CRC, вычисляя контрольную сумму записанной в память программы. Тестирование ОЗУ, а также EEPROM может проводиться, например, записью в память кода вида «шахматная доска»: 55h и его последующим считыванием. При несоответствии считанных значений фиксируются адреса неисправных ячеек. Аналогичная процедура повторяется с использованием инверсного значения AAh.

Подобный тест может быть проведен с помощью приведенного ниже алгоритма:

bool error=false;

int tst = 0;

for (int i=0;i<512;i++)

{

*i= 55h;

tst=*i;

if (tst!=55h) error=true;

}

Если в результате его исполнения флаг error примет значение true, значит, в памяти присутствуют неисправные ячейки.

Поскольку в рассматриваемом случае каждый ОМК использует не более 2 линий параллельных портов, можно протестировать все возможные значения, которые могут принимать выходы и которые могут подаваться на вход. При использовании большого количества линий, следовало бы использовать алгоритм «шахматная доска».

Проверка работы UART осуществляется с помощью эхоконтроля, для этого соединяют TXD и RXD.

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

В данном случае для тестирования правильности измерений, а также работы всей системы в целом, применим виртуальные приборы, в частности частотомеры. Измеренные значения, которые были переданы ведущему ОМК и сохранены в его ОЗУ, совпадают с показаниями виртуальных приборов, как видно на рисунке 10, следовательно, система работает правильно.

Рисунок 10 – Результат работы системы