01.12.2012, 17:13
|
#11
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,647
Сказал спасибо: 73
Сказали Спасибо 1,799 раз(а) в 651 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Если подключить так, как у Вас, то работать это в принципе будет. Но сегменты индикаторов будут иметь разную яркость. А из-за резисторов R4, R5 цифры тоже будут светиться по-разному, например "1" будет ярче, чем "8". Обычно все сегменты подключают через резисторы, а на общие катоды ставят транзисторный ключ, поскольку там суммарный ток получается уже приличный, вывод МК напрямую может его не потянуть.
Вы сейчас чего хотите-то? Модифицировать схему под свою задачу, чтобы можно было использовать уже имеющуюся программу? Или программу с нуля сами писать будете? Например, если на самом деле не требуется столько кнопок, как у Вас, то не обязательно будет делать динамическую индикацию, можно запилить в статике. Это проще. Или требуется непременно динамическая?
|
|
|
|
01.12.2012, 19:34
|
#12
|
Временная регистрация
Регистрация: 12.11.2010
Сообщений: 61
Сказал спасибо: 11
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Спасибо!
Т.е. все сегменты подключаю через резисторы, а с ключами что? А если так оставить? Я вот хочу как раз использовать ту программу, которая уже есть... Кнопок как раз надо 5, помимо цифр.
А вот про индикацию ничего не было сказано. В задании просто: будильник, 2 индикатора, 5 кнопок.
Ну в общем нужен таймер...
Я, честно говоря, даже не знаю, статическая или динамическая нужна.. Что посоветуете?
|
|
|
|
01.12.2012, 20:07
|
#13
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,647
Сказал спасибо: 73
Сказали Спасибо 1,799 раз(а) в 651 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от snevar
|
Т.е. все сегменты подключаю через резисторы, а с ключами что? А если так оставить? Я вот хочу как раз использовать ту программу, которая уже есть...
|
Сегменты через резисторы. А остальное придется оставить так, если Вы хотите использовать программу вообще без изменений.
Сообщение от snevar
|
Я, честно говоря, даже не знаю, статическая или динамическая нужна.. Что посоветуете?
|
Статическая проще. Но если требуется 15 кнопок, то конечно, придется оставить динамическую.
|
|
|
|
01.12.2012, 20:26
|
#14
|
Гуру портала
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
А вы сказали автору, что PIC16C однократно прошиваемый? И найти его в продаже почти не возможно уже.
|
|
|
|
01.12.2012, 21:02
|
#15
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,647
Сказал спасибо: 73
Сказали Спасибо 1,799 раз(а) в 651 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от Easyrider83
|
А вы сказали автору, что PIC16C однократно прошиваемый? И найти его в продаже почти не возможно уже.
|
Думаю, ТС это не принципиально, если курсовик не требует повторения в железе.
snevar, кстати, восстановите R7. А то у Вас "вечный будильник" получится...
|
|
|
|
01.12.2012, 22:36
|
#16
|
Временная регистрация
Регистрация: 12.11.2010
Сообщений: 61
Сказал спасибо: 11
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от RECTO
|
Думаю, ТС это не принципиально, если курсовик не требует повторения в железе.
snevar, кстати, восстановите R7. А то у Вас "вечный будильник" получится...
|
Ага, не требует)
Кстати, еще вот забыл: а как питание подвести правильно? Просили питание и фильтр к нему... Ну тут я думаю простейшее подойдет... Что можно сделать?
И вот как раз по Р7.. Восстановлю... Этот вот провод идет к тиристору, и с будильника тоже туда же провод... Это еще в задание надо, чтобы устрйоство могло "открывать\закрывать жалюзи исполнительного двигателя". Ну вроде надо просто сделать так, чтобы либо по кнопке. либо по будильнику на тот вывод шел сигнал, а уж применить его как угодно можно...
Кнопку я вот определил ту, что справа сверху. Это будет работать? Вот к этому придется в программу что-то дописывать.. Но думаю тут просто(С ассемблером нас тоже никогда не знакомили). Раз сигнал идет на динамик. то и туда тоже, а если сигнал идет с кнопки? Но он же не конкретно с той кнопки, а там их 3 в столбце... Или все на программном уровне решается? А то получается что верхнюю правую нажать, что нижнюю правую - эффект один будет...
Такое будет работать?
Т.е. чтобы по истечению времени, установленного на таймере одно временно со звуковым сигналом шел сигнал на вывод, либо сигнал туда чтобы шел по нажатию кнопки. Или наверно следует убрать провод с Р7, а вместо него подключить оставшийся вывод с МК?...
|
|
|
|
03.12.2012, 02:18
|
#17
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,647
Сказал спасибо: 73
Сказали Спасибо 1,799 раз(а) в 651 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от snevar
|
как питание подвести правильно? Просили питание и фильтр к нему... Ну тут я думаю простейшее подойдет... Что можно сделать?
|
"+" на Vdd (у Вас на схеме почему-то обозначено Vcc), "-" на Vss и на "землю". Между "+" и "-" ставите конденсатор 10 мкф. И еще один конденсатор 0,1 мкф прямо на выводы МК. Вот Вам и будет простейший фильтр.
Сообщение от snevar
|
Кнопку я вот определил ту, что справа сверху. Это будет работать?
|
Какую кнопку назначите, такая и будет работать.
Сообщение от snevar
|
Вот к этому придется в программу что-то дописывать.. Но думаю тут просто(С ассемблером нас тоже никогда не знакомили). Раз сигнал идет на динамик. то и туда тоже, а если сигнал идет с кнопки? Но он же не конкретно с той кнопки, а там их 3 в столбце... Или все на программном уровне решается?
|
Разумеется, а как еще?.. Для начала Вам нужно разобраться, как работает динамическая индикация с одновременным сканированием клавиатуры, хотя бы в принципе. Затем проанализируйте свою программу. Вам нужно найти регистры, в которые при сканировании записываются текущие состояния кнопок клавиатуры. Далее, уже зная регистр и бит(ы), которые отвечают за состояние выбранной клавиши, будете дописывать программу.
Кстати, у Вас на клавиатуре не хватает цифры "0", она там явно просится на пустующее место. Дорисуйте...
|
|
|
|
03.12.2012, 11:17
|
#18
|
Временная регистрация
Регистрация: 12.11.2010
Сообщений: 61
Сказал спасибо: 11
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
RECTO, спасибо вам огромное!
Сообщение от RECTO
|
"+" на Vdd (у Вас на схеме почему-то обозначено Vcc), "-" на Vss и на "землю". Между "+" и "-" ставите конденсатор 10 мкф. И еще один конденсатор 0,1 мкф прямо на выводы МК. Вот Вам и будет простейший фильтр.
|
Т.е. Vcc заменить на Vdd? А на самом МК он не обозначается, сделать по аналогии, как уже есть на схеме? Т.е. выходит в точку Vdd? И Vss таким же образом сделать?
Сообщение от RECTO
|
Разумеется, а как еще?.. Для начала Вам нужно разобраться, как работает динамическая индикация с одновременным сканированием клавиатуры, хотя бы в принципе. Затем проанализируйте свою программу. Вам нужно найти регистры, в которые при сканировании записываются текущие состояния кнопок клавиатуры. Далее, уже зная регистр и бит(ы), которые отвечают за состояние выбранной клавиши, будете дописывать программу.
|
Ну вот это уже совсем темный лес... Никогда не видел. Но там в программе почти к каждой строчке комментарий, буду пробовать разбираться...
Сообщение от RECTO
|
Кстати, у Вас на клавиатуре не хватает цифры "0", она там явно просится на пустующее место. Дорисуйте...
|
Почему, "0" есть... Там 0-9, и 5 функциональных... "0" обозначен там буквой D.
|
|
|
|
04.12.2012, 04:26
|
#19
|
Супер-модератор
Регистрация: 09.06.2011
Сообщений: 2,647
Сказал спасибо: 73
Сказали Спасибо 1,799 раз(а) в 651 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от snevar
|
Т.е. Vcc заменить на Vdd? А на самом МК он не обозначается, сделать по аналогии, как уже есть на схеме? Т.е. выходит в точку Vdd? И Vss таким же образом сделать?
|
Короче говоря... Немного перерисовал одну из своих конструкций с учетом Вашей задачи. Вот Ваша схема, как ее надо было бы сделать по-уму, пользуйтесь на здоровье.
Но! Хотя эта схема и максимально приближена к Вашей, в программу все равно потребуется внести некоторые изменения (раз уж Вы все равно будете с ней заниматься). Вот что нужно будет учесть:
1) Для управления сегментами индикаторов используются только линии порта В (на Вашей схеме использовались линии портов В и С). Кроме того, сигналы, управляющие сегментами, нужно инвертировать, т.к. в данной схеме используются индикаторы с общим анодом.
2) Звуковой сигнал включается при записи "1" в порт RA0.
3) Моторчик исполнительного механизма включается при записи "1" в порт RA1.
Сообщение от snevar
|
Почему, "0" есть... Там 0-9, и 5 функциональных... "0" обозначен там буквой D.
|
Вообще-то, там у Вас нарисована обычная клавиатура с цифрами от "0" до "9" и буквами от "А" до "F". Но раз Вы так уверены...
|
|
|
|
04.12.2012, 23:02
|
#20
|
Временная регистрация
Регистрация: 12.11.2010
Сообщений: 61
Сказал спасибо: 11
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: Часы-будильник на PIC16CXX
Сообщение от RECTO
|
Короче говоря... Немного перерисовал одну из своих конструкций с учетом Вашей задачи. Вот Ваша схема, как ее надо было бы сделать по-уму, пользуйтесь на здоровье.
|
Ого... Спасибо вам огромное!
Сообщение от RECTO
|
1) Для управления сегментами индикаторов используются только линии порта В (на Вашей схеме использовались линии портов В и С). Кроме того, сигналы, управляющие сегментами, нужно инвертировать, т.к. в данной схеме используются индикаторы с общим анодом.
2) Звуковой сигнал включается при записи "1" в порт RA0.
3) Моторчик исполнительного механизма включается при записи "1" в порт RA1.
|
2 и 3 пункты думаю не составят особого труда...
А тут вот посидел над программкой, попытался вникнуть... Но вроде как безуспешно.
Насколько понял ситуацию, хоть там для управления сегментами и использовались порты B и C, но упоминание в программе нашел только о портах B... Про C только когда описывались сами порты. Хотя нет... Видел пару раз, но и только... Это я, допустим, заменю...
А вот с инвертированием... Тут сразу возник глупый вопрос - нельзя ли эти индикаторы с общим анодом заменить на индикаторы с общим катодом?.. Что это повлечет и что для этого нужно? А то с этим там вообще беда какая-то. Там все инвертируется несколько раз подряд. да еще и не всегда ясно где и как...
П.С. А все-таки... Если я уберу одну клавишу... И не буду ее описывать в программе... Это критично?)
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Часы-будильник
|
ninelka21pelis |
TTL и CMOS логика |
10 |
22.05.2011 10:43 |
электромеханический будильник "Слава"
|
alxchep |
Поиск схем. Делимся схемами |
2 |
07.06.2008 13:51 |
[Решено] Добрый будильник
|
dimitriy |
Отвлекитесь, эмбеддеры! |
15 |
22.02.2008 08:56 |
часы
|
transford |
Микроконтроллеры, АЦП, память и т.д |
3 |
19.06.2007 17:23 |
[Решено] Часы в TV
|
Роберт |
Видеотехника |
8 |
19.10.2005 20:11 |
Часовой пояс GMT +4, время: 19:57.
|
|