Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос по микроконтроллеру Atmel AT90S1200
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
ONIX2013
Помогите пожалуйста, я если честно в этом деле новичек. Делаю курсовой проект, и вот встала задача подкючения нескольких ЖКИ индикаторов. На рисунке прикрепил, как подлючается один (для 2-х как по мне просто не хватает выводов. Помогите пожалуйста, и не сердчайте, что обращаюсь возможно по таким элементарным вопросам, но ведь начинать любое дело надо с малого...
Lagman
Цитата(ONIX2013 @ Nov 23 2013, 15:04) *
Помогите пожалуйста, я если честно в этом деле новичек. Делаю курсовой проект, и вот встала задача подкючения нескольких ЖКИ индикаторов. На рисунке прикрепил, как подлючается один (для 2-х как по мне просто не хватает выводов. Помогите пожалуйста, и не сердчайте, что обращаюсь возможно по таким элементарным вопросам, но ведь начинать любое дело надо с малого...

Обычно такие ЖКИ индикаторы имеют несколько вариантов подключения, зависит от контроллера (внутри ЖКИ) и модели ЖКИ:
1. 8-битный (как у вас)
2. 4-битный (как у вас, только не нужны D0-D3)
3. SPI
4. последовательный асинхронный интерфейс.

3 и 4 вариант занимает от 3 пинов.
Сергей Борщ
QUOTE (ONIX2013 @ Nov 23 2013, 14:04) *
для 2-х как по мне просто не хватает выводов.
Ну почему? У вас осталась одна нога, ее можно использовать для управления ногой E второго индикатора. Все действия индикатор делает при активном уровне на этой ноге. Значит остальные ноги обоих индикаторов можно запараллелить.
ONIX2013
Цитата(Сергей Борщ @ Nov 23 2013, 15:40) *
Ну почему? У вас осталась одна нога, ее можно использовать для управления ногой E второго индикатора. Все действия индикатор делает при активном уровне на этой ноге. Значит остальные ноги обоих индикаторов можно запараллелить.

Спасибо, так и сделаю, это действительно логичное решение.

Цитата(Lagman @ Nov 23 2013, 14:41) *
Обычно такие ЖКИ индикаторы имеют несколько вариантов подключения, зависит от контроллера (внутри ЖКИ) и модели ЖКИ:
1. 8-битный (как у вас)
2. 4-битный (как у вас, только не нужны D0-D3)
3. SPI
4. последовательный асинхронный интерфейс.

3 и 4 вариант занимает от 3 пинов.

Благодарю за информацию, по лучше ознакомиться с ЖКИ мне действительно будет полезно.

Цитата(Сергей Борщ @ Nov 23 2013, 15:40) *
Ну почему? У вас осталась одна нога, ее можно использовать для управления ногой E второго индикатора. Все действия индикатор делает при активном уровне на этой ноге. Значит остальные ноги обоих индикаторов можно запараллелить.

Вроде сделал. Посмотри пожалуйста, правильно ли я тебя понял.
Xenia
Цитата(ONIX2013 @ Nov 23 2013, 18:07) *
Вроде сделал. Посмотри пожалуйста, правильно ли я тебя понял.


На R/W еще можно сэкономить (заземлить?), оставив только режим чтения (его для вывода текста вполне достаточно).

Кроме того, исключить режим вывода со стороны дисплея стоит еще и потому, что если оба дисплея начнут что-то выводить на общую шину, то погорят оба sm.gif. Если же этот режим исключать не хочется, то R/W надо разводить на отдельные пины контроллера, но не параллелить их. Но и это не самое лучшее решение, т.к. до запуска программы выходы контролера находятся на высоком импендансе, из-за чего на линии R/W мог натечь высокий потенциал, восприятый дисплеями как разрешение самим устанавливать уровень на линиях.

Тут и без изучения схемотехники всякому должно быть ясно, что сигнал с одной линии могут читать много устройств, но выводить на него может только одно! Иначе может возникнуть конфликт, когда одно из устройств поднимает уровень на линии, соединяя ее с плюсом питания, а другое его опускает, соединяя с землей. В итоге получается коза sm.gif.
ONIX2013
Цитата(Xenia @ Nov 23 2013, 17:29) *
На R/W еще можно сэкономить, оставив только режим чтения (его для вывода текста вполне достаточно).

Кроме того, исключить режим вывода со стороны дисплея стоит еще и потому, что если оба диспелея начнут что-то выводить на общую шину, то погорят оба sm.gif. Если же этот режим исклбчать не хочется, то R/W надо разводить на отдельные пины контроллера, на не параллелить их.

Огромное спасибо, не поверишь, но как раз на счет запарелленных R/W и RS я почему-то сомневался. Так что ты спасла устройство от поломки, оно хоть и виртуальное, но все-равно приятно rolleyes.gif
Xenia
Цитата(ONIX2013 @ Nov 23 2013, 18:34) *
Так что ты спасла устройство от поломки, оно хоть и виртуальное, но все-равно приятно rolleyes.gif


Я тоже сразу подумала, что проект виртуальный, т.к. достать такое старьё, как AT90S1200, в наше время невозможно.

Любопытно мне, какого типа ЖКИ предложено поставить в пару с AT90S1200? Вроде бы в те времена ЖКИ вообще на свете не было sm.gif.
ONIX2013
Цитата(Xenia @ Nov 23 2013, 17:51) *
Я тоже сразу подумала, что проект виртуальный, т.к. достать такое старьё, как AT90S1200, в наше время невозможно.

Любопытно мне, какого типа ЖКИ предложено поставить в пару с AT90S1200? Вроде бы в те времена ЖКИ вообще на свете не было sm.gif.

Скорее всего не было в те времена ЖКИ, просто нам в задании на курсовой был дан список компонентов, которые должны быть использованы в любом случае. Это они скорее всего делают, чтоб мы готовые проекты в интернете не пытались найти, а состовляющие по вариантам рандомно раскидывают sm.gif
Harbinger
Да ну, прямо таки не было.
Могу подкинуть ЖКИ (4 строки по 12 символов плюс строка служебных, SPI, производство Epson, где-то 1995-й год) рублей по 20 в кол-ве несколько тысяч (самовывоз из Киева). Даже что-то вроде даташита есть (сам писал, исходя из чудом найденной документации на S1D12203. По командам в основном совместим с KS0068). Экзотичность гарантируется. sm.gif
ONIX2013
Цитата(Harbinger @ Nov 23 2013, 19:07) *
Да ну, прямо таки не было.
Могу подкинуть ЖКИ (4 строки по 12 символов плюс строка служебных, SPI, производство Epson, где-то 1995-й год) рублей по 20 в кол-ве несколько тысяч (самовывоз из Киева). Даже что-то вроде даташита есть (сам писал, исходя из чудом найденной документации на S1D12203. По командам в основном совместим с KS0068). Экзотичность гарантируется. sm.gif

Даже так sm.gif Но спасибо, я наврятле буду паять данное устройство, хотя кто знает, может потом не удержусь)
rx3apf
Цитата(Harbinger @ Nov 23 2013, 20:07) *
Да ну, прямо таки не было.
Могу подкинуть ЖКИ (4 строки по 12 символов плюс строка служебных, SPI, производство Epson, где-то 1995-й год)

Я в 85-м уже видел модули в составе изделия, правда, не поручусь, что на 44780. Но чипсет-то древний, это какая-то 4-битная однокристаллка (там и контроллер клавиатуры по соседству обитал, из той же бочки разлитый).
Xenia
Цитата(Harbinger @ Nov 23 2013, 20:07) *
Да ну, прямо таки не было.
Могу подкинуть ЖКИ (4 строки по 12 символов плюс строка служебных, SPI, производство Epson, где-то 1995-й год)

Возможно, что ЖКИ в то время были, то тогда они должны были быть сегментными и иметь по выводу на каждый сегмент символа, т.е. представлять собой сборку из светодиодов. Тогда как в данном случае идет дешифровка байта в соответствии с таблицей шрифта. А такое устройство уже близко по сложности к МК или ПЛИС. Или в то время такая здача решалась проще?

Цитата(ONIX2013 @ Nov 23 2013, 20:13) *
Но спасибо, я наврятле буду паять данное устройство, хотя кто знает, может потом не удержусь)

