Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.11.2011, 18:02   #1
Nelli22
 
Регистрация: 01.11.2011
Сообщений: 4
По умолчанию Системы реального времени

Привет всем)
Очень нужен ваш совет. Может кто-нибудь поможет реализовать.
Дали задание, а лекции по данному предмету никто не читал, как делать, чтото вникнуть не могу(( Натолкните на мысль))))

1. Формирование импульсов минимальной длительности с выходных регистров параллельного LPT-порта программами, работающими под операционными системами (ОС) типа MS-DOS и MS-Windows NT 4.0, с проверкой по осциллографу.
Рекомендация: программирование LPT-порта производится записью в регистр данных (DR) значений «0» и «1» согласно описания работы порта.
2. Прием импульсов на входные регистры параллельного LPT-порта программами, работающими под ОС типа MS-DOS и MS-Windows NT 4.0, от генератора с определением максимально возможной частоты приема.
Рекомендация: контроль приема производится чтением регистров управления (CR) или состояния (SR) согласно описания работы порта, считая импульсы за определенный промежуток времени; расхождение более чем на 0,5% количества посчитанных импульсов с ожидаемым считается срывом приема и превышением величины максимально возможной частоты приема.
3. Передача данных полубайтной посылкой с одной ПЭВМ на другую через параллельный LPT-порт программами, работающими под ОС типа MS-DOS и MS-Windows NT 4.0, с контролем времени передачи по квитанции и проверкой текстом на экране монитора.
Рекомендация: программирование передачи производится побайтной записью в регистр данных (DR) значений символов текста, а прием – чтением регистров управления (CR) и состояния (SR) согласно распайке кабеля:
Кабель связи РС-РС
Reg Bit ПЭВМ1 ПЭВМ2 Reg Bit
DR 0 2 1 CR 0
DR 1 3 14 CR 1
DR 2 4 16 CR 2
DR 3 5 15 SR 3
DR 4 6 13 SR 4
DR 5 7 12 SR 5
DR 6 8 10 SR 6
DR 7 9 11 SR 7
CR 0 1 2 DR 0
CR 1 14 3 DR 1
CR 2 16 4 DR 2
SR 3 15 5 DR 3
SR 4 13 6 DR 4
SR 5 12 7 DR 5
SR 6 10 8 DR 6
SR 7 11 9 DR 7
GND 18-25 18-25 GND
4. Формирование программируемых импульсов максимальной частоты с выходного порта учебного лабораторного стенда СУ PIC16F84–1 на базе МК PIC16F84 с проверкой по осциллографу. Прием импульсов на входной порт учебного лабораторного стенда СУ PIC16F84–1 от генератора с определением максимально возможной частоты приема. Передача данных полубайтной посылкой с одного СУ PIC16F84–1 на другой через входные и выходные регистры портов, соединенные проводниками специальных кабелей, с контролем времени передачи по квитанции.
Nelli22 вне форума Ответить с цитированием
Старый 01.11.2011, 18:08   #2
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Дали задание, а лекции по данному предмету никто не читал
Фига себе... это где такое гуманное отношение к студентам?
Abstraction вне форума Ответить с цитированием
Старый 01.11.2011, 18:10   #3
Nelli22
 
Регистрация: 01.11.2011
Сообщений: 4
По умолчанию

Сибирский Федеральный)))
Nelli22 вне форума Ответить с цитированием
Старый 01.11.2011, 18:20   #4
Nelli22
 
Регистрация: 01.11.2011
Сообщений: 4
По умолчанию

В какой среде лучше реализовать данную работу?
С чего начать?Не могу в суть вникнуть
Nelli22 вне форума Ответить с цитированием
Старый 01.11.2011, 18:32   #5
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Я бы сказал, что это называется "трындец", простите мой английский.
Как мне кажется (ибо не профессионал в этой области ни разу):
Нужно два компилятора, под MS-DOS и Win NT. Под NT, со всей очевидностью, нужен ещё DDK, ибо NT в пользовательском режиме пригодна для задач реального времени как утюг для космического перелёта. Нужна документация по работе с портами LPT. Нужна система, на которой всё это тестировать, а LPT-порты на PC уже мало что не динозавры. Нужно ненулевое знание ассемблера и представление о механизме работы устройств ввода-вывода в системе. Желательно представлять себе частоты шин и процессора на стенде, на котором будет проверяться работа.

