Четверг, 16.05.2024, 00:16
Электро-сервис BY ГлавнаяРегистрацияВход
Приветствую Вас Гость | RSS
Меню сайта
Категории раздела
Мои статьи [3]
Все о компьютерах [5]
компьютеры, все об их эксплуатации, настройке и использованию, сборка, разборка, улучшение, переделка...
Это интересно! [3]
интересные статьи о всяких хитростях и секретах в электрике и электронике, рекомендации и инструкции по самостоятельному применению их на практике
Сети [0]
Все о компьютерных и электрических сетях
Электротехника [3]
Электротехника и электроника для начинающих, практическая электротехника и электроника
Наш опрос
Оцените мой сайт
Всего ответов: 2
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
 Каталог статей 
Главная » Статьи » Все о компьютерах

Не спешите выбрасывать устаревший компьютер, продолжение

Доработка компьютера до возможностей управляющего контроллера.

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


Рис.1. Структурная схема

На основании схемы структурной строим схему электрическую принципиальную.

Рис.2. Электрическая принципиальная схема

МС подключается к параллельному порту ПК стандартным "принтерным" кабелем Cetronix, обозначен на схеме - А1, с указанием контактов разъема адаптера. Датчики К1-К5 работают на замыкание. Микросхема К155ЛН4 служит для некоторой защиты адаптера от неблагоприятных внешних воздействий (в случае чего, проще заменить одну микросхему, чем весь адаптер). Можно использовать и другие элементы типа ЛН той же серии, например 155ЛН1, 155ЛН2, но в таком случае при обработке сигнала надо будет учитывать инверсию. При замыкании одного из ключей К1 на соответствующем входе логического повторителя высокий уровень сменяется низким, и на вход адаптера поступает сигнал изменения внешнего воздействия и заносится в порт 379Н, либо в 37АН (сигнал "разрешение прерывания") и затем обрабатывается программой. В ответ на внешние воздействия компьютер в соответствии с алгоритмом вырабатывает управляющие сигналы. Управляющая информация записывается по шине данных в регистр RG после прохождения стробирующего сигнала на вход С микросхемы КР1533ИР23. ТТЛ выход регистра защищен диодами КД522Б и резистором номиналом 130 Ом. Затем сигнал усиливается блоком усиления БУ0-БУ7, собранным в виде транзисторного ключа на элементах Т1,Т2. Напряжение питания на транзисторный ключ подается в зависимости от применяемого реле от +5 до +24В. Реле РП21 или аналогичные. Напряжение питания микросхем +5В. Вот и вся аппаратная часть. Можно приступать к программному обеспечению.

При программировании управляющего сигнала нужно иметь в виду, что управление осуществляется сразу по всей шине данных. Например, если вначале был включен бит DАТА 0 (десятичный код 1, двоичный- 000000001), а затем возникла необходимость включить бит DАТА 1, не выключая DАТА 0, то надо подавать управляющий сигнал = 3 (00000011 двоичный). При управляющем сигнале=2 (00000010) произойдет отключение бита DАТА 0. Нужно также иметь в виду, что некоторые языки на прямую не поддерживают двоичный формат, поэтому, например в BASIC, все необходимые управляющие сигналы надо привести к десятичному формату. Входной сигнал считывается из МС в порт 379Н. Значимыми являются 4,5,6,7,8 биты порта. Опять же при необходимости надо привести входной сигнал к двоичному формату.

Управление портами осуществляется по алгоритму:

1. Загрузить в 378H управляющий сигнал 

2. Загрузить в 37АH 1 (единицу- 00000001) 

3. Очистить 37АH - 00000000 

4. Загрузить в 37АH 1 (единицу- 00000001) 

Чтение пришедших сигналов:

1. Прочесть 379H 

2. Проанализировать биты 3,4,5,6,7 

Вот как реализован этот алгоритм на языке BASIC:

10 REM ************* Обнуление констант и портов**************
g = 0 'выходной (управляющий) сигнал'
b = 0 'входной сигнал'
OUT &H378, 0: OUT &H379, 0: OUT &H37A, 0 'обнуление портов'
GO TO 100
20 REM ******** Выдача управляющего сигнала *************
OUT &H378, g
OUT &H37A, 1: OUT &H37A, 0: OUT &H37A, 1
RETURN
30 REM ********* Чтение входных сигналов ****************
b = INP(&H379)
REM *** b число десятичное его необходимо перевести в двоичное***
FOR n = 0 TO 7
IF b = 1 THEN c(n) = 1
b(n) = CINT(b / 2 - .4)
IF b(n) = b / 2 THEN c(n) = 0 ELSE c(n) = 1
REM интересуют сигналы : c(3), c(4), c(5), c(6), c(7)
b = b(n)
NEXT n
RETURN

Связь компьютера с МС происходит при выполнении подпрограмм, начинающихся строками 20 и 30. В общем случае при написании программ на BASIC достаточно в текст программы поместить фрагмент, выделенный красным цветом и в последующем к нему обращаться как к подпрограмме ввода/вывода. Алгоритм управления конкретным процессом строится с учетом этих замечаний и написание программ больше не имеет никаких особенностей.

Таким образом мы получили вполне работоспособный управляющий микроконтроллер, совмещающий в себе собственно контроллер и компьютер верхнего уровня. Кстати почувствуйте разницу: старое "железо" уже почти ничего не стоит, а новый самый простенький микроконтроллер "потянет" не менее 200$, плюс еще специальное ПО.

