Форумы Modlabs.net: Графические ЖКИ от МЭЛТа... - Форумы Modlabs.net

Перейти к содержимому

  • (3 Страниц)
  • +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

Графические ЖКИ от МЭЛТа...

#21 Пользователь офлайн   listener 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 618
  • Регистрация: 08 Май 03

Отправлено 18 Сентябрь 2003 - 14:15

2TransMatrix

http://www.mitracon.ru - MC68HC908JB8ADW - по сегодняшнему прайсу - 186.59р, JDW - на 11 копеек дешевле.
Приехал и купил; кто ты такой и зачем тебе это - не спрашивают. Схему для ADW я нарисовал. JDW отличается от JP только корпусом.

2VladE

Я сам взялся за паяльник этим летом, после перерыва лет в 8.

Супер-пупур-мега девайсина, управляющая всем подряд - это для души. Как конечное решение двигается простая схема, в которой кроме контроллера, шесть конденсаторов и три резистора (да, совсем забыл про транзистор на управление подсветкой и кварц).

Моя программа пишется сейчас для USB, как максимального по навороченности устройства. В дальнейшем, предполагается, что она будет работать с любым способом подключения (LPT, COM, I2C, ...). На LPT постоянно висит какая-нибудь железка, поэтому к нему особо не подключишься. С комами - тоже напряжно.

Сейчас бы еще времени, хотя бы немножко ...
0

#22 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 18 Сентябрь 2003 - 18:04

2 listener

Посмотрел я твою схемку. В принципе не сложная, но возникла к тебе сразу куча вопросиков:

1. MC68HC908JB8ADW можно ли с помощью компа (LPT,Com + прога) залить на нее прошивку, если да то какая?

2. У тебя есть прошивка которая будет вполнять все функции или её еще нужно написать?

3. Зачем транзистор для управления подсветкой? Он что управляет яркостью программно через USB?

4. Выход Vсс это отдельное питание? Нельзя ли запитать от USB?

5. На ЖКИ входы E1 E2 там что 2 строба или я чего-то не догоняю? (Или это схема для твоего индикатора с синей подсветкой)

Может правда USB заняться... Хотя сперва надо все красиво сделать для LPT.
Может дашь какие-нибудь ссылки по программированию USB, очень хотелось бы почитать.
0

#23 Пользователь офлайн   listener 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 618
  • Регистрация: 08 Май 03

Отправлено 18 Сентябрь 2003 - 18:59

2VladE:

1. Программируется оно через com. Вернее, нужно один раз записать boot-loader, а потом прошивка заливается по USB.

Программатор содержит одну MAX232 (она используется и как конвертор уровней RS232, и как источник напряжения программирования), четыре конденсатора обвязки к ней, четыре резистора по 10К, и один диод КД522. В принципе, в даташите на контроллер все есть; я, чуть позже, напишу подробно, как заливать прошивки.

2. У меня есть работающая прошивка (иначе бы я не хвалился тем, как все работает). В нее надо дописать работу с пакованными форматами данных и поддержку power management - но работает и так. Еще планируется поддержка 1-wire датчиков (например, DS1820) и кнопок.

3. Ток подсветки - 50..200mA. Это в несколько раз превышает максимально допустимую нагрузку на контроллер. Подсветка пока может только включаться и выключаться. Насчет управления яркостью - я не уверен, что у этого контроллера хватит на это скорости.

4. Vcc - +5V внутри схемы. Берется с USB.

5. MT12232 содержит внутри два контроллера (для правой и левой половины индикатора). У индикатора с буквой A есть контакт, который управляет выбором контроллера и контакт строба (записи чтения в выбранный контроллер). У индикатора с буквой B - на каждый контроллер - отдельный строб (что удобнее, т.к. можно писать в оба контроллера одновременно).
В схеме нарисован B. Для A вместо E1 и E2 подключаются E и CS. (и вносятся небольшие изменения в прошивку - проверено, работает).
(И распиновка у них разная)

