Разработка системы медицинской диагностики, позволяющей производить обследование 3 больных за время, не превышающее 1 минуту, страница 2

ПЗУ: 0000h-0FFFh, дублированный на 7000h-7FFFh

ОЗУ: 4000h-4FFFh

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

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

a)  Разрешение считывания с АЦП;

b)  выбор кристалла таймера;

c)  переключение коммутатора (с помощью региста);

Перечисленные сигналы формируются микропроцессором на основе сигналов M/IO, A12, A13, A14  и с помощью комбинационных логических схем и дешифратора:

Адресуемые микросхемы

Диапазон адресов

Выбор кристалла ПЗУ

0000h-0FFFh, дублированный

на 7000h-7FFFh

Регистр коммутатора

3000h - 3FFFh

Выбор кристалла ОЗУ

4000h - 4FFFh

Таймер

5000h- 5FFFh

АЦП

6000h-6FFFh

Табл.1 Таблица распределения  устройств системы по адресным линиям.

4. Описание принципиальной схемы

Так как разработанная система имеет сравнительно небольшое число ИС(интегральных схем) и ВУ(внешних устройств), микропроцессор работает в минимальном режиме, т.е. все необходимые сигналы управления периферийными устройствами вырабатываются на основе управляющих сигналов МП  WR (“запись”), RD (“чтение”) и M/IO (“память/ВУ”) с помощью комбинационных логических схем типа НЕ, И-НЕ.

К1810ВМ86 имеет 16-разрядную шину данных, мультиплексированную с 16-ю младшими разрядами шины адреса. Задача демультиплексирования т.е. разделения шины данных и шины адреса решается с помощью буферных регистров КР580ИР82, на котором защёлкивается адреса, задача буферирования  шин адреса и шин данных решается с помощью двунаправленных 8-разрядных шинных формирователя с высокой нагрузочной способностью КР580ВА86, подключенных к ЦПУ стандартным образом. Задача формирования системных управляющих сигналов  для блоков памяти и ВУ решается с помощью комбинационных логических схем и дешифратора.

ПЗУ, кроме программы, содержит, начиная с адреса 3FCh, адрес подпрограммы обработки прерывания 00000060h.

Генератор тактовых импульсов КР1810ГФ84 предназначен для управления (тактирования) ЦМП и периферийными устройствами. К его входу RES подключена RC-цепочка, которая формирует сигнал сброса автоматически при включении питания либо с помощью кнопки SA1.

Частота опорного генератора задается с помощью внешнего кварцевого резонатора ZQ1 частотой 12МГц. Тактовый сигнал МОП-уровня CLK, подаваемый на вход CLK МП, в три раза меньше частоты опорного генератора и составляет FCLK=4МГц. Внутренний делитель частоты формирует выходные импульсы PCLK скважностью 2 с частотой, равной ½ частоты сигнала CLK и обеспечивает управление устройствами, работающими на ТТЛ - уровнях.

Выходной сигнал RESET вырабатывается при поступлении входного сигнала RES и используется для установки микропроцессора в исходное состояние. При включении питания генератор тактовых импульсов КР1810ГФ84 (DD3) формирует сигнал RESET (“сброс”), поступающий на микропроцессор и внешние устройства и переводящий их в некоторое начальное состояние: счётчик IP обнуляется, содержимое сегментного регистра CS становится равным FFFFh, т.е. начальным исполняемым адресом системы автоматически устанавливается FFFF0h, поскольку мы используем  только первые 16 разрядов шины адреса то получим FFF0h (как следует из таблицы.1., при этом включается ПЗУ).

Программируемый таймер К1810ВИ54 генерирует импульсы запуска на АЦП с периодичностью FPCLK/N , где N- загружаемая программно константа пересчета.

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

Микропроцессор переводит все управляющие выходы (кроме INTA) в 3-е состояние и осуществляет считывание с ШД номера вектора поступившего прерывания.

Так как,  линии системной ШД подключены через резисторы 1 кОм на питание, “по умолчанию” с них будет считано число FFh, определяющее тип прерывания. Затем микропроцессор автоматически умножает поступивший код на 4, получая адрес 3FCh, открывающий ПЗУ, который и выставляется затем на ША. Далее из ПЗУ считываются 4 байта, определяющие адрес подпрограммы обслуживания прерывания.

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

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

Вход1: - датчик температуры 1-го пациента;

Вход2: - датчик верхнего АД 1-го пациента;

                            Вход3: - датчик нижнего АД 1-го пациента;

 Вход4: - датчик температуры 2-го пациента;

Вход5: - датчик верхнего АД 2-го пациента;

Вход6: - датчик нижнего АД 2-го пациента;

 Вход7: - датчик температуры 3-го пациента;

Вход8: - датчик верхнего АД 3-го пациента;

Вход9: - датчик нижнего АД 3-го пациента.

5. Аналогово-цифровой преобразователь.

     АЦП последовательного приближения К1108ПВ1 (DA1) осуществляет преобразование входной аналоговой информации в цифровой 8-разрядный параллельный код ТТЛ-уровня.

      При поступлении на вход «разрешения считывания» 24 уровня лог.0 АЦП начинает преобразование информации. Через время, необходимое для преобразования, на выходе АЦП “готовность данных” появляется сигнал с уровнем лог.0, запрашивающий вывод данных с АЦП на ШД.

     Указанный сигнал подаётся на вход запроса прерывания МП.

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

6. Программирование таймера