Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
-30 / 8 / 1
Регистрация: 31.05.2013
Сообщений: 485

Преобразовать последовательный код из com-porta в параллельный 4 битный

03.05.2019, 15:59. Показов 4075. Ответов 37
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Научился подавать биты через компорт. Хочу с компьютера управлять 12 релюшками. В каждый момент времени - работает лишь одна из них. Например код 0000 - работает № 1, код 0001 запускаем №2 и т.д. Чем считывать байты из компорта? Должна быть система из 4 регистров. И система контроля входного сигнала - как только пошел сигнал (можно управлять через "несущую" компорта), читаем каждый из 4 бит и записываем в очередной регистр. Как только все готово - по параллельному интерфейсу (4-битной шине) подаем на вход логической схемы и получаем результат (сработка реле). В общем требуемый алгоритм вроде ясен. Как это все реализовать и на какой элементной базе?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.05.2019, 15:59
Ответы с готовыми решениями:

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

Преобразовать 8-битный bmp в 24-битный
помогите!!!вообще не имею понятия как это сделать:wall:

Последовательный и параллельный перебор простых чисел
Реализовать последовательный и параллельный (с последовательным перебором простых чисел) алгоритм поиска чисел имеющих не меньше 5 ...

37
Эксперт Hardware
Эксперт Hardware
 Аватар для R71MT
6208 / 2442 / 403
Регистрация: 29.07.2014
Сообщений: 3,174
Записей в блоге: 4
03.05.2019, 18:29
Цитата Сообщение от Albaz Посмотреть сообщение
Научился подавать биты через компорт.
дос или вин???
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
04.05.2019, 02:23
Цитата Сообщение от Albaz Посмотреть сообщение
Научился подавать биты через компорт.
Поздравляю, если вы учитесь в 4-м или ниже классе общеобразовательной школы. Если в 6-м, тоже сойдёт. А вот если выше, то поздравлять особо не с чем. В 21-м веке с такой задачей уже должны справляться выпускники детского сада.
Цитата Сообщение от Albaz Посмотреть сообщение
Хочу с компьютера управлять 12 релюшками.
Да без проблем. Только чем вас не устроила стандартная работа с СОМ-портом?
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,907
04.05.2019, 08:26
Цитата Сообщение от northener Посмотреть сообщение
Научился подавать биты через компорт.
Поздравляю, если вы учитесь в 4-м или ниже классе общеобразовательной школы.
Передавать биты через COM порт не так уж просто. Все же он для байтов предназначен, причем не всегда 8-битных.
Цитата Сообщение от Albaz Посмотреть сообщение
можно управлять через "несущую" компорта
Что за "несущая" ком-порта? Вы что, в синхронном режиме его используете? Непонятно зачем.
Цитата Сообщение от Albaz Посмотреть сообщение
Чем считывать байты из компорта? Должна быть система из 4 регистров
Вы имеете в виду, что умеете передавать байты с компьютера и хотите собрать аппаратное устройство, умеющее их принимать и обрабатывать?
Поскольку тема создана в разделе "контроллеры", то с какой серией знакомы? PIC, AVR, STM, x51? В принципе, на все их можно найти примеры инициализации UART'а.
Возможно, полезным опытом будет сделать обработчик UART'а на микросхемах низкой степени интеграции вроде 561-й серии. Но тут надо хорошо разобраться со структурой UART и цифровой электроникой. Я бы сказал, что этот вариант немного сложнее, зато гораздо больше опыта.
0
 Аватар для Voland_
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
04.05.2019, 10:57
Цитата Сообщение от northener Посмотреть сообщение
Поздравляю, если вы учитесь в 4-м или ниже классе общеобразовательной школы. Если в 6-м, тоже сойдёт. А вот если выше, то поздравлять особо не с чем. В 21-м веке с такой задачей уже должны справляться выпускники детского сада.

Не по теме:

Поверьте, дети делают (даже если и делают) это непреднамеренно :). Это все равно что при виде того, что малыш в три года может играться на планшете в какую-нить 3Д-игру означает, что он в подробностях знает об андроиде и особенностях программирования в ее SDK и SDK OpenAl.



Цитата Сообщение от Albaz Посмотреть сообщение
Хочу с компьютера управлять 12 релюшками.
если задача непосредственно в этом, то я бы вам рекомендовал чипы FTDI. у них до 12ти GPIO пинов - как раз как вам нужно. В связке FTDI + ULN2003A(2шт) вы получите произвольное управление нагрузками в произвольном порядке.

Цитата Сообщение от Albaz Посмотреть сообщение
В каждый момент времени - работает лишь одна из них.
+ [COM-порт]
а вот в таком виде напрашивается МК.

Но... хотелось бы уточнить - вы пытаетесь поизучать сам принцип работы с UART, или вам важно лишь достичь конечной цели?

Потому что, вполне вероятно, сейчас проще управлять нагрузками даже не через UART, а допустим, через WiFi, или Bluetooth... Это и удобнее, и интереснее.
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
05.05.2019, 02:19
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Передавать биты через COM порт не так уж просто. Все же он для байтов предназначен, причем не всегда 8-битных.
Да что вы говорите! На стандартном СОМ-порте есть по крайней мере два битовых выхода. DTR и RTS. Передавайте биты через них сколько вам позволит ОС.
Ну а уж раз мы в конференции "Микроконтроллеры", то и тем более. UART-порты в микроконтроллерах способны и на более.

Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от Voland_ Посмотреть сообщение
Поверьте, дети делают
Верю. Поэтому и отношусь к таким топикам соответственно.