Более чем вероятно, что нужно знать что-то ещё.
Abstraction вне форума Ответить с цитированием
Старый 01.11.2011, 20:00   #6
rpy3uH
добрый няша
Старожил
 
Аватар для rpy3uH
 
Регистрация: 29.10.2006
Сообщений: 4,804
По умолчанию

в WinNT даже в драйвере не гарантируется временная реальность, код драйвера в любом момент может быть прерван, другой более важной задачей.
rpy3uH вне форума Ответить с цитированием
Старый 01.11.2011, 23:39   #7
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

rpy3uH, я понимаю что такая формулировка ставит под вопрос адекватность выдавших задание. А что прикажете делать топикстартеру? Как говорил Кристобаль Хозевич, "Речь идет о том, как поступать с задачей, которая решения не имеет. Это глубоко принципиальный вопрос, который, как я вижу, тебе, прикладнику, к сожалению, не доступен."
Abstraction вне форума Ответить с цитированием
Старый 02.11.2011, 20:22   #8
Son Of Pain
Участник клуба
 
Регистрация: 23.12.2010
Сообщений: 1,129
По умолчанию

Начать нужно с поиска в сети описания интерфейса, с помощью которого программируются (программировались) параллельные порты. Потом взять любой старый компилятор под дос (типа bc 3.1), и написать досовскую версию - она будет явно проще. Потом осознать, что при запуске из-под windows она не сработает, а реального железа, на котором есть Lpt-порт, найти скорее всего не удастся. Потом скачать vmware (или аналог), сделать в нем машину с dos и рабочим lpt-портом, протестировать досовскую часть.
Следующий шаг - написание windows-версии. Тут придется поставить visual studio, скачать ddk; узнать, что в программировании драйверов со времен nt 4.0 многое изменилось, и сделать выбор - точно ли нужен драйвер, который бы работал там? Затем почитать msdn, впасть в прострацию от того, сколько усилий придется приложить для реализации псевдо-реалтаймовости, подумать; и на следующий день придти к выдавшему задание человеку и уточнить, точно ли он имел ввиду именно это )
Son Of Pain вне форума Ответить с цитированием
Старый 18.01.2015, 19:56   #9
AVA8205
 
Регистрация: 18.01.2015
Сообщений: 4
По умолчанию Вопрос по теме!

Доброго времени суток, друзья! Я понимаю, что тема мягко говоря давнишняя, но как оказалось актуальная! Я учусь все в том же СФУ. Препод задал те же лабы, но заглянув в "умные" глаза студентов смягчился... Мол не программируйте от греха подальше, а опишите лишь предполагаемые результаты лабораторных работ с обоснованием почему так должно выйти! Прошу вас помогите пожалуйста информацией!
AVA8205 вне форума Ответить с цитированием
Старый 18.01.2015, 20:01   #10
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,543
По умолчанию

Цитата:
Сообщение от AVA8205 Посмотреть сообщение
Прошу вас помогите пожалуйста информацией!
Вот здесь. Может поможет.
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder

Последний раз редактировалось Smitt&Wesson; 18.01.2015 в 20:04.
Smitt&Wesson вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отладчик реального времени Dimaz Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 30.03.2011 08:57
CMOS и часы реального времени. stVadi Помощь студентам 0 28.02.2011 20:59
Счетчик обратного действия в режиме реального времени Панчо PHP 1 20.09.2010 20:37
Кнут-Моррис-Пратт для реального времени >dodger< Помощь студентам 0 25.12.2009 22:05
помогите найти программу звук реального времени IgooReeK Помощь студентам 6 26.05.2009 19:37