Могу подкинуть альтернативную идею, если ЖКИ того же класса, что и HD44780. Дело в том, что они допускают тетрадный протокол, используя только 4 старших бита (линии D4, D5, D6, D7). И тогда вы вполне можете реализовать схему примитивно, т.к. в этом случае выводов этого контроллера хватит для двух ЖКИ.
ZASADA
даже советские ЖКИ в те времена были (1990г), например в осциллограх с8-19, с8-18.
выглядели так:



управление тоже на советских микросхемах:
zombi
Цитата(Xenia @ Nov 23 2013, 18:51) *
... достать такое старьё, как AT90S1200, в наше время невозможно.

bb-offtopic.gif
Ошибаетесь. biggrin.gif
Если кому ещё чего надо, милости просим. Самовывоз из Киева. БЕЗВОЗМЕЗДНО.
Xenia
Цитата(zombi @ Nov 23 2013, 23:10) *

Если кому ещё чего надо, милости просим. Самовывоз из Киева. БЕЗВОЗМЕЗДНО.


Коробка-то большая, да в ней AT90S1200 всего она штука. sm.gif
zombi
Цитата(Xenia @ Nov 24 2013, 00:06) *
Коробка-то большая, да в ней AT90S1200 всего она штука. sm.gif
Да одна, но она есть! и её можно достать biggrin.gif