Добавлено через 8 минут
2 COKPOWEHEU, ну и до кучи.
Готов показать вам как можно передать последовательность битов и по линии Tx. Правда с ограничениями.
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,907
05.05.2019, 09:48
Цитата Сообщение от northener Посмотреть сообщение
На стандартном СОМ-порте есть по крайней мере два битовых выхода. DTR и RTS
Никогда ими не пользовался. Их можно дергать независимо от передачи байта?
Учитывая не-реалтаймовость современных компьютерных ОС, нужно либо снижать скорость до нуля, чтобы уж точно успела, либо искать еще один сигнал синхронизации. И получить SPI, хех.
Цитата Сообщение от northener Посмотреть сообщение
UART-порты в микроконтроллерах способны и на более.
Для совсем извращений вроде передачи отдельных битов, проще уж отключить UART и дергать ногами вручную.
Цитата Сообщение от northener Посмотреть сообщение
Готов показать вам как можно передать последовательность битов и по линии Tx. Правда с ограничениями.
Если не элементарщина вроде передачи байта длиной 5-9 бит (с учетом четности 5-10) и не слишком накручено, было бы любопытно.
0
Эксперт по электронике
6558 / 3185 / 335
Регистрация: 28.10.2011
Сообщений: 12,461
Записей в блоге: 7
05.05.2019, 12:23
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Если не элементарщина вроде передачи байта длиной 5-9 бит (с учетом четности 5-10) и не слишком накручено, было бы любопытно.
Это действительно сделать просто.
Тестовый код.
PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
If OpenSerialPort(0, "COM4", 9600, #PB_SerialPort_NoParity, 8, 1,
                  #PB_SerialPort_NoHandshake, 255, 255)
  
  OutData = %01010010101010101111100000110101
  
  For i=0 To 31
    If OutData & (1<<i)
      SetSerialPortStatus(0, #PB_SerialPort_TXD, 1) ; Лог 1 на выходе TXD.
    Else
      SetSerialPortStatus(0, #PB_SerialPort_TXD, 0) ; Лог 0 на выходе TXD.
    EndIf
    Delay(16)
  Next
  
  CloseSerialPort(0)
Else
  MessageRequester("", "Не удалось открыть порт")
EndIf
Скриншот окна логического анализатора.



Использовался конвертер с PL2303.
1
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
06.05.2019, 02:08
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Никогда ими не пользовался. Их можно дергать независимо от передачи байта?
Да, можно.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Для совсем извращений вроде передачи отдельных битов, проще уж отключить UART и дергать ногами вручную.
Не совсем так. Дёргать вручную трудовремязатратно для процессора. Аппаратное реализация всегда лучше, если она возможна. Например в середине 2000-х мне так и не удалось заставить контроллер на базе 51-го процессора работать по трём последовательным портам. Один для связи с СОМ-портом компьютера и два для связи с нестандартными устройствами "псевдо" СОМ. С любыми двумя - без проблем.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Если не элементарщина вроде
И да и нет. Но длина бита тут точно не при чём.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Учитывая не-реалтаймовость современных компьютерных ОС
Таки да. Это во многом всего лишь ностальгия по тем временам, когда компьютеры создавались для инженеров, а не для кухарок
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,907
06.05.2019, 15:20
Цитата Сообщение от northener Посмотреть сообщение
Не совсем так. Дёргать вручную трудовремязатратно для процессора. Аппаратное реализация всегда лучше, если она возможна.
Я говорил про нестандартное применение выводов UART / COM. Вроде примитивных программаторов для AVR 5-проводков, где из COM-порта делают SPI. И работает это не со всеми драйверами.
Цитата Сообщение от northener Посмотреть сообщение
Таки да. Это во многом всего лишь ностальгия по тем временам, когда компьютеры создавались для инженеров, а не для кухарок
А разве компьютеры хоть когда-то были полностью реалтаймовыми? Что-то я про такое не слышал: всегда либо несколько юзеров один процессор делят, либо прерывания вылезут, либо еще что-то. Да и смысла в реалитайме там немного: для точного выдерживаня длительности импульсов логичнее спаять железку.
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
07.05.2019, 02:24
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Я говорил про нестандартное применение выводов UART / COM.
Ну а я говорил в более широком смысле, считая выводы UART на микропроцессоре такими же битовыми выходами как и все прочие. Что как правило и есть.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
А разве компьютеры хоть когда-то были полностью реалтаймовыми?
Были и есть. Классическая MS-DOS была вполне системой реального времени. Если пользователь-инженер этого хотел. Если сей компьютер принадлежал пользователю-кухарке, тогда возникали желания многозадачности ОС.
0
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,907
07.05.2019, 09:58
Цитата Сообщение от northener Посмотреть сообщение
Ну а я говорил в более широком смысле, считая выводы UART на микропроцессоре такими же битовыми выходами как и все прочие. Что как правило и есть.
Про что я и говорю. Если хочется чего-то нестандартного, проще уж и использовать выводы UART как обычные GPIO.
Цитата Сообщение от northener Посмотреть сообщение
Классическая MS-DOS была вполне системой реального времени.
Я думал скорее про UNIX как более инженеро-ориентированную машину
В любом случае, ПК не очень-то предназначен для реалтайма, для этого он слишком мощный.
1
-30 / 8 / 1
Регистрация: 31.05.2013
Сообщений: 485
08.05.2019, 13:35  [ТС]
Цитата Сообщение от northener Посмотреть сообщение
Поздравляю, если вы учитесь в 4-м или ниже классе общеобразовательной школы.
ну змеиные зубки Вас показывать не просили. У нас "Корветы" под DOS, загружаемые с кассеты магнитофона "Электроника" появились лишь в 8 классе. Так что в 4-м классе у меня были лишь счеты, ровно как и у продавцов тогдашних продмагов.
Но и нынешнее, окружающее меня поколение "пепси", выросшее с планшетом в одной руке и бутылкой соответствющего напитка в другой, не больно то разбирается в ЭВМ дальше визуальных кнопочек и окошек.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
с какой серией знакомы? PIC, AVR, STM, x51?
да ни с какой!!!!
Скажите, что нужно? Т.е. что будет в качестве приемника (содержащее буфер-накопитель)? Как строятся схемы на логических элементах для того или иного параллельного сигнала на входе я знаю. Значит, я сделаю 12 таких схем, входы у них будут параллельны и принимать все 4 входящих бита. И при определенной комбинации 1 и 0 на входе будет отрабатывать одна из 12 логических схем.
Потому задача состоит в трансформации последовательного кода во параллельный. Мне нужно 4 триггера, что бы записать в них по очереди входные 4 бита. Потом считать одновременно все, то что в триггерах накоплено. После чего триггеры можно обнулять и снова ставить на "прослушку". "Несущая" может быть полезна как то, что дает знак того, что триггеры должны начать считывать поступающий сигнал. Например, 1 бит данных передаем в 1 секунду и в это же время заполняется 1 триггер. Затем 2-секунда и заполняем 2 триггер. И так до 4-го. После "несущую" убираем и это значит, что параллельный 4 битный код готов к считыванию логическими схемами. Если бы я знал, как синхронизировать время передачи и считывания очередного бита, этот протокол работал бы 100%.
Тогда вариант 2. Не изобретаем велосипеда. Вы мне без издевок (являющихся симптомом высокомерия и спеси) спокойно и просто поясняете что нужно. Дискуссия тогда будет информативной, полезной, интересной, а не словоблудием сообщества троллей.
1
 Аватар для COKPOWEHEU
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,907
08.05.2019, 15:48
Цитата Сообщение от Albaz Посмотреть сообщение
Но и нынешнее поколение не больно то разбирается в ЭВМ дальше визуальных кнопочек и окошек.
У нынешнего поколения куча готовых библиотек, литературы и примеров. Уж скопипастить код для стандартной работы с COM-портом четвероклассник, полагаю, способен. Насколько он его поймет - другой вопрос.
Цитата Сообщение от Albaz Посмотреть сообщение
да ни с какой!!!!
Скажите, что нужно?
Нам-то откуда знать что вам нужно? Сформулируйте цель устройства, ограничения по ассортименту железа, по электрическим и скоростным характеристикам.
Цитата Сообщение от Albaz Посмотреть сообщение
Значит, я сделаю 12 таких схем, входы у них будут параллельны и принимать все 4 входящих бита.
Если должна работать одна нагрузка из 12, лучше поставить 1-2 микросхемы дешифратора / демальтиплексора вроде 561КП1
Цитата Сообщение от Albaz Посмотреть сообщение
Мне нужно 4 триггера, что бы записать в них по очереди входные 4 бита.
А остальные 3-6 битов? А схема детектирования стартового бита? А схема синхронизации?
Цитата Сообщение от Albaz Посмотреть сообщение
"Несущая" может быть полезна
Что вы понимаете под "несущей" COM-порта?
Цитата Сообщение от Albaz Посмотреть сообщение
Например, 1 бит данных передаем в 1 секунду и в это же время заполняется 1 триггер
COM-порт работает не так. Более того, минимальная скорость у него 50 бит в секунду, если не ошибаюсь. Причем задать произвольную скорость обычно нельзя - только из ограниченного списка.
Цитата Сообщение от Albaz Посмотреть сообщение
После "несущую" убираем и это значит, что параллельный 4 битный код готов к считыванию логическими схемами.
То что вы сейчас описали больше похоже на SPI. Если вам без разницы конкретный протокол обмена (UART/RS232 или SPi) можете попробовать воспользоваться примером кода от locm. Сомневаюсь, конечно, что он заработает на современных системах и тем более переходниках USB-COM, но попытка не пытка.
Цитата Сообщение от Albaz Посмотреть сообщение
Не изобретаем велосипеда. Вы мне без издевок (являющихся симптомом высокомерия и спеси) спокойно и просто поясняете что нужно. Дискуссия тогда будет информативной, полезной, интересной, а не словоблудием сообщества троллей.
Дискуссия будет информативной, полезной и интересной если вы будете прислушиваться к советам, учить матчасть и делать что-то самостоятельно. Пока что вы не сформулировали требования к решению, вместо этого навязывая свое решение. Это называется "ошибка XY" - человек решает задачу тем способом, до которого догадался и помощи просит именно относительно способа, но не относительно задачи. Потому что если бы попросил относительно задачи, ему бы предложили несколько более оптимальных вариантов.
.
Насколько я пока что понял вашу задачу, вам надо просто управлять включением одной из 12 нагрузок, без разницы по какому протоколу. Знаний в контроллерах нет (зачем тогда было создавать тему именно тут?), знания по цифровой электронике самые начальные. Скорость обмена не критична.
Решения, которые рассмотрел бы я, решая задачу:
1. USB-HID на v-usb на ATmega8. Просто потому что уже имел с ним дело. Условия задачи удовлетворяет с огромным запасом, широко распространенный контроллер в удобном корпусе. Но требует программирования, что вам, вероятно не по силам.
2. Контроллер с аппаратным UART и переходник USB-UART / RS232-UART. Несколько проще в программировании, хороший вариант местным новичкам попрактиковаться, но для вас, боюсь, все еще слишком сложный.
3. FT232 и bitbang. Специальная микросхема, изначально переходник USB-UART, но с возможностью прямого управления кучей выводов. У некоторых модификаций хватит ног управлять всеми 12 нагрузками даже без дополнительной обвязки. Из недостатков - необходимость программирования (правда, в отличие от контроллеров, только на стороне ПК), мелкий корпус и приличная цена.
4. LPT-порт. Если есть, то это самый простой способ. Если нет можно попробовать найти переходник (они бывают, хотя и редко), но не факт что он заработает нормально.
5. Прямое управление линиями COM-порта. Не самый универсальный способ ввиду удивительной кривизны некоторых портов, но может и завестись.
6. Прямое управление только RTS, DTR. С первого счетные импульсы, второй - ресет. Тогда достаточно микросхемы-счетчика. Пожалуй, самый простой способ как в плане схемотехники, так и кода. Правда, толком оценить трудозатраты я не могу.
7. COM-порт + аппаратный декодер. Довольно сложный, но интересный вариант (вряд ли осилите). Собрать на рассыпухе и логических элементах приемник UART'а, а дальше уже дешифратор.
8. Аудиовыход. Тут куча вариантов от разделения по частотам до цифрового сигнала по типу SPi (левый + правый каналы). В общем-то это извращение, но техническая реализация может быть интересной.
9. CD-ROM + механический коммутатор по типу старых АТС. Тоже извращение.
0
 Аватар для Ethereal
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
08.05.2019, 17:29
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
А разве компьютеры хоть когда-то были полностью реалтаймовыми?
Электроника-85 с операционкой RT-11, где RT означает Real Time.

Добавлено через 7 минут
Цитата Сообщение от northener Посмотреть сообщение
Были и есть. Классическая MS-DOS была вполне системой реального времени.
Это если часть функций MS-DOS заменять своим кодом, а сама по себе MS-DOS не была реалтаймовой. В реалтаймовой операционке если ты делаешь запрос к примеру записать в файл, то управление тебе возвращается не по окончании записи, а сразу. Далее ты можешь в программе выполнять свои дела, время от времени проверяя не завершилась ли запись вызовом .WAIT, который или сразу возвращает управление отвечая да или нет или ждет окончания в зависимости от аргумента. При этом твоя задача оперативная, а запись в файл идет как фоновая. В MS-DOS ничего подобного нет. А в RT-11 именно это и было. Т.е. в операционке real-time не должно быть блокирующих вызовов выпоняющихся неопределенно долгое время. А в MS-DOS они такие.
0
Эксперт по электронике
6558 / 3185 / 335
Регистрация: 28.10.2011
Сообщений: 12,461
Записей в блоге: 7
08.05.2019, 17:34
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Сомневаюсь, конечно, что он заработает на современных системах и тем более переходниках USB-COM
Тестировал на Windows 7, но должно работать на всех версиях винды (не проверял), Linux и MacOS X. Скрин работы в сообщении выше. Использовался USB переходник на PL2303 о чем я написал.

Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
LPT-порт. Если есть, то это самый простой способ.
Для него нужен драйвер. До XP включительно это не проблема, а выше, нужна цифровая подпись.
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,856
08.05.2019, 22:59
Albaz, начнем сначала
релюхами кто управлять будет? компьютер? какой протокол обмена?
исполняющие устройство кто? МК? или железная логика? от этих вопросов зависит в какую сторону копать, иначе будет тысяча мнений
например вопрос
Цитата Сообщение от Albaz Посмотреть сообщение
Например код 0000 - работает № 1, код 0001 запускаем №2 и т.д.
а выключать как?
как игнорировать помехи? а они будут

Добавлено через 7 минут
Цитата Сообщение от locm Посмотреть сообщение
До XP включительно это не проблема, а выше, нужна цифровая подпись.
ой ли а средствами WinAPi( вами не любимых ) нельзя обойтись?
OpenFile и DeviceIOControl
0
Эксперт по электронике
6558 / 3185 / 335
Регистрация: 28.10.2011
Сообщений: 12,461
Записей в блоге: 7
09.05.2019, 00:16
Цитата Сообщение от ValeryS Посмотреть сообщение
а средствами WinAPI
Насколько помню нет возможности произвольно менять состояние выходов LPT порта, иначе не использовали бы драйвер для прямого доступа.
Цитата Сообщение от ValeryS Посмотреть сообщение
DeviceIOControl
Обращаясь к какому драйверу? Можно пример вызова функции, чтобы протестировать работу с LPT?
0
пофигист широкого профиля
4769 / 3204 / 862
Регистрация: 15.07.2013
Сообщений: 18,609
09.05.2019, 03:37
Цитата Сообщение от Ethereal Посмотреть сообщение
В реалтаймовой операционке если ты делаешь запрос к примеру записать в файл, то управление тебе возвращается не по окончании записи, а сразу.
Сомнительная формулировка именно реал-тайма. Тут вы приплетаете ещё и многозадачность.
0
-30 / 8 / 1
Регистрация: 31.05.2013
Сообщений: 485
09.05.2019, 11:45  [ТС]
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Что за "несущая" ком-порта?
одна из 9 ног компорта - готовность модема принимать/передавать.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Вы что, в синхронном режиме его используете?
вопрос не актуальный. Данные идут в одну сторону, от ПК к исполнительному устройству. А о том, произошло ли нужное воздействие и сработало ли реле я анализирую по сигналу от датчика, который идет по другому порту. Прога использует 2 порта.
Цитата Сообщение от ValeryS Посмотреть сообщение
а выключать как?
На входе соответствующей логической схемы (а их у нас 12 и входы на 4 разряда включены параллельно) присутствует данная комбинация 0/1? => на выходе 1 и работает реле.
вобщем, вока понял, что мне нужен периферийный адаптер, что бы принять с компорта. Далее нужно ПОСЛЕДОВАТЕЛЬНО переданные байты преобразовать в параллельные. Когда будет 4 провода шины данных, что с ними дальше делать, я знаю. Эта часть реализуема на элементах И, ИЛИ, НЕ при помощи паяльника. Лучше конечно и это сделать с помощью микроконтроллера (12 схем, в каждой по 3-4 микросхемы с 14 ногами каждая = 627 припаянных ноги - это не плохой "марафон" радиомонтажнику).
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Насколько он его поймет - другой вопрос.
Я сперва допиливал DOS- TURBO PASCAL код. Там работа с компортом напоминала работу с регистрами TASM (не изучал, но прочитывал). Сложновато, но принцип ясен. Все было классно, только черный терминал выглядел архаично. Когда в DELPHI - 1 (16 бит) его не удалось перекомпилить на Винду, я нашел в два раза более длинный код на DELPHI - 7. Работал с глюками (в форумах читал, что в ассинхронном режиме зависания избегаются лаврированием между потоками). Понял, что не осилю. На C# класс SerialPort в десяток строк делал то же, что TURBO PASCAL на 4 страницы А4 (я коды всегда распечатываю при изучении, подчеркиваю, делаю пометки, рисую стрелки что да откуда).
Потому несколько строк на C# или PYTHON вряд ли помогут юнцам понять нечто большее, чем дают им щелчки мышкой по виндозным кнопкам.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
ATmega8
ну вот почитал я мануал. Не понять, куда припаивать ноги подключения компорта, откуда снимать 12 выводов?
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
UART
согласно ВИКИПЕДИИ "узел вычислительных устройств, предназначенный для организации связи с другими цифровыми устройствами. Преобразует передаваемые данные в последовательный вид так, чтобы было возможно передать их по одной физической цифровой линии другому аналогичному устройству. " У меня 1-я половина задачи противоположная.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
FT232 и bitbang.
Заточены как я понимаю под USB. Работа с USB устройствами намного сложнее чем с Компортом. Я не знаю, как в программе на C# я встрою код для работы с этими свистками? Для них скорее всего существует своя некая IDE (программатор).
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
LPT-порт
там десятки выводов. и если там возможно на неограниченное время вешать 1 на вывод, это все же ставит в сильную зависимость от архаических стандартов + производителей преобразователей USB-LTP. Компортовские преобразователи сейчас не экзотика и по крайней мере 3 и 5 выводы работают.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Прямое управление линиями COM-порта.
управлять "жестко", как я знаю, я смогу лишь "несущей", а это управление лишь оной релюшкой. Прочее - это тот же последовательный код по природе, только в иной обертке.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
RTS, DTR. С первого счетные импульсы, второй - ресет. Тогда достаточно микросхемы-счетчика. Пожалуй, самый простой способ как в плане схемотехники, так и кода
мне кажется это близко к моей первоначальной логике.
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Собрать на рассыпухе и логических элементах приемник UART'а, а дальше уже дешифратор.
не понимаю, зачем UART? Та же последовательность бит сыплется с передатчика компорта, только скорость задается от 300 бит..
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Аудиовыход.
управление радиомоделями при помощи звукового генератора разных тональностей. Да, можно к выходу наушников из компа подключить кучу полосовых LC фильтров, а программно вызывать БИПЫ заданной тональности и вызывать отработку соответствующего реле. но это действительно и смешно, да и вдруг оператор ЭВМ захочет послушать музыку? )))))
Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
CD-ROM + механический коммутатор
- без комментариев)))