С вопросами по USB, я обычно посылаю на http://www.beyondlog...tshell/usb1.htm - там все очень хорошо расписано.
0

#24 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 18 Сентябрь 2003 - 21:21

Посмотрел сейчас доки на оба индикатора, действительно 2 строба у 32b. А я все думал чем они отличаются.
Насчет Vсс точно, я просто не правильно посмотрел.
Если можно программатор ввиде схемки plz, также хотелось бы увидеть номиналы для схемки с MC68HC908JB8ADW.

Вопросики (куда уж без них):
0. Что есть boot-loader (тоже типа прошивки)?
1. Спомощью какой проги заливается прошивка?
2. Прошивка пишется на асме?
3. Если я буду делать USB поделишься прошивкой для 32А?
4. Еще хотел спросить, откуда в компе можно взять шину I2C

Про USB щас попробуем почитать.
Вот блин деньги в Инете кончаются, завтра побегу за карточкой.
0

#25 Пользователь офлайн   listener 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 618
  • Регистрация: 08 Май 03

Отправлено 18 Сентябрь 2003 - 23:27

0. boot-loader - непереписываемая часть прошивки, которая при старте (резете) проверяет некое условие (нажатие кнопки), и, если это условие выполнено - загружает и записывает во флэш основную прошивку.
1. флэшер (вместе с отладчиком, ассемблером и линкером) берется с www.pemicro.com
2. Прошивку я пишу на C (www.imagecraft.com - раздают триал на месяц, кейген легко находится поиском)
3. Равно, как и всем остальным
4. На некоторых мамках она просто выведена (разъем smbus), на остальных - можно снять, например, с контактов SPD EEPROM (мелкая восьминогая микросхема) на DIMM.
0

#26 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 19 Сентябрь 2003 - 01:33

2 listener
Почитал про USB... :eek: Да-а-а без пол-литра не разобратся. :gigi:

Я так понял предстоит работать с верхним уровнем (как и со всеми портами в NT) т.е. посылать данные какой нибудь сиске :D (в смысле *.sys файлу). По сему опять вопросы:
1. Как это реализованно у тебя(используешь чужой драйвер, написал сам или в виндах он уже есть) ?
2. Через какую функцию посылать данные? DeviceIoControl???

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

2 TransMatrix
А ты как? Cмотришь в сторону USB или нет?
Кстати у тебя какой экранчик 32А или нет?
0

#27 Пользователь офлайн   TransMatrix 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 309
  • Регистрация: 28 Апрель 03

Отправлено 19 Сентябрь 2003 - 05:06

Прога - просто чиркани на мыыло пару строк - вышлю обратным письмом! Сейчас пишу версию 2 - там будет пара-тройка наворотов... В частности - будет возможность подключиться к пульту ДУ и будет своё меню...
0

#28 Пользователь офлайн   listener 

  • Advanced Member
  • PipPipPipPipPipPipPip
  • Группа: Пользователи
  • Сообщений: 618
  • Регистрация: 08 Май 03

Отправлено 19 Сентябрь 2003 - 16:00

2VladE

USB - гораздо проще, чем кажется на первый взгляд. Эдакий гибрид Ethernetа c RS232.

Я использую пример BulkUsb из DDK. Данные посылаются через обычные ReadFile и WriteFile

У меня на страничке внизу был пример работы с BulkUSB. (запись от 20 мая)

Сейчас попробую написать подробный TODO - тогда его выложу
0

#29 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 19 Сентябрь 2003 - 16:55

2 listener
Посмотрю про BulkUSB. Будем ждать подробный TODO.

2 TransMatrix
Мыло отправил.
0

#30 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 20 Сентябрь 2003 - 04:01

2 TransMatrix
Мыло получил, спасибо. :)

