Рефетека.ру / Информатика и програм-ие

Реферат: Проектирование системы сбора данных

Проектирование системы сбора данных

1. ВВЕДЕНИЕ

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

Развитие микроэлектроники и широкое применение ее изделий в промышленном производстве, в устройствах и системах управления самыми разнообразными объектами и процессами является в настоящее время одним из основных направлений научно-технического прогресса.

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

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

2. ТЕХНИЧЕСКОЕ ЗАДАНИЕ

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

Основные характеристики:

Количество каналов подключения датчиков давления

4

Количество линейных датчиков

статическая характеристика

диапазон измеряемого давления

собственная погрешность измерения

3

U(p)=a0p+b a0=0.1428 b=-0.71

5..50 КПа

0.1%

Количество нелинейных датчиков

статическая характеристика

диапазон измеряемого давления

собственная погрешность измерения

1

U(p)=a0p+a1p2+a2p3+b a0=0.998, a1=0.003 a2=-0.001 b=-2.5

0.01..5 Мпа

0.1%

Максимальная погрешность одного канала не более

0.5%

Количество развязанных оптоизолированных входов для подключения датчика контроля за давлением

Активный уровень

Выходное напряжение логического нуля

Выходное напряжение логической единицы

Максимальный выходной ток

логического нуля мА

логической единицы мА

1

1

уровень ТТЛШ

уровень ТТЛШ

2.5

1.2

Режим измерения давления

Статический

Базовая микро-ЭВМ

89С51 фирмы Atmel

3. РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ. ОБОБЩЕННЫЙ АЛГОРИТМ РАБОТЫ

Структурная схема системы сбора данных представлена на рис.1

Обобщенная структурная схема системы сбора данных.

ДД1,ДД2,ДД3 – линейные датчики давления,

ДД4- нелинейный датчик давления,

ДКД1, ДКД2 – датчики контроля за давлением

AD7890 – АЦП, УВХ, ИОН, аналоговый коммутатор,

98С51 – микро-ЭВМ,

WDT –сторожевой таймер.

Рисунок 1.

Датчики давления преобразовывают измеренное давление в электрический сигнал.

Нормирующие усилители преобразовывают выходное напряжение с датчиков давления к входному напряжению АЦП.

AD7890 (далее АЦП) служит для того чтобы, переключать требуемый канал коммутатора, преобразовать аналоговую величину напряжения в соответствующий ей двоичный цифровой код.

Однокристальная микро-ЭВМ предназначена для того чтобы:

производить расчет - Р(код) по известной статической характеристике датчика давления;

передавать рассчитанное давление по последовательному интерфейсу RS-232 в ПК.

Буфер последовательного интерфейса RS-232 введен в схему, для того чтобы преобразовывать логические уровни между ПК и микро-ЭВМ и микро-ЭВМ и ПК.

Т.К. работа системы производится в автономном режиме и она не предусмотрена для работы с оператором, то в состав системы дополнительно вводится интегральная микросхема сторожевого таймера, предназначенная для вывода микро-ЭВМ из состояния зависания и ее сбросе при включении питания.

Временная диаграмма работы сторожевого таймера представлена на листе 2 графической части.

Блок схема обобщенного алгоритма работы представлена в приложении 4.