Цитата(Xenia @ Nov 24 2013, 00:06) *
Коробка
Это не коробка! Это специальный пенал для хранения мс в узких dip корпусах. Совковый ешё...кто помнит rolleyes.gif
Xenia
Цитата(zombi @ Nov 24 2013, 00:16) *
Да одна, но она есть! и её можно достать


AT90S1200 в наше время запросто подменяется на ATtiny2313, или сразу на ATtiny2313A:
Вот предложение от самого Atmel: Replacing AT90S1200 by ATtiny2313
Тем более что в деле управления ЖКИ ничего кроме ногодрыганья не требуется, а по ножкам они совместимы.
rx3apf
Цитата(ZASADA @ Nov 23 2013, 22:58) *
даже советские ЖКИ в те времена были (1990г), например в осциллограх с8-19, с8-18.

И даже еще раньше - "Электроника МК-85М", имела вполне честный знакосинтезирующий индикатор. А HD44780 была выпущена в самом начале 80-х (до 1983 по крайней мере).
ZASADA
в осциллографах был честный графический режим.
ONIX2013
Люди, может кто-нибудь поможет еще кнопочки к данному устройству прицепить...надо реализовать матрицу 4 на 3, вроде реализовал, но встала проблема на что ее прицепить, все та же проблема с недостатком свободных ног...те способы которые нашел, требуют как минимум 4 свободные

Цитата(ONIX2013 @ Nov 24 2013, 19:43) *
Люди, может кто-нибудь поможет еще кнопочки к данному устройству прицепить...надо реализовать матрицу 4 на 3, вроде реализовал, но встала проблема на что ее прицепить, все та же проблема с недостатком свободных ног...те способы которые нашел, требуют как минимум 4 свободные

Или можно прицепить на PB1-PB7, на которых у меня сейчас ЖКИ висит...это не будет перебором?
birden
Тогда все-таки придется применить 4-битное подключение индикатора.
Сергей Борщ
QUOTE (ONIX2013 @ Nov 23 2013, 17:07) *
Вроде сделал. Посмотри пожалуйста, правильно ли я тебя понял.
Идея понята правильно. Но я сильно сомневаюсь, что сейчас по ГОСТу шины рисуются именно так. Я бы этот рисунок понял "все эти выводы просто закорочены между собой напрочь".

QUOTE (Xenia @ Nov 23 2013, 17:29) *
Кроме того, исключить режим вывода со стороны дисплея стоит еще и потому, что если оба дисплея начнут что-то выводить на общую шину, то погорят оба sm.gif. Если же этот режим исключать не хочется, то R/W надо разводить на отдельные пины контроллера, но не параллелить их.
Ксения, ну что вы пугаете юношу? Дисплей не имеет права ничего выдавать до тех пор, пока на него не подадут сигнал E. Значит достаточно резисторами подтяжки обеспечить на выводах E неактивный уровень во время старта процессора (тут согласен, прошляпил). А дальше уже программист должен следить, чтобы не сделать их оба активными одновременно. А если программист в этом вопросе невнимателен - тут уж и разнесение R/W по разным ногам не спасет.


QUOTE (ONIX2013 @ Nov 24 2013, 20:03) *
Люди, может кто-нибудь поможет еще кнопочки к данному устройству прицепить...надо реализовать матрицу 4 на 3, вроде реализовал, но встала проблема на что ее прицепить, все та же проблема с недостатком свободных ног...те способы которые нашел, требуют как минимум 4 свободные
Можно перейти на 4-битное подключение. А можно отбросить вредный совет biggrin.gif Ксении, снова соединить R/W, таким образом получится еще одна свободная нога. Вместе с PD4, PD5 вы имеете три свободные ноги для чтения состояния строк клавиатуры. Диоды переносите в цепи выбора столбцов, резисторы в цепи строк, выбор столбцов подключаете параллельно выводам данных дисплея. Опрашиваете клавиатуру перебором столбцов в промежутках между выводом на дисплей, когда его шина данных свободна.
ONIX2013
Цитата(Сергей Борщ @ Nov 25 2013, 11:09) *
Идея понята правильно. Но я сильно сомневаюсь, что сейчас по ГОСТу шины рисуются именно так. Я бы этот рисунок понял "все эти выводы просто закорочены между собой напрочь".