2 ALL
Возник вопрос.
Если в BIOS-е поменять значение LPT-порта(SPP, EPP, ECP, ECP+EPP), то физически там что-нибудь изменится(ноги, адреса и.т.д) или нет. Если изменится, то по конкретней раскажите plz или ссылочку дайте где про это можно почитать.
0

#31 Пользователь офлайн   TransMatrix 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 309
  • Регистрация: 28 Апрель 03

Отправлено 21 Сентябрь 2003 - 01:33

SPP и прочие EPP...
Стандарт порта принтера создавался в рассчёте именно на ПЕЧАТАЮЩИЕ устройства, поэтому у него было:
1) Довольно мелкая скорость
2) Односторонняя работа с данными (выдача по куче выводов и приём только по паре (конец листа, нет бумаги, ошибка и т.д.)
Соответственно все эти EPP расшифровываются как "Расширенный Порт Принтера" и т.д. Т.е. проге почти пофиг - просто с ними она может с порта ещё и получать данные, а также работать на большей скорости!
А если номер порта поменять в Биосе - просто сменить его и в проге - порт принтера идёт в НОРМАЛЬНЫХ программах как "заданный+приращение", так что им никакой разницы...
0

#32 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 21 Сентябрь 2003 - 08:10

To TransMatrix or listener

Блин, я уже не могу, :D объясните мне плиз такую фишку:

Инициализирую дисплей, устанавливаю страницу и адрес.
Далее происходят приколы:

1. Если попытаться записать по адресу $378 байт $FF - дисплей выключается :) , причем другие от 00 до FE отображаются. Потом, если дать команду Display On, он включается и показывает мне, что он успешно записался. :D
2. Еще замечена другая фишка - чем больше число, которое записываешь в порт, тем тусклее индикатор начинает показывать. Т.е. число 01 - отображается четко, а число FE - отображается тускло. Хотя опять же после Display On все показывает нормально.

Где грабли? Почему так происходит? Есть какие-нибудь мнения.
0

#33 Пользователь офлайн   TransMatrix 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 309
  • Регистрация: 28 Апрель 03

Отправлено 22 Сентябрь 2003 - 01:30

Посмотри у меня функции писания в дисплей - ИМХО - довольно просто! Просто помимо 378 надо сначала в +2 установить стробы, а потом их снять!
0

#34 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 22 Сентябрь 2003 - 17:41

2 TransMatrix
"Просто помимо 378 надо сначала в +2 установить стробы, а потом их снять!"

Да нет это я понял. Я так и делаю. Вот глянь (запись FF в левый кристал):
DlPortWritePortUchar($37A,$0);
DlPortWritePortUchar($378,$FF);
DlPortWritePortUchar($37A,$8);
DlPortWritePortUchar($37A,$0);
Правильно?
Я думаю тут фишка в другом. (Может в дисплее)

Ради интереса: На сколько у тебя стоит резистор сбоку дисплея (на подсветку)?

Твоя прога (что ты мне прислал) под XP не работает. (А должна или нет?)

Еще, если у меня возникнут вопросы по твоим исходникам.
Можно тебе их задать по мылу? Ответишь?
0

#35 Пользователь офлайн   TransMatrix 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 309
  • Регистрация: 28 Апрель 03

Отправлено 23 Сентябрь 2003 - 02:11

Под ХП? А ты дрова для прямого досступа к LPT порту поставил? Вот потому и не работает! :)

Резюк - впаял 100 омный переменный....

Программирование - честно говоря не помню - пол года почти прошло!

Естественно - ответ если запаздает - значит у меня просто в данный момент времени было в обрез, но на письма я отвечаю 100%!
0

#36 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 23 Сентябрь 2003 - 21:20

2 TransMatrix
"Под ХП? А ты дрова для прямого досступа к LPT порту поставил? Вот потому и не работает! :insane: "

А какой там нужен драйвер? Если тот, который указан на сайте http://digitalman.by.ru/doc_lcd.htm , то он у меня уже стоит (для своей проги использую). Кидаю в папку с твоей программой, DLPORTIO.dll - все равно ошибку выдает.
0