При включении питания микро-ЭВМ 89С51 реализует подпрограмму инициализации (1. инициализация УАПП, 2. установка приоритета прерываний, 7. разрешение прерываний). По запросу от ПК “Считать измеренное давление с датчика N” (где N – номер датчика давления), МП последовательно выдает с линии 1 порта 1(Р1.1), байт данных (в котором 1-ый, 2-ой и 3-ий биты указывают на выбор канала мультиплексора) на вход АЦП — DATA IN. Прием каждого бита этого байта происходит по фронту импульсов сигнала поступающего на вход SCLK от МП с линии 2 порта 1 (Р 1.2). Передача этого байта стробируется сигналом (низкий уровень), поступающего на вход от МП с линии 4 порта 1 (см. графическую часть лист 2) Приняв байт информации АЦП производит переключение требуемого канала. После этого МП выдает отрицательный импульс на вывод с линии 7 порта 1 и по положительному переходу этого импульса начинается процесс преобразования напряжение в двоичный код, которое поступает от датчика давления – N. По истечении 5.9 m с (время преобразования ) АЦП готов к последовательной передачи полученного 12-ти разрядного двоичного кода. Процесс передачи данных от АЦП к МП производится при стробировании сигнала (низкий уровень), поступающего с линии 5 порта 1 на вывод (см. графическую часть лист 2). Формат посылки состоит из 15-ти бит (первые три бита несут за собой номер включенного текущего канала, а остальные 12 бит двоичный код ). Приняв двоичный код, МП путем математических вычислений(см. п.5) находит зависимость Р(код) и посылает в ПК по последовательному интерфейсу RS-232 полученное значение давления P. На этом цикл работы системы заканчивается.

4. РАЗРАБОТКА И РАСЧЕТ ЭЛЕМЕНТОВ ПРИНЦИПИАЛЬНОЙ ЭЛЕКТРИЧЕСКОЙ СХЕМЫ

4.1 Выбор микропроцессорного комплекта

В соответствии с заданием ядром системы послужила однокристальная микро-ЭВМ 89С51 фирмы Atmel.

Основные характеристики однокристальной микро-ЭВМ 89С51:

• Совместима с однокристальной микро-ЭВМ серии MCS-51

• 4Kb ре-программируемой флешь памяти

допустимо: 1000 циклов Записи/Стирания

• Рабочий диапазон частоты синхронизации : от 0 Гц до 24 МГц

• 128 x 8-бит встроенного ОЗУ

• 32 программируемых I/O линии

• Два 16-разрядных таймер/счетчика

• Семь источников внешних прерываний

• Программируемый УАПП

• Возможность включения режима пониженного энергопотребления

4.1.1 Аппаратное сопряжение ПК и микроконтроллера

Для решения задачи сопряжения ПК и микроконтроллера было решено использовать интерфейс RS-232C.

Последовательный порт используется в качестве универсального асинхронного приемопередатчика (УАПП) с фиксированной или переменной скоростью последовательного обмена информацией и возможностью дуплексного включения.

Последовательный интерфейс микроконтроллера МК-51 может работать в следующих четырех режимах:

Режим 0.Информация передается и принимается через вход RxD приемника (вывод P3.0). Через выход передатчика TxD (вывод P3.1) выдаются импульсы синхронизации, стробирующие каждый передаваемый или принимаемый бит информации. Формат посылки – 8 бит. Частота приема и передачи – тактовая частота микроконтроллера.

Режим 1.Информация передается через выход передатчика TxD, а принимается через вход приемника RxD. Формат посылки – 10 бит: старт-бит (ноль), восемь бит данных, программируемый девятый бит и стоп-бит (единица). Частота приема и передачи задается таймером/счетчиком 1.

Режим 2.Информация передается через выход передатчика TxD, а принимается через вход приемника RxD. Формат посылки – 11 бит: старт-бит (ноль), восемь бит данных, программируемый девятый бит и 2 стоп-бита (единицы). Передаваемый девятый бит данных принимает значение бита ТВ8 из регистра специальных функций SCON. Бит ТВ8 в регистре SCON может быть программно установлен в “0” или в “1”, или в него, к примеру, можно поместить значение бита Р из регистра PSW для повышения достоверности принимаемой информации (контроль по паритету). При приеме девятый бит данных принятой посылки поступает в бит RB8 регистра SCON. Частота приема и передачи в режиме 2 задается программно и может быть равна тактовой частоте микроконтроллера деленной на 32 или на 64.

Режим 3.Режим 3 полностью идентичен режиму 2 за исключением частоты приема и передачи, которая в режиме 3 задается таймером/счетчиком 1.

Для реализации обмена информацией между ПК и микроконтроллером наиболее удобным является режим 2, т.к. для работы в этом режиме не требуется таймер/счетчик. Этот режим полностью удовлетворяет предъявленным требованиям.

4.1.2 Выбор кварцевого резонатора