Ксения, ну что вы пугаете юношу? Дисплей не имеет права ничего выдавать до тех пор, пока на него не подадут сигнал E. Значит достаточно резисторами подтяжки обеспечить на выводах E неактивный уровень во время старта процессора (тут согласен, прошляпил). А дальше уже программист должен следить, чтобы не сделать их оба активными одновременно. А если программист в этом вопросе невнимателен - тут уж и разнесение R/W по разным ногам не спасет.


Можно перейти на 4-битное подключение. А можно отбросить вредный совет biggrin.gif Ксении, снова соединить R/W, таким образом получится еще одна свободная нога. Вместе с PD4, PD5 вы имеете три свободные ноги для чтения состояния строк клавиатуры. Диоды переносите в цепи выбора столбцов, резисторы в цепи строк, выбор столбцов подключаете параллельно выводам данных дисплея. Опрашиваете клавиатуру перебором столбцов в промежутках между выводом на дисплей, когда его шина данных свободна.

Большое спасибо! Ты прямо все по полочком разложил, на самом деле очень помог. Но думаю все-таки перейти на 4-битное подключение, буду уже продолжать путь с разъединенными ногами, предложенный Ксенией sm.gif
XVR
Еще один момент - подключать шину DB? дисплея к шине PB? процессора лучше в порядке следования номеров (DB0 к PB0, DB1 к PB1 и т.д.), а не крест накрест, как сейчас (DB0 к PB7, DB1 к PB6 и т.д.) sm.gif
ONIX2013
Цитата(XVR @ Nov 25 2013, 13:26) *
Еще один момент - подключать шину DB? дисплея к шине PB? процессора лучше в порядке следования номеров (DB0 к PB0, DB1 к PB1 и т.д.), а не крест накрест, как сейчас (DB0 к PB7, DB1 к PB6 и т.д.) sm.gif

Благодарю, это я исправлю,просто приходилось часто исправлять, поэтому последовательность быстро потерялась sm.gif
ILYAUL
А если поставить сдвиговый регистр , то оба дисплея + клавиатура пойдёт через него. Количество свободных ножек МК резко увеличится ,Е объединится , R/W раздельно . 2313 имеет на борту SPI .
ONIX2013
Цитата(Lagman @ Nov 25 2013, 14:14) *

Если я правильно понял, то в объясненном на вашем сайте примере 1-проводовой схемы, дисплей включенный по ней не сможет выводить информацию, а будет играть роль индикатора (моргать). А мне функция вывода информации необходима по заданию.
Lagman
Цитата(ONIX2013 @ Nov 25 2013, 17:20) *
Если я правильно понял, то в объясненном на вашем сайте примере 1-проводовой схемы, дисплей включенный по ней не сможет выводить информацию, а будет играть роль индикатора (моргать). А мне функция вывода информации необходима по заданию.

Сайт не мой, я просто привел ссылку.
Для тех кто не хочет читать, внизу есть видео, где все режимы показаны.
ONIX2013
Цитата(Lagman @ Nov 25 2013, 18:29) *
Сайт не мой, я просто привел ссылку.
Для тех кто не хочет читать, внизу есть видео, где все режимы показаны.

Спасибо тебе! Я на самом деле прочитал про несколько режимов полностью, там было в одном месте написано "Здесь уже прочитать данные с ЖКИ нельзя (74HC595 работает только в одном направлении)" и я подумал, что значит я не смогу вывести на него информацию. Посмотрел ролик, очень познавательно, и оказалось, что я действительно ошибся, иногда действительно учишься на ошибках, главное конечно не злоупотреблять sm.gif

Цитата(ONIX2013 @ Nov 25 2013, 19:36) *
Спасибо тебе! Я на самом деле прочитал про несколько режимов полностью, там было в одном месте написано "Здесь уже прочитать данные с ЖКИ нельзя (74HC595 работает только в одном направлении)" и я подумал, что значит я не смогу вывести на него информацию. Посмотрел ролик, очень познавательно, и оказалось, что я действительно ошибся, иногда действительно учишься на ошибках, главное конечно не злоупотреблять sm.gif

