Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Часы, таймер, термостат на AVR ATmega8.
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
sima0607
Добрый вечер всем участникам форума! Пришел к вам за помощью так как у меня нехватка знаний по программированию МК . Решил собрать вот этот девайс http://www.joker-tmn.narod.ru/b_unit.htm и у меня не нашлось подходящего индикатора с общим анодом есть только с общим катодом.Прошил Мк ,поменял транзисторы на соответствующие полярности,индикатор вроде засветился но ничего не работает (((.
Вот схема

Вопрос в следующем ,
может ли не подходить прошивка для такого типа индикатора?
Правильно я сделал поменяв транзисторы?
Буду рад каждому совету и ответу,спасибо!
kovigor
Цитата(sima0607 @ Nov 24 2010, 23:21) *
Буду рад каждому совету и ответу,спасибо!


На той схеме, что вы дали, транзисторы отпираются низким уровнем, закрываются - высоким. У вас как ? Если не так, то на индикаторе будет каша. Вообще, там же исходник есть. От вас требуется проинвертировать таблицу знакогенератора, ту самую, которая устанавливает связь между разрядами порта и сегментами индикатора. В оригинале сегмент зажигается нулем, у вас - единицей. Естественно, придется поменять транзисторы на NPN, подключить их эмиттерами к земле, коллекторами к катодам, после чего проинвертировать их управляющие сигналы, т.к., в оригинале транзистор открывается нулем, а у вас - единицей. Аноды сегментов нужно подключить к линиям порта МК через сопротивления Ом на 470, в базовые цепи транзисторов включить токоограничивающие сопротивления. Вот, вроде бы, и все ...

P.S. Естественно, можно заставить дивайс работать, не меняя прошивку, а меняя только аппаратную часть. Но это лишено смысла, т.к. исходник проекта открыт ...
mempfis_
Цитата
Вопрос в следующем , пожет ли не подходить прошивка для такого типа индикатора?
Правильно я сделал поменяв транзисторы?


А разницу между общим анодом и катодом понимаете?
У автора индикатор с общим анодом - он взял пнп транзистор и через него на общий анод подаёт +5 В. Порты контроллера уводит в 0 чтобы засветить соотв. разряд индикатора. Т.о. он через транзистор создаёт путь для тока от +5 В к земле - в итоге светодиод светится.

Представте что вы поставили индикатор с общим катодом...
Чтобы засветить разряд нужно:
1. Посадить общий катод на землю через нпн транзистор пода на его базу лог. 1
2. На соотв. разряд порта подать лог 1 чтобы создать +5 В для данного разряда.

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


sima0607
Минус на эмитеры транзисторов я то повесил, но не понимаю и не знаю как инвертировать входы.Спасибо за ответы хоть чтото начало приходить в голову)
kovigor
Цитата(sima0607 @ Nov 24 2010, 23:49) *
Минус на эмитеры транзисторов я то повесил, но не понимаю и не знаю как инвертировать входы.Спасибо за ответы хоть чтото начало приходить в голову)


Не входы, а выходы. Придется открыть исходник и немного поразбираться. Первым делом поищите в нем таблицу знакогенератора. Задача-то простейшая ...
sima0607
Я имел ввиду базы транзисторов а работать с исходниками я к сожалению не умею так как впервые шю мк blush.gif

Помогите кто-нить пожалуйста.
ASZ
Цитата(sima0607 @ Nov 24 2010, 23:24) *
Я имел ввиду базы транзисторов а работать с исходниками я к сожалению не умею так как впервые шю мк blush.gif

Помогите кто-нить пожалуйста.

Боюсь, разбираться придется долго.
1. Освоить ассемблер МК.
2. Отделить область программы от области данных.
3. Найти в области данных таблицу, предварительно составив ее самому по первоначальной схеме (чтобы знать, что искать).
Можно, конечно, опустить п.1 и п.2 smile.gif
mempfis_
Цитата(sima0607 @ Nov 25 2010, 00:24) *
Я имел ввиду базы транзисторов а работать с исходниками я к сожалению не умею так как впервые шю мк blush.gif

Помогите кто-нить пожалуйста.


Купите индикатор такой как у автора.
Если хотите чтобы заработало то что есть то нужно или править исходники, или ставить инверторы на данные и цепи управления что повлечёт за собой корректировку схемы и переделку платы.
MrYuran
А там нет случайно прошивки под другой тип индикатора?

На работе недавно товарищ похожую штуку делал, тоже с какого-то сайта, там две прошивки было.
kovigor
Цитата(sima0607 @ Nov 25 2010, 00:24) *
Я имел ввиду базы транзисторов а работать с исходниками я к сожалению не умею так как впервые шю мк blush.gif

Помогите кто-нить пожалуйста.


Посмотрел. Я сегодня добрый. Там в проекте на линии, управляющие базами, еще кнопки навешаны, посему простая инверсия таблиц не поможет. Разбираться долго и тяжело, даром делать это нет ни малейшего желания. Остается один выход. Проинвертируйте линии, идущие на сегменты индикатора, просто вставив между ними и МК любой подходящий КМОП - инвертор, а токоограничивающие резисторы включите между выходами инверторов и сегментами. Например, можно обойтись одной ИС типа MM74HCT244. Такую же ИС можно использовать, чтобы проинвертировать сигналы, идущие на базы транзисторов ...
Microwatt
Столько образования на один бифштекс!
Да уже можно было нужный индикатор добыть за это время-деньги.
sima0607
Спасибо всем за ответы и советы!,в моем случае проще купить нужный индикатор..
carmaster
Цитата(sima0607 @ Nov 25 2010, 23:14) *
Спасибо всем за ответы и советы!,в моем случае проще купить нужный индикатор..

в твоём варианте проще 74 серию воткнуть, они всегда и везде в наличии, как советовал предыдущий постер. делов то на 20 минут )) удачи!
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.