Для работы МП необходим кварцевый резонатор который подключается к выводам XTAL1 и XTAL2 (см. графическую часть курсового проекта, лист 1)

Рабочая частота кварцевого резонатора непосредственно связана со скоростью работы УАПП, мы выбираем из п.1 fрез=11.059 МГц

4.1.3 Выбор скорости приема/передачи по RS-232

Скорость приема/передачи, т.е. частота работы универсального асинхронного приемопередатчика (УАПП) в режиме 2 зависит от значения управляющего бита SMOD в регистре специальных функций.

Частота передачи определяется выражением:

f=(2SMOD/64)fрез.

Иными словами, при SMOD=0 частота передачи равна (1/64)fрез, а при SMOD=1 равна (1/32)fрез.

Исходя из вышеизложенного, выберем частоту приема данных при SMOD=1. Если fрез=11,059 МГц, тогда частота приема данных будет 19,2 КБод.

Другие значения частот кварца могут быть выбраны из таблиц в п.1 и п.2.

4.1.4 Разработка формата принимаемых и передаваемых данных по RS-232

Формат принимаемых и передаваемых данных почти полностью описан режимом 2 работы последовательного интерфейса.

Формат должен состоять из 11 бит:

стартовый бит – ноль;

восемь бит данных;

девятый бит – контроль по паритету, для повышения достоверности принимаемой информации;

два стоповых бита – единицы.

4.2 Выбор буфера RS-232

Обмен данными между ПК и микроконтроллером будет производиться по последовательному интерфейсу RS-232. Т.к. стандартный уровень сигналов RS-232 - -12 В и +12 В, а стандартный уровень сигналов асинхронного интерфейса микроконтроллера 89С51 – +5 В необходимо обеспечить согласование уровней между RS-232 и 89С51. Преобразование напряжения будет производить цифровая интегральная микросхема ADM 202E. Выбор данной микросхемы был произведен исходя из ТЗ (техническое задание). Основные характеристики цифровой интегральной микросхемы ADM 202E приведены в табл. 3.

Таблица 3.

Основные характеристики цифровой интегральной микросхемы ADM 202E

Параметр

Минимальный

Максимальный

Единица измерения

Напряжение питания

4.5

5.5

В

Нижний входной лог. порог

0.8

В

Высокий входной лог. порог

2.4

В

RS-232 приемник

     

Входное допустимое напр.

-30

+30

В

Входной нижний парог

0.4

 

В

Входной высокий парог

 

2.4

В

RS-232 передатчик

     

Выходной размах напр.

-+5

 

В

Сопр. Выхода передатчика

300

 

Ом

Температурный диапазон

-40

+85

C

Функциональная блок-схема интегральной микросхемы ADM 202E представлена на рис.2

Функциональная блок-схема интегральной микросхемы ADM 202E

Рисунок. 2

4.3 Выбор АЦП.

В качестве аналого-цифрового преобразователя послужила интегральная микросхема фирмы Analog Devices – AD7890-2. Выбор данной микросхемы был произведен исходя из ТЗ

Основные характеристики:

• 12-разрядный АЦП, время преобразования 5.9 мкс

• Восемь входных аналоговых каналов

• Входной диапазон :

от 0 В до +2.5 В

• Раздельный доступ к мультиплексору и к АЦП

• Встроенный источник опорного напряжения +2.5 В (возможно подключение внешнего.)

• Высокая скорость, “гибкость”, последовательный интерфейс

• Низкая потребляемая мощность (50 мВт максимум)

• Режим пониженного энергопотребления (75 мкВт).

Функциональная блок-схема интегральной микросхемы AD 7890-2 представлена на рис.3

Функциональная блок-схема интегральной микросхемы AD 7890-2

Рисунок 3

4.3.1 Расчет погрешности вносимой АЦП.

Аналого-цифровой преобразователь вносит следующие виды погрешностей:

нелинейности (погрешность нелинейности- это максимальное отклонение линеаризованной реальной характеристики преобразования от прямой линии, проходящей через крайние точки этой характеристики преобразования АЦП.);

дифференциальной нелинейности(погрешность дифференциальной нелинейности- это отклонение фактической разности уровней (входного сигнала АЦП), соответствующим двум соседним переключениям кода, от идеального значения этой разности, равной 1 МЗР. Для идеального АЦП разница уровней между соседними переключениями кода в точности равна 1 МЗР.);

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

В табл. 4 приведены погрешности взятые из каталога, на интегральную микросхему AD7890 фирмы Analog Devices

Таблица 4

Основный погрешности интегральной микросхемы AD7890

Вид погрешности

Значение

%

Интегральная нелинейность

± 1 МЗР

0.0244

Дифференциальная нелинейность

± 1 МЗР

0.0244

Полной шкалы

± 2.5 МЗР

0.061

Общая (D АЦП)

 

0,1098

4.4 Выбор сторожевого таймера.

Т.к. работа системы происходит в автономном режиме и не предусматривает работу оператора с ней, то для случая зависания микро-ЭВМ в схему системы сбора данных добавляется интегральная микросхема MAX690AMJA – сторожевой таймер. Выполняющая две основные функции: выведение МП из состояния зависания и сброс МП при включении питания.

Основные характеристики интегральной микросхемы МАХ690AMJA:

• Время сброса: 200 мС

• Рабочий диапазон напряжения питания: от 1 до 5.5 В

• Ток потребления: 200 мкА

• температурный диапазон эксплуатации: от –55 до +125 C.

4.5 Выбор интегральной микросхемы операционного усилителя

Нормирующий усилитель выполнен на аналоговой микросхеме OP-27А (операционный усилитель), исполненной в восьми контактном DIP-корпусе. Основные хар-ки операционного усилителя OP-27A приведены в табл.5.

Таблица 5

Основные характеристики аналоговой микросхемы ОР-27А

Напряжение питания (UПИТ)В:

V+

V-

22

-22

Напряжение смещения (UСМ)мкВ:

25 макс.

Ток смешения (IСМ)нА

±40 макс.

Ток сдвига (IСДВ)нА

35 макс.

Коэффициент озлобления синфазного сигнала (КООС)

501190 макс. (144 Дб)

Коэффициент усиления при разомкнутой обратной связи

1800000

В систему сбора данных входят три линейных и один нелинейный датчики давления. Выходной диапазон напряжения нелинейного датчика давления составляет -2.5..+2.5, в входной диапазон АЦП – 0..+2.5. Согласовать уровни напряжения выхода датчика давления и входа АЦП можно с помощью схемы представленной на рис. 4. Данная схема состоит из: операционного усилителя – DA1, повторителя напряжения – DA2, схемы смещения – R1 и R2, схемы защиты – VD1 и VD2.. Для того чтобы не нагружать источник опорного напряжения в состав схемы нормирующего усилителя вводится повторитель напряжения. Данная схема вносит в ССД погрешность.

Нормирующий усилитель

R1,R2 – 40 КОм,

R3 – 20 КОм.

VD1, VD2 – схема защиты

Рисунок 4

4.5.1 Расчет погрешностей нормирующего усилителя

Суммарная погрешность нормирующего усилителя складывается из погрешности напряжения смещения (D Uсм), погрешности тока сдвига (D Iсдв), погрешности обратного тока диодов (В схеме защиты используются диоды марки 1N914A с обратным током утечки IД ОБР.=25 нА. Рассмотрим худший случай, когда IД ОБР.== 2*IД ОБР.) (D Iд обр.), погрешности КООС (D КООС), погрешности разброса параметров сопротивлений от номинального значения (D R1 R2 MAX).

Оценка погрешности от напряжения смещения (D Uсм)

D Uсм= Uсм*Ку

где Ку – коэффициент усиления (в нашем случае Ку=1)

D Uсм=25 мкВ

D Uсм%=

D Uсм%=0.001 %

Оценка погрешности от обратного тока диодов (D Iд обр )

U+д= IД ОБР.*R2

U+д=0.002

D Iд обр= U+д*Ку

D Iд обр=2 мВ

D Iд обр%=

D Iд обр%=0.0016

Оценка погрешности от КООС (D КООС)

,

где Кд – коэффициент усиления дифференциального сигнала (Кд=1);

КС – коэффициент усиления синфазного сигнала

КС=1/501190

КС=1.96*10-6

D КООС=UВХ СИН MAX*KC,

где UВХ СИН MAX – синфазное максимальное входное напряжение (UВХ СИН MAX=2.5 В).

D КООС=2.5*1.996*10-6

D КООС=7.7 мкВ

D КООС%=

D КООС%=0.0003

Оценка погрешности от тока сдвига (D Iсдв)

U+=IСДВ*R2

где U+ - см. рис.4

U+= 0.7 мкВ

D Iсдв= U+*Ку

D Iсдв=0.7 мкВ

D Iсдв%=

D Iсдв%=0.00004%

Оценка погрешности вносимой разбросам сопротивлений R1 и R2 от их номинального значения.

Для того чтобы уменьшить погрешность выбираем сопротивления с отклонениями от номинального значения ± 0.05%

R1MIN= 39,996 Ом

R2MAX=40,004 Ом

Ток протекаемый через R1 и R2 будет

И тогда общая погрешность нормирующего усилителя будет равна

D НУ=((D R1R1max+D Iсдв+D КООС+D Iд обр+D Uсм)/Ку)*100

 

D НУ=0.0277778 %

(1)

4.6 Выбор и расчет внешних элементов гальванической развязки

В качестве элементов гальванической развязки используется цифровая микросхема 249ЛП5 - оптоэлектронный переключатель на основе диодных оптопар выполненных в металлостеклянном корпусе. основные характеристики цифровой микросхемы 249ЛП5 приведены в табл. 5.

Таблица 5

Основные характеристики цифровой микросхемы 249ЛП5

Электрические параметры

Входное напряжение при IВХ=15 мА

не более 1.7 В

Выходное напряжение в состоянии логического нуля

0.4 В

Выходное напряжение в состоянии логической единицы

2.4

Предельные эксплутационные данные

Входной постоянный ток

12 мА

Входной импульсный ток

15 мА

Напряжение питания

5(± 0.5) В

Диапазон рабочих температур

-60…+85 ° С

VT1- КТ3102Г(h21Э=100),

R2, VT1 –схема усиления входного тока,

Рисунок 5

Выходной ток ДКД усиливается с помощью транзистора VT1 т.к. максимальный выходной ток датчика контроля за давлением меньше, чем входной ток элемента гальвано развязки.

Значения сопротивления R1 можно рассчитать по следующей формуле

при IД=5 мА, а значение сопротивления R2 будет равно

где UБЭ VT1 – напряжение насыщения на переходе база - эмиттер транзистора VT1;UВХ_МIN – минимальное входное напряжение (2.4 В - уровень ТТЛШ);

IБ – ток протекающий через базу VT1

где IК – ток протекающий через коллектор VT1 (IК= IД)

5. АПРОКСИМАЦИЯ СТАТИЧЕСКОЙ ХАРАКТЕРИСТИКИ НЕЛИНЕЙНОГО ДАТЧИКА

Уравнение аппроксимированного участка статической характеристики нелинейного датчика выглядит следующим образом:

U (p) = a*p + b,

(2)

где a и b – коэффициенты, представленные в форме чисел с фиксированной точкой.

С АЦП приходит 12-ти разрядный код в диапазоне 0..4095,что соответствует диапазону входных напряжений 0 ...+2.5 В.

Разрешающую способность по напряжению можно рассчитать как:

U = код*МЗР(Младший Значащий Разряд)

(3)

где МЗР =

где UВХ MAX – максимальное входное напряжение подаваемое на вход АЦП;

UВХ MIN – минимальное входное напряжение подаваемое на вход

Выразив p из (2) и приняв во внимание (3), формула нахождения давления от напряжения примет следующий вид:

Для уменьшения погрешности аппроксимации статическая характеристика нелинейного датчика давления делится на 4 равных отрезка и находятся коэффициенты a и b (см. табл.6) для уравнения вида p(код)=a*код+b описывающего каждый из этих отрезков.