Еще вопрос есть к тебе. В разделе 3-проводовая схема приведена схема с двумя последовательно включенными регистрами сдвига. Вот пользуясь ей, смогу ли я повесить на каждый регистр по индикатору не использую ничего дополнительно, только опираясь на эту схему?
Lagman
Цитата(ONIX2013 @ Nov 25 2013, 21:04) *
Еще вопрос есть к тебе. В разделе 3-проводовая схема приведена схема с двумя последовательно включенными регистрами сдвига. Вот пользуясь ей, смогу ли я повесить на каждый регистр по индикатору не использую ничего дополнительно, только опираясь на эту схему?

Можно, если ЖКИ подключать в 4 битном режиме.
Xenia
Цитата(ONIX2013 @ Nov 25 2013, 21:04) *
В разделе 3-проводовая схема приведена схема с двумя последовательно включенными регистрами сдвига. Вот пользуясь ей, смогу ли я повесить на каждый регистр по индикатору не использую ничего дополнительно, только опираясь на эту схему?

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

Это я зубоскалю по поводу сдвигового регистра, который, скорее всего, придется подключать через SPI, а для этого придется освободить по меньшей мере PB5 (MOSI) и PB7 (SCK) для передачи данных, а еще искать место для GATE (сигнала готовности). А если сдвиговых регистров будет два, то линий GATE тоже понадобится две штуки. Так что не так уж много вы сэкономите, учитывая то, что RS, R/W и CLK вам все равно заводить на оба дисплея напрямую с МК.

Так может быть не нужно вам два дисплея? Где вы их устанавливать собиратесь? Спереди и сзади? sm.gif Возьмите один 4-срочный!

Пошли дальше. Кпопочки ваши кажутся мне ужасно подозрительными. У вас же там не шифратор стоит, а игра на потенциале от разных резисторов. И как вы собираетесь различать, какая из кнопок нажата? SB2, SB5 или SB8? Если все они на одном проводе сидят? (С остальными тройками кнопок та же история). А ведь у AT90S1200 нет внутреннего АЦП, чтобы напряжения измерять, он только чистую TTL-логику способен распознавать, а в нюансах разобраться не сможет.
akl
Добавлю. 1200-й не имеет в своем составе программно доступного модуля SPI, хотя организацию его примитива ногодрыганием никто не отменял.
Нажмите для просмотра прикрепленного файла
Немного порисовал. Получается 2 индикатора с опросом готовности (линии R\W и EN раздельны)+ матрица 4х3 с диодной развязкой занимают 12 лап из 15 имеющихся. Вроде и не нужно регистров.
ILYAUL
Цитата
И как вы собираетесь различать, какая из кнопок нажата? SB2, SB5 или SB8? Если все они на одном проводе сидят?
Бегущий (0) or (1)
ONIX2013
Цитата(akl @ Nov 26 2013, 06:58) *
Добавлю. 1200-й не имеет в своем составе программно доступного модуля SPI, хотя организацию его примитива ногодрыганием никто не отменял.
Нажмите для просмотра прикрепленного файла
Немного порисовал. Получается 2 индикатора с опросом готовности (линии R\W и EN раздельны)+ матрица 4х3 с диодной развязкой занимают 12 лап из 15 имеющихся. Вроде и не нужно регистров.

Не мог бы ты скинуть рисуночек, а то что-то я не до конца понял твои подсчеты лап sm.gif
ONIX2013
Огромное тебе спасибо! Получается ног действительно хватает sm.gif Я просто очень намутил с кнопками первый раз, поэтому такой дефицит лап и вышел.
ONIX2013
Цитата(akl @ Nov 26 2013, 15:04) *

И еще вопросик. Не посоветуешь модель ЖКИ которая мне лушче использовать?
ILYAUL
akl всё попал. biggrin.gif Крепись cheers.gif
Lagman
http://www.chipdip.ru/product0/8469593612/ или вот из этих наберите сколько надо http://www.chipdip.ru/catalog-show/digit-segment-displays/
На ЖКИ с контроллером HD44780 лучше не смотреть, там так все сложно sm.gif
akl
Цитата(ONIX2013 @ Nov 26 2013, 21:26) *
И еще вопросик. Не посоветуешь модель ЖКИ которая мне лушче использовать?
Использую датавижион и микротипс. Не советую фордата и винстар.
ILYAUL beer.gif
Сергей Борщ
Использую любые, подходящие по количеству знакомест, размерам, подсветке. Если требования жестко не заданы - любой из валяющихся в столе не глядя на маркировку.
ONIX2013
Цитата(Сергей Борщ @ Nov 27 2013, 11:01) *
Использую любые, подходящие по количеству знакомест, размерам, подсветке. Если требования жестко не заданы - любой из валяющихся в столе не глядя на маркировку.

Спасибо! Уже подыскал парочку sm.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.