#37 Пользователь офлайн   TransMatrix 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 309
  • Регистрация: 28 Апрель 03

Отправлено 24 Сентябрь 2003 - 02:02

Значит глюки... Или у тебя, или в проге... Давно её под ХП не запускал, но на дублирующей машине она спокойно в 2000 работает... Посмотрю, но, видимо, что-то у тебя сглючило... А под... А!!!! Вспомнил! В ХП глючит модуль работы с загрузкой проца! Выкинь из каталога библиотеку CPU_Info.dll !!!
0

#38 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 24 Сентябрь 2003 - 03:47

2 TransMatrix

Выкинул CPU_Info.dll - прога заработала, но:

1. При работе экранчик моргает, как будто низкая частота рефреша (это так и должно быть?) :) :( :(
2. По данным диспечера задач прога грузит проц при войнушке на 100%, при остальных плагинах от 8 до 16 - это нормально?. (Проц Атлон XP 1600) :(
3. Войнушка что-то на дисплее, так быстро показывается, что разглядеть успеваю только точки и палочки.
4. Анализатор спектра не работает. :(
5. При инверсной картинке+масяня правый кристал глючит, дисплей иногда включается, выключается. :( :( :(
6. Масяня больше на лягушку похожа. :)

Блин, что-то подсказывает что у меня что-то либо с экраном, либо с ЛПТ. Завтра попробую у друга на компе, тогда доложу результаты.
0

#39 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 24 Сентябрь 2003 - 18:55

2 ALL
Подскажите плз? не спалю ли я LPT порт если:

1. Подключать/отключать LPT кабель при присутствии питания на LCD-шнике.
2. Подключать/отключать питание LCD-шника при подключенном LPT-кабеле.

Короче говоря, поддерживает ли LPT, Hot Plug или нет.
0

#40 Пользователь офлайн   VladE 

  • Member
  • PipPipPip
  • Группа: Пользователи
  • Сообщений: 321
  • Регистрация: 14 Сентябрь 03

Отправлено 24 Сентябрь 2003 - 23:20

Сегодня попробовать на другом компе, не получилось... :(
Завтра попробую обязательно.

2 TransMatrix
Глюки продолжаются... :) Че то, я не поюму "То ли лыжи не едут, то ли я ...."
Посему хотелось бы спросить у тебя (меня еще тешат сомнения что, я что-то спаял не правильно или что-то делаю не так)

Ты когда паял по схеме http://digitalman.by.ru/doc_lcd.htm - ничего не менял?
Я вот не пойму, там около ноги 7(E) и 17(Res) дисплея какие-то кружочки - что это?. Я например 7(дисплея) подключил к 17(LPT) как там и написано а 17(дисплея) оставил ни к чему, не подключенной. (У тебя так же?)

Потом он пишет "Во-вторых, что касается выводов, то стоит упомянуть несколько моментов. Вывод 7 - строб записи/чтения E инверсный. Это значит, что нормальное его состояние должно быть "1". Когда необходимо стробировать запись/чтение, то необходимо перевести его в "0", затем в "1"."
Я глянул у него в исходниках, там при записи в память дисплея, он делает так (c.E = 1, c.E = 0, c.E = 1), у тебя же в исходниках (c.E = 0, c.E = 1, c.E = 0). Истина, как всегда, где-то рядом...

Еще хотел спросить в LPT по адресу 37Ah биты как идут, так 0,0,0,0,E,RW,A0,CS или нет?

Весь прикол в том, что его и твоя (с оговорками см. пред. пост) программа работают. Но я посмотрел в его исходниках файл Font.h, там вроде он никогда и не посылает FF в дисплей.

2 Listener
Что-то ты пропал... Как там дела идут?
0

Поделиться темой:


  • (3 Страниц)
  • +
  • 1
  • 2
  • 3
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 members, 1 guests, 0 anonymous users