Добавлено через 13 минут
Вобщем я уже готов поднять белый флаг и идти к фрилансерам!!!!!!! )))
Тогда помогите хотя бы правильно ставить задачу!
например через CMD отправляю:
Bash
1
ECHO 1 > COM1
устройство, подключенное к 1-му компорту включает 1 - реле.
Bash
1
ECHO 10 > COM1
устройство, подключенное к 1-му компорту включает 10 - реле.
Т.е. нужно устройство "в упаковке". Что уж там будем не знаю (микроконтроллер + код прошивки + схема принципиальная и т.д.)??
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.05.2019, 11:45
Помогаю со студенческими работами здесь

Создать параллельный и последовательный алгоритм задачи с ферзями
Необходимо из двух методов создать параллельный и последовательный алгоритмы решения задачи с ферзями. Сама задача - Расставить N ферзей на...

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

Реализовать два способа обработки элементов массива: последовательный и параллельный
выводит ошибку выхода за границы массива в строчке mas3 = Function(mas1 + mas2); подскажите в чем проблема using System; using...

Реализовать последовательный и параллельный (с последовательным перебором чисел) алгоритм поиска чисел
Помогите реализовать , последовательный и параллельный (с последовательным перебором чисел) алгоритм поиска чисел, квадрат которых имеет...

Подскажите дизассемблер, который переведет код ассемблера в машинный 8 битный код для КР580
Подскажите программу дизассемблер которая переведет код ассемблера в машинный 8 битный код для КР580


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Закрытая тема Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru