Управление семисегментником напрямую через COM порт.

Подключаем наши девайсы к компьютеру. Обсуждаются: порты, протоколы, драйвера, языки программирования и т.д.
Ответить
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Чт май 01, 2014 07:28:15

Сообщение vladlen-from-vrtp »

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

В порт последовательно отправляется массив соответствующего символа.

Например ( C# ):

Код: Выделить всё


....
            serialPort1.Encoding = Encoding.Unicode;
...
            //     { E  D   Dp  C  B   G   F   A }  для моей разводки  

byte[] data = { 255, 255, 0, 255, 0, 255, 255, 255 };  // 6

for (Int16 i = 0; i < 8; i++)  // вывод посимвольно массива рисующего знак
            {
                serialPort1.Write(data, i, 1);
            }
...


На рисунке схема из которой ясен принцип работы железа(описан здесь).
Скорость порта 57600 для указанных на схеме номиналов деталей.
Вложения
1.jpg
(49.82 КБ) 418 скачиваний
Реклама
Друг Кота
Аватара пользователя
Сообщения: 4747
Зарегистрирован: Вс янв 24, 2010 13:14:02
Откуда: Омск

Сообщение vem566 »

И чё?
Идея вполне жизнеспособна. Реализация - нет.
Для того, чтобы зажечь цифру нужно в регистр отправить 1(один!) байт. Это 8(восемь) БИТ!, а не 8 байт, как написано.
То есть без всякого цикла отправляется 1 (один) байт с десятичным значением 215 для цифры "6" и приведенной разводке индикатора.
Реклама
Говорящий с текстолитом
Сообщения: 1658
Зарегистрирован: Вс дек 11, 2011 05:25:04
Откуда: Киев, Украина

Сообщение Tolmi »

Для начала неплохо сопрячь по уровням сигналы - уровень логического нуля в RS-232 может достигать +12В, а уровень логической единицы -12В. Входу регистра не поплохеет? :facepalm: :tea:
In theory, theory and practice are the same. In practice, they're not.
Контактная информация:
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Чт май 01, 2014 07:28:15

Сообщение vladlen-from-vrtp »

Спасибо всем отписавшимся, но я не спрашивал ваше мнение, а просто озвучил идею.
Улыбнуло разглагольствование товарища про биты и байты :)
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 4468
Зарегистрирован: Вс янв 24, 2010 19:19:52
Откуда: Главный Улей России (Moscow)

Сообщение DX168B »

Код: Выделить всё

serialPort1.Encoding = Encoding.Unicode;
А разве юникод не 16-битный? Или Си-шарповской библиотеке на это плявать и это касается только записи строк?
I am DX168B and this is my favourite forum on internet!
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 4747
Зарегистрирован: Вс янв 24, 2010 13:14:02
Откуда: Омск

Сообщение vem566 »

vladlen-from-vrtp писал(а):но я не спрашивал ваше мнение, а просто озвучил идею
vem566 писал(а):Идея вполне жизнеспособна. Реализация - нет.
И зачем было писать? Демонстрация очередной ахинеи?
Реклама
Ответить

Вернуться в «Интеграция с ПК»