Таблица 6

Таблица переведенных коэффициентов

№ участка

a10

b10

a16

b16

1

0.001203

0.010377

0.004edf

0.02a8

2

0.001206

0.007413

0.004f03

0.01e5

3

0.001219

-0.02094

0.004fe5

0.055c

4

0.001245

-0.101148

0.005197

0.19e4

Аппроксимация статической характеристики нелинейного датчика давления была произведена с помощью программы MATHCAD 8.0 (см п.5)

5.1 Оценка погрешности аппроксимации

Оценка этой погрешности была произведена на программе MATHCAD 8.0 (см п.4), и она составляет D АПР=0.093 %

6. ВЫБОР ФОРМАТА ДАННЫХ

В курсовом проекте выбран формат чисел с фиксированной точкой.

Для коэффициентов a выделяется три байта под дробную часть и один байт под целую часть, а для b два байта под дробную часть и один байт под целую часть Для кода достаточно двух байт, а для результата три байта под целую и два байта под дробную части соответственно.

6.1 Оценка погрешности от перевода коэффициентов

В соответствии с выбранным форматом данных данную погрешность можно найти так:

D пер.коэф=D k*код+D b=2-24*4096-2-16

D пер.коэф = 0.044 %

(4)

 

7. ОЦЕНКА ПОГРЕШНОСТЕЙ

При расчетах в курсовой работе мы оценили погрешности возникающие от АЦП, аппроксимации, нормирующего усилителя и других. Суммарная погрешность всей ССД равняется сумме найденных погрешностей, то есть:

D СУМ=D АЦП+D НУ+D АПР+D пер.коэф

где D АЦП – погрешность вносимая от АЦП (см табл.4);

D НУ - погрешность от нормирующего усилителя (см. ф.(1));

D АПР - погрешность от аппроксимации(см.п.4);

D пер.коэф - погрешность от перевода коэффициентов (см. 4)

D СУМ=0,1098+??+0.093+0.044

8. РАСЧЕТ ПОТРЕБЛЯЕМОЙ МОШНОСТИ ОСНОВНЫМИ ЭЛЕМЕНТАМИ СХЕМЫ

Примерную потребляемую мощность можно найти по формуле

где РМП – мощность потребляемая МП(РМП=0,1 Вт);

РАЦП - мощность потребляемая АЦП(РАЦП=0.0050 Вт);

РWDT - мощность потребляемая сторожевым таймером (РWDT=0.001);

PБУФ - мощность потребляемая буфером порта RS-232 (PБУФ=0.01);

PОУ - мощность потребляемая операционным усилителем (PОУ=0.09);

ПРИЛОЖЕНИЯ

Приложение 1

Точные значения кварцев

Кратность

Скорость передачи

(Кбод)

Частота кварца (МГц)

SMOD=0 (1/64)

SMOD=1 (1/32)

1

115,2

7,3728

3,6864

2

57,6

3,6864

1,8432

3

38,4

2,4576

1,2288

4

28,8

1,8432

0,9216

5

23,04

1,4746

0,73728

6

19,2

1,2288

0,6144

7

16,457142

1,053257

0,526628

8

14,4

0,9216

0,4608

9

12,8

0,8192

0,4096

10

11,52

0,73728

0,36864

12

9,2

0,6144

0,3072

Приложение 2

Возможные значения кварцев

SMOD=0

Кратность

Скорость передачи

(Кбод)

Частота кварца (МГц)

SMOD=0 (1/64)

SMOD=1 (1/32)

1

115,2

7,366503

7,378725

2

57,6

3,673807

3,698251

3

38,4

2,438711

2,475377

4

28,8

1,818014

1,866903

5

23,04

1,443078

1,504189

6

19,2

1,191022

1,264355

7

16,457142

1,009183

1,094738

8

14,4

0,871229

0,969007

9

12,8

0,762533

0,872533

10

11,52

0,674317

0,796539

12

9,2

0,538844

0,685511

SMOD=1

Кратность

Скорость передачи

(Кбод)

Частота кварца (МГц)