Несколько замечаний по теме.


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

Принтер есть ни что иное, как специализированный печатающий контроллер. Не составляет почти никакого труда превратить его в контроллер многофункциональный.
На самом деле, возьмем, например, матричный шестнадцати игольчатый принтер. Что мы имеем?

16 выходов- иголок

1 выход - звонок

1 выход - управление кареткой

1 выход - прогон листа

1 вход - наличия бумаги

1 вход - положения каретки

Итак, у нас почти готовый универсальный контроллер 2 х 19

Это только то, что видно невооруженным взглядом. А если еще почитать инструкцию?! :)

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

Клавиатура - может служить прекрасным (>100 разрядов) модулем входов. Нужно только клавиши - датчики на замыкание - установить в необходимых местах. А программу настроить на считывание скан - кода клавиш.

Звуковая карта - модуль ввода - вывода аналоговых звуковых сигналов, где микрофоны могут быть датчиками шума.

Мышь - датчик перемещения.

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

Самый простой пример - управление переключением елочных гирлянд. О применении для этих целей принтера уже говорилось. Но можно обойтись и без него - достаточно к "принтерному" разъему системного блока подсоединить Модуль Согласования и к контактам реле подключить гирлянды. Задача сводится к написанию управляющей программы. В том же BASIC для восьми гирлянд это может выглядеть так (с учетом ранее веденного кода стандартного обращения к портам):


50 REM ****************Таймер*************************************
i = TIMER
55 IF TIMER >= i + 1 THEN RETURN ELSE GOTO 55
100 REM *************** Задание констант*****************************
K11= 85 '01010101'
K12=170 '10101010'
K21=102 '01100110'
K22=153 '10011001'
K31=119 '01110111'
K32=136 '10001000'
K41=240 '11110000'
K42=15 '00001111'
K51=0 '00000000'
K52=255 '11111111'
110 REM ****************Чтение порта********************************
GOSUB 30
IF C(3)=1 THEN GOSUB 120
IF C(4)=1 THEN GOSUB 130
IF C(5)=1 THEN GOSUB 140
IF C(6)=1 THEN GOSUB 150
IF C(7)=1 THEN GOSUB 160
RETURN
REM *** Вклвыкл выходов согласно заданных констант***************
120 g=K11:GOSUB 20:GOSUB 50
g=K12:GOSUB 20:GOSUB 50
GOSUB 110
GO TO 120
130 g=K21:GOSUB 20:GOSUB 50
g=K22:GOSUB 20:GOSUB 50
GOSUB 110
GO TO 130
140 g=K31:GOSUB 20:GOSUB 50
g=K32:GOSUB 20:GOSUB 50
GOSUB 110
GO TO 140
150 g=K41:GOSUB 20:GOSUB 50
g=K42:GOSUB 20:GOSUB 50
GOSUB 110
GO TO 150
160 g=K51:GOSUB 20:GOSUB 50
g=K52:GOSUB 20:GOSUB 50
GOSUB 110
GO TO 160
END.

В начале бежит один огонь, затем, два, три, четыре, затем все гаснет и снова зажигается, после чего цикл повторяется. Очередность включения может быть и другой, в зависимости от предпочтений пользователя. Описанный метод можно применить и для более серьезного использования, например, для организации световых табло. Но в этом случае программа будет сложнее, должна работать в динамике, и МС придется немного доработать. Для этих целей надо использовать выходные сигналы порта 37АН: AUTO, INIT, SLCT, организовать через них 3-х разрядный счетчик, и через дешифратор управлять выбором индикаторов. Таким образом, можно получить световое табло " бегущая строка" из восьми символов. Используя сегментацию, длину "строки" можно наращивать. В общем случае возможности нестандартного применения компьютера ограничены только фантазией.



Источник:
Категория: Все о компьютерах | Добавил: Nastjushka (24.10.2011) | Автор: Анастасия W
Просмотров: 485 | Теги: старый компьютер, управляющий контроллер, доработка | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email *:
Код *:
Форма входа
Наши контакты
  • Дмитрий
  • ЭЛЕКТРО-СЕРВИС
  • ICQ - 641120411
  • Услуги по установке осветительного оборудования (люстры, бра...), установке, замене, переносе розеток, выключателей; монтажу, замене скрытой/открытой электропроводки; разводке телефонных, ТВ, компьютерных линий; подключению стиральных машин с выводом отдельной линии в эл.щит; замене автоматов и многое другое...
    Диагностика и ремонт электроники (компьютеры, сотовые телефоны, плееры, наушники, мультемидийные установки и другое).
    Качественно, быстро, недорого...

    Все это на:

     

     

    Поиск

    2

    Календарь
    Архив записей
    Друзья сайта
  • Техническая документация сайт создан для оказания помощи в поисках документации по различным устройствам бытового и промышленного назначения
  • Официальный блог
  • Сообщество uCoz
  • Электронный портал
  • Инструкции для uCoz
  • Информационный сайт для электрика
  • Справочник электрика и энергетика
  •    Электрохобби
  • Школа для электрика
  • Корзина
    Валюта

    Республика Беларусь, г.Минск, Copyright MyCorp © 2024Бесплатный конструктор сайтов - uCoz