SMOD=0 (1/64)

SMOD=1 (1/32)

1

115,2

3,683252

3,689363

2

57,6

1,836904

1,849126

3

38,4

1,219356

1,237689

4

28,8

0,909007

0,933452

5

23,04

0,721539

0,752095

6

19,2

0,595511

0,632178

7

16,457142

0,504592

0,547369

8

14,4

0,435615

0,484504

9

12,8

0,381267

0,436267

10

11,52

0,337159

0,398270

12

9,2

0,269422

0,342756

Приложение 5

Подпрограмма инициализации

MOV SCON,#10010000b ; устанавливается второй режим УАПП

SETB 87h,1 ;SMOD=1

MOV IP,#00010000b ;высокий уровень приоритета прерывания у приема передатчика

MOV IE,#10010000b ; разрешаем прерывания

 

Подпрограмма записи 12-ти бит в управляющий регистр AD7890

SETB P1.2 ;Устанавливаем линию SCLK

SETB P1.4; Устанавливаем линию TFS

MOV R1,0Ch ; организовываем счетчик переданных бит (12)

MOV A,R0 ; загружаем а аккумулятор передаваемые биты

MET0:RRC A ; проталкиваем во флаг С передаваемый бит

MOV P1.1,C ; выставляем передаваемый бит на Р1.1

ACALL DELAY ;ожидаем

CPL P1.2 ;инверсия Р1.2

ACALL DELAY ;ожидаем

CPL P1.2 ; инверсия Р1.2

DJNZ R2,MET0

CPL P1.4

Подпрограмма задержки на 0.006 сек.

DELAY:MOV R0,C8h

MET1:NOP

DJNZ R0,MET1

RET

Подпрограмма задержки на 0.6 сек.

DELAY2:MOV R0,Ah

`MOV R1,Ah

MET1:NOP

MET2:NOP

DJNZ R1,MET2

DJNZ R0,MET1

RET

Подпрограмма работы сWDT

ACALL DELAY2 ;ожидаем

CPL P1.6

ACALL DELAY2 ;ожидаем

CPL P1.6

Подпрограмма чтения 15-ти бит с линии DATA OUT AD7890

SETB P1.2 ;Устанавливаем линию SCLK

SETB P1.3; Устанавливаем линию RFS

MOV R2,08h ; организовываем счетчик принятых бит в аккумулятор (если R2=0 – аккумулятор полный

ACALL DELAY ;ожидаем

CPL P1.2 ;инверсия Р1.2

ACALL DELAY ;ожидаем

CPL P1.2 ;инверсия Р1.2

MET0:MOV C,P1.0 ; принимаем бит на Р1.0 и отправляем его во флаг

RLC A ; достаем из флага С принятый бит

DEC R2

JZ MET2 ; если байт принят R2=0

MOV R3,A ; тогда занесем из А в R3 принятый байт

CLR A ; и обнулим аккумулятор, если не принят то -

MET2:ACALL DELAY ;ожидаем

CPL P1.2 ; инверсия Р1.2

ACALL DELAY ;ожидаем

DJNZ R2,MET0

MOV R2,07h ;приняли первые восемь бит, теперь приймем еще семь

CPL P1.2 ;инверсия Р1.2

MET3:MOV C,P1.0 ; принимаем бит на Р1.0 и отправляем его во флаг

RLC A ; достаем из флага С принятый бит

DEC R2

JZ MET4

MOV R4,A

CLR A

MET4:ACALL DELAY ;ожидаем

CPL P1.2 ; инверсия Р1.2

ACALL DELAY ;ожидаем

DJNZ R2,MET3 ;ну вот, и все готово младшая часть посылки находится (8 бит) в R3, а старшая (7 бит) в R4

CPL P1.4

;Подпрограмма выбора коэффициентов нелинейного датчика

MOV DPL,00h

MOV DPH,04h

MOV A,#00001100b

ANL A,R0

RL A

RL A

CLR 0D4H

CLR 0D3H

MOV R0,#0AH

MOV R1,#04H

M1: MOV A,#06H

MOVC A,@A+DPTR

MOV @R0,A

INC R6

INC R0

DJNZ R1,M1

END

;Подпрограмма умножения двух байт (регистры R0, R1 - 1-ый банк) на три (регистры ;R2, R3, R4 - 1-ый банк ), результат помещается в R3, R4, R5, R6, R7 - 0-ой ;банк.

MOV R4,#0h

MOV R5,#0h

MOV R6,#0h

MOV R7,#0h

MOV R3,#0h

MOV R0,#10h

me1:SETB 0D3h

CLR 0D4h

MOV A,R0

RRC A

MOV R0,A

MOV A,R1

RRC A

MOV R1,A

JNC me2

MOV A,R4

ADD A,5h

MOV 5h,A

MOV A,R3

ADDC A,4h

MOV 4h,A

MOV A,R2

ADDC A,3h

MOV 3h,A

me2:CLR 0D4h

CLR 0D3h

MOV A,R4

RRC A

MOV R4,A

MOV A,R5

RRC A

MOV R5,A

MOV A,R6

RRC A

MOV R6,A

MOV A,R7

RRC A

MOV R7,A

DJNZ r0,MET1

;Подпрограмма сложения пяти байт(R3, R4, R5, R6, R7 - 0-ой банк.

;) с двумя (R2(0Dh),R3(0Eh) - 0-ый банк), результат помещается в R3(13h), ;R4(14h), R5(15h), R6(16h), R7(17h) - 2-ой банк.

CLR 0D3H ;

CLR 0D4H ;

MOV A,R5

ADD A,R3

MOV 12H,A

MOV A,R4

ADDC A,R2

MOV 11H,A

JNC M1

MOV A,#01

ADD A,11H

MOV 11H,A

JNC M1

MOV A,#01H

ADD A,10H

MOV 10H,A

MOV 14h,0Ch

MOV 13h,0Bh

M1:CLR 0D3H

SETB 0D4H

END

Подпрограмма передачи пяти байт находящихся в R3 R4 R5 R6 R7.

;Выбор второго банка

SETB 0D4h

CLR 0D3h

;Передача первого байта данных

MOV A,R7

MOV C,P;Р - бит четности аккумулятора

MOV TB8,C

MOV SBUF,A

MOV IE,#10010000b ;Выставляется приоритет прерываний

NOP

NOP

NOP

;Передача 2 байта данных

MOV A,R6

MOV C,P

MOV TB8,C

MOV SBUF,A

MOV IE,#10010000b

NOP

NOP

NOP

;Передача 3 байта данных

MOV A,R5

MOV C,P

MOV TB8,C

MOV SBUF,A

MOV IE,#10010000b

NOP

NOP

NOP

;Передача 4 байта данных

MOV A,R4

MOV C,P

MOV TB8,C

MOV SBUF,A

MOV IE,#10010000b

NOP

NOP

NOP

;Передача 5 байта данных

MOV A,R3

MOV C,P

MOV TB8,C

MOV SBUF,A

MOV IE,#10010000b

END

Похожие работы:

  1. • Проектирование системы сбора данных
  2. • Проектирование системы сбора данных
  3. • Проектирование канала сбора аналоговых данных ...
  4. • Проектирование канала сбора аналоговых данных ...
  5. • Сбор и внутрипромысловый транспорт скважинной продукции
  6. • Стадии проектирования систем автоматизированного ...
  7. • Новые технологии измерений на основе виртуальных ...
  8. • Исследование систем управления
  9. • Процесс и дизайн маркетингового исследования
  10. • Создание базы данных сотрудников
  11. • Разработка технологии обслуживания системы улучшения ...
  12. • Организация и проведения лекционных занятий по ...
  13. • Зарубежный опыт управления качества
  14. • Блочно-симметричные модели и методы проектирования ...
  15. • Проектирование устройства сбора данных
  16. • Проектирование системы управления персоналом ...
  17. • Проектирование систем сбора и передачи информации
  18. • Основы систем автоматизированного проектирования
  19. • Проектирование систем электрификации
Рефетека ру refoteka@gmail.com